xiuqhou / Relation-DETR

[ECCV2024 Oral] Official implementation of the paper "Relation DETR: Exploring Explicit Position Relation Prior for Object Detection"
Apache License 2.0
130 stars 11 forks source link

VOD adjustment #4

Open Cuviews opened 3 months ago

Cuviews commented 3 months ago

Question

您好,我想基于relation detr做一些视频的任务,对你的框架上做了一些更改,数据加载更换成了cocoVID,帧作为bs,target只读1帧,目前模型方面使用encoder对多帧建模,decoder还是单帧,训练loss下降正常,测试都正常,可是ap全为0,可能某些关键的接口可能不太适配?请问有哪些需要注意的地方吗,非常感谢!!

补充信息

No response

Cuviews commented 3 months ago

image

xiuqhou commented 3 months ago

Hi,很高兴您打算将RelationDETR扩展到视频领域。我对视频检测/跟踪的任务并不是很了解,下面是一些我觉得可能存在问题的地方和调试建议,仅供参考。

  1. 建议先不要一次性做太多改动,先保持RelationDETR结构不变,只输入1帧视频和1帧target,这样相当于batch_size=1的图片检测任务。如果这都训不出来,估计是输入格式有问题。
  2. 训练时我们要求的bounding_box格式是[x1, y1, x2, y2],图片需要已经完成归一化;推理时图片不能进行resize,必须是原图大小送进去,不需要进行归一化和数据增强。建议可以先用COCO数据集调试,看一下输入格式和修改后的cocoVID输入格式是否一致。
  3. 我们用的pycocotools包来评测模型的性能,不知道能不能用来评测视频任务。你可以先把模型的输入输出保存下来,可视化看一看是否正常,也许是输出正常但评测有问题。
  4. 也许AP=0是因为视频任务比较难训练,你可以加载我们的预训练模型做微调,看看对AP有提升没。
Cuviews commented 3 months ago

您好,我发现您把nestedtensor包括别的预处理拆分了,eval的transform放在模型的最开始,这样做是为什么,非常感谢!!

xiuqhou commented 3 months ago

Hi,很高兴你对这部分有疑问,我们确实是经过考虑后才选择不用nestedtensor,以及选择将eval_transform集成到模型。