Opencv3 and Algorithm (create, getList, etc.)
Hi, I just moved my project from 2.4.9 to 3.0.0alpha and I noticed that most of feature2d algorithms don't use the macro the CV_INIT_ALGORITHM which allows us to use:
cv::Ptr<FeatureDetector> detect = FeatureDetector::create<FeatureDetector>("SIFT");
My project highly relies on such feature (and also on get/set parameter, list algos and parameters...), so my question is : will this feature included in OpenCV3 or Algorithm is going to be a dead-end ?
hmm, features2d_init.cpp, calib3d_init.cpp and video_init.cpp all 'vanished' lately..
Indeed! You can just see in commits logs : "OpenCV with the refactored features2d compiles!", but I don't find an explanation why they refactored features2d, calib3d and optical flow algorithms...
I had the same issues. Plus the fact that I rely a lot exactly in the re-factored algorithms and the ones that was moved away from the main code. This broke compatibility of a quite complex project of mine. A pity, considering that the transition from 2.4.2 up to 2.4.9 was for me mostly seamless.
i could even understand, if they're trying to get rid of cv::Algorithm, - imho pure virtual interfaces + factory function + hidden class impl is much cleaner / more robust than having a 'super' base class, which requires virtual inheritance.