Întrebări frecvente#
Întrebări generale#
Ce este unic la CMUcam1?#
În mod tradițional, sunt necesare calculatoare rapide pentru a captura și procesa imaginile camerei. De asemenea, este necesar să scrieți software-ul care să efectueze această procesare. Din această cauză, este dificil să folosiți viziunea ca senzor în sisteme simple.
Sistemul de viziune CMUcam1 utilizează un microcontroler rapid și cu cost redus pentru a gestiona toată procesarea de mare viteză a datelor camerei și conține software pentru a efectua sarcini simple de viziune. Deoarece utilizatorul poate alege să emită doar informații de nivel înalt cu lățime de bandă redusă de la sistemul de viziune, cum ar fi obiectul roșu se află la poziția X-Y, este posibil ca un procesor simplu, cum ar fi un microcontroler PIC, să citească aceste date și să dirijeze un robot mic în sarcini precum urmărirea unei mingi colorate. Sistemul de viziune CMUcam1 face posibilă ignorarea complexității interfațării camerei și utilizarea viziunii la fel ca orice alt senzor (de exemplu, sonar) utilizat adesea în sistemele robotice.
Care este rata de cadre a CMUcam1?#
Cea mai rapidă rată de cadre este de 16,7 cadre pe secundă. Aceasta înseamnă că CMUcam1 vă poate spune poziția unui obiect de aproximativ 17 ori pe secundă. Folosind protocolul software serial, puteți încetini acest lucru dacă doriți.
Ce rate baud suportă CMUcam1?#
Începând cu cea mai recentă versiune a firmware-ului (v1.12), CMUcam1 poate comunica la rate de baud de 9600, 19200, 38400 sau 115200. Rata de baud este selectată prin setările jumperilor de pe placă.
Cum îmi actualizez firmware-ul CMUcam1?#
Dacă utilizați în prezent firmware-ul v1.11, nu există niciun motiv să faceți upgrade decât dacă aveți nevoie de suport pentru ratele de baud mai mici. Versiunea 1.11 suportă baud 38400 și 115200. Versiunea 1.12 suportă acele rate de baud și adaugă suport pentru baud 9600 și 19200. Pentru a vă actualiza firmware-ul, va trebui să reprogramați memoria flash din cipul procesorului. Dacă aveți un programator, puteți descărca versiunea curentă de pe pagina noastră Descărcări și să reprogramați procesorul singur.
Funcționează CMUcam1 în aer liber?#
CMUcam1 funcționează în aer liber, dar nu în lumina directă a soarelui. Camera CMOS pe care o folosim nu are un filtru IR de înaltă calitate, astfel încât lumina soarelui saturează pixelii roșii și imaginea devine, în esență, monocromă în lumina directă a soarelui. Este posibil să adăugați un filtru extern pentru a îmbunătăți funcționarea în aer liber. Avem o scurtă descriere care vă arată cum condițiile de iluminare afectează CMUcam1 pe care o puteți descărca aici.
Pot scrie cod personalizat pentru CMUcam1?#
Cu siguranță. Pentru a face acest lucru, cereți-ne codul sursă al firmware-ului, comandați-vă un mediu de programare C pentru cipul Ubicom și apucați-vă de treabă. Când vă trimitem codul sursă al firmware-ului, vă vom trimite, de asemenea, un rezumat al modului în care este structurat codul și informații despre mediul de programare pe care îl folosim.
Câtă energie consumă CMUcam1?#
Sistemul complet consumă aproximativ 200 de miliamperi.
Care este câmpul vizual al CMUcam1?#
Aceasta depinde de obiectivul pe care îl montați pe camera CMOS. Dacă comandați camera CMOS așa cum este vândută standard, veți obține un câmp vizual de aproximativ 25 de grade, care este relativ îngust. Puteți însă comanda personalizat obiective cu unghi mai larg atunci când comandați camera CMOS.
Ce procesor folosește CMUcam1?#
Codul nostru de procesare a imaginii se află pe un cip microcontroler de la Ubicom care rulează la 75 MHz, SX28AC. Acest cip citește toți pixelii de la camera CMOS printr-o interfață paralelă și face toată procesarea în timp real. Apoi comunică rezultatele microcontrolerului sau computerului dvs. printr-o interfață de port serial.
Ce cameră CMOS folosește CMUcam1?#
Folosim o cameră CMOS care utilizează camera CMOS pe un cip OmniVision OV6620. Folosim o placă de cameră CMOS cu numărul de model C3088 pe care sunt montate senzorul, un conector și un obiectiv.
Funcționează CMUcam1 cu alte camere CMOS?#
Nu. În prezent, sistemul hardware și software a fost proiectat să funcționeze special cu camera CMOS OmniVision OV6620. Sistemul ar trebui reproiectat complet pentru a funcționa cu o altă cameră.
Există vreun loc unde pot găsi răspunsuri la întrebările suplimentare pe care le am?#
Da. Avem câteva informații despre întrebări mai tehnice pe această pagină.
Unde pot afla mai multe despre viziunea computerizată în general?#
CMUcam1 efectuează sarcina simplă de viziune computerizată pe care a fost proiectat să o efectueze într-un pachet mic și ieftin. Totuși, problema generală a viziunii computerizate de a încerca să recunoască obiecte arbitrare în condiții arbitrare este încă un subiect de cercetare foarte activ și foarte departe de a fi o problemă rezolvată.
Dacă doriți să aflați mai multe despre viziunea computerizată, ați putea încerca aceste linkuri:
Întrebări tehnice#
Care este secvența exactă de pași efectuată la pornire de modul demo?#
Iată secvența exactă pe care o efectuează modul demonstrativ la pornire:
Resetați camera.
Așteptați 5 secunde pentru ca ajustarea automată a parametrilor camerei să se stabilizeze.
Trimiteți șirul de registru al camerei:
CR 18 32 19 32care selectează modul YCrCb și dezactivează auto gain.Executați comanda
TW.
După care, camera va începe să acționeze un servo către masa centrală a culorii detectate de comanda TW.
Care este secvența exactă de pași efectuată de comanda „TW”?#
Iată secvența exactă pe care o efectuează comanda TW:
Micșorați fereastra la 1/4 din dimensiunea (în fiecare dimensiune) a ferestrei curente, la o fereastră nouă centrată în centrul ferestrei curente.
Apelați get mean.
Restabiliți fereastra la dimensiunea completă a imaginii.
Setați valoarea maximă și minimă pentru fiecare canal de culoare să fie media pentru acel canal +/- 30.
După care, camera va începe să transmită pachete de tip C, M sau N.
În ce condiții se aprinde LED-ul de urmărire când modul automat este activat?#
LED-ul se va aprinde când pixel_count >= 2 returnat. pixel_count = (actual_pixel_count + 4) / 8 returnat.
Dacă camera CMOS are o rezoluție de 352 x 288 pixeli, de ce rezoluția CMUcam1 este doar 80 x 143?#
Problema aici este modul în care funcționează camerele digitale color. În toate camerele digitale color (chiar și în cele foarte scumpe - cu excepția unora bazate pe o tehnologie foarte avansată) obțineți o singură măsurătoare a canalului de culoare per locație de pixel, aceasta se numește filtrare de tip mozaic. Iată o diagramă utilă care ajută la explicarea acestui lucru:

(Diagramă oferită de Foveon, Inc.)
Deci ceea ce puteți vedea este că pixelii pot fi considerați ca fiind aranjați în grupuri de câte patru, unde există două măsurători G și o măsurătoare R și una B per grup. Dacă renunțați la una dintre măsurătorile G (ceea ce facem), vedeți că rezoluția reală a unei camere de 352x288 este mai apropiată de 176x144. Rulăm camera în modul de jumătate de rezoluție, care sare peste fiecare al doilea bloc 2x2 pe orizontală, ceea ce vă oferă 88x144. Din cauza limitărilor de memorie ale procesorului, renunțăm la 8 coloane pe orizontală și un rând pe verticală, care conține un model de test, ceea ce vă oferă 80x143 ca rezoluție finală.
Doar pentru informarea dvs., camerele digitale standard folosesc tehnici complexe de interpolare pentru a încerca să completeze valorile de culoare lipsă la fiecare pixel și să vă ofere ceva puțin mai apropiat de rezoluția completă a senzorului.
Cum pot focaliza cu precizie CMUcam1?#
Desigur, cel mai bun mod de a proceda la focalizare este să faceți descărcări de cadre folosind interfața grafică. Este posibil să nu aveți un computer la îndemână sau să folosiți un BotBall CMUcam1, care nu are rezoluție suficientă la rata sa fixă de baud de 9600 pentru ca acest lucru să funcționeze bine.
În acel caz, există două alternative. În primul rând, puteți încerca să numărați filetele. Lentila nu este înșurubată complet la focalizarea maximă. Mai degrabă, există un spațiu de aproximativ 1 milimetru de filet vizibil. În ceea ce privește numărul de filete, adică aproximativ 2 filete vizibile în spațiul dintre lentilă și montura lentilei.
A doua alternativă se bazează pe ideea că atunci când o imagine este clară, zonele întunecate sunt cele mai întunecate și cele luminoase cele mai luminoase. Cu alte cuvinte, când contrastul este cel mai mare. Când imaginea devine defocalizată, atunci valorile extreme se estompează către o distribuție mai uniformă a intensităților. Așadar, dacă porniți modul de flux continuu și apoi apelați GM (Get Mean), puteți focaliza în timp real. Priviți deviația roșie. Pe măsură ce focalizați clar pe un obiect cu contrast ridicat (cum ar fi o bucată de hârtie cu mult scris pe ea) la distanța dorită, va exista un vârf vizibil în deviația roșie când este cel mai clar focalizat. Rețineți că această abordare a focalizării necesită să aveți camera și ținta destul de ferm fixate în timp ce rotiți lentila.