我有一张图片,其中有一个缺失的部分,我知道它被涂成了绿色(第一张图片)。生成另一个“布尔值”图像的最pythonic 方法是什么,该图像显示缺失部分的白色和非缺失部分的黑色(第二张图像)?
是否可以在没有 for 循环的情况下完成它,而只是使用数组切片?
我的图像是一个形状为 numpy 的数组[height, width, 3]。我希望以下代码分配一个二维布尔数组,显示每个像素的值是否为绿色 ( [0, 255, 0])。
mask = image[:, :] == [0, 255, 0]
Run Code Online (Sandbox Code Playgroud)
但是,它返回一个与图像 ( [height, width, 3])形状相同的数组,显示像素的红色、绿色或蓝色值分别是 0、255 还是 0。我可以在这里以某种方式使用any()或all()方法吗?