何恺明等人提TensorMask框架:比肩Mask R-CNN,4D张量预测新突破
整理 | 刘畅、Jane
责编 | Jane
出品 | AI科技大本营(id:rgznai100)
看到今天要给大家介绍的论文,也许现在大家已经非常熟悉 Ross Girshic、Piotr Dollár 还有我们的大神何恺明的三人组了。没错,今天这篇重磅新作还是他们的产出,营长感觉刚介绍他们的新作好像没多久啊!想要追赶大神脚步,确实是不能懈怠啊!
不过这次一作是来自 FAIR 的陈鑫磊博士,虽然和三人组合比起来,一作陈鑫磊还没有那么被大家所熟知,不过其实力也是不容小觑的(毕竟后面跟着三个实力响当当的人物)。营长在陈鑫磊的个人主页上看到他的学习经历和研究成果,也是忍不住点赞。陈鑫磊在浙江大学国家重点实验室 CAD&CG实验室学习时,师从蔡登教授,随后在 CMU 攻读博士学位,现任职于 FAIR,毕业前曾在 Google Cloud 李飞飞和李佳组内实习。在博士研究期间,每年和导师 Abhinav Gupta 教授都有论文发表在 AAAI、CVPR、ECCV、ICCV 等顶会上,考虑篇幅,营长就从每年成果中选一篇列举出来,大家可以前往陈鑫磊的个人主页中可以看到全部作品。
2013-2018 年间的主要作品:
[1]、Xinlei Chen, Li-Jia Li, Li Fei-Fei, Abhinav Gupta. Iterative Visual Reasoning Beyond Convolutions. The 31st IEEE Conference on Computer Vision and Pattern Recognition(CVPR), 2018. Spotlight
[2]、Xinlei Chen, Abhinav Gupta.Spatial Memory for Context Reasoning in Object Detection. The 15th International Conference on Computer Vision (ICCV), 2017
[3]、Gunnar A. Sigurdsson, Xinlei Chen, Abhinav Gupta. Learning Visual Storylines with Skipping Recurrent Neural Networks. The 14th European Conference on Computer Vision (ECCV), 2016
[4]、Xinlei Chen, Abhinav Gupta. Webly Supervised Learning of Convolutional Networks. The 15th International Conference on Computer Vision (ICCV), 2015. Oral
[5]、Xinlei Chen, C. Lawrence Zitnick. Mind's Eye: A Recurrent Visual Representation for Image Caption Generation. The 28th IEEE Conference on Computer Vision and Pattern Recognition (CVPR), 2015
[6]、Xinlei Chen, Alan Ritter, Abhinav Gupta, Tom Mitchell. Sense Discovery via Co-Clustering on Images and Text. The 28th IEEE Conference on Computer Vision and Pattern Recognition (CVPR), 2015.
[7]、Xinlei Chen, Abhinav Shrivastava, Abhinav Gupta. Enriching Visual Knowledge Bases via Object Discovery and Segmentation. The 27th IEEE Conference on Computer Vision and Pattern Recognition (CVPR), 2014
[8]、Xinlei Chen, Abhinav Shrivastava, Abhinav Gupta. NEIL: Extracting Visual Knowledge from Web Data. The 14th International Conference on Computer Vision(ICCV), 2013. Oral.
这几个人从出道至今,都有非常多的佳作,出产率也非常高,最近大家还在重谈去年三人组合的论文《Rethinking ImageNet Pre-training》,今天就有了这篇在密集掩码预测新突破:《TensorMask: A Foundation for Dense Object Segmentation 》,大神们简直就是快要承包整个 CV 界了!
“CV男团”四人的个人主页(一到四作的顺序):
http://xinleic.xyz/#
http://www.rossgirshick.info/
http://kaiminghe.com/
http://pdollar.github.io/
接下来,营长就为大家带来“CV男团”这篇最新力作的初解读,因为论文中涉及很多与 TensorMask 框架相关的专业术语,函数定义等,还需要大家下来细细研究,感兴趣的同学可以从下面的论文地址里下载论文进一步学习,也欢迎大家在后台给我们留言,发表你的感想。
论文解读
摘要
在目标检测任务中,采用滑窗方式生成目标的检测框是一种非常常用的方法。而在实例分割任务中,比较主流的图像分割方法是首先检测目标边界框,然后进行裁剪和目标分割,如 Mask RCNN。在这篇工作中,我们研究了密集滑窗实例分割(dense sliding-window instance segmentation)的模式,发现与其他的密集预测任务如语义分割,目标检测不同,实例分割滑窗在每个空间位置的输出具有自己空间维度的几何结构。为了形式化这一点,我们提出了一个通用的框架 TensorMask 来获得这种几何结构。
我们通过张量视图展示了相较于忽略这种结构的 baseline 方法,它可以有一个大的效果提升,甚至比肩于 Mask R-CNN。这样的实验结果足以说明TensorMask 为密集掩码预测任务提供了一个新的理解方向,并可以作为该领域新的基础方法。
引言
滑窗范式(在一张图的每个滑动窗口里面去寻找目标)是视觉任务里面最早且非常成功的方法,并且可以很自然的和卷积网络联系起来。虽然像 RCNN 系列方法需要在滑窗的方法上再进行精修,但是像 SSD、RetinaNet 的方法就是直接利用滑窗预测。在目标检测里面非常受欢迎的方法,在实例分割任务中却没得到足够的关注。因此本文的工作就是来填补该缺失。本文主要的 insight 就是定义密集掩码的表示方式,并且在神经网络中有效的实现它。与低维、尺度无关的检测框不同,分割掩码需要一种更具有结构化的表示方式。因此,本文在空域上,采用结构化的 4 维张量定义了掩码的表示方式,并提出了一个基于滑窗方法的密集实例分割框架——TensorMask。在 4 维张量(V,U,H,W)中,H 和 W 表示目标的位置,而 V 和 U 表示相关掩码的位置。与仅直接在通道上加一个掩码分支的方法不同,这种方法是具有几何意义的,并且可以直接在(V,U)张量上进行坐标转换,尺度缩放等操作。在 TensorMask 框架中,作者还顺手开发了一个张量尺度金字塔(tensor bipyramid),用于 4 维的尺度缩放。如下公式所示,其中 K 就是尺度。
掩码的张量表示
TensorMask 框架的主要想法就是利用结构化的高维张量去表示密集的滑动窗口。在理解这样的一个框架时,需要了解几个重要的概念。
单位长度(Unit of Length):在不同的轴和尺度上有不同的单位长度,且 HW 和 VU 的单位长度可以不相等。
和
分别表示其单位长度。
自然表示(Natural Representation):在点(y,x)处的滑窗内,某点的掩码值表示,如下截图所示,其中 alpha 表示 VU 和 HW 的单位长度比率。
对齐表示(Aligned Representation):由于单位长度中 stride 的存在,自然表示存在着像素偏移的问题,因此这里有一个同 ROIAlign 相似的想法,需要从张量的角度定义一个像素级的表示。
坐标转换:用于自然表示和对齐表示间的转换,论文给出了两种情况下的转换公式,一种是简化版的
一种是一般版的(就是任意的单位长度)。
上采样转换(Upscaling Transformation):下图就是上采样转换的操作集合。实验证明它可以在不增加通道数的情况下,有效的生成高分辨率的掩码。
张量尺度金字塔(Tensor Bipyramid):由于掩码存在尺度问题,它需要随目标的大小而进行缩放,为了保持恒定的分辨率密度,提出了这种基于尺度来调整掩码像素数量的方法。
TensorMask结构
基于 TensorMask 表示的模型,有一个采用滑窗的掩码预测分支和一个类似于检测框回归的分类分支。该结构不需要增加检测框的分支。掩码预测分支可以采用卷积的 backbone,比如 ResNet50。因此,论文提出了多个基础(baseline)分支和张量尺度金字塔分支,帮助使用者快速上手 TensorMask。需要指出的是,张量尺度金字塔分支是最有效的一个模型。在训练时,作者采用 DeepMask 来帮助标记数据,以及 focal loss 等等。
实验
为了说明各分支或者操作的作用,论文做了大量的消融实验来进行论证。具体结果见下图表格的数据以及与 Mask-RCNN 可视化的对比。实验结果证明,TensorMask 能够定性定量的比肩 MaskR-CNN。
该项工作将滑窗方法与实例分割任务直接联系了起来,能够帮助该领域的研究者对实例分割有新的理解,期待代码早日开源。
(本文为 AI科技大本营原创文章,转载请微信联系 1092722531)
精彩推荐
「2019 Python开发者日」7折票倒计时2天!这一次我们依然“只讲技术,拒绝空谈”10余位一线Python技术专家共同打造一场硬核技术大会。更有深度培训实操环节,为开发者们带来更多深度实战机会。更多详细信息请咨询13581782348(微信同号)。
相关文章:

init.rc的disabled含义
http://www.kandroid.org/android_pdk/bring_up.htmlhttp://androidnote.com/Article_show.asp?ArticleID649如果该服务选项中没有disabled定义,则在init.rc中解析到这个服务的时候,会马上执行这个服务。而如果在服务的选项中增加了disabled定义&#x…

【Qt】在ubuntu14.04上安装Qt5.12(失败)
注意 在ubuntu14.04上安装Qt5.12最终失败了,Qt5.12需要的libdbus库的版本和ubuntu14.04中的不一致,如果强行升级libdbus库版本,会导致系统桌面无法启动。 再次提示:不要按照下述步骤操作,它只是一个记录失败操作的笔记。 如果有大神安装成功了,还请不吝赐教。 1、安装Q…

80+机器学习数据集,还不快收藏
整理 | suiling 出品 | AI科技大本营(ID:rgznai100) 对于从事机器学习的小伙伴来说,机器学习必须以大量的数据为基础,否则构建再好的模型也不能达到你想要的效果。同时,不同质量的数据集也会影响到模型训练的效果。之…

SpringBoot+Docker+Git+Jenkins实现简易的持续集成和持续部署
前言 本篇文章引导你使用Jenkins部署[SpringBoot项目],同时使用Docker和Git实现简单的持续集成和持续部署。(项目地址:sso-merryyou) 流程图如下: push代码到Github触发WebHook。(因网络原因,本篇使用gitee…

LINUX下用C语言历遍目录 C语言列出目录
(被考了一题遍历目录,连需要的系统库函数我都不知道...打击中...)小羽给了一个答案:#include<stdio.h> #include<dirent.h>int main(int argc,char **argv) { DIR *p; struct dirent *dirp; if (argc ! 2) …

【linux】ubuntu14.04升级dbus到1.13.8,杯具了,无法进入桌面
一、问题描述 在ubuntu14.04中安装了Qt5.12,启动QtCreator报错,需要高版本的dbus。 将dbus升级到1.13.8后,杯具了,无法进入桌面 二、尝试解决 1、尝试恢复之前的版本(失败) 进入终端界面:Ct…

线下教育地位遭冲击?“AI+教育”公司同台讲了这些事实
点击上方↑↑↑蓝字关注我们~「2019 Python开发者日」7折优惠最后1天,请扫码咨询 ↑↑↑整理 | 一一出品 | AI科技大本营(ID:rgznai100)近日,网易新闻、网易有道、清华大学数据科学研究院在清华大学举办了“中国AI创新者论坛”。当…

mysql查看正在执行的sql语句
有2个方法: 1、使用processlist,但是有个弊端,就是只能查看正在执行的sql语句,对应历史记录,查看不到。好处是不用设置,不会保存。 -- use information_schema; -- show processlist; 或者: -- …

poj2472
最短路,bellman View Code #include <iostream>#include <cstdio>#include <cstdlib>#include <cstring>#include <cmath>using namespace std;#define inf 0x3f3f3f3f#define maxn 100#define maxm 10000#define eps 10e-9int n, m…
.net core 2.0 部署到centos 7生产环境
.netcore的跨平台如此之火,忍不住想试试 在linux下部署 .net 程序。 借鉴此篇博文:将ASP.NET Core应用程序部署至生产环境中(CentOS7) 虽然是借鉴,但过程坎坷。对从未使用过linux的我难度可想而知,但万事有…

微软沈向洋:写给AI新潮流——人工智能创作的五点建议
2019年EmTech 数字大会 本周,我有幸在旧金山举行的EmTech数字大会上发言,为大家讲述了当今人工智能发展的现状,以及未来的发展方向。我想与大家分享的是,面对新一轮的人工智能创新大潮,人们最该思考的五件大事。 1)技…

【Linux】在VirtualBox-6.0中安装Manjaro18.0
1、参考博客: VMware虚拟机下Manjaro17.1.6安装详细教程 2、在VirtualBox-6.0中安装Manjaro18.0 1)基本步骤和博客中安装17.1.6相同,下面只记录不同的。 * VirtualBox中没有Manjaro的选项,可以选择 ArchLinux; * 本…

netty里集成spring注入mysq连接池(一)
netty的性能非常高,能达到8000rps以上,见 各个web服务器的性能对比测试 1.准备好需要的jar包 spring.jar //spring包 netty-3.2.4.Final.jar // netty库 commons-dbcp.jar // dbcp数据库连接池 mysql-connector-java-5.1.6.jar // d…

图很难理解?看这篇图论基础与图存储结构就够了
点击上方↑↑↑蓝字关注我们~「2019 Python开发者日」,购票请扫码咨询 ↑↑↑作者 | 程序员吴师兄转载自五分钟学算法(ID:CXYxiaowu)1 前言打算先普及一下图的相关理论支持,本文不建议一口气阅读完毕,可以先浏览一遍&a…

【Linux】修改/etc/fstab时参数设错,导致启动异常,无法进入系统(已解决)
1、问题描述 在ubuntu14.04上设置自动挂载硬盘分区时,修改/etc/fstab时,将defaults错误写成default,导致启动异常,无法进入系统。 2、解决方法 1)ubuntu启动时有两种模式:普通模式(ubuntu&am…

gitlab安装
根据官方文档安装:https://www.gitlab.com.cn/installation/#centos-6 centos6: 1、没有安装lokkit,yum search lokkit后安装lokkit sudo yum install -y curl policycoreutils-python openssh-server cronie sudo lokkit -s http -s ssh2、安…

如何将Android带入互联网数字家庭? 第一篇转载
前言:很有幸通过ARM Group认识了 ARM的家庭软件架构师 --- 章立(Leon Zhang) (他也是ARM战略软件联盟部门的一员. Leon 拥有多年产品开发和项目管理经验, 曾经参与了数字录像机、机顶盒、数字电视,网络电视以及智能电视࿰…

【linux】用过的shell命令
1、批量替换文件中的字符串 eg:将当前目录 . 下的old替换成new sed -i "s/new/old/g" grep old -rl .如果字符串中有‘/’等特殊字符需要反斜杠‘\’来转移 eg:将当前目录下的“old/old”,替换成“new/new” sed -i "s/new…

node简单实现excel文件下载
1.利用csv格式兼容实现 csv是一种利用,、\t、\n等分隔符存储的文本文件,excel可兼容打开,利用此原理,代码实现如下: app.use(route.get(/export, async ctx > {ctx.res.setHeader(Content-Type, application/vnd.ms-execl);ctx…

儿科医生的眼泪,全被数据看见了
点击上方↑↑↑蓝字关注我们~「2019 Python开发者日」,购票请扫码咨询 ↑↑↑作者 | AlfredWu来源 | Alfred数据室(ID:Alfred_Lab)《人间世》第二季第8集《儿科医生:坚守,还是逃离?》把儿科医生的辛苦与挣扎…

[毕业生的商业软件开发之路]C#类型样式
近期开始接触到在校学生、高校实习生和毕业生,在此说一下笔者对这些徘徊在职场门口的学生一些建议,希望能给这些初学者进入软件开发行业带来一些帮助,使得毕业生能更顺利的进入软件开发公司开始职场生涯,人生来一个完美的转弯。 -----------------------…

特斯拉被曝储存大量未加密个人数据 | 极客头条
点击上方↑↑↑蓝字关注我们~「2019 Python开发者日」,购票请扫码咨询 ↑↑↑编译丨王哲来源丨猎云网( ID:ilieyun)编者按:特斯拉是否明确界定了数据安全的目标?它现有的规则又在保护哪些人?如果…

【Linux】neocomplcache disabled: “sudo vim“ is detected and $HOME is set to your user‘s home
1、问题描述 使用sudo vim时,弹出提示: neocomplcache disabled: "sudo vim" is detected and $HOME is set to your users home. You may want to use the sudo.vim plugin, the "-H" option with "sudo" or set alwa…

016 | 漫谈区块链共识机制
原创文章,转载请注明:转载自Keegan小钢 并标明原文链接:http://keeganlee.me/post/blockchain/20180425 微信订阅号:keeganlee_me 写于2018-04-25 专栏地址:xiaozhuanlan.com/fullstack 共识机制是区块链的一个核心特征…

临危不乱,.Net+IIS环境经常出现的问题及排障。
http://www.cnblogs.com/CoreCaiNiao/archive/2011/08/02/2123991.html

零门槛!手把手教你打造AI应用
如你所见,聊天机器人已经逐渐渗透到生活的方方面面。它可以提供生活娱乐方面的服务,比如查询音乐、地图、天气,做心理测试,甚至 Google 的 Duplex 技术还能让你通过机器人进行订餐,当然还有很多能跟你谈天说地闲聊胡扯…

【Qt】启动QtCreator时报错:Cannot mix incompatible Qt library (version ) with this library (version...
1、问题描述 当启动QtCreator时报错(我的Qt版本是Qt5.6.3): Cannot mix incompatible Qt library (version 0x50603) with this library (version 0x50601) Aborted (core dumped)2、原因分析 原因是QtCreator使用的Qt库版本是5.6.1,而环境中配置的Qt库版本是5.6.3 1)Q…

利用IIS作为宿主 发布你的WCF Service(转)
http://blog.csdn.net/blacksource/article/details/3942130最近公司的一个需求,涉及到WCF开发。在网上找了些资料,大都是利用单独的应用程序、或者Windows服务作为WCF Service的host。其实WCF还提供一种方式,和以前的Remoting比较类似&#…

旷视提出AutoML新方法,在ImageNet取得新突破 | 技术头条
点击上方↑↑↑蓝字关注我们~「2019 Python开发者日」,购票请扫码咨询 ↑↑↑来源 | 旷视研究院 近日,来自旷视研究院的郭梓超、张祥雨、穆皓远、孙剑等人发表一篇新论文“Single Path One-Shot Neural Architecture Search with Uniform Sampling”&a…

9.QT-标准对话框
Qt提供的可复用的标准对话框,全部继承自QDialog类,如下图所示: QMessageBox:信息对话框,用于显示信息、询问问题等;QFileDialog:文件对话框QColorDialog:颜色对话框QInputDialog:输入对话框(允许用户输入一…