Përmbajtje:
- Furnizimet
- Hapi 1: Motivimi
- Hapi 2: NVIDIA JetBot & Vështrim i Projektit
- Hapi 3: Ndërtoni JetBot dhe Ngarkoni Fletoret Jupyter
- Hapi 4: Mbledhja e të dhënave të trajnimit në JetBot
- Hapi 5: Trajnoni Rrjetin Neural në Makinën GPU
- Hapi 6: Drejtoni Demo Live në JetBot
Video: Transferoni mësimin me NVIDIA JetBot - Argëtim me kone trafiku: 6 hapa
2024 Autor: John Day | [email protected]. E modifikuara e fundit: 2024-01-30 12:10
Nga dvillevaldMy GithubFollow About: Më pëlqejnë inteligjencën artificiale dhe aplikimet e mësimit të makinerisë, veçanërisht në robotikë Më shumë rreth dvillevald »
Mësojeni robotin tuaj të gjejë një shteg në një labirint të koneve të trafikut duke përdorur kamerën dhe modelin më të fundit të të mësuarit të thellë.
Furnizimet
-
NVIDIA JetBot
Faqja e Faturës së Materialeve të NVIDIA JetBot Wiki liston gjithçka që ju nevojitet për të ndërtuar JetBot, së bashku me blerjen e lidhjeve nga shitësit e njohur
- Kompjuter me GPU NVIDIA
Nevojitet për të trajnuar modelin
- BlueDot Trading 4”RC Racing Agility Cones, Orange - Set prej 20
Hapi 1: Motivimi
Sa herë që ngas në zonën e tkurrjes, unë jam duke menduar se sa sfiduese do të ishte për një makinë vetë-drejtuese të lundrojë nëpër kunjat e trafikut. Rezulton se nuk është aq e vështirë me JetBot-in e ri të NVIDIA-s-me vetëm disa qindra imazhe, ju mund të stërvitni një model të teknologjisë së mësimit të thellë për të mësuar robotin tuaj se si të gjejë një rrugë në një labirint të koneve të trafikut të lodrave duke përdorur vetëm kamerën në bord dhe asnjë sensorë të tjerë.
Hapi 2: NVIDIA JetBot & Vështrim i Projektit
JetBot është një robot me burim të hapur i bazuar në kompletin NVIDIA Jetson Nano. Këtu mund të gjeni udhëzime të hollësishme se si ta ndërtoni dhe vendosni atë.
Ky projekt është një shembull i modifikuar i shmangies së Përplasjes nga NVIDIA JetBot Wiki. Ai përbëhet nga tre hapa kryesorë, secili i përshkruar në një fletore të veçantë Jupyter:
- Mblidhni të dhëna në JetBot - notebook data_collection_cones.ipynb
- Modeli i trenit në makinën tjetër GPU - notebook train_model_cones.ipynb
- Drejtoni një demonstrim të drejtpërdrejtë në JetBot - fletore live_demo_cones.ipynb
Këtu mund t'i gjeni këto tre fletore Jupyter
Hapi 3: Ndërtoni JetBot dhe Ngarkoni Fletoret Jupyter
- Ndërtoni dhe konfiguroni JetBot siç shpjegohet këtu
- Lidhu me robotin tënd duke lundruar te https://: 8888 Identifikohu me fjalëkalimin e paracaktuar jetbot
- Mbyllni të gjithë fletoret e tjera që funksionojnë duke zgjedhur Kernel -> Shutdown All Kernels…
- Shkoni te ~/Fletoret/
- Krijo nën -dosje të re ~/Fletore/trafiku_konët_drejtim/
- Ngarko data_collection_cones.ipynb dhe live_demo_cones.ipynb te ~/Notebooks/traffic_cones_driving/
E RORTNDSISHM: Fletoret Jupyter data_collection_cones.ipynb dhe live_demo_cones.ipynb të referuara në këtë udhëzim duhet të ekzekutohen në JetBot ndërsa train_model_cones.ipynb - në një kompjuter me GPU.
Prandaj ne duhet të ngarkojmë data_collection_cones.ipynb dhe live_demo_cones.ipynb në JetBot dhe t'i vendosim në ~/Notebooks/traffic_cones_driving/
Hapi 4: Mbledhja e të dhënave të trajnimit në JetBot
Ne do të mbledhim një grup të dhënash të klasifikimit të imazheve që do të përdoret për të ndihmuar JetBot të veprojë në një labirint të koneve të trafikut. JetBot do të mësojë se si të vlerësojë probabilitetet e katër skenarëve (klasave):
- Falas - kur është e sigurt të ecësh përpara
- Bllokuar - kur ka një pengesë para robotit
- Majtas - kur roboti duhet të rrotullohet në të majtë
- Djathtas - kur roboti duhet të rrotullohet në të djathtë
Për të mbledhur të dhënat e trajnimit në JetBot ne do të përdorim fletoren Jupyter data_collection_cones.ipynb e cila përmban udhëzime të hollësishme se si ta bëjmë atë. Për të ekzekutuar këtë fletore në JetBot, ndiqni hapat e mëposhtëm:
- Lidhuni me robotin tuaj duke lundruar në https://: jetbot-ip-address:: 8888
- Hyni me fjalëkalimin e paracaktuar jetbot
- Mbyllni të gjithë fletoret e tjera që funksionojnë duke zgjedhur Kernel -> Shutdown All Kernels…
- Shkoni te ~/Notebooks/traffic_cones_driving/
- Hapni dhe ndiqni fletoren data_collection_cones.ipynb
Hapi 5: Trajnoni Rrjetin Neural në Makinën GPU
Tjetra, ne do të përdorim të dhënat e mbledhura për të ri-stërvitur modelin e mësimit të thellë AlexNet në makinën GPU (host) duke drejtuar train_model_cones.ipynb.
Vini re se train_model_cones.ipynb është fletorja e vetme Jupyter në këtë tutorial i cili nuk funksionon në JetBot
- Lidhuni me një makinë GPU me PyTorch të instaluar dhe një server Jupyter Lab që funksionon
- Ngarko fletoren train_model_cones.ipynb dhe në këtë makinë
- Ngarko skedarin dataset_cones.zip që keni krijuar në fletoren data_collection_cones.ipynb dhe ekstraktoni këtë grup të dhënash. (Pas këtij hapi ju duhet të shihni një dosje me emrin dataset_cones që shfaqet në shfletuesin e skedarëve.)
- Hapni dhe ndiqni fletoren e train_model_cones.ipynb. Në fund të këtij hapi, ju do të krijoni një model - skedarin best_model_cones.pth i cili më pas duhet të ngarkohet në JetBot për të ekzekutuar demonstrimin e drejtpërdrejtë.
Hapi 6: Drejtoni Demo Live në JetBot
Ky hap i fundit është të ngarkoni modelin best_model_cones.pth në JetBot dhe ta ekzekutoni atë.
- Furnizoni robotin tuaj nga paketa e baterisë USB
- Lidhuni përsëri me robotin tuaj duke lundruar në https://: jetbot-ip-address:: 8888
- Hyni me fjalëkalimin e paracaktuar jetbot
- Mbyllni të gjithë fletoret e tjera që funksionojnë duke zgjedhur Kernel -> Shutdown All Kernels…
- Shkoni te ~/Notebooks/traffic_cones_driving
- Hapni dhe ndiqni fletoren live_demo_cones.ipynb
Filloni me kujdes dhe jepini JetBot hapësirë të mjaftueshme për të lëvizur. Provoni konfigurimin e ndryshëm të konit dhe shihni se sa mirë roboti performon në mjedise të ndryshme, ndriçim, etj. Ndërsa fletorja live_demo_cones.ipynb shpjegon të gjitha hapat në detaje, grafiku i mëposhtëm tregon logjikën e lëvizjeve të robotëve duke pasur parasysh probabilitetet e parashikuara nga modelet.
Fletorja gjithashtu shpjegon se si të ruhet historia e lëvizjeve të robotëve me probabilitete të lira/majtas/djathtas/të bllokuara të parashikuara nga modeli dhe si të bëni dy video FPV (Pamja e Personit të Parë) (me shpejtësi 1 fps dhe 15 fps) me telemetri të mbivendosur dhe Të dhënat e veprimeve JetBot. Ato janë të dobishme për korrigjimin, rregullimin e kontrolluesit PID dhe përmirësimin e modelit.
Argëtohuni dhe më tregoni nëse keni pyetje!:-)
Kodi është i disponueshëm në Github
Recommended:
A është e mundur të transferoni fotografi duke përdorur pajisje IoT të bazuara në LPWAN?: 6 hapa
A është e mundur të transferoni fotografi duke përdorur pajisje IoT të bazuara në LPWAN?: LPWAN qëndron për Low Power Wide Area Network dhe është një teknologji komunikimi mjaft e përshtatshme në fushën IoT. Teknologjitë përfaqësuese janë Sigfox, LoRa NB-IoT dhe LTE Cat.M1. Të gjitha këto janë teknologji komunikimi në distanca të gjata me fuqi të ulët. Në gje
Trafiku i të mësuarit Lojë: 5 hapa
Lojë e të mësuarit të dritës së trafikut: Në këtë tutorial, do të mësoni se si të bëni një lojë mësimi të semaforit Arduino. Duke luajtur lojën, fëmijët janë në gjendje të kontrollojnë nëse kanë njohuritë e duhura për semaforët. Loja ndahet në dy pjesë, nëse lojtari ndjek
Transferoni elektricitetin me valë: 6 hapa
Transferoni Electrcity pa tela: në këtë tutorial, unë do t'ju tregoj se si të transferoni energji elektrike me qark shumë të thjeshtë
Si të zbuloni sëmundjet e bimëve duke përdorur mësimin e makinerisë: 6 hapa
Si të zbuloni sëmundjet e bimëve duke përdorur të mësuarit makinerik: Procesi i zbulimit dhe njohjes së bimëve të sëmura ka qenë gjithmonë një proces manual dhe i lodhshëm që kërkon që njerëzit të inspektojnë vizualisht trupin e bimës, gjë që shpesh mund të çojë në një diagnozë të pasaktë. Gjithashtu është parashikuar që si botë globale
HeadBot-një robot vetë-balancues për mësimin dhe shtrirjen STEM: 7 hapa (me fotografi)
HeadBot-një Robot Vetë-Balancues për Mësimin dhe Shtrirjen STEM: Headbot-një robot i gjatë dy këmbë, i vetë-balancuar-është ideja e Ekipit Robotik të Eugene të Jugut (SERT, FRC 2521), një ekip konkurrues robotikësh të shkollave të mesme në PARST Konkursi i robotikës, nga Eugene, Oregon. Ky robot popullor i afrimit bën ri