שיעור #7 – פירוש ויזואלי לקונבולוציה המלל

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

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

כידוע תמונה מורכבת מפיקסלים שמיוצגים כמספרים בין 0 ל 255 אם זו תמונת Gray level ושלשת מספרים בין 0 ל 255 אם זו תמונה צבעונית. ראו איך אני עובר על פיקסלים בתמונה ומשמאל רואים את הערך המספרי בין 0 ל 255 של אותו הפיקסל (כאשר אפס משמעותו הכי שחור, 255 משמעותו הכי לבן וכל הערכים בניהם הינם גווני אפור). אם כך בעצם תמונה מיוצגת ע”י מטריצה מאוד גדולה.

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

נתחיל במטריצת הגרעין שנקראת Sharpen כי מה שמייד נראה שעושה זה חידוד של התמונה. מטריצת גרעין מסוג Sharpen בגודל 3X3 לדוגמא היא המטריצה עם המספרים: 0,-1,0,-1,5,-1,0,-1,0

ניתן לראות את תוצאת הקונבולוציה שהינה תמונה מחודדת יותר ביחס לתמונה המקורית.

ולמה זה קורה ?

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

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

בואו נשחק ונראה תוצאות של עוד פילטרים (ז”א מטריצות גרעין).

פילטר Blur (טישטוש), אשר אלו הערכים שלו, מטשטש את התמונה ובכך גם מנקה ממנה רעשים.

פילטר Left Sobel , אשר אלו הערכים שלו, מדגיש בתמונה שינויים משמאל לימין, פילטר Top Sobel  מדגיש עליות מלמעלה למטה.

ופילטר Identity, אשר אלו הערכים שלו, משאירה אותה איך שהיא.

לסיום נראה כמה פילטרים פופולאריים עם מטריצת הגרעין שלהם, פילטרים שמחדדים תמונה, מטשטשים תמונה, מבליטים תמונה, מדגישים קצוות בתמונה. וזו גם הסיבה שקוראים להם פילטרים כי הם מסננים את התמונה ומשאירים פרטים מסוימים. פילטרים בעיבוד תמונה ובעיבוד אות שמע הם כלים מאוד שימושיים לעיבוד והם אבן היסוד של CNN=Convolutional Nueral Network.

נסו כתרגיל להבין מדוע ערכי מטריצות הגרעין\פילטר הללו עושות מה שהן עושות לתמונה.

חזור לוידאו