📜  用零填充像素 python opencv - Python (1)

📅  最后修改于: 2023-12-03 14:56:24.488000             🧑  作者: Mango

用零填充像素 Python OpenCV

本文介绍了如何使用Python和OpenCV将图像中的“空洞”或黑色像素区域填充为零。

使用cv2.inpaint()函数填充像素
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()函数将输入图像中的黑色像素区域填充为零,并返回填充后的图像。
使用numpy库填充像素
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()函数检查掩膜中的黑色像素,并将相应位置的图像像素值设置为零。