soodan sivut

arkisto

191 kirjotelmaa.

avainsanat

Erääseen suunnitteilla olevaan puolimieliseen projektiini tarvitaan kaksi tai useampi kameraa mobiiliin härpättimeen stereonäöksi. Lopullinen alusta tulee olemaan Jetson TK1, koska se on töistä jokseenkin tuttu. Vekotin syö mielellään USB-laitteita, mutta myös tommonen CSI-väylä sopii. Pitempään ajattelematta kuulin, että PlayStation Eye -niminen kamera on ainakin puoli-ilmainen ja harrastepiireissä toimivaksi todettu, joten ostin sitten niitä. Kykenevät aika huikeaan vauhtiinkin. Suurena bonuksena kamerat voinee synkronisoida keskenään tarkasti, eli ottamaan kuvia tismalleen samalla hetkellä. Testataan onko tosiaan näin.

Ostin muutaman käytettynä internetin ihmemaailmasta kympin kappalehintaan vielä juuri mitään laitteesta tietämättä. Tuota näköjään käytetään ihan kaupallisestikin konenäköön (siinä pleikkarissa), eli soveltunee tähänkin tarkoitukseen jotenkin. Gentoolla käyttöönotto alkaa siitä, että konffataan kernelistä OV534 OV772x USB Camera Driver -tuki. Kamerassa kun on jokin Omnivision OV534 -pohjainen piiri kuvankäpistelyyn ja saman valmistajan kamerakenno OV772x. Frameratea on guvcviewin mukaan 125 FPS asti 320x240 pikselin resoluutiolla, tai 60 FPS 640x480:lla. Tuo menee kuulemma vähän ylemmäksikin; ehkä softani on vanhaa. Resoluutio ei ole kummoinen, mutta nämä nyt ovat aluksi vain kokeeksi ja kyllä tälläkin asioita konenäkee, ei vain millään erityisellä tarkkuudella. Lopulliseen protoon ehkä sitten jotain kalliita synkattavia global shutter -hökötyksiä USB3-väylään.

Sitten asiaan. Joku muu on löytänyt kameran piirilevyltä paikat, joista saa ulos kaksi oleellista signaalia. VSYNC eli vertikaalinen synkki tuuttaa ulos tarkasti pulssin per frame (varmaan ihan kuvan alussa), ja FSIN on jonkin sortin synkkaustulo tässä kuvapiirissä, ja se liipaisee framen valotuksen aloittamisen. Yhden kameran VSYNCin voi sitten kytkeä toisen FSINiin, ja tämä toinen ei pahastu lainkaan siitä, että sitä ohjaa sekä USB-liitäntä että tuo nasta - liekö kytketty mihinkään, vai juokseeko vapaasti, tiedä häntä. Kamera auki ja johdot sisään.

Sisältä löytyy tavalliseen tapaan yksi piirilevy, jossa kaikki oleellinen on kiinni. Noilla neljällä mikrofonillakin voisi tehdä jotain siistiä - useampi auttaa mm. taustamelun poistoon ja paikannukseen. Kamerassa on zoomitötterö, jolla valitaan kapeampi tai leveämpi näkökenttä. Nuo piirilevykuvat aukeavat aika suuriksi - 18 MP suoraan järkkäristä, jos vaikka tarttee joskus katsoa läheltä.

Käpistelypiiri on näemmä OV0538 eikä OV534, ja johonkin tarkoitukseen löytyy 24C64W eli 64K kilobitin EEPROM. Ääntä käsittelee AK5702, nelikanavainen ADC.

Se joku muu eli nimimerkki dwisecup kertoi synkkanastojen lokaatiot tälle uudemmalle piirilevylle joka näissä versioissani on ("NEW EYETOY 5702 SOLUTION(V8.2) 2007/10/09"): R11:n alla on läpiviennissä VSYNC, ja FSIN saadaan R26:n (ei kiinni) ylemmästä padista. Johdot kiinni (ensin läpiviennistä juotosmaski veitsellä auki raps raps), teippiä suojaksi ja vielä maajohto C47:n (pitäisi kai olla jokin suotokonkka, ei kiinni) alempaan padiin niin oskilloskooppi arvostaa.

Synkronointi tapahtuu siis siten, että toisen VSYNC tökätään toisen FSINiin. Tässä vasen ohjaa oikeata, skoopissa keltainen sinistä (kummankin VSYNC-signaalit). Aluksi ilman synkronointia nuo tietenkin ovat erillään, koska on äärimmäisen epätodennäköistä, että molemmat ottaisivat kuvansa tismalleen samaan aikaan. Maksimissaan eroa voi olla se puolikas frame suuntaan tai toiseen, eikä siitä pääse mihinkään - tällä on usein ihan oikeasti merkitystä konenäössä, kun haluttaisiin monta kuvaa liikkuvasta asiasta tismalleen samaan aikaan. Se liikkuva asia kun ei ole enää sama pienen hetken jälkeen.

Ainakin ohjattavan kameran VSYNC tulee jokseenkin samaan aikaan kun sitä alkaa ohjata. Lähempää katsoen noilla on pieni ero, joka vaihtelee about 270 ja 460 nanosekunnin välillä, kun kamera räpsii kuvia 30 kertaa sekunnissa. Ero vähenee, kun frameratea kasvattaa (ja kutistuisi varmaan entisestään, jos molempia kameroita syöttäisi jostain erillisestä lähteestä). Sitten toisaalta tuo läppäri ei jaksa enää jostain syystä kerätä videostreamia usbista ja guvcviewin framerate kyykähtää. Synkronointiyhteyden voi muuten katkaista kun sen on kerran tehnyt, ja kamerat pysyvät suunnilleen tahdissa. Pidemmän päälle sitten tuskin, varsinkaan jos asetuksia vaihtaa.

Kai se toimii. Sitten pitäisi ottaa noilla oikeasti kuvia ja varmistaa niistäkin, ettei vain tuo signaali sekoilisi. Mutta aiemmin synkkanastat ilmoittanut tyyppikin sai hommansa toimimaan, eli seuraavaksi OpenCV kouraan ja koodaamaan. Jatkoa seuraa.

0 kommenttia

Oma kommenttisi

Mielipide tämän sivun asiasta? Kirjoita toki. Älä raapusta kuitenkaan ihan asiattomia juttuja.

Jos on yksityisempää asiaa, tarkkaa kysyttävää tai aihetta pidemmälle keskustelulle, käytä yhteydenottolomaketta kommentoinnin sijaan.

Hölmöt kommentit saatetaan moderoida pois jälkikäteen.

Nimimerkki:

Spammibottiesto: Mikä on kahdeksan ja nollan erotus? (vastaus numeroina)