linux编译安装opencv4.5.4(支持opencv_contrib,支持cuda加速)

安装依赖

apt update
apt install cmake -y
apt install gcc g++ -y

apt install libxslt1-dev libffi-dev -y
apt install at-spi2-core -y

add-apt-repository “deb http://security.ubuntu.com/ubuntu xenial-security main”
apt update -y
apt install libjasper1 libjasper-dev -y

apt install build-essential libncursesw5-dev libgdbm-dev libc6-dev -y
apt install zlib1g-dev libsqlite3-dev tk-dev -y
apt install libssl-dev openssl libffi-dev -y

apt install libblas-dev liblapack-dev gfortran -y

apt install build-essential -y
apt install cmake git libgtk2.0-dev pkg-config libavcodec-dev libavformat-dev libswscale-dev -y
apt install libtbb2 libtbb-dev libjpeg-dev libpng-dev libtiff-dev libdc1394-22-dev -y

apt install nasm libtool -y

apt install libgtk-3-dev libgtk2.0-dev libavutil-dev libswscale-dev libasound2-dev libspeex-dev -y

apt install v4l-utils libopenexr-dev -y

apt install libavcodec-dev libavformat-dev libswscale-dev -y
apt install libgstreamer-plugins-base1.0-dev libgstreamer1.0-dev -y

apt install python3-dev python3-numpy -y

apt install libwebp-dev -y
apt install libzstd-dev -y
apt install libgl1-mesa-glx

安装openjpeg

github地址:https://github.com/uclouvain/openjpeg

cd xxx # 源码解压路径
mkdir build
cd build
cmake … -DCMAKE_BUILD_TYPE=Release
make
make install

编译安装opencv

cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_C_COMPILER=/usr/bin/gcc -D CMAKE_INSTALL_PREFIX=/usr/local -D OPENCV_EXTRA_MODULES_PATH=/data/opencv-source/opencv_contrib-4.5.4/modules/ -D CUDA_CUDA_LIBRARY=/usr/local/cuda/lib64/stubs/libcuda.so -D CUDA_ARCH_BIN=7.5 -D CUDA_ARCH_PTX="" -D WITH_CUDA=ON -D WITH_TBB=ON -D WITH_FFMPEG=ON -D BUILD_PYTHON_SUPPORT=ON -D BUILD_NEW_PYTHON_SUPPORT=ON -D BUILD_OPENCV_PYTHON3=ON -D WITH_V4L=ON -D INSTALL_C_EXAMPLES=ON -D INSTALL_PYTHON_EXAMPLES=ON -D BUILD_EXAMPLES=ON -D WITH_QT=ON -D WITH_GSTREAMER=ON -D WITH_OPENGL=ON -D ENABLE_FAST_MATH=1 -D CUDA_FAST_MATH=1 -D OPENCV_GENERATE_PKGCONFIG=ON -D OPENCV_PC_FILE_NAME=opencv.pc -D CUDA_TOOLKIT_ROOT_DIR=/usr/local/cuda -D CMAKE_LIBRARY_PATH=/usr/local/cuda/lib64/stubs -D WITH_CUBLAS=ON -D WITH_NVCUVID=ON -D BUILD_opencv_python2=ON -D BUILD_opencv_python3=ON -D PYTHON3_LIBRARY_DEBUG=ON -D PYTHON3_LIBRARIES=/opt/conda/lib/libpython3.so -D PYTHON3_PACKAGES_PATH=/opt/conda/lib/python3.8/site-packages -D PYTHON3_INCLUDE_PATH=/opt/conda/include/python3.8 -D BUILD_opencv_cudacodec=ON -D OPENCV_DNN_CUDA=ON -D WITH_CUDNN=ON -D OPENCV_ENABLE_NONFREE=ON -D WITH_GSTREAMER=ON -D BUILD_EXAMPLES=OFF …

cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_C_COMPILER=/usr/bin/gcc -D CMAKE_INSTALL_PREFIX=/usr/local -D OPENCV_EXTRA_MODULES_PATH=/data/opencv-source/opencv_contrib-4.5.4/modules/ -D CUDA_CUDA_LIBRARY=/usr/local/cuda/lib64/stubs/libcuda.so -D CUDA_ARCH_BIN=7.5 -D CUDA_ARCH_PTX="" -D WITH_CUDA=ON -D WITH_TBB=ON -D WITH_FFMPEG=ON -D BUILD_PYTHON_SUPPORT=ON -D BUILD_NEW_PYTHON_SUPPORT=ON -D BUILD_OPENCV_PYTHON3=ON -D WITH_V4L=ON -D INSTALL_C_EXAMPLES=ON -D INSTALL_PYTHON_EXAMPLES=ON -D BUILD_EXAMPLES=ON -D WITH_QT=ON -D WITH_GSTREAMER=ON -D WITH_OPENGL=ON -D ENABLE_FAST_MATH=1 -D CUDA_FAST_MATH=1 -D OPENCV_GENERATE_PKGCONFIG=ON -D OPENCV_PC_FILE_NAME=opencv.pc -D CUDA_TOOLKIT_ROOT_DIR=/usr/local/cuda -D CMAKE_LIBRARY_PATH=/usr/local/cuda/lib64/stubs -D WITH_CUBLAS=ON -D WITH_NVCUVID=ON -D BUILD_opencv_python2=ON -D BUILD_opencv_python3=ON -D PYTHON3_LIBRARY_DEBUG=ON -D PYTHON3_LIBRARIES=/opt/conda/lib/libpython3.so -D PYTHON3_PACKAGES_PATH=/opt/conda/lib/python3.8/site-packages -D PYTHON3_INCLUDE_PATH=/opt/conda/include/python3.8 -D BUILD_opencv_cudacodec=ON -D OPENCV_DNN_CUDA=ON -D WITH_CUDNN=ON -D OPENCV_ENABLE_NONFREE=ON -D WITH_GSTREAMER=ON -D BUILD_EXAMPLES=OFF ..

需要注意的参数:
CMAKE_INSTALL_PREFIX:指定opencv路径
CUDA_ARCH_BIN:根据自己机器GPU型号指定,兼容表参考https://www.nanguoyu.com/opencv4-5-1-gpu
PYTHON3_LIBRARIES
PYTHON3_PACKAGES_PATH
PYTHON3_INCLUDE_PATH

make -j8

make install

完成

参考

https://blog.csdn.net/qq_29147861/article/details/115046736?utm_medium=distribute.pc_relevant.none-task-blog-2defaultbaidujs_title~default-0.no_search_link&spm=1001.2101.3001.4242

https://www.nanguoyu.com/opencv4-5-1-gpu

【1】: https://blog.csdn.net/qq_29147861/article/details/115046736?utm_medium=distribute.pc_relevant.none-task-blog-2defaultbaidujs_title~default-0.no_search_link&spm=1001.2101.3001.4242.

【2】: https://www.nanguoyu.com/opencv4-5-1-gpu.

你可能感兴趣的:(opencv,linux,ubuntu)