我有一个小灰色图像。我需要创建这个图像的许多彩色副本(黄色,绿色,......)。
我不需要更换单色。我的原始图像包含许多灰色阴影,我需要创建具有多种其他颜色阴影的图像。
如何使用Python做到这一点?
答案 0 :(得分:8)
我今天在Hacker News上看到了一篇文章,其中展示了如何将图像与基本恒定颜色和affine transform混合。 William Chargin撰写的这篇文章是Making thumbnails fast,关于提高图像处理性能。其中提到的源代码位于affine transforms on PIL images。
这是一个演示,其中灰度Lena图像的大小调整为231x231像素。选择此图像是因为它“自1973年以来在图像处理领域广泛使用的标准测试图像”。
from PIL import Image
from transforms import RGBTransform # from source code mentioned above
lena = Image.open("lena.png")
lena = lena.convert('RGB') # ensure image has 3 channels
lena
red = RGBTransform().mix_with((255, 0, 0),factor=.30).applied_to(lena)
red
green = RGBTransform().mix_with((0, 255, 0),factor=.30).applied_to(lena)
green
blue = RGBTransform().mix_with((0, 0, 255),factor=.30).applied_to(lena)
blue
答案 1 :(得分:1)
这可能有点矫枉过正,但您可以轻松使用OpenCV库(python绑定)中的功能来为您的灰度图像着色。
尝试查看这些人的C ++代码:http://answers.opencv.org/question/50781/false-coloring-of-grayscale-image/。类比他们使用的函数可能存在于python库中。
这是推荐的行动方案: