Java 如何替换图像的颜色?
我想替换图像的颜色。例如,将所有蓝色变为红色,形状不发生任何变形。当我尝试这样做时,我可以通过迭代每个像素来交换颜色,但是交换区域的形状变成了平面形状 示例1输入:Java 如何替换图像的颜色?,java,image-processing,computer-vision,image-manipulation,rgb,Java,Image Processing,Computer Vision,Image Manipulation,Rgb,我想替换图像的颜色。例如,将所有蓝色变为红色,形状不发生任何变形。当我尝试这样做时,我可以通过迭代每个像素来交换颜色,但是交换区域的形状变成了平面形状 示例1输入: 示例1输出: 示例2:同时输入输出:通常的方法是使用。有关如何使用这种过滤器的信息,请参阅文档。我不完全理解这个问题。 但从给出的例子中,我看到将蓝色变为红色的过程失败了。它不是变成红色,而是变成灰色。你所说的平坦就是灰色吗 如果是这样,看起来像是颜色通道错误。 要将蓝色更改为红色,我们必须将(0255,0)更改为(255,0,0)
示例1输出:
示例2:同时输入输出:通常的方法是使用。有关如何使用这种过滤器的信息,请参阅文档。我不完全理解这个问题。 但从给出的例子中,我看到将蓝色变为红色的过程失败了。它不是变成红色,而是变成灰色。你所说的平坦就是灰色吗 如果是这样,看起来像是颜色通道错误。 要将蓝色更改为红色,我们必须将
(0255,0)
更改为(255,0,0)
我不确定这是否是问题所在,也许代码片段可以帮助评估。要确定真正的问题是什么。您要问的问题是,严格的颜色替换会修改图像的形状。你需要做的是得到一些关于形状的信息。即,查找边界并沿边界着色。我的建议是:
另一件事:阴影和相对颜色将需要你有一个你想要的颜色偏差 举一个输入和预期输出的例子会很有帮助。我只能猜测,问题的一部分在于,虽然根据颜色贴图更改颜色很容易,但决定贴图应该包含什么并不容易。坚持RGB,有很多颜色是观众可以选择的“红色”或“蓝色”。为问题添加了一些例子。嘿@monsky,很抱歉在这里打扰你,但是你的网站除了LinkedIn之外没有其他联系信息,我也没有向你发送邮件的高级访问权限。你有没有找到一个令人满意的解决方案:?谢谢:)