博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
用python将MSCOCO和Caltech行人检测数据集转化成VOC格式
阅读量:7072 次
发布时间:2019-06-28

本文共 1212 字,大约阅读时间需要 4 分钟。

代码:转换用的代码放在

之前用Tensorflow提供的object detection API可以很方便的进行fine-tuning实现所需的特定物体检测模型(看)。那么现在的主要问题就是数据集了,目前公开的数据集已经有很多了,比如综合的有, ;的有LFW,CASIA,CelebV等;行人检测的有,KITTI等;姿势检测的,还有其他等等(具体按分类可以参考下)。总之这个数据集资源的总结有很多,在google或者github上搜下有一大堆,这里就不具体介绍了。

1. COCO数据集

这里用到的数据集是object instance/keypoints数据集,用于之后的物体检测和姿势检测,可以在进行下载,也可以用git上coco项目提供的api。

一开始的做法是下载train2014和val2014图片数据集,然后根据instance/keypoints annotation (json)文件根据图片名从中匹配出所需的图片。不过后来发现annotation中的链接不一定能在下载的数据集里面找到,需要自行下载,所以最后的做法是直接从annotation文件中提取图片名跟下载链接然后下载进行匹配。coco比Imagenet好的一点是除了图片flickr链接之外还提供了coco源的链接(比如:),前者在开几个线程爬取图片的时候很可能会被封,后者就随意多了,爬取速度可以很快。

使用:

MSCOCO数据集的注释说明很清楚,转换脚本很容易写。用上面的库里的anno_json_image_urls.py从annotation文件获取图片链接,然后用download_coco_images.py下载图片以及anno_coco2voc.py生产voc格式的xml注释文件。

2. Caltech pedestrian数据集

这个数据集提供的图片文件存在seq中,注释文件是vbb(是这群dalao用matlab写的),开始还以为需要用matlab进行处理了,不过后来发现用scipy.io.loadmat函数可以读取vbb文件,用opencv的cv2.VideoCapture()可以读取seq,那么就可以直接用python来转换而非matlab。当然如果对matlab很熟的话,可以直接用官方提供的。

不过这个数据集的annotation文件的说明文档我好像没有找到,所以vbb文件的数据格式并不是很清楚,通过直接加载以后查看能够知道里面提供了一大堆字段比如id(类型:person,people, person-far这种),pos(位置,就是我们需要的),occl(是否遮挡,可能有用),lock, posv(这两个不太清楚是啥也没怎么查到,有人查到可以留言下哈)。

使用

用上面库里的vbb2voc脚本可以将下载的seq和vbb文件转换成jpg和xml文件(不过这个数据集的下载有点麻烦,可能需要FQ)。

参考

转载地址:http://zkkml.baihongyu.com/

你可能感兴趣的文章
linux环境搭建seafile客户端自动上传文件
查看>>
10.27 函数
查看>>
MySQL查询缓存
查看>>
【问题总结】问题行
查看>>
这种放法会使div像一张纸一样
查看>>
阿里云环境配置
查看>>
Codeforces 455C
查看>>
PHP请求页面
查看>>
【动态规划】旅行
查看>>
Git小白入门
查看>>
基于 HTML5 的 WebGL 和 VR 技术的 3D 机房数据中心可视化
查看>>
PHP,JAVA,NET 开发比较
查看>>
平方开根 - 牛顿迭代(板子整理)
查看>>
java string字符拼接符"+"的研究
查看>>
Layui表格编辑【不依赖Layui的动态table加载】
查看>>
HDU2087剪花布条(KMP)
查看>>
NOIP2018普及初赛解析
查看>>
每次访问都生成不一样sessionId
查看>>
解决Cocos2d-x编译错误: 无法打开 源 文件 "extensions/ExtensionExport.h"
查看>>
SqlServer 循环建表、删除表、更新表
查看>>