理解Mask R-CNN
前言
为了综合复习 Mask R-CNN 写一个博客
简言之:物体检测+产生一个切割mask(识别)
和FasterR−CNN区别:能生成一个检测框
一、简介
基础点
名词解释
物体检测:Fast/Faster R−CNN
通常包含两个问题,一是判断属于某个特定类的物体是否出现在图中;二是对该物体进行定位(常用表征就是物体的边界框)可实现输入测试图片,输出检测到的物体类别和位置。
语义分割 Fully Convolutional Network (FCN)
简单而言就是给定一张图片,对图片上的每一个像素点分类
实例分割
物体检测和语义分割的综合体。相对物体检测的边界框,实例分割可精确到物体的边缘;相对语义分割,实例分割可以标注出图上同一物体的不同个体
简单复习
Mask R-CNN沿用了Faster R-CNN的思想,特征提取采用ResNet-FPN的架构(多尺度,详见博客),其次,Mask R-CNN将Faster R-CNN的RoI Pooling改为了RoI Align,另外多加了一个Mask预测分支。综上,Mask R-CNN一共有以下三点改进:
-
新加了一个mask分支;
-
用ResNet-FPN做backbone,有利于多尺度物体的检测和分割;
-
RoI Pooling -> RoI Align;
-
损失函数
Lcls 和 Lbox 与faster rcnn的定义没有区别。需要具体说明的是Lmask
Faster R-cnn 损失函数
可见Mask RCNN综合了很多此前优秀的研究成果,并且其在工业界中也被广泛使用,效果很好。
注:要了解Mask R-CNN,需要以下知识:(后面给出了参考文章链接,在此不再赘述。)
在熟悉以上基础之后,我们就会发现:Mask R-CNN == ResNet-FPN + Faster R-CNN + Mask。
推荐阅读大佬文章令人拍案称奇的Mask RCNN
给了一个全面的入门讲解。