[CVPR-21] Scale-aware Automatic Augmentation for Object Detection

2023-11-03

 Scale-aware Automatic Augmentation for Object Detection

code: GitHub - dvlab-research/SA-AutoAug: Scale-aware Automatic Augmentation for Object Detection (CVPR 2021)

paper: https://arxiv.org/pdf/2103.17220.pdf

目录

1 Motivation

2 Methods

2.1 搜索空间

2.2 评价指标

2.3 搜索算法

2.4 整体框架

3 实验


数据增强包括两个发展方向,一类是数据增强方法,另外一类是数据增强的组合策略。本文延续了AutoAugment的思路,提出一种适合目标检测的数据增强策略搜索方法。

数据增强的组合策略问题一般包括三个部分:(1)搜索空间;(2)搜索算法;(3)评价指标。例如:对AutoAugment,数据增强策略包含五个子策略(sub-policy),每个子策略包括两个操作(operations),每个操作对应一种数据增强方法的强度和执行概率;搜索算法使用强化学习算法;评价指标是模型在代理任务(训练集子集)上训练测试。


1 Motivation

[ECCV-20] Learning data augmentation strategies for object detection存在两个问题
(1)box-level augmentation直接在bbox中执行,和背景差异大,降低了网络定位增强目标的难度。解决方法:本文提出基于高斯,按比例渐近地融合原图片和增强操作,使得box-level增强更加自然丝滑;

(2)toy experiment显示:不同大小的目标受背景影响程度不同。例如:对于小目标,去除背景是有害的;对于大目标,去除背景有益的:

 受此启发,作者认为针对不同大小的目标,应该有不同的背景尺度,例如:对于小目标,就应该囊括更多的背景,因为他们的检测受背景影响大。具体来说,对于某个图片H x W和检测框(xc, yc, h, w),高斯映射(Gaussian map)为:

 增强区域V定义为:

 对box-level增强方法的区域比例定义为r,是可搜索的: 。因此,标准差可以通过下式算得:

2 Methods

2.1 搜索空间

image-level Aug -> (Color box-level Aug -> Geometric box-level Aug)^5 -> scale ratios,其中image-level Aug包括zoom-in/out,Color和Geometric Aug见下图,每种增强方法包括6个离散的执行概率和6个执行强度;area ratios包括small, middle和Large三种,每种包括10个离散值,因此,整体搜索空间为:

2.2 评价指标

首先训练一个模型,记录它在验证集上的准确率,和每个尺度目标的准确率;然后将该模型在子策略上进一步fine-tune,记录子模型各个尺度目标的损失和准确率。目标函数如下:

包括两个部分:(1)损失的标准差:各个尺度目标对应的损失要求方差尽可能小;(2)Pareto Optimality惩罚fine-tune后效果变差的项。

2.3 搜索算法

进化算法,例如:tournament selection algorithm。验证集包含5k张图片,从MS COCO的train2017中随机采样;剩下的部分用于子模型训练;每个子模型fine-tune 1k iterations。进化搜索中,进化过程迭代10次,初始种群大小设为50,选择最好的10个作为下一代的父母。

2.4 整体框架

3 实验

和Baseline和Multi-scale training baseline作比较,其中MS Baseline,通过随机选择640-800中的一个尺度去训练。

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

[CVPR-21] Scale-aware Automatic Augmentation for Object Detection 的相关文章

随机推荐

  • 【clion】实现类似自定义代码自动补全的功能(懒人利器)

    比如我有句代码是经常要使用的 如下 freopen Users zhangkanqi Desktop 11 txt r stdin 但是自动补全里并没有这句话 网上也没有找到如何自定义自动补全的语句 学艺不精 可是我每次又懒得写这句话 因为
  • Java数据存储类型ArrayList、HashSet、HashMap、LinkedList使用不同遍历方法效率研究By Python

    Java不同数据存储类型使用不同遍历方法效率研究 GitHub代码仓库 数据存储类型 ArrayList HashSet HashMap LinkedList 遍历方法 传统遍历方法 for int i 0 i
  • 设计模式(三)工厂方法模式

    前一篇文章介绍了简单工厂模式 留下了一个疑问 如果需要扩展员工等级 有没有不修改既有接口的方式 答案就是工厂方法模式 既然员工的职级可以扩展 那创建对应职级员工的工厂是不是也可以扩展 工厂基类提供一个接口获取具体的产品 一旦有新的产品 就创
  • C++ day7

    简单vector include
  • CGAL 二维点集的凸包提取

    目录 一 凸包 二 代码实现 三 结果展示 一 凸包 用不严谨的话来讲 给定二维平面上的点集 凸包就是将最外层的点连接起来构成的凸多边形 它能包含点集中所有的点 百度百科 凸包 二 代码实现 include
  • 基于matlab和FFT算法实现信号频谱分析

    系列文章目录 数字信号处理 DSP Digital Signal Process 是电子通信领域非常重要的研究方向 博主汇总了数字信号处理 DSP 中常用的经典案例分析 主要基于算法分析 MATLAB程序实现 信号图像显示 对数字信号处理的
  • 算法竞赛入门经典(第二版)-刘汝佳-第十章 数学概念与方法 例题(16/29)

    文章目录 说明 例题 例10 1 例10 2 例10 3 例10 4 例10 5 未尝试 例10 6 例10 7 例10 8 例10 9 例10 10 例10 11 例10 12 例10 13 例10 14 例10 15 例10 16 未尝
  • platform设备驱动实验

    一 Linux 驱动的分离与分层 1 驱动的分隔与分离 传统驱动编写思路如下图 下图这个就是 Linux 中的总线 bus 驱动 driver 和设备 device 模型 也就是常说的驱动分离 2 驱动的分层 分层的目的也是为了在不同的层处
  • Golang 中 sync/atomic 包的原子操作

    背景 Go中多协程的情况下 要保证操作的原子性 一般要使用RWMutex或者Mutex 但是锁使用起来比较复杂 还要考虑lock 和unlock 顺序和成对出现 不注意就容易出错 于是在sync atomic包中 把我们常用的一些操作封装成
  • JDBC技术获取数据库时间字段

    MySQL数据库中datetime类型格式为0000 00 00 00 00 0 0 如2014 05 01 12 30 00 0 查询到了数据库中的结果集 ResultSet的对象后 要获取完全的时间需要用ResultSet对象的getT
  • Django实战之文件上传下载

    项目介绍 最近学习django 通过文件上传下载这个小项目 总结下常用的知识点 做这个案例我有以下需求 1 要支持一次上传多个文件 2 支持上传后记录上传的数据以及列表展示 3 支持下载和删除文件记录 效果展示 数据库记录 开发步骤 创建项
  • 数据挖掘入门

    目录 前言 简介 挖掘对象 挖掘步骤 分析方法 常用算法 神经网络法 决策树法 遗传算法 粗糙集法 模糊集法 关联规则法 面对的挑战 前言 不知不觉就步入了研究生的大门 蓦然回首 大学四年时光如流水 正如歌词唱的那样 转眼就各奔东西 工作的
  • R语言grep函数用法

    通常被用来进行数值计算比较多 字符串处理相对较少 而且关于字符串的函数也不多 用得多的就是substr strsplit paste regexpr这几个了 实际上R关于字符串处理的功能是非常强大的 因为它甚至可以直接使用Perl的正则表达
  • PYTHON自动化框架总结:SELENIUM+PYTEST+ALLURE

    文章目录 一 PYTEST 1 使用pytest执行测试需要遵循的规则 2 数据驱动 3 pytest fixture 4 结合ALLURE报告 5 pytest assume 二 接口自动化内容 1 接口自动化重要性 2 接口自动化平台的
  • CTFshow web入门——文件上传

    目录 Web 151 考点 后端无验证 前端校验 Web 152 考点 绕过前端校验 Web 153 考点 文件后缀名 黑名单 Web 154 155 考点 文件内容过滤 过滤关键字是php Web 156 158 Web159 Web 1
  • 解决:Hbuilder工具点击发行打包,一直报尚未完成社区身份验证,请点击链接xxxxx,项目xxx发布H5失败的错误。[Error]尚未完成社区身份验证

    全世界任何漂亮有魅力的女生 都不会因为你送她汉堡或奶茶而对你说我爱你 明白吗 你应该带她做一些特别的事情 让她感动 日常笔记 解决 Hbuilder工具点击发行打包 一直报尚未完成社区身份验证 请点击链接xxxxx 项目xxx发布H5失败的
  • QT之运行exe文件时缺少xxx.dll文件

    使用QT最大的好处和方便的可能就是他的输出为exe文件 将这个文件直接复制到其他人的电脑上便可以直接运行 十分的便捷 但是我们有时候我们发现我们自己写的QT生成的exe文件没有办法直接在自己的电脑上打开 或者有时候copy别人的项目时 发现
  • java中的几种加密方式

    第一种 DES加解密 import java security Key import java security SecureRandom import javax crypto Cipher import javax crypto Key
  • React-resize窗口监听

    import React useState useEffect useCallback from react 创建自定义函数来写入方法 function UseWillSize const size setSize useState wid
  • [CVPR-21] Scale-aware Automatic Augmentation for Object Detection

    Scale aware Automatic Augmentation for Object Detection code GitHub dvlab research SA AutoAug Scale aware Automatic Augm