6

我想用其他用户选择的颜色替换图像的特定颜色。在替换图像颜色时,我想保持原始颜色的渐变效果。例如,请参阅所附图像。 image1.png
图像2.png

我曾尝试使用 CoreGraphics 这样做,并且成功替换了颜色。但是替换颜色并没有保持图像中原始颜色的渐变效果。

有人可以帮我吗?CoreGraphics 是正确的方法吗?提前致谢。

4

2 回答 2

0

在经历了几乎相同的问题(但使用 NSImage)后,在使用 ColorCube CIFilter 的 NSImage 中创建了一个用于替换颜色的类别。

https://github.com/braginets/NSImage-replace-color

受 UIImage 代码的启发(也使用 CIColorCube): https ://github.com/vhbit/ColorCubeSample

于 2016-02-10T12:34:40.923 回答
-2

我在项目中的图像之间进行了很多颜色转移/混合/替换/交换,并发现以下出版物非常有用,均由 Erik Reinhard 撰写:

不幸的是,我现在无法发布任何源代码(或图像),因为结果将提交给即将举行的会议,但我已经实现了上述算法的变体,结果非常令人满意。我敢肯定,通过一些调整(和一点耐心),您可能会得到您想要的!

编辑:

此外,真正的挑战在于分离不同的图片元素(例如隔离墙)。这与 Photoshop 的魔术棒工具没有什么不同,后者显然需要大量的处理能力和复杂的算法(并且仍然不完美)。

于 2013-01-31T23:56:37.760 回答