python PIL.Image使用
一、 基本概念
通道
每张图片由一个或多个通道构成
RGB图像为例,每张图片由3个通道构成,即R通道,G通道,B通道。对于灰度图像,则只有一个通道。
获取图像的通道数量和名称,可以由方法PIL.Image.getbands()获取,此方法返回一个字符串元组,包含每一个通道的名称- 模式
图像的模式定义了图像的类型和像素的位宽。当前支持如下模式:
1:1位像素,表示黑和白,但是存储的时候每个像素存储为8bit。
L:8位像素,表示黑和白。
P:8位像素,使用调色板映射到其他模式。
RGB:3x8位像素,为真彩色。
RGBA:4x8位像素,有透明通道的真彩色。
CMYK:4x8位像素,颜色分离。
YCbCr:3x8位像素,彩色视频格式。
I:32位整型像素。黑白图像
F:32位浮点型像素。黑白图像
PIL也支持一些特殊的模式,包括RGBX(有padding的真彩色)和RGBa(有自左乘alpha的真彩色)。
可以通过mode熟悉读取图像的模式
尺寸
通过size属性获取水平和垂直方向上的像素数- 坐标系统
PIL使用笛卡尔像素坐标系统,坐标(0,0)位于左上角。注意:坐标值表示像素的角;位于坐标(0,0)处的像素的中心实际上位于(0.5,0.5)。
坐标经常用于二元组(x,y)。长方形则表示为四元组,前面是左上角坐标。例如,一个覆盖800x600的像素图像的长方形表示为(0,0,800,600)。 - 调色板
调色板模式 ("P")使用一个颜色调色板为每个像素定义具体的颜色值 - 信息
使用info属性可以为一张图片添加一些辅助信息。这个是字典对象。加载和保存图像文件时,多少信息需要处理取决于文件格式
二、 基本方法和属性使用
##打开图像,返回PIL.Image对象
from PIL import Image as Image
image = Image.open(‘image.gpeg’)
##显示图像模式,模式概念见第一节基本概念
image.mode
##转换模式
image.convert(‘1’)
##将一个图像对象转为缩略图,图像对象将之间变为缩略图,本地图像不变。
image.thumbnail((680,680))
##调整图像像素大小,其他参数可以指定过滤器
image.resize((1000,2000))
##旋转图像区域,旋转角度可以为Image.ROTATE_90,Image.ROTATE_180,Image.ROTATE_270
image.transpose(Image.ROTATE_180)
##旋转图像,逆时针表旋转角度
image.rotate(45)
##截取图像中的像素区域,拷贝图像
cropZone = image.crop((100,100,1000,1000))
cropZone = image.copy()
image.paste(cropZone,(100,100,1000,1000))
##获取、更改某个像素位置的值
image.getpixel((100,100))
image.putpixel((100,100),(0,0,0))
转载于:https://blog.51cto.com/9429042/2118480
python PIL.Image使用相关推荐
- python对图片颜色校正_使用Python PIL更改图像色调
Using Python PIL, I'm trying to adjust the hue of a given image. I'm not very comfortable with the j ...
- python123九宫格输入_使用python PIL库实现简单验证码的去噪方法步骤
字符型图片验证码识别完整过程及Python实现的博主,我的大部分知识点都是从他那里学来的. 想要识别验证码,收集足够多的样本后,首先要做的就是对验证码原始图片进行处理,对验证码识别分类之前,一般包括: ...
- Python: PIL基本代码
Python: PIL基本代码 # 声明使用字符库 # -*- coding: utf-8 -*- # 导入系统库 import os # 导入文件读写库 import io # 导入数学库 impo ...
- Python PIL支持的图像文件格式
Python PIL 支持的图像文件格式: BMP BUFR (identify only) CUR (read only) DCX (read only) EPS (write-only) FITS ...
- python对图片颜色校正,使用Python PIL更改图像色调
Using Python PIL, I'm trying to adjust the hue of a given image. I'm not very comfortable with the j ...
- Python + PIL 处理支付宝AR红包
Python + PIL 处理支付宝AR红包 思路比较简单: 1.对图片进行锐化处理: 2.设(r_h, g_h, b_h)为支付宝遮罩黑条的RGB值,以此为中心,查找半径为Diff_radius的范 ...
- python PIL图片拼接
w_num = 5h_num = int(len(imgs)/w_num) + 1UNIT_SIZE = 200 # 一张图的大小是200*200target_shape = (w_num * (UN ...
- python自动裁剪图片_自动裁剪与Python / PIL的图像(Automatically cropping an ima
谁能帮我弄清楚发生了什么事在我的图像自动裁剪脚本? 我有一个大的透明区域/空间PNG图像. 我想能够自动裁剪那个空间出来,剩下的要领. 原始图像具有正方形画布,最好这将是长方形的,只是封装分子. 这里 ...
- python输出文本居中_#python PIL ImageDraw text 文本居中#
python pip pil有什么东西 你所问的问题实是属1.先参考[教程]Python中的内置的和方的模块搞懂PIL是属于第三方Python模块2.再参考:[待完善][总结]Python安装第三方的 ...
- Python PIL压缩二进制图像(PNG转JPG)
文章目录 问题描述 解决方案 封装 参考文献 问题描述 压缩二进制图像(PNG转JPG) 1.png,69.7KB 解决方案 Image.save() 进 BytesIO 对象再读出来即可 from ...
最新文章
- apache和tomcat区别
- 关闭PdfReader右侧工具栏的方法
- How to Build Your Own Blockchain Part 4.2 — Ethereum Proof of Work Difficulty Explained
- 产生式是蕴含式_独栋别墅~下沉式庭院设计
- css图片上漂浮着文字效果
- 通过www服务器提供的起始网页就能访问,2010春2题目.doc
- 一支python教学_第一只python爬虫
- 工业以太网通讯Profinet协议详解
- JavaScript getDay()与getDate()
- 如何使用Microsoft PowerPoint制作海报
- 计算机网络应用技术技能大赛
- 华为手机怎么关闭下拉智慧搜索
- Android开发入门 - 简易开心消消乐界面设计
- TINA-TI仿真软件
- 做网络营销必看干货:月薪3000与月薪30000文案区别
- 网络层 ICMP与ping:投石问路的侦察兵
- mac 软件分享平台
- Java项目集成grafana_grafana 批量添加图表
- luogu2254 瑰丽华尔兹
- Linux使用fcitx框架使用091五笔或其它自定义码表
热门文章
- Java 异常处理(标准抛异常、异常处理、多异常、Finally、多线程异常处理、获取异常的堆栈信息、链试异常、自定义异常)
- 工具资源系列之 github 上各式各样的小徽章从何而来?
- Java 并发框架Disruptor(七)
- SDUTOJ3468_广度优先搜索练习之神奇的电梯(BFS + 用vector建图)
- Python添加模块路径
- NumPy 基础用法
- 【openjudge】【字符串+模拟】1777:文件结构“图”
- 《第9章 循环结构进阶》
- hibernate reverse engineering 中没有java src folder
- C#、.Net经典面试题集锦(一)