检测食物的边界

时间:2019-05-06 17:16:20

标签: python image-processing scikit-image

我有一个image用于检测食物, 我使用skimage将其转换为灰度并设置了阈值和it looks like this.

image=plt.imread('image.jpg')
gray = rgb2gray(image)
plt.imshow(gray, cmap='gray')
gray_r = gray.reshape(gray.shape[0]*gray.shape[1])
for i in range(gray_r.shape[0]):
  if gray_r[i] > gray_r.mean():
    gray_r[i] = 1
  else:
    gray_r[i] = 0
gray = gray_r.reshape(gray.shape[0],gray.shape[1])
plt.imshow(gray, cmap='gray')
plt.show()

我需要去除食物上的黑色部分以检测食物的边界

操作方法。任何帮助

1 个答案:

答案 0 :(得分:0)

您使用的方法只是应用二进制阈值(图像的平均值)将灰度图像转换为二进制图像。由于食物具有各种形状和轮廓,因此很难将它们细分。如果尝试边缘检测,那么板的边界也会被检测到。