如何从零基础理解Mask RCNN的原理回顾?
- 内容介绍
- 文章标签
- 相关推荐
本文共计4853个文字,预计阅读时间需要20分钟。
从今天开始,我将逐步为大家介绍Mask R-CNN这个将检测和分割系统一体化框架的总体原理及详细代码解读,项目地址为官方代码库,基于Keras框架实现。如果对Keras不熟悉,也请耐心学习。
0. 前言
从今天开始,我将为大家逐步介绍Mask RCNN这个将检测和分割统一起来的框架的具体原理以及详细代码解读,项目地址为官方代码,基于Keras框架实现,如果你不会Keras也并不要紧,我会尽量将原理和代码的解释做到位。
1. 算法总览
Mask-RCNN是一个实例分割(Instance segmentation)框架,通过增加不同的分支可以完成目标分类,目标检测,语义分割,实例分割,人体姿态估计等多种任务。对于实例分割来讲,就是在Faster-RCNN的基础上(分类+回归分支)增加了一个分支用于语义分割,其抽象结构如Figure1所示:
稍微描述一下这个结构:
- 输入预处理后的原始图片。
- 将输入图片送入到特征提取网络得到特征图。
- 然后对特征图的每一个像素位置设定固定个数的ROI(也可以叫Anchor),然后将ROI区域送入RPN网络进行二分类(前景和背景)以及坐标回归,以获得精炼后的ROI区域。
- 对上个步骤中获得的ROI区域执行论文提出的ROIAlign操作,即先将原图和feature map的pixel对应起来,然后将feature map和固定的feature对应起来。
- 最后对这些ROI区域进行多类别分类,候选框回归和引入FCN生成Mask,完成分割任务。
本文共计4853个文字,预计阅读时间需要20分钟。
从今天开始,我将逐步为大家介绍Mask R-CNN这个将检测和分割系统一体化框架的总体原理及详细代码解读,项目地址为官方代码库,基于Keras框架实现。如果对Keras不熟悉,也请耐心学习。
0. 前言
从今天开始,我将为大家逐步介绍Mask RCNN这个将检测和分割统一起来的框架的具体原理以及详细代码解读,项目地址为官方代码,基于Keras框架实现,如果你不会Keras也并不要紧,我会尽量将原理和代码的解释做到位。
1. 算法总览
Mask-RCNN是一个实例分割(Instance segmentation)框架,通过增加不同的分支可以完成目标分类,目标检测,语义分割,实例分割,人体姿态估计等多种任务。对于实例分割来讲,就是在Faster-RCNN的基础上(分类+回归分支)增加了一个分支用于语义分割,其抽象结构如Figure1所示:
稍微描述一下这个结构:
- 输入预处理后的原始图片。
- 将输入图片送入到特征提取网络得到特征图。
- 然后对特征图的每一个像素位置设定固定个数的ROI(也可以叫Anchor),然后将ROI区域送入RPN网络进行二分类(前景和背景)以及坐标回归,以获得精炼后的ROI区域。
- 对上个步骤中获得的ROI区域执行论文提出的ROIAlign操作,即先将原图和feature map的pixel对应起来,然后将feature map和固定的feature对应起来。
- 最后对这些ROI区域进行多类别分类,候选框回归和引入FCN生成Mask,完成分割任务。

