bootstrap文件不能被识别_树莓派安装openCV做图像识别
有時(shí)候我們會(huì)使用樹(shù)莓派和攝像頭去做圖像識(shí)別,在樹(shù)莓派和LINUX系統(tǒng)中最常用opencv去做圖像識(shí)別,這次來(lái)介紹下樹(shù)莓派安裝opencv和用樹(shù)莓派做圖像識(shí)別。
一、樹(shù)莓派的系統(tǒng)
安裝就不介紹了。直接開(kāi)機(jī)打開(kāi)樹(shù)莓派的命令窗口,安裝openCV的依賴(lài)包,步驟有點(diǎn)多。
1.1 更新系統(tǒng)
$ sudo apt-get update$ sudo apt-get upgrade
1.2 安裝編譯openCV源碼的工具
$ sudo apt-get install build-essential cmake pkg-config
1.3 安裝一些常見(jiàn)格式的圖像處理和視頻處理的包,方便我們能從硬盤(pán)上讀取不同格式的圖像和視頻
$ sudo apt-get install libjpeg-dev libtiff5-dev libjasper-dev libpng12-dev$ sudo apt-get install libavcodec-dev libavformat-dev libswscale-dev libv4l-dev$ sudo apt-get install libxvidcore-dev libx264-dev
1.4 openCV用于圖像展示的功能需要依模塊
$ sudo apt-get install libgtk2.0-dev$ sudo apt-get install libatlas-base-dev gfortran
接下來(lái)還需要安裝python dev
sudo apt-get install python2.7-dev python3-dev
二、下載 并解壓OpenCV 的資源庫(kù)
$ cd ~$?wget?-O?opencv.zip?https://github.com/Itseez/opencv/archive/3.1.0.zip$ unzip opencv.zip$?wget?-O?opencv_contrib.zip?https://github.com/Itseez/opencv_contrib/archive/3...?$ unzip opencv_contrib.zip
三、接下來(lái)準(zhǔn)備python的開(kāi)發(fā)環(huán)境
3.1?安裝python包管理器:
$?wget?https://bootstrap.pypa.io/get-pip.py?$?sudo?python?get-pip.py
3.2 安裝python虛擬環(huán)境
$ sudo pip install virtualenv virtualenvwrapper$ sudo rm -rf ~/.cache/pip
之后在~/.profile文件最后添加幾行
# virtualenv and virtualenvwrapperexport WORKON_HOME=$HOME/.virtualenvssource /usr/local/bin/virtualenvwrapper.sh
3.3 接下來(lái)就是生成一個(gè)python虛擬環(huán)境用于opencv的開(kāi)發(fā)環(huán)境
$ mkvirtualenv cv -p python3
打開(kāi)一個(gè)命令窗口,執(zhí)行下列命令,確認(rèn)我們的cv環(huán)境已經(jīng)生成好了
$ source ~/.profile$ workon cv
如果命令窗口前面的文字變成了(cv)則表明我們已成功創(chuàng)建了名為cv的python虛擬環(huán)境
3.4 在cv虛擬環(huán)境下安裝numpy
(cv) -> ~ $ pip install numpy
接下來(lái)的操作都要保持在cv環(huán)境中。
四、編譯和安裝openCV
4.1 一定要在cv環(huán)境里,接下來(lái)用cmake進(jìn)行編譯opencv
$ cd ~/opencv-3.1.0/$ mkdir build$ cd build$ cmake -D ENABLE_PRECOMPILED_HEADERS=OFF \-D CMAKE_BUILD_TYPE=RELEASE \ -D CMAKE_INSTALL_PREFIX=/usr/local \ -D INSTALL_PYTHON_EXAMPLES=ON \ -D OPENCV_EXTRA_MODULES_PATH=~/opencv_contrib-3.1.0/modules \ -D BUILD_EXAMPLES=ON ..
4.2 開(kāi)始編譯opencv
$ make -j4
編譯過(guò)程大概會(huì)用好幾個(gè)小時(shí),請(qǐng)耐心等候,-j?是使用多少線程進(jìn)行編譯,在樹(shù)莓派上使用的單線程編譯,雖然速度會(huì)慢很多,但是不會(huì)死機(jī),用-j4會(huì)有死機(jī)的可能。如果-j后不加數(shù)字,則默認(rèn)不限制線程編譯。
編譯過(guò)程如下
4.3 安裝opencv
$ sudo make install$ sudo ldconfig
4.4 python虛擬環(huán)境中鏈接到opencv模塊
我們需要將cv2.cpython-34m.so重命名為cv2.so
$ cd /usr/local/lib/python3.4/site-packages/$ sudo mv cv2.cpython-34m.so cv2.so
然后將python虛擬環(huán)境中的cv2.so鏈接到上面剛被改名為cv2.so的文件上
$ cd ~/.virtualenvs/cv/lib/python3.4/site-packages/$ ln -s /usr/local/lib/python3.4/site-packages/cv2.so cv2.so
五、測(cè)試OpenCV3是否安裝成功
$ source ~/.profile $ workon cv$ python>>> import cv2>>> cv2.__version__'3.1.0'>>>
六、完成OpenCV的開(kāi)發(fā)環(huán)境后,就可以跑幾個(gè)簡(jiǎn)單的圖像識(shí)別的DEMO
其DEMO放在/usr/local/share/OpenCV/sample/python目錄下
我們將/usr/local/share/OpenCV/sample/文件拷貝到Downloads/sample/文件夾下
跑幾個(gè)DEMO
邊緣檢測(cè)算法:(cv)???python?edge.py
模式識(shí)別算法:(cv)???python?find_obj.py
運(yùn)動(dòng)方向檢測(cè):(cv)???python?lk_track.py
大功告成,opencv是樹(shù)莓派進(jìn)行圖像處理和識(shí)別的常用工具,如果配合樹(shù)莓派CSI的攝像頭獲取相片并識(shí)別處理將會(huì)更加有趣,可以做成人臉識(shí)別或者人臉追蹤。
- END -
往期推薦
●?在玩樂(lè)中學(xué)編程——DFRobot Maqueen麥昆機(jī)器人小車(chē)評(píng)測(cè)
●?基于51單片機(jī)的電子式溫度調(diào)節(jié)器設(shè)計(jì)-整套畢設(shè)資料
●?物聯(lián)網(wǎng)全新硬件解決方案——5款好用的MCU推薦
?歡迎加入微信群??加入與非社群,找到同道,一起切磋技藝、化解難題。
當(dāng)然還有不定期的紅包雨等著你哦!
與非網(wǎng)大大(小編)微信
注意:?
添加小編微信后,回復(fù)對(duì)應(yīng)關(guān)鍵詞+公司+崗位,方可被拉入社群,否則一律禁止入群,每人只可申請(qǐng)一個(gè)技術(shù)群。
關(guān)鍵詞:嵌入式、模擬、人工智能、RF、傳感器、汽車(chē)電子、物聯(lián)網(wǎng)、IC設(shè)計(jì)、EDA、PCB、開(kāi)源硬件、樹(shù)莓派。
總結(jié)
以上是生活随笔為你收集整理的bootstrap文件不能被识别_树莓派安装openCV做图像识别的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 肩膀拉伤该怎么办
- 下一篇: 细菌性毛囊炎怎么治疗