Skúšku na predmete Strojové videnie a výpočtová inteligencia je možné absolvovať dvomi spôsobmi. Základnou formou je absolvovanie skúškového testu za 50 bodov. Pre aktívnych prakticky zameraných študentov s hlbším záujmom o problematiku máme pripravenú druhú alternatívu. Je možné alternatívne namiesto testu vypracovať skúškové zadanie v hodnote 50 bodov. Zadanie sa prezentuje v deň skúšky prezenčne (cca 15 minút). V rámci prezentácie treba vysvetliť problematiku a demonštrovať implementovaný príklad. Počet zadaní je limitovaný a treba sa naňho prihlásiť najneskôr 6 dní pred termínom skúšky. Jedno zadanie môže robiť len jeden človek, ak nie je uvedené inak. Svoj výber nahlasujete Erikovi Kučerovi e-mailom alebo v chate MS Teams. Konzultácie prebiehajú cez chat v MS Teams. Obsadenosť zadania si je potrebné skontrolovať nižšie.
Zadanie pozostáva z naštudovania problematiky a odovzdania:
- dokumentácie resp. referátu vo forme DOCX / PDF (vzorové referáty: https://elearning-old.mechatronika.cool/wp-content/uploads/2017/12/OPC-… alebo https://elearning-old.mechatronika.cool/wp-content/uploads/2017/12/MQTT…)
- prezentácie vo forme PPTX / PDF
- okomentovaného zdrojového kódu, ak sa to v danej téme hodí a je vyžadovaný demonštratívny príklad
1. MediaWiki a výpočtová inteligencia
Cieľom tohto zadania je preskúmať možnosti redakčného systému (systému pre tvorbu webu) MediaWiki (https://www.mediawiki.org/wiki/MediaWiki), na ktorom je založená Wikipedia alebo rôzne fanúšikovské weby (typu https://marvelcinematicuniverse.fandom.com/wiki/Marvel_Cinematic_Univer… alebo https://www.mariowiki.com/). Je potrebné zistiť a zdokumentovať minimálne nasledovné záležitosti:
- dostupnosť šablón - aké sú možnosti modifikácie vzhľadu
- aké technológie sú vyžadované pre backend
- aké roly sú podporované (admin, editor, registrovaný užívateľ...)
- podpora LaTeX
- aké sú možnosti kontroly obsahu (dá sa nastaviť schvaľovanie zmien? je možné stránky označovať jednoduchým spôsobom tak, ktoré boli skontrolovanú odborníkom a ktoré nie?)
Následne je potrebné (stačí lokálne) takýto web rozchodiť a pripraviť aspoň 3 podstránky (každá s dĺžkou maximálne ako tu: http://matlab.fei.tuke.sk/wiki/index.php?title=IT_a_OT alebo https://wiki.metakgp.org/w/Encore - stačí cca 3/4 takéhoto rozsahu):
- jedna podstránka bude obsahovať učivo z nejakej prednášky (alebo viacerých prednášok) - stačí "copy paste" a nejake slušne usporiadať
- dve podstránky budú obsahovať témy z oblasti výpočtovej inteligencie alebo strojového videnia, ktoré si naštudujete aj zo zahraničných zdrojov a spracujete do vhodnej formy (ide vlastne o referát vo forme wiki stránky) - nemusí ísť len o teoretickú tému, ale o tému praktickej implementácie nejakého problému - tematicky sa môžete inšpirovať aj vyššie, ale samozrejme, netreba ísť veľmi do hĺbky, ako pri zadaniach, ktoré sa zaoberajú len problémom z oblasti výpočtovej inteligencie a nie aj platformou MediaWiki
K čomu je toto dobré? Zvažujeme do budúcna možnosť tvorby takejto ústavnej wiki platformy, ktorá by sa zaoberala viacerými oblasťami mechatroniky a inteligentných technológií. Referáty a projekty z rôznych predmetov, ktoré by boli kvalitné, by tak nemuseli ísť do šuflíka, ale boli by pridávané na takúto web stránku a voľne dostupné.
Prezentáciu a PDF stačí urobiť k WikiMedia a odbornú tému z výpočtovej inteligencie prezentovať z vytvorenej stránky.
Toto zadanie môže robiť viacero ľudí (nie v tímoch) a voľných miest je: 2
2. Docker kontajner v cloude
Vytvorte Docker kontajner, ktorý bude poskytovať službu z oblasti výpočtovej inteligencie alebo strojového videnia (napríklad klasifikovať zviera a podobne) a nasaďte ho do cloudu (napr. Azure).
Prihlásená študentka: Lomenová
3. Základy Robot Operating System, RViz a Gazebo
V téme ide o vysvetlenie základov ROS a jeho nástrojov RViz a Gazebo. Ide o teoretickejšiu tému vhodnú pre rečníka - vyžaduje sa teda kvalitnejšia teoretická príprava, získanie komplexného prehľadu a zrozumiteľnejšie vysvetlenie problematiky ako pri ostatných témach. Vieme poskytnúť kvalitné tutoriály: https://www.udemy.com/course/ros-essentials/ , https://www.udemy.com/course/ros-navigation/ , https://www.udemy.com/course/ros2-how-to/ . Dobrý zdroj je kniha: http://wiki.ros.org/Books/ROS_Robot_Programming_English . ROS je často predmetom aj diplomových prác, znalosti sa dajú neskôr využiť.
Prihlásený študent: Ahaponau
4. Robot Operating System - mapovanie prostredia
V zadaní ide o naštudovanie spôsobov mapovania prostredia pomocou ROS, vytvorenie praktickej ukážky (môže byť aj prevzatá) v RViz a Gazebo. Vysvetlite rozdiely v mapovaní pomocou Lidaru a hĺbkovej kamery, atď. Vieme poskytnúť kvalitné tutoriály: https://www.udemy.com/course/ros-essentials/ , https://www.udemy.com/course/ros-navigation/ .
5. Robot Operating System - autonómna jazda / rozpoznávanie značiek
Demonštrujte praktickú ukážku (môže byť aj prevzatá) autonómnej jazdy, rozpoznávania značiek, navigácie vozíkov v sklade alebo podobnej aplikácie realizovanej pomocou ROS. Ukážka môže byť aj prevzatá, avšak vyžaduje sa hĺbkové pochopenie a menší autorský vklad.
Toto zadanie môže robiť viacero ľudí (nie v tímoch) a voľných miest je: 2
6. Robot Operating System v prepojení s 3D enginom Unity
Téma je vhodná pre študentov predmetu Virtuálna a zmiešaná realita. Nájdite alebo vymyslite aplikáciu prepojenia Unity a ROS. Pri nájdenej aplikácií sa očakáva jej dôkladné zdokumentovanie a odprezentovanie a menší autorský vklad.
Toto zadanie môže robiť viacero ľudí (nie v tímoch) a voľných miest je: 2
7. Programovací jazyk Rust
Cieľom zadania je predstaviť jazyk Rust, jeho výhody a porovnanie s jazykmi Python, C, C++ (prináša výkon syntakticky zložitejších jazykov hoci jeho syntax je pomerne jednoduchá). Demonštrujte vzorový program z oblasti operačných systémov alebo paralelného programovania (problém producent-konzument, semafory, vzájomné vylúčenie...).
Toto zadanie môže robiť viacero ľudí (nie v tímoch) a voľných miest je: 2
8. Genetické algoritmy v Pythone
Cieľom je naštudovať možnosti práce s genetickými algoritmami v jazyku Python a demonštrovať konkrétny príklad z tejto oblasti. Možnosť využiť existujúce frameworky. Počas prezentácie vysvetlite aj základné princípy genetických algoritmov.
Prihlásený študent: Pylypchuk
9. Support Vector Machine
Naštudujte a zdokumentujte vyššie uvedenú problematiku, vysvetlite ju na príklade v Pythone (môže byť prevzatý, ale očakáva sa aspoň mierna modifikácia). Vieme dať k dispozícii kvalitné tutoriály - https://www.udemy.com/course/machinelearning/ .
10. Hierarchical Clustering
Naštudujte a zdokumentujte vyššie uvedenú problematiku, vysvetlite ju na príklade v Pythone (môže byť prevzatý, ale očakáva sa aspoň mierna modifikácia). Vieme dať k dispozícii kvalitné tutoriály - https://www.udemy.com/course/machinelearning/ .
11. PCA - Principal Component Analysis - redukcia dimenzie
Naštudujte a zdokumentujte vyššie uvedenú problematiku, vysvetlite ju na príklade v Pythone (môže byť prevzatý, ale očakáva sa aspoň mierna modifikácia). Vieme dať k dispozícii kvalitné tutoriály - https://www.udemy.com/course/machinelearning/ .
12. OPC UA (Industrial Internet of Things) - vysvetlenie štandardu
Naštudujte štandard OPC UA a prehľadne odprezentujte jeho súčasti a praktické možnosti. Ide o teoretickú tému vhodnú pre rečníka - vyžaduje sa teda kvalitnejšia teoretická príprava, získanie komplexného prehľadu a zrozumiteľnejšie vysvetlenie problematiky ako pri ostatných témach. Téma je vhodná napríklad pre študentov predmetu Virtuálna a zmiešaná realita, kde sa OPC UA preberá na jednej z posledných prednášok. Je možné tému poňať napríklad tak, že bude do formy učebného textu spracovaná kompletná séria videí od Industry40tv (prvý diel: https://youtu.be/vRk42W_4R0o), pričom momentálne (16.11.2024) je dostupných 7 dielov.
Pomôcky: https://opcfoundation.org/wp-content/uploads/2017/11/OPC-UA-Interoperab… , https://www.youtube.com/watch?v=3EREV8Q5PNU
13. OPC UA (Industrial Internet of Things) a jazyk Python
Naštudujte štandard OPC UA a možnosti práce (napr. tvorba servera a klienta) s jazykom Python (môže ísť o existujúceho free klienta a ak je ich viac k dispozícii, tak porovnať ich). Predpokladá sa spustenie, demonštrácia a dôkladné zdokumentovanie možností servera a klienta. Je možné debugovať / testovať napríklad pomocou simulovaného servera Prosys OPC UA Simulation server (vieme dodať inštalačný súbor) a klienta UaExpert.
Prihlásená študentka: Tymoshenko
14. OPC UA (Industrial Internet of Things) a jazyk JavaScript / Node.JS
Naštudujte štandard OPC UA a možnosti práce (napr. tvorba servera a klienta) s jazykom JavaScript (môže ísť o existujúceho free klienta a ak je ich viac k dispozícii, tak porovnať ich). Predpokladá sa spustenie, demonštrácia a dôkladné zdokumentovanie možností servera a klienta. Je možné debugovať / testovať napríklad pomocou simulovaného servera Prosys OPC UA Simulation server (vieme dodať inštalačný súbor) a klienta UaExpert.
15. OPC UA (Industrial Internet of Things) a jazyk Java
Naštudujte štandard OPC UA a možnosti práce (napr. tvorba servera a klienta) s jazykom Java (môže ísť o existujúceho free klienta a ak je ich viac k dispozícii, tak porovnať ich). Predpokladá sa spustenie, demonštrácia a dôkladné zdokumentovanie možností servera a klienta. Je možné debugovať / testovať napríklad pomocou simulovaného servera Prosys OPC UA Simulation server (vieme dodať inštalačný súbor) a klienta UaExpert.
16. OPC UA (Industrial Internet of Things) a jazyk C# / .NET
Naštudujte štandard OPC UA a možnosti práce (napr. tvorba servera a klienta) s jazykom C# / .NET (môže ísť o existujúceho free klienta a ak je ich viac k dispozícii, tak porovnať ich). Predpokladá sa spustenie, demonštrácia a dôkladné zdokumentovanie možností servera a klienta. Je možné debugovať / testovať napríklad pomocou simulovaného servera Prosys OPC UA Simulation server (vieme dodať inštalačný súbor) a klienta UaExpert.
17. Asset Administration Shell (AAS) a AASX Package Explorer
Preskúmajte Asset Administration Shell (AAS) pre implementáciu komponentov pre systémy Industry 4.0. Pripravte referát na tému AAS a odskúšajte open-source nástroj AASX Package Explorer (https://github.com/admin-shell-io/aasx-package-explorer) alebo podobný.
18. Generative adversarial network (GAN)
Naštudujte a zdokumentujte vyššie uvedenú problematiku, princíp, použitie, vysvetlite ju na príklade v Pythone (môže byť prevzatý, ale očakáva sa aspoň mierna modifikácia).
19. Segmentácia obrazu: napr. Mask R-CNN, Fast R-CNN, Faster R-CNN, SegNet (two stage detector)
Naštudujte a zdokumentujte vyššie uvedenú problematiku, princíp, dostupné modely, vysvetlite ju na príklade v Pythone (môže byť prevzatý, ale očakáva sa aspoň mierna modifikácia).
20. Detekcia objektov v reálnom čase: model YOLO, SSD (one stage detection)
Naštudujte a zdokumentujte vyššie uvedenú problematiku, princíp, dostupné modely, vysvetlite ju na príklade v Pythone (môže byť prevzatý, ale očakáva sa aspoň mierna modifikácia).
Prihlásený študent: Nguyen Viet
21. Knižnice pre počítačové a strojové videnie
Zdokumentujte dostupné knižnice pre Python pre spracovanie obrazu (ako napr.: Scikit-image, SciPy, Pillow, SimpleCV, Mahotas, atď...), vzájomne ich porovnajte a zhodnoťte výhody/nevýhody, dostupné funkcie, dostupnosť aj v iných jazykoch, rýchlosť, otvorenosť, obľúbenosť v komunite, atď... vytvorte ilustračné príklady vybraných knižníc (napríklad úloha z cvičenia ale ilustrovaná cez iné knižnice).
22. Knižnice pre machine learning a umelú inteligenciu
Zdokumentujte dostupné knižnice pre Python pre machine learning a umelú inteligenciu (ako napr.: TensorFlow/Keras, PyTorch, Apache Spark, mlpack, OpenCV, atď...), vzájomne ich porovnajte a zhodnoťte výhody/nevýhody, dostupné funkcie, modely, dostupnosť aj v iných jazykoch, rýchlosť, otvorenosť, obľúbenosť v komunite, atď... vytvorte ilustračné príklady vybraných knižníc (napríklad úloha z cvičenia ale ilustrovaná cez iné knižnice).
23. Vývojové a programové systémy pre strojové videnie (napr. NI Vision Builder, Web Control VisionLab, Omron Microscan’s AutoVISION®, Datalogic Impact Suite, Cognex In-Sight Explorer/ Cognex Vision Library, …)
Naštudujte a zdokumentujte vývojové a programové systémy pre strojové videnie, možnosti integrácie, dostupnosť demo licencie, výhody/nevýhody, cena, atď... vytvorte modelový príklad (aj použitím trial licencie) použiteľný ako cvičenie.
24. Predtrénované modely pre klasifikáciu obrazov: AlexNet, Resnet, Densenet, Darknet…
Naštudujte a zdokumentujte vyššie uvedenú problematiku, vzájomné porovnanie, vysvetlite ju na príklade v Pythone (môže byť prevzatý, ale očakáva sa aspoň mierna modifikácia).
25. Špecifikácia OPC UA Companion Vision, VDMA Machine Vision
Naštudujte a zdokumentujte vyššie uvedenú problematiku, dôvody jej vzniku, princíp, zapojené insšitúcie, spracujte zdroje (white papers, tlačové súrávy a pod.)
26. Kamery pre priemyselné použitie
Zdokumentujte dostupných výrobcov/kamery určené do priemyselného prostredia. Zdokumentujte, čím sa odlišujú, ako sa pripájajú, aké majú dostupné vývojové prostredie (smart kamery), cena, atď.
Prihlásená študentka: Artemeva
27. Kalibrácia vizuálneho systému (vnútorné a vonkajšie parametre)
Naštudujte a zdokumentujte vyššie uvedenú problematiku, princíp, použitie, vytvorte ilustračný príklad vybranej kalibrácie (modelový príklad použiteľný ako cvičenie).
Prihlásený študent: Horváth
28. Generatívne modelovanie
Urobte prehľad možností (spôsoby, programy, frameworky a/alebo algoritmy...) generatívneho 3D modelovania (napr. https://www.youtube.com/watch?v=DeHasEMCzcc&t=1016s). Príkladom je napríklad procedurálne generovaný 3D model mesta.
Toto zadanie môže robiť viacero ľudí (nie v tímoch) a voľných miest je: 2
29. Open-source jazykové modely (LLM) a ich podpora slovenčiny
Otestujte vhodné open-source jazykové modely a ich podporu slovenčiny pre odborné témy. Odbornú tému si vyberte napríklad v rámci predmetu TIP (neurónové siete, strojové videnie, Internet of Things, Industry 4.0, OPC UA...) alebo v inej vhodnej problematike, ktorej sa dobre rozumiete. Je potrebné odskúšať viacero modelov (Gemma 3, EuroLLM...) s parametrami medzi 2B až 30B, ktoré je reálne spustiť na bežnom PC s grafickou kartou okolo 8GB+ VRAM. Overte aj vplyv kvantizácie modelu na výsledky.
Toto zadanie môže robiť viacero ľudí (nie v tímoch) a voľných miest je: 2
30. Retrieval augmented generation (RAG) v open-source jazykových modeloch (LLM)
Demonštrujte naplnenie open-source jazykových modelov (LLM) vlastnou bázou znalostí (RAG) vo forme PDFiek, webových stránok, SQL databáz a podobne. Použite Ollama, AnythingLLM, LlamaParse, a podobné voľne dostupné nástroje.
Prihlásený študent: Baáš
31. SDK pre open-source jazykové modely (LLM)
Na GitHube Ollama (https://github.com/ollama/ollama) sa v dolnej časti webu nachádza viacero SDK a komunitných integrácií (aplikácií) LLM. Otestujte nasadenie 1-2 aplikácií alebo pomocou SDK vytvorte vlastnú jednoduchú aplikáciu využívajúcu open-source LLM (chatbot pre reštauráciu s vaším menu a podobne).
Prihlásený študent: Lehotský
32. Multimodálne modely a ich využitie v open-source ekosystéme
Analyzujte open-source multimodálne modely, ktoré kombinujú text, obraz a zvuk, ako napríklad LLaVA (LLaMA-Adapter for Vision and Language), OpenFlamingo, alebo Mistral multimodal. Otestujte, či dokážu tieto modely pracovať so slovenskými textami v kombinácii s obrázkami (napr. technická dokumentácia, diagramy, OCR). Skúmajte prípadne aj ich možnosti v aplikáciách ako strojové videnie či automatizované spracovanie dokumentov.
33. Hlasová interakcia s lokálnymi LLM
Špecifickým problémom je interakcia pomocou hlasu (aj anglicky) s lokálnymi LLM modelmi. Preskúmajte túto oblasť, existujúce modely / nástroje a zdokumentujte vybraný príklad.
Prihlásený študent: Múdry