measure.find_contours用法
时间: 2023-10-08 22:07:58 浏览: 88
`measure.find_contours` 是 Scikit-image 库中的一个函数,用于在二进制图像中查找轮廓。它可以用于分割图像中的对象,或者计算对象的形状和大小等特征。
以下是 `measure.find_contours` 的用法示例:
```python
from skimage import measure
import numpy as np
# 创建一个二进制图像
image = np.zeros((100, 100))
image[20:80, 20:80] = 1
# 查找图像中的轮廓
contours = measure.find_contours(image, 0.5)
# 绘制轮廓
import matplotlib.pyplot as plt
fig, ax = plt.subplots()
ax.imshow(image, interpolation='nearest', cmap=plt.cm.gray)
for contour in contours:
ax.plot(contour[:, 1], contour[:, 0], linewidth=2)
ax.axis('image')
ax.set_xticks([])
ax.set_yticks([])
plt.show()
```
在上述代码中,我们首先创建了一个 100x100 的二进制图像,其中一个矩形区域被设置为白色。然后,我们使用 `measure.find_contours` 函数查找图像中的轮廓,并将它们绘制出来。
`measure.find_contours` 函数的第一个参数是二进制图像,第二个参数是阈值,用于将图像中的像素值转换为二进制值。函数返回一个轮廓列表,每个轮廓是一个 N×2 的数组,其中 N 是轮廓上的点数,第一列是 y 坐标,第二列是 x 坐标。