平台:Ubuntu20.04
CMAKE: cmake3.22.0 cmake-gui
文件路径:
~/opencv455/dev ~/opencv455/opencv-4.5.5 ~/opencv455/opencv_contrib-4.5.5
注意,我的编译路径是dev(相当于大家常用的build文件夹),配置和编译文件都在这里。
配置Opencv准备好后
$ cmake-gui
进入配置界面,配置如下图所示,主要是要选好"where is the source code"和"where to build the binary“这两个选框,然后点击Configure;
这时会弹出一个对话框,我一般选择Unix Makefiles,当然你可以选择ninja(要安装ninja)工具,
第一次配置好了会有很多红色,不要紧,后面任何时候再按一次Configure就好了,
BUILD_opencv_world
看到上面的配置文件后,一般我推荐设置好下面的几个参数
1、勾选上BUILD_opencv_world
这在有多个Opencv版本的库文件时尤其重要,这时可以通过链接libopencv_world.so.4.5.5这样的库区别其他版本的库函数。
2、在CMAKE_BUILD_TYPE后填上:Release
这一点只要检查一下就可以了,默认就是Release的。当然如果你想调试Opencv的源码,也可以编译Debug版本。
3、勾选上OPENCV_ENABLE_NONFREE
opencv提供了很多有意思的算法,这些算法商业上有版权,但源码是公开的,你可以编译进去。
很多算法通常我也用不到,但万一想测试一下呢,那就不用重新编译了。
4、在OPENCV_EXTRA_MODULES_PATH后填上opencv-contrib/modules的路径,比如我的是:/home/mc/opencv455/opencv_contrib-4.5.5/modules
这个附加功能模块的位置,提供相当多有意思的算法。如果你只需要opencv的核心模块的话,这个是可以不填写的。
Configure完了之后就可以正式配置了,按“Generate"那个按钮可以看到输出下面这样的字样,
Configure Done
Generate Done
编译安装几乎没什么要说的,直接在~/opencv455/dev中开启一个终端,
$ cd dev #注意我前面创建的编译路径是opencv455/dev $ nproc #查询线程数量 12 $ make -j12 #开始编译 $ sudo make install #安装 $ sudo make uninstall #如果想卸载 $ cd .. $ sudo rm -r dev
这样,opencv455就编译安装完成了。
参考资料
Ubuntu20.04编译安装Opencv4.5.5安装包报错:Could NOT find ZLIB (missing: ZLIB_LIBRARY ZLIB_INCLUDE_DIR)_高精度计算机视觉的博客-CSDN博客
Ubuntu18:使用CMake-gui编译OpenCV3源码的详细过程_你卷我不卷的博客-CSDN博客



