smallest_circlesmallest_circleSmallestCirclesmallest_circleSmallestCircleSmallestCircle bestimmt den kleinsten umschließenden Kreis
einer Region, also den Kreis mit dem kleinsten Flächeninhalt unter
allen Kreisen, die die Region enthalten. Für diesen Kreis werden der
Mittelpunkt (RowRowRowRowRowrow,ColumnColumnColumnColumnColumncolumn) und der Radius
(RadiusRadiusRadiusRadiusRadiusradius) berechnet. Der Operator findet Anwendung, wenn
z.B. die Lage und Größe von kreisförmigen Objekten (z.B. Münzen)
bestimmt werden soll, die aber aufgrund schlechter Segmentation im
Inneren nicht homogen sind oder unterbrochene Ränder besitzen. Die
Ausgabe des Operators ist so gewählt, dass sie als Eingabe für die
Operatoren disp_circledisp_circleDispCircledisp_circleDispCircleDispCircle und gen_circlegen_circleGenCirclegen_circleGenCircleGenCircle
verwendet werden kann.
Intern erfolgt die Berechnung basierend auf den
Mittelpunktskoordinaten der Regionenpixel. Um zu berücksichtigen,
dass Pixel im Regionenfall eigentlich flächenhaft zu interpretieren
sind, wird der berechnete Radius zum Schluss noch um 0.5
vergrößert. Dies gibt in den meisten Fällen ein gutes Ergebnis, im
ungünstigsten Fall (Pixeldiagonale) ist diese Vergrößerung allerdings
nicht ausreichend. Wollte man sicherstellen, dass der Umriss der
Eingaberegion komplett innerhalb des Kreises liegt, müsste man
anstatt 0.5 addieren. Folglich müsste der
in RadiusRadiusRadiusRadiusRadiusradius zurückgegebene Wert um
korrigiert werden. Dies wäre
allerdings auch nur eine obere Abschätzung, d.h. der Kreis mit dem
korrigierten Radius wäre in den meisten Fällen etwas zu groß.
Kleinster umschließender Kreis einer Region. Es ist zu beachten,
dass die Berechnung auf den Pixelmittelpunkten basiert und zu dem
daraus berechneten Radius 0.5 addiert wird.