Python Image模块基本图像处理操作小结


Posted in Python onApril 13, 2019

本文实例讲述了Python Image模块基本图像处理操作。分享给大家供大家参考,具体如下:

Python 里面最常用的图像操作库是Image library(PIL),功能上,虽然还不能跟Matlab比较,但是还是比较强大的,废话补多少,写点记录笔记。

1. 首先需要导入需要的图像库:

import Image

2. 读取一张图片:

im=Image.open('/home/Picture/test.jpg')

3. 显示一张图片:

im.show()

4. 保存图片:

im.save("save.gif","GIF") #保存图像为gif格式

5. 创建新图片:

Image.new(mode,size)
Image.new(mode,size,color)

栗子:

newImg = Image.new("RGBA",(640,480),(0,255,0))
newImg.save("newImg.png","PNG")

6.两张图片相加:

Image.blend(img1,img2,alpha) # 这里alpha表示img1和img2的比例参数

7. 点操作:

im.point(function) #,这个function接受一个参数,且对图片中的每一个点执行这个函数

比如:

out=im.point(lambdai:i*1.5)#对每个点进行50%的加强

8. 查看图像信息:

im.format, im.size, im.mode

9. 图片裁剪:

box=(100,100,500,500)
#设置要裁剪的区域
region=im.crop(box) #此时,region是一个新的图像对象。

10. 图像黏贴(合并)

im.paste(region,box)#粘贴box大小的region到原先的图片对象中。

11. 通道分离:

r,g,b=im.split()#分割成三个通道,此时r,g,b分别为三个图像对象。

12. 通道合并:

im=Image.merge("RGB",(b,g,r))#将b,r两个通道进行翻转。

13. 改变图像的大小:

out=img.resize((128,128))#resize成128*128像素大小

14. 旋转图像:

out=img.rotate(45) #逆时针旋转45度

有更方便的:

region = region.transpose(Image.ROTATE_180)

15. 图像转换:

out = im.transpose(Image.FLIP_LEFT_RIGHT)
#左右对换。
out = im.transpose(Image.FLIP_TOP_BOTTOM)
#上下对换

16. 图像类型转换:

im=im.convert("RGBA")

17. 获取某个像素位置的值:

im.getpixel((4,4))

18. 写某个像素位置的值:

img.putpixel((4,4),(255,0,0))

更多关于Python相关内容可查看本站专题:《Python数学运算技巧总结》、《Python图片操作技巧总结》、《Python数据结构与算法教程》、《Python函数使用技巧总结》、《Python字符串操作技巧汇总》及《Python入门与进阶经典教程》

希望本文所述对大家Python程序设计有所帮助。

Python 相关文章推荐
Python中针对函数处理的特殊方法
Mar 06 Python
深入理解Python中装饰器的用法
Jun 28 Python
Python随机生成数据后插入到PostgreSQL
Jul 28 Python
python中lambda()的用法
Nov 16 Python
Python实现的计算器功能示例
Apr 26 Python
解决Django数据库makemigrations有变化但是migrate时未变动问题
May 30 Python
python实现Windows电脑定时关机
Jun 20 Python
实例讲解Python中浮点型的基本内容
Feb 11 Python
利用Python脚本实现自动刷网课
Feb 03 Python
python连接PostgreSQL过程解析
Feb 09 Python
python函数map()和partial()的知识点总结
May 26 Python
Django+Celery实现定时任务的示例
Jun 23 Python
python使用pymongo操作mongo的完整步骤
Apr 13 #Python
Python实现去除图片中指定颜色的像素功能示例
Apr 13 #Python
python mac下安装虚拟环境的图文教程
Apr 12 #Python
python中的print()输出
Apr 12 #Python
Python面向对象程序设计类的多态用法详解
Apr 12 #Python
Python中format()格式输出全解
Apr 12 #Python
Python面向对象程序设计类的封装与继承用法示例
Apr 12 #Python
You might like
php下正则来匹配dede模板标签的代码
2010/08/21 PHP
PHP利用REFERER根居访问来地址进行页面跳转
2013/09/28 PHP
PHP中对缓冲区的控制实现代码
2013/09/29 PHP
php数据访问之增删改查操作
2016/05/09 PHP
php中时间函数date及常用的时间计算
2017/05/12 PHP
PHP对称加密算法(DES/AES)类的实现代码
2017/11/14 PHP
PHP实现的只保留字符串首尾字符功能示例【隐藏部分字符串】
2019/03/11 PHP
php反射学习之不用new方法实例化类操作示例
2019/06/14 PHP
jquery改变disabled的boolean状态的三种方法
2013/12/13 Javascript
JS实现判断滚动条滚到页面底部并执行事件的方法
2014/12/18 Javascript
xmlplus组件设计系列之下拉刷新(PullRefresh)(6)
2017/05/03 Javascript
浅谈vue项目优化之页面的按需加载(vue+webpack)
2017/12/11 Javascript
使用Vue如何写一个双向数据绑定(面试常见)
2018/04/20 Javascript
JS加密插件CryptoJS实现AES加密操作示例
2018/08/16 Javascript
微信小程序实现多个按钮的颜色状态转换
2019/02/15 Javascript
微信小程序动态显示项目倒计时
2019/06/20 Javascript
Vue的属性、方法、生命周期实例代码详解
2019/09/17 Javascript
微信小程序中插入激励视频广告并获取收益(实例代码)
2019/12/06 Javascript
JS箭头函数和常规函数之间的区别实例分析【 5 个区别】
2020/05/27 Javascript
Vue Router中应用中间件的方法
2020/08/06 Javascript
Vue项目配置跨域访问和代理proxy设置方式
2020/09/08 Javascript
vue项目中播放rtmp视频文件流的方法
2020/09/17 Javascript
[06:21]2014DOTA2国际邀请赛 庆祝VG首阶段领跑;B叔为挣牛排半夜整理情报
2014/07/13 DOTA
Python解析xml中dom元素的方法
2015/03/12 Python
python-opencv在有噪音的情况下提取图像的轮廓实例
2017/08/30 Python
Python提取特定时间段内数据的方法实例
2019/04/01 Python
Python数据可视化:幂律分布实例详解
2019/12/07 Python
使用HTML5 Canvas绘制圆角矩形及相关的一些应用举例
2016/03/22 HTML / CSS
公司办公室岗位职责
2014/03/19 职场文书
房产公证书范本
2014/04/10 职场文书
医院院务公开实施方案
2014/05/03 职场文书
故宫导游词
2015/01/31 职场文书
农业项目合作意向书
2015/05/08 职场文书
2015年敬老院工作总结
2015/05/18 职场文书
2016圣诞节贺卡寄语
2015/12/07 职场文书
简单总结SpringMVC拦截器的使用方法
2021/06/28 Java/Android