Pillow ImageOps模块
ImageOps
模块包含许多“现成的”图像处理操作。这个模块是实验性的,大多数操作员只处理 L 和 RGB 图像。
1.1.3 新版功能.
-
PIL.ImageOps.
autocontrast
(image, cutoff=0, ignore=None) 最大化(标准化)图像对比度。此函数计算输入图像(或遮罩区域)的直方图,删除直方图中最亮和最暗像素的百分比,并重新映射图像,使最暗的像素变为黑色(0),最亮的像素变为白色(255)。
- 参数
image -- 要处理的图像。
cutoff -- 从直方图上截止的低端和高端的百分比。要么是一个元组(低,高) ,要么两者都是一个数字。
ignore -- 背景像素值(无背景使用
None
)。mask – 用于对比度操作的直方图是使用掩模中的像素计算出来的。如果没有给出遮罩,则使用整个图像进行直方图计算。
preserve_tone –在 photoshop 风格的自动对比中保留图像色调。
8.2.0新版功能
- 返回
一个Image
PIL.ImageOps.
colorize
(image, black, white, mid=None, blackpoint=0, whitepoint=255, midpoint=127)将灰度图像着色。此函数计算一个颜色楔形,它将源图像中的所有黑色像素映射到第一种颜色,并将所有白色像素映射到第二种颜色。如果指定了
mid
,则使用三色映射。黑白参数应该是 RGB 元组或颜色名称; 也可以通过指定 mid
来使用三色映射。可以指定任何颜色的映射位置(例如 blackpoint
) ,其中这些参数是与应该映射的相应颜色对应的整数值。这些参数必须有逻辑顺序,比如blackpoint < = midpoint < = whitepoint
(如果指定了 mid
)。- 参数
image -- 要着色的图像。
black -- 用于黑色输入像素的颜色。
white -- 用于白色输入像素的颜色。
mid -- 用于中间色调输入像素的颜色。
blackpoint -- 黑色映射的int值[0,255]。
whitepoint -- 白色映射的int值[0,255]。
midpoint -- 中间色调映射的int值[0,255]。
- 返回
一个Image
-
PIL.ImageOps.
pad
(image, size, method=3, color=None, centering=0.5, 0.5) 返回图像的大小和填充版本,展开以填充请求的纵横比和大小。
- 参数
image -- 要调整大小和裁剪的图像。
size -- 请求的输出大小(以像素为单位),以(宽度、高度)元组的形式给出。
method -- 使用什么样的重采样方法。默认是
PIL.Image.BICUBIC
. 见 过滤器 .color -- 填充图像的背景色。
centering -- 控制原始图像在填充版本中的位置。(0.5,0.5)将使图像居中(0,0)将使图像与左上角对齐(1,1)将使图像与右下角对齐
- 返回
一个Image
-
PIL.ImageOps.
crop
(image, border=0) 从图像中删除边框。从所有四个侧面移除相同数量的像素。此功能适用于所有图像模式。
参见
crop()
- 参数
image -- 要裁剪的图像。
border -- 要删除的像素数。
- 返回
一个Image
-
PIL.ImageOps.
scale
(image, factor, resample=3) 返回按参数中给定的特定因子重新缩放的图像。大于1的因子将展开图像,在0和1之间收缩图像。
- 参数
image -- 要重新缩放的图像。
factor -- 膨胀系数,如浮点数。
resample -- 使用什么样的重采样方法。默认是
PIL.Image.BICUBIC
. 见 过滤器 .
- 返回
一个
Image
对象。
-
PIL.ImageOps.
deform
(image, deformer, resample=2) 使图像变形。
- 参数
image -- 要变形的图像。
deformer -- 一个 deformer 对象。任何实现 getmesh 方法的对象都可以使用。
resample --一个可选的重采样过滤器。与
PIL.Image.transform
函数中的值相同。
- 返回
一个Image。
-
PIL.ImageOps.
equalize
(image, mask=None) 均衡图像直方图。此函数将非线性映射应用于输入图像,以便在输出图像中创建统一的灰度值分布。
- 参数
image -- 要均衡的图像。
mask -- 一个可选的遮罩。如果给定,分析中只包括由遮罩选择的像素。
- 返回
一个Image
-
PIL.ImageOps.
expand
(image, border=0, fill=0) 向图像添加边框
- 参数
image -- 要展开的图像。
border -- 边框宽度(像素)。
fill -- 像素填充值(颜色值)。默认值为0(黑色)。
- 返回
一个Image
-
PIL.ImageOps.
fit
(image, size, method=3, bleed=0.0, centering=0.5, 0.5) 返回图像的大小和裁剪版本,裁剪为请求的纵横比和大小。
这个功能是由凯文·卡扎邦提供的。
- 参数
image -- 要调整大小和裁剪的图像。
size -- 请求的输出大小(以像素为单位),以(宽度、高度)元组的形式给出。
method -- 使用什么样的重采样方法。默认是
PIL.Image.BICUBIC
. 见 过滤器 .bleed -- 从所有四个边缘删除图像外部的边框。该值为小数百分比(使用0.01表示一个百分比)。默认值为0(无边框)。不能大于或等于0.5。
centering -- 控制裁剪位置。使用(0.5,0.5)进行中心裁剪(例如,如果裁剪宽度,则从左侧减去50%,因此从右侧减去50%)。(0.0,0.0)将从左上角裁剪(即,如果裁剪宽度,则从右侧裁剪所有裁剪,如果裁剪高度,则从底部裁剪所有裁剪)。(1.0,0.0)将从左下角等处进行裁剪(即,如果裁剪宽度,则从左侧取下所有裁剪,如果裁剪高度,则从顶部取下所有裁剪,因此从底部取下所有裁剪)。
- 返回
一个Image
-
PIL.ImageOps.
posterize
(image, bits) 减少每个颜色通道的位数。
- 参数
image -- 要进行后验的图像。
bits -- 为每个信道保留的位数(1-8)。
- 返回
一个Image
-
PIL.ImageOps.
solarize
(image, threshold=128) 反转高于阈值的所有像素值。
- 参数
image -- 要过度曝光的图像。
threshold -- 此灰度级别之上的所有像素都是反转的。
- 返回
一个Image
-
PIL.ImageOps.
exif_transpose
(image) 如果图像具有EXIF方向标记,则返回相应地转置的新图像。否则,返回图像的副本。
- 参数
image -- 要转置的图像。
- 返回
一个Image
更多建议: