自从这个世界上出现了Python编程,一切都好像有了新的思路与进展,比如人工智能,还有我们常用的PS,你可知道Python也可以做图像处理,用的就是PIL库,还没有用过的,还没有发现的,还没有实现过的,赶紧来本文学习吧:

在介绍本文之前,先为大家解释一下什么是Python的PIL库:

PIL(Python Image Library)是python的第三方图像处理库,但是由于其强大的功能与众多的使用人数,几乎已经被认为是python官方图像处理库了,今天只是简单的学习了几个方法就已经感受到PIL的强大。

PIL可以做很多和图像处理相关的事情:

图像归档(Image Archives)。PIL非常适合于图像归档以及图像的批处理任务。你可以使用PIL创建缩略图,转换图像格式,打印图像等等。

图像展示(Image Display)。PIL较新的版本支持包括TkPhotoImage,BitmapImage还有Windows DIB等接口。PIL支持众多的GUI框架接口,可以用于图像展示。

图像处理(Image Processing)。PIL包括了基础的图像处理函数,包括对点的处理,使用众多的卷积核(convolution kernels)做过滤(filter),还有颜色空间的转换。PIL库同样支持图像的大小转换,图像旋转,以及任意的仿射变换。PIL还有一些直方图的方法,允许你展示图像的一些统计特性。这个可以用来实现图像的自动对比度增强,还有全局的统计分析等。

作为一个爱折腾的程序猿能用代码的解决的情绝对不会用其他的方式,Python可以打飞机,人工降雪,那么p个图对于Python来说是小儿科了,今天先给大家介绍今天学到的三个比较好玩的操作:

代码实现

先上一个效果图。

实现这个效果使用的是PIL中的Blend类

Image.blend(image1,image2,alpha)

⇒image

使用给定的两张图像及透明度变量alpha,插值出一张新的图像。这两张图像必须有一样的尺寸和模式。

合成公式为:out=image1(1.0- alpha)+image2alpha

若变量alpha为0.0,返回第一张图像的拷贝。若变量alpha为1.0,将返回第二张图像的拷贝。对变量alpha的值无限制。

1from PIL import Image2im1 = Image.open("124.jpg")3im2 = Image.open("123.jpg")4print(im1.mode,im1.size)5print(im2.mode,im2.size)6im = Image.blend(im1, im2, 0.3)7im.save('k3.jpg')

当然除了上面的方法还可以使用Composite类

Image.composite(image1,image2, mask) ⇒ image

复合类使用给定的两张图像及mask图像作为透明度,插值出一张新的图像。变量mask图像的模式可以为“1”,“L”或者“RGBA”。所有图像必须有相同的尺寸。

1from PIL import Image2im1 = Image.open("124.jpg")3im2 = Image.open("123.jpg")4r,g,b = im1.split() 5print(b.mode)6print(im1.mode,im1.size)7print(im2.mode,im2.size)8im = Image.composite(im1,im2,b)9im.save('k1.jpg')

自己只是做了一个简单的测试大家可以通过这种方法做出更好看的图片,PIL不仅可以使两张图片进行重合,还可以给图片添加水印。

 1from PIL import Image, ImageDraw,ImageFont 2#将原来的图片转换为RGBA模式 3im = Image.open(r"timg2.png").convert('RGBA') 4#新建一个图片,尺寸与上面的尺寸一样,透明度为0即完全透明 5txt=Image.new('RGBA', im.size, (0,0,0,0)) 6#设置要写文字的字体 7fnt=ImageFont.truetype("D:PycharmProjectsmusicSIMYOU.TTF

image pil 图像保存_如何利用python中的PIL库做图像处理?相关推荐

  1. 利用python中的csv库读写csv文件

    利用python中的csv库读写csv文件 python读写csv文件就我知道的方法有:1)利用csv库,2)利用读写txt文件的方式处理,3)利用numpy或pandas库处理 在这篇博客中,博主就 ...

  2. 利用Python中的PIL库去处理图片

    利用Python处理图片,任选一张图片,用PIL抓取并显示图像轮廓. 安装PIL在cmd中输入 pip install pillow 今天我们所用到的原图为蕾姆的一张图片 下面就让我们看下Python ...

  3. image pil 图像保存_使用PIL保存图像

    我正在尝试使用PIL保存我从头开始创建的图像 newImg1 = PIL.Image.new('RGB', (512,512)) pixels1 = newImg1.load() ... for i ...

  4. 在Ubuntu 16.04.5 LTS上利用python中的PIL模块压缩一百多兆的单张图片实操

    在前面的博文中,我将300多张电影海报拼接为了一张103MB的巨幅图片,我想拿它做电脑桌面(1080P),但是这么多的图片,存储和加载是个麻烦事儿,需要将它压缩到几MB大小. 在Ubuntu 16.0 ...

  5. python 柱形图_如何利用python 中的pyecharts包绘制柱形图

    平均线 Python中的pyecharts包,与百度echarts相对应.利用这个包绘制图形只需要简单的几行代码即可,而且绘制的图形还很美观. 安装pyecharts工具包. 导入pyecharts包 ...

  6. python卡方拟合优度检验_如何使用Python中的科学库执行卡方拟合优度检验?

    假设我有一些我凭经验得到的数据: from scipy import stats size = 10000 x = 10 * stats.expon.rvs(size=size) + 0.2 * np ...

  7. pil 图像最大值_第97天:图像库 PIL(二)

    上节我们讲了 Python 的图像处理库 PIL 的基本图像处理功能,打开了 PIL 的神秘面纱.这节我们接着讲 PIL 的 Image 模块的常用方法. Image 模块的方法 convert Im ...

  8. 利用Python中的BeautifulSoup库爬取豆瓣读书中书本信息

    利用BeautifulSoup库,获取前250本图书的信息,需要爬取的信息包括书名.书名的URL链接.作者.出版社和出版时间.书本价格.评分和评论,把这些信息存到txt文件,要求将这些信息对齐,排列整 ...

  9. 利用Python中的BeautifulSoup库爬取安居客第一页信息

    题目: 网址为https://beijing.anjuke.com/sale/, 利用BeautifulSoup库,爬取第1页的信息,具体信息如下:进入每个房源的页面,爬取小区名称.参考预算.发布时间 ...

最新文章

  1. 模拟内存计算如何解决边缘人工智能推理的功耗挑战
  2. ROS发行版列表完整版
  3. python22期自动化-Day2
  4. 华为硬件笔试 通用器件知识2_华为硬件笔试题(最新版)
  5. django models索引_django-models – Django模型“IndexError:列表索引超出范围”Pydev
  6. REST framework 基本使用
  7. RHEL7 USB installation problem and solving
  8. 再一贴[亲爱的,我不小心怀孕了~!]
  9. 林海峰老师python课件密码
  10. ACM技巧 - O(1)快速乘(玄学) 总结
  11. python中的列表及注意事项
  12. Netty学习总结(4)——图解Netty之Pipeline、channel、Context之间的数据流向
  13. mysql面试通关宝典,你看你知道多少
  14. Halcon 深度学习(一):分类
  15. 前端英文和数字不换行怎么解决
  16. Skyline TEP5.1.3二次开发入门——初级(四)
  17. 中英文电子书免费下载网站大全
  18. html中heading标签,Heading标签优化实战经验分享
  19. 电脑时间调到2099年,会发生什么
  20. uview去除u-button按钮自带边框细线

热门文章

  1. python expect模块_Python基础教程:用Python怎么telnet到网络设备
  2. C# Winform 窗体美化(目录)
  3. Unsigned 陷阱
  4. Opencv dnn实现人类性别检测和年龄预测
  5. php+数组存放文件名_php将数组存储为文本文件的三种方法
  6. python图形化编程工具哪个好_mPython(图形化编程软件) V0.5.0 官方版
  7. 休眠 嵌入式_内幕消息:嵌入式软件挤出最低功耗模式
  8. c语言判断字符是汉字,c语言里面判断字符是否为汉字
  9. linux下qt环境的运行,在Linux下使用QT环境来安装和运行WebKit
  10. php mvc教程 文档,PHP培训教程教你快速打造PHP MVC框架[PHP基础教程]