小编Jan*_*ken的帖子

使用2D遮罩遮罩BGR图像

我有一个带有shape的三维数组(图像)(480, 640, 3)。在此,3是指BGR颜色代码。我想使用红色图像数组中的数据在此图像上放置遮罩。根据其值,某些像素需要被遮罩。

创建遮罩效果很好。它的行为完全符合预期。为了将蒙版应用于原始图像,我首先将蒙版应用于蓝色和绿色图像。一切还好。现在,我将三个蒙版数组堆叠在一起,这将返回一个带有shape的数组(480, 640, 3)。但是,使用此阵列绘制imshow结果会得到原始图像。没有任何面具的迹象。

下面我放我的代码。该代码适用于任何图像尺寸/形状。您需要做的就是将名称更改为"Whatever_image_you_like.png"PC上任何图像的名称。

import numpy
import numpy.ma
import scipy.misc
import matplotlib.pyplot as plt

pixel_value = 130   #Value in range 0 to 255

image = scipy.misc.imread("Whatever_image_you_like.png")

#Extract Blue, Green, and Red image from original image
image_B = numpy.copy(image[:, :, 0])
image_G = numpy.copy(image[:, :, 1])
image_R = numpy.copy(image[:, :, 2])

#Define mask depending on pixel value in Red image
image_mask = numpy.empty([image.shape[0], image.shape[1]], dtype = bool)
image_mask[image_R …
Run Code Online (Sandbox Code Playgroud)

python numpy image mask matplotlib

5
推荐指数
1
解决办法
5735
查看次数

标签 统计

image ×1

mask ×1

matplotlib ×1

numpy ×1

python ×1