از پارسکدرز بیشترین بهره را ببرید و رویای کاری خود را زندگی کنید.
چهار سال پیش منتشر شده
تعداد بازدید: 549
کد پروژه: 320464
شرح پروژه
هدف از پروژه ساخت یک نرمافزار متصل به وبکم لپتاپ برای train کردن بازوی رباتیک Adeept 5-DOF از طریق reinforcement learning است؛ به گونهای که گیره (gripper) روبات به سمت یک موقعیت خاص (یک جسم) در تصویر گرفته شده از وبکم نشانه برود.
مثلا همانگونه که در تصویر زیر میبینید، نوک گیره ربات، موفق به مکانیابی موقعیت هدف شده و روی آن نشانه رفته است.
در مرحله ابتدایی پروژه، مکان جسم هدف میتواند ثابت باشد.
در مرحله پیشرفته، کاربر با کلیک کردن در OpenCV و انتخاب نقطه ای خاص از تصویر، ربات را وادار کند که نوک گیره خود را به سمت هدف تعیین شده نشانه برود.
در این پروژه باید از reinforcement learning استفاده شود تا ربات را برای انجام این کار train کند. از متدهای کلاسیک نظیر کینماتیک معکوس برای کنترل ربات استفاده نشود.
توضیحات تکمیلی
1. بازوی روبات از طریق پورت USB به لپتاپ متصل میشود. روبات در میدان دید وبکم لپتاپ است. تصویر از طریق وبکم لپتاپ گرفته میشود.
2. روی لپتاپ، یک فایل پایتون نوشته شود که به وبکم متصل است و میتواند شناسایی کند که گیره ربات کجاست. موقعیت گیره به صورت مختصات X-Y تصویر مشخص میشود. آیا باید به صورت پیکسلی باشد؟ یا موقعیتها به گونهای نرمالایز شده باشد که X و Y هردو بین صفر و یک باشند؟ با آزمون و خطا بررسی شود که کدام بهتر جواب میدهد. از هر متدی که مایل هستید برای رسیدن به این مقصود استفاده کنید. مثلا میتوانید متن روی سرووموتور (servo) متصل به گیره ربات را شناسایی کنید. یا یک لیبل رنگی بر روی گیره ربات چسابنده شود و از طریق color segmentation بتوانید که گیره ربات را پیدا کنید.
3. در یک فایل پایتون دیگر، یک محیط OpenAI Gym برای این پروژه بسازید. برای این محیط، نیاز به تعریف سه مقوله مهم است:
1. فضای مشاهده (observation space) - شامل مختصات X-Y گیره که هم اکنون شناسایی شده، و شاید مختصات X و Y موقعیت هدف باشد.
2. فضای کنش (action space) - شامل 4 float می باشد.
3. تابع پاداش (reward function) - باید با نزدیک شدن گیره ربات به موقعیت هدف، به agent پاداش دهد.
ممکن است در طول پروژه متوجه شوید که agent با مشاهده بیشتر ( مثلا مشاهده دیگر قسمت های ربات، موقعیت های فعلی سرووموتورها و غیره)، بهتر یاد میگیرد. آزمون و خطا کنید.
4. در یک فایل پایتون نهایی، از Stable-Baselines3 و محیط OpenAI Gym که ساختهاید برای train رباتتان به منظور رسیدن به موقعیت هدف استفاده کنید. این مرحله در واقع یکپارچه سازی همه چیز است.
5. بررسی کنید که چگونه agent بهتر و سریع تر یاد میگیرد؟ آیا نیاز به انواع دیگری در action space دارد؟ آیا مفید است که یک اپیسود را متوقف کنید و اپیزود دیگری را بعد از یک تعداد از پیش تعیین شده زمان-قدم شروع کید؟ آیا مفید است که موقعیت هدف بین هر اپیسود تغییر کند؟ چه اتفاقی می افتد اگر موقعیت هدف به صورت فیزیکی در دسترس ربات نباشد؟
6. در مرحله آخر، به کاربر اچازه دهید، زمانی که agent در حال فعالیت هست، روی تصویر وبکم کلیک کند تا موقعیت هدف جدیدی را تعریف کند تا ربات بتواند به سمت آن برود. بدین صورت، یک حالت تعاملی بین کاربر و ربات به وجود می آید. برای راهنمایی از این لینک https://docs.opencv.org/4.x/db/d5b/tutorial_py_mouse_handling.html استفاده کنید.
این پروژه شامل 1 فایل مهم است، لطفا قبل از ارسال پیشنهاد حتما نسبت به بررسی این فایل اقدام فرمایید.
مهارت ها و تخصص های مورد نیاز
مهلت برای انجام
10روز
وضعیت مناقصه
بسته
درباره کارفرما
عضویت چهار سال پیش
نیاز به استخدام فریلنسر یا سفارش پروژه مشابه دارید؟
قادر به انجام این پروژه هستید؟
متأسفانه مهلت ارسال پیشنهاد این پروژه به پایان رسیده و پروژه بسته شده است؛ اما فرصتهای متعددی در سایت موجود میباشد.
به رایگان یک حساب کاربری بسازید
مهارتها و تخصصهای خود را ثبت کنید، رزومه و نمونهکارهای خود را نشان دهید و سوابق کاری خود را شرح دهید.
به شیوهای که دوست دارید کار کنید
برای پروژههای دلخواه در زمان دلخواه پیشنهاد قیمت خود را ثبت کنید و به فرصتهای شغلی منحصر به فرد دسترسی پیدا کنید.
با اطمینان دستمزد دریافت کنید
از زمان شروع کار تا انتهای کار به امنیت مالی شما کمک خواهیم کرد. وجه پروژه را از ابتدای کار به امانت در سایت نگه خواهیم داشت تا تضمین شودکه بعد از تحویل کار دستمزد شما پرداخت خواهد شد.
میخواهید شروع به کار کنید؟
یک حساب کاربری بسازید
بهترین مشاغل فریلنسری را پیدا کنید
رشد شغلی شما به راحتی ایجاد یک حساب کاربری رایگان و یافتن کار (پروژه) متناسب با مهارتهای شما
است.
پیدا کردن کار (پروژه)
تماشای دمو روش کار