假设我在这里有一个灰度图像:
还有一个二进制蒙版图像:
具有相同的尺寸和形状。我如何生成这样的东西:
在二进制掩码中由1表示的值是实际值,而掩码中为0的值在最终图像中为空。
最佳答案
使用 cv2.bitwise_and
使用二进制蒙版对图像进行蒙版。将保留遮罩上的所有白色像素(值为1),而黑色像素(值为0)将被忽略。这是一个例子:
输入图像(左),遮罩(右)
遮罩后的结果
码
import cv2
import numpy as np
# Load image, create mask, and draw white circle on mask
image = cv2.imread('1.jpeg')
mask = np.zeros(image.shape, dtype=np.uint8)
mask = cv2.circle(mask, (260, 300), 225, (255,255,255), -1)
# Mask input image with binary mask
result = cv2.bitwise_and(image, mask)
# Color background white
result[mask==0] = 255 # Optional
cv2.imshow('image', image)
cv2.imshow('mask', mask)
cv2.imshow('result', result)
cv2.waitKey()
关于python - 如何用二进制蒙版蒙版图像,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/59432324/