ผู้เขียน: Jun Gao, NVIDIA, University of Toronto, Vector Institute (jung@nvidia.com) Tianchang Shen, NVIDIA, University of Toronto, Vector Institute (frshen@nvidia.com) Zian Wang, NVIDIA, University of Toronto, Vector Institute (zianw@nvidia.com) Wenzheng Chen, NVIDIA, University of Toronto, Vector Institute (wenzchen@nvidia.com) Kangxue Yin, NVIDIA (kangxuey@nvidia.com) Daiqing Li, NVIDIA (daiqingl@nvidia.com) Or Litany, NVIDIA (olitany@nvidia.com) Zan Gojcic, NVIDIA (zgojcic@nvidia.com) Sanja Fidler, NVIDIA, University of Toronto, Vector Institute (sfidler@nvidia.com) บทคัดย่อ เนื่องจากหลายอุตสาหกรรมกำลังมุ่งสู่การสร้างแบบจำลองโลกเสมือน 3 มิติขนาดมหึมา ความต้องการเครื่องมือสร้างเนื้อหาที่สามารถปรับขนาดได้ในแง่ของปริมาณ คุณภาพ และความหลากหลายของเนื้อหา 3 มิติ จึงเป็นที่ประจักษ์ ในงานของเรา เรามุ่งมั่นที่จะฝึกโมเดลสร้างสรรค์ 3 มิติที่มีประสิทธิภาพ ซึ่งสังเคราะห์ตาข่ายที่มีพื้นผิวซึ่งสามารถนำไปใช้ได้โดยตรงโดยเอนจิ้นการเรนเดอร์ 3 มิติ จึงพร้อมใช้งานทันทีในแอปพลิเคชันดาวน์สตรีม งานก่อนหน้านี้เกี่ยวกับโมเดลสร้างสรรค์ 3 มิติ ขาดรายละเอียดทางเรขาคณิต มีข้อจำกัดในโทโพโลยีของตาข่ายที่สามารถผลิตได้ โดยทั่วไปไม่รองรับพื้นผิว หรือใช้เอนจิ้นการเรนเดอร์แบบประสาทในการสังเคราะห์ ซึ่งทำให้การใช้งานในซอฟต์แวร์ 3 มิติทั่วไปไม่ธรรมดา ในงานนี้ เราขอแนะนำ GET3D ซึ่งเป็นโมเดลสร้างสรรค์ ( enerative model) ที่สร้างตาข่าย 3 มิติที่มีพื้นผิว ( xplicit extured meshes) โดยตรงด้วยโทโพโลยีที่ซับซ้อน รายละเอียดทางเรขาคณิตที่สมบูรณ์ และพื้นผิวความเที่ยงตรงสูง เราเชื่อมโยงความสำเร็จล่าสุดในการสร้างแบบจำลองพื้นผิวแบบแยกส่วน การเรนเดอร์แบบแยกส่วน และ Generative Adversarial Networks แบบ 2 มิติ เพื่อฝึกโมเดลของเราจากคอลเล็กชันภาพ 2 มิติ GET3D สามารถสร้างตาข่าย 3 มิติที่มีพื้นผิวคุณภาพสูง ตั้งแต่รถยนต์ เก้าอี้ สัตว์ มอเตอร์ไซค์ และตัวละครมนุษย์ ไปจนถึงอาคาร ซึ่งให้ผลลัพธ์ที่ดีกว่าวิธีการก่อนหน้านี้อย่างมาก หน้าโครงการของเรา: G E T 3D https://nv-tlabs.github.io/GET3D 1 บทนำ เนื้อหา 3 มิติที่หลากหลายและมีคุณภาพสูงมีความสำคัญมากขึ้นเรื่อยๆ สำหรับหลายอุตสาหกรรม รวมถึงเกม หุ่นยนต์ สถาปัตยกรรม และแพลตฟอร์มโซเชียล อย่างไรก็ตาม การสร้างเนื้อหา 3 มิติด้วยตนเองนั้นใช้เวลานานมากและต้องใช้ความรู้ทางเทคนิคเฉพาะทาง รวมถึงทักษะการสร้างแบบจำลองทางศิลปะ หนึ่งในความท้าทายหลักคือการปรับขนาด – ในขณะที่สามารถพบโมเดล 3 มิติได้ในตลาดโมเดล 3 มิติ เช่น Turbosquid [ ] หรือ Sketchfab [ ] การสร้างโมเดล 3 มิติจำนวนมาก เช่น การสร้างฝูงตัวละครที่แตกต่างกันสำหรับเกมหรือภาพยนตร์ ยังคงต้องใช้เวลาของศิลปินเป็นจำนวนมาก 4 3 เพื่ออำนวยความสะดวกในกระบวนการสร้างเนื้อหาและทำให้สามารถเข้าถึงได้สำหรับผู้ใช้ (สามเณร) ที่หลากหลาย เครือข่าย 3 มิติที่สร้างสรรค์ซึ่งสามารถสร้างเนื้อหา 3 มิติคุณภาพสูงและหลากหลาย ได้กลายเป็นพื้นที่วิจัยที่คึกคักเมื่อเร็วๆ นี้ [ , , , , , , , , , , ] อย่างไรก็ตาม เพื่อให้มีประโยชน์ในทางปฏิบัติสำหรับการใช้งานจริงในปัจจุบัน โมเดลสร้างสรรค์ 3 มิติควรมีคุณสมบัติตามข้อกำหนดต่อไปนี้: ควรมีความสามารถในการสร้างรูปทรงที่มีรายละเอียดทางเรขาคณิตและโทโพโลยีตามอำเภอใจ ผลลัพธ์ควรเป็นตาข่ายที่มีพื้นผิว ซึ่งเป็นตัวแทนหลักที่ใช้โดยแพ็คเกจซอฟต์แวร์กราฟิกมาตรฐาน เช่น Blender [ ] และ Maya [ ] และ เราควรสามารถใช้ประโยชน์จากภาพ 2 มิติเพื่อการกำกับดูแล เนื่องจากมีอยู่แพร่หลายกว่ารูปทรง 3 มิติที่ชัดเจน 5 14 43 46 53 68 75 60 59 69 23 (a) (b) 15 1 (c) งานก่อนหน้านี้เกี่ยวกับโมเดลสร้างสรรค์ 3 มิติได้มุ่งเน้นไปที่ส่วนย่อยของข้อกำหนดข้างต้น แต่ยังไม่มีวิธีการใดที่ตรงตามข้อกำหนดทั้งหมด (ตาราง ) ตัวอย่างเช่น วิธีการที่สร้าง point clouds 3 มิติ [ , 68, 75] โดยทั่วไปจะไม่มีพื้นผิวและต้องแปลงเป็นตาข่ายหลังการประมวลผล 1 5 วิธีการสร้าง voxels มักจะขาดรายละเอียดทางเรขาคณิตและไม่มีพื้นผิว [ , , , ] โมเดลสร้างสรรค์ที่ใช้ neural fields [ , ] มุ่งเน้นไปที่การสกัดเรขาคณิต แต่ไม่สนใจพื้นผิว ส่วนใหญ่ของสิ่งเหล่านี้ยังต้องการการกำกับดูแล 3 มิติที่ชัดเจน สุดท้าย วิธีการที่สร้าง output ตาข่าย 3 มิติที่มีพื้นผิวโดยตรง [ , ] โดยทั่วไปต้องการเทมเพลตรูปทรงที่กำหนดไว้ล่วงหน้าและไม่สามารถสร้างรูปทรงที่มีโทโพโลยีที่ซับซ้อนและ genus ที่แตกต่างกันได้ 66 20 27 40 43 14 54 53 เมื่อเร็วๆ นี้ ความก้าวหน้าอย่างรวดเร็วใน neural volume rendering [ ] และ 2D Generative Adversarial Networks (GANs) [ , , , , ] ได้นำไปสู่การเพิ่มขึ้นของการสังเคราะห์ภาพที่ตระหนักถึง 3 มิติ [ , , , , , ] อย่างไรก็ตาม งานสายนี้มุ่งเน้นไปที่การสังเคราะห์ภาพหลายมุมมองที่สอดคล้องกันโดยใช้ neural rendering ในกระบวนการสังเคราะห์ และไม่รับประกันว่ารูปทรง 3 มิติที่มีความหมายจะถูกสร้างขึ้นได้ แม้ว่าตาข่ายจะสามารถได้รับจากการแสดง neural field ที่อยู่เบื้องหลังโดยใช้อัลกอริทึม marching cube [ ] ได้ แต่การสกัดพื้นผิวที่สอดคล้องกันนั้นไม่ใช่เรื่องง่าย 45 34 35 33 29 52 7 57 8 49 51 25 39 ในงานนี้ เราขอแนะนำแนวทางใหม่ที่มุ่งเป้าไปที่การตอบสนองข้อกำหนดทั้งหมดของโมเดลสร้างสรรค์ 3 มิติที่มีประโยชน์ในทางปฏิบัติ โดยเฉพาะอย่างยิ่ง เราขอเสนอ GET3D ซึ่งเป็นโมเดลสร้างสรรค์ ( enerative model) สำหรับรูปทรง 3 มิติที่สร้าง output ตาข่าย 3 มิติที่มีพื้นผิว ( xplicit extured meshes) โดยตรง ด้วยรายละเอียดทางเรขาคณิตและพื้นผิวสูง และโทโพโลยีตาข่ายตามอำเภอใจ หัวใจสำคัญของแนวทางของเราคือกระบวนการสร้างสรรค์ที่ใช้เมธอดการสกัดพื้นผิวแบบแยกส่วน (differentiable surface extraction method) [ ] และเทคนิคการเรนเดอร์แบบแยกส่วน (differentiable rendering technique) [ , ] ส่วนแรกช่วยให้เราสามารถปรับปรุงและสร้าง output ตาข่าย 3 มิติที่มีพื้นผิวที่มีโทโพโลยีตามอำเภอใจได้โดยตรง ในขณะที่ส่วนหลังช่วยให้เราสามารถฝึกโมเดลของเราด้วยภาพ 2 มิติ ซึ่งใช้ประโยชน์จากตัวแยกส่วนที่ทรงพลังและมีวุฒิภาวะซึ่งพัฒนาขึ้นสำหรับการสังเคราะห์ภาพ 2 มิติ เนื่องจากโมเดลของเราสร้างตาข่ายโดยตรงและใช้เอนจิ้นการเรนเดอร์กราฟิกที่มีประสิทธิภาพสูง (แยกส่วนได้) เราจึงสามารถปรับขนาดโมเดลของเราเพื่อฝึกด้วยความละเอียดของภาพสูงถึง 1024 × 1024 ได้อย่างง่ายดาย ทำให้เราสามารถเรียนรู้รายละเอียดทางเรขาคณิตและพื้นผิวคุณภาพสูงได้ G E T 3D explicit 60 47 37 เราสาธิตประสิทธิภาพที่ล้ำสมัยสำหรับการสร้างรูปทรง 3 มิติแบบไม่มีเงื่อนไขในหลายหมวดหมู่ที่มีเรขาคณิตที่ซับซ้อนจาก ShapeNet [ ] Turbosquid [ ] และ Renderpeople [ ] เช่น เก้าอี้ มอเตอร์ไซค์ รถยนต์ ตัวละครมนุษย์ และอาคาร ด้วยการแสดงผลลัพธ์เป็นตาข่ายที่ชัดเจน GET3D ยังมีความยืดหยุ่นสูงและสามารถปรับใช้กับงานอื่นๆ ได้อย่างง่ายดาย รวมถึง: การเรียนรู้เพื่อสร้างการแยกส่วนของวัสดุและเอฟเฟกต์แสงที่ขึ้นอยู่กับมุมมองโดยใช้การเรนเดอร์แบบแยกส่วนขั้นสูง [ ] โดยไม่ต้องมีการกำกับดูแล การสร้างรูปทรง 3 มิติที่ควบคุมด้วยข้อความโดยใช้ CLIP [ ] embedding 9 4 2 (a) 12 (b) 56 2 งานที่เกี่ยวข้อง เราทบทวนความก้าวหน้าล่าสุดในโมเดลสร้างสรรค์ 3 มิติสำหรับเรขาคณิตและลักษณะภายนอก รวมถึงการสังเคราะห์ภาพสร้างสรรค์ที่ตระหนักถึง 3 มิติ ในช่วงไม่กี่ปีที่ผ่านมา โมเดลสร้างสรรค์ 2 มิติได้บรรลุคุณภาพที่เหมือนจริงในการสังเคราะห์ภาพความละเอียดสูง [ , , , , , , ] ความก้าวหน้านี้ยังเป็นแรงบันดาลใจให้เกิดการวิจัยเกี่ยวกับการสร้างเนื้อหา 3 มิติ แนวทางแรกๆ มุ่งเน้นไปที่การขยายตัวสร้าง CNN แบบ 2 มิติไปยัง voxel grids 3 มิติโดยตรง [ , , , , ] แต่ปริมาณหน่วยความจำที่สูงและความซับซ้อนในการคำนวณของการแปลง 3 มิติเป็นอุปสรรคต่อกระบวนการสร้างสรรค์ที่ความละเอียดสูง ในทางกลับกัน งานอื่นๆ ได้สำรวจ point cloud [ , , , ] implicit [ , ] หรือ octree [ ] representations อย่างไรก็ตาม งานเหล่านี้ส่วนใหญ่เน้นไปที่การสร้างเรขาคณิตและไม่สนใจลักษณะภายนอก การแสดงผลลัพธ์ของพวกเขายังต้องได้รับการประมวลผลหลังการผลิตเพื่อให้เข้ากันได้กับเอนจิ้นกราฟิกมาตรฐาน โมเดลสร้างสรรค์ 3 มิติ 34 35 33 52 29 19 16 66 20 27 40 62 5 68 75 46 43 14 30 ใกล้เคียงกับงานของเรามากขึ้น Textured3DGAN [ , ] และ DIBR [ ] สร้างตาข่าย 3 มิติที่มีพื้นผิว แต่พวกเขากำหนดการสร้างสรรค์เป็นการบิดเบือนของตาข่ายแม่แบบ ซึ่งป้องกันไม่ให้พวกเขาสร้างโทโพโลยีที่ซับซ้อนหรือรูปทรงที่มี genus ที่แตกต่างกัน ซึ่งวิธีการของเราสามารถทำได้ PolyGen [ ] และ SurfGen [ ] สามารถสร้างตาข่ายที่มีโทโพโลยีตามอำเภอใจได้ แต่ไม่สังเคราะห์พื้นผิว 54 53 11 48 41 ได้รับแรงบันดาลใจจากความสำเร็จของ neural volume rendering [ ] และ implicit representations [ , ] งานล่าสุดได้เริ่มจัดการกับปัญหาการสังเคราะห์ภาพที่ตระหนักถึง 3 มิติ [ , , , , , , , , , ] อย่างไรก็ตาม เครือข่าย neural volume rendering โดยทั่วไปจะช้าในการสอบถาม ซึ่งนำไปสู่เวลาในการฝึกที่ยาวนาน [ , ] และสร้างภาพที่มีความละเอียดจำกัด GIRAFFE [ ] และ StyleNerf [ ] ปรับปรุงประสิทธิภาพการฝึกและการเรนเดอร์โดยการทำการเรนเดอร์แบบประสาทที่ความละเอียดต่ำกว่า แล้วจึงเพิ่มขนาดผลลัพธ์ด้วย CNN แบบ 2 มิติ อย่างไรก็ตาม กำไรด้านประสิทธิภาพมาพร้อมกับต้นทุนของความสอดคล้องหลายมุมมองที่ลดลง ด้วยการใช้ตัวแยกส่วนคู่ EG3D [ ] สามารถบรรเทาปัญหานี้ได้บางส่วน อย่างไรก็ตาม การสกัดพื้นผิวที่มีพื้นผิวจากวิธีการที่ใช้ neural rendering เป็นงานที่ต้องทำอย่างรอบคอบ ในทางตรงกันข้าม GET3D สร้าง output ตาข่าย 3 มิติที่มีพื้นผิวโดยตรงซึ่งพร้อมใช้งานในเอนจิ้นกราฟิกมาตรฐาน การสังเคราะห์ภาพสร้างสรรค์ที่ตระหนักถึง 3 มิติ 45 43 14 7 57 49 26 25 76 8 51 58 67 7 57 49 25 8 3 วิธีการ ขณะนี้เราขอเสนอเฟรมเวิร์ก GET3D ของเราสำหรับการสังเคราะห์รูปทรง 3 มิติที่มีพื้นผิว กระบวนการสร้างสรรค์ของเราแบ่งออกเป็นสองส่วน: ส่วนเรขาคณิต ซึ่งสร้าง output ตาข่ายพื้นผิวของโทโพโลยีตามอำเภอใจแบบแยกส่วน และส่วนพื้นผิวที่สร้าง texture field ซึ่งสามารถสอบถามได้ที่จุดพื้นผิวเพื่อสร้างสี ส่วนหลังสามารถขยายไปยังคุณสมบัติพื้นผิวอื่นๆ ได้ เช่น วัสดุ (ส่วน ) ในระหว่างการฝึก เราใช้ rasterizer แบบแยกส่วนที่มีประสิทธิภาพเพื่อเรนเดอร์ตาข่ายที่มีพื้นผิวที่สร้างขึ้นเป็นภาพความละเอียดสูงแบบ 2 มิติ กระบวนการทั้งหมดเป็นแบบแยกส่วน ทำให้สามารถฝึกแบบปฏิปักษ์จากภาพ (พร้อมหน้ากากระบุวัตถุที่น่าสนใจ) โดยการแพร่กระจายเกรเดียนต์จากตัวแยกส่วนแบบ 2 มิติไปยังส่วนสร้างสรรค์ทั้งสอง ส่วน โมเดลของเราแสดงในรูปที่ ในส่วนต่อไปนี้ เราจะแนะนำตัวสร้าง 3 มิติของเราก่อนในส่วน ก่อนที่จะดำเนินการต่อกับการเรนเดอร์แบบแยกส่วนและฟังก์ชันการสูญเสียในส่วน 4.3.1 2 3.1 3.2 3.1 โมเดลสร้างสรรค์ของตาข่าย 3 มิติที่มีพื้นผิว เรามุ่งมั่นที่จะเรียนรู้ตัวสร้าง 3 มิติ = ( ) เพื่อแมปตัวอย่างจาก Gaussian distribution M, E G z ∈ N (0*,* ) ไปยังตาข่าย ที่มีพื้นผิว . z I M E เนื่องจากรูปทรงเดียวกันสามารถมีพื้นผิวที่แตกต่างกัน และพื้นผิวเดียวกันสามารถนำไปใช้กับรูปทรงที่แตกต่างกันได้ เราจึงสุ่มเวกเตอร์อินพุตแบบสุ่มสองเวกเตอร์ 1 ∈ R512 และ 2 ∈ R512 ตาม StyleGAN [ , , ] เราจะใช้เครือข่ายการแมปแบบไม่เชิงเส้น geo และ tex เพื่อแมป 1 และ 2 ไปยังเวกเตอร์ latent ระหว่างกลาง 1 = geo( 1) และ 2 = tex( 2) ซึ่งจะถูกใช้ต่อไปเพื่อสร้าง ที่ควบคุมการสร้างรูปทรง 3 มิติและพื้นผิวตามลำดับ เราจะแนะนำตัวสร้างสำหรับเรขาคณิตอย่างเป็นทางการในส่วน และตัวสร้างพื้นผิวก่อนที่จะดำเนินการในส่วน z z 34 35 33 f f z z w f z w f z styles 3.1.1 3.1.2 3.1.1 ตัวสร้างเรขาคณิต เราออกแบบตัวสร้างเรขาคณิตของเราเพื่อรวม DMTet [ ] ซึ่งเป็นตัวแทนพื้นผิวแบบแยกส่วนที่เสนอเมื่อเร็วๆ นี้ DMTet แสดงรูปทรงเป็น signed distance field (SDF) ที่กำหนดบน tetrahedral grid ที่เปลี่ยนรูปได้ [ , ] ซึ่งพื้นผิวสามารถกู้คืนแบบแยกส่วนได้ผ่าน marching tetrahedra [ ] การเปลี่ยนรูป grid โดยการย้าย vertices ของมันช่วยให้ใช้ความละเอียดได้ดีขึ้น ด้วยการนำ DMTet มาใช้สำหรับการสกัดพื้นผิว เราสามารถสร้างตาข่ายที่ชัดเจนด้วยโทโพโลยีและ genus ตามอำเภอใจ เราจะสรุป DMTet โดยย่อและอ้างอิงผู้อ่านไปยังบทความต้นฉบับสำหรับรายละเอียดเพิ่มเติม 60 22 24 17 ให้ ( ) แสดงถึงพื้นที่ 3 มิติทั้งหมดที่วัตถุอยู่ โดย คือ vertices ใน tetrahedral grid แต่ละ tetrahedron ∈ ถูกกำหนดโดยใช้ vertices สี่ตัว { } โดยที่ ∈ {1*, . . . , K*}, โดยที่ คือจำนวน tetrahedra ทั้งหมด และ ∈ ∈ R3 นอกเหนือจากพิกัด 3 มิติ ของแต่ละ vertex จะมีค่า SDF ∈ R และการเปลี่ยนรูป ∆ ∈ R3 ของ vertex จากพิกัดเชิงนิยามเริ่มต้น การแสดงผลนี้ช่วยให้สามารถกู้คืนตาข่ายที่ชัดเจนผ่าน marching tetrahedra แบบแยกส่วน [ ] โดยที่ค่า SDF ในพื้นที่ต่อเนื่องจะถูกคำนวณโดยการประมาณค่าแบบ barycentric ของค่า บน vertices ที่เปลี่ยนรูป ′ = + ∆ . 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 และการเปลี่ยนรูปที่แต่ละ vertex ผ่านชุดของ convolutional layers 3 มิติแบบมีเงื่อนไขและ fully connected layers โดยเฉพาะอย่างยิ่ง เราใช้ convolutional layers 3 มิติเพื่อสร้าง feature volume ที่มีเงื่อนไขตาม 1 จากนั้นเราสอบถาม feature ที่แต่ละ vertex ∈ โดยใช้ trilinear interpolation และป้อนเข้าสู่ MLPs ที่สร้าง output ค่า SDF และการเปลี่ยนรูป ∆ ในกรณีที่ต้องการการสร้างแบบจำลองที่ความละเอียดสูง (เช่น มอเตอร์ไซค์ที่มีโครงสร้างบางในล้อ) เรายังใช้ volume subdivision ตาม [ ]. สถาปัตยกรรมเครือข่าย w v i w v i VT si v i 60 หลังจากได้ และ ∆ สำหรับ vertices ทั้งหมดแล้ว เราใช้อัลกอริทึม marching tetrahedra แบบแยกส่วนเพื่อสกัดตาข่ายที่ชัดเจน Marching tetrahedra กำหนดโทโพโลยีของพื้นผิวภายในแต่ละ tetrahedron ตามเครื่องหมายของ โดยเฉพาะอย่างยิ่ง จะมีการสกัด face ของตาข่ายเมื่อ sign( ) /= sign( ) โดยที่ แทนดัชนีของ vertices ใน edge ของ tetrahedron และ vertices ของ face นั้นถูกกำหนดโดย linear interpolation เช่น 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 ตัวสร้างพื้นผิว การสร้าง texture map ที่สอดคล้องกับตาข่ายที่สร้างขึ้นโดยตรงนั้นไม่ใช่เรื่องง่าย เนื่องจากรูปทรงที่สร้างขึ้นสามารถมี genus และโทโพโลยีตามอำเภอใจได้ ดังนั้น เราจึง parameterize พื้นผิวเป็น texture field [ ]. 50 โดยเฉพาะอย่างยิ่ง เราสร้างแบบจำลอง texture field ด้วยฟังก์ชัน ซึ่งแมปตำแหน่ง 3 มิติของจุดพื้นผิว ∈ R3 โดยมีเงื่อนไขตาม 2 ไปยังสี RGB ∈ R3 ณ ตำแหน่งนั้น เนื่องจาก texture field ขึ้นอยู่กับเรขาคณิต เราจึงกำหนดเงื่อนไขเพิ่มเติมสำหรับการแมปนี้ด้วยโค้ด latent ของเรขาคณิต 1 เพื่อให้ = ( *,* 1 ⊕ 2) โดยที่ ⊕ หมายถึงการเชื่อมต่อ ft p w c w c ft p w w เราแสดง texture field ของเราด้วยการแสดงผลแบบ tri-plane ซึ่งมีประสิทธิภาพและแสดงออกในการสร้างรูปทรง 3 มิติ [ ] และการสร้างภาพที่ตระหนักถึง 3 มิติ [ ] โดยเฉพาะอย่างยิ่ง เราตาม [ , ] และใช้ convolutional neural network แบบ 2 มิติที่มีเงื่อนไขเพื่อแมปโค้ด latent 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 และ ρ(·) หมายถึงการประมาณค่าแบบ bilinear ของฟีเจอร์ จากนั้นจะใช้ fully connected layer เพิ่มเติมเพื่อแมปเวกเตอร์ฟีเจอร์ที่รวมกัน f t ไปยังสี RGB c โปรดทราบว่า แตกต่างจากงานอื่นๆ เกี่ยวกับการสังเคราะห์ภาพที่ตระหนักถึง 3 มิติ ที่ใช้การแสดงผลแบบ neural field ด้วย เราจำเป็นต้องสุ่มตัวอย่าง texture field ที่ตำแหน่งของจุดพื้นผิวเท่านั้น (ตรงกันข้ามกับการสุ่มตัวอย่างหนาแน่นตามรังสี) ซึ่งช่วยลดความซับซ้อนในการคำนวณสำหรับการเรนเดอร์ภาพความละเอียดสูงได้อย่างมาก และรับประกันว่าจะสร้างภาพที่สอดคล้องกันหลายมุมมองโดยการก่อสร้าง 3.2 การเรนเดอร์แบบแยกส่วนและการฝึก เพื่อให้สามารถกำกับดูแลโมเดลของเราในระหว่างการฝึก เราได้รับแรงบันดาลใจจาก Nvdiffrec [ ] ซึ่งทำการสร้างแบบจำลองวัตถุ 3 มิติหลายมุมมองโดยใช้ differentiable renderer โดยเฉพาะอย่างยิ่ง เราเรนเดอร์ตาข่าย 3 มิติที่สกัดได้และ texture field เป็นภาพ 2 มิติโดยใช้ differentiable renderer [ ] และกำกับดูแลเครือข่ายของเราด้วยตัวแยกส่วน 2 มิติ ซึ่งพยายามแยกความแตกต่างระหว่างภาพจากวัตถุจริงหรือภาพที่เรนเดอร์จากวัตถุที่สร้างขึ้น 47 37 เราสมมติว่าการกระจายกล้อง C ที่ใช้ในการได้มาซึ่งภาพในชุดข้อมูลนั้นเป็นที่ทราบกันดี ในการเรนเดอร์รูปทรงที่สร้างขึ้น เราสุ่มตัวอย่างกล้อง c จาก C และใช้ Nvdiffrast [ ] ซึ่งเป็น differentiable rasterizer ที่ได้รับการปรับปรุงประสิทธิภาพสูง เพื่อเรนเดอร์ตาข่าย 3 มิติเป็น silhouette แบบ 2 มิติ รวมถึงภาพที่แต่ละพิกเซลมีพิกัดของจุด 3 มิติที่สอดคล้องกันบนพื้นผิวตาข่าย พิกัดเหล่านี้จะถูกใช้ต่อไปเพื่อสอบถาม texture field เพื่อรับค่า RGB เนื่องจากเราดำเนินการโดยตรงบนตาข่ายที่สกัดได้ เราจึงสามารถเรนเดอร์ภาพความละเอียดสูงได้อย่างมีประสิทธิภาพสูง ทำให้โมเดลของเราสามารถฝึกด้วยความละเอียดของภาพสูงถึง 1024×1024 การเรนเดอร์แบบแยกส่วน 37 เราฝึกโมเดลของเราโดยใช้ adversarial objective เรานำสถาปัตยกรรมตัวแยกส่วนจาก StyleGAN [ ] มาใช้ และใช้ objective GAN แบบไม่ใช้ค่าสูงสุดเดียวกันกับการทำให้เป็นระเบียบ R1 [ ] เราพบจากประสบการณ์ว่าการใช้ตัวแยกส่วนสองตัวแยกกัน ตัวหนึ่งสำหรับภาพ RGB และอีกตัวหนึ่งสำหรับ silhouette ให้ผลลัพธ์ที่ดีกว่าตัวแยกส่วนเดียวที่ทำงานบนทั้งสองอย่าง วัตถุประสงค์ adversarial แล้วจะกำหนดดังนี้: ตัวแยกส่วน & วัตถุประสงค์ 34 42 โดยที่ ( ) กำหนดเป็น ( ) = − log(1 +exp(− )), คือการกระจายของภาพจริง, หมายถึงการเรนเดอร์ และ เป็น hyperparameter เนื่องจาก เป็นแบบแยกส่วนได้ เกรเดียนต์จึงสามารถย้อนกลับจากภาพ 2 มิติไปยังตัวสร้าง 3 มิติของเราได้ g u g u u px R λ R เพื่อลบ face ภายในที่ลอยอยู่ซึ่งมองไม่เห็นในมุมมองใดๆ เราทำให้ตัวสร้างเรขาคณิตเป็นระเบียบยิ่งขึ้นด้วย loss แบบ cross-entropy ที่กำหนดระหว่างค่า SDF ของ vertices ที่อยู่ติดกัน [ ]: การทำให้เป็นระเบียบ 47 โดยที่ หมายถึง binary cross-entropy loss และ หมายถึงฟังก์ชัน sigmoid ผลรวมในสมการ ถูกกำหนดเหนือชุดของ edges ที่ไม่ซ้ำกัน S ใน tetrahedral grid สำหรับซึ่ง sign( ) /= sign( ). H σ 2 e si sj ฟังก์ชันการสูญเสียโดยรวมจะถูกกำหนดดังนี้: โดยที่ คือ hyperparameter ที่ควบคุมระดับของการทำให้เป็นระเบียบ µ 4 การทดลอง เราทำการทดลองอย่างกว้างขวางเพื่อประเมินโมเดลของเรา เราเป