Ubuntu20.04+opencv-4.3.0+opencv_contrib-4.3.0安裝
- 為什麼需要opencv_contrib?
-
- 下載下傳opencv與opencv_contrib
- 安裝依賴項
- 安裝cmake-gui并編譯
-
- 在opencv-4.3.0下建立build
- 開始cmake-gui編譯
- 輸入源檔案位址和編譯位址并點選configure
- 部分完成
- 配置編譯選項第一步:在search欄搜尋path 添加opencv_contrib-4.3.0/modules的位址
- 配置編譯的第二步:在search欄搜尋type 設定CMAKE_BUILD_TYPE 為release
- 配置編譯第三步:在search欄搜尋world BUILD_OPENCV_WORLD打鈎
- 點選generate 出現configuring and generating done
- 在build目錄下根據自己是幾線程進行編譯
-
- 出現錯誤一:fatal error: boostdesc_bgm.i: 沒有那個檔案或目錄
- 解決方式:/home/csh/opencv/opencv_contrib-4.3.0/modules/xfeatures2d/src目錄下加上缺失的檔案
- 清除編譯記錄之後再次編譯
- 出現問題2:fatal error: features2d/test/test_detectors_regression.impl.hpp: 沒有那個檔案或目錄
- 解決方式:把opemcv-4.3.0/modules/features2d 檔案夾拷貝到build目錄
- 清除編譯記錄之後再次編譯
- 安裝成功
- 配置環境變量
為什麼需要opencv_contrib?
不安裝opencv_contrib将導緻一些問題:opencv2/face.hpp找不到;人臉識别的功能無法使用,單純從其他地方copy face.hpp将影響opencv實際的使用,是以還是老老實實地把opencv與opencv_contrib一起編譯!
下載下傳opencv與opencv_contrib
為了避免不必要的錯誤,保持opencv和opencv_contrib版本一緻
opencv4.3.0源碼位址
opencv4.3.0源碼位址
opencv_contrib4.3.0源碼位址
opencv_contrib4.3.0源碼位址
下載下傳速度太慢的話,可以在windows下用迅雷下載下傳!
對下載下傳好的檔案進行解壓
建立解壓檔案夾
sudo mkdir opencv
解壓
sudo tar -zxvf opencv-4.3.0.tar.gz -C /home/csh/opencv
sudo tar -zxvf opencv_contrib-4.3.0.tar.gz -C /home/csh/opencv

安裝依賴項
sudo apt install build-essential cmake git pkg-config libgtk-3-dev \
libavcodec-dev libavformat-dev libswscale-dev libv4l-dev \
libxvidcore-dev libx264-dev libjpeg-dev libpng-dev libtiff-dev \
gfortran openexr libatlas-base-dev python3-dev python3-numpy \
libtbb2 libtbb-dev libdc1394-22-dev
安裝cmake-gui并編譯
sudo apt-get install cmake-gui
在opencv-4.3.0下建立build
sudo mkdir build
cd build
開始cmake-gui編譯
cmake-gui
輸入源檔案位址和編譯位址并點選configure
部分完成
配置編譯選項第一步:在search欄搜尋path 添加opencv_contrib-4.3.0/modules的位址
配置編譯的第二步:在search欄搜尋type 設定CMAKE_BUILD_TYPE 為release
配置編譯第三步:在search欄搜尋world BUILD_OPENCV_WORLD打鈎
點選generate 出現configuring and generating done
在build目錄下根據自己是幾線程進行編譯
nproc
make -j12
出現錯誤一:fatal error: boostdesc_bgm.i: 沒有那個檔案或目錄
解決方式:/home/csh/opencv/opencv_contrib-4.3.0/modules/xfeatures2d/src目錄下加上缺失的檔案
百度網盤位址
提取碼: 8k83
清除編譯記錄之後再次編譯
make clean
make -j12
出現問題2:fatal error: features2d/test/test_detectors_regression.impl.hpp: 沒有那個檔案或目錄
解決方式:把opemcv-4.3.0/modules/features2d 檔案夾拷貝到build目錄
清除編譯記錄之後再次編譯
make clean
make -j12
安裝成功
配置環境變量
sudo make install
sudo gedit /etc/ld.so.conf.d/opencv.con
添加/usr/local/lib