Sisukord:
- Tarvikud
- Samm: motivatsioon
- Samm: NVIDIA JetBoti ja projekti ülevaade
- Samm: ehitage JetBot ja laadige üles Jupyteri märkmikud
- Samm: koolitusandmete kogumine JetBotis
- Samm: treenige närvivõrku GPU -masinal
- Samm: käivitage JetBotis reaalajas demo
Video: Ülekandeõpe NVIDIA JetBotiga - lõbus liikluskoonustega: 6 sammu
2024 Autor: John Day | [email protected]. Viimati modifitseeritud: 2024-01-30 08:46
Autor: dvillevaldMinu GithubFollow About: Mulle meeldivad tehisintellekt ja masinõpperakendused, eriti robootikas Lisateave dvillevaldi kohta »
Õpetage oma robotit kaamera ja ülimoodsa süvaõppemudeli abil liikluskoonuste rägastikus teed leidma.
Tarvikud
-
NVIDIA JetBot
NVIDIA JetBot Wiki materjalide aruannete lehel on loetletud kõik, mida vajate JetBoti loomiseks, ja linkide ostmine populaarsetelt müüjatelt
- Arvuti NVIDIA GPU -ga
Vajalik mudeli koolitamiseks
- BlueDot Trading 4”RC Racing Agility Cones, oranž - komplekt 20
Samm: motivatsioon
Iga kord, kui ma kokkutõmbumispiirkonnas sõidan, mõtlen, kui keeruline oleks isesõitval autol liikluskoonuste kaudu navigeerida. Selgub, et uue NVIDIA JetBotiga pole see sugugi nii keeruline-vaid paarisaja pildiga saate treenida tipptasemel süvaõppemudelit, et õpetada oma robotile, kuidas leida mänguasjade liikluskoonuste rägastikust rada. kasutades ainult pardakaamerat ja muid andureid ei kasutata.
Samm: NVIDIA JetBoti ja projekti ülevaade
JetBot on avatud lähtekoodiga robot, mis põhineb NVIDIA Jetson Nano komplektil. Siit leiate üksikasjalikud juhised selle ehitamiseks ja seadistamiseks.
See projekt on NVIDIA JetBot Wiki muudetud kokkupõrke vältimise näide. See koosneb kolmest suurest sammust, millest igaüks on kirjeldatud eraldi Jupyteri märkmikus:
- Koguge JetBotis andmeid - märkmiku andmed_kogumiskontuurid.ipynb
- Rongi mudel teisel GPU -masinal - sülearvuti train_model_cones.ipynb
- Käivitage JetBotis reaalajas demo - sülearvuti live_demo_cones.ipynb
Need kolm Jupyteri märkmikku leiate siit
Samm: ehitage JetBot ja laadige üles Jupyteri märkmikud
- Ehitage ja seadistage JetBot, nagu siin selgitatud
- Ühendage oma robotiga, navigeerides lehele https://: 8888Logige sisse vaikimisi parooliga jetbot
- Lülitage kõik muud töötavad sülearvutid välja, valides Kernel -> Shutdown All Kernels…
- Liikuge lehele ~/Sülearvutid/
- Loo uus alamkaust ~/Sülearvutid/traffic_cones_driving/
- Laadige data_collection_cones.ipynb ja live_demo_cones.ipynb üles kausta ~/Notebooks/traffic_cones_driving/
TÄHTIS: käesolevas juhendis viidatud Jupyteri märkmikud data_collection_cones.ipynb ja live_demo_cones.ipynb tuleks käitada JetBotis, samas kui train_model_cones.ipynb - GPU -ga arvutis.
Seetõttu peame andmed_collection_cones.ipynb ja live_demo_cones.ipynb üles laadima JetBotisse ja paigutama need kausta ~/Notebooks/traffic_cones_driving/
Samm: koolitusandmete kogumine JetBotis
Kogume piltide klassifitseerimise andmestikku, mida kasutatakse JetBoti abistamiseks liikluskoonuste rägastikus. JetBot õpib, kuidas hinnata nelja stsenaariumi (klassi) tõenäosust:
- Tasuta - kui on turvaline edasi liikuda
- Blokeeritud - kui roboti ees on takistus
- Vasakule - kui robot peaks vasakule pöörlema
- Õige - kui robot peaks paremale pöörlema
JetBoti koolitusandmete kogumiseks kasutame Jupyteri märkmikku data_collection_cones.ipynb, mis sisaldab üksikasjalikke juhiseid selle kohta, kuidas seda teha. Selle märkmiku käivitamiseks JetBotis toimige järgmiselt.
- Ühendage oma robotiga, navigeerides aadressile https://: jetbot-ip-address:: 8888
- Logige sisse vaikimisi parooliga jetbot
- Lülitage välja kõik teised töötavad sülearvutid, valides Kernel -> Shutdown All Kernels …
- Avage ~/Sülearvutid/traffic_cones_driving/
- Avage ja järgige märkmikku data_collection_cones.ipynb
Samm: treenige närvivõrku GPU -masinal
Järgmisena kasutame kogutud andmeid süvaõppemudeli AlexNet uuesti koolitamiseks GPU-masinal (host), käivitades train_model_cones.ipynb.
Pange tähele, et train_model_cones.ipynb on selle õpetuse ainus Jupyteri märkmik, mida EI käivitata JetBotis
- Ühendage GPU -seadmega, kuhu on installitud PyTorch ja töötab Jupyter Labi server
- Laadige üles märkmik train_model_cones.ipynb ja sellesse masinasse
- Laadige üles märkmikus data_collection_cones.ipynb loodud fail dataset_cones.zip ja eraldage see andmestik. (Pärast seda sammu peaksite failibrauseris kuvama kausta nimega dataset_cones.)
- Avage ja järgige train_model_cones.ipynb märkmikku. Selle sammu lõpus loote mudeli - faili best_model_cones.pth, mis tuleb reaalajas demo käivitamiseks JetBotisse üles laadida.
Samm: käivitage JetBotis reaalajas demo
Viimane samm on mudeli best_model_cones.pth üleslaadimine JetBotisse ja selle käivitamine.
- Toidake oma robotit USB -akust
- Ühendage oma robotiga uuesti, navigeerides aadressile https://: jetbot-ip-address:: 8888
- Logige sisse vaikimisi parooliga jetbot
- Lülitage välja kõik teised töötavad sülearvutid, valides Kernel -> Shutdown All Kernels …
- Minge jaotisesse ~/Sülearvutid/traffic_cones_driving
- Avage sülearvuti live_demo_cones.ipynb ja järgige seda
Alustage ettevaatlikult ja andke JetBotile piisavalt ruumi liikumiseks. Proovige erinevaid koonuse konfiguratsioone ja vaadake, kui hästi robot toimib erinevates keskkondades, valgustuses jne. Kuigi sülearvuti live_demo_cones.ipynb selgitab kõiki samme üksikasjalikult, näitab järgmine tabel robotite liigutuste loogikat, arvestades mudelite prognoositud tõenäosusi.
Sülearvuti selgitab ka seda, kuidas salvestada roboti liikumiste ajalugu mudeli ennustatud vaba/vasaku/parema/blokeeritud tõenäosusega ja kuidas teha kaks FPV (esimese isiku vaatamise) videot (kiirusega 1 kaadrit sekundis ja 15 kaadrit sekundis) koos telemeetriaga ja JetBoti toimingute andmed. Need on kasulikud silumiseks, PID -kontrolleri häälestamiseks ja mudeli täiustamiseks.
Nautige ja andke mulle teada, kui teil on küsimusi!:-)
Kood on saadaval Githubis
Soovitan:
Atari punkkonsool beebiga 8 sammu järjestus: 7 sammu (piltidega)
Atari punkkonsool koos beebi 8-astmelise sekveneerijaga: see vaheehitus on kõik-ühes Atari punk-konsool ja beebi 8-astmeline järjestus, mida saate freesida Bantam Tools töölaua PCB-freespingis. See koosneb kahest trükkplaadist: üks on kasutajaliidese (UI) plaat ja teine on utiliit
Nvidia Jetson Nano õpetus - Esimene pilk AI ja ML abil: 7 sammu
Nvidia Jetson Nano õpetus | Esimene pilk AI ja ML -ga: Hei, mis toimub, poisid! Akarsh siin CETechist. Täna vaatame Nvidia uut SBC -d, mis on Jetson Nano, Jetson Nano on keskendunud tehisintellekti tehnikatele, nagu pildituvastus jne
NVIDIA Jetson Nano arendaja komplektiga alustamine: 6 sammu
Alustamine NVIDIA Jetson Nano arendajakomplektiga: Lühiülevaade Nvidia Jetsonist pr
Katkise Nvidia GPU ventilaatori parandamine: 5 sammu
Katkise Nvidia GPU ventilaatori parandamine: Tere. Mul on Nvidia GTS-450 graafikakaart ja kasutan seda juba mitu aastat, kuid eelmisel aastal läks selle ventilaator katki ja siis pidin avariiventilaatori kinnitama. Otsisin Internetist palju asendaja kohta, kuid ei leidnud täpset ja originaalset ventilaatorit
Oht Den / Nvidia Tri SLI vesijahutusega mänguarvuti: 7 sammu
Danger Den / Nvidia Tri SLI vesijahutusega mänguarvuti: poolteist aastat tagasi ehitasin ma kopsaka mänguseadme, nüüd selle vana riistvara. Kavatsesin seda värskendada, vahetades peamiselt oma 2 GeForce 8800 GTX läikiva uue GeForce GTX 280 vastu. Aga ma läksin "hull teadlane?"; ja ehitage ja täiesti uus seade, alustades