Ce este viziunea bazată pe cadru?
Viziunea bazată pe cadru surprinde scena ca imagini complete la intervale regulate, de exemplu 30, 60 sau 120 cadre pe secundă. Fiecare cadru conține informații spațiale dense, ceea ce face ca camerele convenționale să fie potrivite pentru recunoașterea obiectelor, analiza culorilor, inspecția, cartografierea și ecosistemul software mare construit în jurul tensorilor de imagine.
Compensația este că fiecare cadru mută o imagine completă prin conductă, indiferent dacă scena s-a schimbat sau nu. Pentru o buclă de decizie rapidă, timpul de expunere, perioada de cadru, citirea senzorului, transportul, conversia imaginii și inferența, toate contribuie la latența de la capăt la capăt. O rată mare a cadrelor reduce intervalul de eșantionare, dar de obicei crește lățimea de bandă, traficul de memorie, puterea și sarcina termică.
Ce este viziunea bazată pe evenimente?
Viziunea bazată pe evenimente folosește un senzor de imagine bazat pe evenimente ai cărui pixeli răspund asincron la schimbările de luminozitate. În loc să furnizeze o imagine dreptunghiulară la o cadență fixă, senzorul produce un flux care conține coordonatele pixelilor, polaritatea și marcaje temporale precise. Prin urmare, regiunile statice generează date puține sau deloc, în timp ce marginile în mișcare pot produce evenimente cu rezoluție temporală foarte fină.
Această reprezentare este utilă atunci când sincronizarea mișcării contează mai mult decât primirea în mod repetat a unei imagini complete. Poate suporta urmărirea cu latență scăzută, robotică de mare viteză și tranziții dificile de iluminare, dar fluxul de evenimente nu este o fotografie normală. Algoritmii, instrumentele de vizualizare, înregistrare și validare trebuie proiectate în jurul modelului de date.
Modul în care un senzor de imagine bazat pe evenimente modifică calea datelor
Un sistem de referință util expune calea completă de la achiziția senzorului prin filtrare și procesare până la ieșirea aplicației. Instrumentați aceste limite astfel încât revendicările privind latența și rata de date să poată fi evaluate cap la cap.
Diferența arhitecturală cheie nu este doar „camera mai rapidă versus camera mai lentă”. O conductă de viziune convențională începe adesea cu un tampon de imagine complet. O conductă bazată pe evenimente poate începe să proceseze evenimente individuale sau ferestre mici de evenimente imediat ce sosesc. Acest lucru permite filtrarea, alinierea marcajului de timp, logica regiunii de interes și funcțiile de mișcare să ruleze aproape de senzor fără a aștepta un cadru complet.
Cu toate acestea, datele despre evenimente pot deveni dense în scenele cu textura ridicată sau sub vibrații și pâlpâire. Prin urmare, proiectarea sistemului ar trebui să măsoare rata de evenimente în cel mai rău caz, utilizarea interfeței și lățimea de bandă a memoriei, mai degrabă decât să presupună că detectarea evenimentelor înseamnă întotdeauna lățime de bandă redusă.
Viziunea bazată pe evenimente versus viziunea bazată pe cadru
| Dimensiunea | Viziune bazată pe cadru | Viziune bazată pe evenimente |
|---|---|---|
| Ieșire senzor | Imagini dense la intervale fixe | Evenimente de schimbare a luminozității asincrone |
| Informații despre timp | Limitat de expunere și de cadența cadrului | Marcaje temporale fine asociate cu evenimente individuale |
| Date statice ale scenei | Cadrele complete continuă să sosească | Activitate mică din regiuni neschimbate |
| Context spațial / de culoare | Puternic; intensitate absolută a imaginii și imagini color mature | indirect; fluxul de evenimente descrie mai degrabă schimbări decât o imagine convențională |
| Mișcare de mare viteză | Necesită expunere și rată de cadre adecvate | Este potrivit pentru schimbări temporale rapide |
| Ecosistem software | CV foarte matur și instrumente de deep-learning | Algoritmi, reprezentări și seturi de date mai specializați |
| Cel mai potrivit | Imagini generale, recunoaștere, textură și imagini care pot fi citite de om | Dinamica rapidă, caracteristicile temporale și percepția mișcării cu latență scăzută |
Latență: măsurați senzorul până la decizie, nu o singură componentă
Camerele pentru evenimente sunt adesea selectate pentru percepția cu latență scăzută, dar rezoluția marcajului de timp al senzorului nu este aceeași cu latența aplicației. O măsură de inginerie utilă este timpul de la o schimbare în lumea reală până la decizia care apare pe interfața sistemului. Această cale include răspunsul senzorului, transportul, tamponarea, preprocesarea, inferența sau urmărirea, programarea software-ului și comunicarea de ieșire.
Aceeași regulă se aplică și pentru o cameră cadru. O conductă bine concepută cu frecvență ridicată de cadre cu căi de memorie directe poate depăși o conductă de evenimente slab integrată. Prin urmare, arhitectura ar trebui să fie evaluată cu mișcare reprezentativă, iluminare și algoritmi.
Software de viziune bazat pe evenimente și considerații despre SDK
O stivă de software de viziune bazată pe evenimente necesită, de obicei, configurarea dispozitivului, decodarea evenimentelor, gestionarea marcajului de timp, filtrare, vizualizare, înregistrare și reluare. O viziune utilă bazată pe evenimente SDK ar trebui să faciliteze, de asemenea, sincronizarea declanșatoarelor externe și a altor senzori, inspectarea ratelor evenimentelor și reproducerea unei secvențe capturate în timpul dezvoltării algoritmului.
Pentru sistemele de producție, software-ul trebuie să se extindă dincolo de un desktop SDK. Echipele ar trebui să definească modul în care evenimentele sunt mutate în resursele FPGA, MCU, MPU sau NPU; cum este stocată calibrarea; cum este sincronizată timpul; și cum pot fi redate jurnalele de câmp. Dacă un algoritm convertește evenimentele în cadre acumulate, fereastra de acumulare devine un compromis explicit de latență versus informații.
Acolo unde viziunea bazată pe evenimente este utilă
Aplicațiile tipice de viziune bazate pe evenimente includ urmărirea de mare viteză a țintei, manipularea robotică, fluxul optic, analiza vibrațiilor sau a mișcării, inspecția industrială rapidă și percepția autonomă în scenele cu schimbări mari de luminozitate. Cele mai puternice cazuri de utilizare sunt de obicei cele în care structura temporală fină îmbunătățește direct decizia, mai degrabă decât înlocuirea unei camere convenționale.
Viziune bazată pe evenimente pentru apărare și platforme autonome
În sistemele de apărare, securitate și autonome, detectarea evenimentelor poate fi relevantă pentru indicii de mișcare rapidă, experimente de urmărire, sarcini utile optice cu latență scăzută și cercetarea fuziunii senzorilor. Sistemul mai trebuie să satisfacă cerințele platformei, cum ar fi sincronizarea, interfețele deterministe, proiectarea mediului, înregistrarea, securitatea cibernetică și validarea. Sentirea evenimentelor este o componentă a lanțului misiunii, nu o soluție completă de percepție în sine.
Când o arhitectură de cameră hibridă este mai bună
Multe sisteme practice beneficiază de combinarea modalităților. Cadrele pot oferi context semantic și imagini care pot fi citite de om, în timp ce evenimentele contribuie cu detalii temporale. Senzorii termici, inerțiali sau de distanță pot adăuga robustețe. Fusion este util mai ales atunci când aplicația are nevoie de ambele „ce este?” și „exact când și cum s-a mișcat?”
Pentru sistemele hibride, timpul partajat este esențial. Declanșatoarele hardware, domeniile de marcare temporală și calibrarea trebuie luate în considerare înainte ca algoritmii să fie finalizați.
O arhitectură practică de referință pentru viziune bazată pe evenimente
Un sistem de referință poate plasa filtrare deterministă și lucru de marcare temporală într-un FPGA, inferență AI pe un NPU sau accelerator, servicii de aplicație pe un MPU și supraveghere pe un MCU sau nucleu în timp real. Partiția corectă depinde de rata de evenimente, arhitectura modelului, lățimea de bandă a memoriei și interfețele externe. Al nostru Ghid FPGA vs NPU vs MPU Edge AI explică această împărțire mai detaliat.
Lista de verificare a selecției
- Definiți latența maximă acceptabilă de la senzor la decizie.
- Măsurați viteza de mișcare așteptată, intervalul de iluminare și activitatea scenei în cel mai rău caz.
- Decideți dacă este necesară intensitatea absolută a imaginii, culoarea sau un videoclip care poate fi citit de om.
- Estimați lățimea de bandă și mișcarea memoriei atât pentru scenele tipice, cât și pentru cele mai nefavorabile.
- Confirmați maturitatea algoritmului, setului de date și viziunea bazată pe evenimente SDK.
- Planificați sincronizarea cu sursele de declanșare cadru, termice, inerțiale sau externe.
- Comparați întreaga conductă înainte de a îngheța calculul, placa de bază și proiectarea termică.
Alegeți în jurul observației de care are nevoie aplicația
| Întrebare de aplicație | Abordarea pentru a evalua mai întâi | Ce să testezi |
|---|---|---|
| Este corectă eticheta sau culoarea imprimată? | Imagini bazate pe cadru | Rezoluția, iluminarea, expunerea și acuratețea inspecției |
| Când o margine care se mișcă rapid a traversat o regiune? | Detecție bazată pe evenimente | Calitatea timpului, activitatea scenei, evenimente false și întârziere completă a ieșirii |
| Ce obiect este prezent și cât de precis se mișcă? | Un cadru hibrid și o conductă de evenimente | Calibrare, timp partajat, reprezentare și beneficii de fuziune |
| Va funcționa sistemul cu schimbarea luminii sau vibrațiilor? | Ambii candidați în aceleași condiții de reprezentare | Precizia aplicației, rata evenimentelor sau calitatea cadrului și utilizarea resurselor |
Utilizați aceeași sarcină și scenă atunci când comparați candidații. O vizualizare clară nu este în sine un rezultat al detectării, iar un număr mare de evenimente nu este o dovadă a informațiilor utile. Acordați valoarea de ieșire înainte de a înregistra comparația.
O modalitate practică de a construi bugetul de latență
La 60 cadre pe secundă, intervalul de cadre este de aproximativ 16.7 ms. Conform unui model simplificat în care o schimbare de scenă are loc uniform între eșantioanele instantanee, așteptarea medie până la următoarea probă este de aproximativ 8.3 ms. Expunerea, citirea, transportul și procesarea sunt efecte suplimentare. Această aritmetică descrie un interval de eșantionare; nu este o latență măsurată a camerei.
O conductă de evenimente are, de asemenea, opțiuni de design care adaugă întârziere. Dacă o aplicație așteaptă ca o fereastră de eveniment 5 ms să se închidă înainte de procesare, un eveniment aproape de începutul acelei ferestre poate aștepta aproape 5 ms doar în acea etapă. Marcajele de timp fine ale senzorului nu elimină această opțiune de tamponare. Folosiți aceste exemple pentru a identifica etapele care merită măsurate, nu pentru a pretinde un avantaj fix pentru niciunul dintre senzori.
| Limită | Conductă cadru | Conducta de evenimente |
|---|---|---|
| Observație | Timpul de expunere și eșantionare | Răspunsul la schimbarea luminozității și generarea de marcaj de timp |
| Transport | Buffer-uri de citire, link și gazdă | Buffer-uri de codare pentru evenimente, link și decodor |
| Pregătirea | Conversia imaginii, redimensionarea și pregătirea tensorului | Filtrare, ferestre de timp și construcție de reprezentare |
| Decizie | Algoritm și programare a ieșirilor | Algoritm și programare a ieșirilor |
Măsurați vârsta de ieșire cu o relație validă între ceasul de observare și ceasul rezultat. O ștampilă de timp software la sfârșitul unui apel de citire a camerei nu reprezintă neapărat timpul de expunere. De asemenea, o marca temporală precisă a evenimentului poate aparține unui ceas care nu este încă aliniat cu gazda.
Proiectați o comparație pe care un alt inginer o poate reproduce
- Definiți sarcina, mișcarea țintă, domeniul de iluminare și ieșirea necesară înainte de a selecta setările.
- Optica documentului, câmpul vizual, setările senzorului, versiunile software și calibrarea.
- Înregistrați condiții reprezentative, inclusiv scene dificile, cum ar fi pâlpâirea sau vibrațiile, acolo unde este cazul.
- Evaluați împreună precizia sarcinii, întârzierea ieșirii, rata de date și încărcarea susținută de procesare.
- Păstrați înregistrările și fișierele de configurare, astfel încât modificările algoritmului să poată fi comparate pe aceleași intrări.
Pentru etapa de implementare, nostru software-ul pentru camere bazate pe evenimente și ghidul SDK acoperă reprezentările, înregistrarea și implementarea datelor. Utilizați ghid de sincronizare a timpului la combinarea modalităţilor.
Ce cameră ar trebui să evaluați pentru inspecția calității?
Începeți cu defectul pe care trebuie să îl observați. O componentă lipsă, o etichetă imprimată sau un semn de suprafață pot fi potrivite pentru imagistica de cadru convențională cu optică și iluminare controlate. Când semnalul important este mișcarea rapidă sau momentul precis al unei schimbări, evaluați detectarea evenimentului în raport cu aceeași sarcină.
Notați cea mai mică caracteristică relevantă, viteza obiectului, câmpul vizual, variația luminii și timpul de decizie disponibil. Păstrați variația normală a producției în evaluare: diferite loturi, schimburi, finisaje ale suprafețelor și poziții ale pieselor. Comparați defecte ratate și respinse false, precum și viteza de procesare.
Detectarea evenimentelor este un candidat de testat, nu o cerință pentru fiecare sistem de inspecție. Vezi noastre viziune industrială și soluție de control al calității pentru integrarea cameră-mașină și planificarea pilotului.
Întrebări frecvente privind viziunea bazată pe evenimente
Ce este viziunea bazată pe evenimente?
Viziunea bazată pe evenimente este o abordare de detectare în care pixelii raportează schimbările locale de luminozitate în mod asincron, în loc să aștepte un cadru complet al imaginii. Fiecare eveniment poartă de obicei coordonatele pixelilor, polaritatea și un marcaj de timp, permițând informațiilor legate de mișcare să ajungă la conducta de procesare cu o rezoluție temporală fină.
Care este diferența dintre viziunea bazată pe evenimente și viziunea bazată pe cadru?
Viziunea bazată pe cadru captează imagini complete la intervale fixe, în timp ce viziunea bazată pe evenimente raportează modificările pe măsură ce se întâmplă. Camerele cadru oferă un context spațial și de culoare dens; Senzorii de evenimente pot reduce datele redundante ale scenei statice și pot îmbunătăți sincronizarea pentru mișcarea rapidă. Cea mai bună arhitectură depinde de sarcină, iluminare, stiva de software și latența de decizie necesară.
Ce software sau SDK este necesar pentru viziunea bazată pe evenimente?
Software-ul de viziune bazat pe evenimente trebuie să gestioneze fluxurile de evenimente asincrone, mai degrabă decât doar tensorii de imagine convenționali. Un SDK practic ar trebui să accepte configurarea senzorului, filtrarea evenimentelor, manipularea marcajului de timp, vizualizarea, înregistrarea, redarea, calibrarea, sincronizarea și conversia în reprezentări necesare de urmărire sau conducte ale rețelei neuronale.
Unde se folosește viziunea bazată pe evenimente?
Aplicațiile tipice de viziune bazate pe evenimente includ robotica de mare viteză, urmărirea mișcării, sistemele autonome, monitorizarea industrială și detectarea în cazul în care schimbările rapide ale scenei sau iluminarea dificilă fac ca sincronizarea să fie importantă. De asemenea, poate completa camerele convenționale în sistemele hibride de percepție.
Cum poate fi folosită viziunea bazată pe evenimente în platformele de apărare?
Pentru platforme de apărare și autonome, senzorii de evenimente pot suporta semnale de mișcare cu latență scăzută, urmărire și percepție în intervalul dinamic ridicat sau mișcarea rapidă. Un sistem implementabil necesită în continuare marcarea temporală deterministă, interfețe robuste, fuziunea senzorilor sincronizați, software validat și măsurarea atentă a ratelor de evenimente în cazul cel mai rău.
Un senzor de imagine bazat pe evenimente este întotdeauna o lățime de bandă mai mică?
Nu. Scenele statice pot genera puține date, dar vibrațiile, pâlpâirea sau mișcarea foarte texturată pot crea fluxuri dense de evenimente. Prin urmare, proiectarea interfeței și a memoriei ar trebui să utilizeze rate de evenimente măsurate în cel mai rău caz, mai degrabă decât să presupună că detectarea evenimentelor este întotdeauna o lățime de bandă mică.
Referințe tehnice
- Gallego și colab.: Viziunea bazată pe evenimente — Un sondaj
- Prophesee: streaming de evenimente și acces prin fereastră
Exemplele de sincronizare sunt calcule ilustrative. Afirmațiile privind latența și detectarea la nivel de produs necesită măsurători ale implementării complete.
Evaluați viziunea bazată pe evenimente asupra buclei dvs. de decizie reale.
Partajați ținta, profilul de mișcare, interfețele, mediul și cantitatea pilot. Putem mapa cerința într-un senzor, FPGA și arhitectură de calcul local.
