【问题标题】:Background in black and image in white colour背景为黑色,图像为白色
【发布时间】:2015-03-17 01:46:39
【问题描述】:

我正在做这个项目,将图像颜色转换为黑白。我想要的是将背景更改为黑色,图像为白色。但发现的大部分代码都是将图像更改为黑色,背景更改为白色。谁能知道如何改变?我已经有了将该图像转换为黑白的代码。

【问题讨论】:

  • 那么,你想反转你的颜色吗?
  • 是的。我可以知道如何反转吗?
  • @DerGolem 谢谢,希望对您有所帮助。
  • 会的。阅读我的答案。

标签: java android image colors


【解决方案1】:

Google 是你最好的朋友...http://android-er.blogspot.it/2015/02/invert-bitmap-using-colormatrix.html

在此示例中,您会看到白色变为黑色,反之亦然。
它也适用于所有其他颜色。

而且它非常快,因为它使用 ColorMatrix,而不是逐个像素的颜色变化,这将需要 width*hight 操作。
这是单次通过

[编辑]

我以为你已经有了黑白图像。
如果这不是您的情况,只需使用 Lalit Poptani 的回答 here 中报告的灰度 ColorMatrix。

[编辑 2]

要在去饱和(转换为灰度)后更改亮度和对比度,请尝试此处找到的代码:此处有助于更改亮度和对比度:http://android.okhelp.cz/bitmap-set-contrast-and-brightness-android/

【讨论】:

  • 是的,它有效。但是如何改变图像的颜色或对比度。我的意思是..我的叶子是橙色的,倒过来后它会是蓝色的。如何让它只有黑白..
  • 好吧,我建议你在图像已经在 BW 之后的解决方案。因此,要将图像转换为灰度,您必须使用不同的 ColorMatrix。我也在用那个更新我的答案。
  • 抱歉再次询问。如果我想将彩色图像直接更改为倒置图像,有什么解决方案吗?
  • 没有。您必须执行 2 个步骤。颜色为灰色,然后反转。如果您想要纯黑色和白色,则需要进行第 3 步,以平衡亮度和对比度,并在给定阈值的情况下使灰色变为黑色或白色。
  • 如何给定阈值?