yolodet-pytorch icon indicating copy to clipboard operation
yolodet-pytorch copied to clipboard

关于iou-aware分支在inference时的问题

Open hnzjuer opened this issue 4 years ago • 2 comments

你好,我想问下在ppyolo中添加的iou-aware分支,在inference时,原论文中的iou confidence是通过α=0.4次方的形式与class的confidence的0.6次方相乘,得到inference时的confidence。 但是在代码中,yolodet/models/heads/ppyolo.py中的get_eval_bboxes函数: new_obj = torch.pow(obj, (1 - self.iou_aware_factor)) * torch.pow(ioua, self.iou_aware_factor) 实现论文的new_obj以后还进行了-log(1/new_obj-1)的操作。 我这边实现了iou-aware后假设原new_obj为0.9,但是经过-log(1/new_obj-1)后续操作得到的confidence数值是2.19,造成了识别的confidence的范围不在0到1以内。 想请教下为什么代码中这样实现,还是说在其他地方有将其重新约束到(0,1)的操作?

hnzjuer avatar Dec 11 '20 05:12 hnzjuer

该部分代码主要多的参考百度paddlepaddle对于ppyolo的论文浮现。在loss方法中有对值的约束。注:paddlepaddle对ppyolo的浮现,在网络结构上与原论文有所不同

wuzhihao7788 avatar Jan 13 '21 02:01 wuzhihao7788

I have the similar problem. When I enabled the α=0.4, it seems the output AP would be hurt severely. Do you have any idea how to fix this?

wenchima avatar Dec 01 '21 17:12 wenchima