Python遍历读取 A 文件夹中的 A1、A2、A3、A4、A5 中的各子文件夹中的图片,并对每张图片处理后保存到指定路径
2024-01-09 15:24:46
一、具体步骤
首先,指定 A 文件夹的路径和重命名后的文件夹路径。
然后,遍历 A 文件夹中的各子文件夹。
在每个子文件夹中,遍历所有文件。
读取每个文件,获取图片路径、图片名称和图片数据。
使用子文件夹的名称重命名图片。
保存图片到指定路径。
二、文件夹目录结构样例
例如,如果 A 文件夹中包含如下内容:
A
├── A1
│ ├── image1.jpg
│ └── image2.jpg
├── A2
│ ├── image1.jpg
│ └── image2.jpg
├── A3
│ ├── image5.jpg
│ └── image6.jpg
├── A4
│ ├── image1.jpg
│ └── image2.jpg
└── A5
├── image9.jpg
└── image10.jpg
执行上述代码后,将会在 B 文件夹中生成如下内容:
B
│ rename1.jpg
│ rename2.jpg
│ rename3.jpg
│ rename4.jpg
│ rename5.jpg
│ rename6.jpg
│ rename7.jpg
│ rename8.jpg
│ rename9.jpg
│ rename10.jpg
三、代码
import cv2
import os
# 指定A文件夹的路径
root_path = "Images/image"
# 指定处理或重命名后的文件夹路径
target_path = "Images/image_all"
k=0
# 遍历A文件夹中的各个子文件夹
for dirpath,dirnames,filenames in os.walk(root_path):
# 遍历每个子文件夹
for filename in filenames:
# 获取图片路径
img_path = os.path.join(dirpath,filename)
# 读取子文件夹中的每一张图片
img = cv2.imread(img_path)
# 获取图片名称
img_name = os.path.basename(img_path)
# 重命名图片
new_img_name = "{}.bmp".format(("noise_"+str(k)))
print(new_img_name)
# 保存图片
cv2.imwrite(os.path.join(target_path,new_img_name),img)
k+=1
四、实例遍历处理后结果
遍历重命名后保存到指定路径的结果:
五、总结
以上就是使用Python遍历读取 A 文件夹中的 A1、A2、A3、A4、A5 中的各文件夹中的图片,并对每张图片处理后保存到指定路径。在我给的代码例子中是对每张图片进行重命名,其它的处理在读入图片后加代码即可。
文章来源:https://blog.csdn.net/qq_40280673/article/details/135377962
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!