Master's Thesis

Camera Orientation Estimation using Vision Transformers

Final Thesis 5.77 MB

Author of thesis: Ing. Martin Kubička

Acad. year: 2025/2026

Supervisor: prof. Ing. Martin Čadík, Ph.D.

Reviewer: Ing. Tomáš Polášek

Abstract:

We often look at a photograph and ask: Where was it taken? In computer vision, this problem is called geolocalization, and it includes sub-tasks of estimating the camera’s position and orientation. In this work, we focus on estimating camera orientation, which determines the viewing direction using the angles pitch, yaw, and roll. We solve this task using a transformer-based approach with two inputs: a synthetic 360° panorama (a digital terrain model) and a real (query) image. The goal is to determine where the query image is located within the panorama, especially in challenging mountain environments with strong seasonal changes. Unlike existing state-of-the-art methods, our approach does not require knowledge of the field-of-view, while achieving comparable results on the GeoPose3K dataset, but worse results on the Venturi dataset. Compared to traditional approaches based on edges or semantic segmentation, the model can work even when important scene features are unclear or partially hidden. The work provides experimental insights, including a two-step refinement process, and highlights the potential of transformers for solving cross-modal tasks with limited data and high resolution, with the possibility of extending to full geolocalization.

Keywords:

Camera Orientation Estimation, Geolocalization, Camera Pose Estimation, Machine Learning, Neural Network, Vision Transformer, Computer Vision, Equirectangular Projection, Panorama, Digital Elevation Model, Cross-Modal, Field-of-View

Date of defence

24.06.2026

Result of the defence

Defended (thesis was successfully defended)

znamkaAznamka

Grading

A

Process of defence

Student nejprve prezentoval výsledky, kterých dosáhl v rámci své práce. Komise se poté seznámila s hodnocením vedoucího a posudkem oponenta práce. Student následně odpověděl na otázky oponenta a na další otázky přítomných. Komise se na základě posudku oponenta, hodnocení vedoucího, přednesené prezentace a odpovědí studenta na položené otázky rozhodla práci hodnotit stupněm A.

Topics for thesis defence

  1. Optimalizace a reálný čas: V sekci 7.1.3 zmiňujete, že operace dlaždicování panoramat (Panorama Tiling) pomocí knihovny `py360convert` tvoří až 98,41% celkového času inference (1,89 s z 1,93 s). Jakým způsobem by se dal tento krok optimalizovat pro případné nasazení v reálném čase (např. pomocí předpočítání struktur, paralelizace na GPU nebo změny reprezentace vstupu)?
  2. Chování attention mapy: Během analýzy attention map (sekce 7.3) se ukázalo, že se model u query obrázků neustále chybně zaměřuje na černé okraje vzniklé zachováním poměru stran. Jak přesně byste navrhoval implementovat maskování těchto regionů přímo do attention mechanismu transformeru, aby k tomuto jevu nedocházelo? Nehrozí zde riziko tzv. "data leakage"?
  3. Analýza zpřesňování: Proč byly výsledky dvoustupňového zpřesňování ("refinement") celkově horší než u jednokrokového přístupu? Jak si tento fenomén vysvětlujete a jaké jiné metody či postupy by podle Vás mohly tento problém úspěšně vyřešit?
  4. Vyhodnocujete predikci úhlů odděleně?

Language of thesis

English

Faculty

Department

Study programme

Information Technology and Artificial Intelligence (MITAI)

Specialization

Computer Vision (NVIZ)

Composition of Committee

prof. Ing. Adam Herout, Ph.D. (předseda)
prof. Ing. Martin Čadík, Ph.D. (místopředseda)
doc. RNDr. Milan Češka, Ph.D. (člen)
prof. Dr. Ing. Pavel Zemčík, dr. h. c. (člen)
Ing. David Bařina, Ph.D. (člen)
Ing. Tomáš Milet, Ph.D. (člen)

Supervisor’s report
prof. Ing. Martin Čadík, Ph.D.

Celkově považuji diplomovou práci Martina Kubičky za velmi zdařilou. Student navrhl a implementoval metodu pro odhad orientace kamery založenou na strojovém učení, zejména na architektuře Transformer a mechanismu pozornosti (attention). Navržená metoda na rozdíl od dosavadních přístupů nevyžaduje znalost zorného pole fotoaparátu, přičemž dosahuje srovnatelných výsledků. Předložená diplomová práce může tvořit základ budoucího vědeckého článku.

Evaluation criteria Verbal classification
Informace k zadání

Zadání této diplomové práce považuji za náročnější, jedná se o aktuální výzkumné téma. Práce navazuje na aktivity výzkumné skupiny CPhoto@FIT a student na podobném tématu pracoval již v průběhu své bakalářské práce. S dosaženými výsledky jsem spokojen.

Aktivita při dokončování

Práce byla dokončena v řádném termínu a její obsah byl průběžně konzultován s vedoucím. 

Publikační činnost, ocenění

Výsledky práce byly prezentovány na studentské konferenci EXCEL@FIT.

Práce s literaturou

Student pracoval s literaturou dodanou vedoucím práce a samostatně si dohledával další relevantní zdroje. 

Aktivita během řešení, konzultace, komunikace

Student na tématu pracoval systematicky po celou dobu řešení. Dohodnuté termíny dodržoval a na konzultační schůzky přicházel připraven. 

Points proposed by supervisor: 95

Grade proposed by supervisor: A

Reviewer’s report
Ing. Tomáš Polášek

Práce se úspěšně zabývá návrhem a implementací systému pro automatický odhad orientace kamery za využití modelu typu Vision Transformer. Text zprávy přehledně uvádí čtenáře do problému, obsahuje nadstandardně rozsáhlý rozbor předchozích děl v oboru a detailní analýzu datasetů včetně kompletace vlastního trénovacího korpusu. Návrh architektury a její implementace jsou popsány jasně a srozumitelně. Experimentální část podrobně rozebírá kvantitativní i kvalitativní výsledky, nechybí ablační studie a testování dvoustupňového zpřesňování ("refinement"). Hlavní realizační výstup je otevřeně dostupný v repozitáři na platformě GitHub. Kladně hodnotím také fakt, že se práce zúčastnila studentské konference Excel@FIT. K výsledkům mám pouze minimum drobných výhrad, a proto doporučuji hodnocení stupněm výborně (A).

Evaluation criteria Verbal classification Points
Rozsah splnění požadavků zadání

Evaluation level: zadání splněno

Zadání je splněno ve všech požadovaných bodech. Student systematicky otestoval různé přístupy a dosažený výsledek je reálně využitelný pro další výzkum v této oblasti. Jako nezanedbatelné rozšíření vnímám zejména vysoce rigorózní přístup k průzkumu existujících metod, což vedlo k vytvoření mimořádně obsáhlé a kvalitní sekce o aktuálním stavu řešení (State-of-the-art).

Rozsah technické zprávy

Evaluation level: je v obvyklém rozmezí

Rozsah předložené technické zprávy je v obvyklém rozmezí. Text je psán srozumitelně a vhodným způsobem vede čtenáře k pochopení problematiky. Také efektivně využívá doprovodná schémata, grafy a vizualizace, které usnadňují orientaci v problematice.

Prezentační úroveň technické zprávy

Logickou strukturu textu hodnotím velmi pozitivně. Technická zpráva nejdříve čtenáře seznamuje s problémem odhadu orientace kamery. Následně podrobně analyzuje existující metody a datasety, na což navazuje kapitola s návrhem a popisem implementace vlastního řešení. Práce je vhodně završena detailním popisem experimentů a rozsáhlou analýzou výsledků. K celkové srozumitelnosti přispívají vhodně zvolené diagramy a konzistentní používání odborné terminologie a zkratek.

95
Formální úprava technické zprávy

Z hlediska typografické a jazykové kvality je práce na velmi dobré úrovni. Obsahuje pouze menší množství drobných nedostatků. Použitý anglický jazyk je srozumitelný a text je dobře čitelný. Gramatické chyby jsou spíše občasné – jde např. o vazby na str. 5 („comparable results than“ namísto „to“) či shodu podmětu s přísudkem na str. 10 („methods presented... which is“ namísto „are“). Typograficky je text čistý, nicméně některé rastrové grafy a diagramy by bylo vhodnější nahradit vektorovými pro zachování ostrosti při zvětšení. Tabulka 7.6 (ablační experimenty) je sice informačně bohatá, ale obsahuje velké množství architektonických detailů, které by bylo pro lepší čitelnost textu vhodnější přesunout do přílohy.

90
Práce s literaturou

Práce je podpořena značným množstvím kvalitní a aktuální literatury. Kromě základních vědeckých prací student cituje State-of-the-art přístupy a používané datasety. Převzaté prvky a myšlenky jsou v textu jasně a korektně odlišeny od vlastního přínosu autora, citační etika je plně dodržena. Bibliografické informace jsou kompletní. Drobnou výhradu mám k opakovaným odkazům na knihovnu py360convert formou poznámek pod čarou (např. str. 12, 39, 62); tento nástroj mohl být zaveden do bibliografie a v textu pouze citován.

90
Realizační výstup

Hlavním realizačním výstupem práce je architektura neuronové sítě a doprovodné skripty pro trénování a zpracování dat implementované v jazyce Python. Zdrojový kód je sice komentován spíše sporadicky, avšak díky dobré struktuře zůstává srozumitelný. Součástí repozitáře je soubor s popisem (README), s jehož pomocí lze plnou funkčnost kódů snadno ověřit. Všechny převzaté softwarové komponenty a knihovny byly použity v souladu s licenčními podmínkami a autorským právem. Celkově realizační výstup vykazuje velmi dobré výsledky a tvoří robustní základ, na kterém lze dále stavět.

95
Využitelnost výsledků

Jedná se o hodnotnou inženýrskou a výzkumnou práci, která jasně demonstruje potenciál modelů typu Vision Transformer pro náročné cross-modální úlohy. Dosažené výsledky jsou přímo využitelné jak v koncových aplikacích, tak jako baseline pro navazující vědecké práce. Vysoce oceňuji také rigorózní zpracování přehledu SOTA metod a analýzu dostupných datasetů.

Náročnost zadání

Evaluation level: obtížnější zadání

Zadání považuji za nadprůměrně náročné. Jedná se o otevřené výzkumné téma v oblasti počítačového vidění, u kterého není předem dán jasný či garantovaný postup, jak dojít k optimálnímu výsledku. Cross-modální charakter úlohy (párování reálných fotografií se syntetickým modelem terénu) spolu s absencí informace o zorném poli (FOV) výrazně zvyšuje komplexnost návrhu i nároky na experimentální činnost.

Topics for thesis defence:
  1. Optimalizace a reálný čas: V sekci 7.1.3 zmiňujete, že operace dlaždicování panoramat (Panorama Tiling) pomocí knihovny `py360convert` tvoří až 98,41% celkového času inference (1,89 s z 1,93 s). Jakým způsobem by se dal tento krok optimalizovat pro případné nasazení v reálném čase (např. pomocí předpočítání struktur, paralelizace na GPU nebo změny reprezentace vstupu)?
  2. Chování attention mapy: Během analýzy attention map (sekce 7.3) se ukázalo, že se model u query obrázků neustále chybně zaměřuje na černé okraje vzniklé zachováním poměru stran. Jak přesně byste navrhoval implementovat maskování těchto regionů přímo do attention mechanismu transformeru, aby k tomuto jevu nedocházelo? Nehrozí zde riziko tzv. "data leakage"?
  3. Analýza zpřesňování: Proč byly výsledky dvoustupňového zpřesňování ("refinement") celkově horší než u jednokrokového přístupu? Jak si tento fenomén vysvětlujete a jaké jiné metody či postupy by podle Vás mohly tento problém úspěšně vyřešit?
Points proposed by reviewer: 95

Grade proposed by reviewer: A

Responsibility: Mgr. et Mgr. Hana Odstrčilová