文章里其实也没有讲得很细,具体的很多东西还是得看源码。讲的不对的地方还请大佬指正。
原文: RRPN: RADAR REGION PROPOSAL NETWORK FOR OBJECT DETECTION IN AUTONOMOUS VEHICLES
, 2019
作者: The University of Tennessee Knoxville, Ramin Nabati, Hairong Qi
发表于: IEEE International Conference on Image Processing
论文传送门: https://arxiv.org/abs/1905.00526
代码传送门: https://github.com/mrnabati/RRPN
文章讲了啥
设计了一个camera-radar fusion的网络:Radar Region Proposal Network (RRPN) 。这个网络适用于two-stage object detector,是用radar点改进过的RPN网络(不知道RPN的小伙伴可以看一下Faster R-CNN),主要改进方法是把雷达的数据投影到图像平面上,通过这些投影来建立proposals。这个模型能让检测更快,而且有更高的precision和recall。
具体方法
我没有实际用过radar,但是据说radar得到点几乎都是在一个2D平面上的。RRPN的具体操作是这样的:
-
首先把雷达检测到的点(文中叫POI,points of interest)变换到相机坐标系。具体转换公式是:
式中:
3 D p o i n t : P = [ X ; Y ; Z ; 1 ] 2 D p o i n t i n i m a g e : p = [ x ; y ; 1 ] T r a n s f o r m a t i o n m a t r i x : H , d e c i d e d b y t h e c a l i b r a t i o n p a r a m e t e r s . 3D \ point: P=\left[ \begin{matrix} X;Y;Z;1 \end{matrix} \right]\\ 2D \ point \ in \ image: p=\left[ \begin{matrix} x;y;1 \end{matrix} \right]\\ Transformation \ matrix:H,decided \ by \ the \ calibration \ parameters. 3D point:P=[X;Y;Z;1]2D point in image:p=[x;y;1]Transformation matrix:H,decided by the calibration parameters. -
把POI作为中心,画不同大小和长宽比的anchors,文中画了7个anchors。因为有的点可能在图像边缘,文中设计了四种anchors:
-
根据各个POI包含的距离信息来更新anchors的大小。具体公式是:
- Learn the parameters α & β to adjust the scale factor
式中:
代表第i
张图中的第j
个ground truth bounding box,第k
个anchors。 - 根据α和β来更新anchors的大小
S i = α 1 d i + β d i : d i s t a n c e t o t h e o b j e c t i S_i=α\frac{1}{d_i}+β\\ d_i:distance \ to \ the \ object\ i\\ Si=αdi1+βdi:distance to the object i
总结
就是根据雷达投影的点来改进proposals的生成,从而提高two-stage的detector的表现。
其实第二步和第三步具体怎么具体操作,我还不是很明白,得看看源码才知道。源码地址:作者放github的源码