LabVIEWForum.de - Probleme beim Shape Matching

LabVIEWForum.de

Normale Version: Probleme beim Shape Matching
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Hallo liebes Forum,

ich hätte folgende Problemstellung:

Ein Grayscale-Bild wird durch die Threshold-Option zu einem 8-Bit-Binary umgewandelt.
Nachdem dieses Binary noch ein paar Morphology-Optionen durchlaufen hat, möchte ich per Shape-Matching Übereinstimmungen finden/suchen,
damit wie rechts das untere Segement im Bild "Bild_Gesamtübersicht" nicht gefunden wird.
Ich kann als Template Image aber nicht das Bild "Shape_Matching2" benutzen, hier findet Vision keine Übereinstimmungen.
Ich wollte nun z.B. die Segemente "OBEN" und "Mitte" (Bild "Segmente") als Template Image hinterlegen.
Nun erkennt Vision bei der Segementsuche "OBEN" auch schon zum Teil die "Mittig"-Segmente. (Bild "Shape_Matching")

Hat jemand eine Idee/Vorschlag, wie ich mein Problem lösen könnte?

Danke!!
Du beschreibst vor allem, was du machst und dass es nicht funktioniert. Kannst du noch beschreiben, worum es eigentlich geht, also was das Ziel ist. Willst du nur feststellen, dass, wie im Beispiel, rechts unten ein Loch ist?

Beim Shape matching gibt es die Eingänge Tolerance, Connectivity und Scale Invariance. Insbesondere mit der passenden Einstellung für Tolerance sollte das doch funktionieren. Wenn die Bilder von Aufnahme zu Aufnahme so stark variieren, dass dies am Ende nicht zuverlässig funktioniert, dann kannst du auch die Templates jedes mal aus dem aufgenommenen Bild erzeugen. Es kommt aber darauf an, was du wirklich beabsichtigst und das ist mir einfach noch viel zu unklar. Manchmal ist auch das gewählte Verfahren schon vom Prinzip her ungeeignet. Das heist dann alles wegwerfen und eine ganz andere Lösung suchen.
Ich möchte in den Bilder nur die Segmente finden bzw. zählen, welche mit dem Template übereinstimmen.
Solche Segmente wie das mit dem Loch, sollen nicht gefunden. Es geht nur um die i.O. Segmente.
Leider werden z.B. das rechte mittige Segment bei einer Tolerance von min. 920 mit dem Wert 947 vor dem oberen Segemten von 942 gefunden.

Es geht im Großen und Ganzen darum, dass die roten Flächen blaue COB-LEDs sind, welche mit einer bestimmten Intensität leuchten.
Die LEDs können z.B. durch falsches Aufbringen auf die Platine oder durch ESD Schädigung haben und dann zu einer Schattenbildung neigen.
Erst einmal herzlichen dank für die Infos.

Wie wäre es denn, wenn du anstatt des Shape Matching die gefundenen Muster als Maske verwendest und dann die Summe der Intensität (oder auch die minimale Intensität) der jeweiligen LED bestimmst. Das Ergebnis kannst dann als Kriterium verwenden (hell = gut, dunkel=schlecht).

Nachtrag: Das mit der Maske ist eventuell nicht zielführend, weil dort ja die ganz dunklen Bereiche nicht dabei sind. Eventuell in Rechteck um die LED herum definieren und innerhalb dieses Bereichs die Intensität bestimmen. Einen Threshold brauchst du eventuell auch noch um das Grundrauschen zu unterdrücken.
Referenz-URLs