论文阅读<Contrastive Learning-based Robust Object Detection under Smoky Conditions>

论文链接:https://openaccess.thecvf.com/content/CVPR2022W/UG2/papers/Wu_Contrastive_Learning-Based_Robust_Object_Detection_Under_Smoky_Conditions_CVPRW_2022_paper.pdf

Abstract

        目标检测是指有效地找出图像中感兴趣的目标,然后准确地确定它们的类别和位置。近年来,许多优秀的方法被开发出来,以提供强大的检测能力。然而,在恶劣天气如烟熏条件下,它们的性能可能会显著降低。在这篇论文基于对比下学习提出了一个鲁棒的烟雾图像目标检测算法。提出的算法由两个模块组成,对比学习模块(Contrast learning module)和目标的预测框(object bounding box prediction module)。第一个模块通过最大化同一烟雾图像的不同增强视图之间的一致性来学习表示向量,然后把这些特征送入第二个模块以生成bounding box。此外还提出了一个新颖的仿射数据增强方法。在A2I2 - Haze数据集上进行了大量的的实验,该数据集是第一个与航空和地面图像对齐的实时烟雾测量的真实雾霾数据集。该数据集也是CVPR 2022第5届UG2 +挑战赛中唯一用于训练和测试的数据集。与最先进的方法相比,评估结果表明了我们提出的目标检测器的优越性。

Intruduction

        对比学习属于辨别性特征表示的范畴(discriminative representation learning),通过不同样本之间的比较学习来学习一种表示,这种对比通过在相似的图像对和不相似的图像对中实现。通过对它们的比较,可以有效地实现"相似"样本的表示在嵌入空间中被紧密地映射在一起,而"不相似"样本的表示在嵌入空间中被远离的对比学习目标。对比学习有一个明显的优势,它可以忽略输入的表面现象,同时能够学习和提取它们的内部一致性。

Method

        提出的算法流程如下图所示,主要包括量模块,第一个是Constrast learning module,致力于捕获每个相同烟雾图像的不同增强版本之间的内在一致特征,从而能够学习到它们的一致表示。第二个模块是Object bounding box prediction module,把学习到的表示向量和原来的图像一起作为输入来预测每个目标的bounding box。

3.1 Constrast learning module

        图2是对比学习模块的结构,该模块包含三个部分:Data  Augmentation、Encoder Network、Projection Head(和SimCLR类似)。

        在Data  Augmentation中,对给定的烟雾图像,采用两种图像增强方法,分别是图像灰度化和随机亮度增强来生成其相关的增强视图,记为I_{i}I_{j},记为一对正样本。在Encoder Network中,使用ResNet50提取特征获得h_{i}h_{j}。 在Projection Head中,使用两个简单的MLP把h_{i}h_{j}映射到更抽象的特征。

        使用以下损失函数优化对比学习,其中一批 N 个示例被随机采样以构建 2N 个增强图像。z_{i}z_{j}是增强后的图像,sim(u,v)=u^{T}v/||u||||v||表示L2归一化后的y和v的点乘,\tau表示一个温度参数。

L_{cont}=\frac{1}{2N}\sum_{k=1}^{N}[l(2k-1,2k)+l(2k,2k-1)]

l(i,j)=-log\frac{sim(z_{i},z_{j})/\tau }{\sum_{k=1}^{2N}exp(sim(z_{i},z_{j})/\tau)}

3.2 Object boudning box prediction module

        这个模块包括四个部分:pre-processing,backbone,neck和head。在pre-processing部分,使用Transposed convolution改变输入特征h_{i}h_{j}f_{i}f_{j},然后和输入图像I一起输入到YOLOV5s

3.3 Data Augmentation

        在本文中,考虑到拍摄图像中存在无人机视角变化,我们还提出了一种新颖的仿射数据增强方法。首先,我们拍摄一些内容相似但拍摄角度不同、拍摄距离不同的照片。然后,利用透视变换计算每对相似图像之间的单应矩阵。之后,我们对测试数据集的每个图像执行这些单应矩阵,创建新的转换图像。最后,这些变换后的图像与原始训练数据一起用于网络的训练。

Experiments

4.1 Baselines

        对CenterNet、YOLOv5和参与CVPR2022挑战的12种优秀方法进行对比。用于训练和测试的数据集是 A2I2-Haze [32],它是 CVPR 2022 第五届 UG2+ 挑战赛 Haze 中目标检测赛道中采用的唯一数据集。A2I2Haze 是第一个具有原位烟雾测量的真实雾霾数据集与空中和地面图像对齐。该数据集不仅包含从 12 个视频剪辑而来的总共 177 个配对的模糊/干净帧图像,还包含从相同来源收集的用于训练的 240 个带注释的干净图像,以及用于测试的 60 个其他烟雾图像。此外,我们还采用了所提出的数据增强方法。对这些测试图像进​​行仿射变换,产生384张不同角度、不同距离的变换图像,作为训练数据的补充

4.2 Implementation details

        我们首先使用训练数据单独更新对比学习模块的权重。完成此训练过程后,构建的表示向量与原始图像一起用作对象边界框预测模块的输入来训练其网络。完成所有这些任务后,我们提出的目标检测器的训练就真正完成了。

        所提出的目标检测器在 NVIDIA GeForce RTX3080 GPU 上进行训练和测试。在对比学习模块的训练过程中,batch size和patch size分别设置为8和512×512,采用随机梯度下降(SGD)优化器,学习率初始化为0.05并降低90总共 300 个 epoch 中的 150、200 和 250 个 epoch 的百分比。此外,为了训练对象边界框预测模块,我们将批量大小和补丁大小分别设置为32和512×512。热身是在训练前进行的。学习率初始化为0.01,然后在总共500个epoch的训练中采用Cosine学习率下降策略。

4.3 Quantitative evaluation

        表 1 给出了 SOTA 方法和我们提出的检测器产生的物体检测的数值结果。对于那些挑战者,CVPR 2022只公布了他们的AP50结果,如表1所示。从表中的结果可以看出,由于YOLOv5和CenterNet都没有采取适应烟雾条件的措施,所以它们的性能都较差。尽管 12 名挑战参与者中的每一位都在 AP50 中获得了高分,但我们提出的算法仍然在所有评估方法中获得了针对目标检测的最佳平均预测结果。

4.4 Quanlitative evaluation

        图4是定性分析的结果,提出的方法是最接近于Ground Truth的。

4.5 Ablation Study

        通过直接从图 1 的框架中删除模块 1,在目标检测中使用对比学习机制。此外,还通过避免在训练中使用那些转换后的数据来评估所提出的数据增强的有效性。为了阐明它们的效果,我们将我们提出的方法与以下两个基线进行比较:1)基线1:我们仅使用增强训练数据训练模块2。 2)基线2:我们仅使用原始训练数据来训练我们提出的方法。表 2 比较了他们在消融研究中的物体检测结果。从表2的结果可以看出,对比学习可以学习物体的内部一致性,从而进一步准确地确定目标位置。此外,我们提出的数据增强方法很大程度上改善了目标检测的 AP 结果。

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

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

C++的面向对象学习(7):面向对象编程的三大特性之:继承

文章目录 前言一、继承:继承的类除了拥有上一级类的共性,也拥有自己的特性。二、继承方式:公有继承(public inheritance)、私有继承(private inheritance)和保护继承(protected inhe…

代码回滚(git reset)后push失败的解决方法

问题描述 代码本地回滚之后(即 git reset 到之前的某个历史节点),push上去失败,并报出以下错误信息 ! [rejected] master -> master (non-fast-forward) error: failed to push some refs to gitgithub.com:PisecesPeng/useg…

跨境电商迎来综合竞争力比拼时代 五大趋势解读跨境2024

过去几年,跨境电商成为外贸出口增长的一大亮点,随着年底国务院办公厅《关于加快内外贸一体化发展的若干措施》的发布,跨境电商在促进经济发展、助力内外贸一体化发展方面的价值更加凸显。 这是跨境电商变化最快的时代,也是跨境电…

Java核心知识点1-java和c++区别、隐式和显示类型转换

java和c区别 java通过虚拟机实现跨平台特性,但c依赖于特定的平台。java没有指针,它的引用可以理解为安全指针,而c和c一样具有指针。java支持自动垃圾回收,而c需要手动回收。java不支持多重继承,只能通过实现多个接口来…

音频播放软件Foobar2000 mac特点介绍

Foobar2000 mac是一款高度可定制的音频播放器,适用于Windows平台。它支持各种音频格式,包括MP3、FLAC、AAC、WMA等,同时也支持各种音频插件和效果器,可以提供更好的音质和用户体验。 Foobar2000 mac软件特点 1. 高度可定制&#…

探索效率与可扩展性:MinIO图片服 VS FastDFS图片服

目录 1、前言 2、背景知识 2.1 Minio图片服的概述 2.2 FastDFS图片服的概述 3、性能比较 3.1 存储性能比较 3.1.1 对比上传速度和下载速度 3.1.2 比较两者的读写性能 3.2 负载均衡性能比较 4、可扩展性比较 4.1 横向扩展性性能比较 4.2 纵向扩展性性能比较 5、结语…

大模型微调LoRA训练与原理

1.什么是LoRA? LoRA的全称是LOW-RANK-ADAPTATION。是一种实现迁移学习的技术手段。 2. 矩阵的秩? 秩是一个向量空间的基向量的个数。例如:二维平面坐标系存在两个基向量,平面上任意的一个向量都可以使用这两个基向量进行线性表示…

Vue模板编译

Vue模板编译 Vue生命周期中,在初始化阶段各项工作做完之后调用了vm.$mount方法,该方法的调用标志着初始化阶段的结束和进入下一个阶段,从官方文档给出的生命周期流程图中可以看到,下一个阶段就进入了模板编译阶段(created和befor…

Java集合/泛型篇----第一篇

系列文章目录 文章目录 系列文章目录前言一、ArrayList和linkedList的区别二、HashMap和HashTable的区别三、Collection包结构,与Collections的区别四、泛型常用特点前言 前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到网站…

【网络安全 | XCTF】simple_transfer

考察kali基本工具的使用 方法一 打开文件如图: 存在较多协议,将协议分级: 可以看到DLEP协议占比最大: 将其作为过滤器应用: 搜索DLEP: 并没有有利信息,但观察到多数数据包损坏: 执行…

湘潭大学-2023年下学期-c语言-作业0x0a-综合1

A 求最小公倍数 #include<stdio.h>int gcd(int a,int b) {return b>0?gcd(b,a%b):a; }int main() {int a,b;while(~scanf("%d%d",&a,&b)){if(a0&&b0) break;printf("%d\n",a*b/gcd(a,b));}return 0; }记住最大公约数的函数&…

Java进阶(第八期): Java中递归的的使用和递归解决一些算法问题 Java中的异常机制、异常的处理逻辑 自定义异常

文章目录 一、递归1.1 递归的介绍1.2 递归的简单练习1.3 图解递归执行流程&#xff1a;1.4 使用递归完成悲波那契数列1.5 猴子吃桃子问题 二、异常三 、异常的处理逻辑3.1 try catch 捕获异常3.2 throws抛出异常 四、自定义异常 Java进阶&#xff08;第八期&#xff09; 一、递…