数字图像处理/PIL/ImageOps

PIL.ImageOps 包含一些预定义的图像处理操作, 大多数只工作于 LRGB 模式下.

自动调整对比度

im = PIL.ImageOps.autocontrast(image, cutoff=0, ignore=None)

该函数计算图像的直方图, 移除最大和最小的 cutoff 百分比像素, 并将像素范围拉伸到 0 - 255.

灰度图着色

im = PIL.ImageOps.colorize(image, black, white)

着色一幅灰度图. 参数中的 blackwhite 需要为 RGB 颜色.

移除或添加指定像素的边框

# 移除边框
im = PIL.ImageOps.crop(image, border=0)

# 添加边框
im = PIL.ImageOps.expand(image, border=0, fill=0)

移除图像上下左右 border 像素.

直方图均衡化

im = PIL.ImageOps.equalize(image, mask=None)

翻转图像

# 上下翻转
im =  PIL.ImageOps.flip(image)

# 左右翻转
im = PIL.ImageIps.mirror(image)

反色

im = PIL.ImageOps.invert(image)

降低颜色位数

im = PIL.ImageOps.posterize(image, bits)

bits 为每个通道保留的颜色位数, 范围 (1-8).