论文速读:YOLO-G,用于跨域目标检测的改进YOLO(Plos One 2023)

news2024/10/26 0:40:37

原文标题:YOLO-G: Improved YOLO for cross-domain object detection

中文标题:YOLO-G:用于跨域目标检测的改进YOLO

论文地址: 百度网盘 请输入提取码  提取码:z8h7

代码地址: GitHub - airy975924806/yolo-G

1Abstract

跨域目标检测是智能检测模型研究中的一个关键问题。与许多基于双阶段检测模型的改进算法不同,我们尝试了另一种方法。本文引入了一种简单高效的单阶段模型,综合考虑了推理效率和检测精度,扩大了承担跨域目标检测问题的范围。我们将这种基于梯度反转层的模型命名为YOLO-G,大大提高了跨域场景下的目标检测精度。具体来说,我们在主干之后添加了一个特征对齐分支,其中附加了梯度反转层和分类器。计算量只增加了一点点,性能得到了更高的提高。通过若干实验表明,与大多数最先进的(SOTA)算法相比,所提出的模型实现了更好的平均精度(mAP)。此外,还对4个部件进行了消融实验,以验证模型的可靠性。

2、Introduction

2.1、目标检测面临的挑战

深度卷积模型显著提高了目标检测的精度。然而,这些模型受到训练数据的严重约束。跨域目标检测要求模型在完全标注的训练集中完成训练过程,然后应用于来自不同域的验证。由于这样的领域差距,可能会出现糟糕的结果甚至退化。在现实世界中,这样的差异,比如照明条件、天气条件、视角、设备差异等是很常见的。此外,提供无限的训练数据是不可能的。也就是说,收集更多的数据并不是提高模型能力和增强模型鲁棒性的可靠方法。

2.2、针对跨域目标检测的方法

2.2.1、无监督方法

针对有限标记训练数据下的跨域目标检测问题,DAF首次关注到这一问题,设计了一种基于Faster R-CNN的改进双阶段检测模型,采用无监督训练的方式提升其在变化天气条件下的检测能力。随后,有人采用了添加了指导分支、融合生成对抗模型等方法,获得了更好的能力。

2.2.2、半监督方法

也有人采用了半监督的方法,如调整训练策略,增加知识蒸馏机制,或者引入迭代训练方式,这些都是为了逐步提高模型的跨域检测能力。然而这些方法大大增加了计算预算,延长了训练时间。

2.2.3、基于YOLO的跨域检测

与双阶段检测模型相比,YOLO在速度、精度、应用等方面更具优势。目前基于YOLO的跨域检测模型正在迅速发展。聚焦跨域目标检测问题,本文以YOLOv5-L模型为基线;特别是,我们采用了双阶段模型中广泛使用的特征对齐思想,并添加无监督对抗训练分支来提高模型的自适应能力;通过采用这样一个简单而高效的分支,该模型获得了全新的能力。具体来说,为了实现自适应特征对齐并减少不同图像之间的域差距,我们将对抗性训练机制引入模型参数更新过程。为了减轻负担,我们使用基于全卷积网络和全局平均最大池化的朴素三层分类器,并进行梯度反向操作。与密集线性层相比,YOLO-G只是稍微增加了计算量,但精度大大提高。为了在跨域目标检测任务中验证所提出的模型,本文在6个基准集下进行了大量的实验;结果表明,YOLO-G比一系列半监督和双阶段SOTA模型具有更好的检测精度。

2.3、本文贡献

1)对于跨域目标检测任务,我们通过综合实验验证了YOLO模型在跨域目标检测任务中的可用性。本文消融实验表明,在仅源条件下,YOLOV5-L模型可以与许多SOTA算法进行比较。

2)YOLO-G模型是基于YOLOV5-L设计的。在基线模型中加入了一个简洁高效的无监督对抗训练分支。扩大了跨领域模型设计的范围,改变了以往仅限于双阶段模型的情况。

3)我们进行了定性和定量实验,并在6个跨域基准测试中比较了10种算法。为了充分说明模型的可信度,还进行了2个方面4和个因素的消融实验。实验结果表明,该模型确实取得了较好的检测效果。

3、Related work

3.1、Object detection

目标检测模型作为计算机视觉研究的重要内容,近年来在深度学习技术的支持下得到了迅速发展。其中,单阶段检测模型以 YOLO 和 SSD 为代表。特别是YOLO模型已经逐渐发展成为一个推理速度快、精度准确、部署简单的丰富系列。以Mask R-CNN和Fast R-CNN为代表的双阶段检测模型在学术研究中占有重要地位,因为模型采用了分离ROI区域生成和分类判别的过程,使得模型具有较高的可塑性。由于采用了更精细的ROI搜索策略,两阶段模型在相同条件下具有更高的检测精度。 目前,随着transformer的应用,基于transformer的更大参数规模的目标检测模型大放异彩,显示出良好的发展前景。在实际部署场景中,YOLO系列模型具有更好的兼容性。因此,综合考虑任务需求、应用场景和推理速度,本文选择YOLOv5-L模型作为基准,并对其进行改进,以适应跨域目标检测任务。

3.2、Cross-domain

DAF创造性地利用双阶段检测模型解决了跨域目标检测问题,提出了一种基于全局特征对齐和目标特征对齐的处理方法。受其启发,后续的大多数研究都基于双阶段检测模型。少数研究,SWDA提出使用增强的局部特征和全局特征作为辅助特征对齐,GPA设计了基于类特征对齐的检测框架,ATF和PA-ATF尝试使用多分支监督训练来提高跨域目标检测能力。随着相关研究内容的不断深入,已经有了基于单阶段检测模型的尝试,如 EPMDA 将FCOS 模块集成到YOLO主干中,以提高其在跨域图像中提取目标特征的能力,SSDA-YOLO 在基于YOLO的跨域目标检测模型中加入 CUT 和知识蒸馏机制,也是基于YOLO。本文以单阶段检测模型为基准,探索跨域目标检测任务。通过本文的实验研究表明,借助有限计算量的功能分支,YOLO-G提高了YOLO在跨域目标检测任务中的能力。并且在某些任务中,结果远高于一些双阶段检测模型。

3.3、Cross-domain detection

跨域检测任务在发展过程中演化出全监督、半监督、无监督等多种路径。

1全监督方法是指构建目标领域的全标注数据;该方法通过收集和标注数据增强,达到提高泛化能力的目的,然而这会带来巨大的劳动力。在实际应用场景中,无法收集所有可能场景的数据,因此这种方法并不可取。

2半监督方法提出使用部分标记的数据来指导训练过程;他们主要将训练过程分为多个阶段。首先,训练具有完全标记的源域数据的初始模型,然后通过预训练的模型创建目标域数据上的伪标签。设置置信度阈值后,迭代地将检测到的充分准备的目标域数据添加到训练集中。逐步引导模型提高泛化能力,但该方法受到初始模型检测能力的限制。很多情况下,初始模型很难提供足够有效的伪标签,导致迭代过程难以继续下去。

3无监督方法利用深度学习模型本身强大的自学习能力,通过设置简单的边界条件甚至提供属于目标域的未标记数据,模型可以独立学习识别目标的关键特征,在实现上更加简洁高效。

受这些原理的启发,本文在YOLOV5-L模型的基础上,通过增加无监督特征对齐函数分支,提出了一种简单、准确的跨域目标检测模型。

4、Discussion

YOLO-G在跨域目标检测方面的能力大大增强。但也存在一个严重的问题,即YOLO-G在考虑小物体时表现不佳。YOLO是一个基于锚点的模型,因此要确定一个适合所有目标的锚点是非常困难的,由于不同目标的大小和形状各异,为所有目标选择一个“最适合”的锚点是一个挑战。有些目标可能与预定义的锚点形状匹配得很好,而其他目标可能匹配得不好。特别是当数据集中的小目标较少时,如果没有焦损失函数的帮助,模型可能会偏向于检测那些较大的、容易被检测到的目标。焦点损失(focal loss)是一种损失函数,它专门为解决类别不平衡问题而设计,特别是在目标检测任务中;它通过减少对容易分类样本的关注,增加对难以分类样本的关注,来鼓励模型关注那些难以检测的目标(如小目标);这有助于模型更好地学习检测所有大小的目标。总之,在实际应用中还有很多需要进一步探索的地方。

5、Conclusion

为了缓解跨域目标检测问题,本文分析了主流算法模型的特点,在YOLOV5的基础上提出了一种简单高效的YOLO-G模型。通过引入特征对齐分支和对抗训练,提高了主干模型在提取目标特征方面的一致性,增强了模型的泛化性,实现了更好的跨域检测能力。我们还组织了9组跨域对比实验,本文提出的YOLO-G模型达到了超越一系列SOTA模型的精度,表明其在跨域目标检测任务中具有更好的应用前景。

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

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

相关文章

ArkUI自定义TabBar组件

在ArkUI中的Tabs,通过页签进行内容视图切换的容器组件,每个页签对应一个内容视图。其中内容是图TabContent作为Tabs的自组件,通过给TabContent设置tabBar属性来自定义导航栏样式。现在我们就根据UI设计的效果图来实现下图效果: 根…

打包方式-jar和war的区别

1、jar包 JAR包是类的归档文件,与平台无关的文件格式,其实jar包就是java的类进行编译生成的class文件进行打包的压缩包。 JAR以ZIP文件格式为基础,与ZIP不同的是,JAR不仅用于压缩和发布,还用于部署和封装库、组件和插…

数据结构 ——— 数组栈oj题:有效括号

目录 题目要求 代码实现 题目要求 给定一个只包括 (,),{,},[,] 的字符串 s ,判断字符串是否有效 有效字符串需满足: 左括号必须用相同类型的右括号闭合。 左括号必须以正确的顺序闭合。 每…

【p2p、分布式,区块链笔记 Blockchain】truffle001 以太坊开发框架truffle初步实践

以下是通过truffle框架将智能合约部署到Ganache的步骤 Truffle简介环境准备:智能合约 编写 & 编译部署合约本地服务器ganache配置网络配置部署合约: 运行Truffle迁移(部署):与智能合约交互: 以下是通过truffle框架将智能合约部署到Ganach…

kaggle在线训练深度学习模型

kaggle https://www.kaggle.com/ code 通过jupyter notebook上传代码,执行训练 dataset 支持手动上传本地资源文件到input /kaggle/input,dataset通过input访问,input目录是只读的 /kaggle/working,保存文件到working&#…

网页中的滚动穿透

滚动穿透的现象 在开发中我们可以观察到这么一种现象,当用户在屏幕上某个可滚动区域滚动时,如果滚动到当前区域滚动边界时会带动其他区域进行滚动,直观表现是在进行博客评论时,滑动textarea会带动博客一起滑动,另一种…

智能汽车制造:海康NVR管理平台/工具EasyNVR多品牌NVR管理工具/设备实现无插件视频监控直播方案

一、背景介绍 近年来,随着网络在我国的普及和深化发展,企业的信息化建设不断深入,各行各业都加快了信息网络平台的建设,大多数单位已经或者正在铺设企业内部的计算机局域网。与此同时,网络也成为先进的新兴应用提供了…

【C++】一文带你深入理解C++异常机制

⭐️个人主页:小羊 ⭐️所属专栏:C 很荣幸您能阅读我的文章,诚请评论指点,欢迎欢迎 ~ 目录 前言一、C语言处理错误的方式二、C异常三、异常的使用3.1 异常的抛出和捕获3.2 异常的重新抛出3.3 异常安全3.4 异常规范 四、自定义异…

NVR小程序接入平台/设备EasyNVR多品牌NVR管理工具/设备的多维拓展与灵活应用

在数字化安防时代,NVR批量管理软件/平台EasyNVR作为一种先进的视频监控系统设备,正逐步成为各个领域监控解决方案的首选。NVR批量管理软件/平台EasyNVR作为一款基于端-边-云一体化架构的国标视频融合云平台,凭借其部署简单轻量、功能多样、兼…

使用 pydub 的 AudioSegment 获取音频时长 - python 实现

通过使用 pydub 的 AudioSegment 获取音频时长,音频常用格式如 m4a,wav等。 安装 python 库: pip install pydub 获取 m4a 格式的音频时长代码如下,代码如下: #-*-coding:utf-8-*- # date:2024-10 # Author: DataBall - XIAN #…

sqli-labs靶场安装以及刷题记录-docker

sqli-labs靶场安装以及刷题记录-docker sqli-labs靶场安装-dockersqli-labs靶场刷题less-1 单引号less-2 数字型less-3 单引号括号less-4 双引号括号less-5 单引号布尔盲注less-6 双引号布尔盲注less-7 单引号加括号、输出到文件less-8 单引号布尔盲注less-9 单引号时间盲注les…

【移动应用开发】界面设计(二)实现水果列表页面

续上一篇博客 【移动应用开发】界面设计(一)实现登录页面-CSDN博客 目录 一、采用ViewBinding实现一个RecyclerView 1.1 在app/build.gradle中添加recyclerview依赖,并打开viewBinding (1)在app/build.gradle中添加…

基于Python+SQL Server2008实现(GUI)快递管理系统

快递业务管理系统的设计与实现 摘要: 着网络新零售的到来,传统物流在网购的洗礼下迅速蜕变,在这场以互联网为基础的时代变革中,哪家企业能率先转变其工作模式就能最先分得一杯羹,物流管理也不例外。传统的物流管理模式效率低下&a…

Git_GitLab

Git_GitLab 安装 服务器准备 安装包准备 编写安装脚本 初始化 GitLab 服务 启动 GitLab 服务 浏览器访问 GitLab GitLab 创建远程库 IDEA 集成 GitLab 安装 GitLab 插件 设置 GitLab 插件 安装 服务器准备 准备一个系统为 CentOS7 以上版本的服务器,使…

日常记录,使用springboot,vue2,easyexcel使实现字段的匹配导入

目前的需求是数据库字段固定,而excel的字段不固定,需要实现excel导入到一个数据库内。 首先是前端的字段匹配,显示数据库字段和表头字段 读取表头字段: 我这里实现的是监听器导入,需要新建一个listen类。 读Excel …

Docker 搭建mysql

拉取mysql镜像 docker pull mysql # 拉取镜像 [rooteason ~]# docker pull mysql Using default tag: latest latest: Pulling from library/mysql 72a69066d2fe: Pull complete 93619dbc5b36: Pull complete 99da31dd6142: Pull complete 626033c43d70: Pull complete 37d…

大数据治理平台建设规划方案(71页WORD)

随着信息化时代的到来,大数据已成为企业管理和决策的重要基础。然而,大数据的快速增长和复杂性给数据的管理和治理带来了巨大挑战。为了有效应对这些挑战,构建一个高效、稳定的大数据治理平台显得尤为重要。 文档介绍: 该平台旨在…

JS无限执行隔行变色

代码&#xff1a; <!DOCTYPE html> <html lang"zh-CN"> <head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, initial-scale1.0"><title>Document</title> <…

【算法优化】混合策略改进的蝴蝶优化算法

摘要 蝴蝶优化算法 (Butterfly Optimization Algorithm, BOA) 是一种新兴的智能优化算法&#xff0c;其灵感来自蝴蝶的觅食行为。本文基于经典BOA&#xff0c;通过引入混合策略进行改进&#xff0c;从而提高其在全局寻优和局部搜索中的性能。实验结果表明&#xff0c;改进的蝴…

混个1024勋章

一眨眼毕业工作已经一年了&#xff0c;偶然进了游戏公司成了一名初级游戏服务器开发。前两天总结的时候&#xff0c;本来以为自己这一年没学到多少东西&#xff0c;但是看看自己的博客其实也有在进步&#xff0c;虽然比不上博客里的众多大佬&#xff0c;但是回头看也算是自己的…