Quantcast
Channel: fischertechnik community forum
Viewing all articles
Browse latest Browse all 1329

Robo Pro / Computing / Software • Farben/Farberkennung in Robo Pro Coding und Python (Bilder, Kamerabilder...)

$
0
0
Hallo...
1. Sache:
Ich habe mal eine Frage zu den Farben/ Farberkennung in Robo Pro Coding und Python.
Im Beispielprogramm zum AddOn Ki, gibt es folgenden Programmausschnitt:
Python Code in Robo Pro einfügen Beispiel Addon Ki.png
Da geht es um die Umwandlung des aufgenommenen Bildes in die color[0] = Farbe und color[2] = Farbsättigung (BTW color[1] = Farbhelligkeit)

Python-Code:

CODE:

#get color from framecolor = (np.mean(frame[ 80:120,  100:240], axis=(0, 1)))color = cv2.cvtColor(np.uint8([[[color[0],color[1],color[2]]]]),cv2.COLOR_BGR2HLS)[0][0]hue = color[0] # range 0-180sat = color[2] # range 0-255
Hier mal der "mein" HSV(HLS)-Farbraum:
HSV(HLS)-Farben.png
Beim Befehl...
color = cv2.cvtColor(np.uint8([[[color[0],color[1],color[2]]]]),cv2.COLOR_BGR2HLS)[0][0]
hue = color[0] # range 0-180
...wird von einem RGB-Bild in die HLSWerte umgewandelt.
Frage:
Warum ist der Bereich aber nur 0-180°?
OK, RGB selbst geht nur bis 180°. Danach sind es Mischfarben, von RGB aus gesehen - denke ich.
Zumindes bei den Erklärungen zu Python bzw. zu Open CV, geht hue bis 255, wobei es schon bei HLS bist 360 gehen sollte.
Wird dann z.B. Magenta (300°) in eher Rot 0° und Blau (240°) in Cyan 180° umgewandelt?

2. Sache (Beispielprogramm zum AddOn Ki):
Hier der Programmausschnitt der Farbauswertung vom AddOn Ki.
Farbauswertung AddOn KI.png
Im ersten Teil ist hue >= 85° und < 130°. Somit ist es "Grün" und color wird = 3 gesetzt.
Im zweiten Teil ist hue zwischen 130° und 180° und somit "Blau" -oder- hue ist zwischen 0° und 15° und somit "Rot" und color wird = 2 gesetzt.
Im dritten Teil wird der Rest, also 15° bis 85° = "gelb", auf color = 1 gesetzt.

Aber...
in der Auswertung
Farbauswertung AddOn KI Auswerten.png
wird als erstes BOHO (Bohrloch) und color=1 (gelb) ausgewertet. Im Modell ist das der weiße Baustein mit einem Bohrloch.
Somit scheint es, dass gelbfür weiß genommen wird. num wird =1 gesetzt

In der zweiten Abfrage ist es MIPO2, also zwei Fräsungen und Color 2 = Blau oder Rot.
Da im Modell nur weiße und blaue Bausteine sind, ist es halt nur der blaue, der ausgegeben wird. num wird =2 gesetzt

In der dritten Abfrage ist es BOHOMIPO2, also Bohrloch mit zwei Fräsungen und Color 3 = grün. num wird =3 gesetzt
Die ersten drei sind Passed.

Warum auch immer, gibt es eine num=4 für den Rest und die sind Failed.
In der Sortierung dann:
Farbauswertung AddOn KI Sortieren.png
Hier wird num=1 (gelb (weiß) mit Loch)
und
num=3 (----grün----, Bohrloch mit zwei Fräsungen) ausgewertet. <---- grün? Warum nicht Blau/Rot????

Hab ich da einen Denkfehler oder ist das Farbschema falsch?
Mit freundlichen Grüßen
Holger

Statistik: Verfasst von fishfriend — 18 Apr 2024, 12:38



Viewing all articles
Browse latest Browse all 1329