OBS:所有伪代码或真实代码(brainfuck 除外)都被接受为响应
假设我有一个黑白徽标,作为图片文件,其中有一些噪点(不是 100% 黑白,没有像素也是 100% 黑色)
如果我想将黑色更改为另一种预定义的颜色,我该怎么做?
我试图找出真正的白色像素和其他像素之间的区别,并试图将像素朝那个方向移动,但它结束了一些总噪声。
OBS:所有伪代码或真实代码(brainfuck 除外)都被接受为响应
假设我有一个黑白徽标,作为图片文件,其中有一些噪点(不是 100% 黑白,没有像素也是 100% 黑色)
如果我想将黑色更改为另一种预定义的颜色,我该怎么做?
我试图找出真正的白色像素和其他像素之间的区别,并试图将像素朝那个方向移动,但它结束了一些总噪声。
您可以使用自适应阈值将图像转换为二进制图像。然后将黑色和白色映射到所需的颜色。
import cv2
img = cv2.imread('img.jpg',0)
th2 = cv2.adaptiveThreshold(img,255,cv2.ADAPTIVE_THRESH_MEAN_C,cv2.THRESH_BINARY,11,2)
image = cv2.cvtColor(th2,cv2.COLOR_GRAY2BGR)
image[image==(255,255,255)] = (255,0,0) # RED
image[image==(0,0,0)] = (0,255,0) # GREEN