Hoe bijhouden van uw Robot met OpenCV (17 / 28 stap)

Stap 17: OpenCV: Selecteer uw kleur


 #Slope dx = cxAvg - tX dy = cyAvg - tY #Quad I -- Goodif tX >= cxAvg and tY <= cyAvg: rads = atan2(dy,dx) degs = degrees(rads) degs = degs -90#Quad II -- Goodelif tX >= cxAvg and tY >= cyAvg: rads = atan2(dx,dy) degs = degrees(rads) degs = (degs *-1) #Quad IIIelif tX <= cxAvg and tY >= cyAvg: rads = atan2(dx,-dy) degs = degrees(rads) degs = degs +180#degs = 3elif tX <= cxAvg and tY <= cyAvg: rads = atan2(dx,-dy) degs = degrees(rads) +180#degs = 4 
 180 181 182 183 184 185 186 187 188 189 

Deze bijzondere lijn definieert welke kleur u, in het bijzonder de twee sets met waarden zoekt: 130, 170, 110 en 190, 190, 200.  Deze twee waarden ingesteld de ondergrens en de bovengrens van de kleur die u zoekt te vinden.  De reden waarom we boven- en ondergrenzen, die we kleur drempels noemen, is omdat onze robot verschillende lichten doorlopen zal.  Verschillende lichtbronnen hebben de neiging om te wijzigen hoe de webcam leest de kleur.

De kleurindeling die we gebruiken is HSV, wat voor kleurtoon, verzadiging, waarde staat.  Later, zal ik waarschijnlijk schrijven code schakelt de robot binnen onze eigenlijke programma, maar voor nu ik gebruik Gimp en de volgende methode:

  1. Instellen van uw webcam de in het gebied je zal gebruiken, net als u klaar bent om hem te controleren.
  2. Voer het programma van de webcam aangesloten in stap 10.
  3. Terwijl de webcam-programma is het bekijken van uw robot, druk op Ctrl + Print Screen
  4. Open Gimp.
  5. Druk op Ctrl + V om het plak de schermopname in gimp.
  6. Nu vinden de kleur Selector tool.
  7. Selecteer de belangrijkste kleur van uw robot.
  8. Dubbelklik nu op het plein van de kleur op de werkbalk.
  9. Een venster moet openen met kleurinformatie met betrekking tot de kleur die u hebt geselecteerd, uw robot knallen.
  10. Nu, de drie nummers moet dicht bij wat we nodig hebben.  Helaas moeten we omzetten OpenCV van HSV nummerreeks van Gimp HSV nummerreeks.  U ziet, HSV waardebereik in Gimp is H = 0-360, S = 0-100, en V = 0-100.  In OpenCV, H = 0-180, S = 0-255, V = 0-255.  Dus, sommige conversie moet plaatsvinden.
  11. Uit mijn selectie eindigde ik met Gimp aantallen, H: 355, S:50 en V:61.  Ik kon krijgen alle fancy en berekenen van de juiste aantallen, maar ik figuur 180 (OpenCV) is de helft van 360, dus voor mijn H ik gewoon gedeeld door twee: 177. De andere twee denk ik beetje bij een beetje.  Ik sloeg een double en toegevoegd van 25, S: 125 en V: 147.
  12. Op het einde gaf dit mij middelste getallen.  Maar ik wilde een bovenste en onderste drempel, dus ik nam elk nummer en 20 to give me een lagere afgetrokken, en 20 to give me een bovenste toegevoegd.
  13. Het resultaat van mijn robot was:
 #Convert float to int targetDegs =int(math.floor(degs)) #Variable to print the degrees offset from target angle. strTargetDegs =" "#Put the target angle into a string to printed. strTargetDegs =str(math.floor(degs)) #///End Finding Target Angle//////////////////////////////////// 
 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 

Ik zal proberen om een kleurenkiezer code in het programma om dit hele ding een makkie.

Als u lees meer willen zou, berichten twee goede op Stack Overflow.

  1. Het kiezen van HSV
  2. Het vinden van HSV in beeld.

Gerelateerde Artikelen

Maken van een Robot met Camera kleurherkenning

Maken van een Robot met Camera kleurherkenning

Hallo! Dit is voor groep 18 jaar of ouder.Dit instructable begeleidt u stapsgewijs door het bouwen van een robot met kleurherkenning met behulp van een camera en een servo. De robot die zal ik bouwen heeft ook servo's voor wapens, maar ze zijn niet n
Stem van de Robot met behulp van vrije software

Stem van de Robot met behulp van vrije software

hebben u ooit gewild uw eigen persoonlijke robot stem om u te vertellen heb je mail, of u te mogen verwelkomen op uw computer wanneer u inlogt?Zoek niet meer! Voor met een website, een gratis audio bewerkingsprogramma, en een paar eenvoudige stappen
Controle van uw Robot met behulp van de mobiele telefoon

Controle van uw Robot met behulp van de mobiele telefoon

DEZE hele TUTORIAL IS ook beschikbaar op mijn WEBSITEHallo zal wereld in deze post ik u tonen hoe om te controleren van de robot met behulp van de mobiele telefoon. Besturen van een robot met behulp van de mobiele telefoon is niet zo ingewikkeld als
Hoe maak je kleine robots met nRover bestuur

Hoe maak je kleine robots met nRover bestuur

De nRover, is een kleine bord gemaakt om te bouwen van kleine robots zoals UGV (onbemande ground voertuigen), lijn volgeling of Domotica, het kan worden gecontroleerd door wifi, Bluetooth en radio-controle. Het belangrijkste doel is de ontwikkeling v
Doolhof van Oplosser Robot, met behulp van kunstmatige intelligentie met Arduino

Doolhof van Oplosser Robot, met behulp van kunstmatige intelligentie met Arduino

(Als je dit Instructable, vergeet dan niet te stemmen (boven: rechts hoek vlag). Rex, de Robot concurreert op ROBOTICA en sensoren wedstrijden. Heel hartelijk bedankt! ;-)Dit Instructable werd ontwikkeld na mijn laatste project: lijn volgeling Robot
Het bijhouden van een lichtbron met een Actuator

Het bijhouden van een lichtbron met een Actuator

.. .of misschien het moet worden genoemd "Met behulp van een oude zonnecel van een volledig gecorrodeerde tuin licht als een lichtsensor". :)In dit instructable, ik bouwen op mijn vorige en Toon u hoe kun je een actuator vinden de grootste licht
Besturen van een Robot met een Wii-afstandsbediening

Besturen van een Robot met een Wii-afstandsbediening

Dit is een leuke kleine project die gebruikmaakt van een Raspberry Pi, een Robot Finch en een Wii-afstandsbediening (AKA Wiimote), om aan te tonen enkele van de dingen die je met een raspberry pi en/of een Wii doen kunt remote. Het maakt gebruik van
Delen en bijhouden van uw boeken met behulp van BookCrossing

Delen en bijhouden van uw boeken met behulp van BookCrossing

BookCrossing is een website die u toelaat om unieke nummers toewijzen aan uw boeken, en gebruik van deze nummers om uw boeken als ze over de hele wereld reizen. Dit wordt natuurlijk een stuk spannender als uw boeken daadwerkelijk krijgen om te vertre
Controle van uw Robot met behulp van een Wii Nunchuck (en een Arduino)

Controle van uw Robot met behulp van een Wii Nunchuck (en een Arduino)

na het dragen van mezelf spelen van Wii Boksen, ik kreeg aan het denken zou het niet geweldig als ik zou kunnen dit gebruiken om te controleren mijn robot, (op zoek naar mijn linkerhand).Op zoek rond het internet vond ik een schare van mensen die soo
Afstand houden van de robot met de Smart Controller Servo

Afstand houden van de robot met de Smart Controller Servo

Deze demo ik ga u tonen hoe gebruik je de Smart Controller Servo te maken van een robot zijn afstand houden.Het maakt gebruik van twee continue rotatie servomotoren en een afstandssensor. De slimme Servo-Controller wordt gebruikt voor het maken van e
Besturen van een Robot met een RC zender & ontvanger

Besturen van een Robot met een RC zender & ontvanger

In dit instructable zal lopen we door middel van het instellen van een traditionele RC hobby zender en ontvanger met een RoboClaw motorcontroller te rijden een robot rond (zoals De ServoCity.com Runt Rovers).Stap 1: Draad het omhoog.Motoren:Hebt u me
Basis Set van en de controle van een Robot met vaste as

Basis Set van en de controle van een Robot met vaste as

Dit is hoe we waren in staat om een robot met een fix as bewegen rond een vierkant met 2 x 2 en toont ook hoe we het instellen.Stap 1: De Items die u nodig hebtItemsEen 9v batterijEen 9v batterij connector0.0 Philips hoofd schroevendraaier4 DC-motore
Versterken van uw robot met sugru

Versterken van uw robot met sugru

In onze hackerspace bouwen www.MADspace.nl we hebben een robot die een prijs heeft gewonnen (Zie url: http://hackaday.io/project/740-mars). Maar helaas het materiaal is zwak en kan breken tijdens het rijden de robot te hard tegen de muur. Met Sugru k
Het bouwen van een Robot met behulp van MSP430 Launchpad

Het bouwen van een Robot met behulp van MSP430 Launchpad

In dit Instructable gaan we aan het bouwen van een kleine robot met behulp van MSP430 Launchpad van TI. De robot zal gebruik maken van twee gericht gelijkstroommotoren en differentiële aandrijfsysteem zal tewerkstellen.De intelligentie is voorzien va