Centripetal即向心的,和cornernet,Centernet(keypoints) 不同,CentripetalNet在角点预测的基础上,还预测了角点对中心的shift,这将极大地帮助CentripetalNet进行角点grouping (or matching) ,从而提高准确率。
取feature map上x和y方向上的max value,分别生成新的feature maps,把两个方向的feature map相加,得到corner pooling结果。需要注意的是,这里取的不是一整行的max,而是取固定方向的max,比如topleft点的预测,取的就是往右看和往下看的max,rightbottom的预测,就是取往左看和往上看的max。
怎么实现呢?看了源码,就是用c++实现,然后python调用,但是,这本质一维pooling?不是。
定义$R_{central}$ 为bbox真值中心点附近,大小为$bbox*u$的区域,corner+Centripetal落在这个区域,则匹配上.