Digital Elevation Models and TIN Algorithms מרינה סדצקי אילנית מודחי Marc van Kreveld.

Slides:



Advertisements
Similar presentations
Completeness and Expressiveness. תזכורת למערכת ההוכחה של לוגיקה מסדר ראשון : אקסיומות 1. ) ) (( 2. )) ) (( )) ( ) ((( 3. ))) F( F( ( 4. ) v) ( ) v ((
Advertisements

כריית מידע -- Clustering
Object Oriented 33 MCSD DORON AMIR
ממיבחניםC שאלות ++.
מבוא למדעי המחשב לתעשייה וניהול
פונקציונל פונקציה מספר פונקציונל דוגמאות לא פונקציונל פונקציונל.
1 Shape skeletonization Shape skeletonization By identifying local symmetries.
מסדי נתונים תשס " ג 1 תכנון סכמות (Design Theory) מסדי נתונים.
A. Frank File Organization קובץ ישיר מתקדם Advanced Direct File.
חורף - תשס " ג DBMS, Design1 שימור תלויות אינטואיציה : כל תלות פונקציונלית שהתקיימה בסכמה המקורית מתקיימת גם בסכמה המפורקת. מטרה : כאשר מעדכנים.
1 שיפור עקיבה אחר מטרה בשיטת קורלציה ומרכז כובד בשילוב אלגוריתם IMM מגיש: שישלניקוב דניס מנחה: דר' גבי דוידוב הטכניון - מכון טכנולוגי לישראל TECHNION -
אוטומט מחסנית הפקולטה למדעי המחשב אוטומטים ושפות פורמליות ( ) תרגיל מספר 11.
אינטרפולציה רועי יצחק.
חורף - תשס " ג DBMS, צורות נורמליות 1 צורה נורמלית שלישית - 3NF הגדרה : תהי R סכמה רלציונית ותהי F קבוצת תלויות פונקציונליות מעל R. R היא ב -3NF.
Map-Reduce Input: a collection of scientific articles on different topics, each marked with a field of science –Mathematics, Computer Science, Biology,
הכלה ושקילות בין ביטויי XPath. הביטויים מכילים את האופרטורים הבאים [ ] פיצול // צאצא – קו כפול * - ג'וקר תווית דוגמה a[a][*//b] עבור כל ביטוי P ישנו עץ.
2 Suffix Tree: Definition Suffix tree T על מחרוזת S שגודלה n, הוא עץ מכוון עם בדיוק n עלים ממוספרים מ -1 עד n. לכל צומת פנימית ( חוץ מהשורש ) יש לפחות.
משפט ההרכבה Composition Theorem תהי C מחלקה של פונקציות בוליניות תהי נגדיר סדרת פונקציות שניתנות לחישוב בזמן פולינומיאלי.
בהסתברות לפחות למצא בעיה במודל PAC עבור בהסתברות ε הפונקציה f טועה מודל ONLINE 1. אחרי כל טעות הפונקציה משתפרת 2. מספר הטעיות קטן.
מסדי נתונים תשס " ג 1 תכנון סכמות – אלגוריתם פירוק לתבניות בצורת BCNF מסדי נתונים.
Point-Line incidences via Cuttings By Tatiana Kriviliov.
א " ב, מילים, ושפות הפקולטה למדעי המחשב אוטומטים ושפות פורמליות ( ) תרגיל מספר 1.
א " ב, מילים, ושפות הפקולטה למדעי המחשב אוטומטים ושפות פורמליות ( ) תרגיל מספר 1.
Formal Specifications for Complex Systems (236368) Tutorial #6 appendix Statecharts vs. Raphsody 7 (theory vs. practice)
תכנות תרגול 6 שבוע : תרגיל שורש של מספר מחושב לפי הסדרה הבאה : root 0 = 1 root n = root n-1 + a / root n-1 2 כאשר האיבר ה n של הסדרה הוא קירוב.
1 חישוב ואופטימיזציה של שאילתות חלק 2 Query Evaluation and Optimization Part 2.
תחשיב הפסוקים חלק ג'. צורות נורמליות א. DF – Disjunctive Form – סכום של מכפלות. דוגמא: (P  ~Q  R)  (R  P)  (R  ~Q  ~P) הגדרה: נוסחה השקולה לנוסחה.
מודל ONLINE לומדמורה 1. כל ניתן לחישוב בזמן פולינומיאלי 2. אחרי מספר פולינומיאלי של טעיות ( ) הלומד לא טועה ז"א שווה ל- Littlestone 1988.
Motion planning via potential fields תומר באום Based on ch. 4 in “Principles of robot motion” By Choset et al. ב"הב"ה.
ערכים עצמיים בשיטות נומריות. משוואה אופינית X מציין וקטור עצמי מציינת ערך עצמי תואם לוקטור.
The Cyclic Multi-peg Tower of Hanoi מעגלי חד-כווני סבוכיות הפתרון בגרסאות עם יותר מ-3 עמודים.
טיב פני שטח (טפ"ש) טיב פני שטח- רמת החלקות של המשטח.
Ray 7 דוגמא אלגוריתם 1.קבל דוגמאות 2. פלט f a עבור הדוגמה a המינימלית החיובית ?
Data Structures, CS, TAU, Perfect Hashing 1 Perfect Hashing בעיה : נתונה קבוצה S של n מפתחות מתחום U השוואה ל - Hash : * טבלה קבועה (Hash רגיל - דינאמי.
אלכסנדר ברנגולץ דואר אלקטרוני: אלכסנדר ברנגולץ דואר אלקטרוני: פעולות מורפולוגיות.
1 Data Structures, CS, TAU, Perfect Hashing בעיה: נתונה קבוצה S של n מפתחות מתחום U השוואה ל- Hash : * טבלה קבועה (Hash רגיל - דינאמי) * רוצים זמן קבוע.
מודל הלמידה מדוגמאות Learning from Examples קלט: אוסף של דוגמאות פלט: קונסיסטנטי עם פונקציה f ב- C ז"א קונסיסטנטי עם S ז"א מודל הלמידה מדוגמאות Learning.
עקרון ההכלה וההדחה.
יחס סדר חלקי.
תכנות מונחה עצמים Object Oriented Programming (OOP) אתגר מחזור ב' Templates תבניות.
מבוא למדעי המחשב תרגול 3 שעת קבלה : יום שני 11:00-12:00 דוא " ל :
Markov Decision Processes (MDP) תומר באום Based on ch. 14 in “Probabilistic Robotics” By Thrun et al. ב"הב"ה.
מודל הלמידה מדוגמאות Learning from Examples קלט: אוסף של דוגמאות פלט: קונסיסטנטי עם פונקציה f ב- C ז"א קונסיסטנטי עם S ז"א.
מבוא מורחב למדעי המחשב בשפת Scheme תרגול 10. אג'נדה שאלות מבחינות חזרה על מימוש stream אפשרי 2.
מתמטיקה בדידה תרגול 2.
1 מבוא למדעי המחשב סיבוכיות. 2 סיבוכיות - מוטיבציה סידרת פיבונאצ'י: long fibonacci (int n) { if (n == 1 || n == 2) return 1; else return (fibonacci(n-1)
Safari On-line books. מה זה ספארי ספארי זו ספריה וירטואלית בנושא מחשבים היא כוללת יותר מ כותרים כל הספרים הם בטקסט מלא ניתן לחפש ספר בנושא מסוים.
Points on a perimeter (Convex Hull) קורס – מבוא לעבוד מקבילי מבצעים – אריאל פנדלר יאיר ברעם.
11 Introduction to Programming in C - Fall 2010 – Erez Sharvit, Amir Menczel 1 Introduction to Programming in C תרגול
Interpolation Functions in Matlab By Dmitriy Katsif.
WEB OF SCIENCE. WEB OF SCIENCE  Science Citation Index ExpandedTM  Social Sciences Citation Index®  Art & Humanities Citation Index®
- אמיר רובינשטיין מיונים - Sorting משפט : חסם תחתון על מיון ( המבוסס על השוואות בלבד ) של n מפתחות הינו Ω(nlogn) במקרה הגרוע ובממוצע. ניתן לפעמים.
1 מבוא למדעי המחשב רקורסיה. 2 רקורסיה היא שיטה לפתרון בעיות המבוססת על העיקרון העומד ביסוד אינדוקציה מתמטית: אם ידועה הדרך לפתור בעיה עבור המקרים הבסיסיים.
מטא-מודלים Metamodels. מטא-מודל - דגשים לפתרון לקרוא את הכל – זה ארוך אבל הכל נמצא בפנים ! להסתכל על התרשימים הויזואליים ולראות מה מזהים. לקשר בין התמונה.
פיתוח מערכות מידע Class diagrams Aggregation, Composition and Generalization.
Population genetics גנים באוכלוסיות a population is a localized group of individuals belonging to the same species.
1 ניתוח שונות: Post-hoc analysis ניתוח שונות חד-כיווני עם אפקטים קבועים: Post-hoc analysis ד"ר מרינה בוגומולוב מבוסס חלקית על ההרצאות של פרופ' יואב בנימיני.
Tirgul 12 Trees 1.
Formal Specifications for Complex Systems (236368) Tutorial #1
מבוא למדעי המחשב סיבוכיות.
אינדקסינג והשינג (indexing & hashing)
תקשורת ומחשוב תרגול 1 IP, Classes and Masks.
תירגול 14: מבני נתונים דינאמיים
עבודה עם נתונים באמצעות ADO.NET
פרוקטוז, C6H12O6 , חד-סוכר מיוחד
מצגת בנושא גופים... צפייה מהנה שם:סנדי יעקובי. כיתה :ו-2.
Marina Kogan Sadetsky –
תרגול 11 NP complete.
בחירת חומר גלם כתב: עמרי שרון.
NG Interpolation: Divided Differences
Presentation transcript:

Digital Elevation Models and TIN Algorithms מרינה סדצקי אילנית מודחי Marc van Kreveld

הרצאה זו תעסוק ב- 1.מודלים שונים לייצוג פני-קרקע (terrain). 2.אלגוריתמי גישה ל-TIN. 3.אלגוריתמי המרה בין המודלים השונים.

GIS- Geographic Information System (מערכת מידע גיאוגרפי)- מערכת ממוחשבת לאיסוף, ניתוח והצגת נתונים בצורת גיאוגרפית. רוב הניתוחים מושפעים מפני-הקרקע, לכן יש צורך להגדיר את המפות בצורה תלת-מימדית. f:A ⊂ Ŗ×Ŗ→Ŗ – פונקציה הנותנת גובה לכל נקודה p ∈ A, (A- שטח פני-הקרקע המנותחים. גובה הנקודות בשטח לא ידוע במדויק, פרט למספר סופי של נקודות המהוות את נקודות המדגם (חישוב הגובה-קירוב לפי נקודות המדגם). י י ש ו ם

חלק זה יעסוק ב- 1.מודלים שונים לייצוג פני-קרקע (terrain). 2.אלגוריתמי גישה ל-TIN. 3.אלגוריתמי המרה בין המודלים השונים.

מודלים בסיסיים לייצוג פני-קרקע: 1.The regular square grid. 2.The contour line. 3.The triangulated irregular network.

The regular square grid מבנה המחלק את השטח ל-n מלבנים זהים. מאוחסן במחשב כמערך דו-מימדי בגודל n×n. עבור כל מלבן, נשמר בדיוק ערך גובה אחד (מיקום הנקודה הנבחרת במלבן זהה עבור כל המלבנים ויכולה להיות לדוגמא ממוקמת במרכז המלבן).

Sample of regular square grid

חישוב גובה נקודת p: גישה נאיבית – גובה הנקודה הוא גובה המלבן בו הנקודה נמצאת. מקבלים פונקציה f לא רציפה, שאינה מקרבת את השטח בצורה טבעית.

היתרון והחיסרון למודל: היתרון העיקרי של המודל הוא בגישה ישירה לכל חלק של השטח. החיסרון העיקרי של המודל הוא שהוא דורש צפיפות זהה של נקודות המדגם

The Contour line model Contour line - אוסף מקטעים מחוברים בעלי גובה אחיד. המודל מורכב מאוסף של contour lines. כל contour line מאוחסן כאוסף של נקודות עם קואורדינאטות x, y בהם הקו עובר. Contour line הוא קו עקום סגור, או קו שנקודות הקצה שלו נמצאות על גבולות השטח, לכן השטח מחולק לפוליגונים.

Sample of Contour line model

Perspective view of an Elevation model and the contour line map of it

אם הנקודה נמצאת על מקטע, אזי הגובה של p הוא גובה ה- contour line המכיל מקטע זה. אחרת, מוצאים את הפוליגון בו הנקודה שוכנת, ומחשבים את גובהה כערך הביניים של כל ה- contour lines היוצרים פוליגון זה. חישוב גובה נקודת p:

אחסון המודל: ישנן מספר שיטות לאחסון ה- contour lines: 1.Doubly connected edge list (DCEL). 2.The adjacency structure.

The adjacency structure ישנם שני סוגים של קודקודים: 1. קודקוד המתאר פוליגון (חלק משטח פני-הקרקע)- מאוחסן שם הפוליגון. (מסומן ב- ). 2. קודקוד המתאר contour line- מאוחסנים הנקודות דרכם הקו עובר וגובהו. (מסומן ב- ). יש קשת בין פוליגון ל-contour line אם קו זה מופיע כחלק מגבול הפוליגון. מכיוון ש-contour line אינם חוצים זה את זה אזי המבנה הנוצר הוא עץ וכל contour line הוא גבול של שני פוליגונים בדיוק.

t8 t1 t2 t3 t4t5 t6 t7 t9 t10 l1 l2 l3 l4 l6 l7 l8 l9 l10 t1 l3 t4 l4 t6 l6 t7 l7 t9 l2 t5 t8 l1 t2 t3 t10 l10 l9 l8 The adjacency structure

חישוב contour lines: קלט: הגבהים לפיהם יחושבו ה-contour lines. האלגוריתם – מבצעים טריאנגולציה של נקודות המדגם (לדוגמא טריאנגולצית דלוני). (הנחה- אין משולשים אופקיים). עבור כל גובה בודקים האם קיים מקטע בכל אחד מהמשולשים, ואם קיים אז יוצרים את המקטע המתאים.

טריאנגולציה, וחישוב contour lines מגובה 24

The Triangulated Irregular Network model (TIN) נתונה קבוצה סופית של נקודות והגבהים לכל נקודה. המרחק והצפיפות בין הנקודות יכולים להשתנות (בניגוד ל- grid). מבצעים טריאנגולציה על נקודות מדגם אלו. כל נקודה בתחום נמצאת בתוך, על צלע או על נקודה של משולש.

Perspective view of a triangulated irregular network Sample of TIN model

אם הנקודה נמצאת על נקודה של המשולש, אזי ניתן לקבל את הגובה בצורה מדויקת (נקודת מדגם). אם הנקודה נמצאת על צלע של משולש – אינטרפולציה ליניארית לפי שתי הנקודות שיוצרות צלע זו. אם הנקודה נמצאת בתוך המשולש- אינטרפולציה ליניארית לפי שלושת הנקודות שיוצרות משולש זה. חישוב גובה נקודת p:

אחסון המודל – Network structure עבור כל משולש t, צלע e וקודקוד v קיים אובייקט. לאובייקט משולש ישנם שלושה שדות – כל שדה מצביע לצלע של המשולש. לאובייקט צלע ישנם ארבעה שדות- שני שדות שכל אחד מהם מצביע למשולש הנוצר מצלע זו. שני שדות שכל אחד מהם מצביע לקודקוד של הצלע. לאובייקט קודקוד ישנם שלושה שדות המכילים את ערכי הקואורדינאטות והגובה של הקודקוד.

The TIN and the network structure for it. The three values of each vertex are not shown.

מודל מורכב-Hierarchical models מודל היררכי מייצג שטח מסוים של פני הקרקע במספר רמות של אי-דיוק. רוב המודלים ההיררכיים מבוססים על TIN. ככל שמספר נקודות המדגם עולה, כך דרגת הדיוק של ה-TIN היא גבוהה יותר, אולם החישוב הוא יקר יותר. עבור אפליקציות שאינן דורשות רמת דיוק גבוהה יעיל יותר להשתמש ב-TIN עם פחות נקודות מדגם. המודל ההיררכי מאפשר למשתמש לבחור רמת דיוק עבור כל משימה, בהתאם למשימה.

סיכום מודלים לייצוג פני-קרקע המודלים הבסיסיים – 1. Grid- מודל המאפשר גישה ישירה לשטחים השונים. צפיפות נקודות המדגם קבועה. משתמשים במודל זה לצורך סימולציה של פני הקרקע. 2. Contour line- מודל המחלק את השטח לפוליגונים, בהתאם לקווי גובה מסוימים. מודל זה אינו מתאים לסימולציות. מתאים לחלוקה השטח לפי איזורים. 3. TIN- מודל המחלק את השטח למשולשים. אין גישה ישירה לשטחים השונים וצפיפות נקודות המדגם יכולה להשתנות. משתמשים במודל זה לצורך סימולציה של פני הקרקע. מודל מורכב (המודל ההיררכי)- מודל המאפשר בחירה של רמת הדיוק בהתאם למשימה הדרושה לביצוע.

חלק זה יעסוק ב- 1.מודלים שונים לייצוג פני-קרקע (terrain). 2.אלגוריתמי גישה ל-TIN. 3.אלגוריתמי המרה בין המודלים השונים.

Access to TIN נתאר שתי שיטות גישה ל-TIN: 1. Traversal of a TIN 2. Efficient access to a TIN

Traversal of a TIN שיטה ישנה, המבצעת מעבר על TIN, ומבקרת בכל הקודקודים, הצלעות והמשולים של המודל. יתרון השיטה- אין צורך באחסון נוסף פרט למצביע אחד לנקודה ב-TIN.

יהי T TIN, המאוחסן בצורת network structure. יהי v הקודקוד השמאלי התחתון של T. לכל משולש t ב-T ניתן תווית לכל צלע. יהי t משולש כלשהו ב-T. ניתן לצלע e של t את התווית in אם הקו העובר דרך e מחלק את המישור לשני חלקים כך שבחלק אחד נמצא t ובחלק השני v, אחרת ניתן את התווית out. v in out Traversal of a TIN cont... תיאור השיטה -

אם הקו העובר דרך e מכיל את v, אזי אם t נמצא משמאל לקו, ניתן ל-e תווית out, אחרת ניתן ל-e תווית in. בכל משולש יש לפחות צלע אחת עם תווית in ולפחות צלע אחת עם תווית out. כאשר במעבר על TIN נגיע לצלע עם תווית in, נכניס את המשולש המתאים לרשימה. v out Traversal of a TIN cont...

משולש בעל שתי צלעות עם תוויות in- שתי הצלעות בעלות קודקוד משותף v’. נסמן ב-in את הצלע הנמצאת משמאל לישר העובר דרך הצלע (v,v’), וב-in-and-back את הצלע השניה. כאשר מגיעים לצלע עם תווית in-and-back תהיה כניסה למשולש דרך צלע זו, אולם מיד אחר-כך תהיה חזרה (יציאה) דרך צלע זו. v In-and-back in out v’

משולש בעל שתי צלעות עם תווית out- נסמן את הצלעות ב-first-out ו-second-out. הצלע עם התווית first-out, תהיה הצלע הנמצאת משמאל לקו העובר דרך הצלע (v,v’) כאשר v’ הוא הקודקוד המשותף לשתי הצלעות. בהינתן משולש, מתן התוויות לצלעות מחושב בזמן קבוע. v’ v first-out second-out in

האלגוריתם קלט : 1. משולש t. 2. צלע e. ההרצה מתחילה במשולש t שהקודקוד v הוא אחד הקודקודים שלו, ובעל צלע e הנמצאת על הגבול השמאלי של השטח. האלגוריתם עובר ממשולש למשולש על-ידי חציה של צלעות והחלטה איזה צלע לחצות בשלב הבא. ההחלטה מתבססת על סוג הצלע e וסוג המשולש t.

האלגוריתם -

דוגמא: Traversing a TIN; numbers at arrows correspond to the algorithm

in Second-out first-out in In-and-back out first-out Second-out in Second-out first-out Second-out in סימולציה של האלגוריתם