当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Python skimage.measure.perimeter_crofton用法及代码示例


用法:

skimage.measure.perimeter_crofton(image, directions=4)

计算二值图像中所有对象的总克罗夫顿周长。

参数

image(N, M) ndarray

二维图像。如果图像不是二进制的,则所有严格大于零的值都被视为对象。

directions2 个或 4 个,可选

用于近似克罗夫顿周长的方向数。默认情况下,使用 4:它应该比 2 更准确。两种情况下的计算时间相同。

返回

perimeter浮点数

二值图像中所有对象的总周长。

注意

该度量基于 Crofton 公式 [1],它是来自积分几何的度量。它通过沿所有方向的双积分定义用于一般曲线长度评估。在离散空间中,2 或 4 个方向给出了非常好的近似值,对于更复杂的形状,4 比 2 更准确。

perimeter() 类似,此函数返回连续空间中周长的近似值。

参考

1

https://en.wikipedia.org/wiki/Crofton_formula

2

S. Rivollier. Analyse d’image geometrique et morphometrique par diagrammes de forme et voisinages adaptatifs generaux. PhD thesis, 2010. Ecole Nationale Superieure des Mines de Saint-Etienne. https://tel.archives-ouvertes.fr/tel-00560838

例子

>>> from skimage import data, util
>>> from skimage.measure import label
>>> # coins image (binary)
>>> img_coins = data.coins() > 110
>>> # total perimeter of all objects in the image
>>> perimeter_crofton(img_coins, directions=2)  
8144.578...
>>> perimeter_crofton(img_coins, directions=4)  
7837.077...

相关用法


注:本文由纯净天空筛选整理自scikit-image.org大神的英文原创作品 skimage.measure.perimeter_crofton。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。