Bachelor's Thesis

Object Image Correction

Final Thesis 11.24 MB Appendix 13.22 MB

Author of thesis: Bc. Uladzimir Volhinau

Acad. year: 2025/2026

Supervisor: Ing. Miloslav Richter, Ph.D.

Reviewer: Ing. Dominik Řičánek

Abstract:

This semester thesis focuses on the design and implementation of an application for processing images of planar objects with an emphasis on contour extraction. The aim of the work is to create an interactive tool that enables edge detection, contour filtering, basic contour manipulation, and geometric approximation. Image processing is based on a combination of Gaussian filtering, Canny edge detection, and morphological operations. The solution includes a graphical user interface that allows the user to interactively adjust processing parameters and visually evaluate the
results. The outcome of the work is a functional desktop application providing a visual representation of extracted contours, serving as a basis for further extension in the subsequent bachelor thesis.

Keywords:

digital image processing, edge detection, object contours, morphological operations, contour approximation, graphical user interface, data preparation for 3D printing

Date of defence

16.06.2026

Result of the defence

Defended (thesis was successfully defended)

znamkaBznamka

Grading

B

Process of defence

Student obhájil bakalářskou práci. Komise neměla žádné námitky k řešené práci. V průběhu odborné rozpravy student odpověděl na dotazy oponenta týkající se defaultního chování knihovny OpenCV při transformaci RGB do šedotónového prostoru a principu funkce Cannyho hranového detektoru. Komise studentovi položila dotazy týkající se nedostatečně akcentovaných cílů práce, schopnosti algoritmu produkovat objekty se správnou škálou.

Language of thesis

Czech

Faculty

Department

Study programme

Automation and Measurement (BPC-AMT)

Composition of Committee

doc. Ing. Zdeněk Slanina, Ph.D. (předseda)
doc. Ing. Zdeněk Bradáč, Ph.D. (místopředseda)
Ing. Karel Horák, Ph.D. (člen)
Ing. Stanislav Pikula, Ph.D. (člen)
Ing. Miloslav Richter, Ph.D. (člen)

Supervisor’s report
Ing. Miloslav Richter, Ph.D.

Značnou část práce student vypracoval v rámci semestrální práce. V dalším průběhu konzultoval minimálně a pracoval samostatně. Výsledná práce je ovšem na dobré úrovni, splňuje zadání bezezbytku. V některých částech student volil jednoduchá řešení, i když složitější řešení by nebyly o hodně pracnější, ale aplikace by byla univerzálnější. Např. u volby použitých  kontur do finálního řešení by bylo vhodné zavést možnost určovat jejich hierarchii (vnitřní, vnější, nepoužitá …) a příslušné parametry generování pro danou oblast. Student aplikaci realizoval a následně kvalitně odzkoušel. Dosažené výsledky svědčí o použitelnosti a tedy správnosti navrženého řešení. Prezentační a formální úroveň práce je na dobré úrovni. Použitá literatura je v práci citovaná.
Předložená práce svědčí o bakalářských schopnostech studenta. Points proposed by supervisor: 85

Grade proposed by supervisor: B

Reviewer’s report
Ing. Dominik Řičánek

Student Uladzimir Volhinau zrealizoval práci okolo tématu snímání, úpravy a transformace 2D kontur do 3D objektu, za účelem 3D tisku. Seznámil se s pokročilými koncepty z oblasti strojového vidění a vyvinul program v jazyce Python, pomocí knihovny OpenCV, jehož funkčnost následně ověřil na čtyřech typech tvarově komplexních objektů.
Práce má 65 stran, z čehož úvod zabírá polovinu jedné stránky, teoretický rozbor 17 stran a praktická část 46 stran. Dosažené výsledky jsou shrnuty na dvou stranách závěru. Pracuje s 19 literárními zdroji.
V teoretické části student popisuje elementární prvky nutné k vyhotovení svého úkolu, nezachází však příliš do hloubky a například Cannyho hranový detektor, který je zásadní pro studentovu práci, je ponechán pouze jako „vícekroková metoda“. Z několika možností je zde vybrána metoda pro snímání objektu a datový typ
V praktické části pan Volhinau správně rozvrhnul hrubou strukturu programu na základě úvahy o potřebách uživatele. Student zde vytváří dataset komplexních objektů pod různými světelnými podmínkami, aby vyvinul dostatečně robustní algoritmus pro výpočet kontur. Obraz nejprve převede do šedotónové oblasti a následně aplikuje Gaussův filtr pro odstranění šumu. Jakou transformaci mezi RGB a šedotónovým obrazem použil není zmíněno. Student se zde potýká s problémy při detekování hran a identifikaci slabých kontur, které řeší poněkud zjednodušeným způsobem. Naopak velmi sofistikovaně zde student řeší problematiku duplicitních kontur, jejich aproximaci a následné filtrování vytvořených polygonů, které jsou převedeny do STL a DXF souborů. Součástí práce je také jednoduché grafické uživatelské rozhraní umožňující nastavení parametrů pro detekci kontur, kalibraci rozměrů objektu a nastavení tloušťky výsledného tisku. Na závěr pan Volhinau testuje geometrickou přesnost takto vytvořených 3D objektů a dosahuje úctyhodných výsledků.
Práce je kvalitně zpracovaná a odpovídá schopnostem bakaláře. Doporučuji k obhajobě se stupněm A (90b). Topics for thesis defence:
  1. 1. Jak OpenCV defaultně transformuje RGB obraz do šedotónového prostoru?
  2. 2. Popište jednotlivé kroky Cannyho hranového detektoru.
Points proposed by reviewer: 90

Grade proposed by reviewer: A

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