Přístupnostní navigace
E-application
Search Search Close
Bachelor's Thesis
Author of thesis: Oleg Andriichuk
Acad. year: 2025/2026
Supervisor: Ing. Michal Hradiš, Ph.D.
Reviewer: Ing. Markéta Juránková, Ph.D.
This bachelor’s thesis focuses on the design and implementation of a web application for stitching partial photographs of a large document into a single high-resolution image. The goal is to automatically align and merge overlapping images while preserving detail, eliminating visible seams, and unifying the lighting across individual photographs — all through a clear, responsive, and user-friendly web interface without requiring local software installation. The application is based on a client-server architecture using FastAPI with asynchronous SQLAlchemy on the backend and Vue.js on the frontend. For the stitching computation, an external CLI tool called Exposea is integrated, performing image merging. Results are stored in AWS S3 and served as a tile pyramid in an interactive Leaflet-based viewer in the browser. The system supports multi-user collaboration with role-based access control, photo upload with preview generation, and full job lifecycle management including re-runs and failure log access. The result is a fully functional web platform enabling users to manage projects, upload images, configure and submit stitching jobs, monitor their progress in real time, and inspect results in an interactive tile viewer with full-resolution download support. The contribution of this work lies in delivering a practical architecture for web applications that orchestrate computationally intensive external tools through a message queue, making complex image processing pipelines accessible via a standard web browser.
Image stitching, web application, SQLAlchemy, REST API, Redis Streams, FastAPI, Vue.js, AWS S3, tile pyramid, Leaflet, Exposea tool.
Date of defence
16.06.2026
Result of the defence
Defended (thesis was successfully defended)
Grading
B
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 B.
Topics for thesis defence
Language of thesis
English
Faculty
Fakulta informačních technologií
Department
Department of Computer Graphics and Multimedia
Study programme
Information Technology (BIT)
Composition of Committee
doc. Ing. Tomáš Martínek, Ph.D. (předseda) doc. Ing. Michal Španěl, Ph.D. (místopředseda) Ing. Jiří Hynek, Ph.D. (člen) Ing. Filip Orság, Ph.D. (člen) Ing. Vladimír Bartík, Ph.D. (člen)
Supervisor’s reportIng. Michal Hradiš, Ph.D.
Student důsledně pracoval s cílem vytvořit kvalitní výsledek. Bylo sice náročnější, aby pochopil zamýšlené způsoby použití aplikace, tvorbu kvalitních uživatelských rozhraních a webových aplikací s výpočetně náročným zpracováním dat, ale jeho pochopení těchto témat a schopnosti se zlepšovaly. Byl jasně zřetelný jeho pokrok. Výsledkem je dostatečně kvalitní a použitelná aplikace.
Cílem práce bylo vytvořit webovou aplikaci pro nástroje schopné sestavit obraz například velkoformátových map z fotografií nebo naskenovaných částí, které byly vytvořeny na FIT VUT v rámci výzkumného projektu Smart Digilinka. Bylo sice náročnější, aby student pochopil požadavky na aplikaci, plánovaný způsob použití a z toho vyplývající potřebné vlastnosti uživatelského rozhraní, ale výsledkem je funkční aplikace, kterou je možné používat pro cílový účel.
Student si vyhledal a nastudoval zdroje potřebné pro řešení. Tato práce ale rozsáhlejší studium literatury nevyžadovala.
Student svou práci dostatečně konzultoval a konzultace byl připraven.
Student aplikaci vytvářel průběžně. Finální verzi dokončil v předstihu a mohla být otestována uživateli. Text práce dobře konzultoval.
Grade proposed by supervisor: C
Reviewer’s reportIng. Markéta Juránková, Ph.D.
Student v rámci bakalářské práce vytvořil plnohodnotnou webovou aplikaci využívající již existující software pro skládání fotografií specializovaný na dokumenty velkého formátu. Výsledná aplikace poskytuje komplexní správu projektů, uživatelů i historie zpracování. Student vhodně navrhl a implementoval architekturu systému tak, aby byla aplikace responzivní, přehledná a uživatelsky přívětivá. Již v aktuální podobě je aplikace připravena k praktickému využití. Z výše uvedených důvodů navrhuji hodnocení známkou A.
Evaluation level: průměrně obtížné zadání
Práce je vhodně strukturovaná, jednotlivé kapitoly na sebe přirozeně navazují a provázejí čtenáře od motivace přes teorii, návrh řešení a implementaci až po vyhodnocení systému.
Typograficky a jazykově je práce na velmi vysoké úrovni. Obsahuje pouze minimální množství chyb.
Výstupem práce je aplikace vhodná k okamžitému použití. Validaci systému by však bylo vhodné vyhodnotit na větším vzorku respondentů a při širší škále úloh prováděných v aplikaci. Prezentovaných pět respondentů představuje poměrně malý vzorek, i když byli zvoleni vhodně různorodě a pro hrubou představu o práci se systémem to stačí.
Výsledná aplikace slouží jako uživatelsky přívětivé rozhraní pro software vyvinutý v rámci projektu NAKI III na FIT VUT. Ačkoli práce nepřináší nové vědecké poznatky, významně rozšiřuje možnosti využití specializovaného softwaru i mezi méně technicky zaměřené uživatele, například archiváře. Práce tak má značný potenciál pro praktické využití a reálné nasazení.
Evaluation level: zadání splněno
Evaluation level: je v obvyklém rozmezí
Práce je v obvyklém rozsahu, závěr je na straně 54.
Student správně a vhodně cituje relevantní zdroje, převzaté prvky jsou řádně odlišeny a smysluplně využity ve vlastní práci.
Grade proposed by reviewer: A
Responsibility: Mgr. et Mgr. Hana Odstrčilová