Sipeed MaiX বোর্ড (Kendryte K210) দিয়ে বস্তু সনাক্তকরণ: Ste টি ধাপ
Sipeed MaiX বোর্ড (Kendryte K210) দিয়ে বস্তু সনাক্তকরণ: Ste টি ধাপ
Anonim
Image
Image

Sipeed MaiX বোর্ডগুলির সাথে চিত্র স্বীকৃতি সম্পর্কে আমার আগের নিবন্ধের ধারাবাহিকতা হিসাবে, আমি বস্তু সনাক্তকরণের উপর দৃষ্টি নিবদ্ধ করে আরেকটি টিউটোরিয়াল লেখার সিদ্ধান্ত নিয়েছি। কেনড্রাইট কে 210 চিপের সাথে সম্প্রতি কিছু আকর্ষণীয় হার্ডওয়্যার পপ আপ হয়েছে, যার মধ্যে রয়েছে এজ কম্পিউটিংয়ের জন্য সিড এআই হ্যাট, এম 5 স্ট্যাকের এম 5 স্টিকভি এবং ডিএফরবোটের হুস্কিলেন্স (যদিও এটির মালিকানাধীন ফার্মওয়্যার রয়েছে এবং সম্পূর্ণ নতুনদের জন্য আরও লক্ষ্যযুক্ত)। এর সস্তা দামের কারণে, কেন্ড্রাইট কে 210 তাদের প্রকল্পে কম্পিউটার ভিশন যুক্ত করতে ইচ্ছুক ব্যক্তিদের কাছে আবেদন করেছে। কিন্তু যথারীতি চীনা হার্ডওয়্যার পণ্যের সাথে, প্রযুক্তি সহায়তার অভাব রয়েছে এবং এটি এমন কিছু যা আমি আমার নিবন্ধ এবং ভিডিওগুলির সাথে উন্নত করার চেষ্টা করছি। কিন্তু মনে রাখবেন, আমি কেন্ড্রাইট বা সাইপড ডেভেলপার দলে নেই এবং তাদের পণ্য সম্পর্কিত সমস্ত প্রশ্নের উত্তর দিতে পারছি না।

এটা মাথায় রেখে, শুরু করা যাক! বস্তুর স্বীকৃতি CNN মডেলগুলি কীভাবে কাজ করে আমরা সংক্ষিপ্ত (এবং সরলীকৃত) ওভারভিউ দিয়ে শুরু করব।

আপডেট মে ২০২০: K210 বোর্ডের সাথে অবজেক্ট ডিটেকশনে আমার নিবন্ধ এবং ভিডিওটি এখনও অনেক জনপ্রিয় এবং ইউটিউব এবং গুগলের শীর্ষ ফলাফলের মধ্যে দেখে, আমি এএক্সএলরেট, কেরাস-ভিত্তিক কাঠামো সম্পর্কে তথ্য অন্তর্ভুক্ত করার জন্য নিবন্ধটি আপডেট করার সিদ্ধান্ত নিয়েছি প্রান্ত আমি বিকাশ। aXeleRate, মূলত, স্ক্রিপ্ট সংগ্রহ থেকে আমি ইমেজ স্বীকৃতি/বস্তু সনাক্তকরণ মডেল প্রশিক্ষণের জন্য ব্যবহার করা হয় - একটি একক কাঠামোর মধ্যে মিলিত এবং Google Colab- এ কর্মপ্রবাহের জন্য অপ্টিমাইজ করা। এটি ব্যবহার করা আরও সুবিধাজনক এবং আরও আপ টু ডেট।

নিবন্ধের পুরানো সংস্করণের জন্য, আপনি এটি এখনও steemit.com এ দেখতে পারেন।

ধাপ 1: অবজেক্ট ডিটেকশন মডেল আর্কিটেকচার ব্যাখ্যা করা হয়েছে

অবজেক্ট ডিটেকশন মডেল আর্কিটেকচার ব্যাখ্যা করা হয়েছে
অবজেক্ট ডিটেকশন মডেল আর্কিটেকচার ব্যাখ্যা করা হয়েছে
অবজেক্ট ডিটেকশন মডেল আর্কিটেকচার ব্যাখ্যা করা হয়েছে
অবজেক্ট ডিটেকশন মডেল আর্কিটেকচার ব্যাখ্যা করা হয়েছে

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

এখানে যখন অবজেক্ট ডিটেকশন মডেলগুলি কাজে আসে। এই নিবন্ধে আমরা YOLO (আপনি শুধুমাত্র একবার দেখুন) আর্কিটেকচার ব্যবহার করব এবং এই বিশেষ স্থাপত্যের অভ্যন্তরীণ যান্ত্রিকতার উপর ব্যাখ্যাটি ফোকাস করব।

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

সুতরাং, YOLO আর্কিটেকচার নিউরাল নেটওয়ার্ক ইমেজে একটি অবজেক্ট ডিটেকশন করার সময় কী ঘটছে সে সম্পর্কে এখানে একটি শীর্ষ স্তরের দৃশ্য রয়েছে। বৈশিষ্ট্য এক্সট্রাক্টর নেটওয়ার্ক দ্বারা সনাক্ত করা বৈশিষ্ট্য অনুসারে, প্রতিটি গ্রিড সেলের জন্য পূর্বাভাসের একটি সেট তৈরি করা হয়, যার মধ্যে অ্যাঙ্কর অফসেট, নোঙ্গর সম্ভাবনা এবং নোঙ্গর শ্রেণী অন্তর্ভুক্ত থাকে। তারপর আমরা কম সম্ভাবনা এবং voila সঙ্গে ভবিষ্যদ্বাণী বাতিল!

পদক্ষেপ 2: পরিবেশ প্রস্তুত করুন

পরিবেশ প্রস্তুত করুন
পরিবেশ প্রস্তুত করুন

aXeleRate penny4860, SVHN yolo-v2 ডিজিট ডিটেক্টরের চমৎকার প্রকল্পের উপর ভিত্তি করে তৈরি। axeleRate কেরাসে YOLO ডিটেক্টরের এই বাস্তবায়নকে পরবর্তী স্তরে নিয়ে যায় এবং ইমেজ রিকগনিশন/অবজেক্ট ডিটেকশন এবং ইমেজ সেগমেন্টেশন নেটওয়ার্কের বিভিন্ন ব্যাকএন্ডের সাথে প্রশিক্ষণ এবং রূপান্তর করার জন্য এর সুবিধাজনক কনফিগারেশন সিস্টেম ব্যবহার করে।

এক্সেলরেট ব্যবহার করার দুটি উপায় হল: উবুন্টু মেশিনে বা গুগল কোলাবে স্থানীয়ভাবে চালানো। গুগল কোলাবে চলার জন্য, এই উদাহরণটি দেখুন:

পাসকাল-ভিওসি অবজেক্ট ডিটেকশন কোলাব নোটবুক

আপনার মডেলটিকে স্থানীয়ভাবে প্রশিক্ষণ দেওয়া এবং হার্ডওয়্যার এক্সিলারেশনের সাথে এটি ব্যবহার করা রপ্তানি করা এখন অনেক সহজ। আমি আপনার প্রকল্পটিকে অন্যদের থেকে আলাদা রাখতে এবং দ্বন্দ্ব এড়াতে অ্যানাকোন্ডা পরিবেশে সমস্ত প্রয়োজনীয় নির্ভরতা ইনস্টল করার সুপারিশ করছি।

ইনস্টলারটি এখান থেকে ডাউনলোড করুন।

ইনস্টলেশন সম্পন্ন হওয়ার পরে, একটি নতুন পরিবেশ তৈরি করুন:

conda create -n yolo python = 3.7

আসুন নতুন পরিবেশ সক্রিয় করি

conda সক্রিয় yolo

আপনার ব্যাশ শেলের আগে একটি উপসর্গ পরিবেশের নামের সাথে উপস্থিত হবে, যা নির্দেশ করে যে আপনি এখন সেই পরিবেশে কাজ করছেন।

আপনার স্থানীয় মেশিনে aXeleRate ইনস্টল করুন

pip install git+https://github.com/AIWintermuteAI/aXeleRate

এবং তারপরে প্রশিক্ষণ এবং অনুমানের জন্য আপনার প্রয়োজনীয় স্ক্রিপ্টগুলি ডাউনলোড করতে এটি চালান:

গিট ক্লোন

আপনি axeleRate ফোল্ডারে test_training.py দিয়ে দ্রুত পরীক্ষা চালাতে পারেন। এটি প্রতিটি মডেল প্রকারের জন্য প্রশিক্ষণ এবং অনুমান চালাবে, প্রশিক্ষিত মডেল সংরক্ষণ এবং রূপান্তর করবে। যেহেতু এটি শুধুমাত্র 5 টি যুগের জন্য প্রশিক্ষণ এবং ডেটাসেট খুব ছোট, আপনি দরকারী মডেলগুলি পেতে সক্ষম হবেন না, তবে এই স্ক্রিপ্টটি কেবল ত্রুটির অনুপস্থিতির জন্য পরীক্ষা করার জন্য।

ধাপ 3: কেরাস দিয়ে একটি অবজেক্ট ডিটেকশন মডেল প্রশিক্ষণ দিন

কেরাস দিয়ে একটি অবজেক্ট ডিটেকশন মডেল প্রশিক্ষণ দিন
কেরাস দিয়ে একটি অবজেক্ট ডিটেকশন মডেল প্রশিক্ষণ দিন

এখন আমরা কনফিগারেশন ফাইল সহ একটি প্রশিক্ষণ স্ক্রিপ্ট চালাতে পারি। যেহেতু YOLO অবজেক্ট ডিটেক্টরের কেরাস বাস্তবায়ন বেশ জটিল, কোডের প্রতিটি প্রাসঙ্গিক অংশ ব্যাখ্যা করার পরিবর্তে, আমি ব্যাখ্যা করব কিভাবে প্রশিক্ষণ কনফিগার করা যায় এবং প্রাসঙ্গিক মডিউলগুলিও বর্ণনা করা হয়, যদি আপনি নিজে কিছু পরিবর্তন করতে চান।

একটি খেলনা উদাহরণ দিয়ে শুরু করা যাক এবং একটি র্যাকুন ডিটেক্টরকে প্রশিক্ষণ দিন। /Config ফোল্ডারের ভিতরে একটি কনফিগ ফাইল আছে, raccoon_detector.json। আমরা MobileNet7_5 কে স্থাপত্য হিসেবে বেছে নিই (যেখানে 7_5 হল আসল মোবাইলনেট বাস্তবায়নের আলফা প্যারামিটার, নেটওয়ার্কের প্রস্থ নিয়ন্ত্রণ করে) এবং ইনপুট সাইজ হিসেবে 224x224। আসুন কনফিগের সবচেয়ে গুরুত্বপূর্ণ পরামিতিগুলি দেখুন:

প্রকার হল মডেল ফ্রন্টএন্ড - ক্লাসিফায়ার, ডিটেক্টর বা সেগনেট আর্কিটেকচার হল মডেল ব্যাকএন্ড (ফিচার এক্সট্রাক্টর)

- সম্পূর্ণ Yolo - Tiny Yolo - MobileNet1_0 - MobileNet7_5 - MobileNet5_0 - MobileNet2_5 - SqueezeNet - VGG16 - ResNet50

নোঙ্গর সম্পর্কে আরও তথ্যের জন্য, দয়া করে এখানে পড়ুন

লেবেল হল আপনার ডেটাসেটে উপস্থিত লেবেল। গুরুত্বপূর্ণ: দয়া করে, ডেটাসেটে উপস্থিত সমস্ত লেবেলের তালিকা দিন।

অবজেক্ট_স্কেল নির্ধারণ করে বস্তুর পূর্বাভাসকারীদের আত্মবিশ্বাসের ভুল ভবিষ্যদ্বাণীকে কতটা শাস্তি দিতে হবে

no_object_scale নির্ধারণ করে যে অ-বস্তু ভবিষ্যদ্বাণীদের আত্মবিশ্বাসের ভুল ভবিষ্যদ্বাণীকে কতটা শাস্তি দিতে হবে

coord_scale ভুল অবস্থান এবং আকারের পূর্বাভাস (x, y, w, h) কতটা শাস্তি দেবে তা নির্ধারণ করে

class_scale নির্ধারণ করে যে ভুল শ্রেণীর পূর্বাভাস কতটা শাস্তি দিতে হবে

অগুমেন্টেশন - ইমেজ অগুমেন্টেশন, রিসাইজিং, শিফট এবং ব্লার করা যাতে ওভারফিটিং প্রতিরোধ করা যায় এবং ডেটাসেটে আরও বেশি বৈচিত্র্য থাকে।

train_times, validation_times - কতবার ডেটাসেট পুনরাবৃত্তি করতে হবে। আপনার বাড়তি হলে উপকারী

সক্ষম

first_trainable_layer - যদি আপনি একটি প্রাক -প্রশিক্ষিত বৈশিষ্ট্য নেটওয়ার্ক ব্যবহার করেন তবে আপনাকে নির্দিষ্ট স্তরগুলি নিথর করতে দেয়

এখন আমাদের ডেটাসেটটি ডাউনলোড করতে হবে, যা আমি আমার গুগল ড্রাইভে (মূল ডেটাসেট) শেয়ার করেছি, যা একটি রাকুন ডিটেকশন ডেটাসেট, যাতে 150 টি টীকাযুক্ত ছবি রয়েছে।

কনফিগারেশন ফাইলে লাইনগুলি পরিবর্তন করতে ভুলবেন না (train_image_folder, train_annot_folder) সেই অনুযায়ী এবং তারপর নিম্নলিখিত কমান্ড দিয়ে প্রশিক্ষণ শুরু করুন:

python axelerate/train.py -c configs/raccoon_detector.json

train.py.json ফাইল থেকে কনফিগারেশন পড়ে এবং মডেলটিকে axelerate/network/yolo/yolo_frontend.py স্ক্রিপ্ট দিয়ে প্রশিক্ষণ দেয়। yolo/backend/loss.py হল যেখানে কাস্টম লস ফাংশন বাস্তবায়িত হয় এবং yolo/backend/network.py হল যেখানে মডেল তৈরি করা হয় (ইনপুট, ফিচার এক্সট্র্যাক্টর এবং ডিটেকশন লেয়ার একসাথে রাখা)। axelerate/network/common_utils/fit.py হল স্ক্রিপ্ট যা প্রশিক্ষণ প্রক্রিয়া প্রয়োগ করে এবং axelerate/network/common_utils/feature.py- এ বৈশিষ্ট্য নির্যাসকারী রয়েছে। আপনি যদি K210 চিপ এবং মাইক্রোপাইথন ফার্মওয়্যারের সাথে প্রশিক্ষিত মডেল ব্যবহার করতে চান, মেমরির সীমাবদ্ধতার কারণে আপনি MobileNet (2_5, 5_0 এবং 7_5) এবং TinyYolo এর মধ্যে বেছে নিতে পারেন, কিন্তু আমি পেয়েছি MobileNet আরও ভাল সনাক্তকরণ নির্ভুলতা দেয়।

যেহেতু এটি একটি খেলনার উদাহরণ এবং শুধুমাত্র রাকুনের ১৫০ টি চিত্র রয়েছে, তাই প্রশিক্ষণ প্রক্রিয়াটি বেশ দ্রুত হওয়া উচিত, এমনকি জিপিইউ ছাড়াও, যদিও নির্ভুলতা তারকা থেকে অনেক দূরে থাকবে। কাজের সাথে সম্পর্কিত প্রকল্পের জন্য আমি একটি ট্রাফিক সাইন ডিটেক্টর এবং একটি নম্বর ডিটেক্টরকে প্রশিক্ষণ দিয়েছি, উভয় ডেটাসেট কয়েক হাজার প্রশিক্ষণের উদাহরণ অন্তর্ভুক্ত করেছে।

ধাপ 4: এটিকে.kmodel ফরম্যাটে রূপান্তর করুন

এটিকে.kmodel ফরম্যাটে রূপান্তর করুন
এটিকে.kmodel ফরম্যাটে রূপান্তর করুন

অ্যাক্সেলরেটের সাথে, মডেল রূপান্তর স্বয়ংক্রিয়ভাবে সঞ্চালিত হয় - এটি সম্ভবত প্রশিক্ষণ স্ক্রিপ্টগুলির পুরানো সংস্করণ থেকে সবচেয়ে বড় পার্থক্য! প্লাস আপনি মডেল ফাইল এবং প্রশিক্ষণ গ্রাফ সুন্দরভাবে প্রকল্প ফোল্ডারে সংরক্ষিত পাবেন। এছাড়াও আমি খুঁজে পেয়েছি যে অবৈধতা নির্ভুলতা কখনও কখনও বস্তু সনাক্তকরণের জন্য মডেল বাস্তব পারফরম্যান্সের অনুমান দিতে ব্যর্থ হয় এবং এই কারণে আমি বস্তু সনাক্তকরণের মডেলগুলির জন্য একটি বৈধতা মেট্রিক হিসাবে এমএপি যোগ করেছি। আপনি এখানে এমএপি সম্পর্কে আরও পড়তে পারেন।

যদি এমএপি, গড় নির্ভুলতা (আমাদের বৈধতা মেট্রিক) 20 যুগের জন্য উন্নত না হয়, তাহলে প্রশিক্ষণ অকালে বন্ধ হয়ে যাবে। প্রতিবার এমএপি উন্নত হলে, মডেলটি প্রকল্প ফোল্ডারে সংরক্ষণ করা হয়। প্রশিক্ষণ শেষ হওয়ার পর, axeleRate স্বয়ংক্রিয়ভাবে সেরা মডেলটিকে নির্দিষ্ট বিন্যাসে রূপান্তরিত করে - আপনি এখন থেকে "tflite", "k210" বা "edgetpu" নির্বাচন করতে পারেন।

এখন শেষ ধাপে, আসলে Sipeed হার্ডওয়্যারে আমাদের মডেল চালাচ্ছে!

ধাপ 5: মাইক্রোপাইথন ফার্মওয়্যারে চালান

মাইক্রোপাইথন ফার্মওয়্যারে চালান
মাইক্রোপাইথন ফার্মওয়্যারে চালান

C কোড দিয়ে আমাদের অবজেক্ট ডিটেকশন মডেলের সাথে অনুমান চালানো সম্ভব, কিন্তু সুবিধার জন্য আমরা মাইক্রোপাইথন ফার্মওয়্যার এবং MaixPy IDE ব্যবহার করব।

এখান থেকে MaixPy IDE এবং এখান থেকে মাইক্রোপাইথন ফার্মওয়্যার ডাউনলোড করুন। আপনি ফার্মওয়্যার বার্ন করার জন্য পাইথন স্ক্রিপ্ট kflash.py ব্যবহার করতে পারেন অথবা এখানে আলাদা GUI ফ্ল্যাশ টুল ডাউনলোড করতে পারেন।

একটি SD কার্ডের রুট থেকে model.kmodel কপি করুন এবং Sipeed Maix Bit (অথবা অন্যান্য K210 ডিভাইস) এ SD কার্ড োকান। বিকল্পভাবে আপনি ডিভাইসের ফ্ল্যাশ মেমরিতে.kmodel বার্ন করতে পারেন। আমার উদাহরণ স্ক্রিপ্ট ফ্ল্যাশ মেমরি থেকে.kmodel পড়ে। আপনি যদি এসডি কার্ড ব্যবহার করেন, দয়া করে এই লাইনটি পরিবর্তন করুন

টাস্ক = kpu.load (0x200000)

প্রতি

টাস্ক = kpu.load ("/sd/model.kmodel")

MaixPy IDE খুলুন এবং সংযোগ বোতাম টিপুন। Example_scripts/k210/detector ফোল্ডার থেকে raccoon_detector.py স্ক্রিপ্ট খুলুন এবং স্টার্ট বোতাম টিপুন। আপনার ক্যামেরা থেকে একটি লাইভ স্ট্রিম দেখা উচিত যা চারপাশে সীমানা বক্স সহ … ভাল, র্যাকুন। আপনি আরো প্রশিক্ষণ উদাহরণ প্রদান করে মডেলের নির্ভুলতা বৃদ্ধি করতে পারেন, কিন্তু মনে রাখবেন যে এটি একটি ছোট ছোট মডেল (1.9 M) এবং এতে ছোট বস্তু সনাক্ত করতে সমস্যা হবে (কম রেজোলিউশনের কারণে)।

ইমেজ রিকগনিশন সম্পর্কে আমার আগের নিবন্ধের মন্তব্যে আমি যে প্রশ্নগুলো পেয়েছি তার মধ্যে একটি হল কিভাবে UART/I2C এর মাধ্যমে সনাক্তকরণের ফলাফল Sipeed উন্নয়ন বোর্ডের সাথে সংযুক্ত অন্যান্য ডিভাইসে পাঠানো যায়। আমার গিটহাব সংগ্রহস্থলে আপনি raccoon_detector_uart.py এর আরেকটি উদাহরণ স্ক্রিপ্ট খুঁজে পেতে সক্ষম হবেন, যা (আপনি এটা অনুমান করেছেন) রাকুন সনাক্ত করে এবং UART এর উপর বন্ডিং বাক্সের স্থানাঙ্ক পাঠায়। মনে রাখবেন, UART যোগাযোগের জন্য ব্যবহৃত পিনগুলি বিভিন্ন বোর্ডের থেকে আলাদা, এটি এমন কিছু যা আপনার ডকুমেন্টেশনে নিজেকে পরীক্ষা করতে হবে।

ধাপ 6: সারাংশ

Kendryte K210 কম্পিউটার দৃষ্টি জন্য একটি কঠিন চিপ, নমনীয়, যদিও সীমিত মেমরি উপলব্ধ। এখন পর্যন্ত, আমার টিউটোরিয়ালগুলিতে আমরা কাস্টম বস্তুগুলি সনাক্তকরণ, কাস্টম বস্তু সনাক্তকরণ এবং কিছু ওপেনএমভি ভিত্তিক কম্পিউটার ভিশন কাজ চালানোর জন্য এটি ব্যবহার করেছি। আমি জানি যে এটি মুখ স্বীকৃতির জন্যও উপযুক্ত এবং কিছু টিঙ্কারিংয়ের মাধ্যমে পোজ ডিটেকশন এবং ইমেজ সেগমেন্টেশন করা সম্ভব (আপনি শব্দগত বিভাজন মডেল প্রশিক্ষণের জন্য aXeleRate ব্যবহার করতে পারেন, কিন্তু আমি এখনও K210 এর সাথে অনুমানটি বাস্তবায়ন করিনি) । AXeleRate সংগ্রহস্থলের সমস্যাগুলি দেখতে বিনা দ্বিধায় এবং যদি আপনি মনে করেন যে এমন কিছু উন্নতি আছে যা আপনি অবদান রাখতে পারেন!

এই টিউটোরিয়ালটি লেখার জন্য আমি এখানে কিছু নিবন্ধ ব্যবহার করেছি, যদি আপনি নিউরাল নেটওয়ার্কগুলির সাথে বস্তু সনাক্তকরণ সম্পর্কে আরও জানতে চান তবে দেখুন:

বাউন্ডিং বক্স অবজেক্ট ডিটেক্টর: YOLO বোঝা, আপনি একবার দেখেন

YOLO বোঝা (আরো গণিত)

YOLO অবজেক্ট লোকালাইজেশন কিভাবে কেরাসের সাথে কাজ করে সে সম্পর্কে মৃদু নির্দেশিকা (পর্ব 2)

YOLO, YOLOv2 এবং এখন YOLOv3 দিয়ে রিয়েল-টাইম অবজেক্ট ডিটেকশন

আশা করি আপনি এখন আপনার জ্ঞানকে কাজে লাগিয়ে মেশিন ভিশনের সাথে কিছু অসাধারণ প্রকল্প তৈরি করতে পারবেন! আপনি এখানে Sipeed বোর্ড কিনতে পারেন, এগুলি এমবেডেড সিস্টেমে ML এর জন্য উপলব্ধ সবচেয়ে সস্তা বিকল্পগুলির মধ্যে একটি।

মেশিন লার্নিং এবং রোবটিক্স সম্পর্কিত আরও আকর্ষণীয় প্রকল্প সম্পর্কে বিজ্ঞপ্তি পেতে যদি আপনার কোন প্রশ্ন থাকে তবে আমাকে লিঙ্কডইন এ যুক্ত করুন এবং আমার ইউটিউব চ্যানেলটি সাবস্ক্রাইব করুন।

প্রস্তাবিত: