فهرست مطالب:

حل کننده مکعب روبیک در زمان واقعی با استفاده از Raspberry Pi و OpenCV: 4 مرحله
حل کننده مکعب روبیک در زمان واقعی با استفاده از Raspberry Pi و OpenCV: 4 مرحله

تصویری: حل کننده مکعب روبیک در زمان واقعی با استفاده از Raspberry Pi و OpenCV: 4 مرحله

تصویری: حل کننده مکعب روبیک در زمان واقعی با استفاده از Raspberry Pi و OpenCV: 4 مرحله
تصویری: ساده ترین آموزش حل مکعب روبیک 2024, دسامبر
Anonim

این دومین نسخه از ابزار مکعب روبیک است که برای حل با چشم بسته ساخته شده است. نسخه اول توسط جاوا اسکریپت توسعه داده شد ، می توانید پروژه RubiksCubeBlindfolded1 را مشاهده کنید

بر خلاف نسخه قبلی ، این نسخه از کتابخانه OpenCV برای تشخیص رنگها و وارد کردن ورودی ها استفاده می کند و روش تجسم بهتری را ارائه می دهد.

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

من از یک مکعب بدون برچسب استفاده می کنم ، این نیاز به تشخیص سفارشی دارد و اکثر کدهای منبع باز پشتیبانی نمی شوند. من از این منبع باز توسعه یافته توسط کیم کومن استفاده کردم که مناطق ثابت روی قاب دوربین را برای تشخیص رنگهای صحیح پروژه qbr چهره مکعب استفاده می کند.

مرحله 1: اجزای مورد نیاز

  • تمشک پای
  • وبکم

یا می توانید از لپ تاپ خود استفاده کنید

مرحله 2: وابستگی ها

  • پایتون 3
  • کتابخانه بی حس
  • کتابخانه OpenCV

$ sudo apt-get python3-opencv را نصب کنید

بسته RubiksBoldfolded

$ pip3 RubiksBlindfolded را نصب کنید

مرحله 3: آماده سازی

شما باید تشخیص رنگ را به عنوان یک مرحله اولیه تنظیم کنید. کدهای رنگ HSV به دلیل نور ، کیفیت و وضوح دوربین و رنگ مکعب خود متفاوت است. در مورد من ، من چراغ های سفید و زرد را ترکیب می کنم تا به نتایج صحیح برسم.

عملکرد get_color_name (hsv) را در colordetection.py به روز کنید

کد منبع اصلی از بسته kociemba برای حل مکعب استفاده می کند ، با یافتن مراحل معکوس هر تقلا ، حل می شود. در این نسخه ، من از بسته حل مسئله خودم به نام RubiksBlindfolded که در PyPI منتشر شده بود استفاده کردم. برای اطلاع از نحوه استفاده از RubiksBlindfolded توضیحات را مشاهده کنید

مرحله 4: استفاده

استفاده
استفاده
استفاده
استفاده

پس از نصب همه وابستگی ها و تنظیم دوربین ، زمان اجرای اسکریپت blindfolded.py است

ابتدا باید مکعب خود را در جهت های صحیح اسکن کنید. این ساختار مکعب است ، ترتیب اسکن چهره ها مهم نیست. توجه داشته باشید که اینها رنگهای پیش فرض چهره های مکعب هستند ، می توانید آنها را با به روز رسانی فرهنگ لغت نشانه گذاری در اسکریپت blindfolded.py تغییر دهید.

برای ایجاد اسکن ، کلید space را فشار دهید تا بعد از اتمام کار ، View و ESC ذخیره شوند

ثانیاً ، می توانید دنباله های راه حل را روی کنسول مشاهده کنید ، و بررسی برابری به شما اطلاع می دهد که آیا نیاز به اعمال الگوریتم برابری دارید یا خیر

سوم ، یک قاب جدید ایجاد می شود که 2 مکعب کشیده را برای دنباله لبه و دنباله گوشه نمایش می دهد. می توانید از کلیدهای جهت دار چپ و راست برای جابجایی بین موارد دنباله و کلیدهای جهت دار بالا و پایین برای جابجایی بین لبه و گوشه استفاده کنید. رنگ خاکستری روشن نشان دهنده توالی فعلی است.

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

کد منبع

github.com/mn-banjar/blindfolded2

توصیه شده: