当前位置: 首页 > 后端技术 > Python

FasterRCNNTargetDetectionFastRCNNDetector

时间:2023-03-25 20:05:43 Python

上一篇介绍了rpn的结构和具体实现。今天介绍fasterrcnn中的另一个子网,fastrcnn检测网络。网络结构如下图所示,检测网络的具体结构如下图所示。首先,backbone输出的featuremap和rpn网络输出的roi同时进入roipooling层,将每个roi对应的featuremap区域池化成统一大小(7*7)。然后池化的结果进入分类器(VGG网络分类器中的前两个全连接层),最后进入两个不同的全连接层。上面的全连接层输出每个roi的类别概率/得分,下面的全连接层输出每个ROI的坐标偏移量。实现细节fastrcnn的结构比较简单易懂,代码实现也不复杂。这里主要讲解一下ROIPooling是如何实现的。下图演示了ROIPooling的过程。具体过程如下:1.首先获取featuremap上每个roi对应的region,roi_region=np.round(roi*spatial_scale)。2.然后将得到的区域划分成out_h*out_w的格子,每个格子的大小为h//out_h,w//out_w。3.最后,对每个网格进行maxpooling。在下一节中,我将重点介绍Fasterrcnn中的Loss。