Python PIL(Python Imaging Library)是一款用于图像处理的Python库,其中包含大量的图像处理方法。其中,Image.transform()方法是一种可以对图像进行各种变换的工具,比如像素级操作,图像缩放,裁剪和旋转等。
方法原型
def transform(self, size, method, data=None, resample=None, fill=1, fillcolor=None):
pass
参数说明
- size:一个二元元组,表示输出图像的尺寸,例如(width,height),在旋转和翻转时无需使用。
- method:定义输出图像大小的方法。可选的方法包括:Affine,Exact,Perspective和Quad。
- data:转换矩阵。
- resample:在对图像大小进行调整时使用的滤波器。可选的选项包括:NEAREST,BILINEAR,BICUBIC,ANTIALIAS,HAMMING和BOX。
- fill:在边界外或旋转时,填充图像中的空白区域的颜色。可选的选项包括:1,0,2,3。
- fillcolor:填充颜色。只有当fill参数设置为2或3时才需要设置此参数。
函数功能
transform(transform方法)可以执行各种变换,比如缩放,旋转和扭曲。
代码示例1:将图像旋转45度
from PIL import Image
img = Image.open('test.jpg')
angle = 45
img = img.transform(img.size, Image.EXTENT, (angle,), Image.BICUBIC)
img.show()
代码示例2:图像变形
from PIL import Image
img = Image.open('test.jpg')
scale = 0.5 # 缩放图像的系数
img = img.transform((int(img.width*scale), int(img.height*scale)), Image.EXTENT, data=None, resample=Image.BICUBIC)
img.show()
在上述示例中,将图像尺寸大小变为原来的一半,图像变为扁平形状。
以上就是Python PIL Image.transform()方法的完整攻略了,希望对你有所帮助。