返回

python opencv遍历图像数据集是否存在错误

发布时间:2023-02-20 10:54:27 161
# python# 数据

python3.9的环境,opencv3.4:

平时在准备图像数据集是,有可能其中有个别图像错误引起在深度学习训练到一半时报错,所有先检查一下数据集中的图像是否有错误图像:

import os
import cv2
import glob
import pathlib
import random
import numpy as np

from os import listdir, getcwd

from os.path import join

# 检查图片数据是否正确

# 图片路径
data_path = r'E:\\datasets\\CCPD2019-yolo'

# 写入到文件
trainfile = r'E:\\datasets\\err_list.txt'

if __name__ == '__main__':

file_list = os.listdir(data_path)

train_file = open(trainfile, 'a',encoding='utf-8-sig') #带BOM的UTF-8格式
for file_obj in glob.glob(data_path + '/*.jpg', recursive=True):
#for file_obj in file_list:
file_path = os.path.join(data_path, file_obj)
if os.path.exists(file_path):
a=1
#print(file_path)
else:
print('不存在', file_path)
continue
# img=cv2.imread(img_path)
img = cv2.imdecode(np.fromfile(file_path, dtype=np.uint8), -1) # 解决读中文名称图片的问题
if img is None:
print('错误:%s', file_path)
d = pathlib.Path(file_path)
train_file.write(file_path + '\t' + 'carplate' + '\n')
continue

train_file.close()
特别声明:以上内容(图片及文字)均为互联网收集或者用户上传发布,本站仅提供信息存储服务!如有侵权或有涉及法律问题请联系我们。
举报
评论区(0)
按点赞数排序
用户头像
精选文章
thumb 中国研究员首次曝光美国国安局顶级后门—“方程式组织”
thumb 俄乌线上战争,网络攻击弥漫着数字硝烟
thumb 从网络安全角度了解俄罗斯入侵乌克兰的相关事件时间线