遇到的问题
之前YOLO使用着很方便,很长时间没有用了,今天尝试在Ubuntu上重新部署YOLOv4的环境,在编译时一直提示没有找到opencv,在conda环境中安装了opencv-python也不能解决问题,忽然意识到yolov4编译的是C和C++代码,需要在系统中安装opencv。
一、 首先查看一下系统中是否已经安装
pkg-config opencv --modversion
我这里已经安装成功了,安装的是opencv 3.4.10版本
如果没有安装则进行下面的步骤
二、安装准备
- 安装cmake
sudo apt-get install cmake
- 安装依赖环境
sudo apt-get install build-essential libgtk2.0-dev libavcodec-dev libavformat-dev libjpeg-dev libswscale-dev libtiff5-dev
sudo apt-get install libgtk2.0-dev
sudo apt-get install pkg-config
- 下载opencv
下载地址 https://opencv.org/releases/
点击Source下载自己需要的版本
三、 安装及编译
- 文件解压后放到Ubuntu中,任意位置都可以
- 进入解压后的文件夹中,新建build文件夹,进入build文件夹
mkdir build
cd build
- 使用cmake命令
sudo cmake -D CMAKE_BUILD_TYPE=Release -D CMAKE_INSTALL_PREFIX=/usr/local ..
注意不要忘记复制命令最后的两个点
- 进行编译
sudo make -j8
可以使用sudo make -j 8 、sudo make -j4 、sudo make
我这里就使用sudo make -j 8了
- 执行安装
sudo make install
四、配置环境
- 更改ld.so.conf
- 打开/etc/ld.so.conf,可以使用gedit、vim、nano
- 在文件中加上一行 /usr/loacal/lib
- 其中/user/loacal是opencv安装路径也就是makefile中指定的安装路
sudo nano /etc/ld.so.conf
- 对ldconfig运行
sudo ldconfig
- 修改bash.bashrc文件
- 打开bashrc文件
sudo nano /etc/bash.bashrc
- 文件末尾添加路径
PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/lib/pkgconfig export PKG_CONFIG_PATH
- bashrc文件立即生效
source /etc/bash.bashrc
五、检验是否配置完成
pkg-config opencv --modversion
我这里已经安装成功了,安装的是opencv 3.4.10版本
六、参考博客
由衷感谢这位作者的博客博客地址