ubunutu18.04安装opencv的过程以及遇到的问题和解决方法

一.安装opencv

1.1安装依赖环境

sudo apt-get install build-essential

sudo apt-get install cmake git libgtk2.0-dev pkg-config libavcodec-dev libavformat-dev libswscale-dev

sudo apt-get install python-dev python-numpy libtbb2 libtbb-dev libjpeg-dev libpng-dev libtiff-dev libjasper-dev libdc1394-22-dev

1.2下载源码

https://opencv.org/releases/进入官网选择要下载的版本

1.3下载解压之后放到喜欢的目录下面

在opencv文件下创建一个build文件 mkdir -p build

然后进入build文件(cd ./build)或者直接进入build文件右键打开终端

然后进行重要的cmake(可能要等好久)

cmake -D CMAKE_INSTALL_PREFIX=/usr/local -D CMAKE_BUILD_TYPE=Release -OPENCV_GENERATE_PKGCONFIG=ON -D -D OPENCV_ENABLE_NONFREE=True ..

cmake结束之后开始编译,在终端输入sudo make -j8(数字越大速度越快)

最后执行sudo make install即可

1.3环境配置

sudo gedit /etc/bash.bashrc

在文件里面添加下面两段

PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/lib/pkgconfig

export PKG_CONFIG_PATH

保存退出之后执行

sudo update

dbsource /etc/bash.bashrc

1.4修改动态库

sudo gedit /etc/ld.so.conf.d/opencv.conf打开文件

添加lib路径在末尾

/usr/local/lib

保存退出之后sudo ldconfig更新

1.5最后检查版本

pkg-config --modversion opencv4 查看版本号

pkg-config --libs opencv4 查看libs库

二.遇到问题

2.1查看版本的时候出现

出现的原因是因为缺失了opencv.pc这个配置文件

解决方法:创建opencv.pc文件,注意添加的路径

然后在创建的文件里面添加以下信息

prefix=/usr/local

exec_prefix=${prefix}

includedir=${prefix}/include

libdir=${exec_prefix}/lib

Name: opencv

Description: The opencv library

Version:4.5.5

Cflags: -I${includedir}/opencv4

Libs: -L${libdir} -lopencv_shape -lopencv_stitching -lopencv_objdetect -lopencv_superres -lopencv_videostab -lopencv_calib3d -lopencv_features2d -lopencv_highgui -lopencv_videoio -lopencv_imgcodecs -lopencv_video -lopencv_photo -lopencv_ml -lopencv_imgproc -lopencv_flann -lopencv_core

注意要和自己安装opencv时的库路径和版本相对应(我安装的就是4.5.5)版本

保存退出之后,执行:

export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig

然后再执行查看版本的命令应该就可以了

2.2到后面编译darknet的时候会出现以下错误

这个问题困扰了我好久,看各种博客找解决办法,有让下载opencv库的等等,最后发现,直接把自己下载的opencv.pc或者opencv4.pc中对应的这三个删除就好了

记得用终端输入命令打开修改,直接找的话文件是只读,无法修改

删除之后,问题结局!

如有不对之处,欢迎各位斧正!

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值