Ich verwende regionprop-Funktion in matlab um zu bekommenMajorAxisLänge eines Bildes. Ich denke, logischerweise sollte diese Zahl nicht größer als sqrt (a ^ 2 + b ^ 2) sein, wobei a ab b die Breite und Höhe des Bildes sind. aber für mein bild ist es. Mein Schwarzweißbild enthält einen schwarzen Kreis in der Bildmitte. Ich finde das seltsam. Kann mir jemand helfen?
Vielen Dank.
Antworten:
1 für die Antwort № 1Wenn Sie sich den Code von regionprops
(Unterfunktion ComputeEllipseParams
), siehst du, dass sie den zweiten Moment dazu benutzenschätzen den Ellipsoidradius. Dies funktioniert sehr gut für ellipsoidförmige Features, aber nicht sehr gut für Features mit Löchern. Der zweite Moment nimmt zu, wenn Sie Pixel aus dem Zentroid entfernen (das heißt, warum sie I-Strahlen erzeugen). Je größer das "Loch" in der Bildmitte ist, desto größer ist der scheinbare Ellipsoidradius.
In Ihrem Fall können Sie besser mit der extrema
Eigenschaft von regionprops, und den größten Radius von dort zu berechnen.