Performance issue cloning features algorithm sources into my project
Hello, I'm working on a project for which I want to modify the ORB algorithm. To do this within my C++ project I copied the sources orb.cpp, fast.cpp, fast_score.cpp, fast_score.hpp, precomp.cpp, precomp.hpp. The source of FAST is necessary as it is called by the algorithm ORB and I would like to optimize that as well. The last 4 sources are necessary as called with "include" in fast.cpp. I also created a new header by copying the class declarations (fast and orb) from features2d.hpp in a new header file.
Because I want to reuse the data structures of OpenCV in my project, I added the include to features2d.hpp, core.hpp etc etc because I need structures such as Mat, KeyPoint...
As a first trial to test if it works I simply changed the names of all classes of the copied sources, so they can be instantiated in a distinct manner.
The problem is the following: the cloned algorithm works, but the performance (computational time, FPS) is worse by almost 50% compared to invoke the algorithm of OpenCV. What can be the problem? I did not expect a gap so large!
Actually I'm working and testing on a Mac laptop, but I will eventually take my project to Android.
guess you have used different compiler flags for your project, e.g. debug-mode, or TBB or SSE, ...
@Guanta you're right! I was using eclipse with build configuration "debug". Switching to "release" took back performance to values comparable to those of opencv!