Presentation is loading. Please wait.

Presentation is loading. Please wait.

Eigenfaces for Recognition

Similar presentations


Presentation on theme: "Eigenfaces for Recognition"— Presentation transcript:

1 Eigenfaces for Recognition
גילוי פנים זיהוי ושחזור Eigenfaces בעזרת M.A. Turk and A.P. Pentland: Eigenfaces for Recognition. Journal of Cognitive Neuroscience, 3 (1):71--86, 1991. 1

2 :Summary בניית מרחב הפנים “Face Space” בעזרת Eigenfaces המהווים בסיס. הטלת פנים על מרחב תמונה על מנת לקבל מקדמים של Eigenface. שחזור או בנייה מחדש של תמונה הפנים בעזרת Eigenface. גילוי וזיהוי של פנים. 2

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

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

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

6 השיטה מבוססת על תיאוריית "הפחתת המימד" Dimensionality reduction)) אשר מייצגת את תמונת הפנים ע"י קבוצה קטנה של תמונות אופייניות הנקראות "Eigenfaces". מה הם ה – Eigenfaces: ניתן לחשוב עליהם כעל רכיבים עיקריים של קבוצת תמונות הפנים. וקטורים עצמיים של מטריצת covariance (שונויות) של קבוצת התמונות. תמונות הפנים מקורבים ע"י סכום ממושקל של אותם Eigenfaces. כלומר תמונת הפנים צרוף ליניארי של Eigenfaces שהם אברי בסיס של מרחב הפנים. הם וקטורי יחידה אורתונורמליים. מכילים את מקסימום המידע על תמונות הפנים. 6

7 קבוצת תמונות הפנים<--
Training Set <-- קבוצת Eigenfaces אשר פורשת את מרחב הפנים 7

8 Principal Component Analysis - PCA
תמונות הפנים הן וקטורים מאד גדולים מכיוון שהם שייכים למרחב וקטורי שהוא לא אופטימלי לתיאור. למשל, תמונה 100 x 100 נמצאת ב - אבל, כל הפנים במבט חזיתי דומות יחסית. הדמיון מתבטא ב - : צורת הפנים אליפטית, שני עיניים, אף, פה וכדומה. לכן, מכל התכונות הללו, אנו יכולים להסיק כי הפנים נמצאות בקבוצה קטנה של מרחב התמונה. 8

9 PCA Method כיוון שלפנים יש מבנה דומה הוקטורים שיציגו אותם יהיו מתואמים ( (correlated vectors אנו נראה כי פנים הן קבוצה "קטנה" בתוך מרחב התמונה. ניתן לומר כי תמונות הפנים נמצאות באזורים שונים במרחב התמונה משאר התמונות. פנים בודדות מתאימות לנקודה במרחב התמונה. 9

10 רעיון מרכזי Basic Idea הערכת הגיוון של תמונות פנים שונות.
חישוב וקטורים בסיסיים של מרחב התמונה אשר בעזרתם ניתן להציג את הפנים בדרך הטובה ביותר במרחב עם מימד קטן יותר מבלי לאבד הרבה מידע. Original Data Compact Data 10

11 דוגמא להפחתת מימד – מקרה אידיאלי
x2 x1 דו - מימדי y1 חד - מימדי 11

12 דוגמא להפחתת מימד – איבוד מידע
דו - מימדי x y דו - מימדי y x חד - מימדי 12

13 יתרון השיטה על שיטות אחרות בזיהוי פנים:
תהליך הזיהוי: מטילים את תמונת הפנים הנבדקת על תת-מרחב הנפרש ע"י Eigenfaces (הנקרא “face space”), ומשווים את המיקום במרחב התמונה עם המיקום של תמונות הפנים בבסיס הנתונים. יתרון השיטה על שיטות אחרות בזיהוי פנים: מהירות הביצועים פשטות הביצועים יכולת למידה אי רגישות לשינויים קטנים או הדרגתיים בפנים. 13

14 Background and Related Work
רוב העבודה בזיהוי ממוחשב התמקדה בזיהוי מרכיבים שונים של הפנים כגון: עיניים, אף, פה. מודל הפנים הוגדר ע"י מיקום, גודל ויחסים בין אותם המרכיבים.  חסרון הגישה: קשה להרחיב לזוויות שונות (multiple view). מאוד לא יציבה.  למרות הכל בראייה ממוחשבת גישה זו של זיהוי פנים נשארה פופולרית מאוד. 14

15  כל הגישות האלו לא ניתנות להרחבה
המשך: 2. זיהוי פנים מתמונה פגומה או חסרה.   כל הגישות האלו לא ניתנות להרחבה (בעיית ה –Scaling). 15

16 Eigenface Approach במושגים של תיאוריית המידע:
בהינתן תמונת פנים נמצא את מרכיביה העיקריים. נציג את התמונה בעזרת אותם המרכיבים ונשווה את התמונה המקודדת שקיבלנו עם תמונות פנים ממאגר תמונות אשר קודדו באותו אופן. במושגים מתמטיים: נמצא את המרכיבים העיקריים של תמונת הפנים שהם וקטורים עצמיים(eigenvectors ) של מטריצת ה - covariance של קבוצת תמונות הפנים. 16

17 וקטורים עצמיים מייצגים את הגיוון בתמונות הפנים.
וקטורים עצמיים מייצגים את הגיוון בתמונות הפנים. ניתן להציג אותם וקטורים עצמיים כקבוצה של פנים ערטילאיות (ghostly faces) . Eigenface mapping 17

18 כל פנים ניתן לתאר ע"י צרוף ליניארי של .Eigenfaces
כל פנים ניתן לקרב ע"י שימוש רק ב –”best eigenfaces” שהם בעלי הערכים העצמיים הגדולים ביותר, כלומר אחראיים לגיוון המירבי בקבוצת התמונות. 18

19 M ה - eigenfaces ה – "טובים ביותר" פורשים את תת-המרחב ה – M מימדי של מרחב התמונות, המקרב באופן הטוב ביותר את קבוצת הפנים. פורמלית: תהי קבוצת הפנים. לכל תת-מרחב M-ממדי S, נגדיר את שגיאת הקירוב של S ל –F ע"י , כאשר הוא ההיטל של על S. תת-המרחב הטוב ביותר (כלומר, בעל שגיאת הקירוב הקטנה ביותר) מתקבל באופן הבא: תחילה מחשבים את הממוצע מגדירים מגדירים מטריצה A מגודל (כאשר הוא מספר הפיקסלים בכל תמונה) ע"י A היא סימטרית וחיובית. 19

20 מחשבים את הווקטורים העצמיים של A ואת הערכים העצמיים המתאימים נסדר אותם בסדר יורד,
לכל M, תת-המרחב הטוב ביותר נפרש ע"י שגיאת הקירוב שלו נמדדת ע"י אם הקבוצה "פשוטה", מספיק M קטן כדי להגיע לשגיאה קטנה. לדוגמא, אם כל הפנים זהות, אזי עבור 1=M השגיאה היא 0.

21 כל תמונת פנים ניתן לבנות מחדש בקרוב ע"י מתן משקולות לכל ווקטור עצמי.
כלומר ניתן לקרב הרבה תמונות פנים ע"י סכום ממושקל של מספר קטן של ווקטורים עצמיים. מאחר והווקטורים העצמיים הם אורתונורמליים, חישוב המקדמים מתבצע ע"י מכפלה פנימית, שקל לממש ע"י קונוולוציה. באופן זה נקבל אוסף של משקולות עבור התמונה הנבדקת ובתהליך הזיהוי נשווה בינן לבין המשקלות של התמונות בבסיס הנתונים. 21

22 שלבים בזיהוי פנים: - אתחול
הכנת מאגר תמונות פנים התחלתי (Training Set). חישוב eigenfaces של תמונות המאגר. בהמשך נציג "טריק" להאצת החישוב. בחירת M eigenfaces בעלי ערכים עצמיים הגדולים ביותר, המגדירים את מרחב הפנים. חישוב ייצוג של כל תמונה במאגר במרחב M – מימדי ומציאת משקולות מתאימים, שהם למעשה המקדמים של ה – eigenfaces בקומבינציה הליניארית המקרבת את התמונה. 22

23 שלבים בזיהוי פנים: - המשך
חישוב משקלות של התמונה הנבדקת. גם כאן יש כמובן להחסיר תחילה את הממוצע בדיקה האם התמונה מכילה פנים ע"י חשוב מרחקה ממרחב הפנים. אם התמונה מכילה פנים, שייך את הפנים לקבוצה מתאימה או הגדר אותה כ-"לא ידועה". (optional) עדכון קבוצת eigenfaces ו/או קבוצת משקולות. (optional) אם זיהינו את התמונה כ"לא ידועה" הוסף אותה למאגר התמונות ובצע חישובי אתחול מהתחלה. 23

24 שלבים בזיהוי פנים: - תהליך להמחשה
24

25 חישוב Eigenfaces תהיה I(x,y) תמונת פנים דו-ממדית.
ניתן לחשוב על תמונה כעל מערך בגודל NxN או כעל וקטור במרחב N2 ממדי. לדוגמא: תמונה בגודל 256x256 הופכת לוקטור ממימד 65,536 או במקביל לנקודה במרחב 65,536 מימדי. קבוצה של תמונות ממופה לאוסף של נקודות במרחב. מכיוון שכל תמונות הפנים דומות אנו נוכל לתאר אותן בתת-מרחב בעל מימד הרבה יותר קטן. 25

26 המטרה היא למצוא וקטורים הפורשים את מרחב התמונה.
גודל של כל וקטור הוא N2, המתאר תמונה בגודל NxN. דוגמאות של eigenfaces 26

27 נתון מאגר תמונות פנים : Φ1, Φ2, … , ΦM.
לדוגמא: 27

28 ממוצע של התמונות מוגדר כ –
(1) כל תמונה שונה מהממוצע ע"י וקטור: Γi = Φi - Ψ (2) ממוצע של קבוצת תמונות - Ψ 28

29 מטריצת covarianceהמתאימה:
(3) (4) כאשר: מימד של מטריצה C הוא N2xN2 . מימד זה הוא עצום. אבל, כוון שמסכמים רק M וקטורי תמונה, הדרגה של C לא תוכל לעלות על M. 29

30 אם vi הוא וקטור עצמי של L=ATA :
(5) כאשר μi הם ערכים עצמיים. (6) נכפיל את (5) ב - A ונקבל: לכן, Avi הם וקטורים עצמיים של C = AAT אבל, גודל AAT הואMxM . לכן נגדיר את ui,וקטורים עצמיים של C, כדלקמן: i=1,…,M (7) שהם ה – Eigenfaces. 30

31 בצורה כזאת צמצמנו את המימד בו
מתבצעים החישובים מN2 - ל –M . באופן מעשי מספר של תמונות פנים במאגר יהיה יחסית קטןN2 ) (M<< ובכך החישוב הופך לבר-ביצוע. 31

32 סיווג פנים בעזרת - Eigenfaces
בתהליך הסיווג אין צורך בשחזור מדויק של תמונת הפנים ניתן להשתמש בפחות מ – M וקטורים. נסמן מספר זה ב – .M’ בוחרים M’ וקטורים עצמיים בעלי ערכים עצמיים הגבוהים ביותר, הפורשים תת-מרחב M’ מימדי במרחב תמונה בעל מימד N2. 32

33 נתונה תמונת פנים -Γ המועמדת לזיהוי:
נתונה תמונת פנים -Γ המועמדת לזיהוי: נטיל אותה על תת-מרחב M’כאשר (M’<<M): כאשר wi זו היא קואורדינטת ה – i של Γ במרחב החדש. פנים מקוריות פנים במרחב הפנים 33

34 הדרך הפשוטה לסווג פנים נתונות לface class k –
המתאים היא למצוא את המרחק הקטן ביותר: εk = ||(Ω – Ωk|| (9) כאשר Ωk זה הוא וקטור המתאר face class k. face class Ωiמחושב ע"י ממוצע המשקלות של כל התצוגות במרחב הפנים של אותו בן אדם. ניתן להגיד כי פנים שייכות לface class k - כאשר εk מינימלי קטן מסף θε, אחרת הפנים מוגדרות כ"לא ידועות". 34

35 דוגמאות של Face class Face class x1 Face class x2 35

36 בעיה: הטלה למרחב התמונה מפחיתה מימד, לכן הרבה תמונות (ברובן תמונות פנים) יקבלו את אותו וקטור המשקולות Ω. עלולים לקבל תוצאות בלתי רצויות במיוחד כאשר מדובר בתמונות ללא פנים. פתרון: מדידת מרחק בין התמונה והייצוג שלה במרחב הפנים. תמונת פנים חייבת להיות קרובה לייצוגה ואם התמונה אינה מכילה פנים המרחק חייב להיות גדול. נגדיר: ε = ||(Γ – Γ’)||2 (10) כאשר 36

37 4 אפשרויות: קרוב למרחב הפנים וקרוב לface class - .
הסבר: במקרה הראשון הפנים התגלו וסווגה לקבוצה מתאימה. במקרה השני התגלו פנים חדשות. שני המקרים האחרונים הם לא תמונות פנים. מקרה השלישי הוא בעייתי אבל ניתן להתגבר עליו ע"י השוואה בין תמונת המקור להיטל על מרחב הפנים. 37

38 סיכום של שיטת גילוי בעזרתEigenfaces
1.בחר קבוצה של תמונות הפנים. עדיף שהקבוצה תכלול כמה תמונות של אותם פנים בהבעות שונות ובתאורה משתנה. 2. מציאת וקטורים עצמיים וערכים עצמיים ובחירת M’ וקטורים בעלי ערכים עצמיים הגבוהים ביותר. 3. מציאת Eigenfaces. 4. חישוב class vector Ωk. 5. בחירת ספים θε . θε1 - מצביע על מרחק מ – face class. θε2 - מציג את המרחק המקסימלי ממרחב הפנים. 38

39 וקטור Ω , εk לכל class ו – ε. המשך: .6לכל תמונת פנים הנבדקת חשב:
אם θε1 >εk ו – ε< θε2 סווג את התמונה על סמך face class Ωk אם θε1 <εk ו – ε< θε2 הגדר את הפנים כ - "לא ידועות". 7. אם פנים הוגדרו כ"לא ידועות", ניתן להוסיף אותן למאגר תמונות ויש צורך לחזור על שלבים 1-5. 39

40 דוגמא להמחשה: Face Recognition Algorithm 40 Labeled training- set
x1 x2 x3 xn Face Recognition Algorithm זיהוי של כל תמונה test set – ב X1, X2, X3, …, Xn test- set 40

41 איתור וגילוי פנים: פנים בתמונה הנבדקת לא בהכרח נמצאות במרכז התמונה,
לכן אנו חייבים למצוא דרך לאתר פנים לצורך תהליך זיהוי. פותחו שתי שיטות לאיתור ו/או עקיבה אחר פנים: גילוי תנועה ועקיבה אחר הפנים. שימוש ב –”face space” לאיתור הפנים. 41

42 גילוי תנועה ועקיבת הפנים
הנחה: תנועת אדם יחיד בסביבה סטטית. תרשים עקיבה ואיתור 42

43 אלגוריתם לאיתור תנועת הפנים
נתונות n תמונות של אדם בתנועה. Spatiotemporal Filtering (הפרש התמונות). אם בתמונות המקור היה אדם בתנועה אזי הוא יבלוט. מבצעים פעולות סף על מנת לקבל תמונת תנועה בינארית. ניתוח תוצאות (מציאת פנים ומסלולו). חוקים לניתוח: פנים הן "גוש" קטן עליון מעל גוש הרבה יותר גדול – גוף. תנועת הראש חייבת להיות איטית והמשכית. 43

44 דוגמא של איתור פנים ומסלולן
44

45 שימוש ב –”face space” לאיתור הפנים
תמונת פנים לא משתנה בהרבה כאשר מטילים אותה על מרחב הפנים. לעומת זאת , תמונה ללא פנים נראית שונה במרחב הפנים. 45

46 אלגוריתם לגילוי פנים כאשר מיקומן בתמונה אינו ידוע
הצגת התמונה הנבדקת במרחב הפנים ) (“face space” ע"י eigenfaces. חישוב מרחק ε בין התמונה לייצוגה ב – face space. ε הוא מדד לקיום פנים בתמונה. חישוב מרחק ε(x,y) בין face space לכל נקודה בתמונה נקרא: “face map”. על סמך תמונת מרחקים המתקבלת face map – ניתן לגלות מיקום הפנים. 46

47 תמונה מקורית face map ב –”face map” ערכים נמוכים (כהים) מצביעים על קיום פנים. 47

48 Eliminating the Background Scaling and Orientation Multiple Views
הרחבות: כעת יוצגו שיטות לשיפור המערכת. Eliminating the Background Scaling and Orientation Multiple Views 48

49 Eliminating the Background
רקע יכול להוריד באופן משמעותי ביצועים של תהליך הזיהוי, והסיבה לכך היא שה – eigenfaces לא מבדילים בין פנים לשאר התמונה. פתרון לבעיה זו הוא: הכפלה של תמונת פנים הנבדקת בחלון גאוסיאני דו-מימדי ממורכז לפנים. בצורה זו אנו מפחיתים את השפעת הרקע ומדגישים את מרכז הפנים. 49

50 50

51 Scaling and Orientation
גודל פנים משתנה עלול להפחית באופן משמעותי את ביצועי תהליך הזיהוי. על מנת שהשיטה תעבוד נכון גודל הפנים חייב להיות זהה לגודל פנים של eigenfaces -. פתרונות ל - Scaling: ניתוח עצמים בתנועה נותן לנו מדד על גודל הפנים. בצורה כזו ניתן להתאים את תמונת הפנים לגודל של ה- eigenface. שימוש ב – multiscale eigenfaces: משווים את תמונת פנים הנבדקת עם eigenfaces בגדלים שונים. 51

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

53 Multiple Views מטרה היא:
להרחיב את שיטה גם למקרים שבהם תמונת פנים היא לא חזיתית. פתרון: הכנת מספר תמונות פנים בזויות שונות עבור כל אדם בקבוצת האימון. לדוגמא: תמונות חזיתיות תמונות ב - +/- 45˚ תמונות פרופיל 53

54 ניסויים עם Eigenfaces תמונות פנים לניסוי 54

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

56 השפעת מימד מרחב הפנים (מספר ה - eigenfaces ) על אחוז הגילוי.
56

57 The End! 57


Download ppt "Eigenfaces for Recognition"

Similar presentations


Ads by Google