下面代码可以批量更改文件夹中图片的名字,或者更改图片的格式为.jpg或者.png格式。
#coding=utf-8
import os #打开文件时需要
from PIL import Image
import re
class BatchRename():
def __init__(self):
#图片文件夹路径
self.path = 'D:\VOC\JPEGImages'
def rename(self):
filelist = os.listdir(self.path)
total_num = len(filelist)
i = 10000 #图片编号从多少开始,不要跟VOC原本的编号重复了
n = 6 # 可更改
for item in filelist:
if item.endswith('.jpg') or item.endswith('.png'):
n = 6 - len(str(i))
src = os.path.join(os.path.abspath(self.path), item)
dst = os.path.join(os.path.abspath(self.path), str(0)*n + str(i) + '.jpg') # 更改成自己需要的图像格式
try:
os.rename(src, dst)
print ('converting %s to %s ...' % (src, dst))
i = i + 1
except:
continue
print ('total %d to rename & converted %d jpgs' % (total_num, i))
if __name__ == '__main__':
demo = BatchRename()
demo.rename()
更改前图片的名字:
更改后: