430 likes | 577 Views
סמינר בעיבוד תמונה, אביב 2005:. סימטריית שיקוף ב- 2D. Bases On:. מרצה: סיון רבינוביץ. G. Marola, “On the Detection of the Axes of Symmetry of Symmetric and Almost Symmetric Planar Images, IEEE Transactions on Pattern Analysis and Machine Intelligence, v.11 n.1, p.104-108, January 1989
E N D
סמינר בעיבוד תמונה, אביב 2005: סימטריית שיקוף ב-2D Bases On: מרצה: סיון רבינוביץ • G. Marola, “On the Detection of the Axes of Symmetry of Symmetric and Almost Symmetric Planar Images, IEEE Transactions on Pattern Analysis and Machine Intelligence, v.11 n.1, p.104-108, January 1989 • Y. Hel-Or, S. Peleg, and H. Zabrodsky, “How to Tell Right from Left ”Conference on Computer Vision and Pattern Recognition, pp. 304-309, Jun. 1988. • H. Ogawa: “Symmetry analysis of line drawings using the Hough transform”. Pattern Recognition Letters 12(1): 9-12 (1991) סמטריית שיקוף בדו-מימד
נושאי ההרצאה • Chirality – הגדרה, זיהוי שמאל וימין • זיהוי סימטריה בציורי קו ע"י Hough Transform • הוכחת P=NP אם ירשה הזמן. סמטריית שיקוף בדו-מימד
Chirality(יָדִיוּת?) • הגדרה: אובייקט הוא chiral אם הוא אינו יכול להיות מונח (superimposed) על תמונת הראי שלו ע"י שימוש בהזזה וסיבוב (translation & rotation). סמטריית שיקוף בדו-מימד
תכונת ה-Chirality • יד ימין ויד שמאל, רגל ימין ורגל שמאל. • מצוייה גם במבנה מולקולות וקובעת את תכונותיהן. • חומרים בעלי הרכב אטומי זהה אך מבנה גיאומטרי שונה עם תכונת Chirality נקראים Stereoisomers (סטריאו-איזומרים). • הידעתם שהרוב המוחלט של חומצות האמינו המרכיבות את גופנו הן שמאליות? סמטריית שיקוף בדו-מימד
תכונת ה-Chirality (המשך) • מקרה מעניין שקשור בחומרים איזומריים ארע ב-1957 בגרמניה. תרופה נגד בחילות בוקר של הריון (Thalidomine-תאלידומין) גרמה למומים קשים אצל עוברים. • חוקרים גילו כי איזומר אחד של התרופה בטוח לשימוש בעוד שאיזומר אחר של אותו הרכב הוא מסוכן. • וחזרה לעניינו בדו-מימד... סמטריית שיקוף בדו-מימד
זיהוי Chirality • אנחנו נעסוק בזיהוי Chirality בצורות דו מימדיות. • כשנזהה צורה chiral-ית נרצה לדעת לאיזה קבוצה היא משתייכת (שמאל או ימין). • באופן תאורטי, מספיק לבדוק האם צורה היא סמטרית. משום ש-Chirality היא סוג של אי-סימטריה. • הבעיה היא שבעולמנו כמעט ואין צורות שהן סימטריות באופן מוחלט. רק באגדות. סמטריית שיקוף בדו-מימד
קצת דוגמאות קלות סימטרי אך לא Chiral (משום שניתן להלביש את תמונת המראה על התמונה המקורית). Chiral Chiralיותר סימטרי סמטריית שיקוף בדו-מימד
Chirality - הגדרה מתמטית • תהי R קבוצת נקודות במישור. ותהי KR תת קבוצה של נקודות. K תקרא chiral אםם לא קיימת פונקציית שיקוף m, הזזה t, וסיבוב r, כך ש- mtr(K)=K. • במילים אחרות: K לא מתלכדת עם תמונת המראה m(K) ע"י הזזה וסיבוב בלבד. R R סמטריית שיקוף בדו-מימד
סימטריה - הגדרה • K היא סימטרית אםם קיימת איזומטריה (פרט לזהות), אשר מתלכדת עם K. • (איזומטריה – טרנספורמציה לינארית השומרת מרחקים בין נקודות (כוללת סיבוב, הזזה, שיקוף, וגלישה ( שיקוף + הזזה )). • לפיכך, K שאינה עונה להגדרת Chiral היא סימטרית. סימטרי סימטרי סימטרי סמטריית שיקוף בדו-מימד
עוד כמה הגדרות • K א-סימטרי – אםם לא קיימת איזומטריה של K אשר מתלכדת עם K. • K די-סימטרי – אםם לא קיים שיקוף של K אשר מתלכד עם K. • לסיכום: K הוא chiral אםם הוא א-סימטרי או לכל הפחות די-סימטרי. סמטריית שיקוף בדו-מימד
הגדרות (המשך) • שימו לב שיש צורות, כמו האות S שהן סימטריות, די-סימטריות, ו-chiral בו זמנית. S S סימטרית! הנה איזומטריה המתלכדת עם הצורה המקורית S S די-סימטרית! אין התלכדות עם תמונת המראה והצורה היא כמובן chiral מכיוון שאינה מתלכדת עם תמונת המראה שלה. סמטריית שיקוף בדו-מימד
Centroid – הגדרה • תהי :R{0,1} פונקציה מציינת של KR: (x,y)=1 if (x,y)K; 0 otherwise • ה-Centroid של K, הוא הנקודה (x0,y0) כך ש: • כן. זה פשוט ממוצע של הקואורדינטות בכל ציר. סמטריית שיקוף בדו-מימד
Centroid – דוגמה (2,6) (8,6) (5,4) (2,2) (8,2) סמטריית שיקוף בדו-מימד
Centroid - המשך • ניתן להראות ש-K אינה chiral אםם קיימת פונקציית שיקוף המתלכדת עם K (ראה הגדרת chirality). במצב זה ציר השיקוף עובר דרך ה-Centroid(ההוכחה כל כך טריוויאלית שאני לא אטריד אתכם בה) y הצורה K Centroid ציר השיקוף x סמטריית שיקוף בדו-מימד
שימוש במומנטים (Moments) • לאן הולכים מכאן: בהסתמך על כך שצורה אינה chiral אםם היא השתקפות של עצמה סביב קו העובר ב-Centroid, נחפש קו כזה. • מכיוון שמציאת ה-Centroid היא קלה, כל שנותר הוא למצוא את הזוית של קו השיקוף. • נשתמש במומנטים לביצוע המשימה. סמטריית שיקוף בדו-מימד
מומנטים - הגדרה • תהי :R{0,1} פונקציה מציינת. המומנט Mijמוגדר ע"י הנוסחה: • חישוב ה-Centroid בעזרת מומנטים: • קל להבין מדוע. לדוגמא: (ראה הגדרת centroid....) סמטריית שיקוף בדו-מימד
והעיקר:מציאת ציר השיקוף • מעתה נניח כי ה-Centroid נמצא על ראשית הצירים (זה קל! פשוט מזיזים את הצורה). • יש לנו שני מקרים פשוטים לאבחן: • ציר השיקוף מקביל לציר y:במקרה זה קל לראות שלכל i אי-זוגי, Mij=0. • ציר השיקוף מקביל לציר x:במקרה זה קל לראות שלכל j אי-זוגי, Mij=0. • מדוע אלו אבחנות נכונות? נראה בשקף הבא סמטריית שיקוף בדו-מימד
מציאת ציר השיקוף - המשך • מדוע האבחנות הקודמות נכונות? נסתכל למשל על המקרה הראשון בו ציר השיקוף מקביל לציר y: הפונקציה המציינת חי, שווה ב-x וב-(-x): X(-x,y)=X(x,y). y (x,y) (-x,y) • לכן בחישוב המומנט הנקודות הנגדיות לעומת ציר השיקוף מבטלות זו את זו. x ציר y וציר השיקוף מתלכדים סמטריית שיקוף בדו-מימד
מציאת ציר השיקוף - המשך • מסתמן פתרון אפשרי לבעיה: נסובב את הצורה עד ש-M11=0. בנקודה זו נדע שציר ה-x או ציר y מהווים את ציר השיקוף לצורה. • נפתח את M’11המתקבל מסיבוב הצורה בזוית : ולגבי M’11=0 שאנחנו מחפשים, נוכל לחלץ את : • שורה תחתונה: השיטה אפשרית בתאוריה אך בניסויים אינה מוכיחה את עצמה כטובה. סמטריית שיקוף בדו-מימד
סיכום ביניים – שימוש במומנטים • ניזכר: אנחנו מנסים למצוא ציר שיקוף כדי לבדוק האם צורה היא chiral או לא. • ראינו שימוש במומנטים, שעובד בתאוריה, אך בעולם המעשה הוא אינו מוצלח. • מתאים לתמונות בינאריות בלבד. • נמשיך לגישה אחרת, מבוססת טרנספורם. סמטריית שיקוף בדו-מימד
גישה נוספת – שימוש ב-Transform • Bigun&Granlund הציעו טרנספורם שבו פונקציות הבסיס הן ספירלות. • כל פונקציה תהיה עם מספר "זרועות" שונה, ועקמומיות שונה. • מכיוון שספירלה היא chiral נוכל להעזר בטרנספורם למדוד chirality. סמטריית שיקוף בדו-מימד
גישת ה-Transform (המשך) • נתרגם את הצורה לקואורדינטות פולאריות: • X’(r,)=X(xcos ,ysin ) • יהי מעגל מלא בעל רדיוס R. יהיו f(r, ), ו-g(r, ) שתי פונקציות על . נגדיר את המכפלה הסקלרית <f,g> באופן הבא: • למעשה זהו ערך המכפלה הממוצע של f,g בשטחה של סמטריית שיקוף בדו-מימד
גישת ה-Transform (המשך) • את פונקציות הבסיס נייצר ע"י: • w=2/R, m,n הם מספרים שלמים. • n מייצג את מספר הזרועות של הספירלה. • m מייצג את העקמומיות של הזרוע. • Sign(n*m) מייצג את כיוון העקמומיות (ספירלה ימנית / שמאלית). בשל כך n>0. • הפונקציות הנ"ל מהוות בסיס ולכן כל פונקציה ב- יכולה להיות מיוצגת ע"י צירוף לינארי שלהן. סמטריית שיקוף בדו-מימד
גישת ה-Transform (המשך) • טו מייק אלונג סטורי שורט: • אנו ממירים את התמונה למקדמי הטרנספורם. • מחשבים את הממוצע של המקדמים ומסיקים על מידת ה-chirality ועל כיוונה. • המסקנה לגבי השיטה: • בניסויים, לא היתה מספקת. • רגישה לרעש בתמונה. • המעבר לקואו' פולאריות מוסיף לחוסר הדיוק. סמטריית שיקוף בדו-מימד
מידת ה-Chirality • Features על פני הצורה יכולים לעזור לאפיין את chiral-יות הצורה. • הרעיון מבוסס על מודל המסובב בתוך "מדיום מלא בחלקיקים קטנים" (ארגז חול). • חלק מגבולות המודל יאספו חלקיקים, וגבולות אחרים לא. • נשתמש באורך הקטעים המלקטים חלקיקים כדי לאפיין את chiral-יות הצורה. סמטריית שיקוף בדו-מימד
i x O ri ei i ri+1 ei+1 ניתוח הגבול • תהי E קבוצת הפיקסלים המגדירה את הגבול של הצורה. • נגדיר שתי תת-קבוצות של E, בהן יכללו פיקסלים ה"אוספים" חלקיקים: • RGP – (right-grasp-pixels) • LGP – (left-grasp-pixels) • תהי {ei} קבוצת פיקסלי הגבול, מסודרים לפי הופעתם, כך שהאובייקט נמצא מימין. • תהי O נקודת ציר הסיבוב. ri – הוקטור מ-O ל-ei di – אורכו של ri i– הזוית בין ri לבין ציר ה-x di – d(i+1)mod k – di השינוי באורך I - (i+1) mod k-i. השינוי בזוית, או אם תרצו הזוית (ei,O,ei+1) סמטריית שיקוף בדו-מימד
ניתוח הגבול - המשך • נוכל לאפיין את קבוצת ה-LGP וה-RGP (left/right grasp pixel): • LGP={ei|i>0, di>0} • LGP={ei|i>0, di<0} • שימו לב ש- RGPLGP= • בתור מידה ל-chirality נוכל לבחור במדד הבא: ei ei+1 ei+1 ei LGP di>0 O O ei ei ei+1 ei+1 RGP di<0 O O i<0 i>0 סמטריית שיקוף בדו-מימד
ניתוח הגבול - המשך • מדד נוסף אפשרי, ייתחשב גם במידת הפיתול (torque) של כל נקודת גבול (זהו המרחק מנקודת הציר כפול הכוח): סמטריית שיקוף בדו-מימד
סוף סוף משהו שעובד! • הנה מספר דוגמאות להפעלת השיטה שהוצגה קודם. בעיה. חישוב Z הפשוט אינו עובד כאן. מדוע?מפני ש-LGP=RGP. חייבים להתחשב ב-Torque!! Z Z’ סמטריית שיקוף בדו-מימד
מציאת ציר הסיבוב • כפי שניתן להבין, מידת ה-chirality תלויה מאוד בבחירת ציר הסיבוב. • לרוב, ה-centroid לא יהיה המקום האופטימלי (למשל בספירלה, הוא לא יוצא באמצע הספירלה). • נגדיר אם כן: • מרכז ה-chirality – הנקודה הממקסמת את מידת ה-rotational chirality (סומנה ב-Z) בערכה המוחלט. סמטריית שיקוף בדו-מימד
מציאת ציר הסיבוב - המשך • כדי להקטין את הסבוכיות של חיפוש בכל התמונה, נשתמש ב... • Simulated Annealing – נתחיל ב-centroid ונתקדם ממנו. זה יימנע התקעות במקסימום לוקאלי. • שיטה מהירה יותר למצוא את מרכז ה-chirality היא גישת ה-Multiresolution המתוארת בהמשך. סמטריית שיקוף בדו-מימד
Multiresolution • ניזכר בשיטת ייצוג התמונה בפירמידה של רזולוציות: • L0תהיה הרמה הראשונה שהיא למעשה התמונה עצמה. מספר הפיקסלים בצלע: 2N. • L1 תהיה הרמה הבאה ובה 2N-1 פיקסלים בצלע, וכן הלאה... • נתחיל בחיפוש מרכז ה-chirality ברזולוציה הכי נמוכה. • בכל סיבוב נעבור לרזולוציה הבאה ונחפש בסביבה הקרובה לנקודה שמצאנו ברמה הנמוכה יותר. סמטריית שיקוף בדו-מימד
Multiresolution - המשך • יתרונות: • מאוד מהיר ומדוייק. • מאפשר ניתוח של צורות בלתי קשירות. • מבט על הצורה בכל מיני רזולוציות. סמטריית שיקוף בדו-מימד
מציאת ציר סימטריה • דיברנו עד עתה על תכונת ה-chirality המתייחסת ל"כיוון" של צורות בלתי סימטריות. • נעבור לדבר על אלגוריתם מעניין למציאת ציר הסימטריה של תמונות-קו (Line drawing). • האלגוריתם עושה שימוש ב-Hough Transform! סמטריית שיקוף בדו-מימד
סגמנטציה • תהי Ci עקומה דיגיטלית פשוטה, המיוצגת ברצף של נקודות: (Pi1, Pi2,…,Pin(i)) • ציור קווי (Line drawing) יכול להיות מיוצג ע"י עקומות פשוטות. נפריד את העקומות בנקודות המפגש של הקווים. • לפיכך ציור קוי L הוא קבוצה של עקומות דיגיטליות פשוטות: L={Ci} • הנקודה Pij היא לפיכך, הנקודה ה-j-ית, בסגמנט i. סמטריית שיקוף בדו-מימד
מיקרו-סגמנט • לנקודה Pij נגדיר מיקרו-סגמנט כרצף נקודות (Pij,Pij+1,…,Pij+r) כך שהמרחק (האוקלידי) בין Pij לבין Pij+r הוא הקרוב ביותר לערך נתון מראש – T. • כלומר הנקודה Pijמקיימת את התנאים הבאים: במידה ו-D(Pij,Pin(i))<T נאמר שהמיקרוסגמנט אינו מוגדר בנקודה Pij סמטריית שיקוף בדו-מימד
מציאת המיקרו-סימטריות • לכל שני מיקרוסגמנטים אנחנו יכולים למצוא ציר מיקרוסימטריה. • כותבי המאמר בחרו למצוא את צירי המיקרוסימטריה באמצעות מינימום השגיאה C2. • נעזוב את הגדרת C2כי זה לא מעניין. מה שחשוב הוא שמוצאים את קווי המיקרו סימטריה. (i,j,k,l) Pij Pkl Skl Sij Pij+r Pkl+r’ סמטריית שיקוף בדו-מימד
אז מה עם Hough? • כששני סגמנטים Ci, Ckהינם סימטריים, ניתן לצפות שלמספר רב של מיקרו סגמנטים יהיה את אותו קו סימטריה (או לפחות קו דומה). • שימוש ב-Hough transform יכול לגלות לנו בקלות את הכיוון והזוית של ציר הסימטריה הפופולרי בתמונה. סמטריית שיקוף בדו-מימד
Hough Transform - תזכורת • פותח על ידי Paul Hough ב-1962. נרשם עליו פטנט ע"י IBM. • בטרנספורם זה אנו מעבירים את הקוים מהייצוג ב-x,y לייצוג נורמלי: • xcos+ysin= • הטרנספורם משמש למציאת קוים דומיננטיים בתמונה. סמטריית שיקוף בדו-מימד
Hough Transform - דוגמא הצורה (מצד שמאל) ומציאת פיקסלי גבול Hough Transform הפיקסלים הלבנים ביותר הם 4 צלעות המרובע שיחזור הצורה סמטריית שיקוף בדו-מימד
Hough Transform – עוד דוגמא תמונה של צנרת ומשמאל זיהוי הגבולות. Hough Transform ציור 4 הקוים המתאימים ל-(,) ב-4 הנקודות הכי לבנות בטרנספורם. סמטריית שיקוף בדו-מימד
שימוש ב-Hough למציאת ציר הסימטריה • נחשב את הטרנספורם לכל קווי המיקרו סימטריה שמצאנו. פסגה בטרנספורם מעידה על קיומו של ציר סימטריה כללי בתמונה! סמטריית שיקוף בדו-מימד
תודה • רבה. סמטריית שיקוף בדו-מימד