ubuntuの下にopencv 3をインストールします.4.1+opencv4.2.0

3510 ワード

ubuntuでopencv 3をインストールすることを記録します.4.1とopen 4.2.0で、使用時に呼び出された対応するバージョンのプロシージャを指定します.1./usr/locla/ディレクトリの下にopencv 3を新規作成する.4.1およびopencv 4.2.0 2つのフォルダは、3.4.1と4.2.0をそれぞれこの2つのディレクトリにインストールします.
cd /usr/local/
mkdir opencv3.4.1
mkdir opencv4.2.0

2.opencv 3をインストールする.4.1(私が直接インストールしたプロセスを例にとると、自分のopencvとopencv_contribが配置した位置に基づいて対応するパスを変更する必要があります)
cd ~/Desktop/opencv-3.4.1/
mkdir build
cd build
sudo cmake -D CMAKE_INSTALL_PREFIX=/usr/local/opencv3.4.1 -D WITH_TBB=ON -D BUILD_NEW_PYTHON_SUPPORT=ON -D WITH_V4L=ON -D WITH_QT=ON -D WITH_OPENGL=ON -D CMAKE_LIBRARY_PATH=/usr/local/cuda-10.0/lib64/stubs -D OPENCV_EXTRA_MODULES_PATH=~/Desktop/opencv_contrib-3.4.1/modules -D CUDA_CUDA_LIBRARY=/usr/local/cuda-10.0/lib64/stubs/libcuda.so ..

そのうち:-D CMAKE_INSTALL_PREFIX=/usr/local/opencv3.4.1新しく作成したインストール場所-D OPENCV_への指定EXTRA_MODULES_PATH=~/Desktop/opencv_contrib-3.4.1/modules opencv_への指定contrib-3.4.1/modulesの位置
3.コンパイルインストール
sudo make -j8
sudo make install

4.opencv 4をインストールする.2.0
cd ~/Desktop/opencv-4.2.0/
mkdir build
cd build
sudo cmake -D CMAKE_INSTALL_PREFIX=/usr/local/opencv4.2.0 -D OPENCV_ENABLE_NONFREE=ON -D WITH_CUDA=ON -D WITH_CUDNN=ON -D OPENCV_GENERATE_PKGCONFIG=ON -D OPENCV_DNN_CUDA=ON -D ENABLE_FAST_MATH=1 -D CUDA_FAST_MATH=1 -D CUDA_ARCH_BIN=6.1 -D WITH_CUBLAS=1 -D OPENCV_EXTRA_MODULES_PATH=~/Desktop/opencv_contrib-4.2.0/modules -D HAVE_opencv_python3=ON -D CUDA_CUDA_LIBRARY=/usr/local/cuda-10.0/lib64/stubs/libcuda.so ..

そのうち:-D CMAKE_INSTALL_PREFIX=/usr/local/opencv4.2.0新しいインストール場所-D OPENCVを指定します.EXTRA_MODULES_PATH=~/Desktop/opencv_contrib-4.2.0/modulesからopencv_へcontrib-3.4.1/modulesの位置-D OPENCV_GENERATE_PKGCONFIG=ONはopencvを生成する.pc,opencv4.2.0デフォルトではopencvは生成されません.pc -D CUDA_ARCH_BIN=6.1 opencv 4を使う必要があるからです.2.0のdnnモジュールは、GPU加速が必要なので、ここでは自分のパソコンのGPUおよびCUDA、CUDNNバージョンに合わせて構成します.参考にしてください.https://blog.csdn.net/broliao/article/details/1048149375.コンパイルインストール
sudo make -j8
sudo make install

6.環境の構成
sudo gedit /etc/ld.so.conf.d/opencv3.4.1.conf

書き込み:
/usr/local/opencv3.4.1/lib

保存終了続行
sudo gedit /etc/ld.so.conf.d/opencv4.2.0.conf

書き込み:
/usr/local/opencv4.2.0/lib

終了更新の保存
sudo ldconfig

bashの構成
sudo gedit /etc/bash.bashrc 

末尾に加わる
PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/opencv3.4.1/lib/pkgconfig
PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/opencv4.2.0/lib/pkgconfig  
export PKG_CONFIG_PATH

更新
source /etc/bash.bashrc
sudo updatedb

7.コンパイルC++ファイルg++コンパイルを使用する場合opencv 3を指定する.4.1およびopencv 4.2.0コマンドは次のとおりです.
g++ opencv.cpp -o opencv `pkg-config --cflags --libs opencv`                           #opencv3.4.1
g++ opencv.cpp -o opencv `pkg-config --cflags --libs opencv4`                        #opencv4.2.0

CMakelistsを通過するとtxtコンパイル、CMakelists.txtで指定されたバージョン:
SET(OpenCV_DIR /usr/local/opencv3.4.1/share/OpenCV)
find_package(OpenCV REQUIRED)                                                                                   #opencv3.4.1           


SET(OpenCV_DIR /usr/local/opencv4.2.0/share/OpenCV)
find_package(OpenCV REQUIRED)                                                                                  #opencv4.2.0