Čištění dat

28
Čištění dat Cleaning

Upload: melva

Post on 06-Jan-2016

37 views

Category:

Documents


2 download

DESCRIPTION

Čištění dat. Cleaning. Vstup: Množina geometrických objektů Výstup: Mapová vrstva s topologií. Požadavky na topologicky vyčištěná data. Linie navazují ve společných uzlech Plochy jsou uzavřené liniemi Linie nesou informace o sousedních plochách (okřídlená hrana, Winged Edge). - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Čištění dat

Čištění dat

Cleaning

Page 2: Čištění dat

• Vstup: Množina geometrických objektů

• Výstup: Mapová vrstva s topologií

Page 3: Čištění dat

Požadavky na topologicky vyčištěná data

• Linie navazují ve společných uzlech

• Plochy jsou uzavřené liniemi

• Linie nesou informace o sousedních plochách (okřídlená hrana, Winged Edge)

Page 4: Čištění dat

Postup čištění dat

• Aproximace hran lomenými čarami

• Eliminace duplicitních hran– Odstranění děr (gap) a štěpin (splint)

• Odstranění přetahů (dangle node)

• Odstranění mezer a nedotahů

• Segmentace hran

• Generování polygonů

Page 5: Čištění dat

Aproximace hran

Aproximation distance

Page 6: Čištění dat

Lineární interpolace

Page 7: Čištění dat

Kvadratická interpolace

Page 8: Čištění dat

Interpolace polynomem 4 stupněInterpolované body:

(-2,4) (-1,0) (0,3) (1,1) (2,-5)

Rovnice:

16a -8b +4c -2d + e = 4

a - b + c -d +e = -3

e = 3

a + b + c + d +e = 1

16a +8b +4c +2d +e =-5

Řešení:

a=0.458 b=-0.75 c=-2.95

d=1.25 e=3

Funkce:

0.458*x^4-0.75*x^3-2.95*x^2+1.25*x+3

Page 9: Čištění dat

Spline křivka

• Křivka se skládá z úseků vyjádřených polynom nižšího stupně, než odpovídá počtu bodů. Křivky na sebe v hraničních bodech hladce navazují

Page 10: Čištění dat

Lineární „spline“

• Polynomy prvního stupně.

• V hraničních bodech na sebe navazují spojitě.

• Není zaručena spojitost ani první derivace.

• Česky se tomu říká lomená čára

Page 11: Čištění dat

Kvadratický spline

• Křivka jsou úseky parabol.• V hraničních bodech na sebe paraboly

hladce navazují – mají spojitou první derivaci.

• Další derivace nemusí být (a obvykle nejsou) spojité.

• Je nejpoužívanější, pokud se řekne jen spline, myslí se obvykle kvadratický spline (viz AutoCAD)

Page 12: Čištění dat

Kvadratický spline

Page 13: Čištění dat

Spline křivky vyšších stupňů

• Kubický – funkce po částech 3-tího stupně (kubika), zaručuje spojitost první a druhé derivace

• Obecný (n-tého stupně), zaručuje spojitost (n-1). derivace.

Page 14: Čištění dat

Aproximační křivky

• Nemusí procházet přímo zadanými body.

• Formálně lze za aproximační křivku považovat libovolnou křivku.

• Problém je nalézt takové vyjádření, které bude– Jednoduché– Bude dostatečně dobře aproximovat danou

křivku

Page 15: Čištění dat

Bézierova aproximace (Bézierova křivka)

• Aproximace polynomem daného stupně n-tý stupeň pro n+1 bodů P0,P1,…,Pn

• Křivka prochází krajními body P0 a Pn• Tečna v počátečním bodě P0 je

rovnoběžná s vektorem P0P1.• Tečna v koncovém bodě Pn je rovnoběžná

s vektorem Pn-1 Pn• Celá křivka leží v konvexním obalu bodů

P0, … ,Pn

Page 16: Čištění dat

Vyjádření Bézierovy křivky

Page 17: Čištění dat

Lineární Bézierova křivka

• B(t) = (1-t).P0 + t.P1• Parametrická rovnice

úsečky

Page 18: Čištění dat

Kvadratická Bézierova křivka

• B(t) = (1-t)2P0 + 2t(1-t)P1 + t2P2

Page 19: Čištění dat

Kubická Bézierova křivka

B(t) = (1-t)3P0 + 3t(1-t)2P1 + 3t2(1-t)P2 + t3P3

Page 20: Čištění dat

Bézierovy křivky vyšších řádů

• Příklad vzorce pro křivku 5.stupně

Page 21: Čištění dat

Odstranění přetahů

Dangle distance

Page 22: Čištění dat

Odstranění mezer

Fuzzy tolerance

Page 23: Čištění dat

Fuzzy tolerace

• Maximální vzdálenost dvou bodů, které se mají při čištění dat ztotožnit

Page 24: Čištění dat

Odstraňování nedotahů

Fuzzy tolerance

Page 25: Čištění dat

Díry a štěpiny

Krakonošovo

Trautenbergovo

Gap

splinter

f.t.

Krakonošovo

Trautenbergovo

Page 26: Čištění dat

Segmentace hran (hledání průsečiků)

E1

E2

E1

E2

E3E4

Page 27: Čištění dat

Okřídlená hrana

LBRB

LFRF

LP RP

Page 28: Čištění dat

Generování polygonů