python:批量修改文件名批量修改图片尺寸

时间:2022-08-06 16:05:48

批量修改文件名

 参考博客:https://www.cnblogs.com/zf-blog/p/7880126.html

功能:批量修改文件名

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
# -*- coding:utf-8 -*-
# 图像批量重命名
import string
import random
import os
import shutil
 
def rename(path , newname):   #对文件重命名
     
    filelist = os.listdir(path)  #获取文件下的所有文件名
    = 0
    for files in filelist:
        Olddir = path + files  #原来的文件路径
        if os.path.isdir(Olddir):  #如果是文件夹则跳过
            continue
        filename = os.path.splitext(files)[0#文件名
        filetype = os.path.splitext(files)[1#后缀名,是一个列表
        Newdir = os.path.join(path , newname + filetype) % m  #这里由于filetype是一个列表,因此不能用Newdir=path+'face%05d'+filetype!
        += 1
        os.rename(Olddir , Newdir)
 
rename('D:/ID_data/1/' '%04d')

功能:批量修改图片尺寸

1
2
3
4
5
6
7
8
9
10
11
12
13
14
import os
from PIL import Image
 
= 0
= 0
 
def resize(path , w , h):
    filelist = os.listdir(path)
    for in filelist:
        im = Image.open(path + i)
        out = im.resize((w , h) , Image.ANTIALIAS)
        out.save("D:/1/" + i)
 
resize("D:/1/" 800 600)

  

【python图像处理】图像的缩放、旋转与翻转

图像的几何变换,如缩放、旋转和翻转等,在图像处理中扮演着重要的角色,python中的Image类分别提供了这些操作的接口函数,下面进行逐一介绍。

1、图像的缩放

图像的缩放使用resize()成员函数,直接在入参中指定缩放后的尺寸即可,示例如下:

#-*- coding: UTF-8 -*-

from PIL import Image

#读取图像
im = Image.open("lenna.jpg")
im.show()

#原图像缩放为128x128
im_resized = im.resize((128, 128))
im_resized.show()

变换结果如下:

2、图像的旋转

图像的旋转使用成员函数rotate(),在入参中直接指定按逆时针旋转的角度即可,示例如下:

#-*- coding: UTF-8 -*-

from PIL import Image

#读取图像
im = Image.open("lenna.jpg")
im.show()

# 指定逆时针旋转的角度
im_rotate = im.rotate(45) 
im_rotate.show()

变换结果如下:

3、图像的翻转

图像的翻转使用transpose()成员函数,直接在入参中指定变换方式即可,不仅支持上下、左右翻转;也支持逆时针90、180、270等角度的旋转,效果与rotate()相同。示例如下:

out = im.transpose(Image.FLIP_LEFT_RIGHT)
out = im.transpose(Image.FLIP_TOP_BOTTOM)
out = im.transpose(Image.ROTATE_90)
out = im.transpose(Image.ROTATE_180)
out = im.transpose(Image.ROTATE_270)