0

I have met a problem of Sift and SURF feature detectors. I have fixed it by calling initModule_nonfree() (see the question). On their site, they say that I shall use it if I am "using the C version".

I have not use any IplImage. So, How do I know that I use C version and not C++?

Community
  • 1
  • 1
thedarkside ofthemoon
  • 2,251
  • 6
  • 31
  • 48
  • if you're using cv::Mat, and functions from the cv:: namespace - that's the c++ api (recommended). the initModule_nonfree() issue applies to both apis, so keep it. – berak May 13 '14 at 12:39
  • That's it, I am using cv::Mat, so C++, and they were saying that initModule_nonfree() shall be called in C version. But anyway, I'll know from now that I shall use it – thedarkside ofthemoon May 13 '14 at 12:56
  • 1
    note, that in c++ , apart from the FeatureDetector::create("SIFT"); way, there's a SIFT and a SURF class, that you can create directly. and you don't have to call initModule_nonfree() in that case. yea, admittedly, confusing! – berak May 13 '14 at 13:00
  • The documentation that I quoted about that matter in your previous question is wrong. The initModule does apply to C and C++. Check the doc on the Algorithm::create function – remi May 13 '14 at 13:29

0 Answers0