我有一个黑白二进制图像,我使用 opencv 创建 我想将此图像上的黑色像素转换为红色,我该如何实现?
def convertImageToBinary():
print('converting image to black and white')
originalImage = cv2.imread('lena.png')
grayImage = cv2.cvtColor(originalImage, cv2.COLOR_BGR2GRAY)
(thresh, blackAndWhiteImage) = cv2.threshold(grayImage, 127, 255, cv2.THRESH_BINARY)
cv2.imshow('Black white image', blackAndWhiteImage)
cv2.imshow('Original image',originalImage)
cv2.imshow('Gray image', grayImage)
cv2.waitKey(0)
cv2.destroyAllWindows()
答案 0 :(得分:2)
您可以在 Python/OpenCV 中通过将 blackAndWhiteImage 转换为 3 通道,然后使用 Numpy 使用单通道 blackAndWhiteImage 作为掩码来更改颜色
blackAndWhiteImage3 = cv2.cvtColor(blackAndWhiteImage, cv2.COLOR_GRAY2BGR)
blackAndWhiteImage3[blackAndWhiteImage==0] = (0,0,255)