Ich bin ein Biologe mit sehr wenig Erfahrung in der Bildverarbeitung, aber ausreichenden Kenntnissen von MATLAB und habe die Bildverarbeitungs-Toolbox. Idealerweise bin ich auf der Suche nach einer MATLAB-basierten Lösung, aber ein Ansatz, der die Vorgehensweise beschreibt, wäre auch hilfreich.
Update (28. November 2011) Bei der Verwendung von zusammengesetzten Bildern treten anscheinend bestimmte Probleme auf (z. B. Überlappungen bei Signal und Farbdefinition) (wie in der ersten Frage dargestellt). Ich füge separate Bilder aus den beiden Kanälen hinzu: Grün und Rot (die türkisfarbenen Bereiche im zusammengesetzten Bild können ignoriert werden) und das zusammengesetzte Bild . Der rote Kanal ist aus zwei Gründen schlecht: 1. Er hat einen schlechten Kontrast aufgrund eines höheren Hintergrunds. 2. Da Rot auf der Hintergrundebene ins Grüne zu bluten scheint.
Ein Feature ist definiert als ein Bereich auf dem zusammengesetzten Bild, der Grün-Rot-Türkis-Rot-Grün aufweist, oder gleichwertig die 2 benachbarten linearen Segmente auf dem Grün und dem Rot, die kollinear und ansteckend sind.
Ich hoffe, dass das Betrachten der Bilder aus den beiden getrennten Kanälen die Identifizierung der Merkmale erleichtert.
Ich habe folgende Vorschläge für den Algorithmus:
Identifizieren Sie zuerst kolineare grüne Segmente (und bestimmen Sie die Länge der grünen Segmente)
Stellen Sie fest, ob benachbarte ansteckende und kolineare Segmente im roten Kanal einander zugewandt sind (dh grün-> rot-> <-rot <-grün). Wenn ja, definieren Sie die Länge des roten Segments ab dem Punkt, an dem die grünen Segmente enden (da sie sich mit den grünen Segmenten überschneiden), bis zu dem Punkt auf dem roten Segment, der dem anderen roten Segment des Features am nächsten liegt. (dh eines der Enden des roten Segments befindet sich am Ende des überlappenden grünen Segments).
Danke vielmals!
Hintergrund :
Meine Frage bezieht sich auf das Extrahieren von Merkmalen aus einem Bild:
Das Originalbild (tif) befindet sich hier:
Bildbeispiel 1 (Dropbox)
Dieses Bild besteht aus 3 Kanälen (im TIF-Format): Rot, Grün und Türkis. Die türkisfarbenen Fasern markieren einfach die gesamte DNA, die wir auf dem Deckglas haben. Das interessante Merkmal ist das Grün-Rot-Türkis-Rot-Grün-Merkmal auf dem einzelnen DNA-Strang, der sich in der Mitte des Bildes befindet.
Rot ist im Allgemeinen am lautesten. Dieses Beispiel ist gut, weil der Kontrast gut ist. Manchmal sind die Bilder jedoch nicht so schön und das gesamte Bild weist Farbtöne auf. Daher funktioniert die harte Kodierung eines bestimmten RGB-Werts für die grüne und rote Farbe möglicherweise nicht für alle Bilder. Beachten Sie auch, dass die Fasern nicht unbedingt horizontal sind, sondern möglicherweise gedreht werden (aber niemals vertikal).
Bitte sehen Sie dieses Bild für ein Beispiel:
Das Originalbild (tif) befindet sich hier:
Bildbeispiel 2 (Dropbox)
Manchmal weist ein einzelnes Bild viele solcher Merkmale auf, und manchmal befinden sich mehrere Merkmale auf demselben DNA-Strang. Schließlich können manchmal nur Teilmerkmale vorhanden sein (dh isolierte grüne oder isolierte rote oder isolierte grün-rote Segmente, aber ungepaart).
Frage:
Ich wäre dankbar, wenn mir jemand helfen könnte, die Längen der einzelnen Segmente von grünen und roten Segmenten zu ermitteln, dh da das interessierende Merkmal Grün-Rot - Türkis - Rot-Grün ist, hätte jedes Merkmal ein Array von 5 Werten (Länge des ersten grünen Segments, Länge des ersten roten Segments, Länge des türkisen Segments, Länge des zweiten roten Segments und Länge des zweiten grünen Segments).