点监督的实例分割

news2024/11/23 0:27:33

目录

  • Pointly-Supervised Instance Segmentation
    • 摘要
    • 方法
      • Annotation format and collection
      • 训练点标记
      • 模型
    • 实验结果

Pointly-Supervised Instance Segmentation

摘要

  • 点注释来进行实例分割的弱监督
  • 标签除了边界框还有一组随机点
  • 对PointRend实例分割模块的修改
  • 对于每个对象,新架构称为PointRend,为一个函数生成参数,该函数进行最终的点级掩码预测,隐式PointRend更直接,使用单个point-level掩码损失
    在这里插入图片描述
    一个框,对框随机采样,并标注为对象(红色)或背景(蓝色)

方法

Annotation format and collection

  1. 随机点,而不是手动点击注释
  2. 首先,使用任何现成的解决方案收集对象的包围框,对于每个对象,给定边界框和对象类别标签,在其边界框内的N个随机点位置依次呈现给注释器,用于二进制对象/背景分类
    在这里插入图片描述
    点监督的说明。对于规则网格上的10 × 10预测掩码(较深的颜色表示前景预测),我们通过双线性插值得到GT点(红色和蓝色分别表示前景和背景GT点)的精确位置的预测。注意,物体轮廓线仅用于说明

训练点标记

  1. 使用双线性插值从网格上的预测中近似预测GT点的位置
  2. 一旦我们在相同的点上有预测和地面真相标签,就可以以与完全监督相同的方式应用损失,其梯度将通过双线性插值传播
  3. 在点上使用交叉熵损失
  4. 对于基于区域的模型,一些GT点可能位于预测框之外,我们在训练时选择忽略这些点。相反,对于产生图像级掩模的模型,可以从真实值框的外部采样额外的背景点
  5. 在本文中,我们研究了最基本的设置,其中仅使用N个注释的地面真值点来训练所有模型。
    数据增强
    训练过程中的数据增强是现代分割模型的一个重要组成部分。基于点的注释与所有常见的增强兼容,如输入图像的缩放抖动、裁剪或水平翻转。在我们的实验中,我们观察到,对于较长时间的训练(3×schedule)和具有较高容量主干的模型(例如ResNeXt-101),点和全掩码监督之间的性能差距更大。我们假设这是由于当只有少数点可用时,训练数据的可变性降低造成的,并提出了一种极其简单的基于点的数据增强策略:在每次迭代中,我们不是对一个BOX使用所有可用的地面真相点,而是在每次训练迭代中对所有可用点进行子采样(P10的GT为5点)

在这里插入图片描述

模型

在这里插入图片描述
PointRend
为连接两种特征类型的点构造特征表示
(1)通过双线性插值从图像级特征图(例如FPN级特征图)中提取的精确位置的细粒度点表示
(2)对提供特定区域信息的点进行粗掩码预测
Implicit PointRend
使用point head进行逐点掩码预测。
新模型不再依赖于粗糙的掩码预测来区分不同的实例,而是为每个实例生成不同的point head参数。point head的参数隐式表示为对象的MASK,细粒度的点特征仍然和原始设计相同。为了进行掩码预测,point head取该点相对于它所属的边界框的坐标。

选择推理和训练时的点
隐式PointRend在推理时遵循与PointRend相同的选点策略,即自适应细分
在训练过程中,PointRend通过重要抽样策略从粗掩码预测的不确定区域中选择更多的点
隐式PointRend自然适合于点监督,其中我们只需选择具有ground truth注释的点。与掩码R-CNN类似,我们忽略预测框外的点。

实验结果

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/418346.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

2020年 团体程序设计天梯赛——题解集

Hello各位童学大家好!😊😊,茫茫题海你我相遇即是缘分呐,或许日复一日的刷题已经让你感到疲惫甚至厌倦了,但是我们真的真的已经达到了我们自身极限了吗?少一点自我感动,没有结果前别太…

Python爬虫基础之如何对爬取到的数据进行解析

目录1. 前言2. Xpath2.1 插件/库安装2.2 基础使用2.3 Xpath表达式2.4 案例演示2.4.1 某度网站案例3. JsonPath3.1 库安装3.2 基础使用3.2 JsonPath表达式3.3 案例演示4. BeautifulSoup4.1 库安装4.2 基础使用4.3 常见方法4.4 案例演示参考文献原文地址:https://www.…

OpenCV实例(二)手势识别

OpenCV实例(二)手势识别1.手势识别概述1.1.获取轮廓的凸包1.2.凸缺陷1.3.凸缺陷占凸包面积比2.手势识别过程2.1.识别流程3.石头、剪刀、布的识别作者:Xiou 1.手势识别概述 手势识别的范围很广泛,在不同场景下,有不同…

tp5实现导入excel表到数据库

hello,大家好,好长时间没有更新文章了。最近一直在忙着做项目。所以断更了。 那么好,各位老铁是否想要实现导入导出的功能 请关注我,解密如何实现导入导出, 那么今天先来讲一下用thinkphp5.0 如何实现Excel表格导入数据…

如何实现 Java SpringBoot 自动验证入参数据的有效性

Java SpringBoot 通过javax.validation.constraints下的注解,实现入参数据自动验证 如果碰到 NotEmpty 否则不生效,注意看下 RequestBody 前面是否加上了Valid Validation常用注解汇总 Constraint详细信息Null被注释的元素必须为 nullNotNull被注释的元…

CentOS7.6 磁盘挂载

CentOS7.6 磁盘挂载 目录CentOS7.6 磁盘挂载1.磁盘说明2.磁盘分区步骤1.磁盘说明 1、Linux硬盘分IDE硬盘和SCSI硬盘,目前基本上是SCSI硬盘 2、对于IDE硬盘,驱动器标识符为"hdx",""代表分区,前四个分区用数字…

selenium1—软件测试

文章目录1.什么是自动化测试2.如何实施自动化测试3.UI自动化测试的好处4.自动化框架5.为什么要选择selenium6.webdrive的原理7.selenium IDE1.什么是自动化测试 在预设的条件下(自动化脚本)运行系统,预设的条件包括正常的和异常的情况&#…

BGP反射器与联邦实验

基础配置 display ip interface brief Interface IP Address/Mask Physical Protocol GigabitEthernet0/0/0 12.0.0.2/24 up up GigabitEthernet0/0/1 172.16.1.1/29 up up GigabitEthernet0/0/2 172.16.1.9/29 up up LoopBack0 172.16.2.1/24 up up(s) NULL0 unassigned up u…

AI 工具 22个使用场景、500个通用提问技巧说明

✏️ 「提问技巧—重点摘要」 「写作」:AI写作提问技巧 「制作视频」:AI制作视频创意提问相关技巧 【制定商业策略】:AI为各行各业制定商业策略提问技巧 【写邮件】:AI写邮件提问技巧 【框架方法论写内容】:AI利用…

【云原生概念和技术】1.1 云原生的概述

如果想了解或者学习云原生的友友们,欢迎订阅哦~🤗,目前一周三更,努力码字中🧑‍💻…目前第一章是一些介绍和概念性的知识,可以先在脑海里有一个知识的轮廓,从第二章开始就…

Caffe

目录 1、简述 2、项目起源 3、架构设计 4、极智AI相关内容 1、简述 Caffe(全称Convolutional Architecture for Fast Feature Embedding)是一个兼具表达性、速度和思维模块化的深度学习框架,由伯克利人工智能研究小组和伯克…

小红书热词速看 | 古茗有何营销动作?

【导语】 据古茗官方数据,新系列推出当日即售空,单店最高出杯420杯,最快24小时内卖断货;上架3天,销量突破100万杯;10天,就售出了343万杯,其中2款牛油果奶昔用掉了40万斤牛油果&…

Hadoop完全分布式运行模式配置(开发重点)

目录 Hadoop是一个海量数据存储和计算的框架 Hadoop优点: 3.2 完全分布式运行模式(开发重点) 3.2.1 虚拟机准备 3.2.2 编写集群分发脚本xsync 3.2.3 SSH无密登录配置 3.2.4 集群配置 3.2.5 群起集群 3.2.6 配置历史服务器 3.2.7 配…

SpringBoot【运维实用篇】---- SpringBoot程序的打包与运行

SpringBoot【运维实用篇】---- SpringBoot程序的打包与运行程序打包程序运行SpringBoot程序打包失败处理命令行启动常见问题及解决方案刚开始做开发学习的小伙伴可能在有一个知识上面有错误的认知,我们天天写程序是在Idea下写的,运行也是在Idea下运行的。…

【从零开始学Skynet】基础篇(七):Mysql数据库常用API

在上一篇中我们完成了对Mysql数据库的准备工作之后,这一篇我们写一个程序测试一下。 1、Mysql API 在写程序之前,我们先学习一下Mysql数据库常用API的使用: API说明mysql.connet(args)连接数据库,参数args是一个Lua表&#xff0c…

责任链设计模式(Chain of Responsibility Pattern)[论点:概念、组成角色、图示、相关代码、框架中的运用、适用场景]

文章目录概念组成角色相关图示示例代码框架中的应用适用场景:概念 责任链模式(Chain of Responsibility Pattern)是一种行为设计模式,其主要目的是将请求的发送者和接收者解耦。这种模式创建了一系列处理器对象,每个处…

Shell Script

目录Shell Script的概述Shell的主要版本Shell脚本的建立与执行Shell中的变量Shell中的特殊字符通配符双引号倒引号()顺序分隔符(;)管道符逻辑与(&&)和逻辑或(||)…

synchronized原理详解

众所周知,使用多线程可以极大地提升程序的性能,但如果多线程使用不合理,也会带来很多不可控的问题,例如线程安全问题。 什么是线程安全问题呢?如果多个线程同时访问某个方法时,这个方法无法得到我们预期的…

同步FIFO、异步FIFO详细介绍、verilog代码实现、FIFO最小深度计算、简答题

文章目录前言一、多bit数据流跨时钟域传输——FIFO1、FIFO分类2、常见参数3、与普通存储器的区别4、FIFO优缺点二、同步FIFO1、计数器法2、高位扩展法3、单端口和双端口RAM3.1 单端口RAM3.2 双端口RAM4、例化双端口RAM实现同步FIFO三、异步FIFO1、格雷码1.1 二进制和格雷码之间…

spring5(五):AOP操作

spring5(五):AOP操作前言一、代理模式1、场景模拟2、代理模式2.1 概念2.2 静态代理2.3 动态代理二、AOP概述1、什么是 AOP?2、相关术语3、作用三、AOP底层原理1、AOP 底层使用动态代理2、AOP(JDK 动态代理)2.1 编写 J…