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 相关文章推荐
在Gnumeric下使用Python脚本操作表格的教程
Apr 14 Python
python验证码识别的实例详解
Sep 09 Python
CentOS 6.5下安装Python 3.5.2(与Python2并存)
Jun 05 Python
对numpy和pandas中数组的合并和拆分详解
Apr 11 Python
Python opencv实现人眼/人脸识别以及实时打码处理
Apr 29 Python
python opencv 批量改变图片的尺寸大小的方法
Jun 28 Python
Python Web框架之Django框架Form组件用法详解
Aug 16 Python
Python爬取阿拉丁统计信息过程图解
May 12 Python
python批量检查两个对应的txt文件的行数是否一致的实例代码
Oct 31 Python
python 使用openpyxl读取excel数据
Feb 18 Python
Python中相见恨晚的技巧
Apr 13 Python
pandas取dataframe特定行列的实现方法
May 24 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程序员面试 切忌急功近利(更需要注重以后的发展)
2010/09/01 PHP
php 在线导入mysql大数据程序
2015/06/11 PHP
php实现微信公众号无限群发
2015/10/11 PHP
详解PHP处理密码的几种方式
2016/11/30 PHP
PHP 图片处理
2020/09/16 PHP
javascript prototype原型操作笔记
2009/12/07 Javascript
jquery 图片上传按比例预览插件集合
2011/05/28 Javascript
利用jQuery的deferred对象实现异步按顺序加载JS文件
2013/03/17 Javascript
『jQuery』名称冲突使用noConflict方法解决
2013/04/22 Javascript
点击按钮或链接不跳转只刷新页面的脚本整理
2013/10/22 Javascript
jquery实现的table排序功能示例
2017/03/10 Javascript
详解vue嵌套路由-query传递参数
2017/05/23 Javascript
node 命令方式启动修改端口的方法
2018/05/12 Javascript
vue.js父子组件通信动态绑定的实例
2018/09/28 Javascript
使用webpack5从0到1搭建一个react项目的实现步骤
2020/12/16 Javascript
[02:08]2018年度CS GO枪械皮肤设计大赛优秀作者-完美盛典
2018/12/16 DOTA
使用Python编写基于DHT协议的BT资源爬虫
2016/03/19 Python
python matplotlib画图实例代码分享
2017/12/27 Python
对python 读取线的shp文件实例详解
2018/12/22 Python
Python字典推导式将cookie字符串转化为字典解析
2019/08/10 Python
sklearn-SVC实现与类参数详解
2019/12/10 Python
Python嵌套函数,作用域与偏函数用法实例分析
2019/12/26 Python
python 爬虫基本使用——统计杭电oj题目正确率并排序
2020/10/26 Python
Python Serial串口基本操作(收发数据)
2020/11/06 Python
html5/css3响应式页面开发总结
2018/10/16 HTML / CSS
英国Zoro工具:手动工具,电动工具和个人防护用品
2016/11/02 全球购物
乌克兰品牌化妆品和香水在线商店:Bomond
2020/01/14 全球购物
如何用SQL语句进行模糊查找
2015/09/25 面试题
工地门卫岗位职责
2013/12/30 职场文书
车间统计员岗位职责
2014/01/05 职场文书
机关办公室岗位职责
2014/04/16 职场文书
查摆问题整改措施范文
2014/10/11 职场文书
投标文件签署授权委托书范本
2014/10/12 职场文书
团结友爱主题班会
2015/08/13 职场文书
2016年父亲节寄语
2015/12/04 职场文书
python如何读取和存储dict()与.json格式文件
2022/06/25 Python