python图像处理实例_python图像处理(⽰例代码)
Pillow是Python⾥的图像处理库(PIL:Python Image Library),提供了了⼴泛的⽂件格式⽀持,强⼤的图像处理能⼒,主要包括图像储存、图像显⽰、格式转换以及基本的图像处理操作等。
颜⾊与RGBA值
计算机通常将图像表⽰为RGB值,或者再加上alpha值(通透度,透明度),称为RGBA值。在Pillow中,RGBA的值表⽰为由4个整数组成的元组,分别是R、G、B、A。整数的范围0~255。RGB全0就可以表⽰⿊⾊,全255代表⿊⾊。可以猜测(255, 0, 0, 255)代表红⾊,因为R分量最⼤,G、B分量为0,所以呈现出来是红⾊。但是当alpha值为0时,⽆论是什么颜⾊,该颜⾊都不可见,可以理解为透明。
from PIL import ImageColor
lor(‘red‘, ‘RGBA‘))
#也可以只以RBG的⽅式查看
lor(‘black‘, ‘RGB‘))
图像的坐标表⽰
python新手代码示例图像中左上⾓是坐标原点(0, 0),这和平常数学⾥的坐标系不太⼀样。这样定义的坐标系意味着,X轴是从左到右增长的,⽽Y轴是从上到下增长。
在Pillow中如何使⽤上述定义的坐标系表⽰⼀块矩形区域?许多函数或⽅法要求提供⼀个矩形元组参数。元组参数包含四个值,分别代表矩形四条边的距离X轴或者Y轴的距离。顺序是(左,顶,右,底)。右和底坐标稍微特殊,表⽰直到但不包括。可以理解为[左, 右)和[顶, 底)这样左闭右开的区间。⽐如(3, 2, 8, 9)就表⽰了横坐标范围[3, 7];纵坐标范围[2, 8]的矩形区域。
使⽤Pillow操作图像
from PIL import Image
im_path = r‘F:Jupyter Notebookcsv_time_datetime_PILabbit.jpg‘
im = Image.open(im_path)
width, height = im.size
#宽⾼
print(im.size, width, height)
#格式,以及格式的详细描述
print(im.format, im.format_description)
im.save(r‘C:UsersAdministratorDesktopabbit_copy.jpg‘)
im.show()
im.size返回⼀个元组,分别是宽和⾼。show()⽅法会调⽤系统默认图像查看软件,打开并显⽰。im.format可查看图像的格式。save()可保存处理后的图⽚,如果未经处理,保存后的图像占⽤的空间(字节数)⼀般也与原图像不⼀样,可能经过了压缩。
裁剪图像
Image有个crop()⽅法接收⼀个矩形区域元组(上⾯有提到)。返回⼀个新的Image对象,是裁剪后的图像,对原图没有影响。
im = Image.open(im_path)
cropedIm = im.crop((700, 100, 1200, 1000))
cropedIm.save(r‘C:UsersAdministratorDesktopcropped.png‘)
调整图像的⼤⼩
resize⽅法返回指定宽⾼度的新Image对象,接受⼀个含有宽⾼的元组作为参数。宽⾼的值得是整数。im = Image.open(im_path)
width, height = im.size
resizedIm = im.resize((width, height+(1920-1080)))
resizedIm.save(r‘C:UsersAdministratorDesktopesize.png‘)
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论