新聞中心
本文主要針對(duì)ubuntu 17.04版本下,OpenCV進(jìn)行源碼編譯安裝。開發(fā)環(huán)境主要針對(duì)python 對(duì) OpenCV庫的調(diào)用。

- 安裝 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
在這一步時(shí)出現(xiàn)了問題,參考
- 安裝其他依賴
# 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 buildcd 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 -j8sudo make installsudo ldconfig
- 測(cè)試環(huán)境是否配置成功
# 在命令行打開你的python 解釋器,輸入以下命令
import cv2
print cv2.__version__
# 若看到類似以下輸出,則表示配置成功
'3.3.0-dev' 文章標(biāo)題:Ubuntu17.04下OpenCV源碼編譯安裝
網(wǎng)站鏈接:http://www.fisionsoft.com.cn/article/dhjpgjg.html


咨詢
建站咨詢
