Satura rādītājs:
- 1. darbība. Nepieciešamās sastāvdaļas
- 2. darbība. Atkarības
- 3. solis: Sagatavošanās
- 4. solis: lietošana
Video: Reāllaika Rubika kuba risinātājs ar aizsietām acīm, izmantojot Raspberry Pi un OpenCV: 4 soļi
2024 Autors: John Day | [email protected]. Pēdējoreiz modificēts: 2024-01-30 10:51
Šī ir Rubika kuba rīka otrā versija, kas paredzēta risināšanai ar aizsietām acīm. 1. versiju izstrādāja javascript, jūs varat redzēt projektu RubiksCubeBlindfolded1
Atšķirībā no iepriekšējās, šī versija izmanto OpenCV bibliotēku, lai noteiktu krāsas un ievadītu ievades, un nodrošina labāku vizualizācijas tehniku.
Lielākā problēma šajā jaunākajā versijā ir izvades vizualizācija, secības vienumi tiek parādīti uzzīmētajā kubā 1 vienlaikus. Tā kā kubs ir 3D forma, ir grūti parādīt visas malas vienlaikus. Skatiet rezultātus manā YouTube kanāla YouTube videoklipā
Es izmantoju kubu bez uzlīmēm, tam nepieciešama pielāgota atpazīšana, un lielākā daļa atvērtā pirmkoda kodu netiek atbalstīti. Es izmantoju šo Kima Koomena izstrādāto atvērto avotu, kas nosaka fiksētas kameras rāmja zonas, lai noteiktu pareizās kuba seju krāsas qbr projektam
1. darbība. Nepieciešamās sastāvdaļas
- Raspberry Pi
- tīmekļa kamera
vai arī varat izmantot klēpjdatoru
2. darbība. Atkarības
- Python 3
- numpy bibliotēka
- OpenCV bibliotēka
$ sudo apt-get install python3-opencv
Iepakojums ar aizsietām acīm
$ pip3 instalēt RubiksBlindfolded
3. solis: Sagatavošanās
Kā iepriekšējs solis ir jākalibrē krāsu noteikšana. HSV krāsu kodi ir atšķirīgi apgaismojuma, kameras kvalitātes un izšķirtspējas un pašas kuba krāsas dēļ. Manā gadījumā es apvienoju baltas un dzeltenas gaismas, lai iegūtu pareizus rezultātus.
Atjauniniet funkciju get_color_name (hsv) vietnē colordetection.py
Sākotnējais avota kods izmanto kociemba pakotni, lai atrisinātu kubu, tas tiek atrisināts, atrodot jebkuras kodēšanas apgrieztās darbības. Šajā versijā es izmantoju savu risinājumu paketi ar nosaukumu RubiksBlindfolded, kas tika publicēta vietnē PyPI. Skatiet aprakstu, lai uzzinātu, kā to izmantot RubiksBlindfolded
4. solis: lietošana
Pēc visu atkarību instalēšanas un kameras iestatīšanas ir pienācis laiks palaist skriptu ar aizsietām acīm
Pirmkārt, jums ir jāpārbauda kubs pareizajā virzienā. Šī ir kuba struktūra, seju skenēšanas secība nav svarīga. Ņemiet vērā, ka šīs ir kuba seju noklusējuma krāsas, jūs varat tās mainīt, atjauninot piezīmju vārdnīcu skriptā blindfolded.py
Lai veiktu skenēšanu, nospiediet atstarpes taustiņu, lai saglabātu skatu, un ESC taustiņu pēc pabeigšanas
Otrkārt, konsolē varat redzēt risinājumu secības un paritātes pārbaudi, lai uzzinātu, vai jums ir jāpiemēro paritātes algoritms.
Treškārt, tiks izveidots jauns rāmis, kurā parādīti 2 uzzīmēti kubi malu secībai un stūra secībai. Jūs varat izmantot kreiso un labo bulttaustiņu, lai pārslēgtos starp secības vienumiem, un augšup un lejup vērstos bulttaustiņus, lai pārslēgtos starp malu un stūri. gaiši pelēka krāsa attēlo pašreizējo secību.
Ar bulttaustiņiem varat redzēt pašreizējā bufera krāsas, kas dinamiski mainās. Pelēkas krāsas attēlo mērķa kubiku, un rozā krāsa apzīmē maināmo seju
Avota kods
github.com/mn-banjar/blindfolded2
Ieteicams:
Vienkārša noliekta krāsu maiņa bezvadu Rubika kuba lampai: 10 soļi (ar attēliem)
Viegli noliecama krāsu maiņa bezvadu Rubika kuba lampai: Šodien mēs izveidosim šo satriecošo Rubika kubam līdzīgo lampu, kas maina krāsu atkarībā no tā, kura puse ir uz augšu. Kubs darbojas ar nelielu LiPo akumulatoru, kas tiek uzlādēts ar standarta micro-usb kabeli, un, manā testēšanā, akumulatora darbības laiks ir vairākas dienas. Šī
Q -Bot - atvērtā koda Rubika kuba risinātājs: 7 soļi (ar attēliem)
Q -Bot - atklātā pirmkoda Rubika kuba risinātājs: Iedomājieties, ka jums ir kodēts Rubika kubs, jūs zināt, ka 80. gadu mīkla ir tāda, kāda ir ikvienam, bet neviens īsti nezina, kā to atrisināt, un jūs vēlaties to atgriezt sākotnējā modelī. Par laimi, mūsdienās ir ļoti viegli atrast risinājumu
Ierīces atpazīšana reāllaikā, izmantojot EM pēdas: 6 soļi
Ierīces atpazīšana reāllaikā, izmantojot EM pēdas: Šī ierīce ir paredzēta dažādu elektronisko ierīču klasificēšanai pēc to EM signāliem. Dažādām ierīcēm tās izstaro dažādus EM signālus. Mēs esam izstrādājuši IoT risinājumu, lai identificētu elektroniskās ierīces, izmantojot daļiņu
Arduino Mega pakāpju vairogs Rubika kuba risinātājam: 4 soļi
Arduino Mega pakāpju vairogs Rubika kuba risinātājam: Pirms kāda laika es strādāju pie mašīnas, kas automātiski atrisina jebkuru sajauktu 3x3 Rubika kubu. Jūs varat redzēt manus norādījumus par to šeit. Projektā sešu motoru darbināšanai tika izmantoti soļu braucēji no Polulu. Lai divi varētu savienot šos
Satiksmes risinātājs: 7 soļi
Satiksmes risinātājs: Satiksmes risinātājs automatizē satiksmes kontroli vienas joslas ietvaros būvniecības zonā. Lai šī sistēma darbotos bez starpgadījumiem, starp tām jābūt divām vienībām, pa vienai katrā pusē. Abām vienībām būs motors un rotējoša turēšanas ierīce, kas