Cum să proiectați și să implementați rapid sisteme inteligente de vedere automatizată

By Jeff Shepard

Contributed By DigiKey's North American Editors

Nevoia de vedere automatizată este în creștere într-o varietate de aplicații, inclusiv în domeniul securității, al camerelor de luat vederi în trafic și în orașe, al analizei comerțului cu amănuntul, al inspecției automate, al controlului proceselor și al roboticii ghidate prin vedere. Implementarea sistemelor de vedere automatizată este complexă și necesită integrarea unor tehnologii și subsisteme diverse, inclusiv hardware de înaltă performanță și software avansat de inteligență artificială/învățare automată (AI/ML). Aceasta începe cu optimizarea tehnologiei de captură video și a intrării/ieșirii de vedere pentru a satisface nevoile aplicației și se extinde la mai multe canale de procesare a imaginilor pentru o conectivitate eficientă. În ultimă instanță, aceasta depinde de capacitatea sistemului de vedere încorporat de a efectua analize bazate pe vedere în timp real, utilizând hardware de înaltă performanță, cum ar fi rețelele de porți programabile în câmp (FPGA), sistemele pe module (SOM), sistemele pe cipuri (SoC) și chiar sistemele cu mai multe procesoare pe cipuri (MPSoC) pentru a rula software-ul necesar pentru procesarea și recunoașterea imaginilor AI/ML. Acesta poate fi un proces complex, costisitor și care consumă timp, expus la numeroase oportunități de depășire a costurilor și de întârziere a programului.

În loc să înceapă de la zero, proiectanții pot utiliza o platformă de dezvoltare de înaltă performanță, bine organizată, care accelerează timpul de lansare pe piață, controlează costurile și reduce riscurile de dezvoltare, susținând în același timp un grad ridicat de flexibilitate și performanță a aplicațiilor. O platformă de dezvoltare bazată pe SOM poate oferi un mediu hardware și software integrat, permițând dezvoltatorilor să se concentreze pe personalizarea aplicațiilor și să economisească până la nouă luni din timpul de dezvoltare. Pe lângă mediul de dezvoltare, aceeași arhitectură SOM este disponibilă în configurații optimizate pentru producție pentru mediile comerciale și industriale, îmbunătățind fiabilitatea și calitatea aplicațiilor, reducând și mai mult riscurile și accelerând timpul de lansare pe piață.

Acest articol începe prin trecerea în revistă a provocărilor asociate cu dezvoltarea sistemelor de vedere automatizată de înaltă performanță, apoi prezintă mediul de dezvoltare cuprinzător oferit de kitul de inițiere Kria KV260 vision AI de la AMD Xilinx și se încheie cu exemple de SOM-uri pregătite pentru producție bazate pe platforma Kira 26, concepute pentru a fi conectate la o placă-suport cu periferice specifice soluției.

Începe cu optimizarea tipurilor de date

Necesitățile algoritmilor de învățare profundă evoluează. Nu toate aplicațiile au nevoie de calcule de mare precizie. Se utilizează tipuri de date de precizie mai mică, cum ar fi INT8, sau formate de date personalizate. Sistemele bazate pe GPU pot întâmpina dificultăți în încercarea de a modifica arhitecturi optimizate pentru date de mare precizie pentru a se adapta eficient la formate de date de precizie mai mică. SOM Kria K26 este reconfigurabil, ceea ce îi permite să accepte o gamă largă de tipuri de date, de la FP32 la INT8 și altele. Capacitatea de reconfigurare duce, de asemenea, la un consum general de energie mai mic. De exemplu, operațiile optimizate pentru INT8 consumă energie cu un ordin de magnitudine mai mic în comparație cu o operație FP32 (Figura 1).

Imaginea energiei necesare pentru operațiile INT8 în comparație cu operațiile FP32Figura 1: este nevoie de energie cu un ordin de magnitudine mai mic pentru operațiile INT8 (8b Add) în comparație cu operațiile FP32 (32b Add). (Sursa imaginii: AMD Xilinx)

Arhitectură optimă pentru un consum minim de energie

Proiectele implementate pe baza unei arhitecturi GPU sau CPU cu nuclee multiple pot fi consumatoare mari de energie, pe baza modelelor tipice de utilizare a energiei:

  • 30% pentru nuclee
  • 30% pentru memoria internă (L1, L2, L3)
  • 40% pentru memoria externă (cum ar fi DDR)

Accesările frecvente ale memoriei DDR ineficiente sunt necesare pentru ca GPU-urile să susțină programabilitatea și pot reprezenta un blocaj pentru cererile de calcul cu lățime de bandă mare. Arhitectura Zynq MPSoC utilizată în SOM Kria K26 acceptă dezvoltarea de aplicații cu acces redus sau inexistent la memoria externă. De exemplu, într-o aplicație tipică pentru automobile, comunicarea dintre GPU și diverse module necesită accesări multiple ale memoriei DDR externe, în timp ce soluția bazată pe Zynq MPSoC încorporează un canal conceput pentru a evita majoritatea accesărilor DDR (Figura 2).

Diagrama unui SOC tipic față de AMD Xilinx Zynq MPSoCFigura 2: în această aplicație tipică pentru automobile, GPU-ul necesită mai multe accesări ale DDR pentru comunicarea între diferitele module (stânga), în timp ce arhitectura cu canal a Zynq MPSoC (dreapta) evită majoritatea accesărilor DDR. (Sursa imaginii: AMD Xilinx)

Curățarea datelor valorifică avantajele

Performanța rețelelor neuronale pe SOM K26 poate fi îmbunătățită cu ajutorul unui instrument de optimizare AI care permite optimizarea și curățarea datelor. Este foarte obișnuit ca rețelele neuronale să fie supra-parametrizate, ceea ce duce la niveluri ridicate de redundanță care pot fi optimizate prin utilizarea curățării datelor și comprimarea modelelor. Utilizarea instrumentului AI Optimizer de la Xilinx poate duce la o reducere de 50 de ori a complexității modelului, cu un impact nominal asupra acurateței modelului. De exemplu, un detector cu o singură acțiune (SSD) plus o arhitectură de rețea neuronală convoluțională VGG (CNN) cu 117 Giga Operațiuni (Gops) a fost rafinat prin 11 iterații de curățare a datelor cu ajutorul AI Optimizer. Înainte de optimizare, modelul rula 18 cadre pe secundă (FPS) pe un Zynq UltraScale+ MPSoC. După 11 iterații -a 12-a rulare a modelului - complexitatea a fost redusă de la 117 Gops la 11,6 Gops (10X), performanța a crescut de la 18 la 103 FPS (5X), iar acuratețea a scăzut de la 61,55 precizie medie (mAP) pentru detectarea obiectelor la 60,4 mAP (cu doar 1% mai mică) (Figura 3).

Graficul avantajului de curățare a datelorFigura 3: după un număr relativ mic de iterații, curățarea datelor poate reduce complexitatea modelului (Gop) de 10 ori și poate îmbunătăți performanța (FPS) de 5 ori, cu o reducere de numai 1% a acurateței (mAP). (Sursa imaginii: AMD Xilinx)

Exemplu de aplicație din lumea reală

O aplicație de învățare automatizată pentru detectarea și recunoașterea plăcuțelor de înmatriculare ale automobilelor, denumită și recunoaștere automată a plăcuțelor de înmatriculare (ANPR), a fost dezvoltată pe baza unui software de analiză a vederii de la Uncanny Vision. ANPR este utilizat în sistemele automate de taxare, monitorizarea autostrăzilor, accesul securizat la porți și parcări și în alte aplicații. Această aplicație ANPR include un canal bazat pe inteligență artificială care decodifică înregistrarea video și preprocesează imaginea, urmată de detectarea ML și recunoașterea caracterelor OCR (Figura 4).

Diagrama fluxului tipic de procesare a imaginilor pentru o aplicație ANPR bazată pe inteligență artificială (faceți clic pentru a mări imaginea)Figura 4: fluxul tipic de procesare a imaginilor pentru o aplicație ANPR bazată pe inteligență artificială. (Sursa imaginii: AMD Xilinx)

Punerea în aplicare a ANPR necesită unul sau mai multe fluxuri codificate în protocolul de redare în timp real (RTSP) H.264 sau H.265, care sunt decodificate sau necomprimate. Cadrele video decodificate sunt scalate, decupate, convertite în spațiul de culoare și normalizate (preprocesate), apoi trimise algoritmului de detecție ML. Implementările ANPR de înaltă performanță necesită un canal AI în mai multe etape. Prima etapă detectează și localizează vehiculul în imagine, creând regiunea de interes (ROI). În același timp, alți algoritmi optimizează calitatea imaginii pentru utilizarea ulterioară de către algoritmul de recunoaștere a caracterelor OCR și urmăresc mișcarea vehiculului pe mai multe cadre. Regiunea de interes a vehiculului este în continuare decupată pentru a genera regiunea de interes a plăcuței de înmatriculare, procesată de algoritmul OCR pentru a determina caracterele de pe plăcuța de înmatriculare. În comparație cu alte SOM-uri comerciale bazate pe GPU sau CPU, aplicația ANPR de la Uncanny Vision a funcționat de 2-3 ori mai rapid pe SOM Kira KV260, costând mai puțin de 100 de dolari pentru fiecare flux RTSP.

Mediu de dezvoltare a vederii inteligente

Proiectanții de aplicații de vedere inteligentă, cum ar fi camerele de supraveghere a traficului și a orașelor, camerele de analiză a comerțului cu amănuntul, de securitate, pentru automatizarea industrială și robotică, pot utiliza mediul de dezvoltare Kria K26 SOM AI Starter. Acest mediu este construit cu ajutorul arhitecturii Zynq® UltraScale+™ MPSoC și dispune de o bibliotecă din ce în ce mai mare de pachete de software cu aplicații organizate (Figura 5). SOM-ul AI Starter include un procesor Arm Cortex-A53 quad-core, peste 250 de mii de celule logice și un codec video H.264/265. De asemenea, SOM are 4 GB de memorie DDR4, 245 de intrări/ieșiri și 1,4 tera-ops de calcul AI pentru a susține crearea de aplicații AI de vedere de înaltă performanță care oferă o performanță de peste 3 ori mai mare cu latență și putere mai mici în comparație cu alte abordări hardware. Aplicațiile predefinite permit rularea proiectelor inițiale în mai puțin de o oră.

Imagine a kitului AMD Xilinx Kria KV260 vision AIFigura 5: kitul de inițiere Kria KV260 vision AI este un mediu de dezvoltare complet pentru aplicații de vedere automatizată. (Sursa imaginii: AMD Xilinx)

Pentru a ajuta la demararea procesului de dezvoltare folosind SOM Kria K26, AMD Xilinx oferă kitul de inițiere KV260 vision AI, care include un adaptor de alimentare, un cablu Ethernet, un card microSD, un cablu USB, un cablu HDMI și un modul de cameră (Figura 6). Dacă nu este necesar întregul kit de inițiere, dezvoltatorii pot achiziționa pur și simplu adaptorul de alimentare opțional pentru a începe utilizarea SOM Kira K26.

Imagine a kitului de inițiere AMD Xilinx KV260 vision AIFigura 6: kitul de inițiere KV260 vision AI include: (rândul de sus, de la stânga la dreapta) sursă de alimentare, cablu Ethernet, card microSD și (rândul de jos, de la stânga la dreapta) cablu USB, cablu HDMI, modul de cameră. (Imagine: AMD Xilinx)

Un alt factor care accelerează dezvoltarea este gama cuprinzătoare de caracteristici, inclusiv numeroase intrări/ieșiri de 1,8 V, 3,3 V cu un singur capăt și diferențiale cu patru emițătoare-receptoare de 6 Gb/s și patru emițătoare-receptoare de 12,5 Gb/s. Aceste caracteristici permit dezvoltarea de aplicații cu un număr mai mare de senzori de imagine per SOM și multe variante de interfețe pentru senzori, cum ar fi MIPI, LVDS, SLVS și SLVS-EC, care nu sunt întotdeauna acceptate de produsele standard specifice aplicațiilor (ASSP) sau de GPU-uri. De asemenea, dezvoltatorii pot implementa DisplayPort, HDMI, PCIe, USB2.0/3.0 și standarde definite de utilizator cu ajutorul logicii programabile încorporate.

În cele din urmă, dezvoltarea aplicațiilor de inteligență artificială s-a simplificat și a devenit mai accesibilă prin cuplarea capacităților hardware extinse și a mediului software al SOM K26 cu aplicații de vedere gata de producție. Aceste aplicații de vedere pot fi implementate fără a fi necesară proiectarea hardware FPGA și permit dezvoltatorilor de software să integreze rapid modelele de inteligență artificială personalizate și codul aplicației și chiar să modifice canalul de vedere. Platforma de dezvoltare software unificată Vitis și bibliotecile de la Xilinx acceptă medii de proiectare comune, cum ar fi TensorFlow, Pytorch și cadrele Café, precum și mai multe limbaje de programare, inclusiv C, C++, OpenCL™ și Python. Există, de asemenea, un magazin de aplicații încorporate pentru aplicațiile de margine care utilizează SOM-uri Kria de la Xilinx și de la partenerii săi din ecosistem. Ofertele Xilinx sunt gratuite și open source și includ urmărirea inteligentă a camerei și detectarea feței, procesarea limbajului natural cu vedere inteligentă și multe altele.

SOM-uri Kira 26 pentru producție optimizată

După finalizarea procesului de dezvoltare, sunt disponibile versiuni pregătite pentru producție ale SOM K26 concepute pentru a fi conectate la o placă-suport cu periferice specifice soluției, care pot accelera tranziția către producție (Figura 7). SOM K26 de bază este o unitate de calitate comercială cu o temperatură nominală de joncțiune de la 0 °C la +85 °C, așa cum este măsurată de senzorul de temperatură intern. Este disponibilă și o versiune de calitate industrială a SOM K26, care poate funcționa la temperaturi cuprinse între -40 °C și +100 °C.

Piața industrială solicită o durată de funcționare lungă în medii dificile. SOM-ul Kria de calitate industrială este proiectat pentru zece ani de funcționare la o temperatură de joncțiune de 100 °C și o umiditate relativă de 80% și pentru a rezista la șocuri de până la 40 g și la vibrații cu o rădăcină medie pătratică de 5 g (RMS). De asemenea, are o disponibilitate minimă de producție de zece ani pentru a susține ciclurile de viață lungi ale produselor.

Imaginea SOM-urilor Xilinx Kira 26 optimizate pentru producțieFigura 7: SOM-urile Kira 26 optimizate pentru producție, destinate mediilor industriale și comerciale, sunt concepute pentru a fi conectate la o placă-suport cu periferice specifice soluției. (Imagine: DigiKey)

Rezumat

Proiectanții aplicațiilor de vedere automatizată, cum ar fi camerele de securitate, de trafic și pentru orașe, camerele de analiză a comerțului cu amănuntul, de inspecție automatizată, de control al proceselor și robotică ghidată prin vedere pot utiliza kitul de inițiere SOM Kria K26 AI pentru a accelera timpul de lansare pe piață, a ajuta la controlul costurilor și a reduce riscurile de dezvoltare. Această platformă de dezvoltare bazată pe SOM este un mediu hardware și software integrat, ce permite dezvoltatorilor să se concentreze pe personalizarea aplicațiilor și să economisească până la nouă luni din timpul de dezvoltare. Aceeași arhitectură SOM este disponibilă în configurații optimizate pentru producție pentru mediile comerciale și industriale, ceea ce accelerează și mai mult timpul de lansare pe piață. Versiunea industrială are o disponibilitate minimă de producție de 10 ani pentru a susține ciclurile de viață lungi ale produselor.

DigiKey logo

Disclaimer: The opinions, beliefs, and viewpoints expressed by the various authors and/or forum participants on this website do not necessarily reflect the opinions, beliefs, and viewpoints of DigiKey or official policies of DigiKey.

About this author

Image of Jeff Shepard

Jeff Shepard

Jeff scrie despre electronica de putere, componentele electronice și alte subiecte tehnologice de peste 30 de ani. A început să scrie despre electronica de putere în calitate de Editor principal la EETimes. Ulterior, a fondat Powertechniques, o revistă pentru proiectarea electronicii de putere, iar mai târziu a fondat Darnell Group, o firmă globală de cercetare și publicare în domeniul electronicii de putere. Printre activitățile sale, Darnell Group a publicat PowerPulse.net, care a furnizat știri zilnice pentru comunitatea globală a pasionaților de inginerie pentru electronica de putere. El este autorul unei cărți despre sursele de alimentare cu comutație, intitulată „Power Supplies”, publicată de divizia Reston a Prentice Hall.

De asemenea, Jeff a co-fondat Jeta Power Systems, un producător de surse de alimentare cu comutație de mare putere, care a fost achiziționat de Computer Products. Jeff este, de asemenea, un inventator, numele său figurând pe 17 brevete americane în domeniul valorificării energiei termice și al metamaterialelor optice și este o sursă în industrie și un prezentator frecvent în ceea ce privește tendințele globale în domeniul electronicii de putere. Are diplomă de master în metode cantitative și matematică de la Universitatea din California.

About this publisher

DigiKey's North American Editors