ubuntu18.04下opencv3.4.5 opencv_contribution (GPU加速)安装记录

ubuntu18.04 opencv3.4.8 1080Ti

依赖项:

sudo apt-get install build-essential 
sudo apt-get install cmake git libgtk2.0-dev pkg-config libavcodec-dev libavformat-dev libswscale-dev
sudo apt-get install python-dev python-numpy libtbb2 libtbb-dev libjpeg-dev libpng-dev libtiff-dev libjasper-dev libdc1394-22-dev

cmake \
    -D CMAKE_BUILD_TYPE=RELEASE \
    -D CMAKE_INSTALL_PREFIX=/usr/local \
    -D OPENCV_EXTRA_MODULES_PATH=../opencv_contrib-3.4.8/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 BUILD_NEW_PYTHON_SUPPORT=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_OPENGL=ON \
    -D ENABLE_FAST_MATH=1 \
    -D CUDA_FAST_MATH=1 \
    -D WITH_CUBLAS=1 \
    -D WITH_NVCUVID=ON \
    -D BUILD_opencv_cudacodec=OFF ..

 

错误1:No module named numpy.distutils

Traceback (most recent call last):
  File "", line 1, in 
ImportError: No module named numpy.distutils

解决方法:

sudo apt-get install python-numpy

 

错误2:

- Checking for module 'gstreamer-base-1.0'
--   No package 'gstreamer-base-1.0' found
-- Checking for module 'gstreamer-video-1.0'
--   No package 'gstreamer-video-1.0' found
-- Checking for module 'gstreamer-app-1.0'
--   No package 'gstreamer-app-1.0' found
-- Checking for module 'gstreamer-riff-1.0'
--   No package 'gstreamer-riff-1.0' found
-- Checking for module 'gstreamer-pbutils-1.0'
--   No package 'gstreamer-pbutils-1.0' found
-- Checking for module 'gstreamer-base-0.10'
--   No package 'gstreamer-base-0.10' found
-- Checking for module 'gstreamer-video-0.10'
--   No package 'gstreamer-video-0.10' found
-- Checking for module 'gstreamer-app-0.10'
--   No package 'gstreamer-app-0.10' found
-- Checking for module 'gstreamer-riff-0.10'
--   No package 'gstreamer-riff-0.10' found
-- Checking for module 'gstreamer-pbutils-0.10'
--   No package 'gstreamer-pbutils-0.10' found

解决方法:

sudo apt install libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev

 

错误3:

-- Checking for module 'libdc1394-2'
--   No package 'libdc1394-2' found
-- Checking for module 'libdc1394'
--   No package 'libdc1394' found

解决方法:

sudo apt-get install libdc1394-22-dev

 

错误4:

-- Could NOT find Atlas (missing: Atlas_CLAPACK_INCLUDE_DIR Atlas_CBLAS_LIBRARY Atlas_BLAS_LIBRARY)

解决方法:

sudo apt-get install libatlas-base-dev

 

错误5:

Could not find OpenBLAS include. Turning OpenBLAS_FOUND off
Could not find OpenBLAS lib. Turning OpenBLAS_FOUND off

解决方法:

sudo apt-get install libopenblas-dev
sudo apt-get install liblapacke-dev

添加软链接:

sudo ln -s /usr/include/lapacke.h /usr/include/x86_64-linux-gnu

添加OpenBLAS库路径于 ~/opencv-x.x.x/cmake/OpenCVFindOpenBLAS.cmake文件:

46行SET(Open_BLAS_LIB_SEARCH_PATHS

        Open_BLAS_INCLUDE_SEARCH_PATHS path: /usr/include/x86_64-linux-gnu

58行SET(Open_BLAS_LIB_SEARCH_PATHS

          Open_BLAS_LIB_SEARCH_PATHS path: /usr/lib/x86_64-linux-gnu

 

错误6:

The imported target "vtkRenderingPythonTkWidgets" references the file
   "/usr/lib/x86_64-linux-gnu/libvtkRenderingPythonTkWidgets.so"
but this file does not exist.  Possible reasons include:
* The file was deleted, renamed, or moved to another location.
* An install or uninstall procedure did not complete successfully.
* The installation package was faulty and contained
   "/usr/lib/cmake/vtk-6.3/VTKTargets.cmake"
but not all the files it references.

解决方法:

sudo ln -s /usr/lib/python2.7/dist-packages/vtk/libvtkRenderingPythonTkWidgets.x86_64-linux-gnu.so /usr/lib/x86_64-linux-gnu/libvtkRenderingPythonTkWidgets.so

 

错误7:

-- The imported target "vtk" references the file
   "/usr/bin/vtk"
but this file does not exist.  Possible reasons include:
* The file was deleted, renamed, or moved to another location.
* An install or uninstall procedure did not complete successfully.
* The installation package was faulty and contained
   "/usr/lib/cmake/vtk-6.3/VTKTargets.cmake"
but not all the files it references.

解决方法:

sudo ln -s /usr/bin/vtk6 /usr/bin/vtk 

 

错误8:

CMake Error at cmake/OpenCVFindLibsGUI.cmake:18 (find_package):
  Could not find a package configuration file provided by "Qt5" with any of
  the following names:

    Qt5Config.cmake
    qt5-config.cmake

  Add the installation prefix of "Qt5" to CMAKE_PREFIX_PATH or set "Qt5_DIR"
  to a directory containing one of the above files.  If "Qt5" provides a
  separate development package or SDK, be sure it has been installed.

解决方法:

sudo apt-get install qtbase5-dev
sudo apt-get install qtdeclarative5-dev

 

错误9:

-- Looking for linux/videodev.h
-- Looking for linux/videodev.h - not found
-- Looking for linux/videodev2.h
-- Looking for linux/videodev2.h - found
-- Looking for sys/videoio.h
-- Looking for sys/videoio.h - not found

解决方法:

sudo apt-get install libv4l-dev
sudo ln -s /usr/include/libv4l1-videodev.h  /usr/include/linux/videodev.h

 

错误10:

Could NOT find JNI (missing: JAVA_AWT_LIBRARY JAVA_JVM_LIBRARY JAVA_INCLUDE_PATH JAVA_INCLUDE_PATH2 JAVA_AWT_INCLUDE_PATH)

解决方法:

sudo apt-get install openjdk-8-jdk

 

错误11:

Could NOT find Pylint (missing: PYLINT_EXECUTABLE)
Could NOT find Flake8 (missing: FLAKE8_EXECUTABLE) 

决方法:

sudo apt-get install pylint
sudo apt-get install flake8

 

错误12:

 Looking for ccache - not found

解决方法:

sudo apt-get install ccache

 

错误13:

-- Checking for module 'tesseract'
--   No package 'tesseract' found
-- Tesseract:   NO

解决方法:
 

sudo apt-get install tesseract-ocr

 

错误14:

Module opencv_sfm disabled because the following dependencies are not found: Eigen

解决方法:

sudo apt-get install libeigen3-dev

 

错误15:

No preference for use of exported gflags CMake configuration set, and no hints for include/library directories provided. Defaulting to preferring an installed/exported gflags CMake configuration if available.
-- Failed to find installed gflags CMake configuration, searching for gflags build directories exported with CMake.
-- Failed to find gflags - Failed to find an installed/exported CMake configuration for gflags, will perform search for installed gflags components.
-- Failed to find gflags - Could not find gflags include directory, set GFLAGS_INCLUDE_DIR to directory containing gflags/gflags.h
-- Failed to find glog - Could not find glog include directory, set GLOG_INCLUDE_DIR to directory containing glog/logging.h

解决方法:

sudo apt-get install libceres-dev

 

错误16:

 Checking for module 'libavresample'
 No package 'libavresample' found

解决方法:

sudo apt-get install libavresample-dev

 

错误17:

Could NOT find HDF5 (missing: HDF5_LIBRARIES HDF5_INCLUDE_DIRS) (found version "")

解决方法:

sudo apt install libhdf5-dev

 

错误18:

VTK is not found. Please set -DVTK_DIR in CMake to VTK build directory, or to VTK install subdirectory with VTKConfig.cmake file

解决方法:

sudo apt install libvtk6-dev

 

 

 

 

 

 

 

 

 

 

 

你可能感兴趣的:(opencv)