我有一个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()
我需要去除食物上的黑色部分以检测食物的边界
操作方法。任何帮助
答案 0 :(得分:0)
您使用的方法只是应用二进制阈值(图像的平均值)将灰度图像转换为二进制图像。由于食物具有各种形状和轮廓,因此很难将它们细分。如果尝试边缘检测,那么板的边界也会被检测到。