开启掘金成长之旅!这是我参与「掘金日新计划 · 2 月更文挑战」的第 8 天,点击查看活动详情
欢迎关注我的公众号 [极智视界],获取我的更多经验分享
大家好,我是极智视界,本文介绍一下 ubuntu源码编译cuda版opencv。
邀您加入我的知识星球「极智视界」,星球内有超多好玩的项目实战源码下载,链接:t.zsxq.com/0aiNxERDq
如果你需要源码编译cpu版的opencv可以看我的这篇文章:《极智开发 | ubuntu源码编译opencv》
要编译cuda版opencv,需要先安装好cuda和cudnn,可以参考我的这篇文章:《极智开发 | ubuntu系统、显卡驱动、cuda、cudnn安装教程》
在安装好cuda和cudnn后,咱们开始。
1、安装cmake及依赖库
sudo apt-get install cmake
sudo apt-get install build-essential libgtk2.0-dev libavcodec-dev libavformat-dev libjpeg.dev libtiff4.dev libswscale-dev libjasper-dev
errorE: unable to locate libjasper-dev
sudo add-apt-repository "deb http://security.ubuntu.com/ubuntu xenial-security main"
sudo apt update
sudo apt install libjasper1 libjasper-dev
sudo apt-get install libavcodec-dev libavformat-dev libavutil-dev libswscale-dev libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev libdc1394-22-dev libavresample-dev
2、下载源码包
# 咱们去opencv官方github上拉取最新版的4.x源码
git clone --recursive https://github.com/opencv/opencv.git opencv-4x
# 为了提速下载,也可以采用gittee源
git clone --recursive https://gitee.com/mirrors/opencv.git opencv-4x
3、开始编译
cd opencv-4x
# 再下载opencv-contrib
cd 3rdparty
git clone https://github.com/opencv/opencv_contrib.git
cd ..
mkdir build
cd build
sudo cmake -D WITH_TBB=ON -D OPENCV_GENERATE_PKGCONFIG=ON -D WITH_CUDA=ON -D WITH_CUDNN=ON -D WITH_V4L=ON -D BUILD_TIFF=ON -D OPENCV_EXTRA_MODULES_PATH=/path/to/opencv-4x/3rdparty/3rdparty/opencv_contrib/modules -D CMAKE_INSTALL_PREFIX=/path/to/opencv ..
sudo make -j8
sudo make install -j8
- 若cmake要指定python3,确定/usr/bin/python指向你的python3,则:
sudo cmake -D WITH_TBB=ON -D OPENCV_GENERATE_PKGCONFIG=ON -D WITH_CUDA=ON -D WITH_CUDNN=ON -D WITH_V4L=ON -D BUILD_TIFF=ON -D OPENCV_EXTRA_MODULES_PATH=/path/to/opencv-4x/3rdparty/opencv_contrib/modules -D PYTHON_DEFAULT_EXECUTABLE=/usr/bin/python -D CMAKE_INSTALL_PREFIX=/path/to/opencv ..
4、查看cuda opencv是否安装成功
看看 path/to/opencv中头或者库是否有cuda的头或者库,如下:
好了,以上分享了 ubuntu源码编译cuda版opencv,希望我的分享能对你的学习有一点帮助。
【公众号传送】
畅享人工智能的科技魅力。邀请您加入我的知识星球,星球内有丰富的AI技术应用相关技术文章、资源、项目源码,涵盖人脸、检测、分割、多模态、自动驾驶、工业等实用、好玩的项目应用,一定会对你的学习有所帮助。t.zsxq.com/0aiNxERDq