批量修改文件名
功能:批量修改文件名
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) #获取文件下的所有文件名
m = 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!
m + = 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
w = 0
h = 0
def resize(path , w , h):
filelist = os.listdir(path)
for i 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)