microsoft / RepPoints

Represent Visual Objects by Point Sets
MIT License
587 stars 75 forks source link

Question on the details #29

Open zhongyingji opened 4 years ago

zhongyingji commented 4 years ago

Hi, it is quite a nice implementation, I've read it and I got stuck in some points.

  1. In reppoints_head.py, what is the usage of adding the "dcn_base_offset" at line 278, does it play a row of enlarging the offset range?
  2. In the same file, i'm not sure if I am correct, I think the "pts_coordinate_preds_init" at line 424 after being applied the min_max is identical to "box_list" at line 466, except for the order. They both represent the bbox of the init points, why is it necessary to calculate the "box_list" again?

Thank you so much!

sandylaker commented 4 years ago

Hi, it is quite a nice implementation, I've read it and I got stuck in some points.

  1. In reppoints_head.py, what is the usage of adding the "dcn_base_offset" at line 278, does it play a row of enlarging the offset range?
  2. In the same file, i'm not sure if I am correct, I think the "pts_coordinate_preds_init" at line 424 after being applied the min_max is identical to "box_list" at line 466, except for the order. They both represent the bbox of the init points, why is it necessary to calculate the "box_list" again?

Thank you so much!

In my opinion, dcn_base_offset corresponds to $p_n$ in equation (2) in Deformable Convolutional Networks. In fact, $p_n$ are the regular sampled locations in conventional Conv2d. dcn_offset = pts_out_init_grad_mul - dcn_base_offset computes the offsets $\Nabla p_n$.