opencv在ubuntu下的编译方法

准备工作:

更新升级存在的包:
sudo apt-get update
sudo apt-get upgrade

1.安装关联组件:

sudo apt-get install build-essential cmake pkg-config
sudo apt-get install libjpeg8-dev libtiff5-dev libjasper-dev libpng12-dev
sudo apt-get install libavcodec-dev libavformat-dev libswscale-dev libv4l-dev
sudo apt-get install libxvidcore-dev libx264-dev
sudo apt-get install libgtk-3-dev
sudo apt-get install libatlas-base-dev gfortran
sudo apt-get install python3-dev python3-pip python3-numpy

numpy要安装,否则后面python3里面无法引出cv2.###

2.下载源码:opencv和opencv-contrib
在opencv官网或者github站上。

2.5. 在opencv目录里mkdir build
进入build目录

3.cmake
没安装cmake的话,先执行:sudo apt-get install cmake

执行cmake命令:
cmake -D CMAKE_BUILD_TYPE=RELEASE -D OPENCV_EXTRA_MODULES_PATH=…/…/opencv_contrib/modules -D CMAKE_INSTALL_PREFIX=/usr/local -D BUILD_opencv_python3=ON -D BUILD_opencv_python2=OFF …

(上面OPENCV_EXTRA_MODULES_PATH,指定的是contrib源码的目录,要根据实际源码的目录情况来填写。最后的‘…’ 是指的cmake的opencv代码目录。)


-D BUILD_opencv_python3=ON
-D BUILD_opencv_python2=OFF

(如果要安装支持cuda的版本,则增进如下cuda选项,根据源码不同需要修改extra_modules_path:

cmake
-D CMAKE_BUILD_TYPE=RELEASE
-D OPENCV_EXTRA_MODULES_PATH=…/…/opencv_contrib/modules
-D WITH_TBB=ON
-D WITH_V4L=ON
-D WITH_QT=OFF
-D WITH_GTK=ON
-D WITH_OPENGL=ON
-D WITH_OPENMP=ON
-D BUILD_EXAMPLES=OFF
-D WITH_CUDA=ON
-D OPENCV_DNN_CUDA=ON
-D WITH_CUDNN=ON
-D WITH_CUBLAS=ON
-D OPENCV_ENABLE_NONFREE=ON
-D HAVE_opencv_python3=ON
-D BUILD_TIFF=ON
-D CMAKE_INSTALL_PREFIX=/usr/local

4.编译成可执行文件(用sudo 前缀敲命令)
sudo make -j4

同样在build目录中执行(此步骤所需时间较多,请耐心等待 )。其中, -j4表示以4个进程进行编译,可按照你的电脑性能改变。
sudo make install

5.加入到动态链接库:
sudo gedit /etc/ld.so.conf
在文件中,增加一行:
/usr/local/lib
然后,再执行:
sudo ldconfig

猜你喜欢

转载自blog.csdn.net/weixin_40433334/article/details/127740851