bakalářská práce

Segmentace symbolů ve skenech pneumatik s použitím self-supervised learning

Text práce 14.09 MB

Autor práce: Bc. Michal Balogh

Ak. rok: 2024/2025

Vedoucí: doc. Ing. Michal Španěl, Ph.D.

Oponent: prof. Ing. Adam Herout, Ph.D.

Abstrakt:

Táto bakalárska práca sa zaoberá efektívnym dotrénovaním segmentačných modelov pre rozpoznávanie symbolov na bočniciach pneumatík. Súčasné riešenie používané firmou Micro-Epsilon Inspection, s.r.o. vyžaduje približne 72 hodín na adaptáciu na nové symboly. Hlavným cieľom práce bolo výrazne skrátiť tento čas pri zachovaní alebo zlepšení kvality segmentácie. Analyzované boli rôzne state-of-the-art prístupy k segmentácii obrazu vrátane few-shot učenia a kombinácií detekčných a segmentačných modelov. Na základe úvodných experimentov bola implementovaná metóda založená na modeli OneFormer v kombinácii s technikami zmiešanej presnosti a Low-Rank Adaptation (LoRA). Navrhnuté riešenie umožňuje adaptáciu na nové symboly v čase kratšom než jedna hodina, čo predstavuje 72-násobné zrýchlenie oproti pôvodnému riešeniu, pričom dosahuje porovnateľné alebo lepšie výsledky segmentácie. Práca tiež analyzuje vplyv rôznych typov segmentácie, inicializácií váh a pomerov trénovacích dát na výkon modelu.

Klíčová slova:

Segmentácia obrazu, OneFormer, Low-Rank Adaptation (LoRA), zmiešaná presnosť, efektívne dotrénovanie, transformery, inštančná segmentácia, symboly na pneumatikách, hĺbkové snímky, kvalita segmentácie

Termín obhajoby

18.06.2025

Výsledek obhajoby

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

znamkaCznamka

Klasifikace

C

Průběh obhajoby

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 C.

Otázky k obhajobě

  1. Čím si vysvětlujete, že syntetický dataset naprosto selhal (Obr. 8.7, 8.8)? Data jsou poměrně jednoduchá a vytváření naprosto věrohodných syntetických vzorků by mělo být přímočaré...
  2. Bylo by rozumné použít binární segmentační model symbol/pozadí a následně v binarizovaném obraze (třeba v daleko menším rozlišení) detekovat symboly? Jak segmentační, tak detekční model by mohl být o mnoho řádů jednodušší, než současné řešení, a na základě dobré binární segmentace, která by byla jednotná pro všechny symboly, by mohlo být výrazně jednodušší dotrénovat detektor specifického symbolu. Jaké jsou důvody pro použití současného, enormně náročného, přístupu?

Jazyk práce

slovenština

Fakulta

Ústav

Studijní program

Informační technologie (BIT)

Složení komise

prof. Ing. Adam Herout, Ph.D. (předseda)
Dr. Ing. Petr Peringer (člen)
Ing. Matěj Grégr, Ph.D. (člen)
Ing. Jaroslav Rozman, Ph.D. (člen)
Ing. Jiří Matoušek, Ph.D. (člen)

Pan Balogh navazoval na práci z minulých let a měl tak k dispozici datovou sadu i tzv. baseline řešení. Od firmy však měl i konkrétní cíl, kam řešení dále posunout. Optimalizace stávajícího řešení pro bakaláře, který teprve získávajícího znalosti v oblasti hlubokého učení, není snadné. S tímto úkolem a tématem si poradil velmi dobře.

Kritérium hodnocení Slovní hodnocení
Informace k zadání

Zadání vzniklo ve spolupráci s firmou Micro-Epsilon Inspection, s.r.o. a navazuje na práci pana Totha z roku 2022 s názvem "Identifikace znaků na hloubkovém snímku pneumatiky." Původním cílem zadání bylo zjednodušit řešení pana Totha s využitím self-supervised technik tak, aby nevyžadovalo náročné dotrénování pro doplnění nového symbolu. Během konzultací s firmou a prvotních experimentů se ukázalo, že nejzásadnějším problém je rychlost dotrénování modelu a nikoliv dostupnost anotací nových dat. Student tedy svoji snahu zaměřil tímto směrem, čímž se mírně odchýlil od původního zadání, ale po domluvě s vedoucím. Zadání považuji za splněné. Finální řešení sice nestojí na self-supervised/unsupervised technikách, ale naplňuje cíle spolupráce s firemním partnerem i požadované body zadání.

Práce s literaturou

Potřebnou literaturu a metody student sám vyhledal a prostudoval. Na základě získaných znalostí a prvotních experimentů se zaměřil na využití segmentačního modelu OneFormer.

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

Student pracoval samostatně a na příležitostných konzultacích spíše jen prezentoval stav řešení a další plány. Projevil velkou míru samostatnosti a využití získaných znalostí při řešení, návrhu a implementaci reálného problému.

Aktivita při dokončování

Práce byla dokončena v dostatečném předstihu a definitivní podoba technické zprávy byla přiměřeně konzultována.

Publikační činnost, ocenění

Aktivní účast a příspěvek na studentské konferenci Excel@FIT.

Výsledný počet bodů navržený vedoucím: 85

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

Jedná se o velice obtížnou práci charakteru R&D. Složitost problematiky patrně přesáhla (současné) schopnosti řešitele. Na jednu stranu se při řešení jistě potýkal se zajímavými a náročnými problémy a musel nastudovat a do jisté míry pochopit hodně komplexní problematiku. Na stranu druhou je z výsledku patrné, že problematiku nepochopil/neovládl dostatečně, takže dosažené výsledky jsou značně pochybné. V tomto případě by asi bylo lépe se pustit do snazšího, uchopitelnějšího zadání a to zvládnout a dodat výsledek, který by byl možná méně ambiciózní, ale více kredibilní a solidní.

Kritérium hodnocení Slovní hodnocení Body
Náročnost zadání

Stupeň hodnocení: obtížnější zadání

Zadání je poměrně obtížné. Řešitel měl navázat na předchozí práci studenta pro firmu, ve které bylo použito strojové učení a počítačové vidění. Zpracovávaná data jsou poněkud atypická – hloubkové skeny pneumatik v hodně velkém rozlišení. Při řešení používal hodně rozměrné a náročné metody strojového učení.

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

Technická zpráva v celém svém rozsahu ukazuje na nepochopení základů zkoumané oblasti – která je ovšem velice náročná a složitá. V tomto případě by patrně bylo pro řešitele přístupnější pustit se do zadání méně náročného, které by ale dobře zvládl.

Technická zpráva neanalyzuje dobře skutečně důležité vlastnosti zkoumaného řešení – o co přesně při kontrole kvality při výrobě pneumatik jde a jaké informace by kontrolní systém měl poskytnout. V anotacích a při zpracování pracuje v systému pouze se symboly, které se vyskytují v obraze celé (obr. 3.2 a okolní text), což může být značnou vadou (a ukazuje na nepochopení problematiky).

Těžiště řešení pro studenta patrně bylo v implementačním řešení. To naznačuje, že největší detail je v kapitole 7: řešitel se potýkal s konverzemi anotačních formátů a ne tolik se samotným strojovým učením a jeho optimalizací.

Experimenty v kapitole 8 jsou značně neuspokojivé a neinterpretovatelné. Řešitel si neosvojil způsob, jakým způsobem jsou podobné systémy testované a jak jsou reportované jejich výsledky. Všechny grafy jsou pořízené jako screenshoty (patrně z W&B), které každou veličinu měří v závislosti na počtu kroků trénování. V experimentech chybí užitečná ablační studie, která by skutečně srovnala, jak se různé části řešení (obr 6.1) chovají a co přinášejí/kazí. Datová sada je malá a nejspíše pochází celá z práce předchozího studenta – řešitel této bakalářské práce k rozměru nebo kvalitě datové sady (bohužel) nepřispěl.

Trénování modelů probíhalo s velikostí dávky (batch size) 4 nebo 2 (první odstavec na straně 33), což ukazuje na hrozné nepochopení samotných základů strojového učení a dokonale to zpochybňuje všechna měření. Volba daleko skromnějšího, menšího modelu, který by umožnil "rozumné" parametry trénování, by patrně byla daleko vhodnější.

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

V textu je množství dost základních pravopisných chyb ("detegovaný", "inštancií/inštancii", "pred trénovný", ...).

75
Realizační výstup

Řešitel vytvořil skripty pro strojové učení a kód pro převody formátu anotací datových sad. Pracoval s velice sofistikovanými a náročnými modely strojového učení. Na jednu stranu musel vynaložit množství energie na jejich zprovoznění a základní pochopení. Na druhou stranu provedená měření a experimenty ukazují, že pochopení je pouze částečné a základní a provedené experimenty nemají velkou cenu.

Některé důležité části řešení jsou v kódu přímo zakódovaná a neumožňují experimentování (například, původní obrázky se silně nestejným poměrem stran jsou při učení převedeny natvrdo do rozlišení 512×512 – včetně změny poměru stran – to je zásadní deformace, která nebyla testovaná a má neurčité konsekvence). Vytvořené experimentální výsledky byly zhusta dosaženy modifikováním skriptů, takže replikace experimentů je nemožná (nebo extrémně obtížná). 

Grafy s výsledky experimentů jsou pořízené jako screenshoty (patrně z W&B), nikoli s použitím vhodných knihoven pro vykreslování, čímž jsou experimenty opět obtížně replikovatelné.

65
Využitelnost výsledků

Provedené experimenty jsou z různých důvodů pramálo důvěryhodné a posuzovatel by nedoporučoval z nich dělat JAKÉKOLI závěry.

Rozsah splnění požadavků zadání

Stupeň hodnocení: zadání splněno s vážnějšími výhradami

Podle zadání měl řešitel zkoumat možnosti self-supervised a unsupervised learning. Výsledné řešení ale používá existující datovou sadu předchozího studenta bez rozšíření a používá "klasické" učení s učitelem. Rozšíření je v tom, že dříve natrénovaný model dotrénovává na datech, kde jsou smíchané nové vzorky se starými daty; to ale není dobrá realizace záměru self/un-supervised learning.

Provedené experimenty také ukazují na základní nepochopení jádra prolematiky (která je však hodně náročná a přesahuje obvyklý rozsah bakalářského studia). Provedené experimenty jsou značně vadné a posuzovatel by se na jejich základě zdráhal dělat JAKÉKOLI závěry.

Rozsah technické zprávy

Stupeň hodnocení: je v obvyklém rozmezí

Rozsah textu je adekvátní; jeho kvalita však není vysoká.

Práce s literaturou

Řešená problematika je hodně složitá a při řešení se student musel zorientovat v náročné oblasti, která přesahuje běžný rámec bakalářského studia. V tomto případě byla složitost problematiky patrně nad možnosti řešitele a práce ukazuje na zásadní nepochopení samotných základů: jak modely fungují, jak se učí, jak reportovat jejich výsledky, co vlastně řešit.

75
Otázky k obhajobě:
  1. Čím si vysvětlujete, že syntetický dataset naprosto selhal (Obr. 8.7, 8.8)? Data jsou poměrně jednoduchá a vytváření naprosto věrohodných syntetických vzorků by mělo být přímočaré...
  2. Bylo by rozumné použít binární segmentační model symbol/pozadí a následně v binarizovaném obraze (třeba v daleko menším rozlišení) detekovat symboly? Jak segmentační, tak detekční model by mohl být o mnoho řádů jednodušší, než současné řešení, a na základě dobré binární segmentace, která by byla jednotná pro všechny symboly, by mohlo být výrazně jednodušší dotrénovat detektor specifického symbolu. Jaké jsou důvody pro použití současného, enormně náročného, přístupu?
Výsledný počet bodů navržený oponentem: 59

Známka navržená oponentem: E

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