一、VG数据集

机器学习领域的突破突然让计算机获得了以未曾有的高精度识别图像中物体的能力——几乎达到了让人惊恐的程度。现在的问题是机器是否还能更上层楼,学会理解这些图片中所发生的事件。

Visual Genome的新图像数据库有望推动计算机向这一目标挺进,并帮助衡量计算机在理解真实世界这一进程中的进步。教会计算机理解视觉场景是人工智能非常重要的基础。它不仅能产生更多有用的视觉算法,也能帮助训练计算机实现更高效的交流,因为语言与物质世界的表征具有非常密切的联系。

Visual Genome是由专业研究计算机视觉的教授兼斯坦福大学人工智能实验室主任李菲菲与几位同事合作开发的。“我们非常专注于一些计算机视觉领域里最困难的问题,这些问题能够真正构建起感知到认知的桥梁。”李教授说,“并不只是输入像素数据后理解其颜色、阴影这类东西,而还要将其转换成对3D和语义视觉世界更全面的理解。”

摘自于知乎: VG数据集....

.............................

Visual Genome中的图像比ImageNet中的图像拥有更多的标记,包括单张图像中出现的多种物体的名称和细节、这些物体之间的关系和正在发生的动作的信息。这些标记是通过李教授的斯坦福同事Michael Bernstein所开发的众包方式完成的。李教授团队的计划是在2017年使用该数据库推出一个类似于ImageNet的挑战赛。

使用Visual Genome中的案例训练的算法将不止能完成识别物体的任务,还应该拥有一定的分析更复杂视觉场景的能力。

Visual Genome is a dataset, a knowledge base, an ongoing effort to connect structured image concepts to language.

截至 2018年03月05日,VG数据集达到条目 10万张数据集

108,077 Images
5.4  Million Region Descriptions
1.7  Million Visual Question Answers
3.8  Million Object Instances
2.8  Million Attributes
2.3  Million Relationships
Everything Mapped to Wordnet Synsets
Read our paper.

2.关于Place数据集

Place数据集是另外一个标记场景的数据集,但貌似现阶段只对整体场景进行标记,并没有到对象检测和分割的层面。

二、MaskXRCnn

图片分割掩模Mask标注远比实例Rect标注耗费更多的人力财力,因此使用有限的Mask标注和大量的Rect标注称为训练分割网络的一个预期,因此引入偏监督学习。

基于偏监督学习的实例分割任务如下:

(1)给定一组感兴趣的类别和一个有实例掩码注释的小的子集,而其他类别只有边界框注释;

(2)实例分割算法可以利用这个数据来拟合一个模型,该模型可以分割所感兴趣的集合中的所有对象类别的实例。由于训练数据是完整注释数据(带掩码的示例)和弱注释数据(仅带框的示例)的混合,因此我们将该任务称为偏监督任务。

.........................

偏监督学习样例流程的主要好处是它允许我们通过利用两种类型的现有数据集来构建一个大规模的实例分割模型:那些在大量的类上使用边界框注释的数据集,比如Visual Genome, 以及那些在少数类别上使用实例掩码注释的,例如COCO数据集。正如我们接下来将要展示的那样,这使得我们能够将最先进的实例分割方法扩展到数千个类别,这对于在现实世界中部署实例分割是非常重要的。

为了解决偏监督的实例分割问题,我们提出了一种基于Mask R-CNN的新型迁移学习的方法。 Mask R-CNN非常适合我们的任务,因为它将实例分割问题分解为了目标的边界框检测和掩码预测两个子任务。这些子任务是由专门的网络“头部(heads)”共同训练的。我们的方法背后的直觉是,一旦训练完成了,边界框头部(the bounding box head)参数编码嵌入到每个对象类别,使该类别的视觉信息转移到偏监督掩码头部(the partially supervised mask head)参数上。

...................................

下面的才是重点:

学习分割一切物体

假设集合C为一组对象类别(例如‘things’),我们要用这些类别来训练一个实例分割模型。大多数现有方法假设C中所有的训练实例都标有掩码注释。我们放宽了这个要求,只假设C=A∪B,也就是说:集合A中的类别实例都标有掩码注释,集合B中的类别实例只有边界框注释。由于集合B中的类别只带有关于目标任务(实例分割)的弱标签,我们将使用组合强标签(strong labels)和弱标签(weak labels)的类别来训练模型的问题称为偏监督学习问题。

注意:我们可以轻易地将实例的掩码注释转换为边界框注释,因此我们假设A中的类别也带有边界框注释。由于Mask RCNN这样的实例分割模型都带有一个边界框检测器和一个掩码预测器,我们提出的

利用权重传递函数预测掩码

我们的方法建立在Mask R-CNN上,因为Mask R-CNN实例分割模型不仅结构简单,而且可以实现非常优秀的结果。简单来说,我们可以将Mask R-CNN看作为添加有一个掩码预测分支(小型全卷积网络)的Faster R-CNN边界框检测模型。在预测阶段,模型用掩码分支处理每个检测对象,为每个对象预测一个实例级别的前景分割掩码。在训练阶段,并行训练掩码分支和Faster R-CNN中的标准边界框检测器

................请看原始论文或者完整翻译....

流程图

参考:

Learning to Segment Every Thing

实例分割:MaskXRCnn 与Visual Genome数据集的更多相关文章

  1. Deep Snake : 基于轮廓调整的SOTA实例分割方法,速度32.3fps | CVPR 2020

    论文提出基于轮廓的实例分割方法Deep snake,轮廓调整是个很不错的方向,引入循环卷积,不仅提升了性能还减少了计算量,保持了实时性,但是Deep snake的大体结构不够优雅,应该还有一些工作可以 ...

  2. 经典论文系列| 实例分割中的新范式-SOLO

    前言: 这是实例分割中的一篇经典论文,以往的实例分割模型都比较复杂,这篇论文提出了一个简单且直接的实例分割模型,如何设计这种简单直接的模型且要达到一定的精度往往会存在一些困难,论文中有很多思路或思想值 ...

  3. CVPR 2020几篇论文内容点评:目标检测跟踪,人脸表情识别,姿态估计,实例分割等

    CVPR 2020几篇论文内容点评:目标检测跟踪,人脸表情识别,姿态估计,实例分割等 CVPR 2020中选论文放榜后,最新开源项目合集也来了. 本届CPVR共接收6656篇论文,中选1470篇,&q ...

  4. CVPR2020论文解析:实例分割算法

    CVPR2020论文解析:实例分割算法 BlendMask: Top-Down Meets Bottom-Up for Instance Segmentation 论文链接:https://arxiv ...

  5. 实时实例分割的Deep Snake:CVPR2020论文点评

    实时实例分割的Deep Snake:CVPR2020论文点评 Deep Snake for Real-Time Instance Segmentation 论文链接:https://arxiv.org ...

  6. SOLOv 2:实例分割(动态、更快、更强)

    SOLOv 2:实例分割(动态.更快.更强) SOLOv2:  Dynamic, Faster and Stronger 论文链接: https://arxiv.org/pdf/2003.10152. ...

  7. 图像实例分割:CenterMask

    图像实例分割:CenterMask CenterMask: single shot instance segmentation with point representation 论文链家: http ...

  8. YOLO3升级优化版!Poly-YOLO:支持实例分割!

    YOLO3升级优化版!Poly-YOLO:支持实例分割! POLY-YOLO: HIGHER SPEED, MORE PRECISE DETECTION AND INSTANCE SEGMENTATI ...

  9. CVPR2020:三维实例分割与目标检测

    CVPR2020:三维实例分割与目标检测 Joint 3D Instance Segmentation and Object Detection for Autonomous Driving 论文地址 ...

随机推荐

  1. 眼镜h5

    // 填充博乐纯门店数据 (function() { var $biotrueCitySelect = $('.regional-popup select.city'); jQuery.each(st ...

  2. linux下uart应用编程

    目的:在用户空间通过读写uart设备文件,控制uart串口发送和接收数据. 在用户空间设置uart波特率.奇偶校验使能等操作是通过termios结构体和termios库函数完毕.须要在应用程序中包括t ...

  3. VFL演示样例

    上篇文章向大家介绍了VFL的基本的语法点,假设对下面演示样例不熟的童鞋,能够前去參考.废话不多说.我们直接来看演示样例. 演示样例一 将五个大小同样.颜色不同的view排成一行,view间的间隔为15 ...

  4. C++学习之动态数组类的封装

    动态数组(Dynamic Array)是指动态分配的.可以根据需求动态增长占用内存的数组.为了实现一个动态数组类的封装,我们需要考虑几个问题:new/delete的使用.内存分配策略.类的四大函数(构 ...

  5. J2EE基础总结(5)——EJB

    什么是EJB     JB事实上就是企业Java Beans. EJB是J2EE平台的重要组成部分. J2EE平台基于组件的企业级应用架构,提供多 层次.分布式和高事务的功能特点.     EJB提供 ...

  6. kettle_删除“共享输出表”引发的错误

    原创作品.出自 "深蓝的blog" 博客.欢迎转载,转载时请务必注明出处,否则追究版权法律责任. 深蓝的blog:http://blog.csdn.net/huangyanlong ...

  7. C#之选择排序

    算法描述 1.假定未排序序列中第一位为数组最小值,通过与后面的数值进行比较,找到未排序序列中最小值,与未排序序列第一位交换位置: 2.重复步骤一,对剩余未排序序列进行比较找出最小值,与未排序序列中第一 ...

  8. Android利用Volley异步载入数据完整具体演示样例(二)

    MainActivity例如以下: package cc.y; import android.app.Activity; import android.content.Context; import ...

  9. 西门子TCP/UDPport

    通过TCP和UDP数据传输的不同服务用到了哪些port? func=ll&objid=21874445&nodeid0=10806074&load=treecontent&am ...

  10. javascript设置和获取cookie的方法

    设置cookie的方法,和获取cookie的方法例如以下 设置cookie document.cookie="name="+value; //获取cookie当中index是coo ...