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 httplib模块使用实例
Apr 11 Python
python获得一个月有多少天的方法
Jun 04 Python
Python中函数的参数定义和可变参数用法实例分析
Jun 04 Python
Python常见异常分类与处理方法
Jun 04 Python
python如何读写json数据
Mar 21 Python
使用 Python 实现简单的 switch/case 语句的方法
Sep 17 Python
Python中的元组介绍
Jan 28 Python
pygame实现打字游戏
Feb 19 Python
基于Python中的yield表达式介绍
Nov 19 Python
Python生成六万个随机,唯一的8位数字和数字组成的随机字符串实例
Mar 03 Python
python爬虫开发之urllib模块详细使用方法与实例全解
Mar 09 Python
Django实现列表页商品数据返回教程
Apr 03 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
js+php实现静态页面实时调用用户登陆状态的方法
2015/01/04 PHP
php中PDO方式实现数据库的增删改查
2015/05/17 PHP
php实现阳历阴历互转的方法
2015/10/28 PHP
PHP中抽象类和抽象方法概念与用法分析
2016/05/24 PHP
常用PHP封装分页工具类
2017/01/14 PHP
33个优秀的jQuery 教程分享(幻灯片、动画菜单)
2011/07/08 Javascript
解析javascript系统错误:-1072896658的解决办法
2013/07/08 Javascript
基于JS实现简单的样式切换效果代码
2015/09/04 Javascript
jQuery实现可用于博客的动态滑动菜单完整实例
2015/09/17 Javascript
AngularJS实现的省市二级联动功能示例【可对选项实现增删】
2017/10/26 Javascript
JS获取今天是本月第几周、本月共几周、本月有多少天、是今年的第几周、是今年的第几天的示例代码
2018/12/05 Javascript
记一次用vue做的活动页的方法步骤
2019/04/11 Javascript
three.js利用gpu选取物体并计算交点位置的方法示例
2019/11/25 Javascript
[01:42:49]DOTA2-DPC中国联赛 正赛 iG vs PSG.LGD BO3 第一场 2月26日
2021/03/11 DOTA
python实现给字典添加条目的方法
2014/09/25 Python
简单说明Python中的装饰器的用法
2015/04/24 Python
Python科学计算之Pandas详解
2017/01/15 Python
python用pickle模块实现“增删改查”的简易功能
2017/06/07 Python
简单了解什么是神经网络
2017/12/23 Python
一道python走迷宫算法题
2018/01/22 Python
Python发展史及网络爬虫
2019/06/19 Python
Django 实现xadmin后台菜单改为中文
2019/11/15 Python
利用keras加载训练好的.H5文件,并实现预测图片
2020/01/24 Python
jupyter notebook读取/导出文件/图片实例
2020/04/16 Python
Python安装第三方库攻略(pip和Anaconda)
2020/10/15 Python
python操作toml文件的示例代码
2020/11/27 Python
html5指南-7.geolocation结合google maps开发一个小的应用
2013/01/07 HTML / CSS
怀俄明州飞钓:Platte River Fly Shop
2017/12/28 全球购物
荷兰游戏商店:Allyouplay
2019/03/16 全球购物
.net面试题
2016/09/17 面试题
亿阳信通股份有限公司笔试题(C#)
2016/03/04 面试题
2015年小学教导处工作总结
2015/05/26 职场文书
PhpSpreadsheet中文文档 | Spreadsheet操作教程实例
2021/04/01 PHP
php7中停止php-fpm服务的方法详解
2021/05/09 PHP
浅谈MySQL之浅入深出页原理
2021/06/23 MySQL
「地球外少年少女」BD发售宣传CM公开
2022/03/21 日漫