سؤال

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

نص بديل http://quito.informatik.uni-kl.de/oscar/oscar.php?serverimage=img_0324.jpg&montage=use

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

المحلول

لا تحتاج فعليًا إلى التعامل مع المعلومات ثلاثية الأبعاد في هذه الحالة، فهي مجرد وظيفة رسم خرائط، من مجموعة إحداثيات إلى أخرى.

انظر إلى التحولات التقاربية، فهي قادرة على تصحيح الانحراف البسيط وتأثيرات المنظور.يجب أن تكون قادرًا على العثور على رمز في مكان ما يحسب التحويل من النقاط الأربع الموجودة في زوايا المستطيل.

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

نصائح أخرى

في الواقع، أعتقد أنه يمكنك الإفلات من شيء أبسط بكثير من نهج مارك.

  1. بمجرد حصولك على الإحداثيات ثنائية الأبعاد على الصورة المنحرفة، أعد استخدام هذه الإحداثيات كإحداثيات نسيج.

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

يمكنك الآن الاعتماد على الأجهزة (باستخدام OpenGL أو ما شابه) لإجراء التصحيح نيابةً عنك، أو يمكنك كتابة مخطط النسيج الخاص بك:

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

رسم خرائط نسيج المنظور بواسطة كريس هيكر

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