AVA2.1版本更新了追踪这一列。
那2.2版本请参考此链接文章:自定义ava数据集及训练与测试 完整版 时空动作/行为 视频数据集制作 yolov5, deep sort, VIA MMAction, SlowFast_CV-杨帆的博客-CSDN博客_ava数据集训练
本文提供了 AVA V2.1 版本数据集制作脚本。
V2.2版本多了一列追踪。
觉得有用的可以顺手在github点个star,给你们比心心,哈哈哈
提供了 train/val.csv v2.1文件生成,
如果你做slowfast行为检测,还提供 annotations\person_box_67091280_iou90下文件即包含prediecred框文件的生成。
如果你使用的facebook(meta)的slowfast,本脚本完全适用。
如果你用的openmmlab平台里的sowfast,需要自行对含有score的csv文件做一个转pkl的脚本,并且删除action kind一列。
自动获取time,坐标,自动获取score。
action kind 手动在 VIA3.0 上标注。
详细信息请阅读README
train.csv V2.1
annotations\person_box_67091280_iou90 下的文件:(slowfast模型AVA训练需要)
----------------------------------------------------
具体使用如下:
step1:
1.先安装 mmcv-full,cuda版本和torch版本要与自己环境对应
pip install mmcv-full -f https://download.openmmlab.com/mmcv/dist/{cu_version}/{torch_version}/index.html
For example: pip install mmcv-full -f https://download.openmmlab.com/mmcv/dist/cu111/torch1.8.0/index.html
2. 下载检测权重,地址为:
https://download.openmmlab.com/mmdetection/v2.0/faster_rcnn/faster_rcnn_r50_fpn_2x_coco/faster_rcnn_r50_fpn_2x_coco_bbox_mAP-0.384_20200504_210434-a5d8aa15.pth
3.修改为你需要的行为标签:
在 detectron2_outvia3.py 文件代码 118行处
4.生成via3需要的json文件,例如:
python detectron2_outvia3.py E:\ava\faster_rcnn_r50_fpn_2x_coco.py
E:\ava\faster_rcnn_r50_fpn_2x_coco_bbox_mAP-0.384_20200504_210434-a5d8aa15.pth
--input E:\ava\org_img\*.jpg
--gen_via3
--output E:\ava\annotations_proposal
--score-thr 0.5
--show
生成结果:
step2:获取需要的标签文件
1.下载via3标注工具: https://www.robots.ox.ac.uk/~vgg/software/via/
2.打开 via_image_annotator.html
3.加载之前检测的图片,点击红色框
4.加载生成的json文件,点击绿色框
5.加载完后,删除不需要框,调整需要调整的框,并打标签
6.保存打好标签后的json文件,如 via3_saved_json/via_ground_truth_test.json
7. 运行 gt_json2csv.py 将标签 转化为AVA2.1格式,先自行修改里面的三处路径。代码写的很草率,有需要的自行完善一下。 如:self-made_ava_dataset_tool/ann_csv/ground_truth.csv
生成的AVA2.1格式如图,标签随便乱打的:
Step3(slowfast用):
Note: 此处你只需要删除不需要的检测框即可,无需调整框的大小。
至于这一处为避免麻烦,需不需要和step2生成的文件使用相同的,看个人选择,最后效果本人未做过实验。slowfat里使用的预检测的csv文件和标签的csv文件不是同一个。
如果你使用的Facebook/slowfast,那么你需要用到此文件。
如果你使用的openmmlab平台的slowfast 你只需要把生成后的文件的标签一列删除,并且转换成pkl文件。
1.先通过VIA3来进行删除无用的坐标框,并打个标签,生成预检测的json文件
2.先修改里面的路径,运行 predicted_json2csv.py 文件,生成预见测的csv文件。
如:self-made_ava_dataset_tool/ann_csv/predicted_ann.csv
注意,部分脚本只是随手一写,可能有不太合适的地方,自己使用的时候可以视情况修改完善。
暂时没有研究V2.2版本的,有大神可以做一下分享一下。