قوة خوارزمية سطح إعادة الإعمار من 3D نقطة سحابة ؟

StackOverflow https://stackoverflow.com/questions/838761

سؤال

أنا في محاولة لمعرفة ما خوارزميات هناك للقيام سطح إعادة الإعمار من 3D مجموعة البيانات.في أول وهلة, يبدو أن الكرة التمحور الخوارزمية (BPA) ، بويسون سطح إعادة الإعمار هي أكثر رسوخا الأساليب ؟

  • ما هي إنشاء أكثر قوة الخوارزمية في مجال آخر من BPA بويسون سطح إعادة الإعمار الخوارزمية ؟
  • أوصى البحث الإصدارات ؟
  • هل هناك مصدر متاح الكود ؟
هل كانت مفيدة؟

المحلول

لقد كنت أواجه هذه المعضلة منذ بضعة أشهر، وقمت بإجراء بحث شامل.

الخوارزميات

هناك أساسا فئتين من الخوارزميات:الهندسة الحسابية، والأسطح الضمنية.

هندسة الحساب

أنها تناسب الشبكة على النقاط الموجودة.

ربما تكون الخوارزمية الأكثر شهرة في هذه المجموعة هي powercrust, ، لأنها راسخة من الناحية النظرية - فهي تضمن شبكة مقاومة للماء.

حصلت شركة IBM على براءة اختراع لتقنية Ball Pivoting.كما أنها غير مناسبة للسحب النقطية ذات الكثافة النقطية المتفاوتة.

وظائف ضمنية

واحد يناسب الوظائف الضمنية على Pointcloud، ثم يستخدم خوارزمية تشبه المكعب لاستخراج المجموعة الصفرية للوظيفة في الشبكة.

تختلف الطرق في هذه الفئة بشكل أساسي حسب الوظائف الضمنية المختلفة المستخدمة.

بواسون, هوبي, ، و MPU هي الخوارزميات الأكثر شهرة في هذه الفئة.إذا كنت جديدًا في هذا الموضوع، أنصحك بقراءة أطروحة هوب، فهي توضيحية للغاية.

عادةً ما يمكن تنفيذ خوارزميات هذه الفئة بحيث تكون قادرة على معالجة المدخلات الضخمة بكفاءة عالية، ويمكن للمرء توسيع نطاق الجودة<->المقايضة بالسرعة.لا ينزعجون من الضوضاء أو اختلاف كثافة النقاط أو الثقوب.ومن عيوبها أنها تتطلب أسطحًا طبيعية موجهة بشكل ثابت عند نقاط الإدخال.

التنفيذ

ستجد عددًا صغيرًا من التطبيقات المجانية.ومع ذلك، يعتمد الأمر على ما إذا كنت ستقوم بدمجه في برنامج مجاني (في هذه الحالة يكون ترخيص GPL مقبولاً بالنسبة لك) أو في برنامج تجاري (في هذه الحالة تحتاج إلى ترخيص أكثر ليبرالية).هذا الأخير نادر جدا.

واحد في فتك.أظن أنه سيكون من الصعب دمجها (لا تتوفر أي وثائق مجانًا)، كما أن لها بنية غريبة ومعقدة للغاية، وليست مصممة للتطبيقات عالية الأداء.لديه أيضًا بعض القيود على نقاط الإدخال المسموح بها.

نلقي نظرة على هذا تنفيذ بواسون، وبعد ذلك شاركني تجربتك حول هذا الموضوع من فضلك.

أيضًا:هنا هناك عدد قليل من الخوارزميات عالية الأداء، مع إعادة بناء السطح فيما بينها.

CGAL هي مكتبة ثلاثية الأبعاد مشهورة، ولكنها مجانية فقط للمشاريع المجانية.مشلاب هو تطبيق مشهور مع GPL.

أيضًا (أضيف في أغسطس 2013):المكتبة PCL لديه وحدة مخصص لإعادة بناء الأسطح وهو قيد التطوير النشط (وهو جزء من برنامج Summer of Code من Google).تحتوي الوحدة السطحية على عدد من الخوارزميات المختلفة لإعادة البناء.PCL أيضًا لديه القدرة لتقدير القيم الطبيعية السطحية، في حالة عدم تزويدها ببيانات النقاط الخاصة بك، يمكن العثور على هذه الوظيفة في الميزات وحدة.يتم إصدار PCL بموجب شروط ترخيص BSD وهو برنامج مفتوح المصدر، وهو مجاني للاستخدام التجاري والبحثي.

نصائح أخرى

إذا كنت تريد إجراء بعض التجارب المباشرة باستخدام خوارزميات إعادة بناء الأسطح المختلفة، فعليك تجربتها مشلاب, ، نظام معالجة الشبكات، وهو مفتوح المصدر ويحتوي على تطبيقات للعديد من خوارزميات إعادة بناء السطح المذكورة سابقًا، مثل:

  • بواسون سطح ريكون
  • اثنين من النهج القائم على MLS،
  • تنفيذ الكرة التمحور
  • البديل من النهج القائم على الحجم Curless
  • التقنيات المعتمدة على ديلوناي (أشكال ألفا وتصفية فورونوي)
  • أدوات لحساب المعايير من مجموعات النقاط المتناثرة
  • والعديد من الأدوات الأخرى لمقارنة/قياس/تنظيف/تبسيط الشبكات الناتجة.

المصادر محمية بواسطة GPL، لذلك لا يمكنك استخدامها في مشروع تجاري مغلق المصدر، ولكن من المهم جدًا الحصول على الشعور الصحيح حول خصائص خوارزميات إعادة بناء السطح المختلفة (مدى حساسيتها للضوضاء، والسرعة، و متانة القيم المتطرفة، وكيفية الحفاظ على التفاصيل الدقيقة وما إلى ذلك) قبل البدء في تنفيذ أحدها.

قد تبدأ في النظر إلى بعض الأعمال الحديثة في هذا المجال - حاليًا شيء من هذا القبيل إعادة بناء MLS سريعة للذاكرة المنخفضة للأسطح ذات العينات النقطية بقلم جيانماورو كوكورو، وإنريكو جوبيتي، وفابيو مارتون، وريناتو باجارولا، وروجيرو بينتوس.الاستشهادات الخاصة بها يمكن أن تجعلك تتصفح الأدبيات بسرعة كبيرة.

في حين لا مش تمثيل, زميل سابق أوصى لي هذا الرابط إلى مصدر رمز لوحة رقيقة شريحة الطريقة:

الرابط

حاول أي شخص ؟

لست متأكدًا مما إذا كان هذا صحيحًا تمامًا لحالتك، لأنه يبدو غريبًا أنك حذفته، ولكن مكعبات المسيرة ويذكر عادة في مثل هذه الحالات.

هنا على GitHub، هو مصدر مفتوح مكتبة معالجة الشبكات في C++ بواسطة دكتور.هيوز هوب, ، حيث يتم برنامج إعادة بناء السطح ريكون خيار جيد لمشكلتك..

هنالك أداة Delaunay ثلاثية الأبعاد من Geometric Tools.يتم استخدام هذه الأداة DirecX وOpenGL.لسوء الحظ، قد تحتاج إلى شراء كتاب لرؤية رمز المثال الفعلي للمكتبة.مازلت تقرأ الكود وتكتشفه.

قدم ماتلاب أيضًا أداة إعادة بناء السطح باستخدام Delaunay، فئة التثليث delaunay.

نظرًا لأنني واجهت هذه المشكلة أيضًا، فقد قمت بتطوير وتنفيذ خوارزمية القشرة السحابية النقطية الخاصة بي.يمكن العثور على المصادر والوثائق على github.com: https://github.com/ricebean-net/PointCloudCrust.يتم تنفيذ الخوارزمية في جافا.

ربما هذا يمكن أن يساعدك.يمكنك أيضًا العثور على نص قصير بلغة بايثون على الصفحة يوضح كيفية استخدام المكتبة.استمتع!

كنت قد تكون مهتمة في أشكال ألفا.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top