先用sudo apt isntall 安装gcc,g++,cmake,cmake-gui
sudo apt install libgtk2.0-dev
sudo apt install pkg-config
#已经手动编译安装过ffmpeg的跳过这步
sudo apt install ffmpeg
sudo apt install libavcodec-dev
sudo apt install libavformat-dev
sudo apt install libswscale-dev
#根据实际需要,选择性安装libjpeg-dev, libpng-dev, libtiff-dev, libjasper-dev, libdc1394-22-dev等
sudo apt install libjpeg-dev, libpng-dev, libtiff-dev, libjasper-dev, libdc1394-22-dev libtbb2 libtbb-dev libdc1394 2.x CUDA Toolkit 6.5
在opencv官网下载需要的版本,这里是opencv4.4.0
cd opencv-4.4.0
mkdir build
cd build
cmake-gui
#选择源码目录和生成目录,配置extra目录为contrib下的moduls目录,配置其他参数
camke-gui中的配置勾选参考https://blog.csdn.net/LclLsh/article/details/131416160
#在build目录下,根据自己的内核数选择
make -j8
sudo make install
#更改配置,免于拷贝动态库,如果打开弹出警告和内容空白,不用管
sudo gedit /etc/ld.so.conf.d/opencv.conf
# 添加lib路經 在 末尾 保存退出
/usr/local/lib
# 更新
sudo ldconfig
configure出现错误信息,可以查看信息中的日志文件,fan dao zui xia mian找到
前面是文件需要存放的位置和文件名,后面为下载地址
#cmake_download "/home/xxxx/opencv-4.4.0/.cache/data/7505c44ca4eb54b4ab1e4777cb96ac05-face_landmark_model.dat" "https://raw.githubusercontent.com/opencv/opencv_3rdparty/8afa57abc8229d611c4937165d20e2a2d9fc5a12/face_landmark_model.dat"
翻墙从该地址下载完成后,将下载的文件改名为7505c44ca4eb54b4ab1e4777cb96ac05-face_landmark_model.dat
移动到opencv-4.4.0/.cache/data/目录下,可以看到同名文件,但是字节数为0(下载失败的),删除掉,再复制进来
如果需要安装gpu版本,先下载安装CUDA(11.2)和cudnn(8.2),然后在cmake-gui中勾选带有关键词cuda的框框。
注意:拷贝cudnn的头文件时需要把所有的头文件都拷贝
参考:
Ubuntu 20.04安装CUDA & CUDNN 手把手带你撸_ubuntu install cudnn_哈希Map的博客-CSDN博客解决Cmake编译 OPENCV_DNN_CUDA 报错: CMake Error at modules/dnn/CMakeLists.txt:39._C++有手就行的博客-CSDN博客