Prezentace se nahrává, počkejte prosím

Prezentace se nahrává, počkejte prosím

1 Fast kd-tree Construction with an Adaptive Error-Bounded Heuristic Warren Hunt, William R. Mark, Gordon Stoll prezentace : Radek Richtr.

Podobné prezentace


Prezentace na téma: "1 Fast kd-tree Construction with an Adaptive Error-Bounded Heuristic Warren Hunt, William R. Mark, Gordon Stoll prezentace : Radek Richtr."— Transkript prezentace:

1 1 Fast kd-tree Construction with an Adaptive Error-Bounded Heuristic Warren Hunt, William R. Mark, Gordon Stoll prezentace : Radek Richtr

2 2 Obsah prezentace 1) kd-tree – krátké zopakování 2)konstrukce datové struktury kd-tree 3)kritérium výběru místa dělení - SAH 4)aproximace cenové funkce 5)adaptivní výběr vzorků 6)snížení chyby 7) zhodnocení

3 3 Kd - tree (krátce) -Speciální případ BSB - tree -Datová struktura založená na dělení prostoru -Reprezentace binárním stromem -Užitečné pro mnoho různých aplikací -Mnoho různých variant a optimizací wikipedia.org

4 4 Konstrukce d.s. kd-tree Kd-tree i jeho konstrukce má mnoho variant -dle místa dělení (body, hrany, prostor…) -kritérium výběru místa dělení (polovina, medián, SAH…) -dle os podle kterých dělíme (RR, jedna osa, hybridní…) -adaptivní a neadaptivní, top-down… Klasická konstrukce kd-tree je pomalá pro raytracing v reálném čase -Použít jinou datovu strukturu (hybridní, mřížky…) -Urychlit raytracing -Urychlit stavbu datové struktury kd tree -Stavba méně přesné struktury (lazy building) -Urychlit výpočet kritéria při dělení

5 5 Surface area heuristic (SAH) Jedna z metod nacházení dělících hran snaha o minimalizaci kritéria : C I cena(náročnost) traverzování uzlu (konstanta) C L(P) cena traverzace levého(p.) uzlu, který vznikne dělením v místě x SA L(P) velikost(plocha / objem) vzniklé oblasti (l. a p. potomka) SAvelikost(plocha / objem kořene Jde tedy o součet ceny traverzace s pravděpodobností průniku uzlu. Kritérium je porovnáno s cenou případu, kdy uzel nedělíme. Pokud je cena rozdělení uzlu nižší, je uzel rozdělen v místě x na dva potomky. toto je jedna z podob kritéria, zde upravená pro rychlý výpočet

6 6 velmi dobré kritérium velmi pomalé je třeba výpočet urychlit ‚Nalezneme úzké hrdlo‘ Výpočet hodnot C L a C R (zde je představují počty objektů v potenciálních potomcích) je náročný SAH

7 7 Výpočet SAH - sorting (předřazení objektů + test) O(n log2(n)), lze snížit na O(n log(n)) - scaning (testování v bodech) O(qn) => q-konstanta => O(n) Místo výpočtu ceny ve všech bodech (obvykle pomocí předřazení objektů dle os) vybereme vzorky v dostatečném počtu bodů. Dělicí hranu je možné buď umístit do zkoumaných bodů, nebo je možné celkovou funkci aproximovat SAH

8 8 SAH, příklad délka : 10 výška 0.1  SA(v) = 1  10 částí - SA(v,x) = 0.1, 0.2.. 0.9  CL a CR – počty AABB obálek  Celkem 12 AABB obálek

9 9 SAH, příklad 1 · 0.1 + 11 · 0.9 = 10

10 10 SAH, příklad 1 · 0.1 + 11 · 0.9 = 10 2 · 0.2 + 10 · 0.8 = 8.4

11 11 SAH, příklad 1 · 0.1 + 11 · 0.9 = 10 2 · 0.2 + 10 · 0.8 = 8.4 3 · 0.3 + 9 · 0.7 = 7.2

12 12 SAH, příklad 1 · 0.1 + 11 · 0.9 = 10 2 · 0.2 + 10 · 0.8 = 8.4 3 · 0.3 + 9 · 0.7 = 7.2 3 · 0.4 + 9 · 0.6 = 6.6

13 13 SAH, příklad 1 · 0.1 + 11 · 0.9 = 10 2 · 0.2 + 10 · 0.8 = 8.4 3 · 0.3 + 9 · 0.7 = 7.2 3 · 0.4 + 9 · 0.6 = 6.6 7 · 0.5 + 6 · 0.5 = 6.5

14 14 SAH, příklad 108.47.26.6 6.5 6.68.99.610 min

15 15 Aproximace cenové funkce -Lze dělit buď ve zkoumaných bodech, nebo funkci aproximovat -Pro postavení odpovídající cenové funkce obvykle postačuje poměrně malý počet vzorků (max.32) -Je třeba aby samotná aproximace nebyla náročnější, než vypočítání celé funkce -Aproximace (v zásadě nepřesná) nesmí snížit kvalitu nalezeného minima

16 16 Adaptivní výběr vzorků -Hledaná cenová funkce nemusí být jednoduchá. -Pevně daný počet (q) dělení nemusí postihnout její reálný tvar -Nalezneme q/2 vzorků a následně, dle jejich hodnot umístíme dalších q/2 vzorků pro přesnější aproximaci funkce -Je třeba zvolit vhodné kritérium dle kterého hledat vzorky

17 17 SAH, adaptivní vzorky

18 18 SAH, adaptivní vzorky 108.47.26.6 6.5 6.68.99.610

19 19 SAH, adaptivní vzorky 108.47.26.6 6.5 6.68.99.610

20 20 SAH, adaptivní vzorky 108.47.26.6 6.5 6.68.99.610 6.2

21 21 SAH, C L -C R -12 12 0

22 22 Omezení chyby ap. Při interpolaci funkce je obecně problém, pokud je skutečná cenová funkce složitá (prudké změny), případně nespojitá Toto bývá problém i při jiných způsobech stavby K lokalizaci těchto nespojitostí pomáhá adaptivní výběr vzorků

23 23 Omezení chyby ap. Aby byly vlivy těchto nespojitostí co nejmenší, vybírá algoritmus dělící blízko ‚nespojitosti(místo prudké změny funkce)‘ – tím je již po několika krocích ‚nespojitost‘ uzavřena v jediném uzlu. Navíc čím je ‚skok‘ větší, tím dříve je ‚nespojitost‘ uzavřena dříve (a tedy i v menší buňce) 7 6 8 9

24 24 Zopakování Klasická stavba kd-stromu je příliš pomalá Jednou z možností urychlení je zrychlit (zjednodušit) výpočet kritéria kde rozdělit uzel Místo seřazení uzlů testujeme ‚obsah‘ uzlu v několika bodech (testujeme top-down) Body určíme napevno a v místech kde je změna funkce největší dodáme další Skutečnou cenovou funkci poté aproximujeme Nespojitosti a nepřesnosti izolujeme do vlastních uzlů

25 25 Literatura W. Hunt, G. Stoll and W. Mark. Fast kd-tree construstion with an adaptive error- bounded heuristic S. Popov, J. Gunter, H. Seidel, P. Slusallek. Experiances with Construction of SAH KD-Trees V. Havran, X36DPG slidy

26 26 SAH, C L 108.47.26.6 6.5 6.68.99.610 0 12 6


Stáhnout ppt "1 Fast kd-tree Construction with an Adaptive Error-Bounded Heuristic Warren Hunt, William R. Mark, Gordon Stoll prezentace : Radek Richtr."

Podobné prezentace


Reklamy Google