2025 Autor: John Day | [email protected]. Viimati modifitseeritud: 2025-01-13 06:57
See on Rubiku kuubiku tööriista teine versioon, mis on mõeldud lahendamiseks pimedate silmadega. Esimese versiooni töötas välja javascript, näete projekti RubiksCubeBlindfolded1
Erinevalt eelmisest kasutab see versioon OpenCV teeki värvide tuvastamiseks ja sisendite sisestamiseks ning pakub paremat visualiseerimistehnikat.
Selle uusima versiooni suurim probleem on väljundite visualiseerimine, jadaüksused kuvatakse joonistatud kuubikul 1 korraga. Kuna kuubik on 3D -kujuga, on raske kõiki külgi korraga kuvada. Vaadake tulemusi minu YouTube'i kanali YouTube'i videost
Ma kasutan kleebisteta kuupi, see vajab kohandatud äratundmist ja enamikku avatud lähtekoodidest ei toetata. Kasutasin seda avatud lähtekoodiga, mille on välja töötanud Kim Koomen, mis määrab kaamera raami kindlaksmääratud alad, et tuvastada kuubikujuliste kujundite õiged värvid qbr projekt
Samm: vajalikud komponendid
- Vaarika Pi
- veebikaamera
või saate oma sülearvutit kasutada
Samm: sõltuvused
- Python 3
- numpy raamatukogu
- OpenCV raamatukogu
$ sudo apt-get install python3-opencv
RubiksSilmaklaasiga pakend
$ pip3 install RubiksBlindfolded
3. samm: Ettevalmistused
Eeltööna peate kalibreerima värvide tuvastamise. HSV värvikoodid on valguse, kaamera kvaliteedi ja eraldusvõime ning kuubiku värvide tõttu erinevad. Minu puhul ühendan õigete tulemuste saamiseks valge ja kollase tule.
Värskendage saidil colordetection.py funktsiooni get_color_name (hsv)
Algne lähtekood kasutab kuubi lahendamiseks kociemba paketti, see lahendab mis tahes rüseluse vastupidised sammud. Selles versioonis kasutasin oma lahendamispaketti RubiksBlindfolded, mis avaldati PyPI -s. Vaadake kirjeldust, et teada saada, kuidas seda kasutada RubiksBlindfolded
4. samm: kasutamine
Pärast kõigi sõltuvuste installimist ja kaamera seadistamist on õige aeg käivitada skript pimedate silmadega
Esiteks peate oma kuubi skannima õiges suunas. See on kuubistruktuur, nägude skaneerimise järjekord pole oluline. Pange tähele, et need on kuubi nägude vaikimisi värvid, saate neid muuta, värskendades skripti blindfolded.py märkimissõnastikku
Skaneerimiseks vajutage vaate salvestamiseks tühikuklahvi ja pärast lõpetamist klahvi ESC
Teiseks näete konsoolil lahenduste järjestusi ja pariteedikontrolli, et öelda, kas peate rakendama pariteedi algoritmi või mitte
Kolmandaks genereeritakse uus kaader, mis kuvab 2 joonistatud kuubikut serva ja nurga järjestuse jaoks. Jadaüksuste vahel vahetamiseks saate kasutada vasak- ja paremnooleklahve ning serva ja nurga vahel liikumiseks üles- ja allanooleklahve. helehall värv tähistab praegust järjestust.
Näete praeguse puhvri värve, mis muutuvad dünaamiliselt nooleklahvide abil. Hallid värvid tähistavad sihtkuubikut ja roosa värv vahetavat nägu
Lähtekood
github.com/mn-banjar/blindfolded2