Pythonでregionpropsを使う

Pythonではregionprops関数を使用して、バイナリ画像の連結領域からプロパティを抽出できます。

ここではサンプルコードを示します。

import matplotlib.pyplot as plt
from skimage.measure import label, regionprops
# 读取二进制图像
image = plt.imread('binary_image.png')
# 对图像进行标记
label_image = label(image)
# 提取连通区域的属性
regions = regionprops(label_image)
# 打印每个连通区域的属性
for region in regions:
print('Label:', region.label)
print('Area:', region.area)
print('BoundingBox:', region.bbox)
print('Centroid:', region.centroid)
print('Perimeter:', region.perimeter)
print('Eccentricity:', region.eccentricity)
print('----------------------')

上で示したコードは、まずmatplotlib.pyplot.imread関数を使ってバイナリ画像を読み込みます。次に、skimage.measure.label関数を使って画像にラベル付けを行い、隣接するピクセルを連結領域にまとめます。そして、skimage.measure.regionprops関数を使って連結領域の属性を抽出します。最後に、ループを使って各連結領域を順番に処理し、属性を出力します。

ここでは、画像内の連結領域が適切にラベル付けられていることが前提です。画像内の連結領域がラベル付けされていなければ、scikit-imageのmeasure.label関数を用いてラベル付けを行うことができます。

bannerAds