DirtyHarryLYL / Transferable-Interactiveness-Network

Code for Transferable Interactiveness Knowledge for Human-Object Interaction Detection. (CVPR'19, TPAMI'21)
MIT License
227 stars 41 forks source link

For vcoco evaluation #41

Closed Pursue26 closed 4 years ago

Pursue26 commented 4 years ago

Hello, thank you for your open source code. For vcoco evaluation, when the IOU of detected human and object's boxes and GT of human and object are more than 0.5, and the action prediction is correct, the sample is positive. I want to know what the action prediction is correct ?

In project/lib/networks/TIN_VCOCO.py, self.predictions["cls_prob_HO_final"] = cls_prob_sp * (cls_prob_O + cls_prob_H) The scoring method for the final action is: action_score = self.predictions["cls_prob_HO_final"] LIS function(H_det_score) LIS function(O_det_score), (ps: Is my understanding correct ?) and What is the value range of the action_score ?

[ {'image_id': # the coco image id, 'person_box': #[x1, y1, x2, y2] the box prediction for the person, '[action]agent': # the score for action corresponding to the person prediction, '[action][role]': # [x1, y1, x2, y2, s], the predicted box for role and

associated score for the action-role pair.

} ] [x1, y1, x2, y2, s] Is s the action_score above ? In the VCOCO evaluation code, when the score of an actionscore (s in '[action][role]') is higher than how much, it is considered to have the action ? Thank you

Foruck commented 4 years ago

Q1: What the action prediction is correct?

A1: You could check the definition and the detailed calculation procedure of mean Average Precision (mAP). The acception threshold is not explicitly defined in the calculation procedure, instead, multiple implicit acception thresholds are considered for the calculation of mAP.

Q2: Is my understanding correct?

A2: Yes.

Q3: What is the value range of the action_score?

A3: Intuitively, cls_prob_sp, cls_prob_H, cls_prob_O, H_det_score, H_det_score ∈ [0, 1]. Suppose the value domain of LIS_function for [0, 1] is [a, b], then action_score ∈ [0, 2b^2].

Q4: [x1, y1, x2, y2, s] Is s the action_score above?

A4: Yes.

Q5: In the VCOCO evaluation code, when the score of an actionscore (s in '[action][role]') is higher than how much, it is considered to have the action?

A5: Similar to Q1, you could go into the details about how to calculate mean Average Precision (mAP).