Warning
This page is located in archive.

4. Cvičení - 1. model do galerie - Laser Scan

Sraz v 16:15 v místnosti 327. V doprovodu vyučujícího přesun do místnosti 419 (VRLab).

Popis zařízení

objektiv FOV [mm] (extended mode, 0.5m) FOV [mm] (extended mode, okolo 2m)
Tele f=25 mm 93 x 69 x 26 463 x 347 x 680
Middle f=14 mm 165 x 124 x 42 823 x 618 x 1100
Wide f=8 mm 299 x 224 x 66 1495 x 1121 x 1750

Vivid 9i ve VRLabu Vivid 9i "v akci"

Kalibrace

Kalibrace objektivu

Aktuálně je scanner zkalibrován s TELE objektivem. Otočný stoleček je přibližně 750mm od čočky objektivu. Pozorovací objem scanneru je tedy přibližně 150 x 100 x 30 mm.
Kalibrace objektivu scanneru se provádí pouze po výměně objektivu, po delší době nepoužívání a nebo po náročnějším transportu.

Kalibrace osvětlení místnosti

Aktuální nastavení bílé na scanneru je při zapnuté lampičce na stole u scanneru, stropní zářivky vypnuté a zatažené rolety.

Snímání

01 - polygon editing tool - start scan 02

  1. Spusťe aplikaci PET (Polygon Editing Tool) která umí komunikovat se scannerem
  2. V levém horním rohu stiskněte ikonu pro scanování (obr. 1 )
    1. Pokud se objeví chybová hláška, že scanner nebyl nalezen, zkontrolujte připojení USB kabelu ke scanneru a zapnuté napájení. Pak restartujte aplikaci PET.
  3. Zobrazí se rozhraní pro ovládání scanneru, v levém obr. se zobrazuje aktuální náhled na scénu (obr. 2 )
  4. Stiskneme tlačítko Scan, scanner ožije a začne vydávat zvuky
    1. nejprve nalezne optimální vzdálenost objektu
      1. pokud snímání selže v tomto kroku, zobrazí se chybová hláška. Tato chyba je způsobena umístěním scanovaného objektu v nevhodné vzdálenosti od scanneru. Řešíme buď přepnutím scanneru do EXTENDED / STANDARD módu (tlačítko Option) nebo posunutím objektu blíže/dále od scanneru, případně výměnou objektivu.
    2. pak si nastaví výkon paprsku dle aktuálního osvětlení
    3. a měl by pokračovat scanováním v 1 až 4 stejných scannech (dle nastavení v Option). Všechny scany se složí do jednoho, opakování má pouze vliv na výslednou kvalitu.
  5. Při úspěšném scanování se v levém náhledu zobrazí hloubková mapa (obr. 3 ), pokud jsme spokojeni s výsledkem, uložíme ji stiskem tlačítka Store. Objekt se zobrazí včetně barev v pravém náhledu.
  6. Skenovaný objekt otočíme (přibližně o 45°), včetně šachovnicové podložky a znovu stiskneme tlačítko Scan.
  7. Nyní vidíme vlevo aktuální pohled na scénu a v pravo poslední uložený pohled (obr. 4 ).
  8. Pomocí přepínače pod náhledem vlevo si přepneme aktuální zobrazení z hloubkové mapy na reálné barvy (Color) a zadáme korespondující body mezi aktuálním pohledem a předchozím uloženým (obr. 5 ).
    1. Korespondující body zadáváme na střídačku v levém a pravém náhledu. Po zadání 3 párů bodů se provede zarovnání modelů. Zarovnání postřehneme v 3D pohledu na scénu (s pravým horním 3D pohledem můžeme libovolně manipulovat, ačkoli to tak na první pohled nevypadá).
    2. Nové body se přidávají levým tlačítkem myši, pravým se odebírají. Pokud při stisku levého tlačítka podržíme klávesu Shift, 3D objekty se registrují ihned a ne až po třetím páru. Toto dobře funguje pro ne-planární objekty.
    3. Nápovědy k nástrojům jsou často zobrazeny pod aktuáním pohledem (červená linka pod náhledem vlevo)
  9. Opakujeme od bodu 5, dokud nemáme objekt celý nascanovaný.

"Quality Issues"

Tmavé části chybí v modelu

  1. Scanner provádí zároveň dvě akce (pořízení barevné fotografie a 3D měření pomocí laseru) a každá vyžaduje jiné podmínky na prostředí. Pro pořízení fotografie je potřeba vhodné osvětlení a 3D měření je nejúčinnější ve tmě. V případě že vám příjde, že osvětlení místnosti nevhodně ovlivňuje měření, můžete vyzkoušet následující postup.
    1. Zamezte slunečním paprskům vnik do místnosti (zatáhněte rolety) a případně zhasněte.
    2. Tlačítkem Scan pořiďte hloubkovou mapu (obr. 6 a 7 ).
    3. Rozsviťte.
    4. Tlačítkem Color Read znovu vyfotíte objekt (barevnou informaci) bez opětovného scanování (obr. 8 ).
    5. Porovnání scanu při vypnutém a zapnutém osvětlení je na obr. 9 (nastavení scanneru bylo stejné).
  2. Druhou možností je zvýšení výkonu scanneru (checkbox Intensity a LD a Gain) ale toto vede ke zvýšení šumu a je vhodné pouze pokud nemůžeme modifikovat osvětlení scény.

Vzdálené/blízké části objektu nejsou nasnímány.

  1. Scanner má poměrně malou hloubku ve které je schopen snímat v jednom průchodu (jednotky cm - je to závislé na vzdálenosti objektu od skaneru a na módu snímání). Proto části objektu, které jsou příliš blízko či daleko nejsou zaznamenány (nohy panáčka na obr. 10 vlevo).
    1. Oprava automatiky: zkuste posunout střed snímaného objemu. Zaškrtněte položku Distance a změňte vzdálenost do vhodnější pozice a stiskněte tlačítko Scan. Na obr. 10 vpravo můžete posoudit změnu v oblasti nohou.
    2. Slepení více scanů z jednoho pohledu. Pořiďte více scanů s různým nastavením atributu Distance, každý scan připojte pomocí kontrolních bodů k ostaním pohledům a uložte tlačítkem Store (viz bod 8 v popisu snímání).

Přebytečné části obrázku

  1. Již při snímání jsou rozpoznatelné některé zašuměné části obrázku, případně některé části nechcete rekonstruovat.
  2. Následující postup umožňuje provádět editaci aktuálně snímaného pohledu.
    1. Stiskněte tlačítko Edit (obr. 12 ).
    2. Levým tlačítkem myši můžete do levého náhledu přidávat body polygonální oblasti, pravým tlačítkem myši oblast uzavřete. V případě, že chcete opustit editaci, zmáčkněte Ctrl + pravé tl. myši.
    3. Po vybrání oblasti levým tlačítkem smažete vnitřek oblasti, pravým vše vně oblasti (obr. 13 ).

Spojení geometrie a úpravy

Pokud se vám zdá, že rozhraní programu je deaktivováno, je to nejspíš způsobené tím, že program čeká na vaši konkrétní akci. Nápovědu k akci většinou najdete ve statusbaru pod aktuálním pohledem.
  1. Předpokládáme, že jednotlivé scany jsme si již nahrubo složili při snímání
  2. Nyní provedem doladění registrace. V seznamu elementů (pravý panel) označte všechny položky a spusťte příkaz Build - Registration - Fine - Elements, jako základní element vyberte první pořízený. Tím se provede přesnější slícování jednotlivých pohledů.
  3. Pro budoucí export bude vhodné, když otočíme celou scénu tak, aby podložka byla co nejvíce vodorovně.
    1. Vyberte opět všechny elementy.
    2. Spusťte příkaz Build - Rotate - Elements (obr. 14 ).
    3. Vyberte osu rotace, zadejte úhel a stiskněte tlačítko Apply, to otočí elementy. Postupné aplikování otočení není aditivní (otočení 2x o 5° není ve výsledku otočení o 10° ale pouze o 5°).
    4. Až po stisku tlačítka Ok se provede finální otočení.
  4. Následuje složení jednotlivých scanů do jednoho 3D modelu
    1. Vyberte opět všechny elementy.
    2. Spusťte příkaz Build - Merge (obr. 15a ) a nastavne vhodné vyvážení mezi přesností a hladkostí modelu.
    3. Po stisku Ok se vám vytvoří nový model (obr. 16 ).
  5. Barevná informace je uložena pro každou část modelu zvlášť a po složení textur vznikají viditelné artefakty (obr. 17a ). Proto je vhodné na výsledném objektu spustit Build - Texture Blending, který prolne hraniční textury. Bohužel tím dojde i k mírnému rozmazání textur v dobře zaznamenaných částech (obr. 19 vpravo ).

Export do VRML

  1. Finální model můžeme exportovat do několika formátů, pro naše účely je nejvhodnější formát VRML.
  2. Příkazem File - Export - Elements exportujte vybraný element (finální model), viz obr. 18a .
    1. Jako typ uložení vyberte VRML2.0, zaškrtněte With Images a With Merged Images, jenom tato kombinace umožňuje export složené textury pro finální model.
  3. Dále je potřeba vybrat typ mapování textury (obr. 18c ).
    1. Dle tvaru objektu vyberte vhodnější projekci.
    2. Velikost textury nastavte na počet px vhodný pro VRML (mocniny dvou)
    3. Export se provede po stisku Ok
  4. Exporter programu PET bohužel vloží texturu přímo do VRML jako uzel PixelTexture, což je nevhodné vzhledem k následné velikosti souboru s modelem. Proto využijeme další exporter, abysme získali texturu v nějkém obr. fotmátu.
    1. Opakujeme kroky 2 a 3 s tím rozdílem, že jako výstupní formát nastavíme SoftImage. Je důležité, abyste nastavili projekci textury stejně jako u VRML.
    2. Při exportu do tohoto formátu vzniknou 4 soubory, nás zajímá ten s příponou .PIC, ve kterém je uložena textura.
    3. Sobor .PIC zkonvertujeme do námi preferovaného formátu (.PNG nebo .JPG), např. pomocí programu XnView. Důležité je, že při konverzi musíme také obrázek vertikálně převrátit aby odpovídal uzlu TextureCoordinate v souboru VRML.
  5. Otevřeme si VRML soubor v editoru a uzel PixelTexture nahradíme za ImageTexture odkazující na texturu získanou přes SoftImage exporter. Nezapomeňte u VRML souboru zapnout GZ kompresi.

LOD

  1. Výše uvedeným postupem jsme sice získali model ve formátu VRML, ale nevhodný pro online prezentaci (příliš mnoho trojúhelníků), proto je potřeba model ještě upravit pro LOD.
  2. Pro zmenšení počtu trojuhelníků použijeme příkaz Build - Subsample - Adaptively - Element (obr. 20 ).
    1. Vytvoříme si postupně dva modely jeden např. z 10000 bodů a druhý z 1000 bodů.
    2. Modely exportujeme stejným postupem jako je popsán výše s tím rozdílem, že textura se může použít již ta exportovaná.
    3. Pomocí programu Chisel snižte velikost souborů (např. snížení přesnosti desetiných čísel).
    4. Modely složíme pomocí LOD do finálního VRML jak bylo popsáno v cvičení 4 .
  3. Snížení počtu trojúhelníků můžete také provést až na exportovaném detailním VRML souboru pomocí programu MeshLab. Tento postup je popsán v rámci 6. cvičení .

Ukázka

  • LOD model, detailní level byl získán v programu PET, low-level model byl získán konverzí v programu MeshLab. Textura nebyla blendována, proto jsou v něketrých místech vidět černé trojúhelníky a nespojitosti v barvě textury.
courses/a7b39mvr/tutorials/04b/start.txt · Last modified: 2017/10/05 15:57 by sedlad1