图片重命名以及jpg格式修改(实测好用)——图像识别数据集建立中遇到的小问题(保姆教学版)

作者目的

想将图片名字按照种类‘abc’+‘1’的格式命名,并将图片格式统一修改为jpg

以便后续的训练和图片标注

建立类似的鸟类数据集,命名音节中用_隔开(必做)

打开一种鸟类图像,用记事本新建rename和renamejpg两个py小程序,保存时加上.py

(需要电脑上配置python和pycharm 我用的是py3.0,pycharm2023)

renamejpg.py内容如下

import os
 
#想要更改图片所在的根目录
rootdir="D:/bird/2~12/Tadorna_ferruginea/赤麻鸭 Tadorna ferruginea"
#获取目录下文件名清单
files=os.listdir(rootdir)
 
#对文件名清单里的每一个文件名进行处理
for filename in files:
	portion=os.path.splitext(filename)  #portion为名称和后缀分离后的列表   #os.path.splitext()将文件名和扩展名分开
	if portion[1]==".png":				#如果为tiff则更改名字
		newname=portion[0]+".jpg"  		#要改的新后缀  #改好的新名字
		print(filename)    #打印出要更改的文件名
		os.chdir(rootdir)  #修改工作路径
		os.rename(filename,newname)     #在工作路径下对文件名重新命名

rename.py内容如下

# -*- coding:utf8 -*-

import os
# 定义一个名为 BatchRename 的类,用于批量重命名图片文件
class BatchRename():
    '''
    批量重命名文件夹中的图片文件
    '''
    # 初始化方法,设置存放图片的文件夹路径
    def __init__(self):
        self.path = 'D:/bird/2~12/Tadorna_ferruginea/赤麻鸭 Tadorna ferruginea'     #存放图片的文件夹路径

    # 重命名图片的方法
    def rename(self):
        # 获取指定路径下的文件列表
        filelist = os.listdir(self.path)
        # 获取文件列表的总数量
        total_num = len(filelist)
        # 初始化计数器
        i = 1
        # 遍历文件列表
        for item in filelist:
            # 如果文件以.jpg 结尾(即判断为图片格式)
            if item.endswith('.jpg'):  
                # 构建源文件的完整路径
                src = os.path.join(os.path.abspath(self.path), item)
                # 构建目标文件的完整路径,设置新的文件名
                dst = os.path.join(os.path.abspath(self.path), 'Tadorna_ferruginea' + 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__':
    # 创建 BatchRename 类的实例
    demo = BatchRename()
    # 调用 rename 方法执行重命名操作
    demo.rename()

让我们看看如何操作

原本图片命名如下

修改renamejpg.py的内容

只需修改两行

将此行改成鸟类的拉丁名(用下划线分隔音节)

点开存放图片的文件

复制存放路径

修改此行代码将\替换成/(修改为绝对路径)

保存一下

修改renamejpg.py文件

用记事本打开

修改此行即可

保存一下

windows+R

cd /d +文件夹地址

运行python.renamejpg.py

再运行python.rename.py

自动将数据集中.png-——转变为.jpg

将无法命名的图片删除

本文参考Python:批量修改图片的后缀名_python 批量修改图片后缀名-CSDN博客

批量图片重命名脚本_重命名批量处理脚本-CSDN博客

熟练后一分钟命名一种,作者用90分钟命名了50种水鸟

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值