INHOUDSOPGAWE:
Video: Real-time Rubik's Cube Geblinddoekoplosser met behulp van Raspberry Pi en OpenCV: 4 stappe
2024 Outeur: John Day | [email protected]. Laas verander: 2024-01-30 07:23
Dit is die 2de weergawe van Rubik se kubusgereedskap wat gemaak is vir die oplossing van geblinddoek. Die eerste weergawe is ontwikkel deur javascript, u kan die projek RubiksCubeBlindfolded1 sien
Anders as die vorige, gebruik hierdie weergawe OpenCV -biblioteek om die kleure op te spoor en die insette in te voer, en bied 'n beter visualiseringstegniek.
Die grootste probleem in hierdie nuutste weergawe is die visualisering van uitsette, die volgordeitems word op 'n slag op die getekende kubus 1 vertoon. Aangesien die kubus 'n 3D -vorm het, is dit moeilik om alle kante op dieselfde tyd te vertoon. Sien die resultate op my YouTube -kanaal YouTube -video
Ek gebruik 'n plakkerlose kubus, dit benodig 'n persoonlike herkenning en die meeste open source kodes word nie ondersteun nie. Ek het hierdie open source gebruik, ontwikkel deur Kim Koomen, wat vaste gebiede op die kameraram spesifiseer om die korrekte kleure van die kubusgesigte qbr -projek op te spoor
Stap 1: Komponente benodig
- Framboos Pi
- webkamera
of u kan u skootrekenaar gebruik
Stap 2: Afhanklikheid
- Python 3
- lomp biblioteek
- OpenCV -biblioteek
$ sudo apt-get install python3-opencv
Rubiks -geblinddode pakket
$ pip3 installeer RubiksBlindfolded
Stap 3: Voorbereidings
U moet die kleuropsporing as 'n voorstap kalibreer. Die HSV -kleurkodes wissel vanweë die beligting, die kwaliteit en resolusie van die kamera en die kleure self. In my geval kombineer ek wit en geel ligte om die regte resultate te kry.
Dateer die funksie get_color_name (hsv) op colordetection.py op
Die oorspronklike bronkode gebruik 'n kociemba -pakket om die kubus op te los; dit word opgelos deur die omgekeerde stappe van enige skommel te vind. In hierdie weergawe gebruik ek my eie oplossingspakket met die naam RubiksBlindfolded wat op PyPI gepubliseer is. Sien die beskrywing om te weet hoe u dit kan gebruik RubiksBlindfolded
Stap 4: Gebruik
Nadat u al die afhanklikhede geïnstalleer het en u kamera ingestel het, is dit tyd om 'n blindfolded.py -script uit te voer
Eerstens moet u u kubus in die regte rigtings skandeer. Dit is die kubusstruktuur, die volgorde van skandering van die gesigte is nie belangrik nie. Let op dat dit die standaardkleure van die kubusvlakke is; u kan dit verander deur die notasiewoordeboek op die blindfolded.py -skript op te dateer
Om die skandering te maak, druk die spasie -sleutel om die vertoning en ESC -sleutel na die voltooiing te stoor
Tweedens kan u die oplossingsvolgorde op die konsole sien, en die pariteitkontrole om u te vertel of u die pariteitsalgoritme moet toepas of nie
Derdens sal 'n nuwe raam gegenereer word wat 2 getekende blokkies vir randvolgorde en hoekvolgorde vertoon. U kan die pyltjie links en regs gebruik om tussen die volgorde -items te skakel, en die pyltjie -op -en -af -pyltjies om tussen die rand en hoek te wissel. die liggrys kleur verteenwoordig die huidige volgorde.
U kan die kleure van die huidige buffer sien wat dinamies verander deur pyltjie sleutels. Grys kleure verteenwoordig die teikenkubie, en pienk kleur verteenwoordig die omruilende gesig
Bronkode
github.com/mn-banjar/blindfolded2
Aanbeveel:
Sterrekenning met behulp van Computer Vision (OpenCV): 11 stappe (met prente)
Sterrekenning met behulp van Computer Vision (OpenCV): Hierdie instruksies sal u beskryf hoe u 'n rekenaarvisieprogram kan skep om outomaties sterpatrone in 'n beeld te identifiseer. Die metode gebruik die OpenCV (Open-Source Computer Vision) biblioteek om 'n stel opgeleide HAAR-watervalle te skep wat
Beheer oor die hele wêreld met behulp van internet met behulp van Arduino: 4 stappe
Beheer oor die hele wêreld met behulp van internet met behulp van Arduino: Hallo, ek is Rithik. Ons gaan 'n internetbeheerde LED maak met u telefoon. Ons gaan sagteware soos Arduino IDE en Blynk gebruik. Dit is eenvoudig, en as u daarin geslaag het, kan u soveel elektroniese komponente beheer as wat u wil
Outonome baanhouer met behulp van Raspberry Pi en OpenCV: 7 stappe (met foto's)
Outonome baanhoumotor met behulp van Raspberry Pi en OpenCV: In hierdie instruksies word 'n outonome baanhourobot geïmplementeer wat deur die volgende stappe sal gaan: Versamel onderdele Installeer sagteware-voorvereistes Hardeware-samestelling Eerste toets Opspoor van baanlyne en vertoon die riglyne
Monitor versnelling met behulp van Raspberry Pi en AIS328DQTR met behulp van Python: 6 stappe
Monitering van versnelling met behulp van Raspberry Pi en AIS328DQTR Gebruik van Python: Versnelling is eindig, volgens ek volgens sommige wette van die fisika.- Terry Riley 'n Jagluiperd gebruik ongelooflike versnelling en vinnige spoedveranderinge wanneer hy jaag. Die vinnigste wesens aan wal gebruik af en toe sy hoogste tempo om prooi te vang. Die
Hoe om van 0 tot 99 te tel met behulp van 8051 mikrobeheerder met 7 segmentweergawe: 5 stappe (met foto's)
Hoe om van 0 tot 99 te tel Met behulp van 8051 mikrobeheerder met 7 -segmentweergawe: Hallo almal, in hierdie tutoriaal gaan ons u vertel hoe om van 0 tot 99 te tel met twee 7 -segment -skerms