2015 http://excel.fit.vutbr.cz
ˇ Odhad nadmoˇrske´ vy´ sky z obrazu Jan Vaˇs´ıcˇ ek* Abstrakt ´ ´ Tato prace se zab´yva´ automatick´ym odhadem nadmoˇrske´ v´ysˇ ky kamery z obrazu. Ulohu jsem ˇreˇsil pomoc´ı konvoluˇcn´ıch neuronov´ych s´ıt´ı, u nichˇz vyuˇz´ıvam ´ schopnost uˇcit se nove´ pˇr´ıznaky na ´ ´ ´ zaklad eˇ trenovac´ ıch dat. Trenovac´ ı sada obrazu˚ (dataset), ktera´ by obsahovala udaje o nadmoˇrske´ ´ ˇ v v´ysˇ ce kamery, nebyla k dispozici, a proto bylo nutne´ vytvoˇrit dataset nov´y. Schopnosti cˇ loveka ´ ˇ rit dane´ uloze take´ nebyly dˇr´ıve testovany, proto jsem provedl uˇzivatelsk´y experiment s c´ılem zmeˇ ´ ˇ ´ odhadu nadmoˇrske´ v´ysˇ ky kamery. Experimentu se zuˇ prum kvalitu lidskeho ˚ ernou ´ castnilo 100 lid´ı a ˇ a´ chyba odhadu cˇ loveka ˇ je 879 m. Automatick´y system ´ zaloˇzen´y na v´ysledky ukazuj´ı, zˇ e prum ˚ ern ’ ´ ˇ ˇ ˇ ´ konvoluˇcn´ı neuronove s´ıti dosahuje lepˇs´ıch v´ysledku˚ neˇz clovek, nebot prum ˚ erna chyba odhadu ´ muˇ ´ odhadu nadmoˇrske´ se pohybuje okolo hodnoty 751 m. Navrˇzen´y system ˚ ze kromeˇ samotneho ´ uplatnen´ ˇ ı take´ ve sloˇzitejˇ ˇ s´ıch uloh ´ ´ ı geo-lokalizace v´ysˇ ky z obrazov´ych dat nalezt jako je vizualn´ ´ ach, kamery. ˇ a´ slova: Odhad nadmoˇrske´ v´ysˇ ky — Konvoluˇcn´ı s´ıteˇ — EXIF data Kl´ıcov ´ Pˇriloˇzene´ materialy: N/A *
[email protected], Faculty of Information Technology, Brno University of Technology
´ 1. Uvod Lidsk´y mozek dok´azˇ e porozumˇet okoln´ımu svˇetu v ˇra´ du nˇekolika stovek milisekund. Bˇehem jedin´eho pohledu je schopn´y z obrazov´e informace urˇcit kategorii sledovan´eho objektu/sc´eny [1]. Jak je tomu, ale pˇri odhadu nadmoˇrsk´e v´ysˇ ky z obrazu? Zamysleme se nad fotografiemi na obr´azku 1. V jak´e nadmoˇrsk´e v´ysˇ ce byly tyto sn´ımky poˇr´ızeny? Nadmoˇrsk´a v´ysˇ ka kamery se bˇezˇ nˇe mˇeˇr´ı pˇresnou nivelac´ı k stˇredn´ı hladinˇe nejbliˇzsˇ´ıho moˇre. Dalˇs´ım zp˚usobem jak zmˇeˇrit nadmoˇrskou v´ysˇ ku je porovn´an´ı GPS souˇradnic dan´eho bodu s matematicky vypoˇcten´ym elipsoidem WGS ˇ 84 [2]. Casto vˇsak kromˇe obrazu nejsou k dispozici zˇ a´ dn´e doplˇnuj´ıc´ı informace. U videa to plat´ı dvojn´asob. Pokud bychom byli schopn´ı urˇcit nadmoˇrskou v´ysˇ ku kamery z obrazu, tak to m˚uzˇ e pomoci pˇri hled´an´ı ztracen´ych osob, v automatizovan´ych meteorologick´ych syst´emech, geo-lokalizaci obrazu (redukce vyhled´avac´ıho prostoru), apod. [3]. V tomto cˇ l´anku se zab´yv´am automatick´ym odhadem nadmoˇrsk´e v´ysˇky kamery pomoc´ı metod strojov´eho uˇcen´ı. K tomuto u´ cˇ elu jsem vytvoˇril nov´y dataset a provedl uˇzivatelsk´y test, abych
zjistil, jak si navrˇzen´e experimenty vedou v porovn´an´ı s cˇ lovˇekem.
´ 2. Pˇredchoz´ı prace V souˇcasnosti bohuˇzel neexistuj´ı dostupn´e materi´aly o v´yzkumech t´ykaj´ıc´ıch se odhadu nadmoˇrsk´e v´ysˇ ky kamery z obrazu. V t´eto kapitole jsou uvedeny pˇr´ıklady projekt˚u, kter´e ˇreˇs´ı podobnou u´ lohu. 2.1 IM2GPS Pr´ace [3] pˇredstavuje algoritmus urˇcen´y ke geo-lokalizaci obrazu. V´ysledn´a lokace obr´azku je reprezentov´ana jako rozdˇelen´ı pravdˇepodobnosti v´yskytu na zemsk´em povrchu. Pokud je na obr´azku zn´am´a kulturn´ı pam´atka, kterou syst´em rozpozn´a, tak vrac´ı jednu konkr´etn´ı pozici. Pokud je na obr´azku sp´ısˇ e obecn´a sc´ena jako pouˇst’, tak syst´em vrac´ı vysok´e hodnoty pro such´a, p´ısˇcit´a m´ısta. V t´eto pr´aci je vytvoˇren dataset, kter´y obsahuje GPS souˇradnice ze kter´ych je moˇzn´e urˇcit nadmoˇrskou v´ysˇ ku. Probl´em tohoto datasetu je nedostatek fotek
´ Obrazek 1. Uk´azka obr´azk˚u z datasetu.
zachycuj´ıc´ıch venkovn´ı sc´eny v jednotliv´ych nadmoˇr- pro dotazov´an´ı obr´azk˚u na Flickru 1 pomoc´ı hash tag˚u. sk´ych v´ysˇk´ach a pˇr´ıliˇs velk´y rozsah zemˇepisn´ych lokalit. Staˇzeny byly veˇrejn´e obr´azky, kter´e obsahovaly GPS souˇradnice. Tyto obr´azky nesmˇely obsahovat hash 2.2 Places205 tagy, kter´e nesouvisej´ı s venkovn´ımi sc´enami (svatba, Places 205 [4] je dataset slouˇz´ıc´ı k tr´enov´an´ı klasi- oslava, atd). Po staˇzen´ı byly fotky jeˇstˇe automatfik´ator˚u sc´en. Obsahuje t´emˇeˇr 2,5 milionu obr´azk˚u icky upraveny tak, aby neobsahovaly jedno-barevn´e z 205 kategori´ı. Poˇcet obr´azk˚u v jednotliv´ych kate- okraje. Takto vytvoˇren´a kolekce obsahovala t´emˇeˇr gori´ıch nen´ı stejn´y a pohybuje se v rozmez´ı 5 000 - 1,2M fotek. Tento postup bohuˇzel vedl tak´e ke staˇzen´ı 15 000. Z tohoto datasetu by bylo moˇzn´e vytvoˇrit velk´eho poˇctu fotek nepouˇziteln´ych pro u´ lohu odhadu vhodn´y subset pro ˇreˇsenou u´ lohu. Dataset Places205 nadmoˇrsk´ych v´ysˇek. vˇsak neobsahuje dodateˇcn´e informace k fotk´am (GPS Pro filtraci nevhodn´ych obr´azk˚u je moˇzn´e pouˇz´ıt souˇradnice cˇ i nadmoˇrskou v´ysˇ ku). Pro tento v´yzkum klasifik´ator sc´en, kter´y obr´azky z kolekce klasifikuje jsem proto vytvoˇril nov´y dataset obsahuj´ıc´ı nadmoˇrskou do r˚uzn´ych kategori´ı. V t´eto pr´aci jsem pouˇzil konv´ysˇku ke kaˇzd´e fotce (D´ale jen Alpine altitudes). voluˇcn´ı s´ıt Places-CNN (viz. kapitola 5.1.1). V´ystupem s´ıtˇe jsou pravdˇepodobnosti pro jednotliv´e kategorie sc´en 2 . Toho jsem vyuˇzil pˇri sestavov´an´ı algoritmu 3. Dataset Alpine altitudes pro filtraci fotek. Vybral jsme kategorie, kter´e souPˇr´ırodn´ı r´az krajiny se s nadmoˇrskou v´ysˇ kou mˇen´ı. vis´ı s horami, krajinou a venkovn´ımi sc´enami. Z Nadmoˇrsk´a v´ysˇ ka napˇr´ıklad ovlivˇnuje teplotu, intenˇ ım vyˇssˇ´ı datasetu byly vyˇrazeny fotografie, pro kter´e souˇcet zitu sluneˇcn´ıho svitu, cˇ i mnoˇzstv´ı sr´azˇ ek. C´ pravdˇepodobnost´ı relevantn´ıch kategori´ı byl menˇs´ı neˇz nadmoˇrsk´a v´ysˇka, t´ım nepˇr´ıznivˇejˇs´ı b´yvaj´ı klimatick´e experiment´alnˇe urˇcen´y pr´ah 0,50. Pomoc´ı klasifikace podm´ınky. Zimy ve vyˇssˇ´ıch poloh´ach b´yvaj´ı delˇs´ı, sn´ıh sc´en bylo odstranˇeno 75% fotek (rozloˇzen´ı sk´ore je taje pozdˇeji neˇz v n´ızˇ in´ach a n´astup jara b´yv´a opoˇzdˇen zobrazeno v grafu na obr´azku 2). [5]. Z datov´e sady byly tak´e odstranˇeny duplicitn´ı fotky Dalˇs´ı element, kter´y pˇrisp´ıv´a k pˇr´ırodn´ı variabilitˇe a fotky jejichˇz m´ısto poˇr´ızen´ı leˇz´ı mimo Alpy. M´ısto je zemˇepisn´a poloha dan´eho m´ısta. Charakter dvou m´ıst se stejnou nadmoˇrskou v´ysˇ kou ale v r˚uzn´ych poˇr´ızen´ı bylo urˇceno pomoc´ı GPS souˇradnic uloˇzen´ych zemˇepisn´ych lokalit´ach se bude velmi pravdˇepodobnˇe v EXIF datech. V´ysledn´y dataset obsahuje 93 733 liˇsit. Pro tvorbu datasetu jsem tedy vybral pouze fotek. Nadmoˇrsk´a v´ysˇ ka fotek se z´ıskala pomoc´ı GPS oblast pohoˇr´ı Alp. Tato oblast se d´a povaˇzovat za 3 dostateˇcnˇe malou a m˚uzˇ eme ˇr´ıct, zˇ e krajinn´y charak- souˇradnic z v´ysˇkov´ych map [7]. ter v jednotliv´ych nadmoˇrsk´ych hladin´ach bude velmi podobn´y. 3.1 Vytvoˇren´ı datasetu Seznam hor byl vytvoˇren pomoc´ı metadat ve sluˇzbˇe OpenStreetMap [6]. Tento seznam byl n´aslednˇe pouˇzit
1 www.flickr.com 2 lesn´ı cesta, p´ısˇcit´e pobˇreˇz´ı, pole, zasnˇezˇ en´a hora, moˇre, jezero, baˇzina, lyˇzaˇrsk´e stˇredisko, louka, horsk´a chata, sopka 3 Pˇresnost v´ ysˇkov´ych map se pohybuje kolem hodnoty 30 m.
´ Obrazek 2. Rozloˇzen´ı sk´ore fotek. Sk´ore je z´ısk´ano z
klasifik´atoru sc´en jako suma pravdˇepodobnost´ı pro relevantn´ı kategorie. ´ Obrazek 5. Uˇzivatelsk´e rozhran´ı testu. Vpravo je
zobrazen posuvn´ık, kter´ym uˇzivatel zad´aval sv˚uj odhad nadmoˇrsk´e v´ysˇky. v´ysˇku na vytvoˇren´em datasetu. Kromˇe toho, zˇ e z´ıskan´e v´ysledky poskytuj´ı nov´e a zaj´ımav´e poznatky o schopnostech cˇ lovˇeka, slouˇz´ı tak´e jako reference pro automatick´e metody, kter´e jsou pops´any v n´asleduj´ıc´ı kapitole. ´ Obrazek 3. Rozloˇzen´ı nadmoˇrsk´ych v´ysˇek v datasetu.
´ Obrazek 4. Pokryt´ı Alp fotkami z datasetu.
3.2 Charakteristiky datasetu Dataset obsahuje 93 733 obr´azk˚u s nadmoˇrsk´ymi v´ysˇkami v rozmez´ı od 79 m do 4463 m. Histogram nadmoˇrsk´ych v´ysˇek je zobrazen na obr´azku 3. Rozloˇzen´ı grafu nen´ı uniformn´ı a odpov´ıd´a tomu jak cˇ asto lid´e fot´ı v r˚uzn´ych nadmoˇrsk´ych v´ysˇk´ach. Mnoˇzstv´ı fotek s nadmoˇrskou v´ysˇ kou vˇetˇs´ı neˇz 3000 m je mal´e, coˇz omezuje pouˇzitelnost datov´e sady pro nejvyˇssˇ´ı m´ısta Alp. Kromˇe francouzsk´e cˇ a´ sti je pokryta vˇetˇsina u´ zem´ı Alp (viz obr. 4). D˚uvodem je nedostupnost fotek z Francie v dobˇe vytv´aˇren´ı datasetu. Dataset tak´e obsahuje kompletn´ı EXIF data dostupn´a z Flickru.
ˇ 4. Odhad nadmoˇrske´ vy´ sky kamery ˇ ˇ clov ekem Tato kapitola prezentuje uˇzivatelsk´y test, jehoˇz c´ılem bylo kvantifikovat schopnost lid´ı urˇcovat nadmoˇrskou
´ ı 4.1 Parametry testovan´ Testov´an´ı probˇehlo pomoc´ı webov´e aplikace (viz obr. 5). Experimentu se z´ucˇ astnilo 100 lid´ı, kteˇr´ı odhadovali nadmoˇrskou v´ysˇ ku kamery pro 50 obr´azk˚u . Vˇek u´ cˇ astn´ık˚u je v rozmez´ı od 11 do 61. Obr´azky byly n´ahodnˇe vybr´any z testovac´ı sady datasetu Alpine altitudes tak, aby rovnomˇernˇe pokr´yvaly rozsah nadmoˇrsk´ych v´ysˇek od 79 m do 4463 m. (viz obr. 6). Pˇred spuˇstˇen´ım testu byl kaˇzd´y uˇzivatel pouˇcen o u´ cˇ elu testu a spr´avn´em zp˚usobu jak test vyplnit (napˇr. uˇzivatel urˇcuje nadmoˇrskou v´ysˇ ku kamery a ne vzd´alen´eho objektu na fotce). Samotn´y test pak prob´ıhal tak, zˇ e se uˇzivateli v n´ahodn´em poˇrad´ı postupnˇe zobrazovaly obr´azky z testovac´ı kolekce. Kromˇe obr´azku nebyla k dispozici zˇ a´ dn´a doplˇnuj´ıc´ı informace. ´ castn´ık urˇcoval nadmoˇrskou v´ysˇ ku kamery pomoc´ı Uˇ posuvn´ıku (viz obr. 5). Tento odhad pak uˇzivatel potvrdil tlaˇc´ıtkem po jehoˇz zm´acˇ knut´ı se zobrazil dalˇs´ı obr´azek. Pr˚umˇern´a doba trv´an´ı testu byla 10 minut. ´ 4.2 Vyhodnocen´ı uˇzivatelskeho testu V´ysledek uˇzivatelsk´eho testu jsem nejdˇr´ıve analyzoval funkc´ı ANOVA (anal´yza rozptylu) [8] abych ovˇeˇril, zˇ e odhady nadmoˇrsk´e v´ysˇ ky kamery nejsou n´ahodn´e a cˇ lovˇek je ji schopn´y urˇcovat na z´akladˇe fotografie. K tomuto u´ cˇ elu jsem vytvoˇril nulovou hypot´ezu H0 : Pˇri odhadu cˇ lovˇeka nez´aleˇz´ı na obr´azku. V´ysledek anal´yzy rozptylu je (F = 165.094 , p < 0.001), coˇz zna4 F je testov´a statistika. Vyjadˇruje pomˇer mezi rozptylem ”mezi” skupinami a rozptylem ”uvnitˇr” skupin. Hodnota testov´e statistiky v´yraznˇe vyˇssˇ´ı neˇz 1 umoˇznuje hypot´ezu zam´ıtnout.
men´a, zˇ e cˇ lovˇek je schopn´y odhadovat nadmoˇrskou v´ysˇku kamery pouze na z´akladˇe obrazov´e informace. V tuto chv´ıli jiˇz m˚uzˇ eme zkoumat charakteristiku odhadu cˇ lovˇeka. Na obr´azku 6 je zobrazena stˇredn´ı hodnota a rozptyl odhadu vˇsech u´ cˇ astn´ık˚u testu pro kaˇzd´y obr´azek. Nadmoˇrsk´e v´ysˇky do 1000 m je cˇ lovˇek schopn´y odhadnout s malou chybou. S rostouc´ı nadmoˇrskou v´ysˇkou vˇsak chyba roste. Nejv´ıce je to vidˇet u nadmoˇrsk´ych v´ysˇek nad 3000 m, kde cˇ lovˇek odhady velmi podhodnocuje. Jedn´ım z d˚uvod˚u m˚uzˇ e b´yt to, zˇ e vˇetˇsina u´ cˇ astn´ık˚u nemˇela zkuˇsenosti s pobytem v tˇechto v´ysˇ k´ach. Pr˚umˇern´a chyba odhadu cˇ lovˇeka je 879,94 m.
ˇ 5. Automaticky´ odhad nadmoˇrske´ vy´ sky Velk´y vliv na kvalitu v´ysledk˚u metod strojov´eho uˇcen´ı maj´ı pouˇzit´e pˇr´ıznaky. V tradiˇcn´ım pˇr´ıstupu byly vhodn´e pˇr´ıznaky navrhov´any na z´akladˇe znalost´ı a zkuˇsenost´ı odborn´ık˚u. Pro obecn´e u´ lohy klasifikace a vyhled´av´an´ı fotografi´ı jsou to napˇr´ıklad GIST [9] a SIFT (Scale-invariant feature transform) [10], kter´e zachycuj´ı glob´aln´ı respektive lok´aln´ı vzhled obrazu. V´ybˇer vhodn´ych pˇr´ıznak˚u pro konkr´etn´ı u´ lohu je dlouh´y a n´aroˇcn´y proces, zvl´asˇ tˇe pokud nejsou dostupn´e prameny o dˇr´ıvˇejˇs´ı pr´aci, tak jako v tomto pˇr´ıpadˇe. Alternativou k ruˇcnˇe navrˇzen´ym pˇr´ıznak˚um, kter´a v posledn´ıch letech nab´ır´a na popularitˇe, je hlubok´e uˇcen´ı, kter´e vyuˇz´ıv´a rostouc´ıho v´ykonu v´ypoˇcetn´ı techniky a velk´ych datov´ych sad k nauˇcen´ı vhodn´ych pˇr´ıznak˚u pˇr´ımo z dat. Jednou z u´ spˇesˇ n´ych metod hlubok´eho uˇcen´ı pro obrazov´a data jsou hlubok´e konvoluˇcn´ı s´ıtˇe, kter´e dosahuj´ı v souˇcasnosti nejlepˇs´ıch v´ysledk˚u na u´ loh´ach klasifikace obrazu [11], rozpozn´av´an´ı lid´ı podle obliˇceje [12] a detekce objekt˚u [13]. Obecnost konvoluˇcn´ıch s´ıt´ı je vykoupena vˇetˇs´ımi n´aroky na mnoˇzstv´ı tr´enovac´ıch dat a velkou v´ypoˇcetn´ı n´aroˇcnost´ı jejich tr´enov´an´ı. Z d˚uvodu nedostatku dostupn´ych materi´al˚u o dˇr´ıvˇejˇs´ıch prac´ıch na odhadu nadmoˇrsk´e v´ysˇ ky kamery z obrazu jsem pouˇzil pr´avˇe konvoluˇcn´ı neuronov´e s´ıtˇe. N´avrh architektury a v´ysledky experiment˚u jsou pops´any v n´asleduj´ıc´ıch kapitol´ach. 5.1 Architektura s´ıteˇ Odhad nadmoˇrsk´e v´ysˇky je sv´ym charakterem a sloˇzitost´ı srovnateln´y s obecn´ym probl´emem klasifikace fotografi´ı [11]. S´ıtˇe pouˇz´ıvan´e v tˇechto u´ loh´ach maj´ı mili´ony parametr˚u (viz obr. 7) a vyˇzaduj´ı statis´ıce tr´enovac´ıch obr´azk˚u. Dataset Alpine altitudes nen´ı dostateˇcnˇe velk´y pro tr´enov´an´ı s´ıtˇe od zaˇca´ tku s n´ahodnˇe inicializovan´ymi parametry, a proto jsem zvolil postup
´ Obrazek 7. Architektura konvoluˇcn´ı s´ıtˇe
Places-CNN. adaptace pˇr´ıznak˚u z existuj´ıc´ı s´ıtˇe. V t´eto pr´aci jsem vytvoˇril 3 regresn´ı modely a zkoumal jejich chov´an´ı na vytvoˇren´em datasetu. Pˇri n´avrhu vˇsech model˚u s´ıtˇe jsem vych´azel z modelu s´ıtˇe natr´enovan´eho na datasetu Places205 [4], kter´y je pops´an v n´asleduj´ıc´ı kapitole. 5.1.1 Places-CNN
Places-CNN [4] je konvoluˇcn´ı s´ıt’, kter´a v souˇcasnosti dosahuje nejlepˇs´ıch v´ysledk˚u v u´ loze klasifikace indoor/outdoor sc´en. S´ıt’ je natr´enovan´a na pˇribliˇznˇe 2,5M obr´azc´ıch z datasetu Places205. Architektura s´ıtˇe je shodn´a s architekturou pouˇzitou v Caffe reference network [11]. Vstupem s´ıtˇe jsou barevn´e 2D obr´azky zmenˇsen´e na velikost 256x256 pixel˚u. S´ıt’ je tvoˇrena 8 vrstvami (viz obr. 7). Prvn´ıch 5 vrstev jsou vrstvy konvoluˇcn´ı. Zbyl´e 3 vrstvy jsou plnˇe propojen´e. Hlavn´ı rozd´ıl konvoluˇcn´ıch a plnˇe propojen´ych vrstev je ten, zˇ e plnˇe propojen´e vrstvy nemaj´ı sd´ılen´e v´ahy. V´ystup posledn´ı plnˇe propojen´e vrstvy je vstupem softmax funkce, kter´a produkuje distribuci nad 205 tˇr´ıdami. 5.1.2 Pˇr´ıznaky Places
Pˇredeˇsl´e pr´ace [12] [14] ukazuj´ı, zˇ e pˇr´ıznaky extrahovan´e z existuj´ıc´ıch s´ıt´ı jsou dostateˇcnˇe obecn´e a d´avaj´ı informaci i pro podobn´e u´ koly, na kter´e nejsou p˚uvodnˇe urˇcen´e. V tomto experimentu jsem zjiˇst’oval jak zafunguj´ı pˇr´ıznaky s´ıtˇe Places-CNN na datasetu Alpine altitudes. Extrahoval jsem aktivace prvn´ı plnˇe propojen´e vrstvy (4096 neuron˚u) pro vˇsechny obr´azky datasetu. Extrahovan´e aktivace reprezentuj´ı glob´aln´ı deskriptor obrazu a slouˇz´ı jako vstup pro 2-vrstvou neuronovou s´ıt’, jej´ızˇ parametry jsou na zaˇca´ tku tr´enov´an´ı n´ahodnˇe inicializov´any. V´ystupn´ı vrstva t´eto s´ıtˇe je line´arn´ı s jedn´ım neuronem, kter´y pˇr´ımo odhaduje nadmoˇrskou v´ysˇku. S´ıt’ byla tr´enov´ana pomoc´ı optimalizaˇcn´ı krit´eria mean square error, kter´e je vhodn´e pro regresn´ı probl´emy, kde lze pˇredpokl´adat norm´aln´ı rozloˇzen´ı chyb. 5.1.3 Adaptovane´ pˇr´ıznaky Places
Lepˇs´ıch v´ysledk˚u neˇz pˇr´ım´ym pouˇzit´ım existuj´ıc´ı s´ıtˇe pro extrakci pˇr´ıznak˚u lze vˇetˇsinou dos´ahnout adaptac´ı existuj´ıc´ı s´ıtˇe pro konkr´etn´ı u´ lohu — tak zvan´ym Fine-
´ Obrazek 6. Odhady cˇ lovˇeka a konvoluˇcn´ı s´ıtˇe na 50 obr´azc´ıch z uˇzivatelsk´eho testu. Na ose y je vynesena
nadmoˇrsk´a v´ysˇka. Kaˇzd´y ”box” odpov´ıd´a jednomu obr´azku a zobrazuje rozloˇzen´ı odhad˚u lid´ı. (zelen´e kˇr´ızˇ ky spr´avn´a hodnota, modr´a koleˇcka - Adaptovan´e pˇr´ıznaky Places, cˇ erven´a cˇ a´ ra - stˇredn´ı hodnota odhadu u´ cˇ astn´ık˚u testu pro dan´y obr´azek). tunningem [15] [13]. Toho je dosaˇzeno inicializac´ı vah s´ıtˇe z jiˇz existuj´ıc´ı s´ıtˇe kromˇe posledn´ıch vrstev, kter´e jsou inicializov´any n´ahodnˇe. Takov´a s´ıt je pak uˇcena cel´a pomoc´ı metody Stochastic Gradient Descent. Tento postup jsem pouˇzil pˇri tr´enov´an´ı druh´eho modelu (Adaptovan´e pˇr´ıznaky Places). Architektura s´ıtˇe je shodn´a s architekturou s´ıtˇe Places-CNN. Parametry jsou inicializov´any pomoc´ı parametr˚u z modelu Places-CNN. 5.1.4 Adaptovane´ pˇr´ıznaky Places + EXIF
T´emˇeˇr polovina datasetu obsahuje EXIF data, kter´a mohou b´yt pouˇzita jako dodateˇcn´e informace o obr´azku a upˇresnit tak odhad nadmoˇrsk´e v´ysˇ ky. Pro tento experiment jsem vytvoˇril neuronovou s´ıt’ jej´ımˇz vstupem byly aktivace prvn´ı plnˇe propojen´e vrstvy z modelu Adaptovan´e pˇr´ıznaky Places a zak´odovan´a EXIF data. Zde uv´ad´ım v´ycˇ et pouˇzit´ych EXIF tag˚u a zp˚usob jejich k´odov´an´ı: ˇ - Pozice slunce se bˇehem dne mˇen´ı a to se 1. Cas na sn´ımc´ıch m˚uzˇ e projevit zmˇenou st´ın˚u nebo r˚uznou intenzitou svˇetla. Denn´ı dobu k´oduji jako 1 z 16 s uniformn´ı velikost´ı bin˚u. 2. Datum - Datum poˇr´ızen´ı sn´ımku n´as informuje o specifick´ych povˇetrnostn´ıch podm´ınk´ach v dan´e cˇ a´ sti roku a d´elce sluneˇcn´ıho svitu bˇehem dne. Pozici dne bˇehem roku k´oduji jako 1 z 16 kde biny maj´ı uniformn´ı velikost. 3. Nastaven´ı fotoapar´atu - Informace o nastaven´ı fotoapar´atu (ohniskov´a vzd´alenost, expoziˇcn´ı
cˇ as, ISO) jsem pouˇzil k urˇcen´ı mnoˇzstv´ı svˇetla ve sc´enˇe v dobˇe poˇr´ızen´ı sn´ımku. Mnoˇzstv´ı svˇetla ve sc´enˇe EV (expoziˇcn´ı hodnota) je vypocˇ´ıt´ano jako ISO EV = 2 log2 (F)−log2 (t)−log2 , (1) 100 kde F je clonov´e cˇ ´ıslo, t je expoziˇcn´ı cˇ as a ISO je citlivost sn´ımac´ıho senzoru. Kromˇe samotn´e expoziˇcn´ı hodnoty jsou pouˇzity i jednotliv´e parametry nastaven´ı. Pˇredpokladem bylo, zˇ e i jednotliv´e parametry mohou n´est informaci d˚uleˇzitou pro odhad nadmoˇrsk´e v´ysˇ ky. Expoziˇcn´ı hodnota je zak´odovan´a jako 1 z 16 s pouˇzit´ım uniformn´ıch bin˚u. Pro k´odov´an´ı ostatn´ıch parametr˚u je pouˇzito k´odov´ani 1 z N kde velikost bin˚u exponenci´alnˇe roste 5 . 4. Zorn´e pole - urˇcuje cˇ a´ st sc´eny, kter´a se zobraz´ı na sn´ımek. To pom´ah´a pˇri odhadu projekce sc´eny na senzor fotoapar´atu. Informaci o zorn´em poli obsahuje pouze velmi mal´a cˇ a´ st datasetu. Tento u´ daj jsem musel dopoˇc´ıtat z ostatn´ıch metadat pomoc´ı rovnice SEN 180 FOV = 2atan 0.5 , (2) f π kde FOV je zorn´e pole, SEN je rozmˇer senzoru a f je ohniskov´a vzd´alenost. 5 Stupnice
tˇechto parametr˚u je logaritmick´a.
Tabulka 1. Porovn´an´ı v´ysledk˚u vˇsech variant model˚u.
Model
RMSE(m)
Pˇr´ıznaky Places
569.63
Ad. pˇr´ıznaky Places
549.82
Ad. pˇr´ıznaky Places + EXIF 510.79
Tabulka 2. Pr˚umˇern´a chyba odhad˚u cˇ lovˇeka a
konvoluˇcn´ı s´ıtˇe na obr´azc´ıch z uˇzivatelsk´eho testu. RMSE(m) ˇ ek Clovˇ
879.94
Ad. pˇr´ıznaky Places 751.12
V souˇcasnosti neexistuje freeware program s datab´az´ı obsahuj´ıc´ı velikost senzor˚u pro vˇsechny modely fotoapar´atu. Velikost senzoru jednotliv´ych model˚u jsem proto manu´alnˇe hledal na str´ank´ach v´yrobc˚u. Statisticky jsem zjistil, zˇ e pˇri vytvoˇren´ı datab´aze pro 100 model˚u je pokryto 40% datasetu. Zorn´e pole jsem k´odoval jako 1 z 16. 5.2 Vyhodnocen´ı modelu˚ Pro korektn´ı porovn´an´ı jednotliv´ych variant model˚u s´ıt´ı jsem vytvoˇril subset datasetu Alpine altitudes (d´ale jen EXIF dataset), kter´y pro kaˇzdou fotku obsahuje EXIF data pouˇzit´a pˇri tvorbˇe varianty Adaptovan´e pˇr´ıznaky Places + EXIF. Tr´enovac´ı sada obsahuje 34 889 obr´azk˚u. Testovac´ı sada m´a 5046 obr´azk˚u. EXIF dataset jsem n´aslednˇe pouˇzil pro pˇretr´enov´an´ı model˚u Pˇr´ıznaky Places a Adaptovan´e pˇr´ıznaky Places. Vˇsechny modely tak lze pˇr´ımo porovn´avat, protoˇze byly tr´enov´any/testov´any na stejn´ych datech. V n´asleduj´ıc´ı cˇ a´ sti popisuji chov´an´ı model˚u na testovac´ı sadˇe EXIF datasetu. 5.2.1 Pˇr´ıznaky Places
Pˇr´ıznaky extrahovan´e z konvoluˇcn´ı s´ıtˇe Places-CNN se uk´azaly jako dostateˇcnˇe obecn´e. Pr˚umˇern´a chyba odhadu na cel´e testovac´ı sadˇe (viz tabulka 1) se m´alo liˇs´ı od pr˚umˇern´e chyby modelu Adaptovan´e pˇr´ıznaky Places (v uˇzivatelsk´em testu dosahuje lepˇs´ıch v´ysledk˚u neˇz cˇ lovˇek). Dobr´e v´ysledky na t´eto u´ loze pˇrisuzuji faktu, zˇ e pˇr´ıznaky s´ıtˇe Places-CNN byly tr´enov´any na vysok´em poˇctu r˚uznorod´ych venkovn´ıch sc´en. 5.2.2 Adaptovane´ pˇr´ıznaky Places
Adaptace konvoluˇcn´ı s´ıtˇe na EXIF dataset vede k m´ırn´emu zlepˇsen´ı v´ysledk˚u regrese (tabulka 1). Velikost EXIF datasetu je mal´a a pˇr´ınos metody fine-tuning se v tomto experimentu v´yraznˇe neprojevil. 5.2.3 Adaptovane´ pˇr´ıznaky Places + EXIF
Pˇredpoklad, zˇ e dodateˇcn´e informace k obr´azku pomohou pˇri odhadu nadmoˇrsk´e v´ysˇ ky kamery se potvrdil. Konvoluˇcn´ı s´ıt’ byla schopna vyuˇz´ıt vˇetˇs´ı mnoˇzstv´ı informac´ı k zpˇresnˇen´ı odhadu a zmenˇsen´ı chyby (viz obr. 8, tabulka 1). Proveden´y experiment z´aroveˇn ukazuje vhodnost pouˇzit´ych EXIF dat pro podobn´e u´ lohy.
´ Obrazek 8. Graf zobrazuj´ıc´ı poˇcet testovac´ıch dat (osa y) s chybou do urˇcit´e hodnoty (osa x).
´ ı vykonu ˇ ˇ a konvolucn´ ˇ ıch 5.3 Porovnan´ ´ clov eka s´ıt´ı Na z´akladˇe proveden´eho uˇzivatelsk´eho testu je moˇzn´e konstatovat, zˇ e konvoluˇcn´ı s´ıtˇe dosahuj´ı v t´eto u´ loze lepˇs´ıch v´ysledk˚u neˇz cˇ lovˇek (tabulka 2). Jelikoˇz u´ cˇ astn´ıci testu mˇeli k dispozici pouze obrazovou informaci, tak je porovn´an´ı provedeno s variantou Adaptovan´e pˇr´ıznaky Places 6 . Do grafu na obr´azku 6 jsou zaneseny odhady lid´ı i konvoluˇcn´ı s´ıtˇe pro obr´azky pouˇzit´e v uˇzivatelsk´em testu. Konvoluˇcn´ı s´ıtˇe maj´ı stejnˇe jako lid´e nejvˇetˇs´ı probl´emy u obr´azk˚u poˇr´ızen´ych ve vyˇssˇ´ıch nadmoˇrsk´ych v´ysˇ k´ach. V t´eto pr´aci to m˚uzˇ e b´yt zp˚usobeno mal´ym mnoˇzstv´ım fotografi´ı z tˇechto v´ysˇek v datasetu.
´ er ˇ 6. Zav V t´eto pr´aci je uk´az´ano, zˇ e konvoluˇcn´ı neuronov´e s´ıtˇe dosahuj´ı na u´ loze odhadu nadmoˇrsk´e v´ysˇky kamery z obrazu lepˇs´ıch v´ysledk˚u neˇz cˇ lovˇek. Odhady nadmoˇrsk´e v´ysˇ ky jsou pouze pˇribliˇzn´e a pr˚umˇern´a chyba se pohybuje kolem hodnoty 550 m. Tuto chybu je moˇzn´e sn´ızˇ it pokud se pouˇzij´ı dodateˇcn´a data o obr´azku (EXIF data). Na experimentech je dobˇre prezentov´ana potˇreba vhodn´eho datasetu pro ˇreˇsenou u´ lohu. Dataset vytvoˇren´y v t´eto pr´aci je unik´atn´ı sada obraz˚u z horsk´eho prostˇred´ı doplnˇen´a informac´ı o nadmoˇrsk´e v´ysˇce kamery. Tento dataset sice nen´ı tak obs´ahl´y jako obecn´e datasety pouˇz´ıvan´e pˇri tr´enov´an´ı konvoluˇcn´ıch s´ıt´ı, ovˇsem i na nˇem bylo moˇzn´e u´ spˇesˇ nˇe prov´est experimenty, kter´e do budoucna d´avaj´ı nadˇeji na vytvoˇren´ı 6 V´ yrazn´y rozd´ıl ve velikosti chyby v tabulk´ach 1 a 2 je zp˚usoben odliˇsn´ym rozloˇzen´ım nadmoˇrsk´ych v´ysˇ ek v pouˇzit´ych testovac´ıch sad´ach.
ˇreˇsen´ı, kter´e by se dalo pouˇz´ıt v praxi. Vˇeˇr´ım, zˇ e pˇri tr´enov´an´ı konvoluˇcn´ı s´ıtˇe na dostateˇcnˇe velk´em datasetu, kter´y bude splˇnovat poˇzadavky na hustotu a rozmanitost [4], je moˇzn´e dos´ahnout jeˇstˇe pˇresnˇejˇs´ıch odhad˚u nadmoˇrsk´e v´ysˇky kamery z obrazu.
ˇ ´ ı Podekov an´ Chtˇel bych podˇekovat vedouc´ımu m´e diplomov´e pr´ace ˇ ıkovi, Ph.D. za pomoc a rady pˇri Ing. Martinu Cad´ zpracov´an´ı t´eto pr´ace. D´ale bych r´ad podˇekoval Ing. Michalu Hradiˇsovi za odborn´e rady bˇehem n´avrhu konvoluˇcn´ıch s´ıt´ı. V´yzkum vedouc´ı k tˇemto v´ysledk˚um vznikl v r´amci projektu LOCATE 4SGA8694, kter´y je financov´an z programu SoMoPro II, spolufinancovan´eho Evropskou uni´ı a Jihomoravsk´ym krajem.
Literatura [1] Talia Konkle, Timothy F Brady, George A Alvarez, and Aude Oliva. Scene memory is more detailed than you think: the role of categories in visual long-term memory. Psychological science : a journal of the American Psychological Society / APS, 21(11):1551–1556, 2010. ˇ ´ [2] V´aclav Cada. Uvod do Geod´ezie. [3] James Hays and Alexei A Efros. IM2GPS: estimating geographic information from a single image. In Proceedings of the {IEEE} Conf. on Computer Vision and Pattern Recognition ({CVPR}), 2008. [4] B Zhou, A Lapedriza, J Xiao, A Torralba, and A Oliva. Learning Deep Features for Scene Recognition using Places Database. NIPS, 2014. [5] William Burroughs. Climate: Into the 21st Century. Cambridge University Press, 2003. [6] Kevin Curran, John Crumlish, and Gavin Fisher. OpenStreetMap. International Journal of Interactive Communication Systems and Technologies, 2(1):69–78, 2012. ˇ [7] Lionel Baboud, Martin Cad\’ik, Elmar Eisemann, and Hans-Peter Seidel. Automatic Phototo-terrain Alignment for the Annotation of Mountain Pictures. In Proceedings of the 2011 IEEE Conference on Computer Vision and Pattern Recognition, CVPR ’11, pages 41–48, Washington, DC, USA, 2011. IEEE Computer Society. [8] Viv Bewick, Liz Cheek, and Jonathan Ball. Statistics review 9: one-way analysis of variance. Critical care (London, England), 8(2):130–136, 2004.
[9] Aude Oliva and Antonio Torralba. Modeling the shape of the scene: A holistic representation of the spatial envelope. International Journal of Computer Vision, 42(3):145–175, 2001. [10] David G Lowe. Distinctive Image Features from Scale-Invariant Keypoints. Int. J. Comput. Vision, 60(2):91–110, 2004. [11] Alex Krizhevsky, Ilya Sutskever, and Geoffrey E Hinton. ImageNet Classification with Deep Convolutional Neural Networks. Advances In Neural Information Processing Systems, pages 1–9, 2012. [12] Yaniv Taigman, Ming Yang, Marc’Aurelio Ranzato, and Lior Wolf. DeepFace: Closing the Gap to Human-Level Performance in Face Verification. In Conference on Computer Vision and Pattern Recognition (CVPR), page 8, 2014. [13] Ross Girshick, Jeff Donahue, Trevor Darrell, and Jitendra Malik. Rich feature hierarchies for accurate object detection and semantic segmentation. In Computer Vision and Pattern Recognition, 2014. [14] Jeff Donahue, Yangqing Jia, Oriol Vinyals, Judy Hoffman, Ning Zhang, Eric Tzeng, and Trevor Darrell. DeCAF: {A} Deep Convolutional Activation Feature for Generic Visual Recognition. CoRR, abs/1310.1, 2013. [15] Pulkit Agrawal, Ross B Girshick, and Jitendra Malik. Analyzing the Performance of Multilayer Neural Networks for Object Recognition. CoRR, abs/1407.1, 2014.