Gyakran ismételt kérdések#
Általános kérdések#
Mi az egyedi a CMUcam1-ben?#
Hagyományosan gyors számítógépekre van szükség a kameraképek rögzítéséhez és feldolgozásához. A feldolgozás elvégzéséhez szükséges szoftvert is meg kell írni. Emiatt nehéz a látást érzékelőként használni egyszerű rendszerekben.
A CMUcam1 látásrendszer egy gyors, alacsony költségű mikrovezérlőt használ a kameraadatok összes nagysebességű feldolgozásának kezelésére, és szoftvert tartalmaz egyszerű látási feladatok elvégzéséhez. Mivel a felhasználó dönthet úgy, hogy csak alacsony sávszélességű, magas szintű információt ad ki a látásrendszerből, mint például hogy a piros tárgy az X-Y pozícióban van, egy egyszerű processzor, például egy PIC mikrovezérlő is képes beolvasni ezeket az adatokat, és egy kis robotot irányítani olyan feladatokban, mint egy színes labda kergetése. A CMUcam1 látásrendszer lehetővé teszi, hogy figyelmen kívül hagyjuk a kameraillesztés összetettségét, és a látást ugyanúgy használjuk, mint bármely más érzékelőt (pl. szonárt), amelyet gyakran használnak robotrendszerekben.
Mekkora a CMUcam1 képkockasebessége?#
A leggyorsabb képkockasebesség másodpercenként 16,7 képkocka. Ez azt jelenti, hogy a CMUcam1 másodpercenként körülbelül 17-szer tudja megmondani egy tárgy pozícióját. A soros szoftverprotokoll használatával ezt lelassíthatja, ha kívánja.
Milyen átviteli sebességeket támogat a CMUcam1?#
A firmware legújabb verziójától (v1.12) kezdve a CMUcam1 9600, 19200, 38400 vagy 115200 baud átviteli sebességen tud kommunikálni. Az átviteli sebességet a panelen lévő jumper-beállításokkal lehet kiválasztani.
Hogyan frissíthetem a CMUcam1 firmware-ét?#
Ha jelenleg a v1.11 firmware-t használja, nincs ok a frissítésre, hacsak nincs szüksége az alacsonyabb átviteli sebességek támogatására. Az 1.11-es verzió a 38400 és 115200 baudot támogatja. Az 1.12-es verzió támogatja ezeket az átviteli sebességeket, és hozzáadja a 9600 és 19200 baud támogatását. A firmware frissítéséhez újra kell programoznia a processzorchip flash memóriáját. Ha van programozója, letöltheti a jelenlegi verziót a Letöltések oldalunkról, és saját maga újraflashelheti a processzort.
Működik a CMUcam1 kültéren?#
A CMUcam1 kültéren működik, de nem közvetlen napsütésben. Az általunk használt CMOS kamerának nincs jó minőségű IR-szűrője, így a napfény telíti a piros pixeleket, és a kép közvetlen napfényben lényegében monokrómmá válik. Lehetséges külső szűrő hozzáadása a kültéri működés javításához. Van egy rövid összefoglalónk, amely megmutatja, hogyan befolyásolják a megvilágítási viszonyok a CMUcam1-et, amelyet letölthet itt.
Írhatok egyedi kódot a CMUcam1-hez?#
Természetesen. Ehhez kérje tőlünk a firmware forráskódját, rendeljen magának egy C programozási környezetet az Ubicom chiphez, és vágjon bele. Amikor elküldjük Önnek a firmware forráskódját, egy összefoglalót is küldünk arról, hogyan épül fel a kód, valamint információt az általunk használt programozási környezetről.
Mennyi áramot fogyaszt a CMUcam1?#
A teljes rendszer körülbelül 200 milliampert fogyaszt.
Mekkora a CMUcam1 látómezője?#
Ez a CMOS kamerához illesztett lencsétől függ. Ha a CMOS kamerát úgy rendeli meg, ahogy szabványosan árusítják, körülbelül 25 fokos látómezőt fog kapni, ami viszonylag szűk. A CMOS kamera megrendelésekor azonban egyedileg rendelhet szélesebb látószögű lencséket.
Milyen processzort használ a CMUcam1?#
A képfeldolgozó kódunk egy Ubicom 75 MHz-en futó mikrovezérlő-chipjén, az SX28AC-n fut. Ez a chip egy párhuzamos interfészen keresztül olvassa be az összes pixelt a CMOS kamerából, és valós időben végzi az összes feldolgozást. Ezután egy soros port interfészen keresztül közli az eredményeket a mikrovezérlőjével vagy számítógépével.
Milyen CMOS kamerát használ a CMUcam1?#
Egy CMOS kamerát használunk, amely az OmniVision OV6620 CMOS kameráját használja egy chipen. Egy C3088 modellszámú CMOS kamerapanelt használunk, amelyre az érzékelő, egy csatlakozó és egy lencse van felszerelve.
Működik a CMUcam1 más CMOS kamerákkal?#
Nem. Jelenleg a hardver- és szoftverrendszert kifejezetten az OmniVision OV6620 CMOS kamerával való működésre tervezték. A rendszert teljesen újra kellene tervezni ahhoz, hogy egy másik kamerával működjön.
Van olyan hely, ahol választ találhatok a további kérdéseimre?#
Igen. Ezen az oldalon van néhány információ a technikaibb kérdésekről.
Hol tudhatok meg többet a gépi látásról általában?#
A CMUcam1 elvégzi azt az egyszerű gépi látási feladatot, amelynek elvégzésére tervezték, egy kicsi, olcsó csomagban. Azonban az az általános gépi látási probléma, hogy tetszőleges tárgyakat próbáljunk felismerni tetszőleges körülmények között, továbbra is nagyon aktív kutatási téma, és nagyon távol áll attól, hogy megoldott problémának lehessen tekinteni.
Ha többet szeretne megtudni a gépi látásról, érdemes kipróbálnia ezeket a hivatkozásokat:
Technikai kérdések#
Mi a demó mód által bekapcsoláskor végrehajtott pontos lépéssorozat?#
Itt van a pontos sorozat, amelyet a demó mód végrehajt bekapcsoláskor:
Állítsa vissza a kamerát.
Várjon 5 másodpercet, amíg a kameraparaméterek automatikus beállítása stabilizálódik.
Küldje el a kameraregiszter-karakterláncot:
CR 18 32 19 32, amely a YCrCb módot választja ki, és kikapcsolja az automatikus erősítést.Hajtsa végre a
TWparancsot.
Ezt követően a kamera elkezd egy szervót a TW parancs által észlelt szín középső tömege felé mozgatni.
Mi a „TW” parancs által végrehajtott pontos lépéssorozat?#
Itt van a pontos sorozat, amelyet a TW parancs végrehajt:
Zsugorítsa az ablakot az aktuális ablak méretének 1/4-ére (minden dimenzióban) egy új ablakká, amely az aktuális ablak közepén helyezkedik el.
Hívja meg a get mean parancsot.
Állítsa vissza az ablakot a teljes képméretre.
Állítsa be minden színcsatorna maximális és minimális értékét az adott csatorna átlagára +/- 30-ra.
Ezt követően a kamera elkezdi a C, M vagy N típusú csomagok streamelését.
Milyen körülmények között gyullad fel a követési LED, amikor az automatikus mód engedélyezve van?#
A LED akkor gyullad fel, ha a visszaadott pixel_count >= 2. A visszaadott pixel_count = (actual_pixel_count + 4) / 8.
Ha a CMOS kamera felbontása 352 x 288 pixel, miért csak 80 x 143 a CMUcam1 felbontása?#
A kérdés itt az, hogyan működnek a színes digitális kamerák. Minden digitális színes kamerában (még a nagyon drágákban is - kivéve néhányat, amelyek valamilyen nagyon fejlett technológián alapulnak) csak egy színcsatorna-mérést kap pixelenként, ezt hívják mozaikszűrésnek. Itt van egy szép diagram, amely segít ezt elmagyarázni:

(A diagramot a Foveon, Inc. biztosította)
Tehát látható, hogy a pixeleket úgy lehet elképzelni, mint amelyek négyesével vannak elrendezve, ahol csoportonként két G mérés, valamint egy R és egy B mérés van. Ha az egyik G mérést eldobja (amit meg is teszünk), látható, hogy egy 352x288-as kamera valós felbontása közelebb van a 176x144-hez. A kamerát félfelbontású módban futtatjuk, amely vízszintesen minden második 2x2-es blokkot átugrik, ami 88x144-et ad. A processzor memóriakorlátai miatt vízszintesen 8 oszlopot és függőlegesen egy sort eldobunk, amely egy tesztmintát tartalmaz, ami 80x143-at ad végső felbontásként.
Csak tájékoztatásul: a szabványos digitális kamerák összetett interpolációs technikákat használnak, hogy megpróbálják kitölteni a hiányzó színértékeket minden pixelnél, és valami olyat adjanak, ami egy kicsit közelebb áll az érzékelő teljes felbontásához.
Hogyan tudom pontosan élesre állítani a CMUcam1-et?#
Természetesen az élesre állítás legjobb módja, ha a grafikus felület használatával képkocka-kiírásokat készít. Előfordulhat, hogy nincs kéznél számítógép, vagy hogy egy BotBall CMUcam1-et használ, amelynek a beépített 9600 baudos sebességén nincs elegendő felbontása ahhoz, hogy ez jól működjön.
Ebben az esetben két alternatíva van. Először is megpróbálhatja megszámolni a meneteket. A lencse nincs teljesen becsavarva a maximális élesség mellett. Inkább egy körülbelül 1 milliméteres résnyi menet látszik. A menetek számát tekintve ez körülbelül 2 látszó menet a lencse és a lencsefoglalat közötti résben.
A második alternatíva azon az ötleten alapul, hogy amikor egy kép éles, a sötétek a legsötétebbek, a világosak pedig a legvilágosabbak. Más szóval, amikor a kontraszt a legnagyobb. Amikor a kép életlenné válik, akkor a szélsőértékek elhalványulnak az intenzitások egyenletesebb eloszlása felé. Tehát, ha elindítja a streaming módot, majd meghívja a GM (Get Mean) parancsot, valós időben tud élesre állítani. Nézze a piros szórást. Ahogy élesen fókuszál egy nagy kontrasztú tárgyra (mint egy sok írással teli papírlap) a kívánt távolságban, észrevehető csúcs lesz a piros szórásban, amikor a legélesebben van fókuszálva. Vegye figyelembe, hogy ez az élesre állítási megközelítés megköveteli, hogy a kamera és a célpont meglehetősen szilárdan legyen rögzítve, miközben a lencsét forgatja.