```html מחברים: ג'ון גאו, NVIDIA, אוניברסיטת טורונטו, מכון וקטור (jung@nvidia.com) טיאנצ'אנג שן, NVIDIA, אוניברסיטת טורונטו, מכון וקטור (frshen@nvidia.com) זיאן וואנג, NVIDIA, אוניברסיטת טורונטו, מכון וקטור (zianw@nvidia.com) Wenzheng Chen, NVIDIA, אוניברסיטת טורונטו, מכון וקטור (wenzchen@nvidia.com) קנגסו יין, NVIDIA (kangxuey@nvidia.com) דאיצ'ינג לי, NVIDIA (daiqingl@nvidia.com) אור ליטני, NVIDIA (olitany@nvidia.com) זאן גוג'יק, NVIDIA (zgojcic@nvidia.com) סניה פידלר, NVIDIA, אוניברסיטת טורונטו, מכון וקטור (sfidler@nvidia.com) תקציר כאשר תעשיות שונות עוברות למידול עולמות וירטואליים תלת-ממדיים מסיביים, הצורך בכלי יצירת תוכן שניתן להרחיב מבחינת כמות, איכות ומגוון של תוכן תלת-ממדי הופך להיות ברור. בעבודתנו, אנו שואפים לאמן מודלים יצירתיים תלת-ממדיים בעלי ביצועים גבוהים המסנתזים רשתות מצוירות שניתן לצרוך ישירות על ידי מנועי רינדור תלת-ממדיים, ובכך ניתנים לשימוש מיידי ביישומים במורד הזרם. עבודות קודמות על מידול גנרטיבי תלת-ממדי סובלות מחוסר בפרטים גיאומטריים, מוגבלות בטופולוגיית הרשת שהן יכולות לייצר, בדרך כלל אינן תומכות בטקסטורות, או משתמשות במנועי רינדור נוירוניים בתהליך הסינתזה, מה שהופך את השימוש בהן בתוכנות תלת-ממד נפוצות ללא פשוט. בעבודה זו, אנו מציגים את GET3D, מודל enerative שמייצר ישירות רשתות xplicit extured עם טופולוגיה מורכבת, פרטים גיאומטריים עשירים וטקסטורות ברזולוציה גבוהה. אנו מגשרים על הצלחות אחרונות במידול משטחים דיפרנציאלי, רינדור דיפרנציאלי, וכן רשתות יריבות גנרטיביות דו-ממדיות (GANs) כדי לאמן את המודל שלנו מאוספי תמונות דו-ממדיות. GET3D מסוגל לייצר רשתות תלת-ממדיות מצוירות באיכות גבוהה, החל ממכוניות, כיסאות, בעלי חיים, אופנועים ודמויות אנושיות ועד מבנים, ומשיג שיפורים משמעותיים על פני שיטות קודמות. דף הפרויקט שלנו: G E T 3D https://nv-tlabs.github.io/GET3D 1 מבוא תוכן תלת-ממדי מגוון ואיכותי הופך חשוב יותר ויותר לתעשיות רבות, כולל משחקים, רובוטיקה, אדריכלות ופלטפורמות חברתיות. עם זאת, יצירה ידנית של נכסים תלת-ממדיים גוזלת זמן רב ודורשת ידע טכני ספציפי, כמו גם כישורי מידול אמנותיים. אחד האתגרים העיקריים הוא, אם כן, קנה מידה - בעוד שניתן למצוא מודלים תלת-ממדיים בשווקי מודלים תלת-ממדיים כמו Turbosquid [ ] או Sketchfab [ ], יצירת מודלים תלת-ממדיים רבים, נניח, לאכלוס משחק או סרט בקהל של דמויות שנראות שונות, עדיין גוזלת זמן משמעותי של אמנים. 4 3 כדי להקל על תהליך יצירת התוכן ולהפוך אותו לנגיש למגוון רחב של (משתמשים מתחילים), רשתות גנרטיביות תלת-ממדיות שיכולות לייצר נכסים תלת-ממדיים באיכות גבוהה ומגוונת הפכו לאחרונה לתחום מחקר פעיל [ , , , , , , , , , , ]. עם זאת, כדי להיות שימושיים מעשית ליישומים בעולם האמיתי הנוכחיים, מודלים גנרטיביים תלת-ממדיים צריכים באופן אידיאלי למלא את הדרישות הבאות: הם צריכים להיות בעלי יכולת לייצר צורות עם פרטים גיאומטריים וטופולוגיה שרירותית, הפלט צריך להיות רשת מצוירת, שהיא ייצוג עיקרי המשמש חבילות תוכנה גרפיות סטנדרטיות כגון Blender [ ] ו-Maya [ ], ו- אנו צריכים להיות מסוגלים למנף תמונות דו-ממדיות לפיקוח, מכיוון שהן זמינות יותר מצורות תלת-ממדיות מפורשות. 5 14 43 46 53 68 75 60 59 69 23 (א) (ב) 15 1 (ג) עבודות קודמות על מידול גנרטיבי תלת-ממדי התמקדו בתת-קבוצות של הדרישות הנ"ל, אך אף שיטה עד כה לא ממלאת את כולן (טבלה ). לדוגמה, שיטות המייצרות ענני נקודות תלת-ממדיים [ , 68, 75] בדרך כלל אינן מייצרות טקסטורות וצריכות להיות מומרות לרשת בעיבוד משני. 1 5 שיטות המייצרות ווקסלים לעיתים קרובות חסרות פרטים גיאומטריים ואינן מייצרות טקסטורה [ , , , ]. מודלים גנרטיביים המבוססים על שדות נוירוניים [ , ] מתמקדים בחילוץ גיאומטריה אך מתעלמים מטקסטורה. רובם גם דורשים פיקוח תלת-ממדי מפורש. לבסוף, שיטות הפלט ישירות רשתות תלת-ממדיות מצוירות [ , ] בדרך כלל דורשות תבניות צורה מוגדרות מראש ואינן יכולות לייצר צורות עם טופולוגיה מורכבת וג'נוס משתנה. 66 20 27 40 43 14 54 53 לאחרונה, התקדמות מהירה ברינדור נפחי נוירוני [ ] וברשתות יריבות גנרטיביות דו-ממדיות (GANs) [ , , , , ] הובילה לעליית סינתזת תמונות תלת-ממדית-מודעת [ , , , , , ]. עם זאת, קו עבודה זה נועד לסנתז תמונות עקביות ממספר נקודות מבט באמצעות רינדור נוירוני בתהליך הסינתזה ואינו מבטיח שניתן לייצר צורות תלת-ממדיות משמעותיות. בעוד שרשת תלת-ממדית עשויה להיות מושגת מייצוג השדה הנוירוני התת-מודע באמצעות אלגוריתם marching cubes [ ], חילוץ הטקסטורה התואמת אינו משימה פשוטה. 45 34 35 33 29 52 7 57 8 49 51 25 39 בעבודה זו, אנו מציגים גישה חדשנית שמטרתה לטפל בכל הדרישות של מודל גנרטיבי תלת-ממדי שימושי מעשית. באופן ספציפי, אנו מציעים את GET3D, מודל enerative לצורות תלת-ממדיות הפולט ישירות רשתות xplicit extured עם פרטי גיאומטריה וטקסטורה גבוהים וטופולוגיית רשת שרירותית. בלב הגישה שלנו נמצא תהליך יצירה המשתמש בשיטת חילוץ משטח דיפרנציאלית [ ] וטכניקת רינדור דיפרנציאלית [ , ]. הראשונה מאפשרת לנו לבצע אופטימיזציה ישירה ולפלוט רשתות תלת-ממדיות מצוירות עם טופולוגיה שרירותית, בעוד שהאחרונה מאפשרת לנו לאמן את המודל שלנו באמצעות תמונות דו-ממדיות, ובכך למנף דיסקרימינטורים חזקים ובשלים שפותחו לסינתזת תמונות דו-ממדיות. מכיוון שהמודל שלנו מייצר רשתות ישירות ומשתמש במנוע רינדור גרפי (דיפרנציאלי) יעיל ביותר, אנו יכולים להרחיב את המודל שלנו בקלות כדי לאמן אותו עם G E T 3D מפורשת 60 47 37 רזולוציית תמונה גבוהה עד 1024 × 1024, מה שמאפשר לנו ללמוד פרטי גיאומטריה וטקסטורה באיכות גבוהה. אנו מפגינים ביצועים מתקדמים לייצור צורות תלת-ממדיות בלתי מותנות על קטגוריות מרובות עם גיאומטריה מורכבת מ-ShapeNet [ ], Turbosquid [ ] ו-Renderpeople [ ], כגון כיסאות, אופנועים, מכוניות, דמויות אנושיות ומבנים, ומשיגים שיפורים משמעותיים על פני שיטות קודמות. עם רשת מפורשת כייצוג פלט, GET3D גמיש מאוד וניתן להתאמה בקלות למשימות אחרות, כולל: למידה לייצר חומריות מפורקת ואפקטי תאורה תלויי-מבט באמצעות רינדור דיפרנציאלי מתקדם [ ], ללא פיקוח, ייצור צורות תלת-ממדיות מונחה-טקסט באמצעות הטמעת CLIP [ ]. 9 4 2 (א) 12 (ב) 56 2 עבודה קשורה אנו סוקרים התקדמויות אחרונות במודלים גנרטיביים תלת-ממדיים עבור גיאומטריה ומראה, כמו גם סינתזת תמונות גנרטיבית תלת-ממדית-מודעת. בשנים האחרונות, מודלים גנרטיביים דו-ממדיים השיגו איכות פוטו-ריאליסטית בסינתזת תמונות ברזולוציה גבוהה [ , , , , , , ]. התקדמות זו עוררה השראה גם למחקר ביצירת תוכן תלת-ממדי. גישות מוקדמות נועדו להרחיב ישירות את מחוללי ה-CNN הדו-ממדיים לרשתות ווקסלים תלת-ממדיות [ , , , , ], אך טביעת הרגל הזיכרון הגבוהה והמורכבות החישובית של קונבולוציות תלת-ממדיות מעכבות את תהליך היצירה ברזולוציה גבוהה. לחלופין, עבודות אחרות חקרו ייצוגי ענני נקודות [ , , , ], ייצוגים סמויים [ , ], או ייצוגי אוקטרי [ ]. עם זאת, עבודות אלו מתמקדות בעיקר ביצירת גיאומטריה ומתעלמות ממראה. ייצוגי הפלט שלהן גם צריכים לעבור עיבוד משני כדי להפוך אותם לתואמים למנועי גרפיקה סטנדרטיים. מודלים גנרטיביים תלת-ממדיים 34 35 33 52 29 19 16 66 20 27 40 62 5 68 75 46 43 14 30 דומים יותר לעבודתנו, Textured3DGAN [ , ] ו-DIBR [ ] מייצרים רשתות תלת-ממדיות מצוירות, אך הם מנסחים את היצירה כעיוות של רשת תבנית, מה שמונע מהם לייצר טופולוגיה מורכבת או צורות עם ג'נוס משתנה, מה שהשיטה שלנו יכולה לעשות. PolyGen [ ] ו-SurfGen [ ] יכולים לייצר רשתות עם טופולוגיה שרירותית, אך אינם מסנתזים טקסטורות. 54 53 11 48 41 בהשראת ההצלחה של רינדור נפחי נוירוני [ ] וייצוגים סמויים [ , ], עבודה אחרונה החלה לטפל בבעיית סינתזת תמונות תלת-ממדית-מודעת [ , , , , , , , , , ]. עם זאת, רשתות רינדור נפחי נוירוניות הן בדרך כלל איטיות לשאילתה, מה שמוביל לזמני אימון ארוכים [ , ], ומייצרות תמונות ברזולוציה מוגבלת. GIRAFFE [ ] ו-StyleNerf [ ] משפרים את יעילות האימון והרינדור על ידי ביצוע רינדור נוירוני ברזולוציה נמוכה ואז הגדלת התוצאות באמצעות CNN דו-ממדי. עם זאת, שיפור הביצועים בא על חשבון עקביות מופחתת של נקודות מבט מרובות. באמצעות דיסקרימינטור כפול, EG3D [ ] יכול להקל חלקית על בעיה זו. עם זאת, חילוץ משטח מצויר משיטות המבוססות על רינדור נוירוני הוא משימה לא פשוטה. לעומת זאת, GET3D פולט ישירות רשתות תלת-ממדיות מצוירות שניתן להשתמש בהן בקלות במנועי גרפיקה סטנדרטיים. סינתזת תמונות גנרטיבית תלת-ממדית-מודעת 45 43 14 7 57 49 26 25 76 8 51 58 67 7 57 49 25 8 3 שיטה אנו מציגים כעת את מסגרת GET3D שלנו לסינתזת צורות תלת-ממדיות מצוירות. תהליך היצירה שלנו מחולק לשני חלקים: ענף גיאומטריה, אשר מוציא באופן דיפרנציאלי רשת משטח בעלת טופולוגיה שרירותית, וענף טקסטורה המייצר שדה טקסטורה שניתן לשאול בנקודות המשטח כדי לייצר צבעים. האחרון יכול להיות מורחב למאפייני משטח אחרים כגון, למשל, חומרים (סעיף ). במהלך האימון, נעשה שימוש במערכת רסטריזציה דיפרנציאלית יעילה כדי לרנדר את הרשת המצוירת לתוך תמונות דו-ממדיות ברזולוציה גבוהה. כל התהליך הוא דיפרנציאלי, מה שמאפשר אימון אדוורסריאלי מתמונות (עם מסכות המציינות אובייקט עניין) על ידי הפצת הדרגיינטים מהדיסקרימינטור הדו-ממדי לשני ענפי המחולל. המודל שלנו מומחשם באיור . להלן, נציג תחילה את המחולל התלת-ממדי שלנו בסעיף , לפני שנמשיך לרינדור דיפרנציאלי ולפונקציות ההפסד בסעיף . 4.3.1 2 3.1 3.2 3.1 מחולל תלת-ממדי של רשתות מצוירות אנו שואפים ללמוד מחולל תלת-ממדי = ( ) כדי למפות דגימה מהתפלגות גאוסית M, E G z ∈ N (0*,* ) לרשת עם טקסטורה . z I M E מכיוון שאותה גיאומטריה יכולה להיות בעלת טקסטורות שונות, ואותה טקסטורה יכולה להיות מיושמת על גיאומטריות שונות, אנו דוגמים שני וקטורי קלט אקראיים 1 ∈ R512 ו- 2 ∈ R512. בעקבות StyleGAN [ , , ], אנו משתמשים ברשתות מיפוי לא לינאריות geo ו- tex כדי למפות 1 ו- 2 לווקטורי לטנט משווקים 1 = geo( 1) ו- 2 = tex( 2) המשמשים עוד יותר לייצור השולטים ביצירת צורות תלת-ממדיות וטקסטורה, בהתאמה. אנו מציגים באופן רשמי את המחולל עבור גיאומטריה בסעיף. והמחולל טקסטורה בסעיף. . z z 34 35 33 f f z z w f z w f z סגנונות 3.1.1 3.1.2 3.1.1 מחולל גיאומטריה אנו מעצבים את מחולל הגיאומטריה שלנו כדי לשלב את DMTet [ ], ייצוג משטח דיפרנציאלי שהוצע לאחרונה. DMTet מייצג גיאומטריה כשדה מרחק סימן (SDF) המוגדר על רשת טטראדרלית ניתנת לעיוות [ , ], שממנו ניתן לשחזר את המשטח באופן דיפרנציאלי באמצעות marching tetrahedra [ ]. עיוות הרשת על ידי הזזת הקודקודים שלה מוביל לניצול טוב יותר של הרזולוציה שלה. על ידי אימוץ DMTet לחילוץ משטחים, אנו יכולים לייצר רשתות מפורשות עם טופולוגיה וג'נוס שרירותיים. אנו מספקים להלן סיכום קצר של DMTet ומפנים את הקורא למאמר המקורי לפרטים נוספים. 60 22 24 17 יהי ( ) ייצוג של כל המרחב התלת-ממדי בו האובייקט נמצא, כאשר הם הקודקודים ברשת הטטראדרלית . כל טטראדר ∈ מוגדר באמצעות ארבעה קודקודים { }, כאשר ∈ {1*, . . . , K*}, כאשר הוא המספר הכולל של טטראדרים, ו- ∈ ∈ R3. בנוסף ל קואורדינטות התלת-ממדיות שלו, כל קודקוד מכיל את ערך ה-SDF ∈ R ואת העיוות ∆ ∈ R3 של הקודקוד מהקואורדינטה הקנונית הראשונית שלו. ייצוג זה מאפשר שחזור של הרשת המפורשת באמצעות marching tetrahedra דיפרנציאלי [ ], שבו ערכי SDF במרחב רציף מחושבים על ידי אינטרפולציה בריצנטרית של ערכם על הקודקודים המעוותים ′ = + ∆ . VT , T VT T Tk T v ak , v bk , v ck , v dk k K v ik VT , v ik i v i si v i 60 si v v i v i אנו ממפים 1 ∈ R512 לערכי SDF ועיוותים בכל קודקוד באמצעות סדרת שכבות קונבולוציה תלת-ממדיות מותנות ושכבות מחוברות במלואן. באופן ספציפי, אנו משתמשים תחילה בשכבות קונבולוציה תלת-ממדיות כדי לייצר נפח תכונות המותנה ב- 1. לאחר מכן אנו שואלים את התכונה בכל קודקוד ∈ באמצעות אינטרפולציה טריליניארית ומזינים אותה ל-MLPs הפולטים את ערך ה-SDF ואת העיוות ∆ . במקרים בהם נדרש מידול ברזולוציה גבוהה (למשל, אופנוע עם מבנים דקים בגלגלים), אנו משתמשים בנוסף בחלוקת נפח בהתאם ל-[ ]. ארכיטקטורת הרשת w v i w v i VT si v i 60 לאחר קבלת ו- ∆ עבור כל הקודקודים, אנו משתמשים באלגוריתם marching tetrahedra דיפרנציאלי לחילוץ הרשת המפורשת. Marching tetrahedra קובע את טופולוגיית המשטח בתוך כל טטראדר בהתבסס על סימני . באופן ספציפי, פאה של רשת מחולצת כאשר sign( ) /= sign( ), כאשר מציינים את האינדקסים של קודקודים בקצה של טטראדר, והקודקודים של אותה פאה נקבעים על ידי אינטרפולציה לינארית כ- mi,j = v 0 i sj−v 0 j si sj−si . יש לציין שהמשוואה הנ"ל מוערכת רק כאשר si 6= sj , ולכן היא דיפרנציאלית, והגרדיאנט מ- mi,j יכול להיות מועבר לאחור לערכי ה-SDF si ולעיוותים ∆vi . עם ייצוג זה, ניתן לייצר בקלות צורות עם טופולוגיה שרירותית על ידי חיזוי סימנים שונים של si . חילוץ רשת דיפרנציאלי si v i si si sj i, j m i,j 3.1.2 מחולל טקסטורה יצירה ישירה של מפת טקסטורה עקבית עם הרשת הפלט אינה פשוטה, מכיוון שהצורה שנוצרה יכולה להיות בעלת ג'נוס וטופולוגיה שרירותיים. אנו, אם כן, מתארים פרמטרית את הטקסטורה כשדה טקסטורה [ ]. 50 באופן ספציפי, אנו ממדלים את שדה הטקסטורה באמצעות פונקציה הממפה את המיקום התלת-ממדי של נקודת משטח ∈ R3, מותנית ב- 2, לצבע ה-RGB ∈ R3 במיקום זה. מכיוון ששדה הטקסטורה תלוי בגיאומטריה, אנו מתנים בנוסף מיפוי זה בקוד הלטיני של הגיאומטריה 1, כך ש- = ( *,* 1 ⊕ 2), כאשר ⊕ מציין שרשור. ft p w c w c ft p w w אנו מייצגים את שדה הטקסטורה שלנו באמצעות ייצוג טרי-פליין, שהוא יעיל ובעל יכולת ביטוי גבוהה בשחזור אובייקטים תלת-ממדיים [ ] ויצירת תמונות תלת-ממדיות-מודעות [ ] . באופן ספציפי, אנו עוקבים אחר [ , ] ומשתמשים ברשת נוירונית קונבולוציונית דו-ממדית מותנית כדי למפות את הקוד הלטיני 1 ⊕ 2 לשלושה מישורים של תכונות אורתוגונליים מיושרים לפי ציר בגודל × × ( × 3), כאשר = 256 מציין את הרזולוציה המרחבית ו- = 32 את מספר הערוצים. ארכיטקטורת הרשת 55 8 8 35 w w N N C N C בהינתן מישורי התכונות, ניתן לשחזר את וקטור התכונות f t ∈ R 32 של נקודת משטח p כ- f t = P e ρ(πe(p)), כאשר πe(p) הוא ההיטל של הנקודה p על מישור התכונות e ו- ρ(·) מציין אינטרפולציה ביליניארית של התכונות. לאחר מכן משתמשים בשכבת חיבור נוספת כדי למפות את וקטור התכונות המצטבר f t לצבע ה-RGB c. יש לציין, בניגוד לעבודות אחרות על סינתזת תמונות תלת-ממדית-מודעת [8, 25, 7, 57] שמשתמשות גם בייצוג שדה נוירוני, אנו צריכים רק לדגום את שדה הטקסטורה במיקומים של נקודות המשטח (בניגוד לדגימות צפופות לאורך קרן). זה מפחית משמעותית את המורכבות החישובית לרינדור תמונות ברזולוציה גבוהה ומבטיח יצירת תמונות עקביות ממספר נקודות מבט לפי בנייה. 3.2 רינדור דיפרנציאלי ואימון על מנת לפקח על המודל שלנו במהלך האימון, אנו שואבים השראה מ-Nvdiffrec [ ] המבצע שחזור אובייקטים תלת-ממדיים מרובי נקודות מבט תוך שימוש במנוע רינדור דיפרנציאלי. באופן ספציפי, אנו מרנדרים את הרשת התלת-ממדית שחולצה ואת שדה הטקסטורה לתמונות דו-ממדיות באמצעות מנוע רינדור דיפרנציאלי [ ], ומפקחים על הרשת שלנו באמצעות דיסקרימינטור דו-ממדי, שמנסה להבחין בין תמונה של אובייקט אמיתי לבין תמונה שרונדרה מהאובייקט שנוצר. 47 37 אנו מניחים שהתפלגות המצלמות C ששימשה לרכישת התמונות במאגר הנתונים ידועה. כדי לרנדר את הצורות שנוצרו, אנו דוגמים באופן אקראי מצלמה מ-C, ומשתמשים במערכת רסטריזציה דיפרנציאלית מותאמת יעילות Nvdiffrast [ ] כדי לרנדר את הרשת התלת-ממדית לצורת צללית דו-ממדית, כמו גם תמונה שבה כל פיקסל מכיל את הקואורדינטות של נקודת התלת-ממד התואמת רינדור דיפרנציאלי c 37 המשטח. קואורדינטות אלו משמשות נוספות לשאילת שדה הטקסטורה כדי לקבל את ערכי ה-RGB. מכיוון שאנו פועלים ישירות על הרשת שחולצה, אנו יכולים לרנדר תמונות ברזולוציה גבוהה ביעילות רבה, מה שמאפשר לאמן את המודל שלנו עם רזולוציית תמונה גבוהה עד 1024×1024. אנו מאמנים את המודל שלנו באמצעות מטרה אדוורסרית. אנו מאמצים את ארכיטקטורת הדיסקרימינטור מ-StyleGAN [ ], ומשתמשים באותה מטרה GAN שאינה רוויה עם רגולריזציית R1 [ ]. מצאנו אמפירית ששימוש בשני דיסקרימינטורים נפרדים, אחד לתמונות RGB ואחד לציללות, מניב תוצאות טובות יותר מדיסקרימינטור יחיד הפועל על שניהם. יהי הדיסקרימינטור, כאשר יכול להיות תמונת RGB או צללית. המטרה האדוורסרית תוגדר אז כדלקמן: דיסקרימינטור & מטרה 34 42 Dx x כאשר ( ) מוגדר כ- ( ) = − log(1 +exp(− )), היא התפלגות התמונות האמיתיות, מציין רינדור, ו- הוא היפר-פרמטר. מכיוון ש- דיפרנציאלי, ניתן להעביר את הדרגיינטים מתמונות דו-ממדיות למחוללי התלת-ממד שלנו. g u g u u px R λ R כדי להסיר פאות פנימיות צפות שאינן נראות באף אחד מהנופים, אנו מוסיפים רגולריזציה למחולל הגיאומטריה עם הפסד חתך-אנטרופיה המוגדר בין ערכי ה-SDF של הקודקודים הסמוכים [ ]: רגולריזציה 47 כאשר מציין הפסד חתך-אנטרופיה בינארי ו- מציין את פונקציית הסיגמואיד. הסכום במשוואה מוגדר על קבוצת הקצוות הייחודיים S ברשת הטטראדרלית, עבורם sign( ) /= sign( ). H σ 2 e si sj פונקציית ההפסד הכוללת מוגדרת אז כ: כאשר הוא היפר-פרמטר השולט ברמת הרגולריזציה. µ 4 ניסויים אנו מבצעים ניסויים מקיפים להערכת המודל שלנו. ראשית, אנו משווים את איכות הרשתות התלת-ממדיות המצוירות שנוצרו על ידי GET3D לשיטות קיימות תוך שימוש במאגרי הנתונים ShapeNet [ ] ו-Turbosquid [ ]. לאחר מכן, אנו מנתחים את בחירות התכנון שלנו בסעיף . לבסוף, אנו מפגינים את הגמישות של GET3D על ידי התאמתו ליישומים במורד הזרם בסעיף . תוצאות ניסויים נוספות ופרטי יישום מסופקים בנספח. 9 4 4.2 4.3 4.1 ניסויים על מאגרי נתונים סינתטיים להערכה על ShapeNet [ ], אנו משתמשים בשלוש קטגוריות עם גיאומטריה מורכבת - , , ו- , המכילות 7497, 6778, ו-337 צורות, בהתאמה. אנו מחלקים באופן אקראי כל קטגוריה לאימון (70%), אימות (10%), ובדיקה (20%), ומסירים בנוסף ממערך הבדיקה צורות שיש להן כפילויות במערך האימון. כדי לרנדר את נתוני האימון, אנו דוגמים באופן אקראי פוזציות מצלמה מההמיספירה העליונה של כל צורה. עבור קטגוריות ו- , אנו משתמשים ב-24 נקודות מבט אקראיות, בעוד שעבור אנו משתמשים ב-100 נקודות מבט בשל מספר הצורות הקטן יותר. מכיוון שמודלים ב-ShapeNet כוללים רק טקסטורות פשוטות, אנו גם מעריכים את GET3D על מאגר נתונים של (442 צורות) שנאסף מ-TurboSquid [ ], שם הטקסטורות מפורטות יותר ואנו מחלקים אותו לאימון, אימות ובדיקה כפי שהוגדר לעיל. לבסוף, כדי להפגין את הרבגוניות של GET3D, אנו מספקים גם תוצאות איכותיות על מאגר הנתונים שנאסף מ-Turbosquid (563 צורות), ומאגר הנתונים מ-Renderpeople [ ] (500 צורות). אנו מאמנים מודל נפרד על כל קטגוריה. מאגרי נתונים 9 מכונית כיסא אופנוע מכונית כיסא אופנוע בעלי חיים 4 בית גוף אנושי 2 אנו משווים את GET3D לשתי קבוצות של עבודות: מודלים גנרטיביים תלת-ממדיים המסתמכים על פיקוח תלת-ממדי: PointFlow [ ] ו-OccNet [ ]. יש לציין כי שיטות אלו מייצרות רק גיאומטריה ללא טקסטורה. שיטות יצירת תמונות תלת-ממדיות-מודעות: GRAF [ ], PiGAN [ ], ו-EG3D [ ]. בסיסים 1) 68 43 2) 57 7 8 כדי להעריך את איכות הסינתזה שלנו, אנו שוקלים הן את הגיאומטריה והן את הטקסטורה של הצורות שנוצרו. עבור גיאומטריה, אנו מאמצים מדדים מ-[ ] ומשתמשים הן במרחק צ'אמפר (CD) והן במרחק שדה אור (LFD) [ ] כדי לחשב את ציון הכיסוי ואת מרחק ההתאמה המינימלי. עבור OccNet [ ], GRAF [ ], PiGAN [ ] ו-EG3D [ ], אנו משתמשים באלגוריתם marching cubes כדי לחלץ את הגיאומטריה התת-מודעת. עבור PointFlow [ ], אנו משתמשים בשחזור משטח פואסון כדי להמיר ענן נקודות לרשת בעת הערכת LFD. כדי להעריך את איכות הטקסטורה, אנו מאמצים את מדד ה-FID [ ] המשמש בדרך כלל להערכת סינתזת תמונות. באופן ספציפי, עבור כל קטגוריה, אנו מרנדרים את צורות הבדיקה לתמונות דו-ממדיות, וגם מרנדרים את הצורות התלת-ממדיות שנוצרו מכל מודל ל-50k תמונות תוך שימוש באותה התפלגות מצלמות. אנו אז מחשבים FID על שתי קבוצות התמונות. מכיוון שהבסיסים מסינתזת תמונות תלת-ממדית-מודעת [ , , ] אינם מוציאים רשתות מצוירות ישירות, אנו מחשבים ציון FID בשתי דרכים: ( ) אנו משתמשים ברינדור הנוירוני הנפחי שלהם כדי לקבל תמונות דו-ממדיות, שאנו מכנים FID-Ori, ו- ( ) אנו מחלצים את הרשת מהייצוג הנוירוני שלהם באמצעות marching cubes, מרנדרים אותה, ואז משתמשים במיקום התלת-ממדי של כל פיקסל כדי לשאול את הרשת כדי לקבל את ערכי ה-RGB. אנו מכנים ציון זה, המודע יותר לצורה התלת-ממדית בפועל, FID-3D. פרטים נוספים על מדדי ההערכה זמינים בנספח . מדדים 5 10 43 57 7 8 68 28 57 7 8 i ii B.3 אנו מספקים תוצאות כמותיות בטבלה. ודוגמאות איכותיות באיור. ואיור. . תוצאות נוספות זמינות בסרטון המשלי. בהשוואה ל-OccNet [ ] המשתמש בפיקוח תלת-ממדי במהלך האימון, GET3D משיג ביצועים טובים יותר מבחינת מגוון (COV) ואיכות (MMD), והצורות שנוצרו שלנו מכילות יותר פרטים גיאומטריים. תוצאות ניסויים 2 3 4 43 PointFlow [ ] עולה על GET3D מבחינת MMD על CD, בעוד GET3D טוב יותר ב-MMD על LFG. אנו משערים שזה נובע מכך ש-PointFlow מבצע אופטימיזציה ישירה על מיקומי נקודות, מה שמעדיף CD. GET3D גם משיג תוצאות חיוביות בהשוואה לשיטות סינתזת תמונות תלת-ממדית-מודעות, אנו משיגים שיפורים משמעותיים על פני PiGAN [ ] ו-GRAF [ ] מבחינת כל המדדים בכל מאגרי הנתונים. הצורות שנוצרו שלנו מכילות גם גיאומטריה וטקסטורה מפורטות יותר. בהשוואה לעבודה האחרונה EG3D [ ]. אנו משיגים ביצועים דומים ביצירת תמונות דו-ממדיות (FID-ori), בעוד שאנו משפרים משמעותית בסינתזת צורות תלת-ממדיות מבחינת FID-3D, מה שמדגים את יעילות המודל שלנו בלימוד גיאומטריה וטקסטורה תלת-ממדית בפועל. 68 7 57 8 מכיוון שאנו מסנתזים רשתות מצוירות, אנו יכולים לייצא את הצורות שלנו ל-Blender [ ]. אנו מציגים תוצאות רינדור באיור. ו- . GET3D מסוגל לייצר צורות עם גיאומטריה וטופולוגיה מגוונות ואיכותיות, מבנים דקים מאוד (אופנועים), כמו גם טקסטורות מורכבות על מכוניות, בעלי חיים ובתים. 1 1 5 GET3D גם מאפשר אינטרפולציית צורות, שיכולה להיות שימושית לעריכה. אנו חוקרים את מרחב הלטינט של GET3D באיור , שם אנו מבצעים אינטרפולציה של קודי הלטינט כדי לייצר כל צורה משמאל לימין. GET3D מסוגל לייצר מעבר חלק ומשמעותי מצורה אחת לאחרת באופן נאמן. אנו חוקרים עוד את מרחב הלטינט המקומי על ידי הפרעה קלה של קודי הלטינט לכיוון אקראי. GET3D מייצר צורות חדשות ומגוונות בעת הפעלת עריכה מקומית במרחב הלטינט (איור ). אינטרפולציית צורות 6 7 4.2 אבלאציות אנו מבצעים אבלאציה של המודל שלנו בשתי דרכים: עם וללא חלוקת נפח, אימון תוך שימוש ברזולוציות תמונה שונות. אבלאציות נוספות מסופקות בנספח . 1) 2) C.3 כפי שמוצג בטבלה. , חלוקת נפח משפרת משמעותית את הביצועים על מחלקות עם מבנים דקים (למשל, אופנועים), מבלי להשיג יתרונות במחלקות אחרות. אנו משערים שרזולוציית הטטראדר הראשונית מספיקה כבר כדי ללכוד את הגיאומטריה המפורטת על כיסאות ומכוניות, ולכן החלוקה אינה יכולה לספק שיפורים נוספים. אבלאציה של חלוקת נפח 2 אבלאציה של רזולוציות תמונה שונות אנו מבצעים אבלאציה של השפעת רזולוציית תמונת האימון בטבלה. . כצפוי, רזולוציית תמונה מוגברת משפרת את הביצועים מבחינת FID ואיכות הצורה, מכיוון שהרשת יכולה לראות פרטים נוספים, שלעיתים קרובות אינם זמינים בתמונות ברזולוציה נמוכה. זה מאשש את חשיבות האימון ברזולוציית תמונה גבוהה יותר, שלעיתים קרובות קשה לנצל עבור שיטות מבוססות סמויות. 3 4.3 יישומים 4.3.1 יצירת חומרים לאפקטי תאורה תלויי-מבט ניתן להרחיב את GET3D בקלות גם לייצור חומרי משטח הניתנים לשימוש ישיר במנועי גרפיקה מודרניים. באופן ספציפי, אנו עוקבים אחר ה-Disney BRDF הנפוץ [ , ] ומתארים את החומרים במונחים של צבע בסיס (R3), מתכתיות (R), ותכונות חספוס (R). כתוצאה מכך, אנו משנים את השימוש במחולל הטקסטורה שלנו כדי לפלוט כעת שדה החזרתיות בן 5 ערוצים (במקום RGB בלבד). כדי להתאים לרינדור דיפרנציאלי של חומרים, אנו מאמצים צינור רינדור דחוי יעיל מבוסס Gaussian כדורי (SG) [ ]. באופן ספציפי, אנו מבצעים רסטריזציה של שדה ההחזרתיות ל-G-buffer, ודוגמים באופן אקראי תמונת HDR מסט של פנורמות HDR מהעולם האמיתי Slight = { } , כאשר ∈ R32×7 מתקבל על ידי התאמת 32 אונות SG לכל פנורמה. מנוע הרינדור SG [ ] משתמש אז במצלמה כדי לרנדר תמונת RGB עם אפקטי תאורה תלויי-מבט, שאנו מזינים לדיסקרימינטור במהלך האימון. יש לציין ש-GET3D אינו דורש פיקוח על חומרים במהלך האימון ולומד לייצר חומרים מפורקים באופן בלתי מפוקח. 6 32 12 LSG K LSG 12 c אנו מספקים תוצאות איכותיות של חומרי משטח שנוצרו באיור . למרות היותו בלתי מפוקח, GET3D מגלה פירוק חומרים מעניין, למשל, החלונות מתואמים כראוי עם ערך חספוס קטן יותר כדי להיות מבריקים יותר מגוף המכונית, וגוף המכונית מזוהה כדיאלקטרי יותר בעוד שהחלון מתכתי יותר. חומרים שנוצרו מאפשרים לנו להפיק תוצאות ריליטינג ריאליסטיות, שיכולות לקחת בחשבון אפקטים ספקולריים מורכבים בתנאי תאורה שונים. 8 4.3.2 סינתזת תלת-ממד מונחית-טקסט בדומה ל-GANs תמונות, GET3D תומך גם בסינתזת תוכן תלת-ממדי מונחה-טקסט על ידי כוונון עדין של מודל שאומן מראש בהנחיית CLIP [ ]. יש לציין שהתוצאה הסופית של הסינתזה שלנו היא רשת תלת-ממדית מצוירת. לשם כך, אנו עוקבים אחר עיצוב המחולל הכפול מ-styleGAN-NADA [ ], שבו נעשה שימוש בהעתק שניתן לאמן ובהעתק קבוע של המחולל שאומן מראש. במהלך האופטימיזציה, ו- מרנדרים תמונות מ-16 נקודות מבט אקראיות. בהינתן שאילתת טקסט, אנו דוגמים 500 זוגות של וקטורי רעש 1 ו- 2. עבור כל דגימה, אנו מבצעים אופטימיזציה של הפרמטרים של כדי למזער את הפסד CLIP הכיווני [ ] (תוויות הטקסט המקור הן “מכונית”, “בעל חיים” ו”בית” עבור הקטגוריות המתאימות), ובוחרים את הדגימות עם ההפסד המינימלי. כדי להאיץ תהליך זה, אנו מריצים תחילה מספר קטן של שלבי אופטימיזציה עבור 500 הדגימות, ואז בוחרים את 50 הדגימות המובילות עם ההפסדים הנמוכים ביותר, ומריצים את האופטימיזציה למשך 300 צעדים. התוצאות והשוואה לשיטת סטיילינג רשתות מונחית-טקסט SOTA, Text2Mesh [ ], מסופקות באיור . יש לציין, [ ] דורש רשת של הצורה כקלט לשיטה. אנו מספקים את הרשתות שנוצרו שלנו מהמחולל הקבוע כרשתות קלט אליה. מכיוון שהוא דורש קודקודי רשת להיות צפופים כדי לסנתז פרטי משטח עם התפשטויות קודקודים, אנו מחלקים בנוסף את הרשתות הקלט באמצעות חלוקת נקודת אמצע כדי להבטיח שלכל רשת יש בממוצע 50k-150k קודקודים. 56 21 Gt Gf Gt Gf z z Gt 21 44 9 44 5 מסקנה הצגנו את GET3D, מודל גנרטיבי תלת-ממדי חדשני המסוגל לסנתז רשתות תלת-ממדיות מצוירות באיכות גבוהה עם טופולוגיה שרירותית. GET3D מאומן תוך שימוש בתמונות דו-ממדיות בלבד לפיקוח. הדגמנו ניסיונית שיפורים משמעותיים ביצירת צורות תלת-ממדיות על פני שיטות מתקדמות קודמות על מספר קטגוריות. אנו מקווים שעבודה זו מקרבת אותנו צעד אחד למימוש יצירת תוכן תלת-ממדי באמצעות AI. בעוד GET3D מהווה צעד משמעותי לקראת מודל גנרטיבי תלת-ממדי שימושי מעשית של צורות תלת-ממדיות מצוירות, עדיין יש לו כמה מגבלות. בפרט, אנו עדיין מסתמכים על צלליות דו-ממדיות וכן על הידע של התפלגות המצלמות במהלך האימון. כתוצאה מכך, GET3D הוערך כעת רק על נתונים סינתטיים. הרחבה מבטיחה עשויה להשתמש בהתקדמות בפילוח מופעים ואומדן פוזיציית מצלמה כדי להקל על בעיה זו ולהרחיב את GET3D לנתונים מהעולם האמיתי. GET3D גם מאומן לכל קטגוריה; הרחבתו למספר קטגוריות בעתיד, עשוי לעזור לנו לייצג טוב יותר את הגיוון בין-קטגורי. מגבלות הצגנו מודל גנרטיבי תלת-ממדי חדשני המייצר רשתות תלת-ממדיות מצוירות, הניתנות לייבוא בקלות למנועי גרפיקה קיימים. המודל שלנו מסוגל לייצר צורות עם טופולוגיה שרירותית, טקסטורות באיכות גבוהה ופרטים גיאומטריים עשירים, ובכך סולל את הדרך לדמוקרטיזציה של השפעה רחבה יותר כלי AI ליצירת תוכן תלת-ממדי. כמו כל מודלי למידת מכונה, GET3D נוטה גם להטיות המוצגות בנתוני האימון. לכן, יש לנקוט משנה זהירות בעת התמודדות עם יישומים רגישים, כגון יצירת גופים אנושיים תלת-ממדיים, מכיוון ש-GET3D אינו מותאם ליישומים אלה. איננו ממליצים להשתמש ב-GET3D אם פרטיות או זיהוי שגוי עלולים להוביל לשימוש לרעה פוטנציאלי או ליישומים מזיקים אחרים. במקום זאת, אנו מעודדים מתרגלים לבחון בקפידה ולהסיר הטיות ממאגרי הנתונים לפני אימון המודל שלנו כדי להציג התפלגות הוגנת ורחבה של גווני עור, גזעים או זהויות מגדריות אפשריות. 6 גילוי מימון עבודה זו מומנה על ידי NVIDIA. ג'ון גאו, טיאנצ'אנג שן, זיאן וואנג ו-Wenzheng Chen מכירים בהכנסה נוספת בצורת מלגות סטודנטים מאוניברסיטת טורונטו ומכון וקטור, שאינם תומכים ישירות בעבודה זו. הפניות [1] Autodesk Maya, . נגשה: 2022-05-19. https://www.autodesk.com/products/maya/overview [2] Renderpeople, . נגישה: 2022-05-19. http://https://renderpeople.com/ [3] Sketchfab, . נגשה: 2022-05-19. https://sketchfab.com/ [4] Turbosquid by Shutterstock, . נגשה: 2022-05-19. https://www.turbosquid.com/ [5] Panos Achlioptas, Olga Diamanti, Ioannis Mitliagkas, and Leonidas Guibas. Learning representations and generative models for 3d point clouds. In , pages 40–49. PMLR, 2018. International conference on machine learning [6] Brent Burley and Walt Disney Animation Studios. Physically-based shading at disney. In , volume 2012, pages 1–7. vol. 2012, 2012. ACM SIGGRAPH [7] Eric Chan, Marco Monteiro, Petr Kellnhofer, Jiajun Wu, and Gordon Wetzstein. pi-gan: Periodic implicit generative adversarial networks for 3d-aware image synthesis. In , 2021. Proc. CVPR [8] Eric R Chan, Connor Z Lin, Matthew A Chan, Koki Nagano, Boxiao Pan, Shalini De Mello, Orazio Gallo, Leonidas J Guibas, Jonathan Tremblay, Sameh Khamis, et al. Efficient geometry-aware 3d generative adversarial networks. In Proceedings of the IEEE/CVF Conference on