Konvexní obálka množiny bodů.
|
|
- Jan Esterka
- před 6 lety
- Počet zobrazení:
Transkript
1 Konvexní obálka množiny bodů. Graham Scan. Jarvis Scan. Quick Hull. Inkrementální metoda. Divide and Conquer. Rotating Calipers. Tomáš Bayer Katedra aplikované geoinformatiky a kartografie. Přírodovědecká fakulta UK. 1 / 56
2 Obsah přednášky 1 Úvod do problému 2 Formulace problému 3 Metody konstrukce konvexní obálky 4 Minimum Area Enclosing Rectangle 5 Detekce hlavních směrů budov 2 / 56
3 Úvod do problému 1. Detekce obrysu budovy z klasifikovaných dat Tomáš Bayer bayertom@natur.cuni.cz (Katedra aplikované Konvexní geoinformatiky obálkaamnožiny kartografie. bodpr írodov u. e decká fakulta UK.) 3 / 56
4 2. Formulace problému Formulace problému Dáno: Hledáme: Množina n bodů S = {p 1,, p 2,..., p n} v R 2, kde p i = [x i, y i]. Nejmenší konvexní množinu C, p i C. (Convex Hull Problem) Definice 1: Konvexní obálka množiny H konečné množiny S v E 2 představuje nejmenší konvexní mnohoúhelník P obsahující S (tj. neexistuje P P splňující definici). Definice 2: Konvexní obálka H množiny konečné množiny S představuje konvexní mnohoúhelník P s nejmenší plochou. Definice 3: Konvexní obálka H množiny konečné množiny S představuje průsečnici všech polorovin obsahujících S. Definice 4: Konvexní obálka H množiny konečné množiny S představuje sjednocení všech trojúhelníků, jejichž vrcholy tvoří body v S. Množinu S označíme jako konvexní, pokud spojnice libovolných dvou prvků leží zcela uvnitř této množiny. 4 / 56
5 Formulace problému 3. Ukázka konvexní obálky H množiny S 5 / 56
6 Formulace problému 4. Využití konvexní obálky Jedna z nejpoužívanějších geometrických struktur, pomocná struktura pro řadu algoritmů. Často používána jako první odhad tvaru prostorového jevu Příklady použití: Detekce kolizí: plánování pohybu robotů. Konstrukce MBR: využití v kartografii pro detekci tvaru a natočení budov. Analýza tvarů (Shape Analysis): analýza tvarů objektů. Statistická analýza: analýza rozptylů, odhady, např. metoda Onion Peeling. Analýza shluků (Cluster Analysis): vlastnosti clusterovaných dat. Poznámka: Konvexní obálka H existuje v R d., budeme se zabývat pouze R 2. variantou. 6 / 56
7 Formulace problému 5. Odhad centroidu metodou Onion Peeling 7 / 56
8 Metody konstrukce konvexní obálky 6. Metody konstrukce konvexní obálky Přehled nejčastěji používaných metod pro konstrukci konvexní obálky: Jarvis Scan (Gift Wrapping). Graham Scan. Quick Hull. Inkrementální kontrukce. Zametací přímka. Divide and Conquer. Některé z metod použitelné pouze pro R 2, jiné převeditelné do vyšší dimenze. 8 / 56
9 Metody konstrukce konvexní obálky 7. Jarvis Scan (Jarvis, 1973) Připomíná postup balení dárku do papíru (Gift Wrapping Algorithm). Jednoduchá implementace, lze rozšířit i do R 3. Předpoklad: v S nejsou tři kolineární body. Nutnost předzpracování O(n): nalezení pivotu q q = min (y i ). p i S Princip algoritmu: Dva poslední body H označenyp j 1, p j. Aktuálně přidávaný bod p j+1 do H maximalizuje úhel p j+1 = arg max (p j 1, p j, p i ). p i S Bod p j+1 hledáme ze všech p i S, které dosud nejsou součástí H. Lze je značkovat. 9 / 56
10 Metody konstrukce konvexní obálky 8. Algoritmus Jarvis Scan Nevýhodou složitost O(n 2 ), nehodí se pro velké S. Snadná implementace. Algoritmus 1: Gift Wrapping (P, H) 1: Nalezení pivota q, q = min(y i ), 2: Přidej q H. 3: Inicializuj: p j 1 X, p j = q, p j+1 = p j 1. 4: Opakuj, dokud p j+1 q: 5: Nalezni p j+1 = arg max pi P (p j 1, p j, p i ) 6: Přidej p j+1 H. 7: p j 1 = p j ; p j = p j / 56
11 Metody konstrukce konvexní obálky 9. Ukázka Jarvis Scan p j+1 p j+1 ω j p j p x q=p j p j-1 j-1 x p j+1 ω j p j ω j p j p j+1 ω j pj-1 p j-1 x x 11 / 56
12 10. Graham Scan Metody konstrukce konvexní obálky Algoritmus není možné rošířit do R 3 (Graham 1972). Časová složitost O(n log(n)), lze použít i na rozsáhlé datasety. Převod star-shaped polygonu na H. Princip: Konstrukce star-shaped polygonu z pivotu q. Tvořen vrcholy setříděnými dle úhlu ω = (p i, q, x). Body ve star-shaped polygonu: index j. Kritérium levotočivosti: p j { / H, p j+1 σ r(p j, p j+1),? H, p j+1 σ l(p j, p j+1). Implementace: Prvky v zásobníku S: t (top), t 1 (second). Reflexní vrchol p t odebrán z S, konvexní p j přidán { pop(), p j σ r(p t 1, p t), S push(p j), p j σ l(p t 1, p t). 12 / 56
13 Metody konstrukce konvexní obálky 11. Ilustrace kritéria levotočivosti 13 / 56
14 Metody konstrukce konvexní obálky 12. Algoritmus Grahamova skenování Přezpracování O(n): pivot q q = min (y i ). p i S Přezpracování O(n log(n)): setřídění datasetu S podle úhlu k ose x v q. Algoritmus 2: Graham Scan (P, S) 1: Nalezení pivota q = min pi S(y i ), q H. 2: Setřídění p i S dle ω i = (p i, q, x), index j odpovídá setříděnému pořadí. 3: Pokud ω k = ω l, vymaž bod p k, p l bližší ke q. 4: Inicializuj j = 2; S = 5: S q, S p 1 (indexy posledních dvou prvků p t, p t 1 ) 5: Opakuj pro j < n: 6: if p j vlevo od p t 1, p t : 7: S p j 8: j = j + 1 9: else pop S. 14 / 56
15 Metody konstrukce konvexní obálky 13. Ukázka konstrukce Graham Scan 15 / 56
16 Metody konstrukce konvexní obálky 14. Ukázka konstrukce Graham Scan 16 / 56
17 Metody konstrukce konvexní obálky 15. Algoritmus Quick Hull Rychlý, Θ(n lg n), analogie s QuickSortem. Strategie Divide and Conquer, worst case O(n 2 ). Obálka expanduje všemi směry. Princip algoritmu: Předzpracování: setřídění bodů dle x, O(n lg n). Rozdělení S na S U(upper) a S L (lower) vzhledem k (q 1, q 3) q 1 = min (x i), q 3 = max(x i). p i S p i S H konstruována ze 2 částí: Upper Hull (H U), Lower Hull (H L). H U nad S U, H L nad S L. H U, H L zpracovávány separátně, výsledkem sjednocení H(S) = H u(s u) H l(s l). Důvod rychlosti: Většinou málo rekurzivních kroků, málo bodů vně aproximace H U, H L. Pokud S H worst case. 17 / 56
18 Metody konstrukce konvexní obálky 16. Rozdělení na S U, S L q 4 S U σ U q 3 σ ul q 1 S L q 2 18 / 56
19 Metody konstrukce konvexní obálky 17. Algoritmus Quick Hull, lokální procedura Nalezení bodu p s indexem ī p = arg max p i (p s, p e) 2, p σ r(p s, p e). p i S Vytvoření nových segmentů (p s, p) a (p, p e). Rekurzivní volání nad prvním segmentem (p s, p). Přidání H p. Rekurzivní volání nad druhým segmentem (p, p e). V lokální proceduře předávány pouze indexy s, e koncových bodů segmentu. Index i odpovídá bodu p. Algoritmus 3: Quick Hull (s, e, S, H), lokální procedura 1: Najdi bod p = arg max pi S p i (p s, p e), p σ r(p s, p e). 2: If p /O ; //Eexistuje bod vpravo od hrany. 3: Quick Hull(s, i, S, H) //Upper Hull, i index p 4: H p. //Přidej bod c do H. 5: Quick Hull(i, e, S, H) //Lower Hull, i index p 19 / 56
20 Metody konstrukce konvexní obálky 18. Lokální procedura S U i i e i S U σ U s S U σ U s S U σ U s e e i e i s i s S U σ U S U σ U S U U σ U s e e 20 / 56
21 Metody konstrukce konvexní obálky 19. Lokální procedura S L e e s σ ul s σ ul S L i S L i s σ ul s σ ul L S L i e S L i e 21 / 56
22 20. Algoritmus Quick Hull, globální procedura Nalezení q 1, q 2,nutné předzpracování. Rozdělení S na: S U S(upper) a S L S (lower) vzhledem k (q 1, q 2 ). Přidání H U q 1, q 3, rekurzivní procedura nad S U. Přidání H L q 3, q q, rekurzivní procedura nad S L. Při CCW orientaci vede ke konstrukci H bez nutnosti spojení. Algoritmus 3: Quick Hull (S, H), globální procedura 1: H =, S U =, S L = 2: q 1 = min pi S(x i ), q 3 = max pi S(x i ). 3: S U q 1, S U q 3. 4: S L q 1, S L q 3. 5: for p i S 6: if (p i σ l (q 1, q 3 )) S U p i 7: else S L p i 8: H q 3. //Přidej bod c do H. 9: Quick Hull(1, 0, S U, H) //Upper Hull 10: H q 1. //Přidej bod c do H. 11: Quick Hull(0, 1, S L, H) //Lower Hull
23 21. Spojení do H Metody konstrukce konvexní obálky Vhodné načasováním rekurzivních operací zajistí spojení H U a H L. 1. Přidání q 3. 2) Rekurze H U. 3) přidání q 1. Rekurze H L. 2. U 1. σ u 3. L / 56
24 Metody konstrukce konvexní obálky 22. Doba běhu QHull algoritmu Časová funkce T (n) v závislosti na velikosti vstupu n: T (1) = 1 T (n) = T (n/2) + T (n/2) + n, = 2T (n/2) + n, = 2[2T (n/4) + n] + n, = 4T (n/4) + 3n, = 2{2[2T (n/8) + k] + k} + k, = 8T (n/8) + 7n, = it (n/i) + (i 1)n... = nt (1) + (n 1)n, = n + (n 1)n, = n 2 Doba běhu kvadratickou funkcí velikostí vstupu, O(n 2 ). 24 / 56
25 Metody konstrukce konvexní obálky 23. Aproximací body MBR První aproximace H představuje konvexní čtyřúhelník q 1, q 2, q 3, q 4. H zpracováván postupně po jednotlivých segmentech. Algoritmus využívá čtveřici rekurzivních volání procedury QuickHull nad každou stranou (q i q i+1 ) urychlení. q 1 = [min(x i ), y];q 2 = [x, min(y i )];q 3 = [max(x i ), y];q 4 = [x, max(y i )]; Split S to S 1, S 2, S 3, S 4 ; H q 1 QuickHull(0, 1, S 1, H); H q 2 QuickHull(0, 1, S 2, H); H q 3 QuickHull(0, 1, S 3, H); H q 4 QuickHull(0, 1, S 4, H); 25 / 56
26 Metody konstrukce konvexní obálky 24. Konstrukce Quick Hull s aproximací body MBR 26 / 56
27 Metody konstrukce konvexní obálky 25. Inkrementální vkládání Rychlá konstrukce, složitost O(n log(n)). Lze převést do vyšší dimenze. Princip algoritmu: Body z S přidávány po jednom do vytvořené konvexní obálky H, jejíž tvar je modifikován. Necht P představuje podmnožinu datasetu S obsahující m bodů a p přidávaný bod H(P(m + 1)) = H(P(m)) + H(p), Při přidání bodu p do H m mohou nastat dvě situace: p H m Bod p může být zanedbán, neovlivní tvar H(P(m)) H(P(m + 1)) = H(P(m)). p / H m Bod p ovlivní tvar H m. Nutno najít horní a dolní tečny t 1, t 2 procházející p kolmé k H m. 27 / 56
28 Metody konstrukce konvexní obálky 26. Ukázka nalezení horní a dolní tečny 28 / 56
29 Metody konstrukce konvexní obálky 27. Princip nalezení horní a dolní tečny t 1, t 2 V každém bodě H(m) lestujeme polohu incidujících dvou stran e j, e j+1 vzhledem k přidávanému bodu p. V bodech dotyku tečen platí: Dolní tečna t 1: Bod p vlevo od e j a vpravo od e j+1. Horní tečna t 2: Bod p vpravo od e j a vlevo od e j+1. Pro ostatní vrcholy p i leží bod p na stejné straně od e j, e j+1. Konvexní obálka mezi dotykovými body tečen odstraněna a nahrazena dvojicí tečen. Algoritmus 4: Upper and Lower Tangent 1: for i = 0 to n 1 2: if XOR(p vlevo od/na p i 1p i, p vlevo od/na p ip i+1) 3: p i je dotykový bod. Poznámka: XOR(A, B) = (A B) (B A). 29 / 56
30 28. Metoda zametací přímky Realizace strategie inkrementální konstrukce. Nadrovina rozděluje S na zpracovanou/nezpracovanou část. Složitost O(n log(n)), lze převést do vyšší dimenze. Citlivost vůči singularitám: duplicitní body v P. Princip algoritmu: Předzpracování: setřídění S dle souřadnice x, složitost O(n log(n)). Nad P S se pohybuje nadrovina σ (L->P) přes p i P s. Iniciální řešení tvořeno trojúhelníkem H(P s(3)) (p 1, p 2, p 3 ). Pro přidávaný bod p updatována H(P s(m)), expanduje v kladném směru x H(P s(m)) = H(P s(m 1) + H(p). Algoritmus 1: Sweep Line (P, H) 1: unique(p) //Odstraň duplicitní body 2: Sort P s = sort(p) by x 3: H(P s(3)) (p 1, p 2, p 3 ) //Iniciální řešení pro i 3 4: i 4. 5: Opakuj pro p i P s 6: H(P s(m)) = H(P s(m 1) + H(p i ) //Aktualizace řešení
31 29. Sweep-line, konvexní obálka
32 30. Datový model Metody konstrukce konvexní obálky Použity celkem 3 seznamy, popis H formou circular listu. První seznam obsahuje všechny vrcholy P s Dva pomocné seznamy: předchůdci p[i] a následníci n[i]. Vrchol bez předchůdce: p[i] = -1. Vrchol bez následníka: n[i] = -1. Pokud p i H, pak p[i] = -1, n[i] = -1 Příklady: p[i]... n[i]... p edch dce i-tého vrcholu, (i-1)-ty vrchol. následník i-tého vrcholu, (i+1)-ty vrchol. p[p[i]]... p edch dce p edch dce, (i-2)-ty vrchol. n[n[i]]... následník následníka, (i+2)-ty vrchol. n[p[i]]... následník p edch dce, i-ty vrchol. p[n[i]]... p edch dce následníka, i-ty vrchol. 32 / 56
33 31. Ukázka reprezentace H [0] [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] p: S: x=... y=... x=... y=... x=... y=... x=... y=... x=... y=... x=... y=... x=... y=... x=... y=... x=... y=... x=... y=... x=... y=... n:
34 32. Iniciální fáze První hrana tvořená body p 1, p 2, kde x 0 = min pi P s (x i ). Třetí bod p 3 v levé nebo pravé polorovině, nutno zachovat CCW orientaci σ L σ L 1 1 σ R 1 1 σ R Algoritmus 1: Initial phase(p, H) 1: if (p 3 σ L (p 1, p 2 )) // (p 1, p 2, p 3 ) 2: n[1] = 2; n[2] = 3; n[3] = 1 3: p[1] = 3; p[2] = 1; p[3] = 2 4: else // (p 1, p 3, p 2 ) 5: n[1] = 3; n[3] = 2; n[2] = 1 6: p[1] = 2; p[3] = 1; p[2] = 3 Alternativně lze vytvořit dvojúhelník : 1: n[1] = 2; n[2] = 1 2: p[1] = 2; p[2] = 1
35 33. Iterativní fáze I. Vytvoření aproximace H se zachovanou CCW orientací. H nemusí být konvexní, převod na H. Rozpojení H mezi body {i 1, n[i 1]} resp. {p[i 1], i 1}. Náhrada sekvence vrcholů: { {p[i 1], i 1, i, n[i 1]}, {p[i 1], i 1, n[i 1]} {p[i 1], i, i 1, n[i 1]}, y > y i 1, y y i 1. Algoritmus 1: Iterativní fáze I., konstrukce H 1: if (y i > y i 1) //p i σ U 2: p[i] = i-1; n[i] = n[i-1]; // Spojeni p[i] s predchudcem/naslednikem 3: else //p i σ L 4: n[i] = i-1; p[i] = p[i-1]; // Spojeni p[i] s predchudcem/naslednikem 4: n[p[i]] = i; //Propojeni predchudce s p[i] 4: p[n[i]] = i; //Propojeni naslednika s p[i] Oboustranné korektní napojení segmentů v H: {p[p[i]], p[i], i, n[i], n[n[i]]}
36 34. Iterativní fáze I, ukázka. n[i-1] i-1 i σ U n[i-1] i σ U i-1 p[i-1] σ L p[i-1] σ L n[i-1] n[i-1] i-1 σ U i-1 σ U 3 6 p[i-1] i σ L p[i-1] i σ L
37 35. Iterativní fáze I, indexy. n[i-1] i-1 i n[n[i]] n[i] i p[i] p[i-1] p[p[i]]
38 Metody konstrukce konvexní obálky 36. Iterativní fáze II. Převod nekonvexní H na H. Náhrada sekvence nekonvexních vrcholů horní a dolní tečnou. Nekonvexní vrcholy vynechány. Horní tečna: Nekonvexita n[i] v trojici {i, n[i], n[n[i]]} řešena vynecháním: Přemostění vrcholu možnou horní tečnou. {i, n[i], n[n[i]]} {i, n[n[i]]}. Dolní tečna: Nekonvexita p[i] v trojici {p[p[i]], p[i], i} řešena vynecháním: Přemostění vrcholu možnou dolní tečnou. Algoritmus 1: Iterativní fáze II., převod H na H {p[p[i]], p[i], i} {p[p[i]], i}. 1: while (n[n[i]]) σ P (i, n[i]) //Neni horni tecna: n[n[i]]) vpravo od (i, n[i]) 2: p[n[n[i]]] = i; n[i] = n[n[i]]; //Vynech n[i], aproximuj horni tecnou, poradi! 3: while (p[p[i]]) σ L (i, p[i]) //Neni dolni tecna: p[p[i]]) vlevo od (i, p[i]) 4: n[p[p[i]]] = i; p[i] = p[p[i]]; //Vynech p[i], aproximuj dolni tecnou, poradi! 38 / 56
39 37. Iterativní fáze II., ukázka n[n[i]] n[i] i σ R n[n[i]] n[i] t u i σ L p[i] p[i] p[p[i]] p[p[i]] n[n[i]] n[i] i σ R n[n[i]] n[i] i σ L p[i] p[p[i]] t l p[p[i]] p[i]
40 38. Algoritmus Sweep Line, kompletní Algoritmus 1: Sweep Line 1: Sort P s = sort(p) by x 2: if (p 3 σ L (p 1, p 2 )) 3: n[1] = 2; n[2] = 3; n[3] = 1 4: p[1] = 3; p[2] = 1; p[3] = 2 5: else 6: n[1] = 3; n[3] = 2; n[2] = 1 7: p[1] = 2; p[3] = 1; p[2] = 3 8: for p i P s, i > 3 9: if (y i > y i 1 ) 10: p[i] = i-1; n[i] = n[i-1]; 11: else 12: n[i] = i-1; p[i] = p[i-1]; 13: n[p[i]] = i; p[n[i]] = i; 14: while (n[n[i]]) σ R (i, n[i]) 15: p[n[n[i]]] = i; n[i] = n[n[i]]; //Poradi! 16: while (p[p[i]]) σ L (i, p[i]) 17: n[p[p[i]]] = i; p[i] = p[p[i]]; //Poradi!
41 39. Konverze reprezentrace Přechod na reprezentaci H tvořenou posloupností vrcholů. Uchování CCW orientace, procházíme následníky. Zapamatován index prvního vrcholu polygonu. Složitost O(n). Algoritmus 1: Sweep Line: konverze reprezentace 1: H p 1 2: i =n[1]) 3: do 4: H p i 5: i =n[i] 6: while (i 1)
42 Metody konstrukce konvexní obálky 40. Algoritmus Divide and Conquer Předpoklad: žádná trojice bodů není kolineární a žádné dva body v datasetu nemají stejné souřadnice x. Dělení S na dvě podmnožiny A, B a jejich následné spojení s nalezením horní a dolní tečny t 1, t 2. Algoritmus 5: Divide and Conquer. 1: Setřídění S podle x. 2: Rozdělení S na dvě podmnožiny A, B obsahující n/2 bodů. 3: Konstrukce konvexních obálek H(A) a H(B). 4: Spojení konvexních obálek H = H(A) H(B). 5: Nalezení dolní tečny t 1. 6: Nalezení horní tečny t 2. 7: Nahrazení úseků konvexních obálek A, B mezi oběma tečnami. 42 / 56
43 Metody konstrukce konvexní obálky 41. Algoritmus nalezení dolní tečny t 1 Existence řady algoritmů pro spojení dvojice konvexních obálek. Ukázka spojení nalezení dolní tečny t 1 procházkou, Walking Algorithm (Preprata & Hong, 1977). Z extrémních bodů a, b množin A, B nalezneme k bodu a bod b takový, že jejich spojnice je dolní tečnou B. Z bodu b hledáme bod a takový, aby jejich spojnice byla dolní tečnou A. Postup opakujeme, dokud a, b není dolní tečnou A i B. Algoritmus 6: Lower Tangent t 1, Walk 1: Najdi bod a: nejpravější bod A. 2: Najdi bod b: nejpravější bod B. 3: Opakuj, dokud t 1 = ab není dolní tečnou A a B. 4: Opakuj, dokud t 1 není dolní tečnou A: 5: a = a 1. 6: Opakuj, dokud t 1 není dolní tečnou B: 7: b = b / 56
44 Metody konstrukce konvexní obálky 42. Princip nalezení dolní tečny 44 / 56
45 Minimum Area Enclosing Rectangle 43. Využití konvexní obálky pro konstrukci obdélníka s minimální plochou Dáno: Množina n bodů S v R 2. Hledáme: Obdélník R s nejmenší plochou opsaný S. (Minimum Area Enclosing Box) Naivní algoritmy problém řeší v kvadratickém čase O(n 2 ). Definice: Nejméně jedna strana obdélníka s minimální plochou R opsaného množině S je kolineární se stranou H. Algoritmy pro konstrukci obdélníka s minimální plochou R opsaného množině S pracují s konvexní obálkou H předzpracování. Složitost konstrukce konvexní obálky H : O(n log(n)). Složitost konstrukce obdélníku R nad H: pouze O(n)! Algoritmus řeší problém v čase O(n log(n)). Využití v kartografii pro detekci tvaru a natočení budov. 45 / 56
46 Minimum Area Enclosing Rectangle 44. Ukázka obdélníku s minimální plochou opsaného množině S 46 / 56
47 Minimum Area Enclosing Rectangle 45. Rotating Calipers Algoritmus Rotating Calipers pro nalezení R nad datasetem S v lineárním čase (Toussaint, 1983). V prvním kroku nalezen MBR, který se dotýká H v bodech s extrémními souřadnicemi p i, p j, p k, p l. Úhly stran příslušející 4 extrémním bodům sevřené se stranami MBTR označme θ i, θ j, θ k, θ l. 47 / 56
48 Minimum Area Enclosing Rectangle 46. Princip metody Rotating Calipers Pro délky hran l 1, l 2 MBR a plochu A platí: l 1 = d ik cos ϕ k l 2 = d jl cos ϕ j A = l 1 l 2 Otočení obdélníku o úhel ±δ, nové délky hran l 1, l 2 a plocha A l 1 = d ik cos(ϕ k ± δ) l 2 = d jl cos(ϕ j ± δ) A = l 1 l 2. Rotace dle ±δ lze sčítat, jak určit plochu obdélníku po i-tém otočení z plochy předchozího? Pro vztah mezi A i+1 a A i platí po úpravě: A i+1 = A i (cos 2 δ + (tan ϕ k tan ϕ j ) cos δ sin δ tan ϕ k tan ϕ j sin 2 δ) 48 / 56
49 Minimum Area Enclosing Rectangle 47. Algoritmus metody Rotating Calipers Algoritmus 7: Rotating Calipers 1: Inicializuj A min =, rot = 0, θ sum = 0. 2: Nalezení MBR nad S. 3: Výpočet úhlů ϕ j, ϕ k a plochy A(R). 4: A min = A. 5: Opakuj, dokud θ sum < π 4 : 6: Výpočet úhlů θ i, θ j, θ k, θ l a stran l 1, l 2 7: θ = min(θ i, θ j, θ k, θ l ). 8: Otočení R o úhel θ 9: Určení A(R) z předchozí A. 10: if (A < A min ) 11: A min = A;rot = rot + θ; L 1 = l 1 ; L 2 = l 2. 12: θ sum = θ sum + θ. Možné problémy: numerická nepřesnost vlivem rekurentního výpočtu formule mezi A i+1, A i. 49 / 56
50 Minimum Area Enclosing Rectangle 48. Znázornění metody Rotating Calipers 50 / 56
51 Detekce hlavních směrů budov 49. Detekce úhlu natočení budovy Častý problém při kartografické generalizaci budov či jejich automatickém rozpoznávání. Budova před generalizací a po generalizaci musí mít uchovánu orientaci vzhledem k ostatním obsahovým prvkům mapy (např. zachování uliční čáry). Nutnost detekovat tzv. hlavní směry budovy (jsou na sebe kolmé). Popisují orientaci (tj. natočení) budovy vzhledem k ostatním prvkům mapy. Metody detekce natočení budov: Longest Edge. Weighted Bisektor Minimum Area Enclosing Rectangle. Wall Average. 51 / 56
52 Detekce hlavních směrů budov 50. Metody detekce hlavních směrů budov Longest Edge První hlavní směr budovy představován nejdelší stranou v budově, druhý hlavní směr na ní kolmý. Nedosahuje příliš dobrých výsledků Wieghted Bisector: V budově hledány dvě nejdelší úhlopříčky se směry ϕ 1, ϕ 2 a s délkami s 1, s 2. První hlavní směr je dán váženým průměrem. Dává velmi dobré výsledky. ϕ = s 1ϕ 1 + s 2 ϕ 2 s 1 + s 2. Minimum Area Enclosing Rectangle První hlavní směr představuje delší ze stran R, druhý kratší strana. Dává dobré výsledky, problémy s budovami tvaru L a Z. Wall Average Na každou stranu budovy aplikována operace mod( π 2 ). Zbytky po dělení leží v intervalu < 0, π ). Z hodnot 2 spočten vážený průměr, váhou je délka strany. ϕ = n i=1 s i (ϕ i mod π 2 ) s i. 52 / 56
53 Detekce hlavních směrů budov 51. Detekce hlavních směrů budovy Metody Longest Edge a Wall Average (Duchene et al, 2003). 53 / 56
54 Detekce hlavních směrů budov 52. Detekce hlavních směrů budovy Metody Smallest Area Enclosing Rectangle a Weigted Bisector (Duchene et al, 2003). 54 / 56
55 Detekce hlavních směrů budov 53. Problémy při detekci hlavních směrů Problémy s detekcí hlavních směrů u budov tvarů L, Z. 55 / 56
56 Detekce hlavních směrů budov 54. Vliv chybného určení hlavního směru na kartografickou generalizaci Algoritmus Divide and Conquer (Bayer, 2009). 56 / 56
Konvexní obálka množiny bodů.
Konvexní obálka množiny bodů. Graham Scan. Jarvis Scan. Quick Hull. Inkrementální metoda. Divide and Conquer. Rotating Calipers. Tomáš Bayer bayertom@natur.cuni.cz Katedra aplikované geoinformatiky a kartografie.
Triangulace. Význam triangulace. trojúhelník je základní grafický element aproximace ploch předzpracování pro jiné algoritmy. příklad triangulace
Význam triangulace trojúhelník je základní grafický element aproximace ploch předzpracování pro jiné algoritmy příklad triangulace Definice Triangulace nad množinou bodů v rovině představuje takové planární
Geometrické vyhledání.
Geometrické vyhledání. Ray algoritmus. Winding algoritmus. Lichoběžníkové (trapezoidální) mapy Tomáš Bayer bayertom@natur.cuni.cz Katedra aplikované geoinformatiky a kartografie. Přírodovědecká fakulta
Algoritmy používané ve výpočetní geometrii
Algoritmy používané ve výpočetní geometrii Hrubá síla. Inkrementální metoda. Zametací přímka. Heuristiky. Rozděl a panuj. Tomáš Bayer bayertom@natur.cuni.cz Katedra aplikované geoinformatiky a kartografie.
Geometrické vyhledávání
mnohoúhelníky a jejich vlastnosti lokalizace bodu vůči konvexnímu mnohoúhelníku rozhodnutí, zda je bod vnitřní či vnější lokalizace bodu vůči nekonvexnímu mnohoúhelníku rozhodnutí, zda je bod vnitřní či
Dynamické datové struktury III.
Dynamické datové struktury III. Halda. Tomáš Bayer bayertom@natur.cuni.cz Katedra aplikované geoinformatiky a kartografie, Přírodovědecká fakulta UK. Tomáš Bayer bayertom@natur.cuni.cz (Katedra aplikované
Triangulace. RNDr. Petra Surynková, Ph.D. Univerzita Karlova v Praze Matematicko-fyzikální fakulta.
11 RNDr., Ph.D. Katedra didaktiky matematiky Univerzita Karlova v Praze Matematicko-fyzikální fakulta petra.surynkova@mff.cuni.cz http://surynkova.info Význam triangulace trojúhelník je základní grafický
Voronoiův diagram. RNDr. Petra Surynková, Ph.D. Univerzita Karlova v Praze Matematicko-fyzikální fakulta
12 RNDr., Ph.D. Katedra didaktiky matematiky Univerzita Karlova v Praze Matematicko-fyzikální fakulta petra.surynkova@mff.cuni.cz http://surynkova.info Definice V( P) nad množinou bodů P { p v rovině 1,
Topologická kostra. Medial Axis. Straight Skeleton.
Topologická kostra Medial Axis. Straight Skeleton. Tomáš Bayer bayertom@natur.cuni.cz Katedra aplikované geoinformatiky a kartografie. Přírodovědecká fakulta UK. Tomáš Bayer bayertom@natur.cuni.cz (Katedra
Dynamické datové struktury IV.
Dynamické datové struktury IV. Prioritní fronta. Tomáš Bayer bayertom@natur.cuni.cz Katedra aplikované geoinformatiky a kartografie, Přírodovědecká fakulta UK. Tomáš Bayer bayertom@natur.cuni.cz (Katedra
Výpočetní geometrie Computational Geometry
Datové struktury a algoritmy Část 11 Výpočetní geometrie Computational Geometry Petr Felkel 20.12.2005 Úvod Výpočetní geometrie (CG) Příklady úloh Algoritmické techniky paradigmata řazení - jako předzpracování
Operace s uzavřenými oblastmi v GIS
Operace s uzavřenými oblastmi v GIS Booleovské operace s uzavřenými oblastmi. Minkowského suma. Offset polygonu. Tomáš Bayer bayertom@natur.cuni.cz Katedra aplikované geoinformatiky a kartografie. Přírodovědecká
Úvod do výpočetní geometrie. Základní vztahy.
Úvod do výpočetní geometrie. Základní vztahy. Tomáš Bayer bayertom@natur.cuni.cz Katedra aplikované geoinformatiky a kartografie. Přírodovědecká fakulta UK. Tomáš Bayer bayertom@natur.cuni.cz (Katedra
Dynamické datové struktury I.
Dynamické datové struktury I. Seznam. Fronta. Zásobník. Tomáš Bayer bayertom@natur.cuni.cz Katedra aplikované geoinformatiky a kartografie, Přírodovědecká fakulta UK. Tomáš Bayer bayertom@natur.cuni.cz
Kartografické generalizační algoritmy
Kartografické generalizační algoritmy Generace bodových prvků/skupin. Generalizace liniových prvků/skupin. Generalizace plošných prvků/skupin. Tomáš Bayer bayertom@natur.cuni.cz Katedra aplikované geoinformatiky
Konvexní obal a množina
Definice M Množina se nazývá konvení, jestliže úsečka spojující libovolné dva její bod je částí této množin, tj. ab, M, t 0, : ta+ ( tb ) M konvení množina a b a b nekonvení množina Definice Konvení obal
PLANIMETRIE 2 mnohoúhelníky, kružnice a kruh
PLANIMETRIE 2 mnohoúhelníky, kružnice a kruh Lomená čára A 0 A 1 A 2 A 3..., A n (n 2) se skládá z úseček A 0 A 1, A 1 A 2, A 2 A 3,..., A n 1 A n, z nichž každé dvě sousední mají společný jeden krajní
Drsná matematika III 1. přednáška Funkce více proměnných: křivky, směrové derivace, diferenciál
Drsná matematika III 1. přednáška Funkce více proměnných: křivky, směrové derivace, diferenciál Jan Slovák Masarykova univerzita Fakulta informatiky 16. 9. 2008 Obsah přednášky 1 Literatura 2 Funkce a
Třídící algoritmy. Insert Sort. Bubble Sort. Select Sort. Shell Sort. Quick Sort. Merge Sort. Heap Sort.
Třídící algoritmy. Insert Sort. Bubble Sort. Select Sort. Shell Sort. Quick Sort. Merge Sort. Heap Sort. Tomáš Bayer bayertom@natur.cuni.cz Katedra aplikované geoinformatiky a kartografie, Přírodovědecká
AVDAT Mnohorozměrné metody, metody klasifikace Shluková analýza
AVDAT Mnohorozměrné metody, metody klasifikace Shluková analýza Josef Tvrdík Katedra informatiky Přírodovědecká fakulta Ostravská univerzita Shluková analýza Cílem shlukové analýzy je nalézt v datech podmnožiny
Vzorce počítačové grafiky
Vektorové operace součet vektorů rozdíl vektorů opačný vektor násobení vektoru skalárem úhel dvou vektorů velikost vektoru a vzdálenost dvojice bodů v rovině (v prostoru analogicky) u = B A= b a b a u
VE 2D A 3D. Radek Výrut. Abstrakt Tento článek obsahuje postupy pro výpočet Minkowského sumy dvou množin v rovině a pro výpočet Minkowského sumy
25. KONFERENCE O GEOMETRII A POČÍTAČOVÉ GRAFICE Radek Výrut VÝPOČET MINKOWSKÉHO SUMY VE 2D A 3D Abstrakt Tento článek obsahuje postupy pro výpočet Minkowského sumy dvou množin v rovině a pro výpočet Minkowského
A4B33ALG 2010/05 ALG 07. Selection sort (Select sort) Insertion sort (Insert sort) Bubble sort deprecated. Quicksort.
A4B33ALG 2010/05 ALG 07 Selection sort (Select sort) Insertion sort (Insert sort) Bubble sort deprecated Quicksort Stabilita řazení 1 Selection sort Neseřazeno Seřazeno Start T O U B J R M A K D Z E min
Zobrazování těles. problematika geometrického modelování. základní typy modelů. datové reprezentace modelů základní metody geometrického modelování
problematika geometrického modelování manifold, Eulerova rovnost základní typy modelů hranový model stěnový model objemový model datové reprezentace modelů základní metody geometrického modelování těleso
Maturitní téma: Programovací jazyk JAVA
Maturitní téma: Programovací jazyk JAVA Insert Sort (třídění vkládáním) 1. Jako setříděnou část označíme první prvek pole. Jako nesetříděnou část označíme zbytek pole. 2. Vezmeme první (libovolný) prvek
Detekce kartografického zobrazení z množiny
Detekce kartografického zobrazení z množiny bodů Tomáš Bayer Katedra aplikované geoinformatiky Albertov 6, Praha 2 bayertom@natur.cuni.cz Abstrakt. Detekce kartografického zobrazení z množiny bodů o známých
1 Analytická geometrie
1 Analytická geometrie 11 Přímky Necht A E 3 a v R 3 je nenulový Pak p = A + v = {X E 3 X = A + tv, t R}, je přímka procházející bodem A se směrovým vektorem v Rovnici X = A + tv, t R, říkáme bodová rovnice
4. Digitální model terénu.
4. Digitální model terénu. 154GEY2 Geodézie 2 4.1 Úvod - Digitální model terénu. 4.2 Tvorba digitálního modelu terénu. 4.3 Druhy DMT podle typu ploch. 4.4 Polyedrický model terénu (TIN model). 4.5 Rastrový
Syntetická geometrie II
Mnohoúhelníky Pedagogická fakulta 2018 www.karlin.mff.cuni.cz/~zamboj/ Čtyřúhelníky Definice (Čtyřúhelník) Jsou dány čtyři body A, B, C, D v rovině, z nichž žádné tři nejsou kolineární. Čtyřúhelník ABCD
Algoritmizace prostorových úloh
INOVACE BAKALÁŘSKÝCH A MAGISTERSKÝCH STUDIJNÍCH OBORŮ NA HORNICKO-GEOLOGICKÉ FAKULTĚ VYSOKÉ ŠKOLY BÁŇSKÉ - TECHNICKÉ UNIVERZITY OSTRAVA Algoritmizace prostorových úloh Třídění, vyhledávání Daniela Szturcová
Algoritmizace prostorových úloh
Algoritmizace prostorových úloh Vektorová data Daniela Szturcová Prostorová data Geoobjekt entita definovaná v prostoru. Znalost jeho identifikace, lokalizace umístění v prostoru, vlastností vlastních
Omezíme se jen na lomené čáry, jejichž nesousední strany nemají společný bod. Jestliže A 0 = A n (pro n 2), nazývá se lomená čára uzavřená.
MNOHOÚHELNÍKY Vlastnosti mnohoúhelníků Lomená čára C 0 C C C 3 C 4 protíná samu sebe. Lomená čára A 0 A A... A n- A n (n ) se skládá z úseček A 0 A, A A,..., A n- A n, z nichž každé dvě sousední mají společný
Konvexní obálka v E 3 a dělení prostoru
Konvexní obálka v E 3 a dělení prostoru Zuzana Majdišová 30.1.2015 Úvod Existující algoritmy: QuickHull O nh Divide and Conquer O n log n Inkrementální konstrukce O n log n Balení dárků O nh Hlavní myšlenka
KMA/GPM Barycentrické souřadnice a
KMA/GPM Barycentrické souřadnice a trojúhelníkové pláty František Ježek jezek@kma.zcu.cz Katedra matematiky Západočeské univerzity v Plzni, 2008 19. dubna 2009 1 Trojúhelníkové pláty obecně 2 Barycentrické
Výpočetní geometrie. Pavel Strachota. 9. listopadu FJFI ČVUT v Praze
Výpočetní geometrie Pavel Strachota FJFI ČVUT v Praze 9. listopadu 2012 Obsah 1 Úvod 2 Jednoduché algoritmy výpočetní geometrie 3 Další problémy výpočetní geometrie Obsah 1 Úvod 2 Jednoduché algoritmy
Faculty of Nuclear Sciences and Physical Engineering Czech Technical University in Prague
1 / 40 regula Faculty of Nuclear Sciences and Physical Engineering Czech Technical University in Prague regula 1 2 3 4 5 regula 6 7 8 2 / 40 2 / 40 regula Iterační pro nelineární e Bud f reálná funkce
Rekurze a rychlé třídění
Rekurze a rychlé třídění Jan Kybic http://cmp.felk.cvut.cz/~kybic kybic@fel.cvut.cz 2016 2017 1 / 54 Rekurze Rychlé třídění 2 / 54 Rekurze Recursion Rekurze = odkaz na sama sebe, definice za pomoci sebe
5. P L A N I M E T R I E
5. P L A N I M E T R I E 5.1 Z Á K L A D N Í P L A N I M E T R I C K É P O J M Y Bod (definice, značení, znázornění) Přímka (definice, značení, znázornění) Polopřímka (definice, značení, znázornění, počáteční
Grafové algoritmy. Programovací techniky
Grafové algoritmy Programovací techniky Grafy Úvod - Terminologie Graf je datová struktura, skládá se z množiny vrcholů V a množiny hran mezi vrcholy E Počet vrcholů a hran musí být konečný a nesmí být
Přijímací zkouška na MFF UK v Praze
Přijímací zkouška na MFF UK v Praze pro bakalářské studijní programy fyzika, informatika a matematika 2016, varianta A U každé z deseti úloh je nabízeno pět odpovědí: a, b, c, d, e. Vaším úkolem je u každé
Rekurzivní algoritmy
Rekurzivní algoritmy prof. Ing. Pavel Tvrdík CSc. Katedra počítačových systémů Fakulta informačních technologií České vysoké učení technické v Praze c Pavel Tvrdík, 2010 Efektivní algoritmy (BI-EFA) ZS
Numerické metody a programování. Lekce 8
Numerické metody a programování Lekce 8 Optimalizace hledáme bod x, ve kterém funkce jedné nebo více proměnných f x má minimum (maximum) maximalizace f x je totéž jako minimalizace f x Minimum funkce lokální:
IB111 Úvod do programování skrze Python
Vyhledávání, řazení, složitost IB111 Úvod do programování skrze Python 2012 Otrávené studny 8 studen, jedna z nich je otrávená laboratorní rozbor dokáže rozpoznat přítomnost jedu ve vodě je drahý (je časově
NPRG030 Programování I, 2018/19 1 / :03:07
NPRG030 Programování I, 2018/19 1 / 20 3. 12. 2018 09:03:07 Vnitřní třídění Zadání: Uspořádejte pole délky N podle hodnot prvků Měřítko efektivity: * počet porovnání * počet přesunů NPRG030 Programování
Grafové algoritmy. Programovací techniky
Grafové algoritmy Programovací techniky Grafy Úvod - Terminologie Graf je datová struktura, skládá se z množiny vrcholů V a množiny hran mezi vrcholy E Počet vrcholů a hran musí být konečný a nesmí být
Bezkontextové jazyky 2/3. Bezkontextové jazyky 2 p.1/27
Bezkontextové jazyky 2/3 Bezkontextové jazyky 2 p.1/27 Transformace bezkontextových gramatik Bezkontextové jazyky 2 p.2/27 Ekvivalentní gramatiky Definice 6.1 Necht G 1 a G 2 jsou gramatiky libovolného
MATEMATIKA III. π π π. Program - Dvojný integrál. 1. Vypočtěte dvojrozměrné integrály v obdélníku D: ( ), (, ): 0,1, 0,3, (2 4 ), (, ) : 1,3, 1,1,
MATEMATIKA III Program - vojný integrál. Vpočtěte dvojrozměrné integrál v obdélníku : + dd = { < > < > } ( 3), (, ) : 0,, 0,, dd = { < > < > } ( 4 ), (, ) :,3,,, + dd = { < > < > } ( ), (, ):,0,,, + dd=
1 Projekce a projektory
Cvičení 3 - zadání a řešení úloh Základy numerické matematiky - NMNM20 Verze z 5. října 208 Projekce a projektory Opakování ortogonální projekce Definice (Ortogonální projekce). Uvažujme V vektorový prostor
Circular Harmonics. Tomáš Zámečník
Circular Harmonics Tomáš Zámečník Úvod Circular Harmonics Reprezentace křivky, která je: podmonožinou RxR uzavřená funkcí úhlu na intervalu Dále budeme hovořit pouze o takovýchto křivkách/funkcích
7 Konvexní množiny. min c T x. při splnění tzv. podmínek přípustnosti, tj. x = vyhovuje podmínkám: A x = b a x i 0 pro každé i n.
7 Konvexní množiny Motivace. Lineární programování (LP) řeší problém nalezení minima (resp. maxima) lineárního funkcionálu na jisté konvexní množině. Z bohaté škály úloh z této oblasti jmenujme alespoň
Náplň. v.0.03 16.02.2014. - Jednoduché příklady na práci s poli v C - Vlastnosti třídění - Způsoby (algoritmy) třídění
Náplň v.0.03 16.02.2014 - Jednoduché příklady na práci s poli v C - Vlastnosti třídění - Způsoby (algoritmy) třídění Spojení dvou samostatně setříděných polí void Spoj(double apole1[], int adelka1, double
DobSort. Úvod do programování. DobSort Implementace 1/3. DobSort Implementace 2/3. DobSort - Příklad. DobSort Implementace 3/3
DobSort Úvod do programování Michal Krátký 1,Jiří Dvorský 1 1 Katedra informatiky VŠB Technická univerzita Ostrava Úvod do programování, 2004/2005 V roce 1980 navrhl Dobosiewicz variantu (tzv. DobSort),
64. ročník matematické olympiády Řešení úloh krajského kola kategorie A
64. ročník matematické olympiády Řešení úloh krajského kola kategorie A 1. Středy stran AC, BC označme postupně, N. Střed kružnice vepsané trojúhelníku KLC označme I. Úvodem poznamenejme, že body K, L
Lineární algebra : Lineární (ne)závislost
Lineární algebra : Lineární (ne)závislost (4. přednáška) František Štampach, Karel Klouda frantisek.stampach@fit.cvut.cz, karel.klouda@fit.cvut.cz Katedra aplikované matematiky Fakulta informačních technologií
Dynamické datové struktury II.
Dynamické datové struktury II. Stromy. Binární vyhledávací strom. DFS. BFS. Tomáš Bayer bayertom@natur.cuni.cz Katedra aplikované geoinformatiky a kartografie, Přírodovědecká fakulta UK. Tomáš Bayer bayertom@natur.cuni.cz
Matematika I (KX001) Užití derivace v geometrii, ve fyzice 3. října f (x 0 ) (x x 0) Je-li f (x 0 ) = 0, tečna: x = 3, normála: y = 0
Rovnice tečny a normály Geometrický význam derivace funkce f(x) v bodě x 0 : f (x 0 ) = k t k t je směrnice tečny v bodě [x 0, y 0 = f(x 0 )] Tečna je přímka t : y = k t x + q, tj y = f (x 0 ) x + q; pokud
Úsečka spojující sousední vrcholy se nazývá strana, spojnice nesousedních vrcholů je úhlopříčka mnohoúhelníku.
Mnohoúhelníky Je dáno n různých bodů A 1, A 2,. A n, z nichž žádné tři neleží na přímce. Geometrický útvar tvořený lomenou čarou a částí roviny touto čarou ohraničenou nazýváme n-úhelníkem A 1 A 2. A n.
Základní datové struktury III: Stromy, haldy
Základní datové struktury III: Stromy, haldy prof. Ing. Pavel Tvrdík CSc. Katedra počítačových systémů Fakulta informačních technologií České vysoké učení technické v Praze c Pavel Tvrdík, 2010 Efektivní
ZŠ ÚnO, Bratří Čapků 1332
Úvodní obrazovka Menu Návrat na hlavní stránku Obsah Výsledky Poznámky Záložky edunet Konec Matematika 2 (pro 9-12 let) LangMaster Obsah (střední část) výběr tématu - dvojklikem v seznamu témat (horní
Metamorfóza obrázků Josef Pelikán CGG MFF UK Praha
Metamorfóza obrázků 1998-2011 Josef Pelikán CGG MFF UK Praha pepca@cgg.mff.cuni.cz http://cgg.mff.cuni.cz/~pepca/ Morphing 2011 Josef Pelikán, http://cgg.mff.cuni.cz/~pepca 1 / 21 Metamorfóza obrázků -
AVDAT Mnohorozměrné metody, metody klasifikace
AVDAT Mnohorozměrné metody, metody klasifikace Josef Tvrdík Katedra informatiky Přírodovědecká fakulta Ostravská univerzita Mnohorozměrné metody Regrese jedna náhodná veličina je vysvětlována pomocí jiných
Test prvočíselnosti. Úkol: otestovat dané číslo N, zda je prvočíslem
Test prvočíselnosti Úkol: otestovat dané číslo N, zda je prvočíslem 1. zkusit všechny dělitele od 2 do N-1 časová složitost O(N) cca N testů 2. stačí zkoušet všechny dělitele od 2 do N/2 (větší dělitel
x 2 = a 2 + tv 2 tedy (a 1, a 2 ) T + [(v 1, v 2 )] T A + V Příklad. U = R n neprázdná množina řešení soustavy Ax = b.
1. Afinní podprostory 1.1. Motivace. Uvažujme R 3. Jeho všechny vektorové podprostory jsou počátek, přímky a roviny procházející počátkem a celé R 3. Chceme-li v R 3 dělat geometrii potřebujeme i jiné
Vyhledávání. doc. Mgr. Jiří Dvorský, Ph.D. Katedra informatiky Fakulta elektrotechniky a informatiky VŠB TU Ostrava. Prezentace ke dni 21.
Vyhledávání doc. Mgr. Jiří Dvorský, Ph.D. Katedra informatiky Fakulta elektrotechniky a informatiky VŠB TU Ostrava Prezentace ke dni 21. září 2018 Jiří Dvorský (VŠB TUO) Vyhledávání 242 / 433 Osnova přednášky
Detekce kartografického zobrazení z množiny bodů
Detekce kartografického zobrazení z množiny bodů Tomáš Bayer Katedra aplikované geoinformatiky a kartografie, Přírodovědecká fakulta, Univerzita Karlova v Praze, Albertov 6, 120 78, Praha 2, Česká republika,
Kybernetika a umělá inteligence, cvičení 10/11
Kybernetika a umělá inteligence, cvičení 10/11 Program 1. seminární cvičení: základní typy klasifikátorů a jejich princip 2. počítačové cvičení: procvičení na problému rozpoznávání číslic... body za aktivitu
MATURITNÍ TÉMATA Z MATEMATIKY
MATURITNÍ TÉMATA Z MATEMATIKY 1. Základní poznatky z logiky a teorie množin Pojem konstanty a proměnné. Obor proměnné. Pojem výroku a jeho pravdivostní hodnota. Operace s výroky, složené výroky, logické
Jana Dannhoferová Ústav informatiky, PEF MZLU
Počítačová grafika Křivky Jana Dannhoferová (jana.dannhoferova@mendelu.cz) Ústav informatiky, PEF MZLU Základní vlastnosti křivek křivka soustava parametrů nějaké rovnice, která je posléze generativně
Úvod do mobilní robotiky AIL028
SLAM - souběžná lokalizace a mapování {md zw} at robotika.cz http://robotika.cz/guide/umor07/cs 10. ledna 2008 1 2 3 SLAM intro Obsah SLAM = Simultaneous Localization And Mapping problém typu slepice-vejce
Definice globální minimum (absolutní minimum) v bodě A D f, jestliže X D f
Výklad Globální extrémy mají stejný význam jako u funkcí jedné proměnné. Hledáme je bud na celém definičním oboru dané funkce, nebo na předem zadané podmnožině definičního oboru. Definice 6..1. Řekneme,
Zákony hromadění chyb.
Zákony hromadění chyb. Zákon hromadění skutečných chyb. Zákon hromadění středních chyb. Tomáš Bayer bayertom@natur.cuni.cz Přírodovědecká fakulta Univerzity Karlovy v Praze, Katedra aplikované geoinformatiky
Stromy, haldy, prioritní fronty
Stromy, haldy, prioritní fronty prof. Ing. Pavel Tvrdík CSc. Katedra počítačů FEL České vysoké učení technické DSA, ZS 2008/9, Přednáška 6 http://service.felk.cvut.cz/courses/x36dsa/ prof. Pavel Tvrdík
Lineární algebra : Metrická geometrie
Lineární algebra : Metrická geometrie (16. přednáška) František Štampach, Karel Klouda LS 2013/2014 vytvořeno: 6. května 2014, 10:42 1 2 Úvod Zatím jsme se lineární geometrii věnovali v kapitole o lineárních
Přijímací zkoušky z matematiky pro akademický rok 2018/19 NMgr. studium Učitelství matematiky ZŠ, SŠ
Přijímací zkoušky z matematiky pro akademický rok 8/9 NMgr studium Učitelství matematiky ZŠ, SŠ Datum zkoušky: Varianta Registrační číslo uchazeče: Příklad 3 4 5 Celkem Body Ke každému příkladu uved te
Matematika II, úroveň A ukázkový test č. 1 (2018) 1. a) Napište postačující podmínku pro diferencovatelnost funkce n-proměnných v otevřené
2. 3. 2018 Matematika II, úroveň A ukázkový test č. 1 (2018) 1. a) Napište postačující podmínku pro diferencovatelnost funkce n-proměnných v otevřené mn. M E n. Zapište a načrtněte množinu D, ve které
Gymnázium Jiřího Ortena, Kutná Hora
Předmět: Náplň: Cvičení z matematiky geometrie (CZMg) Systematizace a prohloubení učiva matematiky Planimetrie, Stereometrie, Analytická geometrie, Kombinatorika, Pravděpodobnost a statistika Třída: 4.
Kristýna Bémová. 13. prosince 2007
Křivky v počítačové grafice Kristýna Bémová Univerzita Karlova v Praze 13. prosince 2007 Kristýna Bémová (MFF UK) Křivky v počítačové grafice 13. prosince 2007 1 / 36 Pojmy - křivky a jejich parametrické
IV. Základní pojmy matematické analýzy IV.1. Rozšíření množiny reálných čísel
Matematická analýza IV. Základní pojmy matematické analýzy IV.1. Rozšíření množiny reálných čísel na množině R je definováno: velikost (absolutní hodnota), uspořádání, aritmetické operace; znázornění:
Základy matematické analýzy
Základy matematické analýzy Spojitost funkce Ing. Tomáš Kalvoda, Ph.D. 1, Ing. Daniel Vašata 2 1 tomas.kalvoda@fit.cvut.cz 2 daniel.vasata@fit.cvut.cz Katedra aplikované matematiky Fakulta informačních
Různostranný (obecný) žádné dvě strany nejsou stějně dlouhé. Rovnoramenný dvě strany (ramena) jsou stejně dlouhé, třetí strana je základna
16. Trojúhelník, Mnohoúhelník, Kružnice (typy trojúhelníků a jejich vlastnosti, Pythagorova věta, Euklidovy věty, čtyřúhelníky druhy a jejich vlastnosti, kružnice obvodový a středový, úsekový úhel, vzájemná
GIS Geografické informační systémy
GIS Geografické informační systémy Obsah přednášky Prostorové vektorové modely Špagetový model Topologický model Převody geometrií Vektorový model Reprezentuje reálný svět po jednotlivých složkách popisu
PROGRAMY PRO GIS. Formovat/formulovat problém pro aplikaci v počítači. Fungování GIS programů na základní úrovni - "uvažovat" jako počítač
PROGRAMY PRO GIS Formovat/formulovat problém pro aplikaci v počítači Fungování GIS programů na základní úrovni - "uvažovat" jako počítač Jak počítače řeší problémy procesor central processing unit - CPU
14. přednáška. Přímka
14 přednáška Přímka Začneme vyjádřením přímky v prostoru Přímku v prostoru můžeme vyjádřit jen parametricky protože obecná rovnice přímky v prostoru neexistuje Přímka v prostoru je určena bodem A= [ a1
1 Topologie roviny a prostoru
1 Topologie roviny a prostoru 1.1 Základní pojmy množin Intervaly a okolí Intervaly v rovině nebo prostoru jsou obdélníky nebo hranoly se stranami rovnoběžnými s osami souřadnic. Podmnožiny intervalů se
Úvod do mobilní robotiky AIL028
md at robotika.cz, zbynek.winkler at mff.cuni.cz http://robotika.cz/guide/umor07/cs 27. listopadu 2007 1 Mapa světa Exaktní plánování 2 3 Plánování s otáčením Mapa světa - příklad Obsah Mapa světa Exaktní
Vyhledávání. doc. Mgr. Jiří Dvorský, Ph.D. Katedra informatiky Fakulta elektrotechniky a informatiky VŠB TU Ostrava. Prezentace ke dni 12.
Vyhledávání doc. Mgr. Jiří Dvorský, Ph.D. Katedra informatiky Fakulta elektrotechniky a informatiky VŠB TU Ostrava Prezentace ke dni 12. září 2016 Jiří Dvorský (VŠB TUO) Vyhledávání 201 / 344 Osnova přednášky
Kružnice, úhly příslušné k oblouku kružnice
KRUŽNICE, KRUH Kružnice, úhly příslušné k oblouku kružnice Je dán bod S a kladné číslo r. Kružnice k(s;r) je množina všech bodů (roviny), které mají od bodu S vzdálenost r. Můžeme také říci. Kružnicí k
Algoritmy výpočetní geometrie
Algoritmy výpočetní geometrie prof. Ing. Pavel Tvrdík CSc. Katedra počítačových systémů Fakulta informačních technologií České vysoké učení technické v Praze c Pavel Tvrdík, 2010 Efektivní algoritmy (BI-EFA)
f(x) = arccotg x 2 x lim f(x). Určete všechny asymptoty grafu x 2 2 =
Řešení vzorové písemky z předmětu MAR Poznámky: Řešení úloh ze vzorové písemky jsou formulována dosti podrobně podobným způsobem jako u řešených příkladů ve skriptech U zkoušky lze jednotlivé kroky postupu
Každá kružnice má střed, označuje se S. Všechny body kružnice mají od středu S stejnou vzdálenost, říká se jí poloměr kružnice a označujeme ho r.
Každá kružnice má střed, označuje se S. Všechny body kružnice mají od středu S stejnou vzdálenost, říká se jí poloměr kružnice a označujeme ho r. Kružnice k je množina všech bodů v rovině, které mají od
Časová složitost / Time complexity
Časová složitost / Time complexity Jan Kybic http://cmp.felk.cvut.cz/~kybic kybic@fel.cvut.cz 2016 2018 1 / 24 Složitost algoritmů Algorithm complexity Časová a paměťová složitost Trvání výpočtu v závislosti
Rozvinutelné plochy. tvoří jednoparametrickou soustavu rovin a tedy obaluje rozvinutelnou plochu Φ. Necht jsou
Rozvinutelné plochy Rozvinutelná plocha je každá přímková plocha, pro kterou existuje izometrické zobrazení do rov iny, tj. lze ji rozvinout do roviny. Dá se ukázat, že každá rozvinutelná plocha patří
SYLABUS 9. PŘEDNÁŠKY Z INŢENÝRSKÉ GEODÉZIE
SYLABUS 9. PŘEDNÁŠKY Z INŢENÝRSKÉ GEODÉZIE (Řešení kruţnicových oblouků v souřadnicích) 3. ročník bakalářského studia studijní program G studijní obor G doc. Ing. Jaromír Procházka, CSc. prosinec 2015
Obsah přednášky. Analýza algoritmu Algoritmická složitost Návrhy algoritmů Urychlování algoritmů 1/41
Obsah přednášky Analýza algoritmu Algoritmická složitost Návrhy algoritmů Urychlování algoritmů 1/41 Analýza algoritmu Proč vůbec dělat analýzu? pro většinu problémů existuje několik různých přístupů aby
Syntetická geometrie I
Kruhová inverze Pedagogická fakulta 2018 www.karlin.mff.cuni.cz/~zamboj/ Sférická inverze Autoportrét v kulovém zrcadle M.C.Escher, 1935 Pozor! jen pro ilustraci, inverze a zrcadlení se značně liší Kruhová
5 Rekurze a zásobník. Rekurzivní volání metody
5 Rekurze a zásobník Při volání metody z metody main() se do zásobníku uloží aktivační záznam obsahující - parametry - návratovou adresu, tedy adresu, kde bude program pokračovat v metodě main () po skončení
9. Je-li cos 2x = 0,5, x 0, π, pak tgx = a) 3. b) 1. c) neexistuje d) a) x ( 4, 4) b) x = 4 c) x R d) x < 4. e) 3 3 b
008 verze 0A. Řešeními nerovnice x + 4 0 jsou právě všechna x R, pro která je x ( 4, 4) b) x = 4 c) x R x < 4 e) nerovnice nemá řešení b. Rovnice x + y x = je rovnicí přímky b) dvojice přímek c) paraboly
Syntetická geometrie I
Kružnice Pedagogická fakulta 2016 www.karlin.mff.cuni.cz/~zamboj/ & přímka Vzájemná poloha přímky a kružnice p 1 vnější přímka p 2 tečna s bodem dotyku T p 3 sečna X 1 X 2 tětiva Y 1 Y 2 průměr Y 1 S poloměr
2. Vyšetřete všechny možné případy vzájemné polohy tří různých přímek ležících v jedné rovině.
ZS1BK_PGE1 Geometrie I: Vybrané úlohy z elementární geometrie 1. Které geometrické útvary mohou vzniknout a) jako průnik dvou polopřímek téže přímky, b) jako průnik dvou polorovin téže roviny? V případě
Syntetická geometrie I
Kružnice Pedagogická fakulta 2018 www.karlin.mff.cuni.cz/~zamboj/ & přímka Vzájemná poloha přímky a kružnice p 1 vnější přímka p 2 tečna s bodem dotyku T p 3 sečna X 1 X 2 tětiva Y 1 Y 2 průměr Y 1 S poloměr