এক্সএনএর সাহায্যে আমি একটি সাধারণ আয়তক্ষেত্র প্রদর্শন করছি যা মেঝেতে প্রক্ষেপণ করা হয়েছে। প্রজেক্টর একটি স্বেচ্ছাসেবী অবস্থানে স্থাপন করা যেতে পারে। স্পষ্টতই, অভিক্ষিপ্ত আয়তক্ষেত্রটি প্রজেক্টরের অবস্থান এবং কোণ অনুসারে বিকৃত হয়। একটি কিনেক্ট চারটি কোণ অনুসন্ধান করে মেঝেটি স্ক্যান করে। এখন আমার লক্ষ্যটি মূল আয়তক্ষেত্রটি এমন রূপান্তর করা যা মূলত আয়তক্ষেত্রটি প্রাক-warping দ্বারা প্রক্ষেপণটি আর বিকৃত হয় না।
আমার প্রথম পদ্ধতির 2D তে সমস্ত কিছু করা ছিল: প্রথমে warpPerspective()
স্ক্যান করা পয়েন্টগুলি থেকে অভ্যন্তরীণ আয়তক্ষেত্রের পয়েন্টগুলিতে একটি দৃষ্টিভঙ্গি রূপান্তর (ওপেনসিভি ব্যবহার করে ) গণনা করুন এবং আয়তক্ষেত্রের বিপরীত প্রয়োগ করুন। এটি কাজ করে দেখে মনে হচ্ছে তবে এটি খুব ধীর ছিল কারণ এটি জিপিইউতে সরবরাহ করা যায়নি।
দ্বিতীয় পদ্ধতিরটি ছিল এক্সএনএর রেন্ডারিং বৈশিষ্ট্যগুলি ব্যবহার করার জন্য 3D এ সবকিছু করা। প্রথমে, আমি একটি বিমান প্রদর্শন করব, কিনেক্টের সাহায্যে এর কোণগুলি স্ক্যান করব এবং প্রাপ্ত বিমানটি 3 ডি-পয়েন্টগুলি মূল বিমানটিতে ম্যাপ করব। তাত্ত্বিকভাবে, আমি 2D- পদ্ধতির মতো আমি বিমানে দৃষ্টিভঙ্গির রূপান্তরটির বিপরীতটি প্রয়োগ করতে পারি। তবে, এক্সএনএ যেহেতু একটি ভিউ এবং প্রজেকশন ম্যাট্রিক্সের সাথে কাজ করে, আমি কেবল কোনও ফাংশনটিতে কল করতে warpPerspective()
এবং পছন্দসই ফলাফল পেতে পারি না। আমার ক্যামেরার ভিউ এবং প্রজেকশন ম্যাট্রিক্সের জন্য নতুন প্যারামিটারগুলি গণনা করা দরকার।
প্রশ্ন: এই প্যারামিটারগুলি গণনা করে এগুলি দুটি ম্যাট্রিকে (ভিউ এবং প্রজেকশন) বিভক্ত করা সম্ভব? যদি তা না হয় তবে আমি কী ব্যবহার করতে পারি?
warpPespective
? আমি ওপেনসিভির সাথে পরিচিত নই, তবে দস্তাবেজটি দেখে মনে হচ্ছে এই ফাংশনটি কেবল একটি চিত্রের দৃষ্টিভঙ্গি প্রয়োগ করে । নাকি আমি বিভ্রান্ত? যাইহোক, সম্ভবত আপনার প্রথম প্রয়োগের আরও বিশদ যুক্ত সাহায্য করবে।