Orodha ya maudhui:

Kugundua kitu cha Raspberry Pi: Hatua 7
Kugundua kitu cha Raspberry Pi: Hatua 7

Video: Kugundua kitu cha Raspberry Pi: Hatua 7

Video: Kugundua kitu cha Raspberry Pi: Hatua 7
Video: BTT SKR2 -Klipper Firmware Install 2024, Novemba
Anonim
Kugundua kitu cha Raspberry Pi
Kugundua kitu cha Raspberry Pi

Mwongozo huu hutoa maagizo ya hatua kwa hatua ya jinsi ya kuanzisha API ya Kugundua Kitu ya TensorFlow kwenye Raspberry Pi. Kwa kufuata hatua katika mwongozo huu, utaweza kutumia Raspberry yako Pi kugundua kitu kwenye video ya moja kwa moja kutoka kwa kamera ya wavuti ya Picamera au USB. Ujifunzaji wa mashine ya mikono hauhitajiki kama inavyotumika kwenye hifadhidata mkondoni kwa kugundua kitu. Unaweza kugundua vitu vingi ambavyo hutumiwa kawaida ulimwenguni.

Tafadhali rejelea picha yangu hapo juu, tulitumia panya, Apple na Mikasi na kugundua kitu kikamilifu.

Mwongozo hupitia hatua zifuatazo:

Sasisha Raspberry Pi

Sakinisha TensorFlowInstall OpenCV

Kusanya na usakinishe Protobuf

Sanidi muundo wa saraka ya TensorFlow

Gundua vitu

Hatua ya 1: Sasisha Raspberry Pi

Sasisha Raspberry Pi
Sasisha Raspberry Pi

Pi yako ya Raspberry inahitaji kusasishwa

Hatua ya 1:

Andika kwenye terminal ya Amri, Sudo apt-pata sasisho

Na kisha Chapa

sudo apt-kupata dist-kuboresha

Hii inaweza Kuchukua muda mrefu inategemea mtandao wako na Raspberry pi

Hiyo ndiyo yote unayohitaji, umemaliza Kusasisha pi yako ya Raspberry

Hatua ya 2: Sakinisha TensorFlow

Sakinisha TensorFlow
Sakinisha TensorFlow

Sasa, tutaweka Tensorflow.

Andika amri hii ifuatayo, pip3 kufunga TensorFlow

TensorFlow pia inahitaji kifurushi cha LibAtlas, Chapa amri hii ifuatayo

Sudo apt-get kufunga libatlas-base-dev

Na andika amri hii ifuatayo pia, sudo pip3 sakinisha mto lxml jupyter matplotlib cythoni sudo apt-get kufunga python-tk

Sasa, Tumemaliza Kusanikisha Tensorflow.

Hatua ya 3: Sakinisha OpenCV

Sakinisha OpenCV
Sakinisha OpenCV

Sasa tunafanya kazi kusanikisha maktaba ya OpenCV kwa sababu mifano ya kugundua kitu cha TensorFlow hutumia matplotlib kuonyesha picha, lakini nachagua kufanya mazoezi ya OpenCV kwani ni rahisi kufanya kazi na makosa machache. Kwa hivyo, tunahitaji kufunga OpenCV. Sasa OpenCV haisaidii RPI, kwa hivyo tutaweka Vision ya zamani.

Sasa tunafanya kazi kusanikisha vitegemezi vichache ambavyo vinahitaji kusanikishwa kupitia -pata-kupata

Sudo apt-get kufunga libjpeg-dev libtiff5-dev libjasper-dev libpng12-dev

Sudo apt-get kufunga libavcodec-dev libavformat-dev libswscale-dev libv4l-dev

Sudo apt-get kufunga libxvidcore-dev libx264-dev

Sudo apt-get kufunga qt4-dev-zana libatlas-base-dev

Mwishowe, Sasa tunaweza kufunga OpenCV kwa kuandika, pip3 sakinisha opencv-python == 3.4.6.27

Hiyo ni yote, sasa tumeweka OpenCV

Hatua ya 4: Sakinisha Protobuf

Sakinisha Protobuf
Sakinisha Protobuf

API ya kugundua kitu cha TensorFlow hutumia Protobuf, kifurushi ambacho hufunika muundo wa data ya Itifaki ya Google. Unahitaji kukusanya kutoka kwa chanzo, sasa unaweza kusanikisha kwa urahisi.

Sudo apt-get kufunga protobuf-compiler

Run protoc --version mara tu hiyo imekamilika. Unapaswa kupata majibu ya libprotoc 3.6.1 au sawa.

Hatua ya 5: Sanidi Muundo wa Saraka ya TensorFlow

Sanidi Muundo wa Saraka ya TensorFlow
Sanidi Muundo wa Saraka ya TensorFlow

Tumeweka vifurushi vyote, tunataka kuanzisha saraka ya TensorFlow. Kutoka kwa saraka ya nyumbani, tengeneza jina la saraka linaloitwa "tensorflow1", Andika zifuatazo, mkdir tensorflow1cd tensorflow1

Sasa pakua TensorFlow kwa kuandika, git clone - kina 1

Tunataka kurekebisha mabadiliko ya mazingira ya PYTHONPATH kuelekeza kwenye saraka zingine ndani ya hazina ya TensorFlow. Tunahitaji PYTHONPATH kuwekwa kila wakati. Tunapaswa kurekebisha faili ya.bashrc. Lazima tuifungue kwa Kuandika

Sudo nano ~ /.bashrc

Mwisho wa faili, na mstari wa mwisho ongeza amri, kama kwenye picha ya juu ambayo imewekwa alama kwenye sanduku la rangi nyekundu.

kuuza nje PYTHONPATH = $ PYTHONPATH: / home / pi / tensorflow1 / modeli / utafiti: / nyumbani / pi / tensorflow1 / mifano / utafiti / ndogo

Sasa hifadhi na uondoke. Tunahitaji kutumia Protoksi kukusanya faili za Itifaki ya Bafa (.proto) inayotumiwa na API ya Kugundua Kitu. Faili za.proto ziko katika / utafiti / kitu_ugunduzi / protos, tunataka kutekeleza amri kutoka kwa saraka ya / ya utafiti. Andika amri ifuatayo

cd / nyumbani / pi / tensorflow1 / mifano / researchprotoc object_detection / protos / *. proto --python_out =.

Amri hii inabadilisha faili zote za "jina".proto kuwa "name_pb2".py files.

cd / nyumbani / pi / tensorflow1 / mifano / utafiti / kitu_utambuzi

Tunahitaji kupakua mfano wa SSD_Lite kutoka kwa zoo ya mfano ya TensorFlowdetection. Kwa hili, tunataka kutumia SSDLite-MobileNet, ambayo ni mfano wa haraka zaidi uliopo kwa RPI.

Google inatoa mifano bila ukomo na kasi na utendaji ulioboreshwa, kwa hivyo angalia mara nyingi ikiwa kuna aina yoyote iliyoboreshwa.

Andika amri ifuatayo kupakua mfano wa SSDLite-MobileNet.

wget

tar -xzvf ssdlite_mobilenet_v2_coco_2018_05_09.tar.gz

Sasa tunaweza kufanya mazoezi ya modeli za Object_Detction!

Tumekaribia kumaliza!

Hatua ya 6: Gundua kitu

Gundua kitu
Gundua kitu

Sasa jambo lote limewekwa kwa ajili ya kugundua kitu kwenye Pi!

Object_detection_picamera.py hugundua vitu moja kwa moja kutoka kwa kamera au kamera ya wavuti ya USB.

Ikiwa unatumia Picamera, fanya ubadilishaji wa usanidi wa Raspberry Pi kuwa menyu kama kwenye picha hapo juu iliyowekwa alama kwenye sanduku la rangi nyekundu.

Andika amri ifuatayo kupakua faili ya Object_detection_picamera.py kwenye saraka ya kugundua kitu.

wget https://raw.githubusercontent.com/EdjeElectronics/ TensorFlow-Object-Detection-on-the-Raspberry-Pi / master / Object_detection_picamera.py

python3 Object_detection_picamera.py

Andika amri ifuatayo kwa kamera ya USB

python3 Object_detection_picamera.py --usbcam

Amri ya mtu inatekelezwa, baada ya dakika 1 kufungua dirisha mpya ambayo itaanza kugundua vitu !!!

Hatua ya 7: Maswala na Asante

Maswala na Asante
Maswala na Asante

Tafadhali nijulishe ikiwa una maswali yoyote

Barua pepe: [email protected]

Asante, Rithik

Ilipendekeza: