derzu / BodySkeletonTracker

Human body skeleton detection an tracking from video camera in real time. It was developed for an Orbbec Astra camera DRGB (Depth-RGB), uses the OpenNI2 driver, it also works with Asus Xtion and Prime sense. It works with normal webcam too, in the case of background is smooth and white.
MIT License
123 stars 45 forks source link

opencv2 compatibility #10

Open smihael opened 6 years ago

smihael commented 6 years ago

This should maybe be added as an extra branch to enable compiling on Ubuntu 16.04 (see #1 and #2)

derzu commented 6 years ago

Hi Smihael,

I think the problem is the OpenCV version, the versions above 3.0 works with the include: opencv2/<module>.hpp The versions below 3.0 uses: opencv2/<module>/<module>.hpp

Look at these links: https://docs.opencv.org/3.2.0/db/dfa/tutorial_transition_guide.html https://stackoverflow.com/a/43701862/1178478

With OpenCV version are you using?

smihael commented 6 years ago

Exactly, the problem is that in Ubuntu 16.04 repositories only OpenCV2 2.x is available. There is no need to require OpenCV 3.x as the code compiles and runs fine with OpenCV 2.x.

derzu commented 6 years ago

I think we can check the OpenCV version on the compilation time.

Look at this link: https://stackoverflow.com/questions/2422514/how-to-check-for-opencv-on-ubuntu-9-10

So we can do a marco #if like that:

#if CV_VERSION >= 3 #include <opencv2/core.hpp> #else #include <opencv2/core/core.hpp> #endif

I do not tested this code, but I think it works.