在linux中使用Python对图片进行批量命名
大家在进行机器学习训练时,为了方便管理不同种类的图片,需要对同一类图片进行批量命名。
1 picture文件夹有大量照片,我们需要对其进行重新命名。
2 此时我们可以在picture文件夹里启动终端,创建一个python脚本,其命名为rename.py。
touch rename.py
3 新开一个终端,输入
gedit rename.py
4 将下列代码粘贴进rename.py脚本
import os class BatchRename(): ''' 批量重命名文件夹中的图片文件 ''' def __init__(self): self.path = '/media/hyr/D952-0C52/肉训练集/picture' # 表示需要命名处理的文件夹 def rename(self): filelist = os.listdir(self.path) # 获取文件路径 print('filelist',filelist) total_num = len(filelist) # 获取文件长度(个数) i = 1 # 表示文件的命名是从1开始的 for item in filelist: print('item',item) if item.endswith('.jpg'): # 初始的图片的格式为jpg格式的(或者源文件是png格式及其他格式,后面的转换格式就可以调整为自己需要的格式即可) src = os.path.join(os.path.abspath(self.path), item) print('src',src) #dst = os.path.join(os.path.abspath(self.path), '' + str(i) + '.jpg') # 处理后的格式也为jpg格式的,当然这里可以改成png格式 dst = os.path.join(os.path.abspath(self.path), 'rou' + format(str(i), '0>3s') + '.jpg') #这种情况下的命名格式为0000000.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()
将 self.path = ‘/media/hyr/D952-0C52/肉训练集/picture' 修改为自己的文件绝对路径。
5 启动终端,输入
python3 rename.py
6 待运行完成后
7 此时,我们查看picture文件夹,发现所有照片已经完成重新命名。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。
长按识别二维码并关注微信
更方便到期提醒、手机管理