对voc2007数据集进行person的单类数据抽取
对voc2007数据集进行person的单类数据抽取
使用方式
ython tovoc.py VOC2007 VOC 14 1
4个参数分别为
VOC2007原始数据集路径
新数据集路径
标签下标
新标签下标
tovoc.py
#!/usr/bin/ python
# -*- encoding: utf-8 -*-
'''
@文件 :tovoc.py
@说明 :python tovoc.py VOC2007 VOC 14 1
@时间 :2022/03/21 16:43:49
@作者 :刘子沫
@邮箱 :spiritai@qq.com
@版本 :1.0
'''from __future__ import print_functionimport argparse
import glob
import os
import os.path as osp
import sys
import shutil
# shutil.copy(源文件, 目标文件) 目标文件可以是目录
def main():parser = argparse.ArgumentParser(formatter_class=argparse.ArgumentDefaultsHelpFormatter)parser.add_argument("input_dir", help="input annotated directory")parser.add_argument("output_dir", help="output dataset directory")parser.add_argument("inclass", help="labels num")parser.add_argument("outclass", help="labels num")args = parser.parse_args()if osp.exists(args.output_dir):print("Output directory already exists:", args.output_dir)sys.exit(1)os.makedirs(args.output_dir)os.makedirs(osp.join(args.output_dir, "JPEGImages"))os.makedirs(osp.join(args.output_dir, "SegmentationClassPNG"))os.makedirs(osp.join(args.output_dir, "SegmentationObjectPNG"))os.makedirs(osp.join(args.output_dir, "labels"))print("Creating dataset:", args.output_dir)for filename in glob.glob(osp.join(args.input_dir,"labels", "*.txt")):print("Generating dataset from:", filename)base = osp.splitext(osp.basename(filename))[0]in_txt_file = osp.join(args.input_dir, "labels", base + ".txt")# yololabelsout_txt_file = osp.join(args.output_dir, "labels", base + ".txt")datas = []nwedatas = []flag = Truewith open(in_txt_file, "r") as f1:datas = f1.readlines()for dt in datas:a,b,c,d,e = dt.replace("\n","").split(" ")if a==str(args.inclass):a = args.outclasselse:flag=Falsebreaknwedatas.append([a,b,c,d,e])if not flag:continuetry:shutil.copy(osp.join(args.input_dir, "SegmentationClass", base + ".png"), osp.join(args.output_dir, "SegmentationClassPNG", base + ".png"))shutil.copy(osp.join(args.input_dir, "SegmentationObject", base + ".png"), osp.join(args.output_dir, "SegmentationObjectPNG", base + ".png"))except:continuewith open(out_txt_file, "w+") as f2:for cls_id,x, y, w, h in nwedatas:f2.write("%s %s %s %s %s\n"%(cls_id,x, y, w, h))shutil.copy(osp.join(args.input_dir, "JPEGImages", base + ".jpg"), osp.join(args.output_dir, "JPEGImages", base + ".jpg"))if __name__ == "__main__":main()
对voc2007数据集进行person的单类数据抽取相关推荐
- 【深度学习】制作VOC2007数据集用于Faster-RCNN训练
制作VOC2007数据集用于Faster-RCNN训练:VOC2007格式是faster-RCNN中官方给出的用于训练的数据集,把它下载下来用frcnn/tool里的训练程序跑一跑就可以得到自己的训练 ...
- Ubuntu 16.04下Caffe-SSD的应用(八)——处理标注好的VOC2007数据集
前言 前面已经演示了如何把图像文件标注成VOC2007数据集,标注完成之后,就要把数据转换成caffe支持的数据格式lmdb. 处理数据 1.在caffe_ssd/data/下新建一个叫VOCdevk ...
- Ubuntu 16.04下Caffe-SSD的应用(七)——制作自己的VOC2007数据集
前言 1.前面的博文大概讲了官方的VOC2007的内容结构与各个目录的作用,接下来要讲的是如何制作自己的VOC2007数据,并用于训练. 2.制作VOC2007数据集的前准备是必须有包含要训练的样本的 ...
- Ubuntu 16.04下Caffe-SSD的应用(六)——PASCAL VOC2007数据集介绍
前言 1.PASCAL VOC为图像识别与分类提供了一整套标准化的图像数据集,VOC数据集是衡量图像分类识别能力的基准,好多深度学习的框架在识别这块都以此数据集作为演示样例.PASCAL VOC数据集 ...
- voc2007数据集_【目标检测数据集】PASCAL VOC制作
[VOC2007+2012] 数据集地址:https://pjreddie.com/projects/pascal-voc-dataset-mirror/ PASCAL VOC为图像识别和分类提供了一 ...
- VOC2007数据集 VOC2012数据集下载 百度云
VOC2007数据集 VOC2007数据集下载 百度云 Download VOC2007 trainval & test 链接:https://pan.baidu.com/s/1_uTFp4_ ...
- (详细版Win10+Pycharm)YOLOX——训练自己的VOC2007数据集,以NWPU VHR-10 dataset为例
目录 一.搭建YOLOX环境 二.训练自己的VOC数据集 1.打开Pycharm配置Anaconda已创建好的yolo_x虚拟环境 2.在Pycharm中设置Git环境 3.修改配置文件 (1)修改Y ...
- VOC2007数据集制作
相信看这篇文章的人都在做深度学习吧,此数据集是为目标检测做的数据集,有错误处请海涵 代码见我的github上:https://github.com/EddyGao/make_VOC2007 第一步:首 ...
- 【目标检测算法】YOLO-V5实战检测VOC2007数据集
文章目录 一.项目克隆与环境配置 1. 下载源码 2. 安装依赖包 二.自定义数据集导入和预训练权重 1. 导入自定义数据集 2. 获得预训练权重 三.修改配置文件 1. data目录中的yaml文件 ...
- 利用VOC2007数据集创建属于自己的数据集
最近在做本科毕设,是做个关于汽车类型识别的论文.已经在网上找来了VOC格式的车辆数据集,已有轿车.suv.卡车.公交车等类别的照片和标签文件,但是还是缺少一类数据:摩托车.摩托车数据集应该很好找,但是 ...
最新文章
- 表单高级应用和语义化
- 再造人类生命的神奇细胞Human.Life.Our.Amazing.Cell
- mysql基本的增删改查和条件语句
- java学习(110):日期date类
- 微软企业库mysql分页存储_使用微软企业库,非分页sql语句得到分页数据方法
- 测试流程 - 关于用例评审,给你的 9 点建议
- 【MM32F5270开发板试用】基于MindSDK对接雨滴传感器
- linux 开机密码忘了,linux系统开机忘记密码
- android 转发朋友圈,微信怎么转发朋友圈 转发朋友圈方法详细教程
- 电力自动化系统为何需要卫星同步时钟装置?
- 大数据对人们生活的积极影响_大数据对生活带来的影响
- python搬家具_python面向对象编程: 搬家具案例
- Hot Observable 和 Cold Observable的区别
- the sun also rises day17
- 14 Python 办公自动化
- 微机原理 || MOV 指令使用规则(详细+例题)
- idea中找不到maven projects的集中解决办法
- samb连接linux服务器,在Windows上访问Linux下的Samba服务器的方法
- oracle全文索引之FILTER_2_INSO_FILTER
- 手机端软件 小界面有“大江湖”