Bachelor's Thesis

Web Application for Photo Stitching

Final Thesis 5.4 MB

Author of thesis: Bc. Ondřej Prokop

Acad. year: 2025/2026

Supervisor: Ing. Michal Hradiš, Ph.D.

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

Abstract:

This bachelor’s thesis addresses the problem of stitching large-format documents captured in parts within the environment of memory institutions. It describes the design and implementation of a web application called StitcherHub using modern technologies. Based on
an analysis of the target user group and existing solutions, it integrates the MapStitcher and Exposea tools developed at FIT BUT in Brno within the Smart digilinka project. The result is a functional application providing project management, photograph uploading,
real-time stitching progress monitoring, and interactive result viewing using Deep Zoom Image technology.

Keywords:

Image stitching, web application, memory institutions, FastAPI, Celery, Vue, Deep Zoom Image, digitization.

Date of defence

15.06.2026

Result of the defence

Defended (thesis was successfully defended)

znamkaCznamka

Grading

C

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

Topics for thesis defence

  1. Proč jste více nekonzultoval s vedoucím?
  2. Kolik potenciálních uživatelů aplikace má? S kolika uživateli jste aplikaci testoval?

Language of thesis

Czech

Faculty

Department

Study programme

Information Technology (BIT)

Composition of Committee

doc. Dr. Ing. Dušan Kolář (předseda)
doc. Dr. Ing. Otto Fučík (místopředseda)
RNDr. Marek Rychlý, Ph.D. (člen)
Ing. František Grézl, Ph.D. (člen)
Ing. Tomáš Goldmann, Ph.D. (člen)

Supervisor’s report
Ing. Michal Hradiš, Ph.D.

Student pracoval téměř zcela samostatně. Výsledkem je ale rozumná a funkční aplikace. V míře, kterou můžu zhodnotit, student pochopil řešenou oblast a snažil se vytvořit funkční a kvalitní řešení.

Evaluation criteria Verbal classification
Information about assignment

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. Student svůj postup nekonzultoval, ale překvapivě vytvořil funkční aplikaci, kterou je možné použít pro zamýšlený účel.

Work with literature

Vzhledem k absenci konzultací můžu studentovu aktivitu v tomto směru hodnotit jen velmi omezeně. Výsledkem jeho činnosti ale bylo, že pochopil cíl práce, prostudoval si funkci nástrojů vytvořených v rámci projektu Smart Digilinka a dobře se seznámil s tvorbou webových aplikací. Na konzultaci před odevzdáním se mi s ním o tématu dobře diskutovalo.

Activity during solution, consultations, communication

Student během řešní nekomunikoval a nekonzultoval.

Activity during completion

Student aplikaci dokončil v rozumném předstihu. Text práce konzultoval, ale omezeně.

Publication activity, awards
Points proposed by supervisor: 71

Grade proposed by supervisor: C

Reviewer’s report
prof. Ing. Adam Herout, Ph.D.

Řešitel vytvořil aplikaci podle zadání. Technická zpráva nepodává některé informace, které by bylo lze očekávat. Provedené testování je pouze základní a řešitel nezmiňuje iterativní vylepšování na základě provedených testů. Aplikace nebyla nasazena na vhodném serveru (nebo o tom technická zpráva alespoň mlčí).

Evaluation criteria Verbal classification Points
The difficulty of the assignment

Evaluation level: less difficult assignment

Student vytvořil webovou aplikaci, která poskytuje UI pro práci s hotovými výpočetními komponentami. Samotným procesem spojování fotografií se tedy nezabýval. Testování výsledné aplikace zdaleka není vyčerpávající a technická zpráva nezmiňuje žádný funknční depoloymnet, kde je aplikace nasazená, takže vytvořené řešení je spíše minimalistickou odpovědí na zadání.

Presentation level of the technical report

Technická zpráva vůbec nezmiňuje pozadí spojování fotografií. Řešitel sice použil již hotové řešení, takže nemusel řešit samotné algoritmy, ale krátce podat podstatu výpočetních metod by v práci bylo relevantní. Teoretická část práce taktéž nezmiňuje žádné nastudované znalosti o vývoji webových aplikací, zabezpečení, optimalizace, atd. Provedené testování je minimalistické. Měření času zpracování (explicitně vyžadované bodem 5. zadání) je vyřešené jedinou tabulkou (7.2), která uvádí časy pro jediný běh, nad jedinou sadou. To poskytuje pouze základní vhled. Text také uvádí, že časy byly naměřeny přidáním ad-hoc kódu, který byl následně odstraněn, takže změřit schopnosti aplikace po případném vylepšení už není možné. U práce, která se zaměřuje na vývoj použitelného UI by bylo na místě očekávat časné testování – s návrhy, prototypy, s ranou implementací aplikace – a úpravy UI na základě zjištěných skutečností. O takovém iterativním vývoji technická zpráva nehovoří. Technická zpráva také nezmiňuje, že by aplikace byla nasazená na vhodném serveru – mluví o kombinaci různých zdarma dostupných služeb, ale pokud by aplikace měla být používána výzkumnou skupinou a cílovými uživateli (což je patrně původní motivace zadání), řešitel měl nasazení na vhodném serveru diskutovat a řešit.

75
Formal preparation of a technical report

Po formální stránce je technická zpráva velice dobrá, ale ne skvělá.

85
Realisation output

Vytvořená aplikace je patrně funkční podle zadání. Bylo by na místě aplikaci nasadit na vhodném (fakultním?) serveru a připravit pro větší testování a případné reálné nasazení. Aplikace patrně neřeší možnosti zkoumání chyb vzniklých při spojování a jejich nápravy. Provedené testování je pouze základní.

70
Usability of results

Aplikace (kupodivu) nebyla nasazena a není připravená pro reálné používání.

The extent to which the requirements of the assignment have been met

Evaluation level: assignment fulfilled with minor reservations

Bod 5. zadání vyžaduje testování aplikace. Provedené testy jsou ale hodně minimalistické a sotva uspokojivé. Vyhodnocení rychlosti (a zřejmě i použitelnosti) bylo provedeno nad jedinou sadou obrázků, použitelnost byla testována jednou (nikoli iterativně) na sadě pěti respondentů. Pro skutečně použitelnou aplikaci by bylo vhodné testovat v průběhu vývoje, reagovat na připomínky a problémy a iterativně aplikaci vylepšovat.

Extent of the technical report

Evaluation level: is within the usual extent

Work with literature

Jak bylo zmíněno, technická zpráva nepodává ani základní přehled problematiky spojování fotografií a neshrnuje nastudované informace o vývoji moderních webových aplikací.

75
Points proposed by reviewer: 70

Grade proposed by reviewer: C

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