在CNN网络中roi从原图映射到feature map中的计算方法

在使用fast rcnn以及faster rcnn做检测任务的时候,涉及到从图像的roi区域到feature map中roi的映射,然后再进行roi_pooling之类的操作。
比如图像的大小是(600,800),在经过一系列的卷积以及pooling操作之后在某一个层中得到的feature map大小是(38,50),那么在原图中roi是(30,40,200,400),
在feature map中对应的roi区域应该是
roi_start_w = round(30 * spatial_scale);
roi_start_h = round(40 * spatial_scale);
roi_end_w = round(200 * spatial_scale);
roi_end_h = round(400 * spatial_scale);
其中spatial_scale的计算方式是spatial_scale=round(38/600)=round(50/800)=0.0625,所以在feature map中的roi区域[roi_start_w,roi_start_h,roi_end_w,roi_end_h]=[2,3,13,25];
具体的代码可以参见caffe中roi_pooling_layer.cpp

0 个评论

要回复文章请先登录注册