LCCL网络:相互指导博弈来提升目标检测精度(附源代码)

发布时间 - 2025-07-17 00:00:00    点击率:

论文地址:https://www./link/233e90f3f8794e85bc244be259a99724

源代码地址:https://www./link/1fe165377d4907f0ea45a5397520b85c

计算机视觉研究院专栏

作者:Edison_G

一、背景

监督学习下的目标检测是计算机视觉领域中的一项关键任务,旨在通过边界框定位目标并将每个目标分配到预定义的类别中。深度学习方法在这一领域占据主导地位,近期的方法多基于Anchor机制。Anchor是在整个图像上均匀分布的不同大小和纵横比的预定义参考框,它们通过将目标检测问题转换为基于Anchor的边界框回归和分类问题,帮助网络处理目标尺寸和形状的变化。大多数先进的基于Anchor的目标检测器使用预定义的Anchor boxes与GT框(简称IoU-anchor)之间的交并比(IoU)来将样本Anchor分配给目标(正样本Anchor)或背景(负样本Anchor)。然后,使用这些分配的Anchors来最小化训练期间的边界框回归和分类损失。

Anchor A和Anchor B与GT框具有相同的IoU,但包含不同的视觉语义信息。图中虚线框为真实情况标注。

基于深度学习的目标检测涉及两个子任务:实例定位和分类。它们分别预测图像上的“位置”和“是什么”目标。在训练阶段,这两个任务通过梯度下降联合优化,但静态Anchor匹配策略并未明确受益于这两个任务的联合解决方案,这可能导致任务错位问题,即在评估阶段,模型可能会生成分类正确但定位不精确的边界框预测,以及定位精确但分类错误的预测。这些预测显著降低了整体检测质量。

二、前言

为了克服基于IoU-anchor策略的这两个局限性,研究者提出了一种新的自适应Anchor匹配准则,通过定位和分类任务的相互指导,动态分配训练Anchor样本以优化分类,反之亦然。特别是,将定位良好的Anchor限制为也分类良好(定位到分类),以及那些分类良好的Anchor也定位良好(分类到定位)。这些策略导致了基于内容/上下文的Anchor匹配,并避免了任务错位问题。尽管所提出的策略非常简单,但在PASCAL VOC和MS COCO数据集上,尤其是在严格的指标(如AP75)上,Mutual Guidance与不同深度学习架构的传统静态策略相比,带来了持续的平均精度(AP)提升。

新方法有望在需要精确实例定位的应用中更有效,例如自动驾驶、机器人、户外视频监控等。

三、新框架

传统的Anchor通常预定义了一组Anchor的纵横比,在实际的滑窗训练过程中,首先使用二分类模型判断这些Anchor的框内是否有物体,并根据设定的阈值将样本标注为positive或negative或ignored,然后进行边界框回归以进行调整,最后进行多分类并再次调整位置。

这里作者将预定义的Anchor和GT的IoU称为IoU-anchor,IoU-anchor大于50%的作为positive,小于40%的作为negative,其余作为ignored samples。如果没有Anchor的大于50%,则选取IoU最大的作为positive。如下图所示:

定位到分类(Localize to Classify)动态调整分类方法中正负样本的阈值。由于随着训练进行,正样本数量增加(因为二分类模型能力逐渐增强,但阈值未变),作者认为这会导致训练不稳定。

因此,作者提出将分类模型的分类能力纳入阈值设置的考量范围,以动态设置阈值:在根据IoU-regressed标注确定正负样本时,不再直接采用固定阈值,而是根据IoU-anchor中的正样本数量n来选择IoU-regressed的前n个样本标注为positive,其余的negative和ignored同理。

这种策略能够随着定位能力的提高而提高,同时也保持了训练过程中正负样本分配的一致性!

分类到定位(Classify to localize)在分类早期,模型处于初始状态,大多数分类的结果都接近于0,存在类似于推荐系统的冷启动问题,同时也可能导致训练不稳定,因此研究者定义了一个Classify to localize策略来避免这种问题。

首先,作者定义了一个IoU-amplified来替换传统的IoU-regressed,其表达式如下:

其中σ是用于调整的增强系数超参数,p是分类得分。此外,这一部分也采用了类似于前面定位到分类部分动态阈值设置的策略来设置这里的正样本阈值。

显然,初始时与GT的IoU较大的anchor box置信度通常更高,被选中的概率也更高;当IoU相同时,置信度p较高的anchor得到的IOUamplified也更大。上图的第四列是直接预测的置信度,第五列是amplified之后的score。可以发现amplified后的结果与IoU和p都有关。

IoU-amplified总是高于IoU-anchor,并且amplification与预测的Classif分数成正比。特别是σ越小,amplification越强(注意σ要大于1),σ变大时就消失。

通过这种交互作用,训练过程能够让回归好但分类差的Anchor尽可能地提升分类精度,同样让分类好但回归差的Anchor尽可能地提升回归精度,从而在一定程度上解决了task-misalignment问题。

四、实验及可视化

训练阶段标签分配差异的可视化(图像大小设置为320×320像素)。红色、黄色和绿色Anchor框分别是由基于IoU-anchor、Localize to Classify和Classify to Localize分配的正样本Anchor。

© THE END

转载请联系本公众号获得授权


# git  # access  # red  # 架构  # github  # https  # 这两个  # 是在  # 更高  # 不稳定  # 类似于  # 过程中  # 这一  # 是由  # 更大  # 但在 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251813 】 【 AI营销90571


相关推荐: 百度输入法ai面板怎么关 百度输入法ai面板隐藏技巧  Laravel Telescope怎么调试_使用Laravel Telescope进行应用监控与调试  ChatGPT常用指令模板大全 新手快速上手的万能Prompt合集  Laravel Eloquent性能优化技巧_Laravel N+1查询问题解决  nginx修改上传文件大小限制的方法  ChatGPT怎么生成Excel公式_ChatGPT公式生成方法【指南】  如何在腾讯云免费申请建站?  Laravel如何实现邮箱地址验证功能_Laravel邮件验证流程与配置  轻松掌握MySQL函数中的last_insert_id()  Laravel数据库迁移怎么用_Laravel Migration管理数据库结构的正确姿势  如何在企业微信快速生成手机电脑官网?  微信小程序 闭包写法详细介绍  如何在沈阳梯子盘古建站优化SEO排名与功能模块?  如何在阿里云香港服务器快速搭建网站?  laravel怎么为API路由添加签名中间件保护_laravel API路由签名中间件保护方法  HTML5打空格有哪些误区_新手常犯的空格使用错误【技巧】  如何在云主机上快速搭建网站?  如何自定义建站之星网站的导航菜单样式?  手机软键盘弹出时影响布局的解决方法  如何制作新型网站程序文件,新型止水鱼鳞网要拆除吗?  Python文件异常处理策略_健壮性说明【指导】  七夕网站制作视频,七夕大促活动怎么报名?  Laravel如何设置定时任务(Cron Job)_Laravel调度器与任务计划配置  宙斯浏览器视频悬浮窗怎么开启 边看视频边操作其他应用教程  微信公众帐号开发教程之图文消息全攻略  购物网站制作费用多少,开办网上购物网站,需要办理哪些手续?  如何用VPS主机快速搭建个人网站?  Laravel怎么处理异常_Laravel自定义异常处理与错误页面教程  Laravel如何实现数据库事务?(DB Facade示例)  如何有效防御Web建站篡改攻击?  html文件怎么打开证书错误_https协议的html打开提示不安全【指南】  如何在自有机房高效搭建专业网站?  Python图片处理进阶教程_Pillow滤镜与图像增强  免费网站制作appp,免费制作app哪个平台好?  Android仿QQ列表左滑删除操作  微信小程序 require机制详解及实例代码  如何在七牛云存储上搭建网站并设置自定义域名?  如何在阿里云服务器自主搭建网站?  Laravel集合Collection怎么用_Laravel集合常用函数详解  如何在IIS中配置站点IP、端口及主机头?  Laravel怎么使用Intervention Image库处理图片上传和缩放  香港服务器网站卡顿?如何解决网络延迟与负载问题?  企业在线网站设计制作流程,想建设一个属于自己的企业网站,该如何去做?  浏览器如何快速切换搜索引擎_在地址栏使用不同搜索引擎【搜索】  Android自定义listview布局实现上拉加载下拉刷新功能  原生JS获取元素集合的子元素宽度实例  JavaScript模板引擎Template.js使用详解  免费制作统计图的网站有哪些,如何看待现如今年轻人买房难的情况?  如何快速使用云服务器搭建个人网站?  如何在阿里云部署织梦网站?