LabVIEWForum.de
Farberkennung - Druckversion

+- LabVIEWForum.de (https://www.labviewforum.de)
+-- Forum: LabVIEW (/Forum-LabVIEW)
+--- Forum: LabVIEW Module (/Forum-LabVIEW-Module)
+---- Forum: LabVIEW Vision (/Forum-LabVIEW-Vision)
+---- Thema: Farberkennung (/Thread-Farberkennung)



Farberkennung - Börli89 - 15.04.2013 09:19

Hallo,

ich bin absoluter LabView Anfänger benötige es aber für meine Masterarbeit. Ich möchte eine Farberkennung innerhalb eines Bildes durchführen. Ich möchte dir roten und grünen Blasen im Bild erkennen (u. später zählen). Ich hab mir das ähnlich wie bei einem GW-Bild vorgestellt, dass alles was nicht rot oder grün ist, in der Darstellung einfach schwarz gefärbt wird. Leider finde ich keinen Ansatz was dafür alles benötigt wird.
Ich würde mich über jede Antwort freuen.

Grüße
Franzi


RE: Farberkennung - jg - 15.04.2013 09:29

Bin zwar kein Experte in VISION, aber wie wäre es, das RGB-Bild in seinen R / G / B Anteil aufzuteilen und dann mit den entsprechenden Graustufen-Bildern weiterzumachen?

Gruß, Jens


RE: Farberkennung - Börli89 - 15.04.2013 09:40

Hi,

danke ersteinmal für deine Antwort. Diese Lösung habe ich auch schon in Betracht gezogen. Nur leider scheitere ich daran ein Bild im JPEG Format in ein RGB-Bild zu wandeln.
Grüße


RE: Farberkennung - b.p - 15.04.2013 09:51

Hast du NI Vision / IMAQ?
Grüße,
Birgit


RE: Farberkennung - Börli89 - 15.04.2013 10:02

Hi,

ja das hab ich. Ich habe auch schon hingekriegt, das Bild in Grauwerte zu wandeln und mit Hilfe einer Schwellfunktion meine Blasen recht gut in schwarz/weiß anzeigen zu lassen.
Nun hätte ich das ganze eben gerne für bunt (also grüne, rote Blasen segmentieren). Da hatte ich die Idee, dass das Programm ja im Prinzip ähnlich klappen müsste. Wenn ich allerdings nur das Grayscale 16 auf RGB 16 umstelle, wird gar kein Bild mehr angezeigt?

Grüße
Franzi


RE: Farberkennung - b.p - 15.04.2013 10:27

Das Problem bei den Bildfunktionen ist, dass man konvertieren muss.
RBG besteht aus 3 Color Planes, die jeweils ein Graubild darstellen. Dazu gibt es Funktionen wie "Extract Single Color Plane", und damit kannst du das auch lösen, wie du dir das vorstellst. (Was keine schlechte Idee ist.)

Aber grundsätzlich will ich dir n Tipp geben, wie das noch ein bisschen effizienter geht.
(Erstmal: Organisier dir das "Vision Concept Manual", das ist ein pdf, das frei im Netz rumschwebt, und die ganzen Funktionen erklärt. Und wenn du mit einer Funktion nicht klar kommst, schau die Examples an, nicht die Hilfe)

Starte erst mal das Programm "Vision Assistant". Das ist das beste, das einem IMAQ-Programmierer passieren kann (und nein, dafür werd ich nicht bezahlt, es ist einfach gut :-))

Öffne deine Datei mit Datei Öffnen, und unten links siehst du die Standard-Funktionen, um damit zu spielen.
Als ersten Hinweis:
Farbbildverarbeitung ist notorisch für seine Instabilität - das liegt daran, dass sich Farben bei ändernder Beleuchtung usw. gerne ändern. Ich weiß nicht, woher deine Bilddaten kommen (der Farbkontrast ist hier klasse und mehr als ausreichend), aber stell sicher, dass sich da nicht zu viel ändert.

Eine Auftrennung in RGB ist damit gut möglich, aber du wirst feststellen, dass dein Grün nicht wirklich ein Grün ist, und dein Rot nicht wirlich ein Rot, und deswegen schlage ich dir die Funktion "Color Threshold" vor.
Wähl sie einfach unten links aus, und füg sie ein. Screenshot
Wenn du die "gewünschte" Stelle markierst, siehst du die Farbverteilung in diesem ROI (Region of Interrest), und kannst darauf deinen Threshold abstimmen.

Ich kann nicht rauslesen, ob du die grünen und roten Blasen getrennt zählen willst, deswegen zeig ich dir mal, wie man es getrennt macht, im Zweifelsfall hilft eine Addition :-).

Damit hast du dann dein Schwarz-Weiß Bild. Leider hat es vielen anderen Unsinn, außer deine großen Blobs, die kriegst du gut mit Morphologie weg. Und dann noch schnell mit "Particle Analysis" zählen lassen, und damit ist dein Programm eigetnlich schon fertig. Was du jetzt noch machen musst, ist ein LabVIEW Programm daraus.

Dazu gibts auch ne Funktion, sh. Screenshot. (Falls die bei Academic nicht dabei ist, such die Funktionen einfach im LaBVIEW selber zusammen.)

Viel Spaß beim Rumspielen,
Birgit