2d optical flow l.
Download
Skip this Video
Loading SlideShow in 5 Seconds..
סמינר בנושאים מתקדמים בעיבוד תמונה 2D Optical Flow מאת: נעם רביד וגל סטר PowerPoint Presentation
Download Presentation
סמינר בנושאים מתקדמים בעיבוד תמונה 2D Optical Flow מאת: נעם רביד וגל סטר

Loading in 2 Seconds...

play fullscreen
1 / 51

סמינר בנושאים מתקדמים בעיבוד תמונה 2D Optical Flow מאת: נעם רביד וגל סטר - PowerPoint PPT Presentation


  • 171 Views
  • Uploaded on

סמינר בנושאים מתקדמים בעיבוד תמונה 2D Optical Flow מאת: נעם רביד וגל סטר. Overview :. הקדמה משוואת הגבלת התנועה ( The Motion Constraint Equation ) The Aperture Problem חישוב הנגזרת עפ"י סימונצ'לי ( Simoncelli ) האלגוריתם של לוקאס וקאנייד ( Lucas and Kanade )

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about 'סמינר בנושאים מתקדמים בעיבוד תמונה 2D Optical Flow מאת: נעם רביד וגל סטר' - juan


An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
2d optical flow
סמינר בנושאים מתקדמים בעיבוד תמונה

2D Optical Flow

מאת: נעם רביד וגל סטר

overview
Overview:
  • הקדמה
  • משוואת הגבלת התנועה (The Motion Constraint Equation)
  • The Aperture Problem
  • חישוב הנגזרת עפ"י סימונצ'לי (Simoncelli)
  • האלגוריתם של לוקאס וקאנייד (Lucas and Kanade)
  • האלגוריתם של הורן ושאנק (Horn and Schunck)
  • דוגמאות ומימושים
  • סיכום
slide3

הקדמה

  • optical flow זהו זיהוי תנועה של אובייקט על פי בהירות ברצף של תמונות.
  • המטרה היא לנסות למצוא עבור כל פיקסל, בכל זוג תמונות עוקבות, את התנועה שהוא ביצע ביניהן.
slide4
הקדמה: המשך...
  • המעקב אחר תנועת הפיקסלים נעשה ע"י מעקב אחר פיקסל מסוים בעל עוצמה מסוימת. ההנחה היא שלאותו גוף יהיה את אותן עוצמות בכל התמונות ברצף.
slide5
הקדמה: המשך...
  • מתי בדיקה זו נופלת?
          • למשל, טלוויזיה מבוססת על אשליה של תנועה. בין התמונות ניתן לראות את התזוזה של הפיקסלים, למרות שלא מתבצעת תנועה פיזית.
          • כאשר נצלם כדור בעל צבע אחיד מסתובב סביב צירו, ידמה כי הכדור אינו זז, למרות שבחיים האמיתיים הוא מסתובב.
          • כשמצלמים תמונות רצופות, אם עוצמתו או כיוונו של האור משתנים, זה יראה כמו תנועה. למשל: כאשר נזיז את ניצוץ האור שמשתקף מכדור שאינו זז, האלגוריתם יקלוט את הכדור זז.
overview6
Overview:
  • הקדמה
  • משוואת הגבלת התנועה (The Motion Constraint Equation)
  • The Aperture Problem
  • חישוב הנגזרת עפ"י סימונצ'לי (Simoncelli)
  • האלגוריתם של לוקאס וקאנייד (Lucas and Kanade)
  • האלגוריתם של הורן ושאנק (Horn and Schunck)
  • דוגמאות ומימושים
  • סיכום
the 2d motion constraint equation
משוואת הגבלת התנועה בדו-מימד:(the 2d motion constraint equation)
  • כפי שציינו, נתחיל בהנחה כי הבהירות באזור מסוים קטן מספיק, תישאר זהה לכל אורך רצף התמונות, למרות שייתכן ומיקום האזור ישתנה.
  • נראה זאת ע"י הנוסחה הבאה:

I(x,y,t) = I(x+δx,y+ δy, t+δt)

  • כלומר בהירות פיקסל (x,y) נשארת קבועה גם אחרי שהוא זז למקום חדש, בפרק זמן δt.
the 2d motion constraint equation8
משוואת הגבלת התנועה בדו-מימד: המשך...(the 2d motion constraint equation)

I(x,y,t) = I(x+δx,y+ δy, t+δt)

slide9
משוואת הגבלת התנועה בדו-מימד: המשך...
  • בהנחה ש-δx, δy, ו- δt קטנים מספיק, נוכל לפתח את הנוסחה עפ"י טור טיילור ונקבל:
  • כאשר H.O.T הם ה-Higher Order Terms. כלומר, אלו המשך האיברים בטור טיילור, ואנו מניחים שערכיהם קטנים מאוד וניתנים להזנחה.
  • נשים לב כי I(x,y,t) מצטמצם בשני אגפי המשוואה:
slide10
משוואת הגבלת התנועה בדו-מימד: המשך...
  • נחלק ב- δt ונקבל:
  • זאת כאשר ו- , אלו הם רכיבי ה-x וה-y של מהירות הפיקסל בתמונה, הנקראת ה-optical flow של התמונה.
  • נשים לב גם כי ו- הם הנגזרות החלקיות של התמונה בנקודה (x,y,t). לנוחיות נגדיר את הנגזרות החלקיות בצורה הבאה:
slide11
משוואת הגבלת התנועה בדו-מימד: המשך...
  • לכן נקבל את המשוואה בצורה קומפקטית יותר:
  • בעיית ה-Optical Flow מחפשת את הווקטור , ומשוואה זו היא אחת מ-2 המשוואות שנדרשות במערכת המשוואות כדי למצוא ווקטור זה.
overview12
Overview:
  • הקדמה
  • משוואת הגבלת התנועה (The Motion Constraint Equation)
  • The Aperture Problem
  • חישוב הנגזרת עפ"י סימונצ'לי (Simoncelli)
  • האלגוריתם של לוקאס וקאנייד (Lucas and Kanade)
  • האלגוריתם של הורן ושאנק (Horn and Schunck)
  • דוגמאות ומימושים
  • סיכום
the aperture problem
The Aperture Problem:
  • בעיה זו נוצרת כתוצאה מכך שיש לנו רק משוואה אחת, שהיא המשוואה , ו-2 נעלמים (Vx, Vy) שאותם אנחנו רוצים למצוא.
  • המשוואה יוצרת מרחב פתרונות שנראה כך:
the aperture problem14
The Aperture Problem: המשך...
  • ניתן לראות שחסרה לנו משוואה, ולכן נוצר מצב שרכיב אחד של התנועה הולך לאיבוד, ולא ניתן לשחזרו.
  • המקסימום שניתן לעשות זה לחשב את ה-Normal Flow:
  • חישוב ה-Normal Flow משמעו חישוב רכיב המהירות שכיוונו בניצב לכיוון שפת האובייקט בו אנו מתמקדים.
slide15

The Aperture Problem: המשך...

  • נקרא ל-Normal Flow ווקטור המהירות הנורמאלית, או .

לעומת זאת, רכיב המהירות המקביל לשפת האובייקט, , לא ניתן לגילוי.

  • את כיוון וגודל המהירות הנורמאלית נוכל לבטא כך:

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

slide16
איך הבעיה נראית?

נראה כי התמונה בפנים זזה ימינה, נכון?

slide17
איך הבעיה נראית?

כך נראים הדברים מאחורי הקלעים...

slide18
דוגמה נוספת:

The Barber Pole Illusion…

overview20
Overview:
  • הקדמה
  • משוואת הגבלת התנועה (The Motion Constraint Equation)
  • The Aperture Problem
  • חישוב הנגזרת עפ"י סימונצ'לי (Simoncelli)
  • האלגוריתם של לוקאס וקאנייד (Lucas and Kanade)
  • האלגוריתם של הורן ושאנק (Horn and Schunck)
  • דוגמאות ומימושים
  • סיכום
simoncelli
חישוב הנגזרת עפ"י סימונצ'לי (Simoncelli)
  • לפני שניגש לבעיית מציאת ה- optical flow, ניתן לראות שהנוסחאות מאלצות אותנו לחשב את הנגזרות החלקיות.
  • במאמר“Design of multi-dimensional derivative filters” (1994), חוקר בשם סימונצ'לי מציע דרך לחישוב:
  • נעשה קונוולוציה של רצף התמונות עם פילטר מותאם, וכך נקבל את הנגזרות החלקיות. סימונצ'לי הריץ ניסויים רבים ולבסוף מצא פילטר שנותן את הנגזרות הטובות ביותר עבור האלגוריתם.
  • סימונצ'לי השתמש בפילטר חד מימדי, שיפעל על הפיקסל המרכזי ו-2 הפיקסלים הסמוכים אליו בציר אליו אנו מחשבים את הנגזרת.
simoncelli22
חישוב הנגזרת עפ"י סימונצ'לי (Simoncelli): המשך...
  • לפני חישוב הנגזרת, נרצה לטשטש את התמונה על מנת להעלים רעש, ולמנוע השפעתו על חישוב הנגזרות.
  • לכן, בנוסף לפילטר המיועד למציאת הנגזרות, סימונצ'לי מציע פילטר מותאם לטשטוש.
simoncelli23
חישוב הנגזרת עפ"י סימונצ'לי (Simoncelli): המשך...
  • עכשיו רק נותר להראות כיצד מחשבים בשיטה זו את הנגזרות, נעבוד עם 5 תמונות רצופות מזמנים ( t-2, t-1, t, t+1, t+2):
    • חישוב Ix נעשה ע"י: קונוולוצית התמונה עם ווקטור הטשטוש בציר ה-t, כלומר קונוולוציה של כל פיקסל בתמונה עם הפיקסלים הזהים לו בתמונות הסמוכות ברצף. לאחר מכן קונוולוצית התמונה עם ווקטור הטשטוש בציר ה-y, ולבסוף קונוולוציה עם ווקטור הגזירה לציר ה-x.
    • חישוב Iy נעשה באותו אופן.
    • חישוב It נעשה ע"י קונוולוצית התמונה עם ווקטור הטשטוש לצירי ה-x וה-y, ולאחר מכן קונוולוציה עם ווקטור הגזירה לציר ה-t.
  • נשים לב שבכוונה בחישוב הנגזרות החלקיות Ix ו-Iy אנחנו קודם כל עושים קונוולוציה לציר t, מכיוון שזה מצמצם לנו את 5 התמונות לתמונה אחת, וכך נחסוך זמן בשאר הפעולות.
overview25
Overview:
  • הקדמה
  • משוואת הגבלת התנועה (The Motion Constraint Equation)
  • The Aperture Problem
  • חישוב הנגזרת עפ"י סימונצ'לי (Simoncelli)
  • האלגוריתם של לוקאס וקאנייד (Lucas and Kanade)
  • האלגוריתם של הורן ושאנק (Horn and Schunck)
  • דוגמאות ומימושים
  • סיכום
lucas and kanade
האלגוריתם של לוקאס וקאנייד: (Lucas and Kanade)
  • לוקאס וקאנייד פרסמו מאמר בו הציעו אלגוריתם לפיתרון בעיית ה-aperture (1981).
  • האלגוריתם מוצא משוואות נוספות למשוואה הקיימת:
    • אם נתייחס לפיקסלים הקרובים אל הפיקסל שבחרנו כמייצגים את אותו אובייקט, נוכל להניח ש-flow שלהם זהה ל-flow הפיקסל הנבחר.
    • לכן, אם נבחר סביבה בגודל k x k פיקסלים ונפתח את משוואת הגבלת התנועה לכל אחד מהם, נקבל מערכת של k2 משוואות עם 2 נעלמים.
lucas and kanade27
האלגוריתם של לוקאס וקאנייד(Lucas and Kanade): המשך...
  • תתקבל מערכת הבאה:
  • בעיה: יש לנו יותר נוסחאות מנעלמים!
  • הפתרון:
lucas and kanade28
האלגוריתם של לוקאס וקאנייד(Lucas and Kanade): המשך...
  • המערכת ניתנת לפתירה בצורה יעילה יותר, אם נכפיל את המשוואה ב-AT מצד שמאל בכל אגף:
  • כעת, המשוואה תיראה כך:
  • נשים לב כי הסכומים נלקחים מכל הפיקסלים בסביבה שלנו.
slide29
פתירת מערכת המשוואות
  • נבחן מתי מערכת זו ניתנת לפתירה:
    • המטריצה ATA צריכה להיות הפיכה (הפתרון ניתן ע"י (ATA)-1ATb)
    • אסור שערכי המטריצה יהיו קטנים מידי בעקבות רעש
optic flow31
דוגמא – Optic Flow
  • מה ניתן להסיק מהמטריצה ATA?
    • במקרה של שפה: הגרדיאנטים לאורך השפה יהיו גדולים ובאותו כיוון
    • לכן, נקבל ערכים עצמיים l1גדול ו- l2קטן.
optic flow32
דוגמא – Optic Flow
  • מה ניתן להסיק מהמטריצה ATA?
    • במקרה של פינה: הגרדיאנטים בשני הכיוונים יהיו גדולים
    • לכן, נקבל ערכים עצמיים l1 ו- l2 גדולים
optic flow33
דוגמא – Optic Flow
  • מה ניתן להסיק מהמטריצה ATA?
    • במקרה של אזור אחיד: הגרדיאנטים בשני הכיוונים יהיו קטנים מאוד
    • לכן, נקבל ערכים עצמיים l1 ו- l2 קטנים
slide34
מסקנות:
  • אומנם זוהי בעיה של שתי תמונות, אבל:
    • ניתן לראות שבעזרתה אפשר למצוא מאפיינים של התמונה.
    • אפשר להעריך על פי כך כמה רגיש כל אזור לבעיית ה-aperture
      • למשל אנו יודעים ששפות רגישות יותר לבעיה זו.
    • בכך נוכל לדעת אחרי אילו אובייקטים נוכל לעקוב בקלות, ואחרי אילו אובייקטים נתקשה לעשות זאת.
lucas kanade
טעויות באלגוריתם של לוקאס וקאנייד (Lucas & Kanade)
  • מהם הסיבות האופציונליות לשגיאות באלגוריתם?
    • במקרה בו אין הרבה רעש בתמונה, טשטוש מאבד פרטים חשובים בתמונה לשווא.
    • כאשר אחת מההנחות שלנו לא מתקיימת למשל :
      • הבהירות של הפיקסלים לא קבועה ב-2 מופעים של האובייקט.
      • התנועה שנעשתה היא גדולה.
      • נקודה מסוימת לא זזה באותו קצב כמו שכניה (אם הסביבה גדולה מדי). לכן, יש לחשב את גודל הסביבה האידאלי.
overview36
Overview:
  • הקדמה
  • משוואת הגבלת התנועה (The Motion Constraint Equation)
  • The Aperture Problem
  • חישוב הנגזרת עפ"י סימונצ'לי (Simoncelli)
  • האלגוריתם של לוקאס וקאנייד (Lucas and Kanade)
  • האלגוריתם של הורן ושאנק (Horn and Schunck)
  • דוגמאות ומימושים
  • סיכום
horn and schunck
האלגוריתם של הורן ושאנק (Horn and Schunck)
  • הורן ושאנק הציעו במאמרם “Determining Optical Flow”(1981) הציעו פיתרון אחר לבעיית הגבלת התנועה.
horn and schunck38
האלגוריתם של הורן ושאנק (Horn and Schunck)
  • הוצע רעיון אחר למשוואה החסרה במערכת המשוואות שתוביל למציאת (Vx, Vy).
  • הם יצאו מנקודת הנחה שברוב התמונה, המהירויות של האובייקטים אינן משתנות באופן קיצוני בין פיקסלים סמוכים.
horn and schunck39
האלגוריתם של הורן ושאנק (Horn and Schunck)
  • כלומר, מרחב המהירויות של הפיקסלים יהיה חלק יחסית וללא קפיצות, ולכן ניתן לומר שהנגזרות החלקיות של רכיבי המהירות יהיו קטנות.
  • מכאן, נקבל נוסחה נוספת אותה נרצה לאפס:
horn and schunck40
האלגוריתם של הורן ושאנק (Horn and Schunck)
  • נבחר לפתור את מערכת המשוואות בשיטת כופלי לגרנג'. כלומר, למצוא מינימום למשוואה הבאה:
  • אנו נבחר להשתמש ב- שערכו 1.0. מאמרים מסוימים מגדירים את ה- האופטימאלי מבחינתם כ-10, אך לאחר בדיקות נמצא שברוב המקרים אם נבחר שהוא 1 נקבל את התוצאות המדויקות ביותר.
  • שיטת כופלי לגרנג' פותרת מערכת משוואות ע"י נגזרות חלקיות מסובכות שנבחר לא להיכנס אליהם פה.
horn and schunck41
האלגוריתם של הורן ושאנק (Horn and Schunck)
  • פתרון שיטת כופלי לגרנג' מביא לנו את הפתרונות הבאים:
  • עבור:
  • נשתמש בפתרונות אלו, כדי לפתח נוסחה איטרטיבית שתעזור לנו לחשב את המהירויות המדויקות ביותר:
horn and schunck42
האלגוריתם של הורן ושאנק (Horn and Schunck)
  • הסבר הנוסחה:
    • K הוא מספר האיטרציה הנוכחית של הלולאה (בדרך כלל לא עובר את ה-100, למרות שאפשר לקבוע מקסימום כרצונך).
    • V0 ו-U0 הם הערכות המהירות הראשוניות, בדרך כלל נציב בהם 0.
    • ו- הם ממוצע ערכי ה - וה- שקיבלנו בכל האיטרציות עד כה.
horn and schunck43
האלגוריתם של הורן ושאנק (Horn and Schunck)
  • רק נרצה לקבוע מתי האיטרציות יפסיקו, והאלגוריתם יחליט כי הגענו לפתרון מספק.
  • על מנת לעשות זאת, נגדיר לכל שלב ווקטור בשם שיהיה שרשור של כל ווקטורי המהירות שמצאנו בשלב זה. כלומר, אם אנחנו עובדים עם תמונה בגודל NxM, נקבל ווקטור באורך NxMx2, מכיוון שלכל פיקסל יש מהירות המורכבת מ-2 רכיבים.
  • אנחנו נקבע סף כלשהו קטן TOL – Tolerance Level, שנדע שכאשר יתקיים:

משמע שהאלגוריתם הגיע לתוצאה הטובה ביותר ואין טעם להמשיך.

overview45
Overview:
  • הקדמה
  • משוואת הגבלת התנועה (The Motion Constraint Equation)
  • The Aperture Problem
  • חישוב הנגזרת עפ"י סימונצ'לי (Simoncelli)
  • האלגוריתם של לוקאס וקאנייד (Lucas and Kanade)
  • האלגוריתם של הורן ושאנק (Horn and Schunck)
  • דוגמאות ומימושים
  • סיכום
slide46

Optical Flow Vectors

דוגמאות ושימושים:

Image sequence

(single camera)

Tracked sequence

slide47
דוגמאות ושימושים: המשך...
  • http://www.youtube.com/watch?v=0Qr2xX_0li4
  • http://www.youtube.com/watch?v=jTFtJIX97u8&feature=related
overview48
Overview:
  • הקדמה
  • משוואת הגבלת התנועה (The Motion Constraint Equation)
  • The Aperture Problem
  • חישוב הנגזרת עפ"י סימונצ'לי (Simoncelli)
  • האלגוריתם של לוקאס וקאנייד (Lucas and Kanade)
  • האלגוריתם של הורן ושאנק (Horn and Schunck)
  • דוגמאות ומימושים
  • סיכום
slide49
סיכום:
  • Optical flow הינה דרך בה ניתן למצוא תנועה של אובייקטים ברצף של תמונות. בפרט, זהו וקטור המהירויות המגדיר את השינויים שבין רצף התמונות.
  • משוואת הגבלת התנועה שנמצאה כתוצאה מהנחת בהירות פיקסל זז בתמונה נתנה את המשוואה הראשונה למערכת המשוואות שמוצאת את וקטור המהירויות (optical flow).
  • בעיית הaperture הוכיחה כי איבוד מרחב מהירות אחד משנה את התפיסה לגבי כיוון התנועה האמיתי.
  • לוקאס וקאנייד הציעו אלגוריתם בסביבת פיקסלים מקומית בתמונה הפותר את בעיית הaperture.
  • הורן ושאנק הציעו אלגוריתם גלובלי בגישה שונה הפותר גם הוא את בעיית הaperture.
slide50
ביבליוגרפיה:
  • J.L.Barron and N.A.Thacker, “Computing 2d and 3d optical Flow”, 2004.
  • Wayne Bresky, “THE FEASIBILITY OF AN OPTICAL FLOW ALGORITHM FOR ESTIMATING ATMOSPHERIC MOTION “
  • http://robots.stanford.edu/cs223b04/CS%20223-B%20L9%20Optical%20Flow.ppt
  • http://www.icaen.uiowa.edu/~dip/LECTURE/Motion2.html