日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 运维知识 > linux >内容正文

linux

Linux16.04配置OpenCV3.2

發(fā)布時間:2023/12/15 linux 35 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Linux16.04配置OpenCV3.2 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

OpenCV– 一個完全開源的圖像處理庫,通常用于圖像處理,包涵了“模糊” “特征提取” “邊緣檢測” “目標(biāo)跟蹤”等多個CV領(lǐng)域的基礎(chǔ)問題。它是基于C++語言來實(shí)現(xiàn)的,具有C++、C、Python和Java的接口,并且支持Windows, Linux, Mac, OS, iOS和Android。即具有很好的平臺兼容性。OpenCV專為計算效率而設(shè)計,并強(qiáng)調(diào)實(shí)時應(yīng)用。 以優(yōu)化的C / C ++編寫,該庫可以利用多核處理。 通過啟用OpenCL,可以對底層硬件進(jìn)行加速。

使用OpenCV的用戶已經(jīng)超過4.7萬人,下載量超過1400萬。 用途從互動藝術(shù),到礦山檢查,網(wǎng)上縫合地圖或通過先進(jìn)的機(jī)器人。

配置OpenCV的目的?
1. 你的C++代碼里面需要進(jìn)行一定的圖像或者視頻操作;
2. 別人的代碼里面調(diào)用到了OpenCV內(nèi)部的一些函數(shù)。你需要運(yùn)行別人的代碼,來觀察最后的結(jié)果;
3. 你的”數(shù)據(jù)挖掘” “機(jī)器學(xué)習(xí)” “深度學(xué)習(xí)”等應(yīng)用中需要調(diào)用Opencv中的函數(shù),來加速你的開發(fā)進(jìn)程;
總之,如果你本人的研究領(lǐng)域是CV領(lǐng)域,那么你可能就需要使用到OpenCV。

下面開始我們的配置過程吧。
1.首先,你需要去OpenCV的官網(wǎng)中下載最新版本的OpenCV安裝包。下載鏈接
2.你需要將下載到的壓縮包解壓到特定的文件夾下面。
tar -zxvf xxx.tar

3. 接下來,你需要安裝一些依賴包,這是個漫長的過程,需要你耐心的去等待。 1) sudo apt-get 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 x264 v4l-utils unzip 2) sudo apt-get install build-essential cmake git 3) sudo apt-get install ffmpeg libopencv-dev libgtk-3-dev python-numpy python3-numpy libdc1394-22 libdc1394-22-dev libjpeg-dev libpng12-dev libtiff5-dev libjasper-dev libavcodec-dev libavformat-dev libswscale-dev libxine2-dev libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev libv4l-dev libtbb-dev qtbase5-dev libfaac-dev libmp3lame-dev libopencore-amrnb-dev libopencore-amrwb-dev libtheora-dev libvorbis-dev libxvidcore-dev x264 v4l-utils unzip

這個過程很麻煩,可能與你的網(wǎng)速息息相關(guān),因此建議你選擇一個高速的網(wǎng)絡(luò)。在這里給大家介紹一個Linux中的小技巧。即選擇一個高速的安裝源。具體的方法如下所示:
方案一:
1)在Linux的界面下點(diǎn)擊左下角的“system setting”,如下圖所示。

2)選擇“Software&Update”,如下圖所示:

3)選擇“DownLoad from”,如下圖所示:

4)點(diǎn)擊最下方的“others”;
5)在“china”中選擇“mirrors.tuna.tsinghua.edu.cn”;
6)點(diǎn)擊右下方的“Choose Server”;
7)輸入你的密鑰;
8)選擇“close”
9)選擇“Reload”
到此就結(jié)束了,最后一步可能會花費(fèi)一定的時間,希望你能耐心等待。我們選擇的源是“清華的”,經(jīng)過測試驗(yàn)證在國內(nèi)這個源比較快,你可以可以嘗試使用其他的下載源,方法如上所述。

方案二: 你可以將所有的依賴項(xiàng)添加到一個.sh文件中,只需要執(zhí)行一個shell文件就可以安裝所有的安裝包,這也是一個不錯的選擇。 4. cd xxx/opencv #切換到Opencv下(路徑就是你解壓的路徑,去官網(wǎng)下載最新版的opencv并進(jìn)行解壓) 注:你可以使用 whereis opencv來查找你的opencv路徑,默認(rèn)路徑為/usr/local中。 5. mkdir build #新建一個build文件夾,編譯的工程都在這個文件夾里 6. cd build/ 7. cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local -D WITH_TBB=ON -D WITH_V4L=ON -D WITH_QT=ON -D INSTALL_C_EXAMPLES=ON -D INSTALL_PYTHON_EXAMPLES=ON -D WITH_OPENGL=ON .. # 利用cmake來編譯整個工程,這一步在編譯源碼中經(jīng)常會看到。 注: 1)CMAKE_INSTALL_PREFIX用來指定安裝的位置。INSTALL_C_EXAMPLES用來安裝官方的opencv(C樣例)。INSTALL_PYTHON_EXAMPLES安裝python樣例。這些樣例可以用于后面的測試。 2)這個階段需要花費(fèi)一定的時間。 3)如果cmake成功,會出現(xiàn)下面的輸出結(jié)果。 -- Generating done -- Build files have been written to: /home/ise/software/opencv-3.2.0/build

8. sudo make -j8 # make編譯 注: 1)其中-j表示本機(jī)的內(nèi)核數(shù),可以加快執(zhí)行,如果你CPU是四核的,你需要使用 -j4 2)這個過程會花費(fèi)相當(dāng)長的一段時間,你需要耐心的等待,建議你去干別的事情,因?yàn)樗枰ㄙM(fèi)半小時左右。 9. sudo make install # make安裝 10. sudo /bin/bash -c 'echo "/usr/local/lib" > /etc/ld.so.conf.d/opencv.conf' # 進(jìn)行一些配置 11. sudo ldconfig # 使配置生效 12. sudo gedit /etc/bash.bashrc 13. 在文件的末尾添加PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/lib/pkgconfig export PKG_CONFIG_PATH 14. sudo source /etc/bash.bashrc # 使配置生效

15. 重啟系統(tǒng)后cd到build文件夾下 16. sudo apt-get install checkinstall # 安裝checkinstall工具,用來管理安裝的文件,便于卸載 17. sudo checkinstall # 執(zhí)行checkinstall 18. 按照提示就行操作即可。注: 1)使用checkinstall的目的是為了更好的管理我安裝的opencv,因?yàn)閛pencv的安裝很麻煩,卸載更麻煩,其安裝的時候修改了一大堆的文件,當(dāng)我想使用別的版本的opencv時,將當(dāng)前版本的opencv卸載就是一件頭疼的事情,因此需要使用checkinstall來管理我的安裝。 執(zhí)行了checkinstall后,會在build文件下生成一個以backup開頭的.tgz的備份文件和一個以build開頭的.deb安裝文件,當(dāng)你想卸載當(dāng)前的opencv時,直接執(zhí)行dpkg -r build即可。 2)這幾步可以不執(zhí)行,它只是為了更好的管理opencv,方便卸載。 19. 驗(yàn)證opencv是否正確安裝,這一步非常關(guān)鍵,有很多人會直接忽視掉這個過程,直接跑別人的代碼,代碼一直報錯,卻找不到問題,最后發(fā)現(xiàn)是自己的opencv沒有配置好,這就有些尷尬啦。 方案一:測試自己寫的一個小案例 -- 利用opencv來讀取lena圖片 #include <iostream> #include <opencv2/opencv.hpp> using namespace std; using namespace cv;int main() {Mat srcImage = imread("lena.jpg");imshow("srcIMage",srcImage);waitKey(0);return 0; }1)執(zhí)行g(shù)++ `pkg-config opencv --cflags` opencv.cpp -o opencv `pkg-config opencv --libs` 2)./opencv # 運(yùn)行結(jié)果注:你需要保證lena.jpg位于當(dāng)前目錄下。 輸出的結(jié)果如下所示:

方案二:測試opencv自帶的樣例 1)cd ~/opencv/samples/c # 切換到opencv的樣例文件夾 2)chmod +x build_all.sh # 改變文件的權(quán)限 3)./build_all.sh # 編譯所有的示例代碼 4)運(yùn)行人臉檢測代碼 ./facedetect --cascade="/usr/local/share/OpenCV/haarcascades/haarcascade_frontalface_alt.xml" --scale=1.5 lena.jpg 結(jié)果如下所示:

./facedetect --cascade="/usr/local/share/OpenCV/haarcascades/haarcascade_frontalface_alt.xml" --nested-cascade="/usr/local/share/OpenCV/haarcascades/haarcascade_eye.xml" --scale=1.5 lena.jpg 運(yùn)行結(jié)果如下所示:

~/opencv-2.4.9/build/bin/cpp-example-grabcut ~/opencv-2.4.9/samples/cpp/lena.jpg 運(yùn)行結(jié)果如下所示:

注:
1)這里面有很多有趣的樣例,你可以進(jìn)行測試。它們可能需要配置一些參數(shù),你可以查看“readme.txt”文件來了解詳情。
2)lena.jpg原始圖像如下所示:

3)建議你安裝最新版本的opencv庫,因?yàn)樾掳姹緯倪M(jìn)一些Bug的同時增加一些新的函數(shù)和功能。由于opencv的版本更新速率很快,這個博客很快就是過時,但是不同版本的安裝流程基本相同,你仍然可以使用這個教程進(jìn)行安裝。
4)在編譯cmake和make的過程中,可能會出現(xiàn)一些錯誤,如果你解決了相關(guān)問題,希望你能夠共享,我將加入這個博客中。
5)如果您對本博客有任何問題,可以給我留言,我會在第一時間進(jìn)行恢復(fù)大家,一起學(xué)習(xí),一起進(jìn)步。
6)由于個人能力有限,難免會有一些問題,還望大家多多包涵。
7)本博客是我自己的原創(chuàng),如果想要轉(zhuǎn)載,需要與我取得聯(lián)系,我會盡快回復(fù)大家。
郵箱:1575262785@qq.com

總結(jié)

以上是生活随笔為你收集整理的Linux16.04配置OpenCV3.2的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。