Ubuntu 17.04系統(tǒng)下源碼編譯安裝opencv的步驟詳解
前言
本文主要針對(duì)Ubuntu 17.04版本下,opencv進(jìn)行源碼編譯安裝。開發(fā)環(huán)境主要針對(duì)python 對(duì) openCV庫的調(diào)用。下面話不多說了,來一起看看詳細(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 對(duì)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個(gè)核心 # 切換至 build 目錄中,執(zhí)行下面命令,編譯源碼并鏈接生成相應(yīng)的動(dòng)態(tài)庫以及可執(zhí)行文件 make -j8 # 執(zhí)行完成后,再執(zhí)行以下命令,將生成的可執(zhí)行文件以及動(dòng)態(tài)庫安裝到指定的安裝目錄中。 sudo make install sudo sh -c 'echo "/usr/local/lib" >> /etc/ld.so.conf.d/opencv.conf' sudo ldconfig
用圖形化工具配置生成 makefile
切換至 opencv 目錄,然后新建一個(gè)目錄,用于存放 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é)束后,將會(huì)出現(xiàn)類似以下配置界面
以下是需要修改的部分
- 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
測(cè)試環(huán)境是否配置成功
# 在命令行打開你的python 解釋器,輸入以下命令 import cv2 print cv2.__version__ # 若看到類似以下輸出,則表示配置成功 '3.3.0-dev'
總結(jié)
以上就是這篇文章的全部?jī)?nèi)容了,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)或者工作能帶來一定的幫助,如果有疑問大家可以留言交流,謝謝大家對(duì)腳本之家的支持。
相關(guān)文章
在linux中設(shè)置tomcat開機(jī)自啟動(dòng)的方法
由于各種各樣的原因,服務(wù)器有重啟的可能,這樣tomcat就需要配置成開機(jī)自動(dòng)啟動(dòng),否則每次重啟后就需要連遠(yuǎn)程手動(dòng)啟動(dòng)tomcat,如果服務(wù)器被迫重啟,而技術(shù)人員又不能及時(shí)運(yùn)行tomcat,那么后果很嚴(yán)重,所以本文給大家介紹了在linux中設(shè)置tomcat開機(jī)自啟動(dòng)的方法2024-02-02在麒麟V10服務(wù)器上編譯安裝Storm的詳細(xì)過程
這篇文章主要介紹了在麒麟V10服務(wù)器上編譯安裝Storm的方法,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2021-01-01利用rsync自動(dòng)備份 完全配置方法 增加了ip限制
利用rsync自動(dòng)備份 完全配置,一些細(xì)節(jié)也做到了,對(duì)于比較熟悉rsync的朋友應(yīng)用,限制了ip相對(duì)來說安全增加了。2009-09-09Centos 通過 Nginx 和 vsftpd 構(gòu)建圖片服務(wù)器的教程(圖文)
本篇文章主要介紹了Centos 通過 Nginx 和 vsftpd 構(gòu)建圖片服務(wù)器的教程(圖文),具有一定的參考價(jià)值,有興趣的可以了解一下2017-08-08CentOS7.4下MySQL5.7.28二進(jìn)制方式安裝的方法步驟
這篇文章主要介紹了CentOS7.4下MySQL5.7.28二進(jìn)制方式安裝的方法步驟,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2019-11-11Linux 安裝二進(jìn)制MySQL 及 破解MySQL密碼的方法
這篇文章主要介紹了Linux 安裝二進(jìn)制MySQL 及 破解MySQL密碼的方法,本文給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2019-09-09