python - 使用python将图像保存到子目录中
问题描述
我想将一些使用 opencv 处理过的图像保存到子目录中。我曾尝试使用 os.walk,但它无法将图像保存到子目录中。在这里,我向您展示我的代码和我想要的。
我的输入目录以及我要保存的内容如下所示:
dir_data:
-subdir_A:
-img_1.jpg
-img_2.jpg
-subdir_B:
-img_3.jpg
-img_4.jpg
使用我的代码的输出:
dir_A:
-subdir_A:
-img_1.jpg
-img_2.jpg
-img_3.jpg
-img_4.jpg
-subdir_B:
-img_1.jpg
-img_2.jpg
-img_3.jpg
-img_4.jpg
我的代码:
for root, dirs, files in os.walk(output_directory):
for file_ in files:
full_file_path = os.path.join(root, file_)
for i in range(image.shape[0]):
cv2.imwrite(os.path.join(root, file_+"%03d.jpg"%i),image[i,:,:,::-1])
print("wrote %d images"%(image.shape[0]))
解决方案
您收到的错误信息是什么?
我建议您首先尝试使用完整路径手动保存图像:
cv2.imwrite("./dir_A/subdir_a/img1.png",image[i,:,:,::-1])
一旦您确认您的图像保存过程适用于完整路径,请打印出您正在创建的路径的每个部分以及连接的路径,并进行比较以查找缺失的内容。
打印(根)
打印(file_+"%03d.jpg"%i)
我的猜测是您在某处缺少斜线。
推荐阅读
- crystal-reports - 如何在 Crystal Reports 上添加子组
- logstash - Fluend中带有时间戳的自定义logstash索引
- c - 有没有办法将 stderr 重定向到在 bash、csh 和 dash 中工作的文件?
- selenium - 如何使用 Kantu Selenium IDE 获取整个元素?
- cors - quarkus:被 CORS 策略阻止
- angular - Cypress.io 测试下拉列表
- apache-kafka - 在 Ubuntu linux 中启动 Kafka 服务器时出错
- javascript - 你将如何重构这个 Javascript 对象循环?
- javascript - 在 vue.js 中创建一个包含数据的 obj 名称
- javascript - 为什么这种将 html 表单信息下载为字符串/.txt 文件的方法会从文件中删除所有换行符?