📅  最后修改于: 2023-12-03 14:56:24.488000             🧑  作者: Mango
本文介绍了如何使用Python和OpenCV将图像中的“空洞”或黑色像素区域填充为零。
import cv2
image = cv2.imread('image.png')
mask = cv2.imread('mask.png', 0)
output = cv2.inpaint(image, mask, 3, cv2.INPAINT_TELEA)
cv2.imshow('Input', image)
cv2.imshow('Mask', mask)
cv2.imshow('Output', output)
cv2.waitKey(0)
cv2.destroyAllWindows()
cv2.imread()
函数读取图像和掩膜。掩膜应为灰度图像。cv2.inpaint()
函数将输入图像中的黑色像素区域填充为零,并返回填充后的图像。import cv2
import numpy as np
image = cv2.imread('image.png')
mask = cv2.imread('mask.png', 0)
output = image.copy()
output[np.where(mask==0)] = 0
cv2.imshow('Input', image)
cv2.imshow('Mask', mask)
cv2.imshow('Output', output)
cv2.waitKey(0)
cv2.destroyAllWindows()
numpy.where()
函数检查掩膜中的黑色像素,并将相应位置的图像像素值设置为零。