# 23.5.9 数据文件清洗。在transform时发现一些cv2.readim()错误的文件,导致训练挂死,需要转换清洗 import os import cv2 from PIL import Image
# 执行一遍再次执行,可以发现已经没有cv2.imread为空的文件了,清洗完成 directory = "/home/aistudio/work" for subdir in ["cat_12_predict", "cat_12_train"]: subdir_path = os.path.join(directory, subdir) for filename in os.listdir(subdir_path): filepath = os.path.join(subdir_path, filename) # 23.5.9 遇到可能的cv2.imread问题的图像文件,先进行转换,避免transform的时候出错 if cv2.imread(filepath) is None: print(filepath) img = Image.open(filepath).convert('RGB') # 23.5.9 先完全遍历并变换格式,让cv2可以识别 img.save(filepath) print('finish saving')
# 23.5.9 数据文件清洗。在transform时发现一些cv2.readim()错误的文件,导致训练挂死,需要转换清洗
import os
import cv2
from PIL import Image
# 执行一遍再次执行,可以发现已经没有cv2.imread为空的文件了,清洗完成
directory = "/home/aistudio/work"
for subdir in ["cat_12_predict", "cat_12_train"]:
subdir_path = os.path.join(directory, subdir)
for filename in os.listdir(subdir_path):
filepath = os.path.join(subdir_path, filename)
# 23.5.9 遇到可能的cv2.imread问题的图像文件,先进行转换,避免transform的时候出错
if cv2.imread(filepath) is None:
print(filepath)
img = Image.open(filepath).convert('RGB')
# 23.5.9 先完全遍历并变换格式,让cv2可以识别
img.save(filepath)
print('finish saving')