热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

【论文笔记】DeepExtremeCut

主页:http:people.ee.ethz.ch~cvlsegmentationdextr论文地址:https:arxiv.orgabs1711.09

主页:http://people.ee.ethz.ch/~cvlsegmentation/dextr/
论文地址:https://arxiv.org/abs/1711.09081
代码:https://github.com/scaelles/DEXTR-PyTorch/




概览

Deep Extreme Cut 基于《Extreme clicking for efficient object annotation》,这篇论文是用户通过 extreme clicking 做物体标注任务,也就是画一个物体的 bounding box。

Deep Extreme Cut 将 extreme points 作为 guiding signal 输入到网络中去:


  • 为 extreme points 形成的 bounding box 区域内创建 heatmap
  • 2D Gaussian
  • 将 heatmap 与原 RGB 图像进行连接,形成一个 4 通道的 CNN

主要方法:

使用目标物体的 extreme points(极限点),即最左、最右、最上、最下方的四个点作为输入,以此获得图像分割结果。

网络结构:

backbone:ResNet-101

去掉了全连接层和最后两个 stage 的最大池化层,这样做是为了保持图像分辨率(和 FCN 一样),在最后两个 stage 用了 atrous convolution,用于保持相同大小的 receptive field,在最后,使用 pyramid scene parsing module,向最终的 feature map 中添加 global context。

预训练:ImageNet 数据集




方法细节

在这里插入图片描述
画 bounding box 的目的: 是为了获得 ROI 区域,排除其他信息对分割任务的干扰。所以这里就用 extreme points 获得目标物体的 bounding box,然后根据 bbox 对原图进行 crop

另外,又为了包含目标物体的上下文信息,所以 crop 并非严格按照 extreme points 得到的 bounding box 进行 crop,而是将这个 tight bounding box 稍微向外扩大几个像素

所以在数据的预处理阶段,就是进行 extreme clicking,然后根据这些 extreme points 得到一个 bounding box,最后输入网络的是 crop 后的原 RGB 图像 + extreme points

crop 策略:

使用 Obejct-centered crop,也就是以物体为中心的 crop 方式,这样得到的结果中,属于前景的 sample 应该要多于属于背景的 sample。


DEXTR使用场景

1)Class-agnostic Instance Segmentation(未知类别的实例分割)

实验数据集:PASCALA 和 Grabcut

2)Annotation(标注任务)

3)Video Object Segmentation(视频目标分割)

实验数据集:DAVIS-2016 和 DAVIS-2017

4)Interactive Object Segmentation(交互式分割)

用户给出 4 个 extreme points,得到一个自动的分割结果,如果不满意这个初始的分割结果,可以在误分割的区域上再额外给出一个点,论文中建议这个 extra point 最好也在目标物体的 boundary 上




实验部分

数据集: PASCAL,COCO,DAVIS-2016,DAVIS-2017,Grabcut

这里作者给出了一系列 ablation experiment(消融实验),消融实验实际上就是在证明提出的某个方法 “确实有效果”,即对比的就是没有加某个方法前和加了某个方法之后性能是否有提升、提升了多少。(也不知道为啥叫的这么唬人)

1)网络结构

采用的结构:ResNet-101
对比结构:Deeplab-v2,Mask R-CNN

2)bounding box 和 extreme points

对比 Deeplab-v2 使用 bounding box 做分割任务和本文用 extreme points 做分割任务,后者提升了 3.1%

3)loss function

对比两种损失函数,standard cross-entropy 和 class-balanced version

结论: balanced version 更好,提升性能 3.3%

4)Full image 和 crops

对比 CNN 是输入整张图像好还是输入 crop 后的图像好

结论: 输入 crop 后的图像提升性能 7.9%,而且对小物体分割的提升更大

原因: cropping 排除了无关信息的干扰

5)Atrous spatial pyramid(ASPP) 和 pyramid scene parsing(PSP) module

结论: PSP module 提升 2.3%

6)Manual extreme points 和 simulated extreme points

比较人工点击 extreme points 和模拟生成的 extreme points 得到的分割结果有什么不同
在这里插入图片描述
结论: 分割结果差不多

7)Distance-map 和 fixed points

消融实验总结:
在这里插入图片描述
在这里插入图片描述


推荐阅读
  • 如何将TS文件转换为M3U8直播流:HLS与M3U8格式详解
    在视频传输领域,MP4虽然常见,但在直播场景中直接使用MP4格式存在诸多问题。例如,MP4文件的头部信息(如ftyp、moov)较大,导致初始加载时间较长,影响用户体验。相比之下,HLS(HTTP Live Streaming)协议及其M3U8格式更具优势。HLS通过将视频切分成多个小片段,并生成一个M3U8播放列表文件,实现低延迟和高稳定性。本文详细介绍了如何将TS文件转换为M3U8直播流,包括技术原理和具体操作步骤,帮助读者更好地理解和应用这一技术。 ... [详细]
  • 在对WordPress Duplicator插件0.4.4版本的安全评估中,发现其存在跨站脚本(XSS)攻击漏洞。此漏洞可能被利用进行恶意操作,建议用户及时更新至最新版本以确保系统安全。测试方法仅限于安全研究和教学目的,使用时需自行承担风险。漏洞编号:HTB23162。 ... [详细]
  • 为了确保iOS应用能够安全地访问网站数据,本文介绍了如何在Nginx服务器上轻松配置CertBot以实现SSL证书的自动化管理。通过这一过程,可以确保应用始终使用HTTPS协议,从而提升数据传输的安全性和可靠性。文章详细阐述了配置步骤和常见问题的解决方法,帮助读者快速上手并成功部署SSL证书。 ... [详细]
  • 解决Only fullscreen opaque activities can request orientation错误的方法
    本文介绍了在使用PictureSelectorLight第三方框架时遇到的Only fullscreen opaque activities can request orientation错误,并提供了一种有效的解决方案。 ... [详细]
  • 本文介绍如何在 Android 中自定义加载对话框 CustomProgressDialog,包括自定义 View 类和 XML 布局文件的详细步骤。 ... [详细]
  • 在多线程并发环境中,普通变量的操作往往是线程不安全的。本文通过一个简单的例子,展示了如何使用 AtomicInteger 类及其核心的 CAS 无锁算法来保证线程安全。 ... [详细]
  • 原文网址:https:www.cnblogs.comysoceanp7476379.html目录1、AOP什么?2、需求3、解决办法1:使用静态代理4 ... [详细]
  • php更新数据库字段的函数是,php更新数据库字段的函数是 ... [详细]
  • 开机自启动的几种方式
    0x01快速自启动目录快速启动目录自启动方式源于Windows中的一个目录,这个目录一般叫启动或者Startup。位于该目录下的PE文件会在开机后进行自启动 ... [详细]
  • 2019年斯坦福大学CS224n课程笔记:深度学习在自然语言处理中的应用——Word2Vec与GloVe模型解析
    本文详细解析了2019年斯坦福大学CS224n课程中关于深度学习在自然语言处理(NLP)领域的应用,重点探讨了Word2Vec和GloVe两种词嵌入模型的原理与实现方法。通过具体案例分析,深入阐述了这两种模型在提升NLP任务性能方面的优势与应用场景。 ... [详细]
  • 本文深入探讨了 C# 中 `SqlCommand` 和 `SqlDataAdapter` 的核心差异及其应用场景。`SqlCommand` 主要用于执行单一的 SQL 命令,并通过 `DataReader` 获取结果,具有较高的执行效率,但灵活性较低。相比之下,`SqlDataAdapter` 则适用于复杂的数据操作,通过 `DataSet` 提供了更多的数据处理功能,如数据填充、更新和批量操作,更适合需要频繁数据交互的场景。 ... [详细]
  • 在上一节中,我们完成了网络的前向传播实现。本节将重点探讨如何为检测输出设定目标置信度阈值,并应用非极大值抑制技术以提高检测精度。为了更好地理解和实践这些内容,建议读者已经完成本系列教程的前三部分,并具备一定的PyTorch基础知识。此外,我们将详细介绍这些技术的原理及其在实际应用中的重要性,帮助读者深入理解目标检测算法的核心机制。 ... [详细]
  • 1.html页面如何使用swiper对swiper不熟练的小伙伴们可能不知道怎么开始使用它,那么下面就让我来简单讲述一下关于swiper的使用流程,这 ... [详细]
  • 导读:本篇文章编程笔记来给大家介绍有关php怎么遍历对象的相关内容,希望对大家有所帮助,一起来看看吧。本文目录一览:1、如何用php将数 ... [详细]
  • 如何在matplotlib中利用mpldatacursor实现一个交互式数据光标
    如何在matplotlib中利用mpldatacursor实现一个交互式数据光标?很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解, ... [详细]
author-avatar
mobiledu2502886217
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有