拓冰建站拓冰建站
首页 / 资讯中心 / 正文

130、实例分割与全景分割:Mask R-CNN与全景分割实战

130、实例分割与全景分割:Mask R-CNN与全景分割实战调了一整天的分割模型,最后发现是数据集的JSON标注里某个类别ID从1开始而模型从0开始,这种错位问题在实例分割里太常见了。今天这篇笔记,我想从自己踩过的坑出发,把Mask R-CNN和全景分割的实战细节捋一遍。先说说为什么突然要写这个。最近在做一个仓储机器人的抓取项目,机械臂要从一堆混杂的纸箱、泡沫、胶带卷里精准抓取目标物体。之前用目标检测,bounding box框出来一堆重叠区域,机械臂不知道该抓哪里。后来换成实例分割,每个物体有了像素级的mask,抓取点直接取mask质心,效果立竿见影。但紧接着又遇到新问题——背景里的传送带、货架、地面这些"stuff"类别没法用实例分割处理,它们没有独立实例的概念。这时候全景分割就派上用场了,它把things(可数物体)和stuff(不可数背景)统一建模,输出一个每个像素都有语义标签且区分实例的完整场景解析。从检测到分割:Mask R-CNN到底改了什么Mask R-CNN是Faster R-CNN的直系后代,核心改动就三处。第一处,ROI Pooling换成了ROI Align。这个改动看似微小,实际影响巨大。ROI Pooling做两次量化,第一次把候选框坐标取整,第二次把特征图划分成固定格子时又取整,两次取整叠加导致像素级定位偏差。对于检测任务,几个像素的偏移无所谓,但分割任务要求像素级精确,偏差直接导致mask边缘锯齿状。ROI Align用双线性插值替代取整,每个格子采样四个点做插值,梯度可以回传,mask质量立刻提升。这里踩过坑——如果你用PyTorch的tor
分享:

看完干货,该让你的企业上线了

免费需求沟通 · 48 小时内出具建站方案 · 河南本地可上门