13.6. Edge Impulse¶
Edge Impulse on kokonaisvaltainen alusta mikro-ohjaimilla toimivien koneoppimismallien rakentamiseen: kerää ja luokittele aineistoa, suunnittele ja kouluta malli selaimessa ja optimoi se mahtumaan laitteeseen, jonka koko mitataan kilotavuissa. Se julkaisee mallit suoraan OpenMV:lle – muutamalla napsautuksella koulutetusta mallista syntyy tiedostot, jotka ovat valmiita ajettaviksi kameralla. Edge Impulsen oma dokumentaatio syventyy jokaiseen vaiheeseen tarkemmin.
13.6.1. Aineiston tuominen¶
Malli toimii parhaiten sellaisten kuvien parissa, joilla se on koulutettu, joten kuvaa aineisto sillä kameralla, joka tulee sitä ajamaan. IDE:n aineistoeditori on rakennettu juuri tähän – luo luokkakansiot, kuvaa luokitellut kuvat suoraan elävästä kehyspuskurista ja lataa aineisto sitten suoraan Edge Impulse -projektiin Export-alivalikosta (kirjaudu ensin tilillesi siellä). Siitä eteenpäin työskentelet Edge Impulse Studiossa.
Katso myös
Edge Impulsen oma OpenMV Cam -asennusopas työkalujen asentamiseen ja kameran yhdistämiseen.
13.6.2. Koulutus¶
Koulutus tapahtuu kokonaan selaimessa: suunnittele impulse (syöte-, käsittely- ja oppimislohkot), kouluta se ja tarkista tarkkuus erilleen jätetyllä testiaineistolla.
Kameralle sopii kaksi mallityyppiä. Kuvaluokitin tuottaa listan luokkapisteistä, jotka luet suoraan mallin ulostulosta – jälkikäsittelijää ei tarvita. FOMO, mikro-ohjaimille suunniteltu nopea objektien tunnistin, vaatii yhden purkuvaiheen, ja kamera toimitetaan sitä varten jälkikäsittelijän kanssa (ml.postprocessing.edgeimpulse), joten myös nämä mallit toimivat ilman ylimääräistä koodia.
13.6.3. Julkaisu kameralle¶
Kun koulutus on valmis, avaa projektin Deployment-sivu, valitse kohteeksi OpenMV Library ja napsauta Build. Ladattava tiedosto on zip, joka sisältää koulutetun mallin (trained.tflite), sen luokkanimet (labels.txt) ja esimerkkiskriptin. Malli on kokonaislukukvantisoitu. Edge Impulse käsittelee tämän ja mukautetun laiteohjelmiston vaihtoehdon run on OpenMV -oppaassaan.
Lisää .tflite-tiedosto kameralle IDE:n ROMFS-editorilla, joka muuntaa sen kortin NPU:ta varten silloin kun sellainen on, ja lataa se skriptissä ml.Model-luokalla. Mallit toimivat myös kameran flash-asemalta – kopioi tiedostot sinne ja osoita ml.Model polkuun – mutta ROMFS on parempi sijainti: siellä olevat mallit suoritetaan suoraan flash-muistista ilman RAM-kopiota.
Katso myös
Koneoppimisluku mallien ajamisesta ml-moduulilla – lataaminen, päättelyn putki ja ulostulon purkaminen.