Ubuntu16.04 編譯OpenCV3.4.1 CUDA8.0

1趴梢、下載OpenCV3.4.1

OpenCV3.4.1包括穩(wěn)定功能模塊版本opencv3.4.1和未穩(wěn)定功能模塊版本opencv_contrib3.4.1肮街,在opencv3.4.1中沉眶,主要增強了dnn模塊挑豌,特別是添加了對Faster R-CNN的支持闽瓢,但有些算法還沒有加進來金度,比如DPM,KCF等珊泳,因此本次編譯加上了opencv_contrib3.4.1鲁冯。可以自行去OpenCV github上打包下載opencv3.4.1和opencv_contrib3.4.1色查,也可以通過如下命令下載壓縮包薯演,解壓后將兩個文件夾放在同一目錄下:

wget https://github.com/opencv/opencv/archive/3.4.1.zip 
wget https://github.com/opencv/opencv_contrib/archive/3.4.1.zip

2、安裝依賴

官方給出的依賴包如下:

  • GCC 4.4.x or later
  • CMake 2.6 or higher
  • Git
  • GTK+2.x or higher, including headers (libgtk2.0-dev) # 控制opencv GUI
  • pkg-config
  • Python 2.6 or later and Numpy 1.5 or later with developer packages (python-dev, python-numpy)
  • ffmpeg or libav development packages: libavcodec-dev, libavformat-dev, libswscale-dev
  • [optional] libtbb2 libtbb-dev
  • [optional] libdc1394 2.x
  • [optional] libjpeg-dev, libpng-dev, libtiff-dev, libjasper-dev, libdc1394-22-dev
sudo apt-get install build-essential cmake git libgtk2.0-dev pkg-config
sudo apt-get install libavcodec-dev libavformat-dev libswscale-dev
sudo apt-get install python-dev python-numpy libtbb2 libtbb-dev libjpeg-dev libpng-dev libtiff-dev libjasper-dev libdc1394-22-dev # 處理圖像所需的包
sudo apt-get install libavcodec-dev libavformat-dev libswscale-dev libv4l-dev liblapacke-dev
sudo apt-get install libxvidcore-dev libx264-dev # 處理視頻所需的包
sudo apt-get install libatlas-base-dev gfortran # 優(yōu)化opencv功能
sudo apt-get install ffmpeg

3秧了、配置編譯opencv

cd opencv-3.4.1
mkdir build
cd build
cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local/opencv3.4.1 -D OPENCV_EXTRA_MODULES_PATH=../../opencv_contrib-3.4.1/modules -D WITH_CUDA=ON -D WITH_CUBLAS=1 -D CUDA_ARCH_BIN="6.1" -D CUDA_ARCH_PTX="6.1" -D INSTALL_C_EXAMPLES=OFF -D INSTALL_PYTHON_EXAMPLES=ON -D WITH_OPENGL=ON -D WITH_V4L=ON WITH_NVCUVID=ON ..

make
sudo make install
sudo sh -c 'echo "/usr/local/opencv3.4.1/lib" >> /etc/ld.so.conf.d/opencv.conf'
sudo ldconfig

注意
1.CMAKE_INSTALL_PREFIX默認目錄為/usr/local跨扮,可自行選擇,只需要在更新環(huán)境變量的時候?qū)木托小?br> 2.CUDA_ARCH_BIN和CUDA_ARCH_PTX這里是指的顯卡計算能力,GeForce GTX 1080 Ti的計算能力為6.1衡创,其他型號可以自行上NVIDIA官網(wǎng)查詢對應版本:
https://developer.nvidia.com/cuda-gpus
3.cmake的時候帝嗡,有些contrib模塊編譯時需要的文件可能下載不下來,具體信息可以到build目錄下CMakeDownloadLog.txt查看璃氢,去對應網(wǎng)址下載好文件放到opencv-3.4.1/.cache目錄下(注意這是個隱藏文件)的對應文件夾里哟玷,并重命名(加上前面的一串字符,注意要一一對應)拔莱,再重新cmake碗降。這里我將自己下載的缺少的文件(data,ippicv塘秦,tiny_dnn讼渊,dnn_face_detector,xfeatures2d已經(jīng)重命名好)放到網(wǎng)盤上:
https://pan.baidu.com/s/1MSZIrVzl38Xj6rRRzfA0Kg

4尊剔、編譯時遇到的一些錯誤提示

1.opencv_cudawarping和libopencv_cudafilter.so

[ 54%] Linking CXX shared library ../../lib/libopencv_cudawarping.so
[ 54%] Built target opencv_cudawarping
Makefile:160: recipe for target 'all' failed
make: *** [all] Error 2

## libopencv_cudafilter.so
[ 54%] Linking CXX shared library ../../lib/libopencv_cudafilters.so
[ 54%] Built target opencv_cudafilters
Makefile:160: recipe for target 'all' failed
make: *** [all] Error 2

這里是我在用到make -j16或make -j8時碰到的爪幻,最后編譯成功那次我只用了make
參考鏈接:https://devtalk.nvidia.com/default/topic/1016293/jetson-tx1/error-while-compiling-opencv-on-jetson-tx1/

2.undefined reference to 'inflateValidate@ZLIB_1.2.9'

//home/mmap/anaconda3/lib/libpng16.so.16:undefined reference to'inflateValidate@ZLIB_1.2.9'
collect2: error: ld returned 1 exit status

每次將make -j8 改成make的時候就提示這個錯誤,不知道為什么一開始不提示须误,(可能上面的錯誤主要原因也是這個挨稿,可以試試解決這個問題后用make -j4 或 make -j8)這里是cmake的時候zlib和libpng索引到anaconda下面的庫文件了,而anaconda下的這兩個庫文件版本不知道是太新了還是有沖突京痢,最后直接conda卸載這兩個庫文件奶甘,讓cmake的時候索引到系統(tǒng)默認版本(/usr/local/lib目錄下)

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市祭椰,隨后出現(xiàn)的幾起案子臭家,更是在濱河造成了極大的恐慌,老刑警劉巖方淤,帶你破解...
    沈念sama閱讀 221,820評論 6 515
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件钉赁,死亡現(xiàn)場離奇詭異,居然都是意外死亡携茂,警方通過查閱死者的電腦和手機你踩,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,648評論 3 399
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來讳苦,“玉大人带膜,你說我怎么就攤上這事∫降酰” “怎么了钱慢?”我有些...
    開封第一講書人閱讀 168,324評論 0 360
  • 文/不壞的土叔 我叫張陵,是天一觀的道長卿堂。 經(jīng)常有香客問我,道長,這世上最難降的妖魔是什么草描? 我笑而不...
    開封第一講書人閱讀 59,714評論 1 297
  • 正文 為了忘掉前任览绿,我火速辦了婚禮,結(jié)果婚禮上穗慕,老公的妹妹穿的比我還像新娘饿敲。我一直安慰自己,他們只是感情好逛绵,可當我...
    茶點故事閱讀 68,724評論 6 397
  • 文/花漫 我一把揭開白布怀各。 她就那樣靜靜地躺著,像睡著了一般术浪。 火紅的嫁衣襯著肌膚如雪瓢对。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 52,328評論 1 310
  • 那天胰苏,我揣著相機與錄音硕蛹,去河邊找鬼。 笑死硕并,一個胖子當著我的面吹牛法焰,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播倔毙,決...
    沈念sama閱讀 40,897評論 3 421
  • 文/蒼蘭香墨 我猛地睜開眼埃仪,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了陕赃?” 一聲冷哼從身側(cè)響起卵蛉,我...
    開封第一講書人閱讀 39,804評論 0 276
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎凯正,沒想到半個月后毙玻,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 46,345評論 1 318
  • 正文 獨居荒郊野嶺守林人離奇死亡廊散,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 38,431評論 3 340
  • 正文 我和宋清朗相戀三年桑滩,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片允睹。...
    茶點故事閱讀 40,561評論 1 352
  • 序言:一個原本活蹦亂跳的男人離奇死亡运准,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出缭受,到底是詐尸還是另有隱情胁澳,我是刑警寧澤,帶...
    沈念sama閱讀 36,238評論 5 350
  • 正文 年R本政府宣布米者,位于F島的核電站韭畸,受9級特大地震影響宇智,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜胰丁,卻給世界環(huán)境...
    茶點故事閱讀 41,928評論 3 334
  • 文/蒙蒙 一随橘、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧锦庸,春花似錦机蔗、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,417評論 0 24
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至扬卷,卻和暖如春牙言,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背邀泉。 一陣腳步聲響...
    開封第一講書人閱讀 33,528評論 1 272
  • 我被黑心中介騙來泰國打工嬉挡, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人汇恤。 一個月前我還...
    沈念sama閱讀 48,983評論 3 376
  • 正文 我出身青樓庞钢,卻偏偏與公主長得像,于是被迫代替她去往敵國和親因谎。 傳聞我的和親對象是個殘疾皇子基括,可洞房花燭夜當晚...
    茶點故事閱讀 45,573評論 2 359

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