栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

python从txt中批量读取图片名后将图片另存为

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

python从txt中批量读取图片名后将图片另存为

我们在做深度学习的时候几乎都需要用到txt文件,还有对应的图片名,这个时候如果数据就几十个还好,如果再增多的话,我们就受不了了,下面我就记录顺便保存一下代码

txt_file="C:\Users\ljs\Desktop\rename\test_501.txt" #这里是txt文件的地址
a=[] #创建一个列表
with open(txt_file, 'r', encoding='utf-8') as file:
    for c in file.readlines():
        a.append(c.strip('n').split(' ')[0]) #读取文件并放入列表

#print(a)
path = 'C:\Users\ljs\Desktop\total' #从哪里读取图片
path_1 = 'C:\Users\ljs\Desktop\y' #把找到的图片存放在哪里
for filename in a:#遍历列表
    #print(type(filename))#字符串型
    img_path = path + '/' + filename #把图片的名字和地址组合
    print(img_path)
    img = cv2.imread(img_path) #根据图片的地址去读取图片
    save_name = path_1 + '/' + filename # 图片保存到另外的一个地方的地址和图片的名字
    cv2.imwrite(save_name,img) #保存图片
1、读取txt文件

首先读取txt文件中的每行时会读取到一个换行符n。这个是我们不需要的,所有我们这里把他给strip掉,由于我读取的txt文件的每行不单单是图片的名称,所以我这里是用了split把图片名称后边的内容删掉,然后就只剩下图片名,最后再放入列表中,供接下来的读取。

2、根据名称去保存图片

我们遍历保存好的列表。列表里面是图片的名字(如果你没有分割错误的话),这个读取后是字符串型的,接下来我们要获取从哪里读取图片的文件地址,把地址与从列表里面遍历到的图片名相组合,然后就得到了每张图片的地址,我们用cv2.imread()去读取图片,最后把它保存,如果你不想改变原来图片的名字话直接按照上面的格式保存就行,如果想改变名字,那么就把path_1 + '/' + filename中的filename成你想改变的名字(例如:1,2,3,…)。保存的时候每张图片的名字一样哦

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/445795.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号