在Linux系统上快速部署OPENCV 4.4.0

转载来自:

欢迎关注B站ID:跷课去写代码机器视觉第五集:安装opencv4.4.0

安装openCV:

=安装OpenCV4.4.0===
先卸载ubuntu自带的python2

sudo apt-get remove python2.7
sudo apt-get remove --auto-remove python2.7 
sudo apt-get purge python2.7 
sudo apt-get purge --auto-remove python2.7

安装依赖项

sudo apt-get install cmake
sudo apt-get install build-essential libgtk2.0-dev libavcodec-dev libavformat-dev libjpeg-dev libswscale-dev libtiff5-dev libgtk2.0-dev pkg-config

安装源文件包

去Opencv官网下载4.4.0的Sources,下好后解压:https://opencv.org/releases/
去github下载4.4.0的contrib压缩包:https://github.com/opencv/opencv_contrib/releases
将contrib压缩包解压后放进之前解压好的Opencv Sources的文件夹下


源文件包代码修改

修改opencv_contrib-4.4.0

1.将opencv_contrib-4.4.0移到opencv-4.4.0

移植

2.boostdesc.tar.gz解压,将所有的C文件copy到opencv-4.4.0/opencv_contrib
4.4.0/modules/xfeatures2d/src/

3.将opencv-4.4.0/opencv_contrib-4.4.0/modules/xfeatures2d/test/test_features2d.cpp中的
#include “features2d/test/test_detectors_regression.impl.hpp”
#include “features2d/test/test_descriptors_regression.impl.hpp”
改为
#include “test_detectors_regression.impl.hpp”
#include “test_descriptors_regression.impl.hpp”

4.将opencv-4.4.0/opencv_contrib-4.4.0/modules/xfeatures2d/test/test_rotation_and_scale_invariance.cpp中的
#include “features2d/test/test_detectors_invariance.impl.hpp”
#include “features2d/test/test_descriptors_invariance.impl.hpp”
改为
#include “test_detectors_invariance.impl.hpp”
#include “test_descriptors_invariance.impl.hpp”

5.cd /home/hai/opencv-4.4.0
vim CMakeLists.txt
INCLUDE_DIRECTORIES("/home/hai/opencv-4.4.0/opencv_contrib-4.4.0/modules/xfeatures2d/include")

6.对比一下opencv-4.4.0/opencv_contrib-4.4.0/modules/xfeatures2d/test/ 和 opencv-4.4.0/modules/feature2d/test/ 文件夹,看看前者缺了哪些.hpp文件,然后把缺的那些都复制进去


编译OPENCV源文件包

cd opencv-4.4.0;
  mkdir build;
  cd build

检查libgtk2.0-dev

8.首先检查libgtk2.0-dev是否安装正确

sudo apt-get install aptitude
sudo aptitude search libgtk2.0-dev

9.WTH_GTK=ON 一定要打开(后期import cv2使用cv2.imshow会报错no find module)

10.安装cmake编译器

sudo apt  install cmake

11 .

cmake -DCMAKE_BUILD_TYPE=RELEASE -DCMAKE_INSTALL_PREFIX=/usr/local -DBUILD_JAVA=OFF -DOPENCV_EXTRA_MODULES_PATH=../opencv_contrib-4.4.0/modules -DWITH_CUDA=1 -DENABLE_FAST_MATH=1 -DCUDA_FAST_MATH=1 -DWITH_CUBLAS=1 -DOPENCV_GENERATE_PKGCONFIG=ON -WITH_GTK=ON -D WITH_OPENMP=ON -DWITH_GSTREAMER=ON -DCUDA_GENERATION=Pascal ..

12.(根据cpu性能选择多线程编译数,我的是6核cpu)

make -j6 

13.(切换超级用户,否则权限不足)

su root

或者使用

sudo su

(安装opencv)

make install 

验证OPENCV

此时可以输入

python3
import cv2

验证看opencv是否安装成功


14.添加环境变量:

vim ~/.bashrc
export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig
export LD_LIBRARY_PATH=/usr/local/lib
source ~/.bashrc

在/etc/ld.so.conf.d/opencv4.conf中(如果没有就自己新建一个)
写入/usr/local/lib
保存然后更新一下

sudo ldconfig

sudo gedit /etc/bash.bashrc 

#在末尾添加

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

保存然后更新一下

source /etc/bash.bashrc
sudo updatedb

sudo gedit /etc/ld.so.conf

在末尾加上/usr/local/lib
保存然后更新一下

sudo ldconfig

找到安装目录(我是安装在usr/local)
cd /usr/local/lib/pkgconfig
切换超级用户重命名opencv4.pc文件为opencv.pc

mv opencv4.pc opencv.pc

验证opencv安装:

(查看opencv的lib库)

pkg-config opencv --libs         

(查看opencv的安装版本)

pkg-config opencv --modversion

(安装aptitude)

sudo apt-get install aptitude 

(安装Python-dev)

sudo aptitude install python-dev
sudo apt-get install build-essential libgtk2.0-dev libavcodec-dev libavformat-dev libjpeg-dev libswscale-dev libtiff5-dev libgtk2.0-dev pkg-config libopencore-amrnb-dev libopencore-amrwb-dev libfaac-dev libmp3lame-dev libvorbis-dev libxvidcore-dev x264 libx264-dev libfaac-dev libmp3lame-dev libtheora-dev libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev libavresample-dev

(解决Failed to load module "canberra-gtk-module"的报错)

sudo apt-get install libcanberra-gtk-module

(安装pip3)

sudo apt install python3-pip  

(安装skbuild)

sudo pip3 install scikit-build   

(安装opencv扩展包)(安装会非常慢)

sudo pip3 install opencv-python

(安装库)

sudo pip3 install numpy     

(安装库)(下载会非常慢)

sudo pip3 install scipy      

(安装库)(下载会非常慢)

sudo pip3 install matplotlib  

(安装库)

sudo pip3 install pandas  

非必要步骤

########################非必要步骤##########################
找到编译好的python cv库

sudo find / -iname CV2*.so

/usr/local/lib/python3.8/dist-packages/CV2/CV2.cpython-38-x86_64-linux-gnu.so
/usr/local/openCV4/lib/python3.8/dist-packages/CV2/python-3.8/CV2.cpython-38-x86_64-linux-gnu.so

链接到系统自带的python3解释器

sudo ln -s /usr/local/openCV4/lib/python3.8/dist-packages/CV2/python-3.8/CV2.cpython-35m-x86_64-linux-gnu.so /usr/lib/python3/dist-packages/CV2.so
  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值