千家信息网

linux中如何使用Python对图片进行批量命名

发表于:2024-12-01 作者:千家信息网编辑
千家信息网最后更新 2024年12月01日,小编给大家分享一下linux中如何使用Python对图片进行批量命名,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!大家在进
千家信息网最后更新 2024年12月01日linux中如何使用Python对图片进行批量命名

小编给大家分享一下linux中如何使用Python对图片进行批量命名,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!

大家在进行机器学习训练时,为了方便管理不同种类的图片,需要对同一类图片进行批量命名。
1 picture文件夹有大量照片,我们需要对其进行重新命名。

2 此时我们可以在picture文件夹里启动终端,创建一个python脚本,其命名为rename.py。

touch rename.py

3 新开一个终端,输入

gedit rename.py

4 将下列代码粘贴进rename.py脚本

import osclass 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文件夹,发现所有照片已经完成重新命名。

以上是"linux中如何使用Python对图片进行批量命名"这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注行业资讯频道!

0