vrijdag 27 maart 2015

Stoeldetectie



Als er een stoel wordt gedetecteerd zal de robot zich hier recht voor moeten positioneren, deze vastpakken, een rondje draaien, de stoel weer terug zetten, om de stoel heen manoeuvreren en verder gaan in zijn pad. De stoel gaat herkend worden door middel van een markeerder die wordt gedetecteerd met een pixi CMUcam5 die werkt met een arduino. De markeerder bevat meerdere kleuren waardoor ook de hoek van de markeerder herkend kan worden, waardoor de robot de stoel op de verkeerde hoek kan pakken.
De gegevens uit de camera kan uitgelezen worden via de seriële monitor op de arduino, de gegevens zien er dan als volgt uit:

Detected 1:
  block 0: sig: 12 x: 159 y: 109 width: 61 height: 61 angle: 20

Er wordt een object gedetecteerd met een ‘signature’, dit is de kleur of kleurcode die je aan de pixy camera geleerd hebt. In dit geval is de signature 12, dit wilt zeggen dat het een combinatie is van kleurcode 1 en 2. De positie van het object wordt ook weergegeven op de x (tussen 0 en 319) en y ( tussen 0 en 199) as. De hoogte en de breedte van het object worden weergegeven, hiermee kun je het oppervlak van het object berekenen. Tot slot wordt de hoek waaronder het object zit weergegeven als er gebruik gemaakt word van een markeerder met meerdere kleuren.
De informatie van de objecten kunnen in de volgende functie op gevraagd worden:
·  pixy.blocks[i].signature
·  pixy.blocks[i].x
·  pixy.blocks[i].y
·  pixy.blocks[i].width
·  pixy.blocks[i].height
·  pixy.blocks[i].angle

Waarbij de I het nummer van het gedetecteerde object is.

Geen opmerkingen:

Een reactie posten