/Feature-Detection-and-Matching

Feature Detection and Matching with SIFT, SURF, KAZE, BRIEF, ORB, BRISK, AKAZE and FREAK through the Brute Force and FLANN algorithms using Python and OpenCV

Primary LanguagePythonMIT LicenseMIT

Feature Detection and Matching

GitHub language count GitHub top language GitHub repo size GitHub

Feature Detection and Matching between two images using Local Feature Descriptors and Local Binary Descriptors through the Brute Force and FLANN algorithms.

From this application it is possible to solve several problems in the area of Computer Vision, such as: image recovery, motion tracking, motion structure detection, object detection, recognition and tracking, 3D object reconstruction, and others.

Overview

This project performs Feature Detection and Matching with SIFT, SURF, KAZE, BRIEF, ORB, BRISK, AKAZE and FREAK through the Brute Force and FLANN algorithms using Python (version 3.6.10) and OpenCV (version 3.3.1).

Feature Detection and Matching with KAZE through the Brute Force algorithm

Dependencies

To install the dependencies run:

pip install -r requirements.txt

Usage

python main.py --detector <detector> --descriptor <descriptor> --matcher <matcher>

Arguments Info
-h, --help Show help message and exit
--detector Specify SIFT or SURF or KAZE or ORB or BRISK or AKAZE
--descriptor Specify SIFT or SURF or KAZE or BRIEF or ORB or BRISK or AKAZE or FREAK
--matcher Specify BF or FLANN

Examples

Help

python main.py --help

Brute Force with ORB

python main.py --detector ORB --descriptor ORB --matcher BF

Recommended Readings

License

Code released under the MIT license.