python利用tensorflow识别圆_RaspberryPi上实现佩戴口罩识别——2020电赛F题小记
今年的電賽題目非常反常,傳統(tǒng)控制題目基本沒有,新增加了測距題目,甚至物聯(lián)網(wǎng)題目,Ai題目都出來了。直接電賽變算法+鈔能力大賽。看到F題:測溫+人臉識別,碰巧我們手頭有調(diào)好的紅外測溫模塊+樹莓派+openmv,還有一個現(xiàn)成的口罩識別算法,而openmv可以實現(xiàn)人臉識別,所以就選擇了這道題。作為一個本組唯一一個非電類專業(yè)的,本人負責(zé)Ai口罩識別算法的移植以及編寫一個opencv實現(xiàn)的人臉識別算法作為預(yù)備方案。
由于算法都是寫好的,并且在ubuntu中全部測試成功。下面主要任務(wù)就是把他移植進樹莓派了。萬事環(huán)境難,在這幾天里我給樹莓派刷機了不下十次,下面記錄一下艱辛例程。
配環(huán)境主要分下面幾步:
安裝系統(tǒng)并且連接顯示器
第一步比較簡單,從官網(wǎng)下載鏡像,然后用win32diskManager燒錄進去就可以用,燒錄好之后,如果要利用ssh功能的話,要在boot目錄下新建一個空白文件命名為ssh(不帶任何拓展名),如果需要利用HDMI顯示器,則需修改boot目錄下的config.txt
hdmi_force_hotplug=1 config_hdmi_boost=4在文件末尾加入以上內(nèi)容,或者將以上內(nèi)容對應(yīng)的注釋都替換掉。
hdmi_force_hotplug:強制使用HDMI輸出并且支持熱插拔(強行認為HDMI口已經(jīng)插入了設(shè)備)
config_hdmi_boost:HDMI信號增強。
按照以上步驟操作之后,應(yīng)該就能看到樹莓派的桌面了。
配置opencv環(huán)境
由于口罩識別的數(shù)據(jù)處理以及顯示過程均需要用到opencv庫,因此需要在raspbian中安裝opencv-python-4.4.0(和ubuntu上版本統(tǒng)一,減少兼容性問題)。
我在安裝過程中莫名出現(xiàn)了玄學(xué)hash值問題,經(jīng)過多次google發(fā)現(xiàn),原因是網(wǎng)絡(luò)不穩(wěn)定,需要用下面的方式安裝,或者直接wget下載whl文件吧
pip3安裝好之后,打開測試文件,測試攝像頭,發(fā)現(xiàn)可能會出現(xiàn)報錯,原因是raspbian中沒有依賴環(huán)境,需要安裝
sudo apt-get install libatlas-base-dev sudo apt-get install libjasper-dev sudo apt-get install libqtgui4 sudo apt-get install python3-pyqt5 sudo apt install libqt4-test安裝好之后可以用以下代碼測試攝像頭是否正常
import cv2 as cvVideo = cv.VideoCapture(0)while True:ret,frame = Video.read()cv.imshow("capture",frame)cv.waitKey(33)Video.release() cv.destroyAllWindows()如果不能顯示可能需要打開外設(shè)開關(guān),具體方法為命令行中輸入sudo raspi-config,選擇interfaceing-options,將camera選擇為enable。
配置Tensorflow
由于tensorflow較大,推薦先從電腦上通過wget下載好后上傳樹莓派,否則由于樹莓派網(wǎng)速慢且不穩(wěn)定會出現(xiàn)一些麻煩的問題,下載方法如下。
wget http://piwheels.org/simple/tensorflow/tensorflow-1.13.1-cp37-none-linux_armv7l.whl下載后可通過sftp上傳至樹莓派,上傳好之后找到whl對應(yīng)的目錄,使用以下命令安裝即可
pip3 install tensorflow-1.13.1-cp37-none-linux_armv7l.whl安裝好后可用以下代碼測試
python3 #命令行中進入python3環(huán)境 import tensorflow as tf hello = tf.constant('Hello!') sess = tf.Session() print(sess.run(hello))若出現(xiàn)和opencv類似的hash問題則繼續(xù)從電腦上wget下載鏡像上傳到樹莓派即可。
Keras的安裝也需要wget后手動安裝whl,同時如果需要保存模型為h5文件則還需安裝以下依賴:
sudo apt-get install libhdf5-dev源碼請參考這里。
https://github.com/Anakin0607/Mask-recogniser-on-RaspberryPi/?github.com總結(jié)
以上是生活随笔為你收集整理的python利用tensorflow识别圆_RaspberryPi上实现佩戴口罩识别——2020电赛F题小记的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 【LeetCode笔记】剑指 Offer
- 下一篇: websocket python爬虫_p