This is the most challenging part of the project. After discounting MathLab and GNU Octave, I've decided to use OpenCV in Python to compare images of suspected elephants with images of known elephants. Specifically I'm working on using feature matching ( Brute-Force matcher and FLANN Matcher); although this is rather slow. Perhaps just plain histogram comparison will be good enough. This is really fast, and elephants do have a distinct color!
- Detect the keypoints using SURF Detector
- Calculate descriptors (feature vectors)
- Matching descriptor vectors using FLANN matcher
- Quick calculation of max and min distances between keypoints
- Report only "good" matches (i.e. whose distance is less than 2*min_dist, or a small arbitary value ( 0.02 ) in the event that min_dist is very small)