深度学习制作数据集的部分代码实现(解压zip、生成json文件)

举报
小小谢先生 发表于 2022/04/16 00:21:37 2022/04/16
【摘要】 1、当数据集是压缩包时,需要解压成图片文件 import zipfiledef unzip_data(src_path,target_path): ''' 解压原始数据集,将src_path路径下的zip包解压至data/dataset目录下 ''' if(not os.path.isdir(target_p...

1、当数据集是压缩包时,需要解压成图片文件


  
  1. import zipfile
  2. def unzip_data(src_path,target_path):
  3. '''
  4. 解压原始数据集,将src_path路径下的zip包解压至data/dataset目录下
  5. '''
  6. if(not os.path.isdir(target_path)):
  7. z = zipfile.ZipFile(src_path, 'r')
  8. z.extractall(path=target_path)
  9. z.close()
  10. else:
  11. print("文件已解压")

2、生成json文件


  
  1. # 说明的json文件信息
  2. readjson = {}
  3. readjson['all_class_name'] = data_list_path #文件父目录
  4. readjson['all_class_images'] = all_class_images
  5. readjson['class_detail'] = class_detail
  6. jsons = json.dumps(readjson, sort_keys=True, indent=4, separators=(',', ': '))
  7. with open(train_parameters['readme_path'],'w') as f:
  8. f.write(jsons)
  9. print ('生成数据列表完成!')

3、自定义data_reader


  
  1. def data_reader(file_list):
  2. '''
  3. 自定义data_reader
  4. '''
  5. def reader():
  6. with open(file_list, 'r') as f:
  7. lines = [line.strip() for line in f]
  8. for line in lines:
  9. img_path, lab = line.strip().split('\t')
  10. img = cv2.imread(img_path)
  11. img = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
  12. img = np.array(img).astype('float32')
  13. img = img/255.0
  14. yield img, int(lab)
  15. return reader

 

 

文章来源: blog.csdn.net,作者:小小谢先生,版权归原作者所有,如需转载,请联系作者。

原文链接:blog.csdn.net/xiewenrui1996/article/details/107684903

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。