Ubuntu下安裝配置opencv3.2.0 以及代碼測試

? 寫在前面

? ? ? 一直以來都想能夠?qū)扅c(diǎn)什么涎显,曾經(jīng)也想過能寫點(diǎn)小說传蹈,散文什么的攀细。到了后面才發(fā)現(xiàn)自己的文筆真的很差勁!作為純工科生腹备,也只能寫點(diǎn)有關(guān)技術(shù)方面的東西了。隨著不斷的學(xué)習(xí)斤蔓,積累的東西也就越來越多植酥,如果不能夠有一個很好的方式去管理它隨著時間的的推移弦牡,會發(fā)現(xiàn)當(dāng)初已經(jīng)學(xué)會了的東西友驮,現(xiàn)在已經(jīng)忘的差不多了,到頭來還得重新的翻資料回顧驾锰。我覺得現(xiàn)在的我需要去管理我的知識卸留,同時還可以提高我自己的能力,養(yǎng)成一個好的習(xí)慣椭豫!so 這些就是我開始寫簡書的最簡單的想法耻瑟,記錄我的學(xué)習(xí)——因?yàn)樗麄兪俏彝ㄟ^實(shí)踐獲得的旨指。本文也是作為我寫文章的開始吧。

? ? 最近一直在接觸計(jì)算機(jī)視覺匆赃、機(jī)器視覺方面的知識淤毛,還跟著大佬學(xué)了一些slam方面的東西。(別擔(dān)心算柳,我還是小白中的小白低淡。。瞬项。蔗蹋。從入門到放棄。囱淋。猪杭。),也僅僅是了解皮毛妥衣,需要的學(xué)的東西實(shí)在太多皂吮。可是就這樣税手,愈來愈發(fā)現(xiàn)自己對這方面還是很感興趣的蜂筹,苦于沒有導(dǎo)師帶,沒有真正的項(xiàng)目經(jīng)歷芦倒,平常也只能通過一些校外的培訓(xùn)課和論壇艺挪、網(wǎng)站、Github等學(xué)習(xí)兵扬。只能說理想很美好麻裳,現(xiàn)實(shí)很殘酷!大牛一抓一大把器钟。只能比別人花更多的時間去了解學(xué)習(xí)津坑,一步一步的走。俱箱。国瓮。經(jīng)常會掉進(jìn)大坑,幾天爬不出來狞谱。但我相信乃摹,堅(jiān)持比選擇更重要!鑒于本人才疏學(xué)淺跟衅,文章中還會出現(xiàn)各種不對的地方孵睬,還肯定大家對多指正!好了話不多說進(jìn)入主題伶跷!

計(jì)算機(jī)視覺學(xué)習(xí)——Opencv配置方式

? ? Opencv在windows 系統(tǒng)下面的 VS中配置經(jīng)常會比較繁瑣掰读,每次需要做project的時候就需要再重新配置一次秘狞,當(dāng)然現(xiàn)在有一勞永逸的配置方法。更讓我感覺受不了的就是蹈集,經(jīng)常會各種報錯烁试,而且這種報錯通常會比較模糊,有時候會讓你氣到爆炸拢肆!直接摔電腦减响。當(dāng)然,windows下面還可以運(yùn)用Cmake+MinGW+opencv+IDE的方式進(jìn)行配置? 郭怪,這樣的配置在新建項(xiàng)目的時候就可以不用重復(fù)配置了支示。各有各自的優(yōu)點(diǎn)吧。只能說Cmake也不是省油的燈鄙才。由于接觸的slam代碼一直在linux下面跑颂鸿,最近幾個月跟ubuntu還是經(jīng)常打交道的,這里就不想再吐槽我那可憐的筆記本了攒庵。嘴纺。。試著把VS下的opencv 代碼移到ubuntu中浓冒。然后我在ubuntu中使用的IDE是Clion 和 kdevelop 兩者都支持cmake,這個真的是一件很爽的事情颖医。本次的配置是在ubuntu最基本的opencv 配置(不安裝CUDA),也是我自己的第一次嘗試裆蒸,并做了代碼測試。

安裝環(huán)境以及依賴項(xiàng)

? ? 系統(tǒng): vmware 12.0? +? ubuntu16.04? ? ? ? ? opencv3.2.0

下載opencv可以在官網(wǎng)直接下載:https://www.opencv.org/

選擇? sources

在這里選擇sources 解壓即可(unzip 命令)

編譯環(huán)境和安裝關(guān)聯(lián)庫

搭建C/C++編譯環(huán)境:

sudo apt-get install build-essential

安裝關(guān)聯(lián)庫:

sudo apt-get install cmake git libgtk2.0-dev pkg-config libavcodec-dev libavformat-dev libswscale-dev s

sudo apt-get install python-dev python-numpy libtbb2 libtbb-dev libjpeg-dev libpng-dev libtiff-dev libjasper-dev libdc1394-22-dev

二 編譯 opencv

將opencv 解壓到一個目錄下 進(jìn)入該目錄下執(zhí)行如下命令編譯:

? ? 我習(xí)慣在里面的文件夾立再新建一個文件夾糖驴,然后進(jìn)行編譯僚祷,cmake之后的一大堆東西真的惡心!

mkdir build

cd build

cmake -D CMAKE_BUILD_TYPE=Release-DCMAKE_INSTALL_PREFIX=/usr/local ..

? ? 在這里會出現(xiàn)一些問題贮缕,會出現(xiàn)缺少ippicv_linux_20151201.tgz的一個包辙谜,這個包在Github上面就可以找到,下載下來手動替換掉即可感昼。之后還需要重新編譯之前加-D WITH_IPP=OFF

cmake -D WITH_IPP=OFF -D CMAKE_BUILD_TYPE=ReleaseDCMAKE_INSTALL_PREFIX=/usr/local ..

make

sudo cmake install

? ? 安裝完cmake之后這里注意:如果已經(jīng)在新的文件夾中編譯装哆,但是還會出現(xiàn)之前的報錯,把cmakecache.txt刪了再編譯就可期間可能會下載一個東西定嗓,等待一會兒就OK

? ? sudo make install 執(zhí)行完畢后OpenCV編譯過程就結(jié)束了蜕琴,接下來就需要配置一些OpenCV的編譯環(huán)境首先將OpenCV的庫添加到路徑,從而可以讓系統(tǒng)找到

? ? sudo gedit /etc/ld.so.conf.d/opencv.conf

執(zhí)行此命令后打開的可能是一個空白的文件宵溅,不用管凌简,只需要在文件末尾添加

/usr/local/lib

執(zhí)行如下命令使得剛才的配置路徑生效

sudo ldconfig

11.配置bash

sudogedit /etc/bash.bashrc

在最末尾添加

PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/lib/pkgconfigexportPKG_CONFIG_PATH

保存,執(zhí)行如下命令使得配置生效

source/etc/bash.bashrc

更新 sudo updatedb

安裝完成測試代碼

? ? 到這里所有的配置都已經(jīng)完成下面用一個小程序測試一下找到 cd到opencv-3.2.0/smaples/cpp/example_cmake目錄下我們可以看到這個目錄里官方已經(jīng)給出了一個cmake的example我們可以拿來測試下按順序執(zhí)行

mkdir build

cd build

cmake ..

make

./opencv_example

即可看到打開了攝像頭恃逻,在左上角有一個hello opencv

? ? ? ? 即表示配置成功,我的筆記本這里在虛擬機(jī)下面攝像頭驅(qū)動壞了雏搂,所以沒法打開藕施。這樣我們就完成了ubantu 16.04安裝opencv3.2.0。

新建程序+CMakeLists.txt進(jìn)行編譯測試

? ? ? 這里我們要自己寫一個程序.cpp文件 以及CMakeLists.txt文件進(jìn)行編譯凸郑,完成圖片的讀取

首先在文件夾opencvtest新建DisplayImage文件裳食,并新建DdisplayImage.cpp和cmake文件

mkdir DisplayImage

cd? DisplayImage

vim DdisplayImage.cpp? 代碼如下:

? 保存并退出

vim CMakeLists.txt? 寫入一下代碼:

? ? 完成并保存退出,之后和之前一樣 新建build 文件夾進(jìn)行cmake..? ? make

? ? 這里 還需要將需要顯示的圖像 放到build 文件夾內(nèi)芙沥。完成之后文件內(nèi)出現(xiàn)DisplayImage的可執(zhí)行文件诲祸,因此在terminal 下輸入 ./DisplayImage? lena.jpg? ?

? ? ok 顯示完成 在這里要理解argc? 和 argv !?

總結(jié)

? ? ? 跑了samples? 以及自己寫代碼編譯 完成了opencv3.2.0的安裝,接下來就可以愉快的進(jìn)行opencv開發(fā)和使用了憨愉。隨時隨地就可以用烦绳,不需要重復(fù)配置。此外還可以安裝CUDA 和載入Python.這個等以后再說配紫,先自己摸索摸索径密。有些坑總歸要自己爬一邊的。這個過程當(dāng)中躺孝,還會出現(xiàn)不少的問題享扔,當(dāng)然Google SO? 百度都是很好的工具≈才郏總歸這樣用終端每次自己寫程序再用cmake構(gòu)建惧眠,時間久了,也還會讓人覺得這是一件很不爽的事情于个。那么就需要在IDE下面進(jìn)行配置氛魁,下一篇文章把和CLion配置的方式做一個記錄。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末厅篓,一起剝皮案震驚了整個濱河市秀存,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌羽氮,老刑警劉巖或链,帶你破解...
    沈念sama閱讀 212,816評論 6 492
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異档押,居然都是意外死亡澳盐,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,729評論 3 385
  • 文/潘曉璐 我一進(jìn)店門令宿,熙熙樓的掌柜王于貴愁眉苦臉地迎上來叼耙,“玉大人,你說我怎么就攤上這事掀淘⊙” “怎么了?”我有些...
    開封第一講書人閱讀 158,300評論 0 348
  • 文/不壞的土叔 我叫張陵革娄,是天一觀的道長倾贰。 經(jīng)常有香客問我冕碟,道長,這世上最難降的妖魔是什么匆浙? 我笑而不...
    開封第一講書人閱讀 56,780評論 1 285
  • 正文 為了忘掉前任安寺,我火速辦了婚禮,結(jié)果婚禮上首尼,老公的妹妹穿的比我還像新娘挑庶。我一直安慰自己,他們只是感情好软能,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,890評論 6 385
  • 文/花漫 我一把揭開白布迎捺。 她就那樣靜靜地躺著,像睡著了一般查排。 火紅的嫁衣襯著肌膚如雪凳枝。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 50,084評論 1 291
  • 那天跋核,我揣著相機(jī)與錄音岖瑰,去河邊找鬼。 笑死砂代,一個胖子當(dāng)著我的面吹牛蹋订,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播刻伊,決...
    沈念sama閱讀 39,151評論 3 410
  • 文/蒼蘭香墨 我猛地睜開眼露戒,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了捶箱?” 一聲冷哼從身側(cè)響起玫锋,我...
    開封第一講書人閱讀 37,912評論 0 268
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎讼呢,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體谦炬,經(jīng)...
    沈念sama閱讀 44,355評論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡悦屏,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,666評論 2 327
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了键思。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片础爬。...
    茶點(diǎn)故事閱讀 38,809評論 1 341
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖吼鳞,靈堂內(nèi)的尸體忽然破棺而出看蚜,到底是詐尸還是另有隱情,我是刑警寧澤赔桌,帶...
    沈念sama閱讀 34,504評論 4 334
  • 正文 年R本政府宣布供炎,位于F島的核電站渴逻,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏音诫。R本人自食惡果不足惜惨奕,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 40,150評論 3 317
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望竭钝。 院中可真熱鬧梨撞,春花似錦、人聲如沸香罐。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,882評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽庇茫。三九已至港粱,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間港令,已是汗流浹背啥容。 一陣腳步聲響...
    開封第一講書人閱讀 32,121評論 1 267
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留顷霹,地道東北人咪惠。 一個月前我還...
    沈念sama閱讀 46,628評論 2 362
  • 正文 我出身青樓,卻偏偏與公主長得像淋淀,于是被迫代替她去往敵國和親遥昧。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,724評論 2 351

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