segmentiert Bild mit Wasserscheidentransformation
SegmentiertesBild = Watershed(Bild, Marker);
2D-Matrix vom Typ uint8
2D-Matrix of type boolean, Blobs von %t-Pixel werden als Ausgangspunkte verwendet
2D-Matrix vom Typ int32, hat die gleiche Größe wie Bild
Diese Funktion segmentiert ein Bild mit der Wasserscheidentransformation.
global IPD_PATH; RGB = ReadImage(IPD_PATH + 'demos\teaset.png'); Bild = RGB2Gray(RGB); global EDGE_SOBEL; Gradient = EdgeFilter(Bild, EDGE_SOBEL); KantenBild = ~SegmentByThreshold(Gradient, 60); DistanzBild = DistanceTransform(KantenBild); SchwellwertBild = SegmentByThreshold(DistanzBild, 8); Marker = SearchBlobs(SchwellwertBild); SegmentiertesBild = Watershed(Gradient, Marker); figure(); AnzahlFarben = length(unique(SegmentiertesBild)); ShowImage(SegmentiertesBild, ... 'Resultat der Waterscheidentransformation', ... jetcolormap(AnzahlFarben)); | ![]() | ![]() |