【发布时间】:2013-01-12 23:27:05
【问题描述】:
我想用其他用户选择的颜色替换图像的特定颜色。在替换图像颜色时,我想保持原始颜色的渐变效果。例如,请参阅所附图像。
我曾尝试使用 CoreGraphics 这样做,并且成功替换了颜色。但是替换颜色并没有保持图像中原始颜色的渐变效果。
有人可以帮我解决这个问题吗? CoreGraphics 是正确的方法吗? 提前致谢。
【问题讨论】:
-
你能把你目前得到的代码贴出来吗?
-
您可能需要寻找特定的 rgb 比例而不是特定的颜色,然后替换所有 rgb 比例与目标颜色比例相似的像素。需要在比率上设置一些阈值。从未尝试过,但这就是我要解决的方法
-
看看这个问题。这可能会对你有所帮助。 stackoverflow.com/questions/8046643/…
-
在没有用户干预的情况下(即没有区域划分等)是不容易做到的,而上面提到的问题在这方面非常薄弱。在stackoverflow.com/a/14307006/1832154,有一种快速讨论的方法可以自动执行此操作,并且生成的图像大多是可以接受的。另请注意,在
image2.png中,其中一个灯变为绿色。 -
@PeterHosey - 我将他们原始的色度键控示例转换为通用 OpenGL ES 着色器:stackoverflow.com/a/12847774/19679,它确实会在白色值周围吓坏。它也与颜色匹配或不匹配,但我可以看到对其进行修改以在保持亮度的同时替换色度。
标签: ios image-processing opengl-es core-graphics glkit