An implementation of SIFT (Scale-invariant feature transform) from scratch in python v3
- python v3
- python libraries : opencv (to read/ save images), numpy, matplotlib, scipy (v1.1.0)
- Generation of keypoint descriptor
python3 main.py --input input_image_file_path
Eg.
python3 main.py --input images/sample-input.jpeg
Output for sample input image is given below.
[1] Gonzalez, Rafael C., and Woods, Richard E. "Digital image processing. 4E" (2017).
[2] Lowe, D. G. (2004). Distinctive image features from scale-invariant keypoints. International journal of computer vision, 60(2), 91-110.
[3] Lowe, D. G. (1999). Object recognition from local scale-invariant features. In Computer vision, 1999. The proceedings of the seventh IEEE international conference on (Vol. 2, pp. 1150-1157). Ieee.
[4] http://aishack.in/tutorials/sift-scale-invariant-feature-transform-introduction/