opencv 拓展包编译

必须放到sources下面编译才能真正编译

1.PNG

surf和sift等contrib部分的module的编译的问题

如果是完全从GitHub上面下载下来的源码编译,在opencv代码的CMakelist.txt文件中,将surf和sift等具有专利的module关闭了,需要重新打开,将202行的 OPENCV_ENABLE_NONFREE 设置为ON。并且在CMake的选项中将 OPENCV_ENABLE_NONFREE勾上,如下图:


nonfree.png

如果不打开,可以生产工程且能够编译通过,在运行到surf和sift的时候会出现cv::Exception的错误,如下图:


opencv_error1.png
opencv_error2.png

上述所有问题都解决了之后呢,你也只能使用Release版本!
WTF opencv

推荐阅读更多精彩内容