IDEA-Research / DINO

[ICLR 2023] Official implementation of the paper "DINO: DETR with Improved DeNoising Anchor Boxes for End-to-End Object Detection"
Apache License 2.0
2.08k stars 228 forks source link

Contrastive DeNoising Training #176

Open Whp888 opened 1 year ago

Whp888 commented 1 year ago

作者您好: 感谢您的贡献!您的这篇论文我读了好多遍,源码也成功的复现了。 但我一直对您的这篇论文的CDN这一部分的改进有一点困惑: 假设某一张特征图有两个Init Anchors(一个IOU是0.7,另一个IOU是0.5),原来的Matching会直接把这两个Anchors直接预测给一个物体,但经过CDN后,CDN会把IOU为0.7的直接归为正样本,IOU为0.5的归类为负样本(让其去预测背景),这样就完美了;但就是说根据这个策略,假如下一张输入的特征图上面没有IOU为0.7的Anchor,只有IOU为0.5的Anchor,那原来没有CDN的话,直接根据Matching的话模型还会预测一个0.5的框出来(好歹还有一个对的),但是有CDN之后,模型直接把IOU为0.5的框直接预测为负样本了(就相当于一个框都没有了)。我想问一下您我上面假设的这种情况存在吗?CDN是让后面的这种情况变得更差了还是会去怎样处理? 期待您的回复! 谢谢!

HaoZhang534 commented 1 year ago

作者您好: 感谢您的贡献!您的这篇论文我读了好多遍,源码也成功的复现了。 但我一直对您的这篇论文的CDN这一部分的改进有一点困惑: 假设某一张特征图有两个Init Anchors(一个IOU是0.7,另一个IOU是0.5),原来的Matching会直接把这两个Anchors直接预测给一个物体,但经过CDN后,CDN会把IOU为0.7的直接归为正样本,IOU为0.5的归类为负样本(让其去预测背景),这样就完美了;但就是说根据这个策略,假如下一张输入的特征图上面没有IOU为0.7的Anchor,只有IOU为0.5的Anchor,那原来没有CDN的话,直接根据Matching的话模型还会预测一个0.5的框出来(好歹还有一个对的),但是有CDN之后,模型直接把IOU为0.5的框直接预测为负样本了(就相当于一个框都没有了)。我想问一下您我上面假设的这种情况存在吗?CDN是让后面的这种情况变得更差了还是会去怎样处理? 期待您的回复! 谢谢!

你好,感谢提问,在cdn部分,总是会同时出现正负样本,所以总会有anchor被匹配到,至于你举的例子不会在matching部分发生,我认为取决于threshold的设置。“CDN是让后面的这种情况变得更差了还是会去怎样处理?”这个我们暂时没有探究过。