Ubuntu16.04/20.04上编译OpenCV4.1.2源码

近期换了一台新电脑,本着一切都用“次新”的原则,换上了Ubuntu20.04(双系统),于是各种装软件、插件。顺便就重编了一下OpenCV,正好填了以前的坑~说实话再Ubuntu里面编译OpenCV还是比较简单的,主要还是网络问题,如果网络质量好,基本上直接一次编译就搞定。下面是我编译的操作步骤(不太会排版,将就看吧)

1.解压opencv-4.1.2和opencv_contrib-4.1.2
unzip opencv-4.1.2
unzip opencv_contrib-4.1.2

2.创建编译目录
cd opencv-4.1.2
mkdir build
cd build

3.安装cmake-gui
sudo apt-get install cmake-gui/sudo apt-get install cmake-qt-gui

4.在新建的build目录内执行(结果见下图)
camke-gui ../

5.第一次configure
弹出界面后点击finish(ubuntu桌面版的使用默认的,嵌入式的需要选择其他选项)

6.中间红色部分为可配置部分,将以下选项勾选或填写完整
a.勾选BUILD_opencv_world(将所有模块编译成一个库,否则每个模块都有一个库,会很麻烦)
b.勾选OPENCV_ENABLE_NONFREE(将需要版权的部分也编译进去,如果不使能SURF和SIFT等不能用)
c.填写OPENCV_EXTRA_MODULES_PATH(设置contril模块的路径,注意需要设置为<opencv_contrib_dir>/modules,而不是<opencv_contrib_dir>)
d.勾选OPENCV_GENERATE_PKGCONFIG(使用pkg-config管理opencv包)

7.再次点击configure后再点击generate,等待configuring done和generating done
当网络条件不好的时候可能会有一些包下载会失败,这个没有关系,度娘上有很多人已经将包提供出来,放到源码对应目录即可

8.关闭cmake-gui,回到build目录执行make,等待编译完成(将会花费比较多的时间)
当出现过类似fatal error: boostdesc_bgm.i: No such file or directory这样的问题,可以百度搜解决方案,将缺少的文件拷贝到对应目录即可。


还有一些test编译的错误,可以重新运行cmake-gui ../,之后将取消BUILD_TEST的勾选,点击configure和generate,然后重新编译

 

最终编译完成后执行sudo make install,然后就可以愉快的使用OpenCV玩耍啦!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值