Ubuntu16.04安裝OpenCV

1.安裝 opencv 所需依賴包

如果后面還要遺漏的蚕键,出錯再補上

$ sudo apt-get update
$ sudo apt-get upgrade
$ sudo apt-get -y install libopencv-dev build-essential cmake git libgtk2.0-dev pkg-config python-dev python-numpy libdc1394-22 libdc1394-22-dev libjpeg-dev libpng12-dev libtiff5-dev libjasper-dev libavcodec-dev libavformat-dev libswscale-dev libxine2-dev libgstreamer0.10-dev libgstreamer-plugins-base0.10-dev libv4l-dev libtbb-dev libqt4-dev libfaac-dev libmp3lame-dev libopencore-amrnb-dev libopencore-amrwb-dev libtheora-dev libvorbis-dev libxvidcore-dev x264v4l-utils unzip

2.下載 opencv3.2.0

這里需要下載 opencv 和 opencv_contrib (后者會在 cmake 配置的時候用到), 這是因為 opencv3以后 SIFT 和 SURF 之類的屬性被移到了 contrib 中,執(zhí)行下面兩條指令下載 OpenCV3.2.0

$ wget https://github.com/opencv/opencv/archive/3.2.0.zip
$ wget https://github.com/opencv/opencv_contrib/archive/3.2.0.zip

(3.2.0.zip就是opencv-3.2.0.zip)
(3.2.0.zip.1就是opencv_contrib.zip)

3.解壓下載的兩個文件

$ unzip opencv-3.2.0.zip -d ~/opencv
$ unzip opencv_contrib-3.2.0.zip -d ~/opencv

4.創(chuàng)建并進入 build 目錄,執(zhí)行 cmake 生成 makefile 文件

$ cd ~/opencv/opencv-3.2.0
$ mkdir build
$ cd build/
$ sudo cmake -D CMAKE_BUILD_TYPE=Release -D CMAKE_INSTALL_PREFIX=/usr/local -D OPENCV_EXTRA_MODULES_PATH= ..

注意cmake的參數(shù)不要出錯

問題一:

下載包的時候鏈接超時

CMake Error at 3rdparty/ippicv/downloader.cmake:77 (message):
  ICV: Failed to download ICV package: ippicv_linux_20151201.tgz.
  Status=28;"Timeout was reached"

手動下載 ippicv_linux_20151201.tgz(https://raw.githubusercontent.com/Itseez/opencv_3rdparty/81a676001ca8075ada498583e4166079e5744668/ippicv/ippicv_linux_20151201.tgz)到opencv-3.2.0/3rdparty/ippicv/downloads/目錄下再cmake

$ sudo cp ~/software/opencv/ippicv_linux_20151201.tgz ~/opencv/opencv-3.2.0/3rdparty/ippicv/downloads/linux-808b791a6eac9ed78d32a7666804320e/

問題二:

-- No package 'gtk+-3.0' found

$ sudo apt-get install libgtk-3-dev

問題三:

--   No package 'gstreamer-base-1.0' found

--   No package 'gstreamer-video-1.0' found

--   No package 'gstreamer-app-1.0' found

--   No package 'gstreamer-riff-1.0' found

--   No package 'gstreamer-pbutils-1.0' found

sudo apt-get -y install libgstreamer-plugins-base1.0-dev
sudo apt-get -y install libgstreamer1.0-dev

問題四:

--   No package 'libavresample' found

--   No package 'libgphoto2' found

$ sudo apt-get -y install libavresample-dev
$ sudo apt-get -y install libgphoto2-dev

問題五:

-- Could not find OpenBLAS include. Turning OpenBLAS_FOUND off
-- Could not find OpenBLAS lib. Turning OpenBLAS_FOUND off
-- Could NOT find Atlas (missing:  Atlas_CBLAS_INCLUDE_DIR Atlas_CLAPACK_INCLUDE_DIR Atlas_CBLAS_LIBRARY Atlas_BLAS_LIBRARY Atlas_LAPACK_LIBRARY) 
-- Could NOT find Doxygen (missing:  DOXYGEN_EXECUTABLE) 
-- Could NOT find JNI (missing:  JAVA_AWT_LIBRARY JAVA_JVM_LIBRARY JAVA_INCLUDE_PATH JAVA_INCLUDE_PATH2 JAVA_AWT_INCLUDE_PATH) 
-- Could NOT find Matlab (missing:  MATLAB_MEX_SCRIPT MATLAB_INCLUDE_DIRS MATLAB_ROOT_DIR MATLAB_LIBRARIES MATLAB_LIBRARY_DIRS MATLAB_MEXEXT MATLAB_ARCH MATLAB_BIN) 
-- VTK is not found. Please set -DVTK_DIR in CMake to VTK build directory, or to VTK install subdirectory with VTKConfig.cmake file

$ sudo apt-get install libopenblas-dev

問題六:

-- Could NOT find Doxygen (missing:  DOXYGEN_EXECUTABLE) 

$ sudo apt-get install doxygen

問題七:

-- Could NOT find JNI (missing:  JAVA_AWT_LIBRARY JAVA_JVM_LIBRARY JAVA_INCLUDE_PATH JAVA_INCLUDE_PATH2 JAVA_AWT_INCLUDE_PATH) 

a.下載jdk-8u151-linux-x64.tar.gz到download目錄
http://www.oracle.com/technetwork/cn/java/javase/downloads/jdk8-downloads-2133151-zhs.html

b.安裝jdk

$ cd download/
$ sudo mkdir /usr/local/java
$ sudo tar zxvf jdk-8u151-linux-x64.tar.gz -C /usr/local/java
$ sudo ln -s /usr/local/java/jdk1.8.0_151/ /usr/local/java/latest

c. 添加環(huán)境變量:

$ sudo vim /etc/profile

加入如下內(nèi)容:

>export JAVA_HOME=/usr/local/java/latest
export CLASSPATH=.:$JAVA_HOME/jre/lib/rt.jar:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export PATH=$PATH:$JAVA_HOME/bin

執(zhí)行

$ source /etc/profile

進行更新判没。

沒有報錯的情況下硬霍,cmake成功后會出現(xiàn)

-- Configuring done
-- Generating done
-- Build files have been written to: /home/fc/opencv/opencv-
3.2.0/build

5. make

cmake成功,之后可以在 build 文件下執(zhí)行編譯指令,待編譯成功后即可執(zhí)行安裝指令垃它。

$ sudo make -j4

出錯:
/opencv/opencv-3.2.0/build/opencv_lapack.h:2:45: fatal error: LAPACKE_H_PATH-NOTFOUND/lapacke.h: 沒有那個文件或目錄
解決方法:

$ sudo apt-get install liblapacke-dev checkinstall

make時間有點長雅任,差不多兩個小時了笙蒙。

6.install

$ sudo make install

7.安裝 python 接口依賴

$sudo apt-get install python-opencv
sudo apt-get install python-numpy

8.測試 Python 的 OpenCV3.2.0 模塊

$ python
Python 2.7.14 |Anaconda, Inc.| (default, Oct 16 2017, 17:29:19) 
[GCC 7.2.0] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import cv2
Traceback (most recent call last):
 File "<stdin>", line 1, in <module>
ImportError: No module named cv2
>>> 

問題:No module named cv2
原因在于 python2.7 找不到 cv2.so 文件

$ sudo cp ~/opencv/opencv-3.2.0/build/lib/cv2.so ~/anaconda2/lib/python2.7/site-packages/

再測試:

$ python
Python 2.7.14 |Anaconda, Inc.| (default, Oct 16 2017, 17:29:19) 
[GCC 7.2.0] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import cv2
>>> cv2.__version__
'3.2.0'
>>> 

能顯示opencv的版本說明安裝成功

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子丐重,更是在濱河造成了極大的恐慌腔召,老刑警劉巖,帶你破解...
    沈念sama閱讀 219,188評論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件弥臼,死亡現(xiàn)場離奇詭異宴咧,居然都是意外死亡根灯,警方通過查閱死者的電腦和手機径缅,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,464評論 3 395
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來烙肺,“玉大人纳猪,你說我怎么就攤上這事√殷希” “怎么了氏堤?”我有些...
    開封第一講書人閱讀 165,562評論 0 356
  • 文/不壞的土叔 我叫張陵,是天一觀的道長搏明。 經(jīng)常有香客問我鼠锈,道長,這世上最難降的妖魔是什么星著? 我笑而不...
    開封第一講書人閱讀 58,893評論 1 295
  • 正文 為了忘掉前任购笆,我火速辦了婚禮,結(jié)果婚禮上虚循,老公的妹妹穿的比我還像新娘同欠。我一直安慰自己,他們只是感情好横缔,可當我...
    茶點故事閱讀 67,917評論 6 392
  • 文/花漫 我一把揭開白布铺遂。 她就那樣靜靜地躺著,像睡著了一般茎刚。 火紅的嫁衣襯著肌膚如雪襟锐。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,708評論 1 305
  • 那天膛锭,我揣著相機與錄音粮坞,去河邊找鬼。 笑死泉沾,一個胖子當著我的面吹牛捞蚂,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播跷究,決...
    沈念sama閱讀 40,430評論 3 420
  • 文/蒼蘭香墨 我猛地睜開眼姓迅,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起丁存,我...
    開封第一講書人閱讀 39,342評論 0 276
  • 序言:老撾萬榮一對情侶失蹤肩杈,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后解寝,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體扩然,經(jīng)...
    沈念sama閱讀 45,801評論 1 317
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,976評論 3 337
  • 正文 我和宋清朗相戀三年聋伦,在試婚紗的時候發(fā)現(xiàn)自己被綠了夫偶。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 40,115評論 1 351
  • 序言:一個原本活蹦亂跳的男人離奇死亡觉增,死狀恐怖兵拢,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情逾礁,我是刑警寧澤说铃,帶...
    沈念sama閱讀 35,804評論 5 346
  • 正文 年R本政府宣布,位于F島的核電站嘹履,受9級特大地震影響腻扇,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜砾嫉,卻給世界環(huán)境...
    茶點故事閱讀 41,458評論 3 331
  • 文/蒙蒙 一幼苛、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧焰枢,春花似錦蚓峦、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,008評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至荐绝,卻和暖如春一汽,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背低滩。 一陣腳步聲響...
    開封第一講書人閱讀 33,135評論 1 272
  • 我被黑心中介騙來泰國打工召夹, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人恕沫。 一個月前我還...
    沈念sama閱讀 48,365評論 3 373
  • 正文 我出身青樓监憎,卻偏偏與公主長得像,于是被迫代替她去往敵國和親婶溯。 傳聞我的和親對象是個殘疾皇子鲸阔,可洞房花燭夜當晚...
    茶點故事閱讀 45,055評論 2 355

推薦閱讀更多精彩內(nèi)容