在研究sift算法时发现opencv3.X版本中有些库函数被去掉了。网上查了一下,确实没有sift算法这部分代码了,需要通过网上下载附加库opencv_contrib-3.2.0进行cmake编译就可以用了,于是进入漫长的cmake编译之旅!!
1.网上下载cmake
进入网站下载一个cmake,这里我下的是当前网站上的最新版本,个人觉得这个对编译影响不大。进入界面下载如下方式:
这里选择:
Windows win64-x64 Installer: Installer tool has changed. Uninstall CMake 3.4 or lower first! cmake-3.8.0-win64-x64.msi
安装时选择:
该图片来自百度经验
这样安装完就不用配置软件的路径了,最好将Create CMake Desktop Icon 也选上这样可以很容易找到CMake运行文件,我桌面上的运行文件如图;
不选也没关系,到你安装的cmake路径下的bin目录找:D:workcmake
双击运行cmake界面如下,两个路径必须为纯英文,然后Configure:
我这里已经运行好了,网上有很多教程可以看一下。
接下来跟大家分享一下我遇到的错误:
1.由于当时没截图,所以这里只能说一下大概意思:“CMake Error: your CXX compiler: "CMAKE_CXX_COMPILER-NOTFOUND" was not found”,就是找不到C++译器!
解决办法:将opencv3.2和vs2015全部从新装在纯英文目录下,因为cmake不识别中文,这个错误很是雷人!!!
装完运行cmake没有错,
2.加入opencv_contrib-3.2.0的路径,步我在cmake之前就做了,只是将opencv_contrib-3.2.0放在opencv文件夹里,cmake就自己加载了,不放的话自己手动改加载一下也可以:
3.“Generate”时需要网下载:opencvopencvsources3rdpartyffmpeg路径下会多出来一个download文件夹,下载3个文件,否则会报错!
总结:跟人认为开源软件或者英文软件还是装纯英文路径吧!不然重装软件就是一件很悲催的事情,尤其还要配环境!!!