You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
IoT-For-Beginners/translations/fa/5-retail/lessons/2-check-stock-device
co-op-translator[bot] 21b768b948
🌐 Update translations via Co-op Translator (#540)
4 weeks ago
..
README.md 🌐 Update translations via Co-op Translator (#540) 4 weeks ago
assignment.md 🌐 Update translations via Co-op Translator (#540) 4 weeks ago
single-board-computer-count-stock.md 🌐 Update translations via Co-op Translator (#540) 4 weeks ago
single-board-computer-object-detector.md 🌐 Update translations via Co-op Translator (#540) 4 weeks ago
wio-terminal-count-stock.md 🌐 Update translations via Co-op Translator (#540) 4 weeks ago
wio-terminal-object-detector.md 🌐 Update translations via Co-op Translator (#540) 4 weeks ago

README.md

بررسی موجودی کالا با استفاده از دستگاه IoT

نمای کلی درس به صورت اسکچ‌نوت

اسکچ‌نوت توسط نیتیا ناراسیمهان. برای مشاهده نسخه بزرگ‌تر روی تصویر کلیک کنید.

آزمون پیش از درس

آزمون پیش از درس

مقدمه

در درس قبلی با کاربردهای مختلف تشخیص اشیا در خرده‌فروشی آشنا شدید. همچنین یاد گرفتید که چگونه یک مدل تشخیص اشیا را برای شناسایی موجودی کالا آموزش دهید. در این درس، یاد خواهید گرفت که چگونه از مدل تشخیص اشیای خود در دستگاه IoT برای شمارش موجودی کالا استفاده کنید.

در این درس به موارد زیر خواهیم پرداخت:

🗑 این آخرین درس در این پروژه است، بنابراین پس از تکمیل این درس و انجام تکلیف، فراموش نکنید که خدمات ابری خود را پاکسازی کنید. برای انجام تکلیف به این خدمات نیاز دارید، بنابراین ابتدا تکلیف را کامل کنید.

در صورت نیاز، به راهنمای پاکسازی پروژه مراجعه کنید.

شمارش موجودی کالا

مدل‌های تشخیص اشیا می‌توانند برای بررسی موجودی کالا استفاده شوند، چه برای شمارش کالاها و چه برای اطمینان از اینکه کالاها در مکان مناسب قرار دارند. دستگاه‌های IoT مجهز به دوربین می‌توانند در سراسر فروشگاه مستقر شوند تا موجودی کالا را نظارت کنند، به‌ویژه در نقاط حساس که پر کردن مجدد کالاها اهمیت زیادی دارد، مانند مناطقی که تعداد کمی از کالاهای با ارزش بالا ذخیره می‌شوند.

برای مثال، اگر یک دوربین به سمت قفسه‌هایی که می‌توانند ۸ قوطی رب گوجه‌فرنگی را نگه دارند، تنظیم شده باشد و مدل تشخیص اشیا فقط ۷ قوطی را شناسایی کند، یک قوطی کم است و باید دوباره پر شود.

۷ قوطی رب گوجه‌فرنگی روی قفسه، ۴ قوطی در ردیف بالا و ۳ قوطی در پایین

در تصویر بالا، مدل تشخیص اشیا ۷ قوطی رب گوجه‌فرنگی را روی قفسه‌ای که ظرفیت ۸ قوطی دارد، شناسایی کرده است. دستگاه IoT نه تنها می‌تواند نیاز به پر کردن مجدد را اطلاع دهد، بلکه می‌تواند مکان دقیق قوطی گمشده را نیز مشخص کند، که داده مهمی است اگر از ربات‌ها برای پر کردن قفسه‌ها استفاده کنید.

💁 بسته به فروشگاه و محبوبیت کالا، احتمالاً پر کردن مجدد فقط برای یک قوطی انجام نمی‌شود. شما باید الگوریتمی طراحی کنید که بر اساس محصول، مشتریان و معیارهای دیگر زمان پر کردن مجدد را تعیین کند.

در چه سناریوهای دیگری می‌توانید تشخیص اشیا و ربات‌ها را ترکیب کنید؟

گاهی اوقات ممکن است کالاهای اشتباهی روی قفسه‌ها قرار گیرند. این می‌تواند ناشی از خطای انسانی هنگام پر کردن مجدد یا تغییر نظر مشتریان و قرار دادن کالا در اولین فضای موجود باشد. اگر این کالا غیرقابل فساد باشد، مانند کنسروها، این یک مزاحمت است. اما اگر کالا قابل فساد باشد، مانند مواد منجمد یا سرد، ممکن است دیگر قابل فروش نباشد زیرا نمی‌توان مدت زمانی که کالا خارج از فریزر بوده را تعیین کرد.

تشخیص اشیا می‌تواند برای شناسایی کالاهای غیرمنتظره استفاده شود و انسان یا ربات را برای بازگرداندن کالا به مکان صحیح مطلع کند.

یک قوطی ذرت بچه روی قفسه رب گوجه‌فرنگی

در تصویر بالا، یک قوطی ذرت بچه روی قفسه کنار رب گوجه‌فرنگی قرار گرفته است. مدل تشخیص اشیا این مورد را شناسایی کرده و دستگاه IoT می‌تواند انسان یا ربات را برای بازگرداندن قوطی به مکان صحیح مطلع کند.

فراخوانی مدل تشخیص اشیا از دستگاه IoT

مدل تشخیص اشیایی که در درس قبلی آموزش داده‌اید، می‌تواند از دستگاه IoT فراخوانی شود.

وظیفه - انتشار یک نسخه از مدل تشخیص اشیا

نسخه‌ها از پورتال Custom Vision منتشر می‌شوند.

  1. پورتال Custom Vision را در CustomVision.ai باز کنید و وارد شوید اگر هنوز باز نکرده‌اید. سپس پروژه stock-detector خود را باز کنید.

  2. از گزینه‌های بالای صفحه، تب Performance را انتخاب کنید.

  3. آخرین نسخه را از لیست Iterations در سمت صفحه انتخاب کنید.

  4. دکمه Publish را برای نسخه انتخاب کنید.

    دکمه انتشار

  5. در دیالوگ Publish Model، منبع Prediction resource را به منبع stock-detector-prediction که در درس قبلی ایجاد کرده‌اید تنظیم کنید. نام را به صورت Iteration2 باقی بگذارید و دکمه Publish را انتخاب کنید.

  6. پس از انتشار، دکمه Prediction URL را انتخاب کنید. این بخش جزئیات API پیش‌بینی را نشان می‌دهد و شما به این جزئیات برای فراخوانی مدل از دستگاه IoT نیاز دارید. بخش پایین‌تر با عنوان If you have an image file جزئیاتی است که نیاز دارید. URL نمایش داده شده را کپی کنید که چیزی شبیه به:

    https://<location>.api.cognitive.microsoft.com/customvision/v3.0/Prediction/<id>/detect/iterations/Iteration2/image
    

    خواهد بود، که <location> مکان مورد استفاده شما هنگام ایجاد منبع Custom Vision و <id> یک شناسه طولانی متشکل از حروف و اعداد خواهد بود.

    همچنین مقدار Prediction-Key را کپی کنید. این یک کلید امن است که باید هنگام فراخوانی مدل ارسال شود. فقط برنامه‌هایی که این کلید را ارسال کنند اجازه استفاده از مدل را دارند و سایر برنامه‌ها رد می‌شوند.

    دیالوگ API پیش‌بینی که URL و کلید را نشان می‌دهد

وقتی یک نسخه جدید منتشر می‌شود، نام متفاوتی خواهد داشت. فکر می‌کنید چگونه می‌توانید نسخه‌ای که دستگاه IoT استفاده می‌کند را تغییر دهید؟

وظیفه - فراخوانی مدل تشخیص اشیا از دستگاه IoT

راهنمای مربوطه را دنبال کنید تا از مدل تشخیص اشیا در دستگاه IoT خود استفاده کنید:

جعبه‌های محدودکننده

هنگام استفاده از مدل تشخیص اشیا، نه تنها اشیای شناسایی شده با برچسب‌ها و احتمالات آن‌ها را دریافت می‌کنید، بلکه جعبه‌های محدودکننده اشیا را نیز دریافت می‌کنید. این جعبه‌ها محدوده‌ای را تعریف می‌کنند که مدل تشخیص اشیا شیء را با احتمال مشخص شناسایی کرده است.

💁 جعبه محدودکننده یک جعبه است که محدوده‌ای را که شیء شناسایی شده در آن قرار دارد، تعریف می‌کند.

نتایج پیش‌بینی در تب Predictions در Custom Vision دارای جعبه‌های محدودکننده‌ای هستند که روی تصویر ارسال شده برای پیش‌بینی ترسیم شده‌اند.

۴ قوطی رب گوجه‌فرنگی روی قفسه با پیش‌بینی‌های ۳۵.۸٪، ۳۳.۵٪، ۲۵.۷٪ و ۱۶.۶٪

در تصویر بالا، ۴ قوطی رب گوجه‌فرنگی شناسایی شده‌اند. در نتایج، یک مربع قرمز برای هر شیء شناسایی شده در تصویر ترسیم شده است که جعبه محدودکننده برای تصویر را نشان می‌دهد.

پیش‌بینی‌ها را در Custom Vision باز کنید و جعبه‌های محدودکننده را بررسی کنید.

جعبه‌های محدودکننده با ۴ مقدار تعریف می‌شوند - بالا، چپ، ارتفاع و عرض. این مقادیر در مقیاس ۰-۱ هستند و موقعیت‌ها را به عنوان درصدی از اندازه تصویر نشان می‌دهند. مبدا (موقعیت ۰,۰) گوشه بالا سمت چپ تصویر است، بنابراین مقدار بالا فاصله از بالا است و پایین جعبه محدودکننده برابر با بالا به علاوه ارتفاع است.

یک جعبه محدودکننده دور یک قوطی رب گوجه‌فرنگی

تصویر بالا ۶۰۰ پیکسل عرض و ۸۰۰ پیکسل ارتفاع دارد. جعبه محدودکننده از ۳۲۰ پیکسل پایین شروع می‌شود، که مقدار بالا برابر با ۰.۴ است (۸۰۰ x 0.4 = 320). از سمت چپ، جعبه محدودکننده از ۲۴۰ پیکسل عرض شروع می‌شود، که مقدار چپ برابر با ۰.۴ است (۶۰۰ x 0.4 = 240). ارتفاع جعبه محدودکننده ۲۴۰ پیکسل است، که مقدار ارتفاع برابر با ۰.۳ است (۸۰۰ x 0.3 = 240). عرض جعبه محدودکننده ۱۲۰ پیکسل است، که مقدار عرض برابر با ۰.۲ است (۶۰۰ x 0.2 = 120).

مختصات مقدار
بالا ۰
چپ ۰
ارتفاع ۰
عرض ۰

استفاده از مقادیر درصدی از ۰-۱ به این معناست که بدون توجه به اندازه تصویر، جعبه محدودکننده از ۰.۴ مسیر طول و عرض شروع می‌شود و ۰.۳ از ارتفاع و ۰.۲ از عرض را شامل می‌شود.

می‌توانید از جعبه‌های محدودکننده همراه با احتمالات برای ارزیابی دقت شناسایی استفاده کنید. برای مثال، یک مدل تشخیص اشیا می‌تواند چندین شیء را که با هم همپوشانی دارند شناسایی کند، مانند شناسایی یک قوطی داخل دیگری. کد شما می‌تواند جعبه‌های محدودکننده را بررسی کند، بفهمد که این غیرممکن است و هر شیء که همپوشانی قابل توجهی با سایر اشیا دارد را نادیده بگیرد.

دو جعبه محدودکننده که یک قوطی رب گوجه‌فرنگی را همپوشانی کرده‌اند

در مثال بالا، یک جعبه محدودکننده یک قوطی رب گوجه‌فرنگی را با احتمال ۷۸.۳٪ شناسایی کرده است. یک جعبه محدودکننده دوم کمی کوچک‌تر است و داخل جعبه اول با احتمال ۶۴.۳٪ قرار دارد. کد شما می‌تواند جعبه‌های محدودکننده را بررسی کند، ببیند که کاملاً همپوشانی دارند و احتمال پایین‌تر را نادیده بگیرد زیرا امکان ندارد یک قوطی داخل دیگری باشد.

آیا می‌توانید موقعیتی را تصور کنید که شناسایی یک شیء داخل دیگری معتبر باشد؟

بازآموزی مدل

مانند مدل طبقه‌بندی تصویر، می‌توانید مدل خود را با استفاده از داده‌های جمع‌آوری شده توسط دستگاه IoT بازآموزی کنید. استفاده از این داده‌های واقعی اطمینان حاصل می‌کند که مدل شما هنگام استفاده از دستگاه IoT به خوبی کار می‌کند.

برخلاف مدل طبقه‌بندی تصویر، نمی‌توانید فقط یک تصویر را برچسب‌گذاری کنید. در عوض باید هر جعبه محدودکننده شناسایی شده توسط مدل را بررسی کنید. اگر جعبه دور شیء اشتباهی باشد، باید حذف شود، اگر در مکان اشتباهی باشد باید تنظیم شود.

وظیفه - بازآموزی مدل

  1. مطمئن شوید که طیف وسیعی از تصاویر را با استفاده از دستگاه IoT خود جمع‌آوری کرده‌اید.

  2. از تب Predictions یک تصویر را انتخاب کنید. جعبه‌های قرمز نشان‌دهنده جعبه‌های محدودکننده اشیای شناسایی شده هستند.

  3. هر جعبه محدودکننده را بررسی کنید. ابتدا آن را انتخاب کنید و یک پنجره پاپ‌آپ نشان‌دهنده برچسب را مشاهده خواهید کرد. از دستگیره‌های گوشه‌های جعبه محدودکننده برای تنظیم اندازه در صورت نیاز استفاده کنید. اگر برچسب اشتباه است، آن را با دکمه X حذف کنید و برچسب صحیح را اضافه کنید. اگر جعبه محدودکننده شامل شیء نیست، آن را با دکمه سطل زباله حذف کنید.

  4. پس از اتمام ویرایش، تصویر از تب Predictions به تب Training Images منتقل می‌شود. این فرآیند را برای تمام پیش‌بینی‌ها تکرار کنید.

  5. از دکمه Train برای بازآموزی مدل خود استفاده کنید. پس از آموزش، نسخه را منتشر کنید و دستگاه IoT خود را به URL نسخه جدید به‌روزرسانی کنید.

  6. کد خود را دوباره مستقر کنید و دستگاه IoT خود را آزمایش کنید.

شمارش موجودی کالا

با ترکیب تعداد اشیای شناسایی شده و جعبه‌های محدودکننده، می‌توانید موجودی کالا روی قفسه را شمارش کنید.

وظیفه - شمارش موجودی کالا

راهنمای مربوطه را دنبال کنید تا با استفاده از نتایج مدل تشخیص اشیا از دستگاه IoT خود موجودی کالا را شمارش کنید:


🚀 چالش

آیا می‌توانید کالاهای اشتباه را شناسایی کنید؟ مدل خود را برای چندین شیء آموزش دهید، سپس برنامه خود را به‌روزرسانی کنید تا در صورت شناسایی کالاهای اشتباه به شما اطلاع دهد.

شاید حتی این را فراتر ببرید و کالاهای کنار هم روی یک قفسه را شناسایی کنید و ببینید آیا چیزی در مکان اشتباهی قرار گرفته است، با تعریف محدودیت‌هایی برای جعبه‌های محدودکننده.

آزمون پس از درس

آزمون پس از درس

مرور و مطالعه شخصی

تکلیف

استفاده از مدل تشخیص اشیا در لبه

سلب مسئولیت:
این سند با استفاده از سرویس ترجمه هوش مصنوعی Co-op Translator ترجمه شده است. در حالی که ما تلاش می‌کنیم دقت را حفظ کنیم، لطفاً توجه داشته باشید که ترجمه‌های خودکار ممکن است حاوی خطاها یا نادرستی‌هایی باشند. سند اصلی به زبان بومی آن باید به عنوان منبع معتبر در نظر گرفته شود. برای اطلاعات حساس، ترجمه حرفه‌ای انسانی توصیه می‌شود. ما هیچ مسئولیتی در قبال سوءتفاهم‌ها یا تفسیرهای نادرست ناشی از استفاده از این ترجمه نداریم.