您的位置:首页 > 编程语言 > Python开发

python实现对图片进行旋转,放缩,裁剪的功能

2019-08-07 18:13 681 查看

先说明下,我这是对某个目录下的图片名称进行操作,该目录下的图片名称为1.jpg,2.jpg。。。。。这样类似的图片名。

1.旋转

# -*-coding:utf-8-*-
from PIL import Image
def rotateimg(inputimg,outimg):
im = Image.open(inputimg)
# 图片的宽度和高度
img_size = im.size
print("图片宽度和高度分别是{}".format(img_size))
# 旋转图片
# 左旋转90度
im = im.rotate(90)
print("图片宽度和高度分别是{}".format(im.size))
im.save(outimg)
if __name__ == "__main__":
#
inputpath = "D:/test/tmp/shuibiao/"
outpath = "D:/test/tmp/img/"
for i in range(1,24):
tmpin = inputpath+str(i)+'.jpg'
tmpout = outpath+str(i)+'.jpg'
rotateimg(tmpin, tmpout)
print('成功旋转第'+str(i)+'张图片')

2.放缩

# -*-coding:utf-8-*-
from PIL import Image
def resizeimg(inputimg,outimg):
img1 = Image.open(inputimg)
out=img1.resize((260, 180),Image.ANTIALIAS)
print("图片宽度和高度分别是{}".format(out.size))
out.save(outimg)
if __name__ == "__main__":
#
inputpath = "D:/test/tmp/img/"
outpath = "D:/test/tmp/img_1/"
for i in range(1, 24):
tmpin = inputpath + str(i) + '.jpg'
tmpout = outpath + str(i) + '.jpg'
resizeimg(tmpin, tmpout)
print('成功放缩第' + str(i) + '张图片')

3.裁剪

# -*-coding:utf-8-*-
from PIL import Image
def cropimg(inputimg,outimg):
im = Image.open(inputimg)
# 图片的宽度和高度
img_size = im.size
print("图片宽度和高度分别是{}".format(img_size))
'''
裁剪:传入一个元组作为参数
元组里的元素分别是:(距离图片左边界距离x, 距离图片上边界距离y,距离图片左边界距离+裁剪框宽度x+w,距离图片上边界距离+裁剪框高度y+h)
'''
# 截取图片中一块宽和高都是250的
x = 0
y = 60
w = 260
h = 60
region = im.crop((x, y, x + w, y + h))
region.save(outimg)

if __name__ == "__main__":
inputpath = "D:/test/tmp/img_1/"
outpath = "D:/test/tmp/img_2/"
for i in range(1, 24):
tmpin = inputpath + str(i) + '.jpg'
tmpout = outpath + str(i) + '.jpg'
cropimg(tmpin, tmpout)
print('成功裁剪第' + str(i) + '张图片')

以上这篇python实现对图片进行旋转,放缩,裁剪的功能就是小编分享给大家的全部内容了,希望能给大家一个参考

您可能感兴趣的文章:

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息