利用边缘监督信息加速Mask R-CNN实例分割训练

2023-10-27

(欢迎关注“我爱计算机视觉”公众号,一个有价值有深度的公众号~)
今天跟大家分享一篇有意思的arXiv上新出的论文,作者来自德国宝马汽车公司(BMW Car IT GmbH,Germany)的两位实习生。

Mask R-CNN是实例分割的经典模型,作者通过在Mask R-CNN框架上附加一个新任务,达到更快的网络收敛速度。
该文对MaskR-CNN添加了一个新的预测任务,称为Edge Agreement Head(也许可以翻译为“边缘协定预测端”?),它的灵感来自人工实例标注的方式。当人们对实例进行像素级标注的时候,仅仅会关注实例的边缘部分,而实例内部则只需要简单的复制边缘的标注信息就可以了。所以实例的mask边缘非常有用,它们很好地表征了实例。Edge Agreement Head的作用即鼓励深度网络训练时预测的实例mask边缘与groundtruth的边缘相似。

算法思想

作者通过观察Mask R-CNN训练前期输出的预测图像,发现很多时候边缘都不在点上,很显然,神经网络在走弯路。
请看下面的例子:

这是Mask R-CNN深度网络训练前期的一些预测的Mask,发现它并没有像人类一样先把边缘找出来,甚至缺失的很离谱(你可以预测的不很精细准确,但至少要表现出在向这个方向努力吧!)。
为了避免神经网络走弯路,作者把实例的边缘信息作为一种监督的指引,即将groundtruth进行边缘滤波,让神经网络同时去预测实例的边缘。指了条明路。
Mask R-CNN的多任务损失函数:

具体的做法是,增加一个新分支,预测边缘并与groundtruth的边缘相比较,请看下图

作者仅是对每个实例28*28大小区域内(所以增加的计算量有限)进行上述操作,通过添加简单的3*3边缘检测计算预测和groundtruth的边缘,因为边缘检测往往和图像平滑一起用,所以右边的图增加了平滑的步骤。
上图中Lp代表计算两者差异的方式,如下:

p代表像素差值的幂次方参数。

作者尝试了普通的Sobel滤波和Laplacian滤波检测边缘。

作者通过Edge Agreement Head方式增加了一个损失函数,模型复杂度略微增加,没添加任何额外的需要训练的模型变量,训练的计算成本增加很小,而网络推断时不增加计算量。

实验结果
作者在MS COCO 2017数据集上做了实验,比较训练达到160k steps时基准模型和提出的模型的COCO AP metrics精度。

Table 1说明当训练达到160k steps时,使用Edge Agreement Head的模型训练达到了更高的精度,尤其是使用Soble边缘算子的模型。
Table 2表明不使用图像平滑加速更加明显,达到更高的精度。
预测结果比较图示:


Table 4表明,拉长训练时间,使用Edge Agreement Head仍然获得了更高的精度。

该文没有开源代码。

总结
这篇论文很简单,但给出的结论很有意思,Edge Agreement Head相当于提供了更多的监督信息,为深度网络指了一个方向,少走一些弯路。尤其在训练早期,网络更容易迷茫的时候就更需要指条明路。
尤其值得一提的是,很显然边缘信息可以有助于所有图像像素级理解的应用,比如深度估计、光流计算等,大家不妨一试。

最后推荐一篇52CV君之前分享过的一篇论文,利用边缘信息大幅改进了人脸对齐,如果你还没读,非常值得一读!

重磅!清华&商汤开源CVPR2018超高精度人脸对齐算法LAB

论文地址:
https://arxiv.org/abs/1809.07069v1

(欢迎关注“我爱计算机视觉”公众号,一个有价值有深度的公众号~)

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

利用边缘监督信息加速Mask R-CNN实例分割训练 的相关文章

  • sql server 存储过程中输入参数需要用in而失效的问题解决方案

    在存储过程中使用IN函数 传入多个参数时 会有问题 因为输入参数 1 2 3 是一个数据 而不是一个集合 导致sql失效 三种解决方案 1 建立函数分割输入参数里面的 create FUNCTION dbo Split2 RowData v
  • mac下编译protobuf c++

    由于protobuf官网的文档是英文版的 并且并没有比较详细的说明 可能说得很清楚了 只是我这种英文渣看不懂 学习起来着实费了一翻功夫 在此 记录一下学习过程 希望尽量详细 一 编译过程需要的工具 1 protobuf源码 下载地址 htt
  • 【HTML+CSS】之CSS布局

    常用布局方式 table 表格布局 float 浮动 margin inline block 布局 flexbox布局 1 flexbox 布局
  • WebDav的几种应用方法

    windows系统将阿里云盘挂载成本地磁盘使用 1 获取阿里云盘的登录token 2 使用脚本程序运行起来webdav aliyundriver的jar包 3 使用RaiDrive软件将阿里云盘挂载成本地磁盘 4 需要注意的是 token的
  • 分布式存储Ceph中的逻辑结构Pool和PG

    Ceph中的逻辑对象有Object Pool PG 本文简单介绍相关的概念以及之间的关系 PG状态变化过程等 1 Ceph集群中的逻辑结构 1 1 Object Object是Ceph的最小存储单元 大小可以自己定义通常为2M或4M 每个O
  • 某网站登录接口password参数还原

    本次分析的网站 aHR0cHM6Ly9tLmN0eXVuLmNuL3dhcC9tYWluL2F1dGgvbG9naW4 cmVkaXJlY3Q9JTJGbXk 1 抓包 本次需要分析的是 password 参数 所以 在控制台全局搜索 pa
  • 12000+套Midjourney描述词!有了它真的可以为所欲为!

    今天给各位来个猛的 更新一些最新最全的Midjourney关键词 方便大家在AI绘画中使用 有了这些关键词你可直接复制粘贴拿过来稍加修改就可以用了 当然这些关键词不仅仅只适合Midjourney这个平台 其他AI类绘画工具同样适用 Midj
  • 引用传递的参数类型,加不加ref是不同的

    教科书上说引用传递的参数引用时 加不加ref都可以 都会改变参数原来的值 值传递参数引用时如果想要改变原来的值 必须加ref 以前遇到的大部分情况确实是如此 引用传递类型比如ArrayList DataTable到另一个方法中 并在该方法中
  • 关于腾讯云短信sms接口自定义API写法 PHPdemo

    腾讯云短信 Short Message Service SMS 接口自定义API写法 PHPdemo 问题1 调试时 参数必须是真实的 这样才能一次到位 比如我 故意短信签名 填个错的 这样不扣量 提示个 FailedOperation S
  • IDEA快捷键

    Ctrl Shift Enter 语句完成 否定完成 输入表达式时 键 Ctrl E 最近的文件 Ctrl Shift E 最近更改的文件 Shift Click 可以关闭文件 Ctrl OR 可以跑到大括号的开头与结尾 Ctrl F12
  • Yii Framework 开发教程(1) 第一个应用Hello World

    Yii Framework 教程可以参见官方中文文档 那么为什么还要写这个开发教程呢 本教程目的是通过不同的视角 主要是通过开发Windows应用C C 程序员的角度 帮助Windows 桌面应用或ASP Net程序员较快的掌握PHP Yi
  • C++用 _findfirst 和 _findnext 查找文件

    一 这两个函数均在io h里面 二 首先了解一下一个文件结构体 struct finddata t unsigned attrib time t time create time t time access time t time writ
  • ipv6地址为什么显示两个_基本IPv6故障排除命令/ IPv6 Rosetta Stone 2019

    这篇文章旨在概述Windows Linux和macOS这三个主要操作系统的基本IPv6故障排除方法和命令 对于这些操作系统 仅适用于某些特定任务 它包括 IPv6 Rosetta Stone 的更新版本 这是我经常向IPv6初学者介绍的网站
  • 怎么用计算机上的打印设备打印,电脑中怎么添加打印机设备

    电脑中怎么添加打印机设备 电脑中怎么添加打印机设备呢 下面小编介绍一下 具体如下 1 打开电脑 点击 控制面板 图标 2 在如图页面 找到 硬件和声音 点击打开 3 然后点击 设备和打印机 选项 4 打开后 点击上方的 添加打印机 5 最后
  • 递归解题思维

    目录 开篇 用递归解题的意义 递归思维与数学归纳法 递归解题的类型 递归结题步骤 递归例题 1 求N阶乘 2 找出数组中的最小值 3 字符串翻转 小结 开篇 网上关于如何用递归解决问题方法的文章很多了 看了一些 我也来谈谈我的看法 很多文章
  • elementui 更换主题色

    定义CSS变量 由var 函数来获取值 设定值 root background color FF0000 获取值 div background color var background color JS获取变量 const element
  • c语言进行菜单制作

    include stdlib h include
  • Lecture11: (增强)拉格朗日松弛技术

    目录 1 理论背景 2 数学分析 3 LR计算案例 3 1 分解 3 2 算法 4 ALR计算案例 4 1 主要思想 4 2 ADMM 当你的问题中包含复杂约束时 你可能需要该方法 本节目标 阐述拉格朗日松弛 增强拉格朗日松弛和交替方向乘子
  • Ubuntu22.04安装Git及配置

    Git安装配置 apt get install git 安装Git git version 安装成功后显示版本 git version 2 34 1 git config global user name name 配置用户名 git co
  • Scrapy之CsvItemExporter生成的CSV文件乱码解决

    环境信息 Python 3 6 5 Scrapy 2 2 导出文件逻辑 self file open Users chenjunfeng02 Downloads enrolldata csv wb self exporter CsvItem

随机推荐

  • 【电脑蓝屏】—— inaccessible boot device

    文章目录 一 问题描述 二 问题出现场景及原因分析 1 重装系统后出现该蓝屏情况 三 问题解决方法 附件 一 问题描述 蓝屏提示 inaccessible boot device 二 问题出现场景及原因分析 1 重装系统后出现该蓝屏情况 设
  • 【matlab深度学习工具箱】classificationLayer参数详解

    classificationLayer 文章目录 classificationLayer 语法 描述 例子 创建分类图层 创建加权分类图层 输入参数 名称 值参数 Name 图层名称 默认 字符向量 字符串标量 ClassWeights 加
  • 多元回归预测

    文章目录 效果一览 文章概述 部分源码 参考资料 效果一览 文章概述 多元回归预测 Matlab基于粒子群算法 PSO 优化径向基神经网络 PSO RBF 的数据回归预测 多变量输入模 评价指标包括 MAE RMSE和R2等 代码质量极高
  • 眼底图像血管分割学习笔记

    一 图像处理 训练集的图片格式为tif 其中相应的分割标签格式 为gif 一开始想着这些图片是不是都要先转换成 jpg或者 png 在查阅了一些资料后其实还是不太清楚 然后在看别人的代码时 发现没有处理 所以就先这样弄着 出现的问题 cla
  • Centos7 上的sqlite3安装及升级

    一 wget升级 yum install y wget 二 sqlite3安装 sudo yum install sqlite devel 查看sqlite3的版本 sqlite3 version 三 sqlite3升级 下载源码 wget
  • 试试这两个方法,做视频二次剪辑并不难,新手一天可以收入200

    很多新手看到别人每天做短视频一个月有过万 几万的收益 看到别人能赚钱 觉得自己可能赚不到这么多 赚个7 8千应该没问题 于是开始自己学着也做起了短视频自媒体 每天埋头苦干 但每天的收益却很低 只有几块 几十 有的甚至更少 跟自己想象的完全不
  • 部署Promethuse监控Hadoop节点

    部署Promethuse监控Hadoop节点 目标 安装 将hadoop的jmx信息采集到指定端口 配置prometheus 其他说明 目标 Hadoop本身是对相当数量的指标 metrics 进行实时监控的 但是Hadoop本身并不提供方
  • Java多线程详解及示例

    Java多线程详解 摘要 本文将深入探讨Java多线程编程的重要性和使用方法 介绍多线程概念 讨论多线程的优势 并提供实际示例 此外 还将探讨多线程编程中的常见问题以及如何避免这些问题 通过本文 您将获得对Java多线程编程的全面理解和实践
  • html5 游戏 动画设计,HTML5 Canvas 动画实例

    原标题 HTML5 Canvas 动画实例 在开发在线游戏时 绘制动画是非常重要的 本节介绍一个使用 Canvas API 实现的动画实例 游戏人物的跑步动画 动画的概念及原理 1 动画 动画是通过一幅幅静止的 内容不同的画面 即帧 快速播
  • 【六祎-JS特效】页面JS特效背景

    JS代码
  • Python3中strip()、lstrip()、rstrip()用法详解

    Python中有三个去除头尾字符 空白符的函数 它们依次为 strip 用来去除头尾字符 空白符 包括 n r t 即 换行 回车 制表符 空格 lstrip 用来去除开头字符 空白符 包括 n r t 即 换行 回车 制表符 空格 rst
  • 流式计算简介

    1 数据的时效性 日常工作中 我们一般会先把数据存储在一张表中 然后对这张表的数据进行加工 分析 那这里是先存储在表中 那就会涉及到时效性这个概念 如果我们处理以年 月为单位的级别的数据处理 进行统计分析 个性化推荐 那么数据的的最新日期离
  • Docker容器学习笔记

    目录 一 初始Docker 1 1Docker的概念 1 2Docker的安装 1 3Docker的架构 1 4Docker配置镜像加速器 二 Docker命令 2 1服务相关的命令 2 2镜像相关命令 2 3容器相关命令 三 Docker
  • 小程序实现搜索历史记录,去重搜索字段以及限制展示字段数量

    使用微信小程序实现搜索历史记录 去重搜索字段 限制字段数量以及点击重新搜索功能 对应界面
  • 指纹功能适配文档

    指纹功能适配文档 本文档主要介绍第三方设备厂商如何将指纹功能集成到系统中 另外也简单描述了系统上的用户认证流程 指纹功能的集成需要实现系统定义的指纹接口规范 然后将实现的接口程序安装到系统中 并提供规范中定义的配置文件 就可在重启后使用系统
  • 口罩检测——环境准备(1)

    文章目录 前言 一 工具及环境要求 工具 本地环境要求 二 工具介绍 1 labelimg 2 AI Studio 3 YOLO2COCO 4 PaddleUtils 5 paddleyolo 三 库的安装 总结 前言 小编之前做过一期 O
  • Matlab 2016a 安装教程

    Matlab 2016a 安装包及破解教程百度云分享链接 链接 https pan baidu com s 1i6BgD8p 密码 17gg Matlab安装教程 1 下载文件 得到R2016a win64 part1 rar R2016a
  • DataGrip 连接 Kerberos 认证的 hive 报 Hive JDBC Kerberose Authentication Error: GSS initiate failed 错误

    版本 hive 3 1 2 问题描述 使用工具连接 hive 时 报如下错误 The specified database user password combination is rejected 08S01 Could not open
  • producer参数---Kafka从入门到精通(七)

    上篇文章说了 kafka需要先构造properties指定server和kafka集群 key 和 value用stringSerialize序列化 通过producer发送send 需要records参数指定topic和value 之后发
  • 利用边缘监督信息加速Mask R-CNN实例分割训练

    欢迎关注 我爱计算机视觉 公众号 一个有价值有深度的公众号 今天跟大家分享一篇有意思的arXiv上新出的论文 作者来自德国宝马汽车公司 BMW Car IT GmbH Germany 的两位实习生 Mask R CNN是实例分割的经典模型