在线文档教程

imageop

imageop — Manipulate raw image data

自2.6版以来已弃用:该imageop模块已在Python 3中删除。

imageop模块包含一些对图像有用的操作。它对由Python字符串中存储的8位或32位像素组成的图像进行操作。这gl.lrectwrite()imgfile模块使用的格式相同。

该模块定义了以下变量和功能:

exception imageop.error

所有错误都会引发此异常,例如每像素的位数未知等。

imageop.crop(image, psize, width, height, x0, y0, x1, y1)

返回图像的选定部分,其大小应该是高度宽度,并由psize字节的像素组成。x0y0x1y1与参数类似,即边界包含在新图像中。新的边界不一定在图片中。落在旧图像之外的像素将其值设置为零。如果x0大于x1,则新图像将被镜像。这同样适用于y坐标。gl.lrectread()

imageop.scale(image, psize, width, height, newwidth, newheight)

返回图像缩放大小newwidthnewheight。没有内插完成,缩放是通过简单的像素重复或去除来完成的。因此,缩放后,计算机生成的图像或抖动图像看起来不太好。

imageop.tovideo(image, psize, width, height)

在图像上运行垂直低通滤镜。它通过将每个目标像素计算为两个垂直对齐的源像素的平均值来实现。此例程的主要用途是防止过度闪烁,如果图像显示在使用隔行扫描的视频设备上,则称为名称。

imageop.grey2mono(image, width, height, threshold)

通过对所有像素进行阈值处理,将8位深灰度图像转换为1位深度图像。生成的图像是紧密排列的,可能仅用作参数mono2grey()

imageop.dither2mono(image, width, height)

使用(简单的)抖动算法将8位灰度图像转换为1位单色图像。

imageop.mono2grey(image, width, height, p0, p1)

将1位单色图像转换为8位灰度或彩色图像。所有在输入上为零值的像素在输出上获得值p0,并且所有一值输入像素在输出上获得值p1。将单色黑白图像转换为灰度图分别传递值0和值255

imageop.grey2grey4(image, width, height)

将8位灰度图像转换为4位灰度图像,无抖动。

imageop.grey2grey2(image, width, height)

将8位灰度图像转换为2位灰度图像,无抖动。

imageop.dither2grey2(image, width, height)

抖动将8位灰度图像转换为2位灰度图像。至于dither2mono()抖动算法目前非常简单。

imageop.grey42grey(image, width, height)

将4位灰度图像转换为8位灰度图像。

imageop.grey22grey(image, width, height)

将2位灰度图像转换为8位灰度图像。

imageop.backward_compatible

如果设置为0,则此模块中的函数使用表示小端系统上的多字节像素的非后向兼容方式。本模块最初编写的SGI是一个大端系统,因此设置此变量将不起作用。然而,代码最初并不打算在其他任何东西上运行,因此它对字节顺序做了假设,这些假设并不通用。将此变量设置为0将导致小端系统上的字节顺序颠倒,因此它与大端系统上的字节顺序相同。