Innehållsförteckning:
Video: Realtids Rubiks kub med ögonbindellösare med Raspberry Pi och OpenCV: 4 steg
2024 Författare: John Day | [email protected]. Senast ändrad: 2024-01-30 12:36
Detta är den andra versionen av Rubiks kubverktyg för lösningar i ögonbindel. Den första versionen utvecklades av javascript, du kan se projektet RubiksCubeBlindfolded1
Till skillnad från den föregående använder denna version OpenCV -biblioteket för att upptäcka färgerna och mata in ingångarna och ger bättre visualiseringsteknik.
Det största problemet i den här senaste versionen är visualisering av utdata, sekvensobjekten visas på den ritade kuben 1 åt gången. Eftersom kuben är en 3D -form är det svårt att visa alla sidor samtidigt. Se resultaten på min YouTube -kanal YouTube -video
Jag använder en kub utan klistermärke, detta kräver ett anpassat erkännande och de flesta öppen källkoder stöds inte. Jag använde denna öppen källkod som utvecklats av Kim Koomen som specificerar fasta områden på kameraramen för att upptäcka de korrekta färgerna på kubytans qbr -projekt
Steg 1: Komponenter som behövs
- Raspberry Pi
- webbkamera
eller så kan du använda din bärbara dator
Steg 2: Beroenden
- Python 3
- numpy bibliotek
- OpenCV -bibliotek
$ sudo apt-get install python3-opencv
RubiksBlindfolded package
$ pip3 installera RubiksBlindfolded
Steg 3: Förberedelser
Du måste kalibrera färgdetekteringen som ett försteg. HSV -färgkoderna varierar på grund av belysningen, kamerans kvalitet och upplösning och själva kubfärgerna. I mitt fall kombinerar jag vita och gula lampor för att få korrekta resultat.
Uppdatera funktionen get_color_name (hsv) på colordetection.py
Den ursprungliga källkoden använder kociemba -paketet för att lösa kuben, det löser sig genom att hitta de omvända stegen i alla krypteringar. I den här versionen använde jag mitt eget lösningspaket som heter RubiksBlindfolded som publicerades på PyPI. Se beskrivningen för att veta hur du använder den RubiksBlindfolded
Steg 4: Användning
Efter att du har installerat alla beroenden och ställt in din kamera är det här dags att köra blindfolded.py -skript
Först måste du skanna din kub i rätt riktning. Detta är kubstrukturen, ordningen för att skanna ansikten är inte viktig. Lägg märke till att dessa är standardfärgerna på kubytorna, du kan ändra dem genom att uppdatera notationsordlistan för skyltar med blindfolded.py
För att göra skanningen, tryck på mellanslagstangenten för att spara vyn och ESC -tangenten efter avslutad
För det andra kan du se lösningssekvenserna på konsolen och paritetskontrollen för att berätta om du behöver använda paritetsalgoritmen eller inte
För det tredje genereras en ny ram som visar 2 ritade kuber för kantsekvens och hörnsekvens. Du kan använda vänster- och högerpiltangenterna för att växla mellan sekvensobjekten och upp- och nedpiltangenterna för att växla mellan kant och hörn. den ljusgrå färgen representerar den aktuella sekvensen.
Du kan se färgerna på den aktuella bufferten som förändras dynamiskt med piltangenterna. Gråa färger representerar målet cubie, och rosa färg representerar byta ansikte
Källkod
github.com/mn-banjar/blindfolded2
Rekommenderad:
En realtids brunnvattennivåmätare: 6 steg (med bilder)
En mätare för brunnvattennivå i realtid: Dessa instruktioner beskriver hur man bygger en lågnivåmätare i realtid för användning i grävda brunnar. Vattennivåmätaren är utformad för att hänga inuti en grävd brunn, mäta vattennivån en gång om dagen och skicka data via WiFi eller mobilanslutning
En realtids brunnvattentemperatur, konduktivitet och vattennivåmätare: 6 steg (med bilder)
En brunnvattentemperatur, konduktivitet och vattennivåmätare i realtid: Dessa instruktioner beskriver hur man bygger en billig, realtidsvattenmätare för övervakning av temperatur, elektrisk konduktivitet (EC) och vattennivåer i grävda brunnar. Mätaren är utformad för att hänga inuti en grävd brunn, mäta vattentemperaturen, EC och
8 Reläkontroll med NodeMCU och IR -mottagare med WiFi och IR -fjärrkontroll och Android -app: 5 steg (med bilder)
8 Reläkontroll med NodeMCU och IR -mottagare med WiFi och IR -fjärrkontroll och Android -app: Styrning av 8 reläväxlar med nodemcu och IR -mottagare via wifi och IR -fjärrkontroll och Android -app. Fjärrkontrollen fungerar oberoende av wifi -anslutning. HÄR ÄR EN UPPDATERAD VERSIONKLICK HÄR
IoT Data Science PiNet för realtids smartskärmsdata, nämligen: 4 steg
IoT Data Science PiNet för realtid Smart Screen Data Viz: Du kan enkelt sätta ihop ett IoT-nätverk av smarta skärmar för datavisualisering för att överbelasta dina forskningsinsatser inom Data Science eller något kvantitativt område. Du kan ringa till " push " av dina tomter till kunderna direkt från din
Ansikts- och ögondetektering med Raspberry Pi Zero och Opencv: 3 steg
Ansikts- och ögondetektering med Raspberry Pi Zero och Opencv: I den här instruerbara ska jag visa hur du kan upptäcka ansikte och öga med hallon pi och opencv. Detta är min första instruerbara på opencv. Jag följde många självstudier för att ställa in öppna cv i hallon men slog varje gång med några fel. Hur som helst jag