当前位置: 首页 > 编程笔记 >

使用PIL(Python-Imaging)反转图像的颜色方法

谢典
2023-03-14
本文向大家介绍使用PIL(Python-Imaging)反转图像的颜色方法,包括了使用PIL(Python-Imaging)反转图像的颜色方法的使用技巧和注意事项,需要的朋友参考一下

利用PIL将图片转换为黑色与白色反转的图片,下面笔者小白介绍如何实现。

解决方案一:

from PIL import Image
import PIL.ImageOps  
#读入图片
image = Image.open('your_image.png')
#反转
inverted_image = PIL.ImageOps.invert(image)
#保存图片
inverted_image.save('new_name.png')

注意:“ImageOps模块包含多个'ready-made'图像处理操作,该模块有些实验性,大多数操作符只适用于L和RGB图像。”

解决方案二:

如果图像是RGBA透明的,参考如下代码。

from PIL import Image
import PIL.ImageOps  

image = Image.open('your_image.png')
if image.mode == 'RGBA':
  r,g,b,a = image.split()
  rgb_image = Image.merge('RGB', (r,g,b))

  inverted_image = PIL.ImageOps.invert(rgb_image)

  r2,g2,b2 = inverted_image.split()

  final_transparent_image = Image.merge('RGBA', (r2,g2,b2,a))

  final_transparent_image.save('new_file.png')

else:
  inverted_image = PIL.ImageOps.invert(image)
  inverted_image.save('new_name.png')

解决方案三:

注:对于使用”1″模式的图像(即,1位像素,黑白色,以每个字节为单位存储的see docs),您需要在调用PIL.ImageOps.invert之前将其转换为”L”模式

im = im.convert('L')
im = ImageOps.invert(im)
im = im.convert('1')

以上这篇使用PIL(Python-Imaging)反转图像的颜色方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持小牛知识库。

 类似资料:
  • 问题内容: 我需要将在黑色背景字母上绘制为白色的一系列图像转换为白色和黑色反转(为负)的图像。如何使用PIL实现此目的? 问题答案: 请尝试以下文档中的内容:http : //effbot.org/imagingbook/imageops.htm 注意:“ ImageOps模块包含许多“现成的”图像处理操作。该模块有些实验性,大多数操作员只能处理L和RGB图像。

  • 问题内容: 我有一幅颜色为BGR的图像。如何转换我的PIL图像,以有效地交换每个像素的B和R元素? 问题答案: 假设没有阿尔法谱带,难道就这么简单吗? 编辑: 嗯…似乎PIL在这方面有一些错误…似乎不适用于最新版本的PIL(1.1.7)。它可能(?)仍可与1.1.6一起使用,但是…

  • 问题内容: 我需要在python中更改图像的像素颜色。除了像素值(255,0,0)红色外,我需要将每个像素颜色值更改为黑色(0,0,0)。我尝试了以下代码,但没有帮助。 问题答案: 参见此Wikibook:https : //zh.wikibooks.org/wiki/Python_Imaging_Library/Editing_Pixels 修改该代码以适合您的问题:

  • 问题内容: 的HTML 的CSS 有什么办法可以用CSS 反转颜色? 为什么甚至在CSS3中也没有? 问题答案: 将相同颜色的背景添加到段落中,然后使用CSS反转:

  • 我已经搜索了很多关于这个,但所有我找到的是如何改变状态栏颜色。我想像Soundcloud在其移动应用程序中所做的那样,将状态栏中图标的颜色倒置在白色背景上: 如何做到这一点?

  • 问题内容: 我想加载彩色图像,将其转换为灰度,然后反转文件中的数据。 我需要的是:遍历OpenCV中的数组并使用此公式更改每个值(这可能是错误的,但对我来说似乎很合理): 但我不明白为什么它不起作用: 我不想做一个显式循环(我想变得更pythonic)。我可以看到,在一张具有白色背景的图像中,它变成了黑色,但是仅此而已,就好像其他颜色并没有太大变化(如果有)。 问题答案: 您几乎做到了。由于您是一