0

Ich möchte den weißen Bereich auf dem Bild unten (ROI) mithilfe der Kantenerkennung extrahieren. Ich möchte dies beacouse tun, ich muss sehr genaue Maske der weißen Region bekommen. Das Bild loks wie folgt aus:So extrahieren Sie ROI auf Graustufenbildern mit Kantenerkennung

enter image description here

Wenn ich einige Matlab inbuild Funktionen nutzen das Problem ist, dass ich Kanten auch der weißen Bereiche außerhalb bekommen (an der Grenze zwischen schwarzen Bereich und graue Fläche), so dass, wenn ich erode Außenkante I Ecken der weißen Region verlieren an den beiden Seiten ...

enter image description here

ich muss auch die gesamte weiße Fläche in der Nähe Maske zu bekommen, nachdem richtig Kanten erkannt ...

Irgendwelche anderen Vorschläge, um Maske des weißen Bereichs auf dem ersten Bild zu berechnen? Ich habe bereits versucht Schwellwertbildung und das Verfahren war recht succesfull ...

Antwort

0

Wenn die Bilder alle aussehen, dass es sieht wirklich leicht zu lösen:

Ibw=I>somevaluebiggerthangrey; 

Dann, wenn Sie den Umfang wollen, tun

Iperim=bwperim(Ibw); 

Sie sollten in der Lage sein, den Wert somevaluebiggerthangrey zu finden, da Sie deutlich 3 Farben haben. Suchen Sie nach dem "Spitzenwert" dieser Farben (z. B. Ergebnis könnte 0, 0.5 and 1 lauten), und geben Sie einen Wert zwischen den beiden Spitzenwerten an, z. B. somevaluebiggerthangrey=0.75. Sie sollten dies automatisch mit histogram und vielleicht findpeaks

tun können