西部数码主机 | 阿里云主机| 虚拟主机 | 服务器 | 返回乐道官网
当前位置: 主页 > 开发教程 > python教程 >

Python图像处理库PIL的ImageSequence模块介绍

时间:2016-03-06 14:43来源:未知 作者:好模板 点击:
Python图像处理库PIL的ImageSequence模块包含了一个wrapper类,它可以让用户迭代访问图形序列中每一帧图像。 一、ImageSequence模块的函数 1、Iterator 定义:ImageSequence.Iterator(image)Iterator instanc

Python图像处理库PIL的ImageSequence模块包含了一个 wrapper 类,它可以让用户迭代访问图形序列中每一帧图像。

一、 ImageSequence 模块的函数

1、 Iterator

定义: ImageSequence.Iterator(image) ⇒ Iterator instance

含义:创建一个迭代器实例,让用户循环访问序列中的所有帧图像。

例子:

二、 ImageSequence 模块的方法

1、 Operator

定义: []

含义:用户调用这个操作器,从 0 开始访问。当没有其他帧图像时,这个迭代器将产生一个 IndexError 异常。

例子:

from PIL import Image, ImageSequence

im = Image.open("D:\\Code\\Python\\test\\img\\test01.gif")

index = 1
for frame in ImageSequence.Iterator(im):
    print "image: index %d, mode %s, size %s" % (index, frame.mode, frame.size)
    frame.save("frame%d.png" % index)
    index = index + 1

iter = ImageSequence.Iterator(im)
print "image 10: mode %s, size %s" % (iter[10].mode, iter[10].size)
iter[10].show()

图像 test01.gif 为多张动态图像。通过函数 ImageSequence.Iterator(im) 获取了图像对象 im 的迭代器,然后从其中逐张取出每张图片,打印了它们的模式和尺寸。后面通过操作符 [] 获取迭代器中的对应图像。 iter[10] 对应着第十张图像。

该程序输出如下:

image:index 1, mode P, size (450, 450)

image:index 2, mode P, size (450, 450)

image:index 3, mode P, size (450, 450)

image:index 4, mode P, size (450, 450)

image:index 5, mode P, size (450, 450)

image:index 6, mode P, size (450, 450)

image:index 7, mode P, size (450, 450)

image:index 8, mode P, size (450, 450)

image:index 9, mode P, size (450, 450)

image:index 10, mode P, size (450, 450)

image:index 11, mode P, size (450, 450)

image:index 12, mode P, size (450, 450)

image:index 13, mode P, size (450, 450)

image:index 14, mode P, size (450, 450)

image:index 15, mode P, size (450, 450)

image:index 16, mode P, size (450, 450)

image:index 17, mode P, size (450, 450)

image:index 18, mode P, size (450, 450)

image:index 19, mode P, size (450, 450)

image:index 20, mode P, size (450, 450)

image:index 21, mode P, size (450, 450)

image:index 22, mode P, size (450, 450)

image:index 23, mode P, size (450, 450)

image10: mode P, size (450, 450)

图像 test01.gif 如下:

其中第二张图像为:

其中第二十张图像为:

后面通过操作符 [] 获取的第十张图像如下:

(责任编辑:好模板)
顶一下
(0)
0%
踩一下
(0)
0%
------分隔线----------------------------
栏目列表
热点内容