Missing cv::MOTION_HOMOGRAPHY and findTransformECC()
I am new to opencv and I guess I am doing something silly. But so far I really could not figure out what I am doing wrong.
I have used SIFT/SURF and ORB feature detection and matching in opencv 2.4, and I wanted to give the Enhanced Correlation Coefficient (ECC) Maximization algorithm a shot.
As an illustration, I took Satya Mallick's example from http://www.learnopencv.com/image-alig....
Basically, even though other people seem to be able to use the findTransformECC() function and set (among others) the cv::MOTION_HOMOGRAPHY enum, I don't seem to have them defined anywhere.
I tried openCV 3.0 in Windows + VS 2013/2015 Community (downloaded the official release and added include and lib folders to the project) and Ubuntu + python 2.7 (checked out and built opencv + opencv_contrib from source) and I also tried the same code with opencv 2.4 both in Windows and in Ubuntu.
Any idea what I might be doing wrong?
Thanks a lot for any help, a2
The function is only available in OpenCV 3.0 afaik. To use it in a C++ program, you need to include the corresponding header:
#include <opencv2/video/video.hpp>
codesearch on github often helps
As far as I can tell, the opencv2/video/tracking.hpp header that comes with the opencv-3.0.0.exe download from http://opencv.org/downloads.html does not define the findTransformECC function. Am I downloading the wrong distribution?
if that is so, you might have to clone/fork the github src code, and build from scratch using cmake.
(sounds scary, i know, but this way you'll get easy access to updates, bugfixes and such)
just saying ..