สิ่งที่จะเป็นตัวกรองที่ดีในการสร้าง 'แม่เหล็ก deformers' จากแผนที่เชิงลึก?


10

ในโครงการของฉันฉันกำลังสร้างระบบสำหรับการเปลี่ยนรูปแบบตาข่ายที่มีรายละเอียดสูง (เสื้อผ้า) เพื่อให้พอดีกับตาข่ายนูน ในการทำเช่นนี้ฉันใช้แผนที่ความลึกของรายการและ 'ฮัลล์' เพื่อพิจารณาว่าจุดใดในอวกาศโลกที่เกิดการเบี่ยงเบนและขอบเขต

เพียงแค่เปลี่ยนจุดยอดที่เกิดขึ้นทั้งหมดให้เป็นความลึกตามที่กำหนดโดย 'ฮัลล์' นั้นมีประสิทธิภาพพอสมควรและมีประสิทธิภาพที่ดี แต่มันประสบปัญหาในการไม่รักษาคุณสมบัติของตาข่ายและต้องการการคัดที่กว้างขวางเพื่อหลีกเลี่ยง

ฉันต้องการสร้างจากแผนที่เบี่ยงเบนเชิงลึกชุด 'deformers' ที่เรียบง่ายซึ่งจะ 'ดัน' * จุดยอดทั้งหมดของตาข่ายที่ผิดรูปออกไปด้านนอก (ในอวกาศโลก) ด้วยวิธีนี้คุณสมบัติทั้งหมดของตาข่ายจะได้รับการเก็บรักษาไว้และไม่จำเป็นต้องมีฮิวริสติกแบบซับซ้อนเพื่อกำจัดจุดยอดที่ไม่เหมาะสม

ฉันไม่แน่ใจว่าจะทำอย่างไรเกี่ยวกับการสร้างชุด deformer นี้ ฉันจินตนาการถึงบางสิ่งบางอย่างเช่นอัลกอริทึมที่พยายามจับคู่พื้นผิวทรงกลมกับแต่ละส่วนของการเบี่ยงเบนที่ต่อเนื่องกันในช่วงที่กำหนด แต่ไม่รู้ว่าจะเริ่มทำสิ่งนี้ได้ที่ไหน

ใครสามารถแนะนำตัวกรองหรืออัลกอริทึมที่เหมาะสมสำหรับการสร้างตัวเปลี่ยนรูป? หรือจะใช้วิธีการ 'บีบอัด' แผนที่เชิงลึกอีกวิธีหนึ่ง

(* กดเนื่องจากการปรับให้พอดีกับรูปร่างมนุษย์นูน 'ดังนั้น' การแปลงมีแนวโน้มที่จะเป็น 'ทรงกลม' จากมุมมองของพื้นผิว)

แก้ไข:นี่คือภาพ / แผนภาพแนะนำอย่างถูกต้องที่แสดงให้เห็นถึงสิ่งที่ฉันพยายามที่จะบรรลุ

นอกจากนี้ฉันควรพูดตั้งแต่คำถามนี้ถูกโพสต์ฉันทำงานมากขึ้นเกี่ยวกับปัญหานี้และแม้ว่าฉันไม่เคยแก้ไขวิธีการรับ deformers ที่ฉันได้ในที่สุดตัดสินใจว่าแผนที่เชิงลึกสำหรับสิ่งนี้ไม่เหมาะสมเป็น:

  1. หากตาข่ายที่ผิดรูปไม่สมบูรณ์เป็นไปได้ที่จะรับข้อความในแผนที่ที่มีความหมายว่าอยู่อีกด้านหนึ่งของตาข่ายนูน (เพราะไม่ถูกบดบังโดยผู้ที่อยู่ใกล้กับกล้องในด้านที่ถูกต้อง)
  2. ประสิทธิภาพไม่สูงอย่างที่ฉันหวังไว้เพราะต้องการแผนที่ 6 แผนที่ต่อการเปลี่ยนรูป

ไม่ใช่ว่าสิ่งเหล่านี้จะแก้ไม่ตก แต่โซลูชันอื่น ๆ ซึ่งเกี่ยวข้องกับการทดสอบการชนกันของเมล็ดที่ทำงานบน GPU ทำให้ได้ผลลัพธ์ที่มีคุณภาพสูงกว่าและง่ายกว่ามากแม้ว่ามันอาจจะไม่เร็วก็ตาม

ฉันยังคงคิดว่าปัญหาคำถามนี้น่าสนใจและจะสนใจคำตอบใด ๆ เนื่องจากฉันมั่นใจว่ามีสถานการณ์ที่น่าพอใจ

ป้อนคำอธิบายรูปภาพที่นี่


คุณช่วยแทรกรูปภาพหรือภาพวาดของเอฟเฟกต์ที่คุณต้องการได้หรือไม่? มันจะง่ายต่อการเข้าใจปัญหาของคุณ
เช็ด

ประการที่สองความคิดเห็นที่ทำด้านล่างรูปภาพหรือภาพวาดอาจช่วยได้มาก มีหลายวิธีในการจำลองว่าเสื้อผ้าห่อหุ้มส่วนต่าง ๆ ของร่างกายและความคิดของคุณ“ ผู้ที่ผิดรูป” เป็นเพียงหนึ่งในหลาย ๆ
sam hocevar

เกิดอะไรขึ้นกับการเคลื่อนย้ายรูปร่างทั้งหมด?
Ali1S232

Gajoo ลองคิดดูว่ารูปร่างที่ล้อมรอบตาข่ายเคลื่อนไปในทิศทางเดียวจะทำให้มันตัดกับรูปร่างที่อยู่อีกด้านหนึ่ง - แม้ว่าจริง ๆ แล้วนั่นคือสิ่งที่นักเปลี่ยนรูปกำลังทำอยู่
sebf

SamHocevar คำถามนี้เกี่ยวกับการปรับเท่านั้น - คุณมีตาข่ายที่มีขนาดเล็กกว่าตัวอักษรเล็กน้อยเพื่อให้พอดีดังนั้นตาข่ายจึงปรับตามนั้น การใช้งานฟิลด์ความลึกได้รับการคัดเลือกด้วยเหตุผลด้านประสิทธิภาพการทำงานผู้ที่ได้รับการคัดเลือกจะถูกเลือกเนื่องจากความสามารถในการเข้าถึงคุณสมบัติการเก็บรักษา
sebf

คำตอบ:


2

คุณมีแผนที่ความลึกซึ่งฉันคิดว่าเป็นเพียงระยะห่างระหว่างตาข่ายนูน A กับตาข่ายที่มีรูปร่างผิดปกติ B และคุณมีค่าปกติของพื้นผิวของตาข่าย A

สิ่งที่คุณขาดไปคือน้ำหนัก (หรือการจัดกลุ่ม) ว่าแต่ละจุดบนตาข่าย B มีผลกับเพื่อนบ้านอย่างไร ตัวอย่างเช่นเมื่อจุดศูนย์กลางกลางถูกย้ายมันก็ควรลาก verts ข้างเคียงของมันด้วยจำนวน (เปอร์เซ็นต์) ถ้าพวกมันอยู่ในกลุ่มเดียวกัน

หากคุณมีกลุ่มของ verts ส่งผลกระทบต่อกัน 100% พวกมันจะจบลงด้วยจำนวนที่มากที่สุดจากแผนที่เชิงลึกของคุณราวกับว่าพวกเขาเป็นส่วนหนึ่งของโครงสร้างเหล็กที่ไม่สามารถโค้งได้ซึ่งเคลื่อนที่เป็นหน่วยตั้งไว้ที่ 50% โครงสร้างนี้ อาจทำตัวเหมือนแผ่นยางหนาและ 10% เหมือนแผ่นพลาสติกที่กระชับเนื่องจากแต่ละตำแหน่งแทบจะส่งผลกระทบต่อเพื่อนบ้าน (ซึ่งเป็นสิ่งที่คุณมีอยู่ตอนนี้

เห็นได้ชัดว่ามีการผสมผสานและการรวมกันของค่าที่เกิดขึ้น เช่น @Gajoo พูดว่า "เกิดอะไรขึ้นกับการเคลื่อนย้ายรูปร่างทั้งหมด"

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.