使用python从图像中删除背景:包含多个元素的数组的真值不明确
我尝试构建一个函数来拍摄图像,并从中删除特定的像素值:使用python从图像中删除背景:包含多个元素的数组的真值不明确,python,image-processing,Python,Image Processing,我尝试构建一个函数来拍摄图像,并从中删除特定的像素值: def background_remove(img): for i in range(img.shape[0]): for j in range(img.shape[1]): if img[i, j] == 0: img[i,j] = 1 return img 编译时,出现以下错误: if img[i, j] == 0: ValueErro
def background_remove(img):
for i in range(img.shape[0]):
for j in range(img.shape[1]):
if img[i, j] == 0:
img[i,j] = 1
return img
编译时,出现以下错误:
if img[i, j] == 0:
ValueError: The truth value of an array with more than one element is ambiguous. Use a.any() or a.all()
我做错了什么?最有可能的是,
img
是一些多通道图像。然后,您的比较将失败,如图所示。强制img
成为单通道(例如灰度),那么你的代码就可以工作了