প্ল্যাটফর্ম-নির্দিষ্ট গাইড
ARCore-এ অগমেন্টেড ইমেজ APIs আপনাকে AR অ্যাপ তৈরি করতে দেয় যা ব্যবহারকারীর পরিবেশে পোস্টার বা পণ্যের প্যাকেজিংয়ের মতো 2D ছবি শনাক্ত করতে এবং বৃদ্ধি করতে পারে।
আপনি রেফারেন্স ইমেজ একটি সেট প্রদান. ARCore প্রতিটি চিত্রের গ্রেস্কেল তথ্য থেকে বৈশিষ্ট্যগুলি বের করতে একটি কম্পিউটার ভিশন অ্যালগরিদম ব্যবহার করে এবং এক বা একাধিক অগমেন্টেড ইমেজ ডেটাবেসে এই বৈশিষ্ট্যগুলির একটি উপস্থাপনা সঞ্চয় করে৷
রানটাইমে, ARCore ব্যবহারকারীর পরিবেশে সমতল পৃষ্ঠগুলিতে এই বৈশিষ্ট্যগুলি অনুসন্ধান করে। এটি ARCore-কে বিশ্বে এই ছবিগুলি সনাক্ত করতে দেয় এবং একটি প্রদান না করা হলে তাদের অবস্থান, অভিযোজন এবং আকার অনুমান করে৷
ক্ষমতা
ARCore একসাথে 20টি ছবি ট্র্যাক করতে পারে। ARCore একই সাথে একই চিত্রের একাধিক দৃষ্টান্ত সনাক্ত বা ট্র্যাক করবে না।
প্রতিটি অগমেন্টেড ইমেজ ডাটাবেস 1,000 রেফারেন্স ইমেজ পর্যন্ত তথ্য সংরক্ষণ করতে পারে। ডাটাবেসের সংখ্যার কোনো সীমা নেই, তবে যে কোনো সময়ে শুধুমাত্র একটি ডাটাবেস সক্রিয় হতে পারে।
ছবিগুলি রানটাইমে একটি অগমেন্টেড ইমেজ ডাটাবেসে যোগ করা যেতে পারে, প্রতি ডাটাবেসের সীমা 1,000-ছবি পর্যন্ত। একটি নেটওয়ার্ক সংযোগ ব্যবহার করে পূর্বে তৈরি ডাটাবেস ডাউনলোড করা সম্ভব।
একটি ছবি যোগ করার সময়, শনাক্ত করার জন্য ছবির শারীরিক আকার প্রদান করা সম্ভব। এটি করার ফলে চিত্র সনাক্তকরণ কর্মক্ষমতা উন্নত হবে।
যদি কোনো ফিজিক্যাল মাপ দেওয়া না থাকে, তাহলে ARCore আকারের অনুমান করে এবং সময়ের সাথে সাথে এই অনুমানটিকে পরিমার্জন করে।
যদি একটি শারীরিক আকার প্রদান করা হয়, ARCore প্রদত্ত আকার ব্যবহার করে এবং আপাত বা প্রকৃত আকার এবং প্রদত্ত শারীরিক আকারের মধ্যে কোনো পার্থক্য উপেক্ষা করে ছবির অবস্থান এবং অভিযোজন অনুমান করে।
ARCore সাড়া দিতে পারে এবং ছবিগুলিকে ট্র্যাক করতে পারে যেগুলি হল:
যে ছবিগুলি জায়গায় স্থির আছে, যেমন একটি দেয়ালে ঝুলানো একটি প্রিন্ট বা একটি টেবিলের উপর একটি ম্যাগাজিন
চলমান ছবি, যেমন একটি পাসিং বাসে বিজ্ঞাপন বা ব্যবহারকারীর হাতে হাত নাড়াতে থাকা সমতল বস্তুর একটি ছবি।
একবার ARCore একটি চিত্র ট্র্যাক করা শুরু করলে, এটি প্রতিটি ফ্রেমের চিত্রের অবস্থান এবং অভিযোজনের জন্য অনুমান প্রদান করে। ARCore এই অনুমানগুলিকে ক্রমাগত পরিমার্জন করে কারণ এটি আরও ডেটা সংগ্রহ করে৷
একবার একটি ছবি শনাক্ত হয়ে গেলে, ARCore ছবির অবস্থান এবং অভিযোজন "ট্র্যাকিং" চালিয়ে যায়, এমনকি যখন ইমেজ সাময়িকভাবে ক্যামেরা ভিউ থেকে সরে যায় কারণ ব্যবহারকারী তাদের ডিভাইসটি সরিয়ে নিয়েছে। যখন এটি ঘটে, ARCore অনুমান করে যে চিত্রটির অবস্থান এবং অভিযোজন স্থির, এবং চিত্রটি নিজেই পরিবেশের মধ্য দিয়ে চলাচল করছে না।
সমস্ত ট্র্যাকিং ডিভাইসে ঘটে। ছবি সনাক্ত এবং ট্র্যাক করতে কোন ইন্টারনেট সংযোগের প্রয়োজন নেই।
প্রয়োজনীয়তা
ছবি অবশ্যই :
প্রাথমিকভাবে সনাক্ত করার জন্য ক্যামেরা ফ্রেমের কমপক্ষে 25% পূরণ করুন।
সমতল হও (উদাহরণস্বরূপ, কুঁচকানো বা বোতলের চারপাশে মোড়ানো নয়)।
ক্যামেরার স্পষ্ট দৃশ্যে থাকুন। এগুলিকে আংশিকভাবে অস্পষ্ট করা উচিত নয়, একটি অত্যন্ত তির্যক কোণে দেখা উচিত নয় বা মোশন ব্লারের কারণে ক্যামেরাটি খুব দ্রুত গতিতে চলা অবস্থায় দেখা উচিত নয়।
CPU ব্যবহার এবং কর্মক্ষমতা বিবেচনা
কোন ARCore বৈশিষ্ট্যগুলি ইতিমধ্যে সক্ষম করা আছে তার উপর নির্ভর করে, অগমেন্টেড ইমেজগুলি সক্ষম করলে ARCore-এর CPU ব্যবহার বাড়তে পারে৷ যখন আপনার AR অভিজ্ঞতার প্রয়োজন হয় না তখন অব্যবহৃত বৈশিষ্ট্যগুলি অক্ষম করার কথা বিবেচনা করুন। এটি আপনার অ্যাপে অতিরিক্ত CPU চক্র উপলব্ধ করবে এবং তাপ কার্যক্ষমতা এবং ব্যাটারির আয়ু উন্নত করবে।
অতিরিক্ত তথ্যের জন্য, কর্মক্ষমতা বিবেচনা দেখুন।
সর্বোত্তম অনুশীলন
রেফারেন্স ছবি নির্বাচন করার জন্য টিপস
- ছবির রেজোলিউশন কমপক্ষে 300 x 300 পিক্সেল হওয়া উচিত। উচ্চ রেজোলিউশনের ছবি ব্যবহার করলে কর্মক্ষমতা উন্নত হয় না ।
- রেফারেন্স চিত্রগুলি PNG বা JPEG ফাইল বিন্যাসে প্রদান করা যেতে পারে।
- রঙের তথ্য ব্যবহার করা হয় না । রঙ এবং সমতুল্য গ্রেস্কেল ছবি উভয়ই রেফারেন্স ইমেজ হিসাবে বা রানটাইমে ব্যবহারকারীদের দ্বারা ব্যবহার করা যেতে পারে।
- ভারী কম্প্রেশন সহ ছবিগুলি এড়িয়ে চলুন কারণ এটি বৈশিষ্ট্য নিষ্কাশনে হস্তক্ষেপ করে৷
- প্রচুর পরিমাণে জ্যামিতিক বৈশিষ্ট্য বা খুব কম বৈশিষ্ট্য (যেমন বারকোড, কিউআর কোড, লোগো এবং অন্যান্য লাইন আর্ট) রয়েছে এমন চিত্রগুলি এড়িয়ে চলুন কারণ এর ফলে সনাক্তকরণ এবং ট্র্যাকিং কার্যক্ষমতা খারাপ হবে।
- পুনরাবৃত্ত প্যাটার্ন সহ ছবিগুলি এড়িয়ে চলুন কারণ এটি সনাক্তকরণ এবং ট্র্যাকিংয়ে সমস্যা সৃষ্টি করতে পারে।
প্রতিটি ছবির জন্য
0
থেকে100
এর মধ্যে একটি গুণমান স্কোর পেতে ARCore SDK-এ অন্তর্ভুক্তarcoreimg
টুল ব্যবহার করুন। আমরা কমপক্ষে 75 এর একটি গুণমানের স্কোর সুপারিশ করি ৷ এখানে দুটি উদাহরণ আছে:উদাহরণ চিত্র 1 উদাহরণ চিত্র 2 স্কোর: 0
স্কোর: 100
পুনরাবৃত্তিমূলক জ্যামিতিক বৈশিষ্ট্য রয়েছে পর্যাপ্ত রেজোলিউশন; অনেক অনন্য বৈশিষ্ট্য রয়েছে
ইমেজ ডাটাবেস তৈরির জন্য টিপস
- একটি ইমেজ ডাটাবেস ফাইল তৈরি করতে Android এর জন্য arcoreimg টুল ব্যবহার করুন। এই টুলটি শুধুমাত্র Android এবং Android NDK বিকাশের জন্য উপলব্ধ। এটি ইউনিটি SDK এবং ARCore অবাস্তব প্লাগইনের মধ্যে তৈরি করা হয়েছে।
- ডাটাবেস রেফারেন্স চিত্রগুলিতে গ্রেস্কেল ডেটা থেকে নিষ্কাশিত বৈশিষ্ট্যগুলির একটি সংকুচিত উপস্থাপনা সংরক্ষণ করে। প্রতিটি ইমেজ এন্ট্রি প্রায় 6 KB দখল করে।
- রানটাইমে ডাটাবেসে একটি ছবি যোগ করতে প্রায় 30 ms লাগে।
- UI থ্রেড ব্লক করা এড়াতে কর্মী থ্রেডে ছবি যোগ করুন।
- অথবা, যদি সম্ভব হয়, ARCore SDK-এ অন্তর্ভুক্ত
arcoreimg
টুল ব্যবহার করে কম্পাইলের সময় ছবি যোগ করুন।
- আপনি যদি একটি ছবির প্রত্যাশিত শারীরিক আকার জানেন, এটি নির্দিষ্ট করুন। এই তথ্য সনাক্তকরণ এবং ট্র্যাকিং কর্মক্ষমতা উন্নত করে, বিশেষ করে বড় শারীরিক ছবিগুলির জন্য (75 সেন্টিমিটারের বেশি)।
- ডাটাবেসে অনেক অব্যবহৃত ছবি রাখা এড়িয়ে চলুন কারণ সিপিইউ ব্যবহার বৃদ্ধির কারণে সিস্টেমের কর্মক্ষমতার উপর সামান্য প্রভাব পড়ে।
ট্র্যাকিং অপ্টিমাইজ করার জন্য টিপস
- যদি আপনার ইমেজ তার প্রারম্ভিক অবস্থান থেকে সরে না যায় (উদাহরণস্বরূপ, একটি দেয়ালে লাগানো একটি পোস্টার), আপনি ট্র্যাকিং স্থিতিশীলতা বাড়ানোর জন্য ছবিতে একটি অ্যাঙ্কর সংযুক্ত করতে পারেন।
- প্রাথমিক সনাক্তকরণের জন্য ফিজিক্যাল ইমেজটি ক্যামেরা ইমেজের কমপক্ষে 25% দখল করতে হবে। আপনি ব্যবহারকারীদের তাদের ক্যামেরা ফ্রেমে ফিজিক্যাল ইমেজ ফিট করার জন্য অনুরোধ করতে পারেন।
- ছবির ট্র্যাকিং অবস্থা সম্পূর্ণ ট্র্যাকিং না হওয়া পর্যন্ত ছবির ভঙ্গি এবং আকারের অনুমান ব্যবহার করবেন না। যখন একটি ছবি প্রাথমিকভাবে ARCore দ্বারা শনাক্ত করা হয়, এবং কোন প্রত্যাশিত শারীরিক আকার নির্দিষ্ট করা হয়নি, তখন এর ট্র্যাকিং অবস্থা বিরাম দেওয়া হবে। এর মানে হল যে ARCore ছবিটিকে চিনতে পেরেছে, কিন্তু 3D স্পেসে এর অবস্থান অনুমান করার জন্য যথেষ্ট ডেটা সংগ্রহ করেনি।