Reaaliaikainen kuvaprosessointi robottihelikopterissa
Sarajärvi, Joonas (2014-05-23)
Sarajärvi, Joonas
J. Sarajärvi
23.05.2014
© 2014 Joonas Sarajärvi. Tämä Kohde on tekijänoikeuden ja/tai lähioikeuksien suojaama. Voit käyttää Kohdetta käyttöösi sovellettavan tekijänoikeutta ja lähioikeuksia koskevan lainsäädännön sallimilla tavoilla. Muunlaista käyttöä varten tarvitset oikeudenhaltijoiden luvan.
Julkaisun pysyvä osoite on
https://urn.fi/URN:NBN:fi:oulu-201406071698
https://urn.fi/URN:NBN:fi:oulu-201406071698
Tiivistelmä
Kameran kalibrointi on menettely, jolla selvitetään kameran tuottamien kuvapisteiden ja kameralla kuvatun näkymän geometrian suhde. Tavallisesti suhde esitetään kameramallin avulla. Tyypillisesti kalibrointimenetelmät sovittavat jonkin kameramallin parametrit vastaamaan kameran kuvista tehtyjä havaintoja. Kalibrointi on tarpeellinen, mikäli kameran kuvasta mitataan geometrisia suureita.
Tässä työssä toteutetaan ohjelmisto, joka noudattaa Oulun yliopiston konenäön tutkimuskeskuksessa kehitettyä kameramallia. Ohjelmiston avulla AR.Drone 2.0-robottihelikopterin kameralle suoritettua kalibrointia voi hyödyntää AR.Drone 2.0:n omalla suorittimella. Ohjelmisto sopii myös muihin sulautettuihin järjestelmiin ja PC-tietokoneisiin.
Taustatietona tarkastellaan olemassa olevia kameramalleja ja verrataan toteutuksen noudattamaa kameramallia näihin malleihin. AR.Drone 2.0:n laitteistoa ja ohjelmistoa tarkastellaan toteutettavan ohjelmiston kohdealustana toimimisen näkökulmasta. Toteutetuista kuvankäsittelymenetelmistä esitetään perustoteutus ja sitä nopeuttavia optimointeja. Erityisesti ohjelmiston ja suorittimen välimuistin vuorovaikutukseen kiinnitetään huomiota. Valittujen menetelmien todetaan soveltuvan myös jaettavaksi usealle suoritinytimelle rinnakkaiseen laskentaan. Lopuksi toteutetun ohjelmiston suorituskykyä arvioidaan sekä ARM-suoritinarkkitehtuuria edustavissa sulautetuissa järjestelmissä että PC-työasemissa.
Toteutetulla ohjelmistolla voi korjata kalibroidun kameran kuvia perspektiivimallin mukaiseksi. ARM Cortex-A8 -suorittimella ohjelmisto kykenee korjaamaan AR.Drone 2.0:n kameran tuottamia kuvia reaaliajassa.
Tässä työssä toteutetaan ohjelmisto, joka noudattaa Oulun yliopiston konenäön tutkimuskeskuksessa kehitettyä kameramallia. Ohjelmiston avulla AR.Drone 2.0-robottihelikopterin kameralle suoritettua kalibrointia voi hyödyntää AR.Drone 2.0:n omalla suorittimella. Ohjelmisto sopii myös muihin sulautettuihin järjestelmiin ja PC-tietokoneisiin.
Taustatietona tarkastellaan olemassa olevia kameramalleja ja verrataan toteutuksen noudattamaa kameramallia näihin malleihin. AR.Drone 2.0:n laitteistoa ja ohjelmistoa tarkastellaan toteutettavan ohjelmiston kohdealustana toimimisen näkökulmasta. Toteutetuista kuvankäsittelymenetelmistä esitetään perustoteutus ja sitä nopeuttavia optimointeja. Erityisesti ohjelmiston ja suorittimen välimuistin vuorovaikutukseen kiinnitetään huomiota. Valittujen menetelmien todetaan soveltuvan myös jaettavaksi usealle suoritinytimelle rinnakkaiseen laskentaan. Lopuksi toteutetun ohjelmiston suorituskykyä arvioidaan sekä ARM-suoritinarkkitehtuuria edustavissa sulautetuissa järjestelmissä että PC-työasemissa.
Toteutetulla ohjelmistolla voi korjata kalibroidun kameran kuvia perspektiivimallin mukaiseksi. ARM Cortex-A8 -suorittimella ohjelmisto kykenee korjaamaan AR.Drone 2.0:n kameran tuottamia kuvia reaaliajassa.
Kokoelmat
- Avoin saatavuus [31941]