2025 Autor: John Day | [email protected]. E modifikuara e fundit: 2025-01-13 06:58
Ky është versioni i dytë i mjetit kubik të Rubikut i bërë për zgjidhjen me sy të mbyllur. Versioni i parë u zhvillua nga javascript, mund ta shihni projektin RubiksCubeBlindfolded1
Ndryshe nga versioni i mëparshëm, ky version përdor bibliotekën OpenCV për të zbuluar ngjyrat dhe futur hyrjet, dhe siguron teknikë më të mirë të vizualizimit.
Çështja më e madhe në këtë version më të ri është vizualizimi i rezultateve, artikujt e sekuencës shfaqen në kubin e vizatuar 1 në të njëjtën kohë. Meqenëse kubi është një formë 3D, është e vështirë të shfaqësh të gjitha anët në të njëjtën kohë. Shikoni rezultatet në videon time në kanalin tim në YouTube
Unë jam duke përdorur një kub pa ngjitës, kjo ka nevojë për një njohje të personalizuar dhe shumica e kodeve me burim të hapur nuk mbështeten. Kam përdorur këtë burim të hapur të zhvilluar nga Kim Koomen i cili specifikon zona fikse në kornizën e kamerës për të zbuluar ngjyrat e sakta të projektit të faqeve të kubit qbr
Hapi 1: Përbërësit e nevojshëm
- Mjedër Pi
- webcam
ose mund të përdorni laptopin tuaj
Hapi 2: Varësitë
- Python 3
- bibliotekë e mpirë
- Biblioteka OpenCV
$ sudo apt-get install python3-opencv
Rubiks Paketa e palosur me sy të verbër
$ pip3 instaloni RubiksBlindfolded
Hapi 3: Përgatitjet
Ju duhet të kalibroni zbulimin e ngjyrave si një hap paraprak. Kodet e ngjyrave HSV ndryshojnë për shkak të ndriçimit, cilësisë dhe rezolucionit të kamerës dhe ngjyrave të kubit në vetvete. Në rastin tim, unë kombinoj dritat e bardha dhe të verdha për të marrë rezultate të sakta.
Përditësoni funksionin get_color_name (hsv) në colordetection.py
Kodi burimor origjinal përdor paketën kociemba për të zgjidhur kubin, ai zgjidhet duke gjetur hapat e kundërt të çdo përleshjeje. Në këtë version, unë përdor paketën time të zgjidhjes të quajtur RubiksBlindfolded që botohet në PyPI. Shihni përshkrimin për të ditur si ta përdorni RubiksBlindfolded
Hapi 4: Përdorimi
Pas instalimit të të gjitha varësive dhe vendosjes së kamerës, është koha për të ekzekutuar skriptin me sy të mbyllur
Së pari, duhet të skanoni kubin tuaj në orientimet e sakta. Kjo është struktura e kubit, rendi i skanimit të fytyrave nuk është i rëndësishëm. Vini re se këto janë ngjyrat e paracaktuara të fytyrave të kubit, ju mund t'i ndryshoni ato duke përditësuar fjalorin e shënimeve në skriptin me sy të mbyllur.
Për të bërë skanimin shtypni tastin hapësinor për të ruajtur pamjen dhe tastin ESC pas përfundimit
Së dyti, ju mund të shihni sekuencat e zgjidhjes në tastierë dhe kontrollin e barazisë për t'ju treguar nëse keni nevojë të aplikoni algoritmin e barazisë apo jo
Së treti, do të krijohet një kornizë e re që shfaq 2 kube të vizatuar për sekuencën e skajit dhe sekuencën e qosheve. Ju mund të përdorni çelësat e shigjetës majtas dhe djathtas për ndërrimin midis artikujve të sekuencës dhe çelësat shigjetë lart dhe poshtë për ndërrimin midis skajit dhe qoshes. ngjyra gri e hapur paraqet sekuencën aktuale.
Ju mund të shihni ngjyrat e tamponit aktual që ndryshojnë në mënyrë dinamike nga tastet e shigjetave. Ngjyrat gri përfaqësojnë kubin e synuar, dhe ngjyra rozë përfaqëson fytyrën që shkëmbehet
Kodi i burimit
github.com/mn-banjar/blindfolded2