python Pillow图像处理方法汇总


Posted in Python onOctober 16, 2019

这篇文章主要介绍了python Pillow图像处理方法汇总,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

Pillow中文文档:https://pillow-cn.readthedocs.io/zh_CN/latest/handbook/tutorial.html

安装:pip install pillow

操作图像:

#!/usr/bin/env python3
# _*_ coding utf-8 _*_

__author__ = 'nxz'

from PIL import Image, ImageFilter
from time import sleep

# 打开一个jpg图像文件
im = Image.open('test.jpg')
w, h = im.size #
print('图片的宽:%s,和高:%s' % (w, h))

# 图片缩放
im.thumbnail((w // 2, h // 2))
w, h = im.size
print(w, h)

# 缩放之后的图片重新保存
im.save('thumbnail.jpg', 'jpeg')

# 其他功能:切片、旋转、滤镜、输出文字、调色板

# 模糊效果
im2 = im.filter(ImageFilter.BLUR)
im2.save('blur.jpg','jpeg')

截屏:

from PIL import ImageGrab
from time import sleep

m = int(input("请输入想截屏多少次:"))
n = 1
while n <= m:
  sleep(0.02)
  im = ImageGrab.grab()
  local = (r'%s.jpg' % (n))
  im.save(local, 'jpeg')
  n = n + 1

转换文件到JPEG:

'''
将指定路径下的图片后缀改为 “.jpg” 格式
'''

from PIL import Image
import os, sys

for infile in sys.argv[1:]:
  f, e = os.path.splitext(infile)
  outfile = f + '.jpg'
  if infile != outfile:
    try:
      Image.open(infile).save(outfile)
    except Exception as exc:
      print(exc)

GIF动图:

"""
GIf动图
"""

from PIL import Image

im = Image.open('test.jpg')
images = []
images.append(Image.open('blur.png'))
images.append(Image.open('test.jpg'))
im.save('gif.gif', save_all=True, append_image=images, loop=1, duration=1, comment=b'aaaabbb')

几何变换:

#简单的集合变换
out = im.resize((128, 128))

#旋转图像
out = im.transpose(Image.FLIP_LEFT_RIGHT) #翻转
out = im.transpose(Image.FLIP_TOP_BOTTOM)
out = im.transpose(Image.ROTATE_90)
out = im.transpose(Image.ROTATE_180) #旋转180°
out = im.transpose(Image.ROTATE_270) #旋转270°

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
详解Python中for循环的使用方法
May 14 Python
Python基于xlrd模块操作Excel的方法示例
Jun 21 Python
Python爬虫实现简单的爬取有道翻译功能示例
Jul 13 Python
python 实现UTC时间加减的方法
Dec 31 Python
python opencv 读取本地视频文件 修改ffmpeg的方法
Jan 26 Python
Python 3.6 -win64环境安装PIL模块的教程
Jun 20 Python
Pytorch实现GoogLeNet的方法
Aug 18 Python
使用Python的networkx绘制精美网络图教程
Nov 21 Python
Python如何基于selenium实现自动登录博客园
Dec 16 Python
python正则表达式匹配IP代码实例
Dec 28 Python
Python使用20行代码实现微信聊天机器人
Jun 05 Python
Python 处理表格进行成绩排序的操作代码
Jul 26 Python
win10环境下配置vscode python开发环境的教程详解
Oct 16 #Python
500行代码使用python写个微信小游戏飞机大战游戏
Oct 16 #Python
python提取xml里面的链接源码详解
Oct 15 #Python
python yield关键词案例测试
Oct 15 #Python
python 发送json数据操作实例分析
Oct 15 #Python
30秒学会30个超实用Python代码片段【收藏版】
Oct 15 #Python
PYTHON绘制雷达图代码实例
Oct 15 #Python
You might like
PHP自定义序列化接口Serializable用法分析
2017/12/29 PHP
PHP实现APP微信支付的实例讲解
2018/02/10 PHP
BOOM vs RR BO5 第一场 2.14
2021/03/10 DOTA
通过jquery实现tab标签浏览效果
2007/02/20 Javascript
js 页面刷新location.reload和location.replace的区别小结
2009/12/24 Javascript
js实现当复选框选择匿名登录时隐藏登录框效果
2015/08/14 Javascript
使用jQuery在移动页面上添加按钮和给按钮添加图标
2015/12/04 Javascript
jQuery animate easing使用方法图文详解
2016/06/17 Javascript
基于jQuery实现Accordion手风琴自定义插件
2020/10/13 Javascript
jQuery EasyUI 获取tabs的实例解析
2016/12/06 Javascript
js实现类bootstrap模态框动画
2017/02/07 Javascript
详解浏览器渲染页面过程
2017/02/09 Javascript
JS中获取 DOM 元素的绝对位置实例详解
2018/04/23 Javascript
LayUi中接口传数据成功,表格不显示数据的解决方法
2018/08/19 Javascript
解决vue接口数据赋值给data没有反应的问题
2018/08/27 Javascript
基于vue实现一个禅道主页拖拽效果
2019/05/27 Javascript
重学JS之显示强制类型转换详解
2019/06/30 Javascript
js实现跟随鼠标移动的小球
2019/08/26 Javascript
jquery实现垂直手风琴菜单
2020/03/04 jQuery
vue实现防抖的实例代码
2021/01/11 Vue.js
[51:29]Alliance vs TNC 2019国际邀请赛小组赛 BO2 第二场 8.16
2019/08/18 DOTA
python实现内存监控系统
2021/03/07 Python
python计算列表内各元素的个数实例
2018/06/29 Python
Python实现数值积分方式
2019/11/20 Python
Python实现壁纸下载与轮换
2020/10/19 Python
Clarins娇韵诗美国官网:法国天然护肤品牌
2016/09/26 全球购物
美国殿堂级滑板、冲浪、滑雪服装品牌:Volcom(钻石)
2017/04/20 全球购物
Theory美国官网:后现代都市风时装品牌
2018/05/09 全球购物
Snapfish爱尔兰:在线照片打印和个性化照片礼品
2018/09/17 全球购物
阿联酋手表和配饰购物网站:Rivolishop
2019/11/25 全球购物
最新教师自我评价分享
2013/11/12 职场文书
市场营销专业个人求职信范文
2013/12/14 职场文书
毕业证丢失证明
2014/01/15 职场文书
《绿色蝈蝈》教学反思
2014/03/02 职场文书
爱护公共设施的标语
2014/06/24 职场文书
vue+iview实现手机号分段输入框
2022/03/25 Vue.js