gpt4 book ai didi

python - 将图像重新着色为其他基色并保持渐变

转载 作者:太空宇宙 更新时间:2023-11-03 22:42:17 25 4
gpt4 key购买 nike

我想将图像重新着色为另一种基色,但同时保持渐变。例如,在这张图片中,底色是绿色。

enter image description here

我想将其更改为蓝色基色(例如 RGB:0,119,153)。我使用了以下 python 代码:

import numpy as np
import cv2
dg = [0,59,10]
mg = [0,91,16]
lg = [0,106,18]
db = [92,71,0]
mb = [153,119,0]
lb = [204,163,93]

im = cv2.imread("C:/Temp/recolor_source.png")
im[np.where((im == dg).all(axis=2))] = db
im[np.where((im == mg).all(axis=2))] = mb
im[np.where((im == lg).all(axis=2))] = lb
cv2.imwrite("C:/Temp/recolor_result.png", im)

结果如下:

enter image description here

在生成的图像中,白色文本周围和灰色按钮中仍然有一些绿色。转换为另一种基色并保持所有渐变的正确方法是什么?

最佳答案

这是 Mark Setchell 建议的答案。

import cv2

im = cv2.imread("C:/Temp/recolor_source.png")
hsv = cv2.cvtColor(im, cv2.COLOR_BGR2HSV)
hchannel = hsv[:, :, 0]
hchannel = 40 + hchannel
hsv[:, :, 0] = hchannel
rgb = cv2.cvtColor(hsv, cv2.COLOR_HSV2BGR)

cv2.imwrite("C:/Temp/recolor_result.png", rgb)

导致: enter image description here

关于python - 将图像重新着色为其他基色并保持渐变,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51864651/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com