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下用于监视文件系统的pyinotify包
Nov 13 Python
Python使用Mechanize模块编写爬虫的要点解析
Mar 31 Python
python实现FTP服务器服务的方法
Apr 11 Python
用python与文件进行交互的方法
Mar 01 Python
Flask和Django框架中自定义模型类的表名、父类相关问题分析
Jul 19 Python
解决pycharm下os.system执行命令返回有中文乱码的问题
Jul 07 Python
Pandas 重塑(stack)和轴向旋转(pivot)的实现
Jul 22 Python
Python3 sys.argv[ ]用法详解
Oct 24 Python
tensorflow 利用expand_dims和squeeze扩展和压缩tensor维度方式
Feb 07 Python
Python定时从Mysql提取数据存入Redis的实现
May 03 Python
实现ECharts双Y轴左右刻度线一致的例子
May 16 Python
Python Opencv轮廓常用操作代码实例解析
Sep 01 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
深入探讨:Nginx 502 Bad Gateway错误的解决方法
2013/06/03 PHP
修改apache配置文件去除thinkphp url中的index.php
2014/01/17 PHP
php面向对象与面向过程两种方法给图片添加文字水印
2015/08/26 PHP
大家都应该掌握的PHP关联数组使用技巧
2015/12/25 PHP
CI框架出现mysql数据库连接资源无法释放的解决方法
2016/05/17 PHP
利用ajax和PHP实现简单的流程管理
2017/03/23 PHP
PDO::lastInsertId讲解
2019/01/29 PHP
在Javascript中定义对象类别
2006/12/22 Javascript
JQuery 前台切换网站的样式实现
2009/06/22 Javascript
Prototype Class对象学习
2009/07/19 Javascript
使用jQuery和PHP实现类似360功能开关效果
2014/02/12 Javascript
Egret引擎开发指南之编译项目
2014/09/03 Javascript
JavaScript操作DOM元素的childNodes和children区别
2015/04/01 Javascript
针对初学者的jQuery入门指南
2015/08/15 Javascript
jquery实现可自动判断位置的弹出层效果代码
2015/10/12 Javascript
jquery实现定时自动轮播特效
2015/12/10 Javascript
javascript每日必学之多态
2016/02/23 Javascript
js自制图片放大镜功能
2017/01/24 Javascript
jQuery 循环遍历改变a标签的href(实例讲解)
2017/07/12 jQuery
React 子组件向父组件传值的方法
2017/07/24 Javascript
jQuery插件artDialog.js使用与关闭方法示例
2017/10/09 jQuery
vue+springmvc导出excel数据的实现代码
2018/06/27 Javascript
vue 对象添加或删除成员时无法实时更新的解决方法
2019/05/01 Javascript
Python实现JSON反序列化类对象的示例
2018/01/31 Python
Python 串口读写的实现方法
2019/06/12 Python
如何在Django中使用聚合的实现示例
2020/03/23 Python
python 中的命名空间,你真的了解吗?
2020/08/19 Python
python爬虫利用selenium实现自动翻页爬取某鱼数据的思路详解
2020/12/22 Python
家用个人磨皮机:Trophy Skin
2017/03/30 全球购物
Madda Fella官网:美国冒险家服装品牌
2020/01/16 全球购物
毕业求职自荐信格式是什么
2013/11/19 职场文书
财务方面个人工作的自我评价
2013/12/28 职场文书
企业军训感想
2014/02/07 职场文书
2014年祖国生日寄语
2014/09/19 职场文书
留学推荐信英文范文
2015/03/26 职场文书
银行工作心得体会范文
2016/01/23 职场文书