Բովանդակություն:
- Քայլ 1: Թարմացրեք Raspberry Pi- ն
- Քայլ 2: Տեղադրեք TensorFlow
- Քայլ 3: Տեղադրեք OpenCV
- Քայլ 4: Տեղադրեք Protobuf- ը
- Քայլ 5: Ստեղծեք TensorFlow տեղեկատուի կառուցվածքը
- Քայլ 6: Հայտնաբերել օբյեկտը
- Քայլ 7: Հարցեր և շնորհակալություն
Video: Ազնվամորի Պի օբյեկտի հայտնաբերում. 7 քայլ
2024 Հեղինակ: John Day | [email protected]. Վերջին փոփոխված: 2024-01-30 09:46
Այս ուղեցույցը տալիս է քայլ առ քայլ հրահանգներ, թե ինչպես կարելի է ստեղծել Raspberry Pi- ի վրա TensorFlow’s Object Detection API: Հետևելով այս ուղեցույցի քայլերին ՝ դուք կկարողանաք օգտագործել ձեր Raspberry Pi- ն ՝ Picamera կամ USB վեբ տեսախցիկից կենդանի տեսանյութերի վրա օբյեկտի հայտնաբերում իրականացնելու համար: Ձեռքով մեքենայական ուսուցումը չի պահանջվում, ինչպես օգտագործվում է առցանց տվյալների բազայում ՝ օբյեկտների հայտնաբերման համար: Դուք կարող եք հայտնաբերել օբյեկտների մեծ մասը, որոնք սովորաբար օգտագործվում են ամբողջ աշխարհում:
Խնդրում եմ անդրադառնալ իմ վերը նշված նկարին, մենք օգտագործեցինք մկնիկ, խնձոր և մկրատ և կատարյալ հայտնաբերեցինք օբյեկտը:
Ուղեցույցն անցնում է հետևյալ քայլերով.
Թարմացրեք Raspberry Pi- ն
Տեղադրեք TensorFlowInstall OpenCV
Կազմեք և տեղադրեք Protobuf- ը
Կարգավորեք TensorFlow գրացուցակի կառուցվածքը
Հայտնաբերեք օբյեկտները:
Քայլ 1: Թարմացրեք Raspberry Pi- ն
Ձեր Raspberry Pi- ն պետք է թարմացվի
Քայլ 1:
Մուտքագրեք հրամանի տերմինալը, sudo apt-get թարմացում
Եվ հետո Մուտքագրեք
sudo apt-get dist-upgrade
Սա կարող է երկար տևել ՝ կախված ձեր ինտերնետից և Raspberry pi- ից
Դա այն ամենն է, ինչ ձեզ հարկավոր է, դուք ավարտել եք ձեր Raspberry pi- ի թարմացումը
Քայլ 2: Տեղադրեք TensorFlow
Այժմ մենք պատրաստվում ենք տեղադրել Tensorflow- ը:
Մուտքագրեք հետևյալ հրամանը, pip3 տեղադրել TensorFlow
TensorFlow- ին անհրաժեշտ է նաև LibAtlas փաթեթը: Մուտքագրեք հետևյալ հրամանը
sudo apt-get տեղադրել libatlas-base-dev
Եվ մուտքագրեք նաև հետևյալ հրամանը, sudo pip3 տեղադրել բարձ lxml jupyter matplotlib cythonsudo apt-get install python-tk
Այժմ մենք ավարտեցինք Tensorflow- ի տեղադրումը:
Քայլ 3: Տեղադրեք OpenCV
Այժմ մենք աշխատում ենք OpenCV գրադարանի տեղադրման վրա, քանի որ TensorFlow- ի օբյեկտների հայտնաբերման օրինակները օգտագործում են matplotlib պատկերները ցուցադրելու համար, բայց ես ընտրում եմ OpenCV- ով զբաղվելը, քանի որ ավելի հեշտ է աշխատել և ավելի քիչ սխալներ: Այսպիսով, մենք պետք է տեղադրենք OpenCV: Այժմ OpenCV- ն չի աջակցում RPI- ն, ուստի մենք պատրաստվում ենք տեղադրել հին Verision- ը:
Այժմ մենք աշխատում ենք տեղադրել մի քանի կախվածություն, որոնք պետք է տեղադրվեն apt-get- ի միջոցով
sudo apt-get տեղադրել libjpeg-dev libtiff5-dev libjasper-dev libpng12-dev
sudo apt-get տեղադրել libavcodec-dev libavformat-dev libswscale-dev libv4l-dev
sudo apt-get տեղադրել libxvidcore-dev libx264-dev
sudo apt-get տեղադրել qt4-dev-tools libatlas-base-dev
Վերջապես, Այժմ մենք կարող ենք տեղադրել OpenCV ՝ մուտքագրելով ՝
pip3 տեղադրել opencv-python == 3.4.6.27
Այսքանը, մենք այժմ տեղադրել ենք OpenCV
Քայլ 4: Տեղադրեք Protobuf- ը
TensorFlow օբյեկտի հայտնաբերման API- ն օգտագործում է Protobuf- ը ՝ փաթեթ, որը համապատասխանում է Google- ի Protocol Buffer տվյալների ձևաչափին: Դուք պետք է կազմեք աղբյուրից, այժմ կարող եք հեշտությամբ տեղադրել:
sudo apt-get տեղադրել protobuf-compiler
Գործարկելուց հետո գործարկեք protoc --version- ը: Դուք պետք է ստանաք libprotoc 3.6.1 կամ նմանատիպ պատասխան:
Քայլ 5: Ստեղծեք TensorFlow տեղեկատուի կառուցվածքը
Մենք տեղադրել ենք բոլոր փաթեթները, մենք ցանկանում ենք ստեղծել տեղեկատու TensorFlow- ի համար: Տնային գրացուցակից ստեղծեք գրացուցակի անուն, որը կոչվում է «tensorflow1», Մուտքագրեք հետևյալը, mkdir tensorflow1cd tensorflow1
Այժմ ներբեռնեք TensorFlow- ը ՝ մուտքագրելով, git clone -խորություն 1
Մենք ցանկանում ենք փոփոխել PYTHONPATH միջավայրի փոփոխականը ՝ TensorFlow շտեմարանի ներսում որոշ դիրեկտորիաներին ուղղելու համար: Մեզ անհրաժեշտ է, որ PYTHONPATH- ը ամեն անգամ տեղադրվի: Մենք պետք է կարգավորենք.bashrc ֆայլը: Մենք պետք է բացենք այն մուտքագրելով
sudo nano./.bashrc
Ֆայլի վերջում և վերջին տողում ավելացրեք հրամանը, ինչպես վերևի պատկերը, որը նշված է կարմիր գույնի վանդակում:
արտահանում PYTHONPATH = $ PYTHONPATH:/home/pi/tensorflow1/մոդելներ/հետազոտություններ ՝/home/pi/tensorflow1/մոդելներ/հետազոտություններ/բարակ
Այժմ պահեք և դուրս եկեք: Մենք պետք է օգտագործենք Protoc- ը ՝ Protocol Buffer (.proto) ֆայլերը կազմելու համար, որոնք օգտագործվում են Object Detection API- ի կողմից:: Մուտքագրեք հետևյալ հրամանը
cd/home/pi/tensorflow1/models/researchprotoc object_detection/protos/*. proto --python_out =.
Այս հրամանը փոխում է բոլոր «name».proto ֆայլերը «name_pb2».py ֆայլերի:
cd/home/pi/tensorflow1/մոդելներ/հետազոտություն/օբյեկտի_բացահայտում
Մենք պետք է ներբեռնենք SSD_Lite մոդելը TensorFlowdetection մոդելի կենդանաբանական այգուց: Դրա համար մենք ցանկանում ենք օգտագործել SSDLite-MobileNet- ը, որը RPI- ի համար գոյություն ունեցող ամենաարագ մոդելն է:
Google- ը անվերջ թողարկում է ուժեղացված արագությամբ և կատարողականությամբ մոդելներ, ուստի հաճախ ստուգեք, արդյոք կան բարելավված մոդելներ:
SSDLite-MobileNet մոդելը ներբեռնելու համար մուտքագրեք հետևյալ հրամանը:
wget
tar -xzvf ssdlite_mobilenet_v2_coco_2018_05_09.tar.gz
Այժմ մենք կարող ենք կիրառել Object_Detction մոդելները:
Մենք գրեթե ավարտված ենք:
Քայլ 6: Հայտնաբերել օբյեկտը
Այժմ ամբողջը ստեղծված է Pi- ի վրա կատարման օբյեկտի հայտնաբերման համար:
Object_detection_picamera.py- ն ուղիղ եթերում հայտնաբերում է օբյեկտներ Picamera- ից կամ USB վեբ -տեսախցիկից:
Եթե դուք օգտագործում եք Picamera, փոխեք Raspberry Pi- ի կոնֆիգուրացիան ընտրացանկ, ինչպես կարմիր գույնի վանդակում նշված վերը նշված նկարում:
Մուտքագրեք հետևյալ հրամանը ՝ Object_detection_picamera.py ֆայլը բեռնելու համար object_detection գրացուցակում:
wget https://raw.githubusercontent.com/EdjeElectronics/ TensorFlow-Object-Detection-on-the-Raspberry-Pi/master/Object_detection_picamera.py
python3 Object_detection_picamera.py
USB տեսախցիկի համար մուտքագրեք հետևյալ հրամանը
python3 Object_detection_picamera.py --usbcam
Մեկի հրամանը կատարվում է, 1 րոպե անց բացվում է նոր պատուհան, որը կսկսի հայտնաբերել օբյեկտները !!!
Քայլ 7: Հարցեր և շնորհակալություն
Խնդրում եմ ինձ տեղեկացնել, եթե ունեք հարցեր
Փոստ `[email protected]
Շնորհակալություն, Ռիթիկ
Խորհուրդ ենք տալիս:
Օբյեկտի հայտնաբերում Sipeed MaiX տախտակներով (Kendryte K210) ՝ 6 քայլ
Օբյեկտների հայտնաբերում Sipeed MaiX տախտակներով (Kendryte K210). Որպես Sipeed MaiX տախտակներով պատկերի ճանաչման մասին իմ նախորդ հոդվածի շարունակություն, ես որոշեցի գրել մեկ այլ ձեռնարկ ՝ կենտրոնանալով օբյեկտների հայտնաբերման վրա: Վերջերս ինչ -որ հետաքրքիր սարքավորում հայտնվեց Kendryte K210 չիպով, ներառյալ S
Օբյեկտի հայտնաբերում W/ Dragonboard 410c կամ 820c OpenCV- ի և Tensorflow- ի միջոցով. 4 քայլ
Օբյեկտի հայտնաբերում W/ Dragonboard 410c կամ 820c OpenCV- ի և Tensorflow- ի միջոցով. Այս հրահանգները նկարագրում են, թե ինչպես տեղադրել OpenCV, Tensorflow և մեքենայական ուսուցման շրջանակներ Python 3.5 – ի համար ՝ օբյեկտների հայտնաբերման ծրագիրը գործարկելու համար:
Ազնվամորի Պի օբյեկտի հաշվարկ. 5 քայլ
Raspberry Pi օբյեկտների հաշվարկ. Համակարգչային տեսլականը, անկասկած, ֆանտաստիկ բան է: Օգտագործելով սա ՝ համակարգիչը ձեռք է բերում «տեսնելու» հնարավորությունը: և ավելի լավ զգալով շրջակա միջավայրը, ինչը թույլ է տալիս զարգացնել բարդ, օգտակար և սառը ծրագրեր: Applicրագրեր, ինչպիսիք են fa
Տեսողական օբյեկտի հայտնաբերում ֆոտոխցիկով (TfCD). 15 քայլ (նկարներով)
Տեսախցիկների միջոցով օբյեկտների հայտնաբերում (TfCD). Ognանաչողական ծառայությունները, որոնք կարող են ճանաչել հույզերը, մարդկանց դեմքերը կամ պարզ առարկաները, դեռ զարգացման վաղ փուլում են, սակայն մեքենայական ուսուցման դեպքում այս տեխնոլոգիան գնալով զարգանում է: Մենք կարող ենք ակնկալել, որ այս հրաշքն ավելի շատ կտեսնենք
Դեմքի և աչքերի հայտնաբերում ազնվամորի Պի eroրոյի և բացման միջոցով. 3 քայլ
Դեմքի և աչքերի հայտնաբերում ազնվամորու Պի eroրոյի և Opencv- ի հետ. Սա իմ առաջին հրահանգն է opencv- ով: Ես հետևեցի բազմաթիվ ձեռնարկների `ազնվամորու մեջ բաց cv ստեղծելու համար, բայց ամեն անգամ հարվածում էի որոշ սխալներով: Ինչևէ ես