R-YOLO
Abstract
提出了一个框架,名为R-YOLO,不需要在恶劣天气下进行注释。考虑到正常天气图像和不利天气图像之间的分布差距,我们的框架由图像翻译网络(QTNet)和特征校准网络(FCNet)组成,用于逐步使正常天气域适应不利天气域。具体来说,我们使用简单而有效的QTNet来生成图像,这些图像继承了正常天气域中的注释,并对两个域之间的间隙进行插值。然后,在FCNet中,我们提出了两种基于对抗性学习的特征校准模块,以局部到全局的方式有效地对其两个领域中的特征表示。
Introduction
基于UDA的方法将知识从源域转移到目标域,以弥补域差距,提高泛化能力。用于对象检测器的最先进的(SOTA)UDA方法主要依赖于对抗性学习来在全局级别和实例级别对齐源图像和目标图像的表示。然而,在一级物体探测器上使用上述方法的问题有两个:
- 全局级别的特征对齐容易发生负迁移,使得UDA模型甚至表现得比模型在源域上更差
- 其次,主要针对受益于区域建议网络的两级检测器设计了实例级特征自适应方法。
提出了一个R-YOLO网络,包含QTNet(图像翻译网络)和FCNet(特征对齐网络)来逐步减少两个域之间的差异。我们声称,作为预处理步骤,不需要在源域和目标域之间进行严格的翻译,我们只能将图像生成为两个域之间的插值,以指导对抗性学习。因此,我们设计了一个简单而有效的网络来学习残差图像,以在源域和目标域之间进行相互图像翻译。与现有的图像翻译/恢复方法相比,我们的QTNet有三个主要优势: - 它生成具有相同场景但位于不同域的跨域图像,有利于以下基于对抗性学习的特征对齐
- 它不需要对朦胧和雨天图像的先验知识,因此可以统一用于不利图像的翻译任务;
- 易于训练以避免基于GAN的方法的训练问题。
在FCNet中提出了两种对抗性学习模块: - 逐像素特征对齐模块(PFC)
- 全局特征对其模块(GFC)
PFC模块以像素方式对齐低级别特征,以增强前景对象和背景的跨域,这对于降低后续全局特征对齐中的负迁移风险非常重要。
GFC模块使用多尺度特征对抗性训练来全局消除不同域之间特征图上的多样性,并增强对象类别对齐。
主要贡献如下:
- 我们提出了一个统一的一阶段目标检测器训练框架,即R-YOLO,在恶劣天气下,不使用不利领域注释。R-YOLO包含QTNet和FCNet适用于所有YOLO系列检测器,且有着相同的推理速度。
- 设计了一种简单且有效的网络来相互转化正常图像和不利图像以生成两个域之间的插值。我们还建议使用两种对抗性学习模块来逐步减少特征水平上的领域差异。
Method
我们有两个主要目标来提高YOLO在恶劣环境下的性能:
- 在不引入基于GAN的方法的训练问题的情况下,设计一个简单而有效的图像翻译网络来进行数据扩充
- 提出一种为一级检测器量身定制的特征对准网络,避免触发负转移
QTNet
我们的QTNet的目的是设计一个适用于朦胧和雨天图像的统一网络,因此在图像翻译过程中无法探索任何特定于天气的信息或先验信息。受残差图像最近在图像恢复和增强任务中的成功启发,如图像去噪[45]、[46]、[47]和图像阴影去除[48]、[49]、[50],我们设计了带有残差模块的QTNet,以直接缩小从输入到输出的映射范围,使学习过程更容易。我们使用简单的自动编码器作为主干,并添加跳过连接路径,将多层编码器特征融合到解码器特征中。为了改进网络训练过程,我们在自动编码器的输入和输出之间添加了跳跃连接,使其能够学习负残差映射。
具体来说,使用源域和目标域图像XS、XT,我们可以获得合成目标图像,XST。然后,QTNet可以训练成对的XS、XST图像,如果XS被用作输入图像,则XST被用作GT图像,反之亦然。
我们使用多尺度重建损失来监督图像翻译后的语义保存网络训练,可以定义如下:
xi是输入图像,QTNet(xi)是输出图像,xiG是xi对应的GT图像。d是损失强制执行的总层数,λi是对应每层的权重参数。注意QTNet训练的都是合成图像,一旦经过训练,就可以被用来翻译图像。我们还使用感知损失来生成逼真图像。具体来说,给定QTNet的输出图像及其相应的GT图像,我们使用预训练的网络,例如在ImageNet上预训练的VGG,来提取上述两幅图像的特征。然后,我们使用这两个特征之间的MSE损失来评估生成图像的真实性,从而感知损失Lp可以指导高真实性图像生成的QTNet训练,可以定义如下:
训练QTNet的损失如下:
生成的图像的重要性有三个方面,这有利于以下特征自适应步骤:
- 我们可以在目标域中获得大量的注释样本
- 生成的图像可以看作是源域和目标域之间的插值样本,它驱动源域决策边界适应目标域
- 对于大量的跨域图像(具有相同场景但在不同域中的图像),我们可以在不考虑语义不一致问题的情况下对齐两个域中的特征,从而避免负迁移。
FCNet(特征对齐网络)
得益于生成的跨域图像,我们在FCNet中进行了基于对抗性学习的特征对齐,其关键是学习鉴别器无法识别的常见特征分布。为此,我们提出了两种特征校准模块,PFC模块和GFC模块,以消除两个领域在特征水平上的差异。FCNet建立在YOLO主干上,而不改变YOLO网络结构。我们唯一做的事就是添加两种鉴别器和对应损失函数来限制特征学习。
PFC
我们发现,与正常天气相比,恶劣天气下的物体细节和背景之间存在巨大差异。具体来说,悬浮的微小颗粒或快速下落的雨滴首先影响前景对象和背景的颜色、边缘和纹理等低级特征,然后导致对象的草图和语义等高级特征的差异。因此,有必要且相对容易地将每个像素的低水平特征校准为对不利天气具有鲁棒性的共同分布。
Dp是像素特征鉴别器,在本文中是简单的Conv+sigmoid。Gp(xi)j表示从Gp(xi)获得的特征图中的第j个位置的特征向量,H和W是Gp(xi)的高度和宽度。对于QTNet生成的跨域图像,可以严格保证源图像和目标图像之间的语义一致性。然后,在低级别特征图上实施PFC损失可以以像素方式对齐低级别特征,以有效地增强关于前景对象和背景细节的跨域特征。然后,在低级别特征图上实施PFC损失可以以像素方式对齐低级别特征,以有效地增强关于前景对象和背景细节的跨域特征。
GFC Module
一旦像素级低级别特征被校准,就更容易通过多尺度GFC模块学习图像级对齐的特征表示,例如图像风格、全局亮度和暗度。根据YOLO结构(以YOLOv3为例),其中多尺度特征图被提取并发送到用于收集不同尺度特征图的颈部结构,我们在多尺度特征上强制执行GFC模块。多尺度GFC损失定义如下:
相关文章:

R-YOLO
Abstract 提出了一个框架,名为R-YOLO,不需要在恶劣天气下进行注释。考虑到正常天气图像和不利天气图像之间的分布差距,我们的框架由图像翻译网络(QTNet)和特征校准网络(FCNet)组成,…...

Qt无边框窗口拖拽和阴影
先看下效果: 说明 自定义窗口控件的无边框,窗口事件由于没有系统自带边框,无法实现拖拽拉伸等事件的处理,一种方法就是重新重写主窗口的鼠标事件,一种时通过nativeEvent事件处理。重写事件相对繁琐,我们这里推荐nativeEvent处理。注意后续我们在做win平…...
ES6 Proxy详解
文章目录 概述Proxy 实例的方法get(target, propKey, receiver)set(target, propKey, value, receiver)has(target, propKey)deleteProperty(target, propKey)defineProperty(target, propKey, propDesc)getOwnPropertyDescriptor(target, propKey)getPrototypeOf(target)setPr…...

Prompt Learning 的几个重点paper
Prefix Tuning: Prefix-Tuning: Optimizing Continuous Prompts for Generation 在输入token之前构造一段任务相关的virtual tokens作为Prefix,然后训练的时候只更新Prefix部分的参数,PLM中的其他参数固定。针对自回归架构模型:在句子前面添…...

中科大计网学习记录笔记(三):接入网和物理媒体
前言: 学习视频:中科大郑烇、杨坚全套《计算机网络(自顶向下方法 第7版,James F.Kurose,Keith W.Ross)》课程 该视频是B站非常著名的计网学习视频,但相信很多朋友和我一样在听完前面的部分发现信…...

设计模式:工厂方法模式
工厂模式属于创建型模式,也被称为多态工厂模式,它在创建对象时提供了一种封装机制,将实际创建对象的代码与使用代码分离,有子类决定要实例化的产品是哪一个,把产品的实例化推迟到子类。 使用场景 重复代码 : 创建对象…...
HTML 相关知识点记录
<div> </div> DIV标签详细介绍-CSDN博客 div 是 division 的简写,division 意为分割、区域、分组。比方说,当你将一系列的链接组合在一起,就形成了文档的一个 division。 <p>标签:定义段落...

系统架构设计师考试大纲2023
一、 考试方式(机考) 考试采取科目连考、 分批次考试的方式, 连考的第一个科目作答结束交卷完成后自动进 入第二个科目, 第一个科目节余的时长可为第二个科目使用。 高级资格: 综合知识科目考试时长 150 分钟ÿ…...

sqli.labs靶场(第18~22关)
18、第十八关 经过测试发现User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:122.0) Gecko/20100101 Firefox/122.0加引号报错 这里我们闭合一下试试 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:122.0) Gecko/20100101 Firefox/122.0,127.0.0.1,adm…...

【tensorflow 版本 keras版本】
#. 安装tensorflow and keras, 总是遇到版本无法匹配的问题。 安装之前先查表 https://master--floydhub-docs.netlify.app/guides/environments/ 1.先确定你的python version 2.再根据下面表,确定安装的tesorflow, keras...

嵌入式学习第十六天
制作俄罗斯方块小游戏(一) 分析: printf函数高级用法 \033[:表示转义序列的开始 m:表示转义序列的结束 0:重置所有属性 1:设置粗体或高亮 30-37:设置字体色 30: 黑 31: 红 32:…...
Java过滤器拦截器的区别和实现
一、什么是过滤器与拦截器? 1.2 拦截器(Interceptor) java过滤器指的是在java中起到过滤的作用的一个方法。可以在一个请求到达servlet之前,将其截取进行逻辑判断,然后决定是否放行到请求的servlet;也可以在…...

Android 12 系统开机动画
修改Android开机动画有两种方式 方式一、通过adb 命令来修改: 进入/system/media目录,将里面的 bootanimation.zip 文件pull出来,然后解压,替换part0和part1中的图片,并且根据图片大小修改文件 desc.txt 中的内容&…...

C++:异常体系
异常体系 异常1.C语言传统的处理错误的方式2.C异常概念3.异常的使用3.1异常的抛出和捕获3.2 异常的重新抛出3.3异常安全3.4 异常规范 4.C标准库的异常体系5.异常的优缺点 异常 1.C语言传统的处理错误的方式 终止程序,如assert,缺陷:用户难以…...
民事二审案件庭审应如何准备?
一、你要明确审理范围,固定上诉请求 首先,第二审人民法院围绕当事人的上诉请求进行审理。 其次,在第二审程序中,原审原告增加独立的诉讼请求或者原审被告提出反诉的,第二审人民法院可以根据当事人自愿的原则就新增加的…...
WebRTC系列-H264视频帧组包(视频花屏问题)
文章目录 工具函数是否满足组帧条件函数PotentialNewFrame更新丢失包记录 UpdateMissingPackets重要属性1. InsertPacket2. FindFramesWebRTC在弱网环境下传输较大的视频数据,比如:屏幕共享数据;会偶发的出现黑屏的问题;也就是说当视频的码率比较大且视频的分辨率比较高的时…...

Common Mistakes in German
Comman Mistakes in German 1, Haus oder Hause2, ja nein oder doch(1) Positive Fragen(2) Negative Fragen 1, Haus oder Hause 2, ja nein oder doch (1) Positive Fragen (2) Negative Fragen kein / nicht P3...

Java基础数据结构之反射
一.定义 Java的反射机制是在运行状态中的,对于任意一个类都能知道这个类的所有属性和方法;对于任意一个对象,都能够调用它的任意方法及属性。既然能拿到,我们就可以修改部分类型信息。这种动态获取信息以及动态调用对象方法的功能…...

【实战系列----消息队列 数据缓存】rabbitmq 消息队列 搭建和应用
线上运行图,更新不算最新版,但可以使用修改线程等补丁功能,建议使用新版本。 远程服务器配置图: 这个可以更具体情况,因为是缓存队列理所当然 内存越大越好,至于核心4核以上足够使用。4核心一样跑 这里主要是需要配置服…...

【云原生kubernetes系列】---亲和与反亲和
1、亲和和反亲和 node的亲和性和反亲和性pod的亲和性和反亲和性 1.1node的亲和和反亲和 1.1.1ndoeSelector(node标签亲和) #查看node的标签 rootk8s-master1:~# kubectl get nodes --show-labels #给node节点添加标签 rootk8s-master1:~# kubectl la…...

网络编程(Modbus进阶)
思维导图 Modbus RTU(先学一点理论) 概念 Modbus RTU 是工业自动化领域 最广泛应用的串行通信协议,由 Modicon 公司(现施耐德电气)于 1979 年推出。它以 高效率、强健性、易实现的特点成为工业控制系统的通信标准。 包…...
web vue 项目 Docker化部署
Web 项目 Docker 化部署详细教程 目录 Web 项目 Docker 化部署概述Dockerfile 详解 构建阶段生产阶段 构建和运行 Docker 镜像 1. Web 项目 Docker 化部署概述 Docker 化部署的主要步骤分为以下几个阶段: 构建阶段(Build Stage):…...

idea大量爆红问题解决
问题描述 在学习和工作中,idea是程序员不可缺少的一个工具,但是突然在有些时候就会出现大量爆红的问题,发现无法跳转,无论是关机重启或者是替换root都无法解决 就是如上所展示的问题,但是程序依然可以启动。 问题解决…...

【Python】 -- 趣味代码 - 小恐龙游戏
文章目录 文章目录 00 小恐龙游戏程序设计框架代码结构和功能游戏流程总结01 小恐龙游戏程序设计02 百度网盘地址00 小恐龙游戏程序设计框架 这段代码是一个基于 Pygame 的简易跑酷游戏的完整实现,玩家控制一个角色(龙)躲避障碍物(仙人掌和乌鸦)。以下是代码的详细介绍:…...
在Ubuntu中设置开机自动运行(sudo)指令的指南
在Ubuntu系统中,有时需要在系统启动时自动执行某些命令,特别是需要 sudo权限的指令。为了实现这一功能,可以使用多种方法,包括编写Systemd服务、配置 rc.local文件或使用 cron任务计划。本文将详细介绍这些方法,并提供…...
汇编常见指令
汇编常见指令 一、数据传送指令 指令功能示例说明MOV数据传送MOV EAX, 10将立即数 10 送入 EAXMOV [EBX], EAX将 EAX 值存入 EBX 指向的内存LEA加载有效地址LEA EAX, [EBX4]将 EBX4 的地址存入 EAX(不访问内存)XCHG交换数据XCHG EAX, EBX交换 EAX 和 EB…...

k8s业务程序联调工具-KtConnect
概述 原理 工具作用是建立了一个从本地到集群的单向VPN,根据VPN原理,打通两个内网必然需要借助一个公共中继节点,ktconnect工具巧妙的利用k8s原生的portforward能力,简化了建立连接的过程,apiserver间接起到了中继节…...

全志A40i android7.1 调试信息打印串口由uart0改为uart3
一,概述 1. 目的 将调试信息打印串口由uart0改为uart3。 2. 版本信息 Uboot版本:2014.07; Kernel版本:Linux-3.10; 二,Uboot 1. sys_config.fex改动 使能uart3(TX:PH00 RX:PH01),并让boo…...

视频行为标注工具BehaviLabel(源码+使用介绍+Windows.Exe版本)
前言: 最近在做行为检测相关的模型,用的是时空图卷积网络(STGCN),但原有kinetic-400数据集数据质量较低,需要进行细粒度的标注,同时粗略搜了下已有开源工具基本都集中于图像分割这块,…...
MySQL 8.0 事务全面讲解
以下是一个结合两次回答的 MySQL 8.0 事务全面讲解,涵盖了事务的核心概念、操作示例、失败回滚、隔离级别、事务性 DDL 和 XA 事务等内容,并修正了查看隔离级别的命令。 MySQL 8.0 事务全面讲解 一、事务的核心概念(ACID) 事务是…...