একটি প্রতিক্রিয়া নেটিভ অ্যাপে TensorFlow.js ব্যবহার করুন

এই টিউটোরিয়ালে আপনি একটি রিঅ্যাক্ট নেটিভ উদাহরণ অ্যাপ ইনস্টল এবং চালাবেন যা রিয়েল-টাইম পোজ সনাক্তকরণের জন্য একটি TensorFlow পোজ সনাক্তকরণ মডেল ( MoveNet.SinglePose.Lightning ) ব্যবহার করে। React Native-এর জন্য TensorFlow.js প্ল্যাটফর্ম অ্যাডাপ্টারে নির্মিত, অ্যাপটি সামনে এবং পিছনের ক্যামেরার সাথে পোর্ট্রেট এবং ল্যান্ডস্কেপ মোড উভয়ই সমর্থন করে।

পূর্বশর্ত

এই টিউটোরিয়ালটি সম্পূর্ণ করতে, আপনার উন্নয়ন পরিবেশে নিম্নলিখিত ইনস্টল করা প্রয়োজন:

TensorFlow.js রিঅ্যাক্ট নেটিভ প্ল্যাটফর্ম অ্যাডাপ্টার expo-gl এবং expo-gl-cpp এর উপর নির্ভর করে, তাই আপনাকে অবশ্যই এক্সপো দ্বারা সমর্থিত রিঅ্যাক্ট নেটিভের একটি সংস্করণ ব্যবহার করতে হবে।

উদাহরণ অ্যাপটি ইনস্টল করুন এবং চালান

  1. tfjs-examples সংগ্রহস্থল ক্লোন করুন বা ডাউনলোড করুন।
  2. react-native/pose-detection ডিরেক্টরিতে পরিবর্তন করুন:

    cd tfjs-examples/react-native/pose-detection
    
  3. নির্ভরতা ইনস্টল করুন:

    yarn
    
  4. স্থানীয়ভাবে উদাহরণ অ্যাপ্লিকেশন চালান:

    yarn start
    

আপনি যখন অ্যাপটি চালান, টার্মিনাল একটি QR কোড প্রদর্শন করে।

Starting Metro Bundler
▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄
█ ▄▄▄▄▄ █▄▀ ▀   ███ ▄▄▄▄▄ █
█ █   █ █   █▀ █ ▀█ █   █ █
█ █▄▄▄█ █▄█▀ ▄▀█▄▀█ █▄▄▄█ █
█▄▄▄▄▄▄▄█▄█ █ █▄▀ █▄▄▄▄▄▄▄█
█▄  ▄▀█▄█ █ ▄ ▀▀▄▄▄██▄ ▄▀▄█
██▄▀▀█▀▄█▀  ▄▄▀ █▀█ ▀██▀███
█▄▄▀ ▀▀▄▄▄ ▄▀ ▄█ ▄█ ▄ █ █▀█
█▀▄▄ ▄▄▄▀ ▄  █▄██ ▀▀█▀▀█ ▀█
███▄▄██▄█▀▄██▄  ▄ ▄▄▄ ▀▄█▀█
█ ▄▄▄▄▄ ██  ▀██▀█ █▄█ █▄▄ █
█ █   █ █▀█ ███▀▀▄▄   █▀ ▀█
█ █▄▄▄█ █ ▀▀▀▀▀▄▀▄▀▄█▄▄ ▄██
█▄▄▄▄▄▄▄█▄██▄▄██▄██████▄▄▄█

› Metro waiting on exp://192.168.0.6:19000

এক্সপো গো ইনস্টল করা ফোন বা অন্য টেস্ট ডিভাইস দিয়ে QR কোড স্ক্যান করুন। এক্সপো গো-তে উদাহরণ অ্যাপটি খোলা উচিত।

নীচের স্ক্রিনশটগুলি অ্যাপটিকে ব্যবহারকারীর শরীরের মূল পয়েন্টগুলি সনাক্ত এবং রেন্ডারিং দেখায়৷

প্রতিকৃতিল্যান্ডস্কেপ

উদাহরণে TensorFlow.js লাইব্রেরিগুলি কীভাবে ব্যবহার করা হয় তা বোঝার জন্য, App.tsx দেখুন। সেই ফাইলের মন্তব্যগুলি ব্যাখ্যা করে যে কীভাবে টেনসরের আকার কনফিগার করতে হয়, মডেলটি লোড করতে হয়, পোজ সনাক্তকরণ চালাতে হয় এবং আরও অনেক কিছু।

TensorFlow.js ব্যবহার করে ভঙ্গি সনাক্তকরণ সম্পর্কে আরও জানতে, এই ব্লগ পোস্টটি দেখুন।

প্রতিক্রিয়াশীল নেটিভ প্ল্যাটফর্ম অ্যাডাপ্টার সম্পর্কে আরও

React Native-এর জন্য TensorFlow.js প্ল্যাটফর্ম অ্যাডাপ্টার TensorFlow.js-এর GPU-এক্সিলারেটেড এক্সিকিউশন প্রদান করে এবং TensorFlow.js ব্যবহারের সমস্ত প্রধান মোড সমর্থন করে:

  • মডেল অনুমান এবং প্রশিক্ষণ উভয়ের জন্য সমর্থন
  • Expo-gl এর মাধ্যমে WebGL-এর সাথে GPU সমর্থন
  • ওয়েব থেকে পূর্বপ্রশিক্ষিত মডেল লোড করার জন্য সমর্থন
  • IOHandler অ্যাসিঙ্ক স্টোরেজ থেকে লোডিং মডেল এবং অ্যাপ বান্ডেলে সংকলিত মডেলগুলিকে সমর্থন করে

সম্পূর্ণ ইনস্টলেশন নির্দেশাবলীর জন্য, রিএক্ট নেটিভ প্ল্যাটফর্ম অ্যাডাপ্টার README দেখুন।

প্রতিক্রিয়া নেটিভের জন্য TensorFlow.js সমস্যা সমাধান করুন

যদি আপনার অ্যাপ স্টার্টআপে ক্র্যাশ হয়ে যায়, তাহলে আপনাকে আপনার সেটআপ পরিবর্তন করতে হতে পারে। প্রতিক্রিয়া নেটিভের জন্য প্ল্যাটফর্ম অ্যাডাপ্টার সেট আপ সম্পর্কে আরও জানতে, README দেখুন।

,

এই টিউটোরিয়ালে আপনি একটি রিঅ্যাক্ট নেটিভ উদাহরণ অ্যাপ ইনস্টল এবং চালাবেন যা রিয়েল-টাইম পোজ সনাক্তকরণের জন্য একটি TensorFlow পোজ সনাক্তকরণ মডেল ( MoveNet.SinglePose.Lightning ) ব্যবহার করে। React Native-এর জন্য TensorFlow.js প্ল্যাটফর্ম অ্যাডাপ্টারে নির্মিত, অ্যাপটি সামনে এবং পিছনের ক্যামেরার সাথে পোর্ট্রেট এবং ল্যান্ডস্কেপ মোড উভয়ই সমর্থন করে।

পূর্বশর্ত

এই টিউটোরিয়ালটি সম্পূর্ণ করতে, আপনার উন্নয়ন পরিবেশে নিম্নলিখিত ইনস্টল করা প্রয়োজন:

TensorFlow.js রিঅ্যাক্ট নেটিভ প্ল্যাটফর্ম অ্যাডাপ্টার expo-gl এবং expo-gl-cpp এর উপর নির্ভর করে, তাই আপনাকে অবশ্যই এক্সপো দ্বারা সমর্থিত রিঅ্যাক্ট নেটিভের একটি সংস্করণ ব্যবহার করতে হবে।

উদাহরণ অ্যাপটি ইনস্টল করুন এবং চালান

  1. tfjs-examples সংগ্রহস্থল ক্লোন করুন বা ডাউনলোড করুন।
  2. react-native/pose-detection ডিরেক্টরিতে পরিবর্তন করুন:

    cd tfjs-examples/react-native/pose-detection
    
  3. নির্ভরতা ইনস্টল করুন:

    yarn
    
  4. স্থানীয়ভাবে উদাহরণ অ্যাপ্লিকেশন চালান:

    yarn start
    

আপনি যখন অ্যাপটি চালান, টার্মিনাল একটি QR কোড প্রদর্শন করে।

Starting Metro Bundler
▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄
█ ▄▄▄▄▄ █▄▀ ▀   ███ ▄▄▄▄▄ █
█ █   █ █   █▀ █ ▀█ █   █ █
█ █▄▄▄█ █▄█▀ ▄▀█▄▀█ █▄▄▄█ █
█▄▄▄▄▄▄▄█▄█ █ █▄▀ █▄▄▄▄▄▄▄█
█▄  ▄▀█▄█ █ ▄ ▀▀▄▄▄██▄ ▄▀▄█
██▄▀▀█▀▄█▀  ▄▄▀ █▀█ ▀██▀███
█▄▄▀ ▀▀▄▄▄ ▄▀ ▄█ ▄█ ▄ █ █▀█
█▀▄▄ ▄▄▄▀ ▄  █▄██ ▀▀█▀▀█ ▀█
███▄▄██▄█▀▄██▄  ▄ ▄▄▄ ▀▄█▀█
█ ▄▄▄▄▄ ██  ▀██▀█ █▄█ █▄▄ █
█ █   █ █▀█ ███▀▀▄▄   █▀ ▀█
█ █▄▄▄█ █ ▀▀▀▀▀▄▀▄▀▄█▄▄ ▄██
█▄▄▄▄▄▄▄█▄██▄▄██▄██████▄▄▄█

› Metro waiting on exp://192.168.0.6:19000

এক্সপো গো ইনস্টল করা ফোন বা অন্য টেস্ট ডিভাইস দিয়ে QR কোড স্ক্যান করুন। এক্সপো গো-তে উদাহরণ অ্যাপটি খোলা উচিত।

নীচের স্ক্রিনশটগুলি অ্যাপটিকে ব্যবহারকারীর শরীরের মূল পয়েন্টগুলি সনাক্ত এবং রেন্ডারিং দেখায়৷

প্রতিকৃতিল্যান্ডস্কেপ

উদাহরণে TensorFlow.js লাইব্রেরিগুলি কীভাবে ব্যবহার করা হয় তা বোঝার জন্য, App.tsx দেখুন। সেই ফাইলের মন্তব্যগুলি ব্যাখ্যা করে যে কীভাবে টেনসরের আকার কনফিগার করতে হয়, মডেলটি লোড করতে হয়, পোজ সনাক্তকরণ চালাতে হয় এবং আরও অনেক কিছু।

TensorFlow.js ব্যবহার করে ভঙ্গি সনাক্তকরণ সম্পর্কে আরও জানতে, এই ব্লগ পোস্টটি দেখুন।

প্রতিক্রিয়াশীল নেটিভ প্ল্যাটফর্ম অ্যাডাপ্টার সম্পর্কে আরও

React Native-এর জন্য TensorFlow.js প্ল্যাটফর্ম অ্যাডাপ্টার TensorFlow.js-এর GPU-এক্সিলারেটেড এক্সিকিউশন প্রদান করে এবং TensorFlow.js ব্যবহারের সমস্ত প্রধান মোড সমর্থন করে:

  • মডেল অনুমান এবং প্রশিক্ষণ উভয়ের জন্য সমর্থন
  • Expo-gl এর মাধ্যমে WebGL-এর সাথে GPU সমর্থন
  • ওয়েব থেকে পূর্বপ্রশিক্ষিত মডেল লোড করার জন্য সমর্থন
  • IOHandler অ্যাসিঙ্ক স্টোরেজ থেকে লোডিং মডেল এবং অ্যাপ বান্ডেলে সংকলিত মডেলগুলিকে সমর্থন করে

সম্পূর্ণ ইনস্টলেশন নির্দেশাবলীর জন্য, রিএক্ট নেটিভ প্ল্যাটফর্ম অ্যাডাপ্টার README দেখুন।

প্রতিক্রিয়া নেটিভের জন্য TensorFlow.js সমস্যা সমাধান করুন

যদি আপনার অ্যাপ স্টার্টআপে ক্র্যাশ হয়ে যায়, তাহলে আপনাকে আপনার সেটআপ পরিবর্তন করতে হতে পারে। প্রতিক্রিয়া নেটিভের জন্য প্ল্যাটফর্ম অ্যাডাপ্টার সেট আপ সম্পর্কে আরও জানতে, README দেখুন।