Top Banner
1 Shape Shape skeletonization skeletonization By identifying local By identifying local symmetries symmetries
36

1 Shape skeletonization Shape skeletonization By identifying local symmetries.

Dec 19, 2015

Download

Documents

Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: 1 Shape skeletonization Shape skeletonization By identifying local symmetries.

1

Shape skeletonizationShape skeletonizationShape skeletonizationShape skeletonization

By identifying local symmetriesBy identifying local symmetries

Page 2: 1 Shape skeletonization Shape skeletonization By identifying local symmetries.

2

הגדרה הינו תצוגה צורנית אשר שלד

מתאימה ,באופן מיוחד ,לתאור

צורות מוארכות כגון

דמויות , ציורים וקוים.

Page 3: 1 Shape skeletonization Shape skeletonization By identifying local symmetries.

3

דוגמאות ומוטיבציות להשלדה(1 )

רובוטיקה

תוך המנעות Y לנקודה Xניווט בין נקודה

מפגיעה במכשולים.

Y X

Page 4: 1 Shape skeletonization Shape skeletonization By identifying local symmetries.

4

דוגמאות ומוטיבציות להשלדה(2)

אנימציה

( גם בתלת מימדי )קיים שלד.לכל גוף

טכניקות מסויימות של השלדה מאפשרות לנו

חזרה לגוף המקורי

Page 5: 1 Shape skeletonization Shape skeletonization By identifying local symmetries.

5

דוגמאות ומוטיבציות (3 )להשלדה

השוואה צורנית

לכל צורה ניתן לחשב ע”י השלדה

שלד משלה. את השלד נוכל להשוות ע”י קרוב

)לדוגמא בעזרת מרחק אהוסדורף(

למאגר צורות ידועות מראש ועל ידי כך

להתאים משמעות לכל צורה

Page 6: 1 Shape skeletonization Shape skeletonization By identifying local symmetries.

6

הכרות עם המאמר אודרגת אפורדמויות ניתן להשליד מתמונה עם

,אותה ניתן להשליד בשתי שיטות בסיסיות:בינרית( כגון הצרה וכד)’מבוססות פיקסליםשיטות •

שיטות אלו קלות יותר לתכנות אך פחות מדויקות*איתם נתעסק לא מבוססות פיקסליםשיטות •

במאמר זה

שיטות אלו מהירות יותר(פחות פיקסלי קלט)אך *קשה להגדיר תכונות אנליטיות כגון סימטריות

בדומיין הבדיד

Page 7: 1 Shape skeletonization Shape skeletonization By identifying local symmetries.

7

( 1סימטריות מקומיות )סימטריה מקומית נוצרת בין שתי צדדים

משיק Cמנוגדים של צורה ,כאשר מעגל לשתי הצדדים המנוגדים הללו.

מרכז הקטע בין שתי משיקים אלו הוא נקודת הסימטריה המקומית

P1

P2

C

M

Page 8: 1 Shape skeletonization Shape skeletonization By identifying local symmetries.

8

( 2סימטריות מקומיות )אבל!!

קיימת לי בעייתיות לממש את הרעיון בדומיין הבדיד, לרוב לא תהיה לי התאמה מדוייקת כי בדומיין הבדיד אנו עובדים עם פיקסלים

דגומים ולא בצורה אנליטית!!!

Page 9: 1 Shape skeletonization Shape skeletonization By identifying local symmetries.

9

( 2סימטריות מקומיות )דוגמא בעיתית

נצטרך להגדיר מחדש סימטריה מקומית

לדומיין הבדיד

Page 10: 1 Shape skeletonization Shape skeletonization By identifying local symmetries.

10

( 3סימטריות מקומיות )( מורכב משני סוגי אלמנטים:contourמתאר דיגיטלי )

CE-A ( contour element - Aפיקסלי מתאר )• CE-B ( contour element – Bסגמנטי מתאר )•

את הסימטריה ניצור בין:• CE-A – CE-Aמשני הצדדים • CE-B – CE-Aמשני הצדדים • CE-B – CE-Bמשני הצדדים

Page 11: 1 Shape skeletonization Shape skeletonization By identifying local symmetries.

11

סימטריות מקומית - הגדרהאלמנטי מתאר מנוגדים ויוצרים סימטריה מקומית

אם:מעגל העובר דרך כל נקודות הסיום של שני •

האלמנטים לא מכיל אף פיקסל מתאר אחר.שני אלמנטי המתאר ניתנים לצפיה האחד מן •

השני בתחום הרקע הקידמי.

* ניתנים לצפיה – אם קו ישר המחבר בינהם( בין כל נקודה לנקודה )לא חוצה את גבולות הצורה.

Page 12: 1 Shape skeletonization Shape skeletonization By identifying local symmetries.

12

דוגמאות להגדרה

CE-B

המעגל חןצה אלמנטי מתאר

לא ניתנים לצפיה

CE-B

Page 13: 1 Shape skeletonization Shape skeletonization By identifying local symmetries.

13

(1הערות ) נקודות דרכם 4שני סגמנטי מתאר יוצרים לי •

המעגל צריך לעבור – דבר שבדר”כ לא אפשרי לכן נבחר אלמנטים בצורה נוחה אחרת.

Page 14: 1 Shape skeletonization Shape skeletonization By identifying local symmetries.

14

(2הערות ) סימטריה יוצריםכמו כן שני פיקסלי מתאר •

מקומית בנקודה אחת בודדה, עובדה זו גורעת לכן נעדיף גם אותם לא לבחור.לנו מהיעילות,

Page 15: 1 Shape skeletonization Shape skeletonization By identifying local symmetries.

15

(3הערות )לסיכום ההערות – נעדיף לבחור •

CE-A – CE-B

CE-B

CE-A

Page 16: 1 Shape skeletonization Shape skeletonization By identifying local symmetries.

16

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

שעוברת דרך Mאומרת שקיימת מראה אמצעי שני הקטעים שמחברים את קודקוד

וסגמנט המתאר.

M הוא ה DLS שמקביל ל SLSבדומיין הבדיד Discrete Local Symmetry – DLS

Smoothed Local Symmetry - SLS

Page 17: 1 Shape skeletonization Shape skeletonization By identifying local symmetries.

17

לסיכום הסימטריה המקומית דוגמא

P1

P2

C

MP3

P1

P2

C

P3

SLS

DLS

Page 18: 1 Shape skeletonization Shape skeletonization By identifying local symmetries.

18

היישום

PSLGאם נבנה את ה • ומה CE-Aשמורכב מה-

-CE-B ונריץ עליו CDT נקבל מעגל שעובר דרך CDTטריאנגולציה ולפי תכונת ה

סגמנט מתאר וקודקוד מתאר לא יכיל אף נקודת מתאר 1נוספת וזה יתאים להגדרה .

רק את המשולשים CDTאם ניקח מהפלט של ה • 2 נקבל את הגדרה .הרקע הקידמישיושבים במלואם על

כלומר קיבלנו אלמנטים שיוצרים סימטריה מקומית!!!

Page 19: 1 Shape skeletonization Shape skeletonization By identifying local symmetries.

19

חלוקת משולשים לסוגי מבנהכל צלע במשולש יכולה להיות:

CE-Bחיצונית – אם היא •פנימית - כל השאר•

סוגים:4מכאן נוכל לסווג את המשולשים ל בלי צלעות פנימיות I-Tמשולש בודד- • עם צלע אחת פנימית E-Tמשולש קצה- • עם שתי צלעות פנימיות N-Tמשולש נורמלי- • עם שלוש צלעות פנימיות J-Tמשולש צומת- •

משולשיםסימטרים

משולש לא סימטרי

J-T E-TN-T

I-T

Page 20: 1 Shape skeletonization Shape skeletonization By identifying local symmetries.

20

ההשלדה עצמה שקיבלנו ניתן לבנות את השלד הראשוני לפי CDTמה

סוגי המשולשים:

- E-Tישר ממרכז המשולש למרכז הצלע הפנימית

- J-T שלושה ישרה ממרכז המשולש למרכזי כל הצלעות

- I-Tנקודה במרכז המשולש

- N-T ישר ממרכז צלע פנימית אחת למרכז הצלעהפנימית השניה

*ענף הוא שרשרת”( לולאה )“של משולשים נורמלים שמוגבלים משני צדדיהם ע”י משולשים סופים( או

משולש צומת או קצה)

Page 21: 1 Shape skeletonization Shape skeletonization By identifying local symmetries.

21

דוגמאות

Page 22: 1 Shape skeletonization Shape skeletonization By identifying local symmetries.

22

נקיון תוצרי לוואיבמהלך ההשלדה קיימים שני תוצרי לוואי

מלאכותים שלא משקפים לי את הצורה האמיתית:תוצרים פריפריאליים – ענפונים קטנים שלמעשה •

אינם נראים כמו ענף באמת אלא רק עובי שונה של הצורה

תוצרים הצטלבותים – בגלל צורת הבניה, במקום •שצומת יראה לי כפוליגון צומת, אנו נקבל קבוצה של כמה משולשי צומת שיגרמו לצורה להתעוות

Page 23: 1 Shape skeletonization Shape skeletonization By identifying local symmetries.

23

תוצרים פריפריאלים לעומת l של בליטה באורך γניתן לחשב את היחס

כאשרwרוחב • l הוא סכום אורכי הקטעים של שלד בענף( בלי

משולש הצומת)• w”הוא ממוצע הצלעות הפנימיות של כל ה”לולאה וזה מספק ) כאשר 0.5 אצלנו הוא γthנגדיר קבוע( •

l/w = γ < γth זה אומר שנזרוק את הענף הנ”ל

Page 24: 1 Shape skeletonization Shape skeletonization By identifying local symmetries.

24

תוצרים הצטלבותים או יותר משולשי צומת2הצטלבות לרוב מחולקת ל

ניקח את משולש הצומת הראשון( או הפוליגון לצורך העיניין) ונעשה ממוצע של נקודות המפגשים של כל

זוגות הענפים שמחוברים למשולש זה( לפי ’ Cהאוריאנטציה שלהם )ונקבל את

’ מחוץ למשולש הצומת אז נאחד את משולש Cאם •’ Cצומת זה עם המשולשים הפנימיים שבינו לבין

שהיא צלע פנימית מאשר e’ קרוב הרבה יותר ל Cאם •למרכזו של משולש צומת זה אז נאחד את משולש זה

eעם המשולש מעברו השני של

’ קרוב C את הפעולה נמשיך לבצע עד ש *מספיק למרכז המשולש

Page 25: 1 Shape skeletonization Shape skeletonization By identifying local symmetries.

25

(1דוגמא )

Page 26: 1 Shape skeletonization Shape skeletonization By identifying local symmetries.

26

(2דוגמא )

Page 27: 1 Shape skeletonization Shape skeletonization By identifying local symmetries.

27

(3דוגמא )

Page 28: 1 Shape skeletonization Shape skeletonization By identifying local symmetries.

28

האלגוריתם הסופיהכנס קלט דמות בינרית1.( median stroke width)הערך את משיכת הקולמוס 2.

חלץ קווי מתאר3.

” מהדמותsalt & pepperהסר רעשים “4.

דגום מחדש מתאר5.

CDTחשב את ה 6.

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

הוצא שלד8.

Page 29: 1 Shape skeletonization Shape skeletonization By identifying local symmetries.

29

( 1שיפורים ויעולים)את האלגוריתם נוכל לשפר במספר דרכים:

ע”י Wmראשית נעריך את משיכת הקולמוס •סריקה אנכית ואופקית , מסריקה זו נוציא את

אורכי הרצפים השחורים .ממקבץ אורכים אלו נבנה היסטוגרמה של הסתברות הרצפים

השחורים בתמונה .נקודת המקסימום( עם Wmההסתברות הכי גבוה )הוא ה

Page 30: 1 Shape skeletonization Shape skeletonization By identifying local symmetries.

30

( 2שיפורים ויעולים)” כשמם הם:salt & pepperרעשי ה ”•

( הינו מערכת של פיקסלים pepper“אי ”מורעש )–שחורים אשר מספר פיקסלי המתאר שלו הם

יספק )Wm + 5מתחת לסף מסויים( אותנו ( אם קו המתאר המתאים שסביבו saltחור מורעש )–

יספק)Wm + 6מתחת לסף מסויים( אותנו

אם באחד המקרים קבוצת הפיקסלים לא עוברת את הסף את נהפוך את צבעם

Page 31: 1 Shape skeletonization Shape skeletonization By identifying local symmetries.

31

( 3שיפורים ויעולים)על מנת לקבל צורה מדוייקת אין אנו חייבים •

את כל פיקסלי המתאר נוכל לדגום את המתאר ולהשאר עם צורה מדויקת .אם על

דגימה 1 פיקסלים שניקח נשאיר( N + 1כל Nכאשר (N + 1 / )1של )

פרופורציונלי למשיכת הקולמוס נוכל לשמור על הצורה

α) N = α * Wm(0.3 אצלנו הוא

Page 32: 1 Shape skeletonization Shape skeletonization By identifying local symmetries.

32

האלגוריתם הסופיהכנס קלט דמות בינרית1. (median stroke width)הערך את משיכת הקולמוס 2.

חלץ קווי מתאר3.

” מהדמותsalt & pepperהסר רעשים “4.

דגום מחדש מתאר5.

CDTחשב את ה 6.

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

הוצא שלד8.

Page 33: 1 Shape skeletonization Shape skeletonization By identifying local symmetries.

33

!! זמניםCDTזמן ריצת האלגוריתם הינו כזמן ריצת ה –

O(n logn)כלומר אולם במהלך בדיקות היעילות של אלגוריתם זה

שזמן ריצתו הואCDTנעשה שימוש באלגוריתם

O(n²) ועדיין הראה ביצועים יעילים בהרבה

מאלגוריתמים מבוססי פיקסלים

Page 34: 1 Shape skeletonization Shape skeletonization By identifying local symmetries.

34

!! זמניםחשוב לציין שמעבר לזמנים אלגוריתם זה רץ

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

אותם אנו דוגמים

Page 35: 1 Shape skeletonization Shape skeletonization By identifying local symmetries.

35

דוגמא להשוואה)יעילות גם התמונה מורעשת(

Page 36: 1 Shape skeletonization Shape skeletonization By identifying local symmetries.

36

דוגמאות להשוואה )יעילות גם בתמונה מורעשת(