Rekonstrukce a analýza 3D scén (FSI-SR0-A)

Akademický rok 2022/2023
Garant: Mgr. Jana Procházková, Ph.D.  
Garantující pracoviště: ÚM všechny předměty garantované tímto pracovištěm
Jazyk výuky: angličtina
Cíle předmětu:
Hlavním cílem předmětu je získat přehled v oblasti snímání mračen bodů a jejich zpracování, které se v praxi používají. Praktická část předmětu seznámí studenty s principy 3D skenování, 3D tisku a návrhu algoritmu pro práci se 3D scénou. Studenti se také seznámí s platformou Arduino pro test některých metod.
Výstupy studia a kompetence:
Hlavní přínosem pro studenty je porozumění problematice mračna bodů, jejich snímání (3D skenování), využití (3D tisk, analýza scény při použití platformy Arduino) a následném zpracování (algoritmy detekce hran, detekce objektů, sesazování, atp.).
Prerekvizity:
základní znalosti analýzy a algebry (matice, derivace) a základy počítačové grafiky, doporučená je znalost jakéhokoliv programovacího jazyka (C, C++, Pascal, atd. ) nebo programu (Matlab apod.)
Obsah předmětu (anotace):
Předmět se zabývá zpracováním mračna bodů (point cloud). Tato oblast je velmi důležitá v reverzním inženýrství, ale také v dalších oblastech jako robotika, geografie, autonomní systémy v dopravě, atd. V první části kurzu se studenti seznámí s typy snímání a algoritmy pro zpracování mračna bodů, například detekce objektů, registrace. Část algoritmů bude prakticky programována v softwaru Matlab (studenti mohou používat libovolný programovací jazyk).
V laboratoři bude provedeno skenování modelu pomocí optického skeneru ATOS a dále v učebně s pomocí ručních skenerů. Studenti se seznámí se softwarem na zpracování mračna bodů GOM Inspect, Rhinoceros a softwarem Voxelizer pro 3D tisk. Jedna přednáška bude věnována také 3D tisku a ve cvičení provedeme 3D tisk navržených nebo skenovaných modelů.
Pro otestování naprogramovaných algoritmů bude využita sada Arduino Engineering Kit. V závěru semestru budou studenti pracovat na implementaci některé z metod podle svého zájmu, kterou na závěr obhájí.
Metody vyučování:
Přednáška seznámí studenty s metodami pro snímání a zpracování mračna bodů. Cvičení jsou propojena s praktickými ukázkami v softwaru Matlab. Dvě cvičení se uskuteční v laboratoři s optickým skenerem ATOS (kalibrace a snímání modelu). Jedno cvičení bude věnováno 3D tisku s použitím tiskárny Voxelizer. Dále bude použit Arduino Engineering Kit pro demonstraci a praktické ověření algoritmů zpracování okolí.
V závěru semestru budou studenti pracovat na vybraném tématu, případně provedeme dodatečná skenování pro potřeby projektu.
Způsob a kritéria hodnocení:
Studenti vypracují projekt ze studované problematiky, který na konci semestru obhájí.
Vymezení kontrolované výuky a způsob jejího provádění a formy nahrazování zameškané výuky:
Účast na cvičeních je povinná, přednášky doporučené (souvisí přímo s cvičením).
Typ (způsob) výuky:
    Přednáška  13 × 1 hod. nepovinná                  
    Cvičení s počítačovou podporou  13 × 2 hod. povinná                  
Osnova:
    Přednáška Přednášky:
1. týden: Popis metod pro získávání 3D mračna bodů (point cloud), pasivní (Structure from Motion) a aktivní metody (Time of Flight, laser).
2. týden: Registrace mračna bodů (metody Principal Component Analysis, Singular Value Decomposition, Iterative Closest Point).
3. týden: RANSAC - algoritmus a jeho využití, feature extraction - hledání významných částí v mračnech bodů.
4. - 5. týden: Optický skener ATOS (laboratoř), skenování ručním skenery.
6. týden: Software pro zpracování dat (GOM Inspect, Rhinoceros, atp.)
7. týden: 3D tisk - principy, nastavení, problémy.
8. týden: Arduino Engineering Kit - programování vozítka Rover a jeho orientace v prostoru a funkce.
9. - 12. týden: Konzultace k zápočtovému projektu.
13. týden: Prezentace zápočtového projektu.
    Cvičení s počítačovou podporou Cvičení:
1. týden: Metody snímání dat (Terrain, Mobile, Airborne) a jejich využití, programování pasivních algoritmů v Matlabu.
2. týden: Registrace mračna bodů - programování algoritmů v Matlabu, eventuelně jiném programovacím jazyku.
3. týden: RANSAC programování.
4.-5. týden: Snímání různých objektů pomocí optického skeneru ATOS (laboratoř) a skenování s ručními skenery.
6. týden: Zpracování a úprava nasnímaných dat v různých softwarech - GOM Inspect, Voxelizer, Rhinoceros. Vytváření vlastních modelů pro 3D tisk.
7. týden: 3D tisk vytvořených modelů na 3D tiskárně Voxelizer.
8. týden: Arduino Engineering Kit - programování vozítka Rover
9.-12. týden: Práce na zápočtovém projektu - zpracování mračna bodů vybranou technikou a konzultace zajímavých témat podle zájmu studentů.
13. týden: Prezentace zápočtového projektu.
Literatura - základní:
1. WEINMANN, Martin. Reconstruction and Analysis of 3D Scenes. Switzerland: Springer, 2016.
2. HUGHES, John F. Computer graphics: principles and practice. Third edition. ISBN 978-0-321-39952-6.
3. SHIRLEY, Peter. Fundamentals of Computer Graphics. 2nd ed. Welesley: A K Peters, c2005. ISBN 1-56881-269-8.
Zařazení předmětu ve studijních programech:
Program Forma Obor Spec. Typ ukončení   Kredity     Povinnost     St.     Roč.     Semestr  
CŽV prezenční studium CZV Základy strojního inženýrství -- kl 4 Povinně volitelný 1 1 L
N-MAI-A prezenční studium --- bez specializace -- kl 4 Povinně volitelný 2 1 L
N-AIM-A prezenční studium --- bez specializace -- kl 4 Volitelný 2 2 L