FCN、ReSeg、U-Net、ParseNet、DeepMask…你都掌握了吗?一文总结图像分割必备经典模型(一)(3)

本文涉及的产品
视觉智能开放平台,视频资源包5000点
视觉智能开放平台,分割抠图1万点
视觉智能开放平台,图像资源包5000点
简介: FCN、ReSeg、U-Net、ParseNet、DeepMask…你都掌握了吗?一文总结图像分割必备经典模型(一)

6、 SegNet


用于语义分割的网络通常是将用于分类的网络进行全卷积化而来的,这带来了空间分辨率下降(网络存在降采样)的问题,从而生成较为粗糙的分割结果。此外,还需要将低分辨率的结果上采样到原图大小,这个还原的过程即解码过程。大部分的用于分割的网络都有相同或相似的encoder network,之所以会产生不同精度的分割结果,关键在于decoder network的不同。作者分析一些网络的解码过程,提出了SegNet。SegNet的encoder network为VGG16(移除了全连接层),在decoder network里依靠encoder network的max pooling层所产生的最大值位置索引对输入进行upsample(无需学习),得到稀疏的feature maps,然后对稀疏的feature maps进行卷积致密。每个decoder对应一个encoder。最后接一个softmax分类器。


图7 SegNet结构图示。没有全连接层。解码器使用编码器传输的池化指数对其输入进行上采样,以产生一个或多个稀疏的特征图。然后,它与一个可训练的滤波器组进行卷积,使特征图密集化。最终的解码器输出的特征图送入一个softmax分类器进行像素级分类


图7是SegNet的网络结构,其中蓝色代表卷积+Batch Normalization+ReLU,绿色代表max-pooling,红色代表上采样,黄色是Softmax。SegNet与FCN的对应结构相比体量要小很多,这主要得益于SegNet中为了权衡计算量而采取的操作:用记录的池化过程的位置信息替代直接的反卷积操作。具体如图8所示。图8中左侧是SegNet使用的解码方式,右侧是FCN对应的解码方式。可以看到,SegNet的做法是先根据位置信息生成稀疏的特征图,再利用后续的卷积计算恢复密集特征图。而FCN则直接利用反卷积操作求得上采样后的特征图,再将其与编码器特征图相加。


图8 SegNet和FCN解码器说明。a、b、c、d对应于特征图中的数值。SegNet使用最大集合指数对特征图进行上采样(无需学习),并与可训练的解码器滤波器组进行融合。FCN通过学习对输入的特征图进行上采样,并添加相应的编码器特征图以产生解码器输出。这个特征图是相应编码器的max-pooling层(包括子采样)的输出



当前SOTA!平台收录SegNet共6个模型实现。



项目 SOTA!平台项目详情页
SegNet 前往 SOTA!模型平台获取实现资源:https://sota.jiqizhixin.com/project/segnet



7、 Instance-Aware Segmentation


本文的出发点是做Instance-aware Semantic Segmentation,具体的,作者将其分为三个子任务来做:1) Differentiating instances 实例区分;2) Estimating masks 掩码估计;3) Categorizing objects分类目标。通过这种分解,作者提出了如下的多任务学习框架,即:Multi-task Network Cascades (MNCs),示意流程如图9。


图9 用于实例感知的语义分割的多任务网络级联。右上角是一个简化的图示


Regressing Box-level Instances
第一阶段,回归出object的bbox(bounding box),这一阶段的网络结构和loss都参照Region Proposal Networks (RPNs),RPNs通过全卷积网络预测object的bbox和置信度,在feature map后紧跟两个1x1卷积用于回归bbox以及判定是否为前景。具体损失函数如下:




B是这个阶段的网络输出,代表一系列的bbox :



Regressing Mask-level Instances
第二阶段,将共享的features和第一阶段的bbox作为输入,为每个bbox输出像素级的mask。通过RoI pooling将每个bbox的特征提取成14x14的固定大小特征,再加两个全连接层,第一个全连接层将维度减小到256层,第二个全连接层回归出像素级的mask,其结果由一个m x m的二维向量表示。损失函数如下:




该阶段的输出M代表该阶段的网络输出,表示一系列mask,M={M_i},M_i是用sigmoid回归到[0,1]的m^2 维的逻辑回归输出。

Categorizing Instances
第三阶段,将共享的features和第一阶段的bbox、第二阶段的mask作为输入,为每个实例输出类别置信度。第一阶段给定预选框并用RoI pooling提取feature,第二阶段预测实例的mask,导致feature专注于预测mask的前景,像素级masked feature 计算公式如下:



M_i为本阶段输出的Mask。将mask-based和box-based的pathway连接之后用softmax对N个object类别和1个背景类进行分类。损失函数如下:




整个模型的级联的损失函数为:




最后,作者将级联模型扩展到MNC更多阶段。增加了一个4(N+1)-d fc层,用于回归class-wise bounding boxes,它与分类器层是同级关系。在推理过程中,首先运行完整3阶段的网络,并在第3阶段获得回归的box。然后,这些boxes被视为新的建议。第2和第3阶段在这些建议上第二次执行。这实际上包括了5个阶段的推理。五阶段过程如图10所示。第4和第5阶段与第2和第3阶段的结构相同,只是它们使用第3阶段的bounding box作为新的建议。



图10 5阶段的级联。在第三阶段,由box回归层更新的bounding box被用作第四阶段的输入


当前SOTA!平台收录Instance-Aware Segmentation共1个模型实现。



项目 SOTA!平台项目详情页
Instance-Aware Segmentation 前往 SOTA!模型平台获取实现资源:https://sota.jiqizhixin.com/project/instance-aware-segmentation


前往 SOTA!模型资源站(sota.jiqizhixin.com)即可获取本文中包含的模型实现代码、预训练模型及API等资源。

网页端访问:在浏览器地址栏输入新版站点地址 sota.jiqizhixin.com ,即可前往「SOTA!模型」平台,查看关注的模型是否有新资源收录。

移动端访问:在微信移动端中搜索服务号名称「机器之心SOTA模型」或 ID 「sotaai」,关注 SOTA!模型服务号,即可通过服务号底部菜单栏使用平台功能,更有最新AI技术、开发资源及社区动态定期推送。

相关文章
|
4月前
|
人工智能 文字识别
通义语音AI技术问题之LCB-net模型对幻灯片中文本信息的使用如何解决
通义语音AI技术问题之LCB-net模型对幻灯片中文本信息的使用如何解决
23 0
|
6月前
|
机器学习/深度学习 JSON 测试技术
CNN依旧能战:nnU-Net团队新研究揭示医学图像分割的验证误区,设定先进的验证标准与基线模型
在3D医学图像分割领域,尽管出现了多种新架构和方法,但大多未能超越2018年nnU-Net基准。研究发现,许多新方法的优越性未经严格验证,揭示了验证方法的不严谨性。作者通过系统基准测试评估了CNN、Transformer和Mamba等方法,强调了配置和硬件资源的重要性,并更新了nnU-Net基线以适应不同条件。论文呼吁加强科学验证,以确保真实性能提升。通过nnU-Net的变体和新方法的比较,显示经典CNN方法在某些情况下仍优于理论上的先进方法。研究提供了新的标准化基线模型,以促进更严谨的性能评估。
172 0
|
6月前
|
开发框架 .NET 对象存储
【.NET Core】深入理解异步编程模型(APM)
【.NET Core】深入理解异步编程模型(APM)
127 1
|
6月前
|
SQL 开发框架 .NET
(20)ASP.NET Core EF创建模型(必需属性和可选属性、最大长度、并发标记、阴影属性)
(20)ASP.NET Core EF创建模型(必需属性和可选属性、最大长度、并发标记、阴影属性)
|
7月前
|
机器学习/深度学习 存储 算法
r语言中对LASSO回归,Ridge岭回归和弹性网络Elastic Net模型实现(下)
r语言中对LASSO回归,Ridge岭回归和弹性网络Elastic Net模型实现
|
7月前
|
机器学习/深度学习 算法 数据可视化
MATLAB基于深度学习U-net神经网络模型的能谱CT的基物质分解技术研究
MATLAB基于深度学习U-net神经网络模型的能谱CT的基物质分解技术研究
|
7月前
|
机器学习/深度学习 并行计算 算法
r语言中对LASSO回归,Ridge岭回归和弹性网络Elastic Net模型实现(上)
r语言中对LASSO回归,Ridge岭回归和弹性网络Elastic Net模型实现
|
3月前
|
开发框架 前端开发 JavaScript
ASP.NET MVC 教程
ASP.NET 是一个使用 HTML、CSS、JavaScript 和服务器脚本创建网页和网站的开发框架。
45 7
|
3月前
|
存储 开发框架 前端开发
ASP.NET MVC 迅速集成 SignalR
ASP.NET MVC 迅速集成 SignalR
72 0
|
4月前
|
开发框架 前端开发 .NET
ASP.NET MVC WebApi 接口返回 JOSN 日期格式化 date format
ASP.NET MVC WebApi 接口返回 JOSN 日期格式化 date format
53 0

热门文章

最新文章