一、 基本概念

  1. 通道
    每张图片由一个或多个通道构成
    RGB图像为例,每张图片由3个通道构成,即R通道,G通道,B通道。对于灰度图像,则只有一个通道。
    获取图像的通道数量和名称,可以由方法PIL.Image.getbands()获取,此方法返回一个字符串元组,包含每一个通道的名称

  2. 模式
    图像的模式定义了图像的类型和像素的位宽。当前支持如下模式:
    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熟悉读取图像的模式

  1. 尺寸
    通过size属性获取水平和垂直方向上的像素数

  2. 坐标系统
    PIL使用笛卡尔像素坐标系统,坐标(0,0)位于左上角。注意:坐标值表示像素的角;位于坐标(0,0)处的像素的中心实际上位于(0.5,0.5)。
    坐标经常用于二元组(x,y)。长方形则表示为四元组,前面是左上角坐标。例如,一个覆盖800x600的像素图像的长方形表示为(0,0,800,600)。
  3. 调色板
    调色板模式 ("P")使用一个颜色调色板为每个像素定义具体的颜色值
  4. 信息
    使用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使用相关推荐

  1. 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 ...

  2. python123九宫格输入_使用python PIL库实现简单验证码的去噪方法步骤

    字符型图片验证码识别完整过程及Python实现的博主,我的大部分知识点都是从他那里学来的. 想要识别验证码,收集足够多的样本后,首先要做的就是对验证码原始图片进行处理,对验证码识别分类之前,一般包括: ...

  3. Python: PIL基本代码

    Python: PIL基本代码 # 声明使用字符库 # -*- coding: utf-8 -*- # 导入系统库 import os # 导入文件读写库 import io # 导入数学库 impo ...

  4. Python PIL支持的图像文件格式

    Python PIL 支持的图像文件格式: BMP BUFR (identify only) CUR (read only) DCX (read only) EPS (write-only) FITS ...

  5. 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 ...

  6. Python + PIL 处理支付宝AR红包

    Python + PIL 处理支付宝AR红包 思路比较简单: 1.对图片进行锐化处理: 2.设(r_h, g_h, b_h)为支付宝遮罩黑条的RGB值,以此为中心,查找半径为Diff_radius的范 ...

  7. python PIL图片拼接

    w_num = 5h_num = int(len(imgs)/w_num) + 1UNIT_SIZE = 200 # 一张图的大小是200*200target_shape = (w_num * (UN ...

  8. python自动裁剪图片_自动裁剪与Python / PIL的图像(Automatically cropping an ima

    谁能帮我弄清楚发生了什么事在我的图像自动裁剪脚本? 我有一个大的透明区域/空间PNG图像. 我想能够自动裁剪那个空间出来,剩下的要领. 原始图像具有正方形画布,最好这将是长方形的,只是封装分子. 这里 ...

  9. python输出文本居中_#python PIL ImageDraw text 文本居中#

    python pip pil有什么东西 你所问的问题实是属1.先参考[教程]Python中的内置的和方的模块搞懂PIL是属于第三方Python模块2.再参考:[待完善][总结]Python安装第三方的 ...

  10. Python PIL压缩二进制图像(PNG转JPG)

    文章目录 问题描述 解决方案 封装 参考文献 问题描述 压缩二进制图像(PNG转JPG) 1.png,69.7KB 解决方案 Image.save() 进 BytesIO 对象再读出来即可 from ...

最新文章

  1. apache和tomcat区别
  2. 关闭PdfReader右侧工具栏的方法
  3. How to Build Your Own Blockchain Part 4.2 — Ethereum Proof of Work Difficulty Explained
  4. 产生式是蕴含式_独栋别墅~下沉式庭院设计
  5. css图片上漂浮着文字效果
  6. 通过www服务器提供的起始网页就能访问,2010春2题目.doc
  7. 一支python教学_第一只python爬虫
  8. 工业以太网通讯Profinet协议详解
  9. JavaScript getDay()与getDate()
  10. 如何使用Microsoft PowerPoint制作海报
  11. 计算机网络应用技术技能大赛
  12. 华为手机怎么关闭下拉智慧搜索
  13. Android开发入门 - 简易开心消消乐界面设计
  14. TINA-TI仿真软件
  15. 做网络营销必看干货:月薪3000与月薪30000文案区别
  16. 网络层 ICMP与ping:投石问路的侦察兵
  17. mac 软件分享平台
  18. Java项目集成grafana_grafana 批量添加图表
  19. luogu2254 瑰丽华尔兹
  20. Linux使用fcitx框架使用091五笔或其它自定义码表

热门文章

  1. Java 异常处理(标准抛异常、异常处理、多异常、Finally、多线程异常处理、获取异常的堆栈信息、链试异常、自定义异常)
  2. 工具资源系列之 github 上各式各样的小徽章从何而来?
  3. Java 并发框架Disruptor(七)
  4. SDUTOJ3468_广度优先搜索练习之神奇的电梯(BFS + 用vector建图)
  5. Python添加模块路径
  6. NumPy 基础用法
  7. 【openjudge】【字符串+模拟】1777:文件结构“图”
  8. 《第9章 循环结构进阶》
  9. hibernate reverse engineering 中没有java src folder
  10. C#、.Net经典面试题集锦(一)