溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點(diǎn)擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

Ubuntu17.04系統(tǒng)中如何源碼編譯安裝opencv

發(fā)布時間:2021-06-22 13:41:41 來源:億速云 閱讀:135 作者:小新 欄目:服務(wù)器

這篇文章主要介紹Ubuntu17.04系統(tǒng)中如何源碼編譯安裝opencv,文中介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們一定要看完!

一、安裝 gcc cmake 編譯環(huán)境

sudo apt-get install build-essential pkg-config cmake cmake-gui

本文提供兩種源碼編譯方式,一種是cmake命令,另一種是通過圖形界面的cmake-gui進(jìn)行編譯

該版本系統(tǒng)ubuntu已經(jīng)自帶python 2.7 和 python 3.5 ,需安裝 pip 對python包進(jìn)行管理

sudo apt-get install python-pip
sudo apt-get install python3-pip

配置pip 清華源加速包下載更新速度(尋找飛一樣的感覺)

mkdir ~/.pip
vim ~/.pip/pip.conf
# 在pip.conf 中添加以下內(nèi)容
[global]
index-url = https://pypi.tuna.tsinghua.edu.cn/simple
[install]
trusted-host=mirrors.aliyun.com

二、安裝python 以及 python3 下的數(shù)據(jù)分析包

pip install numpy scipy matplotlib scikit-image scikit-learn 
pip3 install numpy scipy matplotlib scikit-image scikit-learn

三、安裝其他依賴

# git : 版本控制
# gfortran fortran編譯器
# yasm 匯編編譯器
# ffmpeg 系統(tǒng)自帶
sudo apt-get install checkinstall yasm gfortran git ffmpeg
sudo apt-get install libxvidcore4 libgtk-3-dev
sudo apt-get install libjpeg8-dev libjasper-dev 
sudo apt-get install libtiff5-dev
sudo apt-get install libavcodec-dev libavformat-dev libswscale-dev libdc1394-22-dev
sudo apt-get install libxine2-dev libv4l-dev
sudo apt-get install libqt4-dev libgtk2.0-dev libtbb-dev
sudo apt-get install libatlas-base-dev
sudo apt-get install libfaac-dev libmp3lame-dev libtheora-dev
sudo apt-get install libvorbis-dev libxvidcore-dev
sudo apt-get install libopencore-amrnb-dev libopencore-amrwb-dev
sudo apt-get install x264 v4l-utils

四、可選依賴

sudo apt-get install libprotobuf-dev protobuf-compiler
sudo apt-get install libgoogle-glog-dev libgflags-dev
sudo apt-get install libgphoto2-dev libeigen3-dev libhdf5-dev doxygen

五、下載并且安裝OpenCV3

安裝git

sudo apt-get install git

下載OpenCV3

git clone https://github.com/opencv/opencv.git

下載OpenCV_Contrib

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

OpenCV 從 3.0 開始,就將一部分內(nèi)容(比如 SIFT 等)分離到 opencv_contrib 中。因此,要完整安裝 OpenCV,還需要安裝 opencv_contrib。

命令編譯

cd opencv
mkdir build
cd build
cmake -D CMAKE_BUILD_TYPE=RELEASE \
  -D CMAKE_INSTALL_PREFIX=/usr/local \
  -D INSTALL_C_EXAMPLES=ON \
  -D INSTALL_PYTHON_EXAMPLES=ON \
  -D WITH_TBB=ON \
  -D WITH_V4L=ON \
  -D WITH_QT=ON \
  -D WITH_OPENGL=ON \
  -D OPENCV_EXTRA_MODULES_PATH=../../opencv_contrib/modules \
  -D BUILD_EXAMPLES=ON ..
# 查看cpu 核心數(shù)
nproc
# 如果你有8個核心 
# 切換至 build 目錄中,執(zhí)行下面命令,編譯源碼并鏈接生成相應(yīng)的動態(tài)庫以及可執(zhí)行文件
make -j8
# 執(zhí)行完成后,再執(zhí)行以下命令,將生成的可執(zhí)行文件以及動態(tài)庫安裝到指定的安裝目錄中。
sudo make install
sudo sh -c 'echo "/usr/local/lib" >> /etc/ld.so.conf.d/opencv.conf'
sudo ldconfig

用圖形化工具配置生成 makefile

切換至 opencv 目錄,然后新建一個目錄,用于存放 cmake 生成的配置文件。

mkdir build

cd build

在你的圖形界面的軟件中找到 cmake-gui 打開

然后在 Where is the source code 中添加 opencv 的目錄路徑,在 where to build the binaries 中添加剛才新建的 build 目錄

然后點(diǎn)擊下面的Configure,選擇 Unix Makefiles,然后選擇 default ...。點(diǎn)擊 OK,從而處理 opencv目錄下的 CMakeLists.txt 。并且在 Build 目錄下生成 CMakeCache.txt 及 Makefile 等相關(guān)文件。

Configure配置結(jié)束后,將會出現(xiàn)類似以下配置界面

Ubuntu17.04系統(tǒng)中如何源碼編譯安裝opencv

以下是需要修改的部分

  • CMAKE_BUILD_TYPE 修改為 RELEASE

  • OPENCV_EXTRA_MODULES_PATH 設(shè)為 opencv_contrib 中的 modules 目錄的路徑(比如,/home/arvin/opencv_contrib/modules)

  • 在 BUILD_EXAMPLES 的復(fù)選框里 打勾

  • 在 INSTALL_C_EXAMPLES 的復(fù)選框里 打勾

  • 在 INSTALL_PYTHON_EXAMPLES 的復(fù)選框里 打勾

  • 在 WITH_FFMPEG 的復(fù)選框里 打勾

  • 在 WITH_GTK 的復(fù)選框里 打勾

  • 在 WITH_V4L 的復(fù)選框里 打勾

  • 在 WITH_TIFF 的復(fù)選框里 打勾

  • 在 WITH_PNG 的復(fù)選框里 打勾

  • 在 WITH_JPEG 的復(fù)選框里 打勾

  • 在 WITH_JASPER 的復(fù)選框里 打勾

  • 取消 WITH_CUDA 的復(fù)選框里的勾

  • 取消 WITH_CUFFT 的復(fù)選框里的勾

然后點(diǎn)擊Configure,應(yīng)用剛才的修改并且將修改內(nèi)容更新至 build 目錄下的 CMakeCache.txt 中。然后點(diǎn)擊 Generate,更新 Makefile。

安裝OpenCV3 及 OpenCV3 的額外包

cd opencv/build/
make -j8
sudo make install
 sudo ldconfig

測試環(huán)境是否配置成功

# 在命令行打開你的python 解釋器,輸入以下命令
import cv2 
print cv2.__version__
# 若看到類似以下輸出,則表示配置成功
'3.3.0-dev'

以上是“Ubuntu17.04系統(tǒng)中如何源碼編譯安裝opencv”這篇文章的所有內(nèi)容,感謝各位的閱讀!希望分享的內(nèi)容對大家有幫助,更多相關(guān)知識,歡迎關(guān)注億速云行業(yè)資訊頻道!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI