diplomová práce

Detekce změn trasy

Text práce 33.69 MB Příloha 39.95 kB

Autor práce: Ing. Dávid Dolobáč

Ak. rok: 2023/2024

Vedoucí: Ing. Miloslav Richter, Ph.D.

Oponent: Ing. Ilona Janáková, Ph.D.

Abstrakt:

Táto práca si kladie za úlohu detegovať geometrické zmeny, ktoré sa nachádzajú na vopred známej trase, ktorá je braná ako predloha alebo vzor. Geometrické zmeny predstavujú rigídne transformácie objektov v scéne, konkrétne ich rotáciu, posunutie a ich kombinácie. Ďalšim typom zmien je pridanie nových alebo odstránenie pôvodných objektov. Pôvodná trasa je snímaná monokulárnou kamerou a z videosekvencie je metódami fotogrametrie zrekonštruovaný 3D model scény v bodovej reprezentácii. Rovnakým spôsobom je vytvorený 3D model scény, ktorá obsahuje zmeny, avšak tento model zachytáva iba lokálny úsek pôvodnej trasy. Toto lokálne mračno bodov je registrované v 3D modeli pôvodnej trasy tak, aby sa 3D modely mohli medzi sebou priamo porovnať. Vyšetrovaný priestor je rozdelený na kubické voxely rovnakej veľkosti, ktoré sú postupne prechádzané a pre každý z nich sa vyšetruje miera podobnosti lokálnych povrchov. Výsledkom riešenia sú 3D body z oboch mračien označené ako zmenené alebo nezmenené. Uvedené metódy sú testované na reálnych dátach v scenároch s rôznymi geometrickými úpravami scény a vyhodnotenie detekcie zmeny je realizované ako v prípade binárneho klasifikátoru.

Klíčová slova:

detekcia zmien, voxel, povrchové normály, histogram orientácií, fotogrametria, kalibrácia kamery, 3D rekonštrukcia, mračno bodov, 3D model, registrácia, lokalizácia, MATLAB

Termín obhajoby

05.06.2024

Výsledek obhajoby

obhájeno (práce byla úspěšně obhájena)

znamkaAznamka

Klasifikace

A

Průběh obhajoby

Student obhájil diplomovou práci. Komise neměla žádné námitky k řešené práci. V průběhu odborné rozpravy odpověděl na dotazy: Doplňující otázku týkající se detekce změn student zodpověděl bez výhrad. Doplňující otázku týkající se množství voxelů v okolí student zodpověděl bez výhrad. Doplňující otázku týkající se osvětlení scény student zodpověděl

Jazyk práce

slovenština

Fakulta

Ústav

Studijní program

Kybernetika, automatizace a měření (MPC-KAM)

Složení komise

doc. Ing. Jan Mikulka, Ph.D. (předseda)
doc. Ing. Petr Blaha, Ph.D. (místopředseda)
Ing. Jiří Fialka, Ph.D. (člen)
Ing. Miloslav Richter, Ph.D. (člen)
Ing. Soňa Šedivá, Ph.D. (člen)
Ing. Soběslav Valach (člen)

Posudek vedoucího
Ing. Miloslav Richter, Ph.D.

Celá práce má rozsah 84 stran a svědčí o značných studentových znalostech. Teoretický úvod má délku 48 stran, čímž se řadí mezi delší. Teorie je zde ovšem zpracována precizně a přehledně, na základě nastudované literatury. Jedná se o ucelený popis celého postupu 3D zpracování scény bez výraznější nutnosti odbíhat ke zdrojům, z nichž bylo čerpáno, a které jsou citovány. Vhodné je také provázání úvodní části s vlastní prací, včetně použití snímků z vlastního řešení k demonstraci. Zároveň je nutné konstatovat, že většina materiálů z úvodu byla při řešení použita. Vlastní řešení je přehledně popsané a doprovázené demonstračními snímky a diagramy. Z předložené práce plyne, že práce byla zpracována na velice dobré prezentační i technické úrovni a splnila zadané úkoly. SW je dodán jako aplikace, ve které je možné zpracovávat vlastní data. Student na práci pracoval samostatně, zvláště pak v realizační fázi, kdy pravidelně konzultoval, převážně však vážnější souvislosti nebo problémy spojené s řešením. Výsledný počet bodů navržený vedoucím: 96

Známka navržená vedoucím: A

Úkolem pana Dolobáče bylo navrhnout aplikaci, která zajistí asistenci při průchodu známou trasou a upozorní na významné body trasy a na geometrické změny v ní. Předložená diplomová práce má nadprůměrný rozsah 85 normostran (úvod-závěr) a celkem se všemi přílohami a náležitostmi 120 stran. I přes značný rozsah dokumentu se studentovi podařilo udržet dobrou formální i grafickou úroveň a ve slovensky psaném textu jsem odhalila jen několik překlepů nebo stylistických chyb. Celkem bylo využito 50 správně citovaných a v textu odkazovaných zdrojů a samotné zpracování zdrojů (jsou využity především v prvních dvou teoretických kapitolách) je velmi kvalitní.
V první kapitole diplomant dělí možné přístupy na 2D a 3D. Oceňuji, že si na základě důkladné rešerše a vlastního zhodnocení vybral výhodnější 3D přístup, který je však náročnější a přináší řadu výzev. O tom svědčí i druhá kapitola, která má pro představu rozsah 41 stran, 27 obrázků a přes 120 vztahů (+ další i neočíslované). Tato kapitola je velmi precizně zpracována. I náročné matematické operace jsou vysvětleny srozumitelně a kapitola by mohla být využita i samostatně jako kvalitní studijní materiál. Popisuje od homogenních souřadnic a modelu kamery, přes určení orientace kamery a triangulaci 3D bodů až k registraci mračen bodů a jejich voxelové reprezentaci. Diplomant i v této teoretické části již naznačuje konkrétní využití v řešené úloze. Kdybych měla něco nutně vytknout, byl by to asi jen trochu stručnější popis metody Bundle Adjustment. Nebo, že by do logického celku zapadaly i detektory a deskriptory významných bodu, ale podle praktické části je s nimi diplomant dobře obeznámen.
Ve třetí kapitole je definována úloha. Scéna je vymezená podmínkami (statická, interiér, bez okluze, výrazných změn osvětlení a opakujících se vzorů). Omezení pohybu (trasy) kamery a její orientace vůči scéně není v textu přímo popsáno, ale z obrázků a snímků jednotlivých tras na přiloženém médiu je patrné, že jde o přibližně rovnoměrný pohyb kamery ve směru rovnoběžném se scénou, kdy kamera je pravděpodobně držena v ruce a orientovaná kolmo ke směru pohybu. Na ukázkách, demonstrujících i typickou scénu, jsou prezentovány změny, které by měly být detekovány – přidání nebo odebrání objektu, posunutí či rotace objektu, záměna objektů a různé vzájemné kombinace těchto změn. Vzhledem k výběru 3D řešení mohly být možná podmínky méně striktní, resp. testovací trasy pestřejší – změny osvětlení (pro potvrzení jedné z uvedených výhod řešení v 3D) a větší rozdíly referenční a porovnávané trasy i s možnou menší změnou orientace kamery (nejen translační pohyb). Věřím, že by to navržený algoritmus i takto zvládl.
Dále je popsán celý vytvořený systém detekce změn vycházející z teoretického úvodu. Nejdříve jako koncepční návrh v kapitole 4 a pak v kapitole 5 jeho realizace. Zde bych navrhovala spíše sloučení obou kapitol, které by usnadňovalo pochopení běhu celého programu rovnou prezentací na názorných ukázkách dílčích výsledků bez dublování popisu stejného postupu, případně hledání změn a nutnosti se stále vracet o několik stran zpět. Celková koncepce i jednotlivé dílčí kroky řešení byly podle mě ale zvoleny správně, což potvrzují i dosažené výsledky. Oceňuji zejména několikanásobnou filtraci a že se student nespokojil jen s vyhodnocením jsou/nejsou body v daném voxelu, ale změny analyzuje přes histogram orientací normál povrchů.
Vyhodnocení bylo provedeno jistě pracným ručním vyznačením 3D bodů představujících změnu ve všech mračnech a sestavením matice záměn klasifikace je/není změna. Výsledky všech porovnávaných tras jsou uvedeny v příloze. Vytkla bych jen absenci celkové úspěšnosti systému a testu opakovatelnosti (stejná scéna bez změn změřena dvěma průchody).
Vlastní zdrojový kód na přiloženém médiu je dobře strukturovaný, čitelný a přiměřeně komentovaný. Navíc je přiložena i užitečná demonstrační aplikace i s vhodnými parametry pro jednotlivé trasy a pro nezávislé testování i s uloženými mezivýsledky. Případné výtky k samotnému postupu algoritmu by byly opět jen drobnosti, např., že snímky mohly být převedeny do šedotónu a geometricky transformovány pouze jednou, a ne při každé detekci významných bodů. Také procházení všech snímků a detekce, distribuce a extrakce významných bodů v prvním kroku jen pro určení vhodného počtu bodů mi přijde vzhledem k časové náročnosti trochu zbytečné. Mohlo být řešeno spíše univerzálněji nebo případně jako nastavitelný parametr.
Pan Dolobáč odevzdal k posouzení velmi kvalitní diplomovou práci, která jistě prokazuje jeho inženýrské schopnosti, proto doporučuji práci k obhajobě s hodnocením A (90 b). Otázky k obhajobě:
  1. Jaké odhadujete, že by Váš algoritmus ještě zvládl změny scénáře – do jaké míry by se vypořádal se změnami světelných podmínek, trajektorie pohybu a změny orientace kamery, velikostí provedených změn atd.?
  2. Setkal jste se při literární rešerši s přístupy, které by využívaly nějakou vhodnou segmentaci jednotlivých 3D objektů? Případně, jak by se segmentace dalo využít pro detekci změn?
Výsledný počet bodů navržený oponentem: 90

Známka navržená oponentem: A

Odpovědnost: Mgr. et Mgr. Hana Odstrčilová