首先编译过程还是建议用终端,方便cmake语句的控制
一开始编译的3.4.6, 但是后来网上查到 LineSegmentDetector(LSD)此代码已在OpenCV 4.1.0和OpenCV 3.4.6中删除。 而我编译的项目正好要用的 LSD ,shit,所以又重新编译了 3.4.3
一, 有两个较大的文件需要提前下载,否则cmake过程中一直下载不下来,编译过程也会报错
一个是 ippcv 一个是 face_landmark_model.dat ,找到对应的版本,放到对应的位置,这样cmake过程中就可以完成。
这里要注意的是 有一堆 boostdesc.bgm.i 等文件,也是在cmake过程中下载,不过下载失败也不影响。因为一,不会影响cmake过程,二,这些文件在make过程中用到,我们只需要下载下来放到对应的文件夹。 不过切记: 该过程如果你的电脑用了vpn翻墙,最好关掉,否则会download很久,又下载不下来,关掉翻墙,可以快速跳过
二, cmake参数很重要,否则会引起各种奇奇怪怪的报错
网上编译opencv contrib的参数都不一样,但是经过不停尝试,以下的参数可以保证make过程完成。
cmake
-D CMAKE_BUILD_TYPE=RELEASE
-D CMAKE_INSTALL_PREFIX=/usr/local
-D INSTALL_PYTHON_EXAMPLES=ON
-D INSTALL_C_EXAMPLE