בדל עריכת תמונה סמנטית דיוק גבוה עם EditGAN - Unite.AI
צור קשר

בינה מלאכותית

עריכת תמונה סמנטית דיוק גבוה עם EditGAN

mm

יצא לאור

 on

אדם מחזיק את הגלובוס בידיו בעמידה בשדות.

רשתות אדפרסיביות כלליות או GANs נהנו מיישומים חדשים בתעשיית עריכת התמונות. בחודשים האחרונים, EditGAN צוברת פופולריות בתעשיית ה-AI/ML מכיוון שזו שיטה חדשה לעריכת תמונות סמנטית מדויקת ואיכותית. 

אנו נדבר על מודל EditGAN בפירוט, ונודיע לך מדוע הוא עשוי להתגלות כאבן דרך בתעשיית עריכת התמונות הסמנטית.

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

למה EditGAN?

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

  1. במהלך שלב ההדרכה, ארכיטקטורת GAN דורשת כמות גבוהה של נתונים מסומנים עם הערות פילוח סמנטיות. 
  2. הם מסוגלים לספק רק שליטה ברמה גבוהה. 
  3. ולעתים קרובות, הם פשוט מתערבים קדימה ואחורה בין תמונות. 

ניתן לראות שלמרות שארכיטקטורות GAN מסורתיות עושות את העבודה, הן אינן יעילות לפריסה בקנה מידה רחב. היעילות המשנה של ארכיטקטורת GAN המסורתית היא הסיבה לכך ש-EditGAN הוצגה על ידי NVIDIA בשנת 2022. 

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

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

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

לסיכום מדוע אנחנו צריכים את EditGAN, זוהי המסגרת הראשונה אי פעם לעריכת תמונות מבוססת GAN שמציעה

  1. עריכה דיוק גבוהה מאוד. 
  2. יכול לעבוד עם קומץ נתונים מסומנים. 
  3. ניתן לפרוס ביעילות בתרחישים בזמן אמת. 
  4. מאפשר קומפוזיציה עבור עריכות מרובות בו זמנית. 
  5. עובד על תמונות שנוצרו על ידי GAN, מוטמעות אמיתיות ואפילו מחוץ לתחום. 

עריכת תמונה סמנטית ברמת דיוק גבוהה עם EditGAN 

StyleGAN2, מסגרת GAN מתקדמת לסינתזת תמונות, היא מרכיב יצירת התמונות העיקרי של EditGAN. המסגרת StyleGAN2 ממפה קודים סמויים שנמשכים ממאגר של התפלגות נורמלית רב משתנים, וממפה אותו לתמונות מציאותיות. 

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

אימון והסקת פילוח

מודל EditGAN מטמיע תמונה במרחב הסמוי של ה-GAN באמצעות אופטימיזציה, ומקודד לביצוע פילוח על תמונה חדשה, והדרכה של ענף הפילוח. המסגרת של EditGAN ממשיכה להתבסס על עבודות קודמות, ומכשירה מקודד להטמעת התמונות במרחב הסמוי. המטרה העיקרית כאן היא להכשיר את המקודד המורכב מאובדני בנייה L2 ו-LPIPS סטנדרטיים לפי פיקסל באמצעות דוגמאות מ-GAN ונתוני אימון מהחיים האמיתיים. יתר על כן, המודל גם מסדיר את המקודד באופן מפורש באמצעות הקודים הסמויים בעת עבודה עם דגימות ה-GAN. 

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

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

המטרה העיקרית של EditGAN היא למנף את ההפצה המשותפת של פילוחים סמנטיים ותמונות עבור עריכת תמונה בדיוק גבוהה. נניח שיש לנו תמונה x שצריך לערוך, אז המודל מטמיע את התמונה במרחב הסמוי של EditGAN או משתמש בתמונות לדוגמה מהמודל עצמו. לאחר מכן יוצר ענף הפילוח y או הפילוח המתאים בעיקר בגלל שגם תמונות RGB וגם פילוחים חולקים את אותם קודים סמויים w. מפתחים יכולים אז להשתמש בכל כלי תיוג או ציור דיגיטלי כדי לשנות את הפילוח ולערוך אותם לפי הדרישות שלהם באופן ידני. 

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

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

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

על בסיס הלמידה הנוכחית שלנו, ניתן להשתמש במסגרת EditGAN כדי לערוך תמונות בשלושה מצבים שונים. 

  • עריכה בזמן אמת עם עריכת וקטורים

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

  • שימוש בחידוד בפיקוח עצמי לעריכה מבוססת וקטור

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

  • עריכה מבוססת אופטימיזציה

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

יישום

מסגרת EditGAN מוערכת על פי תמונות הפרוסות על פני ארבע קטגוריות שונות: מכוניות, ציפורים, חתולים ופנים. ענף הפילוח של המודל מאומן על ידי שימוש בזוגות מסכת תמונה של 16, 30, 30, 16 כנתוני אימון מסומנים עבור מכוניות, ציפורים, חתולים ופנים בהתאמה. כאשר יש לערוך את התמונה אך ורק באמצעות אופטימיזציה, או כאשר המודל מנסה ללמוד את וקטורי העריכה, המודל מבצע 100 שלבי אופטימיזציה באמצעות ה- Adam Optimizer. 

עבור מערך הנתונים של Cat, Car ו-Faces, המודל משתמש בתמונות אמיתיות ממערך הבדיקות של DatasetGAN שלא שימשו לאימון מסגרת ה-GAN לביצוע פונקציונליות עריכה. מיד, תמונות אלו מוטמעות במרחב הסמוי של EditGAN באמצעות אופטימיזציה וקידוד. עבור קטגוריית הציפורים, העריכה מוצגת בתמונות שנוצרו על ידי GAN. 

תוצאות

תוצאות איכותיות

תוצאות בדומיין

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

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

תוצאות מחוץ לתחום

כדי להעריך את ביצועי EditGAN מחוץ לתחום, המסגרת נבדקה במערך הנתונים של MetFaces. מודל EditGAN משתמש בפנים אמיתיות בדומיין ליצירת וקטורי עריכה. לאחר מכן, המודל מטמיע פורטרטים של MetFaces שנמצאים מחוץ לתחום באמצעות תהליך אופטימיזציה בן 100 שלבים, ומחיל את וקטורי העריכה באמצעות תהליך חידוד בפיקוח עצמי בן 30 שלבים. את התוצאות ניתן לראות בתמונה הבאה. 

תוצאות כמותיות

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

  • נכונות סמנטית

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

  • איכות תמונה ברמת הפצה

מרחק תחילת הליבה או KID ו-Frechet Inception Distance או FID מחושב בין מערך הנתונים של הבדיקה של CelebA ו-400 תמונות בדיקה ערוכות. 

  • שימור זהות

יכולתו של המודל לשמר את זהות הנבדקים בעת עריכת התמונה נמדדת באמצעות רשת חילוץ תכונות של ArcFace מאומנת מראש. 

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

  • MaskGAN

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

  • עריכה מקומית

EditGAN גם משווה את הביצועים שלה עם עריכה מקומית, שיטה המשמשת לאיסוף תכונות GAN ליישום עריכה מקומית, והיא תלויה בתמונות עזר. 

  • InterFaceGAN

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

  • StyleGAN2Distillation

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

מגבלות

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

סיכום

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

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

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