استخدام كاميرا معايرة الحصول على نقاط مطابقة لإعادة الإعمار 3 د

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

سؤال

أحاول حساب الإحداثيات 3 د من عدة زوج من نقطتي عرض.
أولا ، استخدمت وظيفة ماتلاب estimateFundamentalMatrix() للحصول على F من النقاط المتطابقة (رقم > 8) وهي:

F1 =[-0.000000221102386   0.000000127212463  -0.003908602702784
     -0.000000703461004  -0.000000008125894  -0.010618266198273
      0.003811584026121   0.012887141181108   0.999845683961494]

والكاميرا الخاصة بي - التي التقطت هاتين الصورتين - تمت معايرتها مسبقا باستخدام المصفوفة الجوهرية:

K = [12636.6659110566, 0, 2541.60550098958
     0, 12643.3249022486, 1952.06628069233
     0, 0, 1]

من هذه المعلومات ، قمت بعد ذلك بحساب المصفوفة الأساسية باستخدام:

E = K'*F*K

مع طريقة سفد ، وأخيرا حصلت على مصفوفات التحول الإسقاطي:

P1 = K*[ I | 0 ] 

و

P2 = K*[ R | t ]

أين R و t هي:

R = [ 0.657061402787646 -0.419110137500056  -0.626591577992727
     -0.352566614260743 -0.905543541110692   0.235982367268031
     -0.666308558758964  0.0658603659069099 -0.742761951588233]

t = [-0.940150699101422
      0.320030970080146
      0.117033504470591]

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

أريد فقط أن أعرف ما إذا كانت هذه الطريقة لحل قضية إعادة الإعمار 3د الحق?خاصة عندما نعرف بالفعل مصفوفة الكاميرا الجوهرية.

تحرير بواسطة جكرافت في أغسطس.4:لقد أعدت العملية وحصلت على بعض الصور التي تظهر المشكلة ، سأكتب سؤالا آخر بالتفصيل ثم أنشر الرابط.

تحرير بواسطة جكرافت في أغسطس.4:لقد نشرت سؤالا جديدا: كاميرا معايرة الحصول على نقاط مطابقة لإعادة الإعمار 3 د ، فشل الاختبار المثالي.و @ شورش نقدر حقا مساعدتكم تنسيق سؤالي.سأحاول أن تعلم كيفية القيام المدخلات في سو وأيضا محاولة لتحسين بلدي غراما.شكراً!

هل كانت مفيدة؟

المحلول

إذا كان لديك فقط المصفوفة الأساسية والجوهرية ، يمكنك فقط الحصول على إعادة بناء على نطاق واسع.هذا هو متجه الترجمة الخاص بك ر في بعض الوحدات غير المعروفة.يمكنك الحصول على 3د نقاط في وحدات حقيقية في عدة طرق:

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

نصائح أخرى

الأجسام المسطحة هي الأسطح الحرجة ، وليس من الممكن لتحقيق هدفك منها.حاول إضافة نقطتين (أو أكثر) من الطائرة (انظر هارتلي وزيسرمان أو نص آخر حول هذه المسألة إذا كنت لا تزال مهتما)

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