首頁 > 軟體

Linux下原始碼編譯安裝OpenCV

2020-06-16 17:20:47

Linux從原始碼編譯安裝大體就是設定編譯安裝三步,下面看看OpenCV的編譯安裝過程。

安裝依賴環境

本地編譯軟體並不能自動下載依賴環境,因此需要手動安裝,執行以下命令即可

sudo apt-get update
sudo apt-get install build-essential
sudo apt-get install cmake
sudo apt-get install libgtk2.0-dev
sudo apt-get install pkg-config
sudo apt-get install Python-dev python-numpy
sudo apt-get install libavcodec-dev libavformat-dev libswscale-dev libjpeg-dev libpng-dev libtiff-dev libjasper-dev

建立編譯目錄

為了方便,我們在home目錄下建立一個opencv的目錄,其下包含build,source,contrib三個目錄,其中source作為opencv的原始碼目錄,contrib作為附加模組的目錄,build為編譯生成的二進位制檔案的存放目錄,執行以下指令

cd
mkdir opencv
cd opencv
mkdir build source contrib

獲取原始碼

opencv:https://github.com/opencv/opencv
opencv_contrib:https://github.com/opencv/opencv_contrib

將原始碼解壓到對應的目錄

編譯安裝

這裡我們使用預設的設定,安裝路徑預設為 /usr/local ,執行以下命令

cd ~/opencv/build
cmake -DOPENCV_EXTRA_MODULES_PATH=../contrib/modules ../source
make -j4
sudo make install

注意:cmake的語句格式為cmake -DOPENCV_EXTRA_MODULES_PATH=<opencv_contrib>/modules <opencv_source_directory>,在cmake的過程中如果自動下載檔案但是速度較慢的話參考這篇文章【OpenCV】使用cmake生成MakeFile時下載檔案-j4選項表示使用4個執行緒編譯,如果你的CPU有4個物理核心,可以加速編譯,需要根據CPU的核心數設定。

注意事項

最新版的OpenCV編譯的時候需要消耗大量的記憶體,目測接近2G,所以如果你是虛擬機器儘量多分一點記憶體或者設定虛擬記憶體,設定虛擬記憶體參考這篇文章Linux下設定虛擬記憶體,如果你是在樹莓派這樣的硬體上編譯,尤其要注意這一點。

OpenCV官方教學中文版(For Python) PDF  http://www.linuxidc.com/Linux/2015-08/121400.htm

Ubuntu 14.04安裝OpenCV2.4.9  http://www.linuxidc.com/Linux/2016-07/132884.htm

Ubuntu 16.04上用CMake圖形介面交叉編譯樹莓派的OpenCV3.0 http://www.linuxidc.com/Linux/2016-10/135914.htm

Ubuntu 16.04中安裝OpenCV 2.4.11  http://www.linuxidc.com/Linux/2016-07/132882.htm

Ubuntu 16.04下Matlab2014a+Anaconda2+OpenCV3.1+Caffe安裝  http://www.linuxidc.com/Linux/2016-07/132860.htm

Ubuntu 16.04下TensorFlow+Caffe+OpenCV3.1+Theano部署  http://www.linuxidc.com/Linux/2017-01/139503.htm

Ubuntu 16.04 編譯安裝OpenCV 3.1及OpenCV多版本切換 http://www.linuxidc.com/Linux/2017-01/139325.htm


IT145.com E-mail:sddin#qq.com