新闻详情

新闻详情

首页 / 资讯中心 / 详情

第293篇 实例分割Mask R-CNN——不仅要分类,还要抠出来

发布时间:2026/8/30 15:09:18来源:尧图网络
第293篇 实例分割Mask R-CNN——不仅要分类,还要抠出来
语义分割聊完了这篇讲实例分割。语义分割给每个像素一个类别但不区分同类别的不同个体——两个人都是人这个类别。实例分割不仅区分个体还要把每个个体的轮廓精确地分割出来。机器人抓取场景里实例分割非常关键。你要抓桌上的苹果不仅要检测苹果在哪里还要知道苹果的精确轮廓才能规划合适的抓取姿态。语义分割做不到区分个体实例分割可以。Mask R-CNN是实例分割的里程碑工作2017年由何恺明等人提出发表在ICCV 2017上并获得最佳论文奖。面试中实例分割几乎必问Mask R-CNN——架构怎么设计的、mask分支怎么加的、RoI Align解决了什么问题。一、从语义分割到实例分割语义分割和实例分割的区别语义分割把所有人的像素标为同一类。实例分割要把第一个人和第二个人分开——每个人有独立的mask。实现实例分割的思路有几种先检测后分割Mask R-CNN、先分组后分割基于embedding的方法、端到端预测SOLOv2。Mask R-CNN是目前最成熟、用得最多的方案。二、Mask R-CNN架构Mask R-CNN在Faster R-CNN的基础上加了一个mask预测分支。整体架构分三步。Backbone FPN用ResNetFPN提取多尺度特征。FPN生成5个尺度的特征图P2-P6不同大小的目标在不同尺度的特征图上检测。RPN区域提议网络在FPN特征图上生成候选区域proposals。RPN在每个位置预测多个anchor的前景/背景分数和框偏移。筛选出高分的proposals作为后续处理的输入。# Mask R-CNN架构概要 class MaskRCNN(nn.Module): def __init__(self): self.backbone ResNet50_FPN() self.rpn RegionProposalNetwork() self.roi_head RoIHead( cls_headnn.Linear(256, num_classes), bbox_headnn.Linear(256, 4), mask_headMaskBranch(num_classes) # 新增的mask分支 )RoI Head对每个proposal做分类、框回归和mask预测。分类和框回归跟Faster R-CNN一样。新增的mask分支是一个小型的FCN——对每个RoI预测一个K通道K类别数的mask每个通道对应一个类别的二值mask。mask分支的结构4个3x3卷积256通道 1个2x2转置卷积上采样2倍 1个1x1卷积输出K通道。输入是RoI Align后的14x14特征图输出是28x28xK的mask。28x28的分辨率看起来不高但对于大多数物体已经够用了。如果需要更精细的mask可以用Mask Scoring R-CNN等改进方案。每个RoI只预测对应类别的mask其他类别的mask不关心。训练时mask loss只对正确的类别计算——这样不同类别的mask预测不会互相干扰。三、RoI Align关键创新Mask R-CNN最核心的技术贡献是RoI Align。Faster R-CNN用的是RoI Pooling——把每个proposal映射到特征图上然后划分成固定大小的网格每个网格取最大值。问题是映射过程中有量化取整导致mask的位置偏差几个像素。对分类影响不大但对像素级的mask预测影响很大。RoI Align去掉了量化——用双线性插值代替取整。映射后的浮点坐标不取整而是用周围4个像素的加权平均值。这样mask的位置精度大幅提升。# RoI Align的核心思想 # 不用int(floor(x))取整而是用双线性插值 def bilinear_interpolate(feature_map, x, y): x0, y0 floor(x), floor(y) x1, y1 x0 1, y0 1 # 四个角的加权平均 val (feature_map[y0,x0] * (x1-x) * (y1-y) feature_map[y0,x1] * (x-x0) * (y1-y) feature_map[y1,x0] * (x1-x) * (y-y0) feature_map[y1,x1] * (x-x0) * (y-y0)) return valRoI Align看起来是个小改动但对mask精度的提升非常大。论文里的消融实验显示RoI Pooling换RoI Alignmask AP提升了2.5个点。四、训练与推理训练时每个RoI和GT的匹配用IoU阈值。IoU0.5的是正样本。正样本同时训练分类、框回归和mask三个损失。mask损失用sigmoidBCE每个像素独立做二分类不像分类用softmax因为一个mask里可能有多个类别的像素。三个损失的权重分类loss权重1框回归loss权重1mask loss权重1。mask loss是对28x28的mask做平均所以实际梯度比另外两个小。有人发现把mask loss权重提高到2效果更好。数据增强方面除了常规的水平翻转和颜色抖动实例分割还需要对mask做相应的变换。翻转图像的同时也要翻转mask。缩放图像的同时也要缩放mask。Mosaic增强也适用于实例分割训练。推理流程RPN生成proposals → RoI Head对每个proposal做分类和框回归 → 用NMS筛选最终检测结果 → 对每个检测框生成mask → mask阈值化通常0.5得到最终分割结果。Mask R-CNN的推理速度不快——每张图大约200-400ms取决于backbone和proposal数量。实时场景需要用更轻量的backbone或者用YOLO分割的方案。五、后续发展与替代方案Mask R-CNN之后实例分割领域还有不少重要工作。SOLOv2不用proposal直接预测。把图像分成网格每个网格负责预测中心点落在其中的物体的mask。速度比Mask R-CNN快很多接近实时。YOLACT实时实例分割。把mask预测分解为两步——先预测一组原型maskprototype masks再预测每个实例的mask系数mask coefficients两者线性组合得到最终mask。在Titan Xp上达到30fps以上。YOLOv8-SegYOLOv8的分割版本。在YOLOv8检测头的基础上加了mask分支。继承了YOLO的速度优势同时支持实例分割。工业界用得越来越多。六、面试高频追问QMask R-CNN的mask分支为什么用K个通道而不是1个AK个通道每个对应一个类别。预测时先知道类别分类头输出再用对应类别的通道作为mask。这样每个类别有独立的mask预测器不同类别的mask不会互相干扰。如果用1个通道不同类别的mask会混在一起。Q实例分割和全景分割有什么区别A全景分割实例分割语义分割。东西类stuff如天空、地面用语义分割个体类thing如人、车用实例分割。两者合在一起就是全景分割。Panoptic FPN是代表性工作。QMask R-CNN在机器人抓取中怎么应用A用Mask R-CNN分割出每个物体的精确轮廓然后结合深度信息得到物体的3D形状。有了物体的分割mask和3D信息就可以计算抓取点、规划抓取姿态。这是机器人抓取pipeline中的感知环节。Mask R-CNN是实例分割的经典方案。架构设计、RoI Align创新、训练推理流程、后续发展方案、机器人应用这五个方面理解了实例分割的核心知识就掌握了。实例分割在机器人抓取中应用广泛值得深入学习。下一篇我们聊6D位姿估计。实例分割Mask R-CNN是机器人视觉感知的重要技术。从语义分割到实例分割、Mask R-CNN架构设计、RoI Align核心创新、训练推理与后续发展这四个维度全面覆盖了实例分割的核心内容。上一篇第292篇 语义分割FCN/DeepLab下一篇聊6D位姿估计。如果这篇文章对你有帮助欢迎点赞支持一下你的鼓励是我持续更新的动力
网站建设高端定制企业官网
RELATED

相关资讯

更多精彩内容,欢迎继续阅读

较早相关资讯

最新相关资讯

超低电压TVS二极管在高速接口ESD保护中的选型与设计要点 2026/8/30 23:42:33

超低电压TVS二极管在高速接口ESD保护中的选型与设计要点

TDK这一波更新超低电压TVS二极管产品线,圈内做高速接口的硬件工程师应该都能get到点在哪里。USB4、Thunderbolt、HDMI 2.1这些接口速率越跑越快,工作电压却越压越低,传统的ESD保护器件反而成了信号链路上的瓶颈——容值太大把高速信号搞失真&…

阅读更多 →
算法(二叉树的遍历) 2026/8/30 23:42:33

算法(二叉树的遍历)

༺ 个人主页 纪念229 ༻ 🏠我的博客主页🏠 ༒专栏目录:《数据结构》༒ ༒专栏目录:《算法》༒ ༒专栏目录:《MySQL数据库》༒ ༒专栏目录:《前端开发》༒ ༒其它有趣的计算机知识༒ ༺世上本没有路…

阅读更多 →
Muon优化器在Stiefel流形上的闭式更新:极分解与SVD的精确解法 2026/8/30 23:42:33

Muon优化器在Stiefel流形上的闭式更新:极分解与SVD的精确解法

这次我们来看一个优化算法层面的结论:Muon 优化器在 Stiefel 流形上的更新存在精确的闭式解,不再需要依赖 Newton-Schulz 迭代去近似。如果你关心大模型训练、正交权重约束,或者想弄懂优化器底层到底在算什么,这个结论值得认真拆一…

阅读更多 →
2026企业AI办公平台选型指南:从需求匹配到工具落地 2026/8/30 23:42:33

2026企业AI办公平台选型指南:从需求匹配到工具落地

企业在引入AI办公工具的过程中,很多采购决策容易被产品宣传页裹挟。采购人员浏览各家产品的功能清单,对比按钮数量、对话模式、模板库丰富度,或是单纯参考市场热度、报价高低来完成筛选,最终上线之后才发现工具很难融入现有业务流…

阅读更多 →
2026 企业AI自动化指南:哪些重复性工作最适合交给AI 2026/8/30 23:42:32

2026 企业AI自动化指南:哪些重复性工作最适合交给AI

企业推AI自动化,为什么容易从””全公司铺开””变成””没人用””很多企业在推AI自动化时,常见的误区是列一个长长的任务清单,觉得””只要是重复的都能自动化””,然后一口气铺开。结果往往是:有些任务AI做得又快又…

阅读更多 →
AI热潮重塑产业链,开发者如何重构工作流与算力选型 2026/8/30 23:37:32

AI热潮重塑产业链,开发者如何重构工作流与算力选型

在海外财经媒体上,一个关于出口排名的观察引起了不少讨论:在 AI 热潮推动下,韩国和中国台湾地区的出口表现首次超过了日本。很多人看到的第一反应是,这又是一轮地缘经济洗牌。但作为技术从业者,我更愿意把它看作一个产…

阅读更多 →

今日资讯

本周资讯

本月资讯

看完文章仍有疑问?

联系尧图顾问,获取一对一建站咨询

立即免费咨询 📞 400-888-8888
📞