Hoe tool-innovatie Vision AI voor embedded systemen vereenvoudigt
Het integreren van visie in alledaagse producten biedt transformatieve voordelen voor industrieën, doch het extraheren van cameradata, embedden van machine-learning modellen en leveren van actionable insights blijven complexe uitdagingen.
De sleutel ligt in het selecteren van de geschikte software, tools, bibliotheken en compilers. Deze bronnen zijn doorgaans ontoegankelijk voor niet-engineers, en zelfs veel embedded ontwikkelaars missen de gespecialiseerde expertise die vereist is voor visiesysteemontwerp.
Een van de grootste hindernissen is het gebrek aan bewustzijn van de software en tools die embedded vision ontwikkeling faciliteren, zoals Jeff Bier, oprichter van de Edge AI and Vision Alliance, uitlegde in een briefing met EE Times voor de 2021 Embedded Vision Summit. Terwijl significante investeringen en onderzoek zijn gegaan in algoritmen en silicon, zijn de software tools die tussen hen bemiddelen – compilers, geoptimaliseerde functiebibliotheken en meer – enigszins verwaarloosd, merkte Bier op.
Het gebruik van de juiste software tools, compilers en bibliotheken kan een zeer efficiënte implementatie van een algoritme voor een specifieke microcontroller of processor opleveren. Maar "de afgelopen 30 jaar hebben semiconductorbedrijven typisch ondergeïnvesteerd in software tools," zei Bier, een veteran van de embedded systems industrie en signal processing in het bijzonder. "[Software] wordt vaak gezien als een noodzakelijk kwaad – het is een kostenpost in een zeer kostengevoelig business – en dat blijkt. Als embedded software ontwikkelaar kijk je naar de tools die beschikbaar zijn in vergelijking met wat PC of cloud ontwikkelaars hebben en je voelt je als het ongeliefde stiefkind."
Dit argument een stap verder genomen, voegde hij toe: "Je kunt embedded systems expertise hebben, maar er is een kans dat deze ontwikkelaars nooit met beelddata of diepe neurale netwerken hebben gewerkt."
Vaardigheden zijn een grote uitdaging, zei Bier. "We hebben misschien enkele spreadsheetberekeningen gedaan en gezegd: 'Ja, het is mogelijk om dit soort diep neurale netwerk met voldoende prestaties in onze applicatie te draaien.' Maar weten we hoe we dat moeten doen? Hebben we de skills? Voor de meeste organisaties is het antwoord nee, omdat ze niet de kans hebben gehad om deze technologie in het verleden te gebruiken. Omdat het een relatief nieuwe technologie is in de commerciële wereld, hebben ze de expertise niet. Ze hebben geen machine learning afdeling of computer vision afdeling in hun bedrijf."
In de laatste paar jaar is dit een echt knelpunt geworden wat betreft commerciële toepassing van computer vision en diepe neurale netwerken – gewoon de know-how.
De technologie wordt wel toegankelijker, echter, omdat bedrijven de afgelopen paar jaren hebben geprobeerd de skills gap aan te pakken. "De kennis- en vaardigheidsgap is nogal groot maar wordt kleiner," zei Bier, en voegde toe dat "een paar bedrijven," één groot en één klein, "de aanval hebben geleid." Het grote bedrijf is Intel; het kleine is Edge Impulse.
"Intel heeft me vaak geïmpresseerd als de trend tegensprekend en bereid om grote investeringen in software tools te doen op verschillende manieren," zei Bier. "Ze hebben bijvoorbeeld de OpenVINO toolchain voor edge computer vision en inference, en DevCloud for the Edge. Edge Impulse is ook een cloud-gebaseerde omgeving. Voor een embedded ontwikkelaar voelt dat [de cloud omgeving] vreemd. Alles voor hen is vaak op hun bureau – het dev board, de workstation, de tools – en ze hebben zelfs geen internetverbinding nodig. Alles is heel lokaal. Dus het voelt heel vreemd om te zeggen: 'Zet je code in de cloud' en draai de tools in de cloud."
De trend adresziet time-to-deployment evenals de skills gap. Een frequente frustratie voor embedded ontwikkelaars is toegang krijgen tot boards en tools en ze goed geïnstalleerd krijgen, zei Bier. De tijdlijn is "meestal gemeten in weken, soms in maanden, en dat is pijnlijk, vooral als je aan het einde van dat proces realiseert dat dat niet wat je nodig had was en je het proces moet herhalen met enkele andere boards." Bijvoorbeeld, je kunt aan het einde van het proces ontdekken dat "je de volgende nodig hebt, met hogere prestaties of een andere set I/O interfaces."
Maar als de leverancier "alle development boards in de cloud heeft aangesloten op hun machines en [ze] op wil kan benaderen, biedt dat enorme gemak. Evenzo hebben ze de nieuwste versies van de software tools, en ze hebben alle dependencies tussen ze uitgesorteerd."
Versnellen van Vision AI implementatie
Hoe versnel je dan de implementatie van embedded vision om functies zoals objectdetectie en analyse mogelijk te maken, of het nu voor slimme steden, fabrieken, retail of enige andere applicatie is?
Na de pijnpunten die Bier beschreef te hebben gerealiseerd, pakken bedrijven ze aan. Sommige bieden nu tools zoals cloud-gebaseerde ontwikkelingssystemen die je toestaan je code of data in te voeren en evaluaties in bijna geen tijd te krijgen. Anderen bieden referentie-ontwerpen die je toestaan om simpelweg je camera-uitgang in te pluggen en te kiezen uit bibliotheken of apps die inference-algoritmen voor veelvoorkomende toepassingen bieden.
In het eerste kamp bieden Intel DevCloud for the Edge en Edge Impulse cloud-gebaseerde platforms die de meeste pijnpunten wegnemen met gemakkelijke toegang tot de nieuwste tools en software. In het laatste hebben Xilinx en anderen begonnen met het aanbieden van complete systems-on-module met production-ready applicaties die geïmplementeerd kunnen worden met tools op een hoger abstractieniveau, wat de noodzaak voor sommige van de meer specialistische skills wegnemt.
Prototypeer, benchmark en test AI inference in de cloud
Intel DevCloud for the Edge laat gebruikers AI inference applicaties ontwikkelen, prototypen, benchmarken en testen op een scala aan Intel hardware, inclusief CPUs, geïntegreerde GPUs, FPGAs en vision processing units (VPUs). Met zijn Jupyter Notebook interface bevat het platform tutorials en voorbeelden voorgeladen met alles wat nodig is om snel op te starten. Dit omvat pre-getrainde modellen, sample data en uitvoerbare code uit de nieuwste versie van de Intel Distribution of OpenVINO toolkit, evenals andere tools voor deep learning. Alle ondersteunende apparaten zijn geconfigureerd voor optimale prestaties en klaar voor inference uitvoering.

Het meest significante voordeel voor de ontwikkelaar is dat het platform geen hardware setup aan de gebruiker-zijde vereist. De Jupyter Notebook's browser-gebaseerde ontwikkelomgeving stelt ontwikkelaars in staat om code vanuit hun browser te draaien en resultaten direct te visualiseren. Dit laat hen computer vision oplossingen prototypen in Intel's cloud omgeving en hun code zien draaien op elke combinatie van beschikbare hardwarebronnen.
Er zijn drie hoofdvoordelen aan deze cloud-gebaseerde aanbieding. Ten eerste, het adresziet het probleem van hardware keuzeparalyse. Ontwikkelaars kunnen AI applicaties remote draaien op een breed scala aan hardware om te bepalen welke het beste is voor hun oplossing op basis van factoren zoals inference uitvoeringstijd, stroomverbruik en kosten.
Ten tweede biedt het direct remote toegang tot de nieuwste Intel edge hardware. Aan de software kant adresziet het het probleem van verouderde software te moeten hanteren, omdat het direct toegang biedt tot de nieuwste versie van Intel Distribution of OpenVINO toolkit en compatibele edge hardware.
En ten derde biedt het toegang tot applicatie-specifieke prestatiebenchmarks in een makkelijk-te-vergelijken, side-by-side formaat.
(Een tutorial over het draaien van objectdetectiemodellen met Intel DevCloud for the Edge is hier beschikbaar.)
Bouw een model in de cloud, zie wat er live gebeurt
Een andere benadering is om data in een cloud platform te voeden om trainingmodellen te visualiseren en te creëren en ze op embedded apparaten te deployen. Edge Impulse doet precies dat, door een cloud-gebaseerde ontwikkelomgeving aan te bieden die erop gericht is om het simpel te maken om machine learning op edge apparaten toe te voegen zonder een Ph.D. in machine learning te vereisen, volgens het bedrijf.
Het platform stelt gebruikers in staat om beelddata geïmporteerd uit het veld te importeren, snel classifiers te bouwen om die data te interpreteren, en modellen terug te deployen naar productie low-power apparaten. Een sleutel tot het Edge Impulse web platform is de mogelijkheid om alle verkregen data te bekijken en te labelen, pre-processing blokken te creëren om data te augmenteren en transformeren, de beelddataset te visualiseren, en modellen te classificeren en valideren op trainingdata rechtstreeks vanuit de gebruikersinterface.
Omdat het best lastig kan zijn om een computer vision model vanaf nul te bouwen, gebruikt Edge Impulse een proces van transfer learning om het makkelijker en sneller te maken om modellen te trainen. Dit houdt in dat men op een goed-getraind model "piggybacked" en alleen de bovenste lagen van een neuraal netwerk herziet, wat leidt tot veel betrouwbaardere modellen die in een fractie van de tijd trainen en werken met aanzienlijk kleinere datasets. Met het model ontworpen, getraind en geverifieerd, is het mogelijk om dit model terug naar het apparaat te deployen. Het model kan dan op het apparaat draaien zonder internetverbinding, met al de inherentie voordelen zoals het minimaliseren van latentie, en draait met minimum stroomverbruik. Het complete model wordt verpakt met pre-processing stappen, neurale netwerk gewichten en classificatiecode in een enkele C++ bibliotheek die in de embedded software geïncludeerd kan worden.

Naar een hoger abstractieniveau
Een andere benadering die vendors aanbieden is om ontwikkeltijd te verminderen door module-gebaseerde systemen aan te bieden en ontwerp op een hoger abstractieniveau mogelijk te maken. Xilinx zei dat de nieuwe systems-on-module (SOMs) benadering tot negen maanden van de ontwikkeltijd voor visiesystemen kan afknippen, door de stijgende complexiteit in vision AI aan te pakken alsook uitdagingen voor het implementeren van AI aan de edge.
Xilinx kondigde recent het eerste product in zijn nieuwe portfolio van SOMs aan: de Kria K26 SOM, specifiek gericht op vision AI applicaties in slimme steden en slimme fabrieken, samen met een out-of-the-box klare, laagprijs development kit, de Kria KV260 AI vision starter kit.
Chetan Khona, director of industrial, vision and healthcare bij Xilinx, zei bij de persbriefing voor de lancering van de nieuwe module-familie: "Production-ready systemen zijn belangrijk voor snelle implementatie [van embedded vision AI]. Klanten kunnen tot negen maanden ontwikkeltijd besparen door een module-gebaseerd ontwerp te gebruiken in plaats van een device-gebaseerd ontwerp." Hij voegde toe dat met de starter kit gebruikers binnen een uur aan de slag kunnen, "zonder FPGA ervaring nodig." Gebruikers sluiten de camera, kabels en monitor aan, steken de geprogrammeerde microSD kaart in en schakelen het bord aan, en kunnen dan een versnelde applicatie van hun keuze selecteren en draaien.
De Kria SOM portfolio koppelt het hardware en software platform met production-ready vision-geaccelererde applicaties. Deze turnkey applicaties elimineren al het FPGA hardware ontwerpwerk; software ontwikkelaars hoeven alleen hun custom AI modellen en applicatiecode te integreren, en optioneel de vision pipeline te wijzigen – met bekende ontwerpomgevingen zoals TensorFlow, PyTorch of Caffe frameworks alsook C, C++, OpenCL en Python programmeertalen.

De Kria SOMs maken ook customizing en optimalisatie mogelijk voor embedded ontwikkelaars met ondersteuning voor standaard Yocto-gebaseerde PetaLinux. Xilinx zei dat een samenwerking met Canonical ook in progress is om Ubuntu Linux ondersteuning te bieden, de zeer populaire Linux distributie gebruikt door AI ontwikkelaars. Dit biedt wijdverspreide bekendheid bij AI ontwikkelaars en interoperabiliteit met bestaande applicaties. Klanten kunnen in beide omgevingen ontwikkelen en beide benaderingen naar productie nemen. Beide omgevingen komen pre-built met een software infrastructuur en handige utilities.
We hebben drie van de benaderingen benadrukt die vendors nemen om de skills en kennis gap, alsook de implementatietijd, voor embedded vision systeemontwikkeling aan te pakken. De cloud-gebaseerde benaderingen bieden tools die de mogelijkheid om modellen te creëren en te trainen en hardware te evalueren "gedemocratiseren" voor extreme snelle implementatie op embedded apparaten. En de benadering die een module of referentie-ontwerp met een app bibliotheek aanbiedt, stelt AI ontwikkelaars in staat om embedded vision systemen snel te creëren met bestaande tools. Dit zijn allemaal bewegingen naar een andere manier van kijken naar development boards en tools. Ze nemen het mysterie uit embedded vision door op de waardesketen omhoog te gaan, wat het foundationele werk aan de vendors' tools en modules overlaat.
Gerelateerde inhoud:
- Embedded Vision at the Tipping Point
- Five Trends to Watch in Embedded Vision and Edge AI
- Will Machines Ever Fully Understand What They Are Seeing?
- Xilinx SOM targets broader adoption of edge AI and embedded vision
- Embedded Vision Summit: ML perception on tiny FPGAs
- GWM adopts Ambarella AI vision SoC for new SUV
- AImotive shows 98% edge vision efficiency on Nextchip Apache5
- Low power AI vision board lasts 'years' on single battery
- OmniVision shrinks medical image sensor for deeper endoscopy
Ingebed
- Hoe een betrouwbare apparatelijst op te bouwen voor condition-based maintenance succes
- Drew Troyer: Betrouwbaarheid in de apparatuurwaardeketen beheersen – Deel 3
- Drew Troyer verkent apparatuurwaardeketen: Betrouwbaarheidsinzichten – Deel 2
- Drew Troyer: De apparatuurwaardeketen – Deel 1
- Gezondheidszorg Supply Chains Revolutionairen: AI's Volledig Potentieel Ontgrendelen
- Toeleveringsketens Transformeren: Waarde Ontgrendelen via Fulfilment en Digitale Innovatie
- Machine Vision-inspectie: essentiële tools en opkomende technologieën
- Hoe AI wereldwijde supply chains transformeert
- Zal 5G de 2020-visie halen? Inzichten van het National Physical Laboratory
- De waarde van IoT-data ontsluiten: Veilige, inzichtgestuurde strategieën
- Waarom analoge metingen plantprestaties drijven