Blobs.circularity#

property Blobs.circularity: Any#

Blob circularity

Returns:

circularity

Return type:

float

Circularity, computed as \(\rho = \frac{A}{4 \pi p^2} \le 1\). Circularity is one for a circular blob and < 1 for all other shapes, approaching zero for a line. For a single pixel blob, with zero perimeter_length it is None.

Example:

>>> from machinevisiontoolbox import Image
>>> im = Image.Read('shark2.png')
>>> blobs = im.blobs()
>>> blobs[0].circularity
np.float64(0.34258515276788193)
>>> blobs.circularity
array([0.3426, 0.3426])

Note

Kulpa’s correction factor is applied to account for edge discretization:

  • Area and perimeter measurement of blobs in discrete binary pictures. Z.Kulpa. Comput. Graph. Image Process., 6:434-451, 1977.

  • Methods to Estimate Areas and Perimeters of Blob-like Objects: a Comparison. Proc. IAPR Workshop on Machine Vision Applications., December 13-15, 1994, Kawasaki, Japan L. Yang, F. Albregtsen, T. Loennestad, P. Groettum

Seealso:

area perimeter_length