提高训练效率的实时目标检测(附源码)

2025-07-01 235231 电脑系统

作者:edison_g

简介

当前的目标检测器很少能在训练时间短、推理速度快和精度高之间取得平衡。为了解决这一问题,作者提出了Train-Friendly Network(TTFNet)。作者从light-head, single-stage, 和anchor-free设计入手,使得推理速度更快。接着,作者重点缩短了训练时间。

我们观察到,从注释框中编码更多的训练样本与增加批处理大小具有相似的效果,这有助于提高学习速率并加速训练过程。为此,作者介绍了一种利用高斯核对训练样本进行编码的新方法。此外,为了更好地利用信息,还设计了主动样本权重。在MSCOCO上的实验表明,TTFNet在平衡训练时间、推理速度和精度方面具有显著优势。它比之前的实时检测器减少了7倍以上的训练时间,同时保持了最先进的性能。此外,super-fast版本的TTFNet-18和TTFNet-53的训练时间分别是SSD300和YOLOv3的不到十分之一。

历史回顾与背景

目标检测器的精度、推理速度和训练时间等方面都得到了广泛关注和不断提高。然而,很少有工作能在这些方面取得良好的平衡。直观上,推理速度快的检测器应该有较短的训练时间。然而,事实上,大多数实时检测器比非实时检测器需要更长的训练时间。高精度检测器大致可以分为两种类型——它们的推理速度慢,且需要大量的训练时间。

第一类网络(Huang, L.; Yang, Y.; Deng, Y.; and Yu, Y. 2015. Densebox: Unifying landmark localization with end to end object detection.)通常依赖于heavy检测头或复杂的后处理。虽然这些设计有助于提高精度和快速收敛,但它们显著降低了推理速度。因此,这种类型的网络通常不适合实时应用。

为了加快推理速度,研究人员努力简化检测头和后处理,同时保持准确性(Zoph, B., and Le, Q. V. 2017. Neural architecture search with reinforcement learning.)。在最近的一项名为CenterNet的研究中,推理时间进一步缩短,几乎与主干网络消耗的时间相同。然而,所有这些网络不可避免地需要很长的训练时间。这是因为这些网络由于简化而难以训练,使得它们在很大程度上依赖于数据增强和较长的训练时间。例如,CenterNet需要在公共数据集MSCOCO上进行140个epochs的训练。相比之下,第一类网络通常只需要12个epochs。

动机

根据Linear Scaling Rule,可以通过增大batchsize来提高learning rate。然而,仔细分析SGD的公式,我们也可以通过增加高质量的正样本个数来达到同样的效果。也就是说,不仅可以增大n,也可以增大m。

回顾随机梯度下降(SGD)的公式,权重更新表达式可以描述为:

对于目标检测,图像x可以包含多个注释框,这些框将被编码到训练样本s∈Sx中。Mx=|Sx|表示图像x中所有框产生的样本数,因此上式可以表述为:

为了简化,假设mx对于小批量B中的每个图像x是相同的。关注个体训练样本s,上式可以改写为:

线性缩放规则是在经验中发现的,如果批处理大小乘以k,则学习速率应该乘以k,除非网络正在迅速变化,或者采用非常大的mini-batch批处理。也就是说,用小的mini-batch Bj和学习速率η执行k迭代基本上相当于用大的mini-batch ∪j∈[0,k)Bj和学习速率kη执行1迭代,只有当我们可以假设:

这个条件通常在大规模的真实世界数据下是满足的。

较大的学习速率不能帮助CenterNet更快地收敛,并且删除数据增强会导致性能变差。根据上面的结论,我认为这是因为CenterNet在训练过程中只在目标中心编码一个单一的回归样本。这种设计使得CenterNet在很大程度上依赖于数据增强和较长的训练时间,导致不友好的训练时间。

为了减少网络对数据增强的依赖,同时减少训练时间,我认为需要更好的编码回归样本的策略。在这一动机的指导下,作者提出新的方法,在ablation研究中进行更全面的实验可以进一步验证新方法的优越性。

新方法

TTFNet的体系结构如上图所示。在实验中使用ResNet和DarkNet作为主干网络。主干网络提取的特征被采样到原始图像的1/4分辨率,这是通过Modulated Deformable Convolution(MDCN)和上采样层实现的。在MDCN层之后是批归一化(BN)和ReLU。上采样的特征然后分别通过两个头部为不同的目标。

检测头在物体中心附近的位置产生高激活,而回归头直接预测从这些位置到box四面的距离。由于目标中心对应于特征映射处的局部最大值,因此可以在2D最大池的帮助下安全地抑制非最大值。然后利用局部最大值的位置来收集回归结果。

最后,可以得到检测结果。新提出的方法有效地使用了大中型目标中包含的注释信息,但对于包含很少信息的小目标,推广是有限的。为了在较短的训练计划中提高小目标的检测性能,添加了shortcut connections来引入高分辨率但低级别的特征。shortcut connections从主干的2级,3级和4级引入特征,每个连接由3×3卷积层实现。第二、第三和第四阶段的层数设置为3、2和1,除了shortcut connections中的最后一层外,ReLU遵循在每个层。

与CenterNet相比,主要在以下两方面进行了改进:

center localization

对于Center点的位置回归,两个方法都用到了高斯核来增加正样本的数量,也都用到了Focal Loss。但是CenterNet和CornerNet一样,高斯核里的参数sigema只和bbox的面积有关,没有充分考虑bbox的纵横比,而TFFNet为长和宽分别设置了sigema,从而更加合适。

size regression

这部分才是本次作者提出的重点,也是增加高质量样本的实际做法。CenterNet只把heatmap上Object的Center点以及相邻的4个点作为正样本进行物体的大小回归监督,并且只回归bbox的w和h。

而TFFNet继续采取高斯核的方式增加正样本的个数,同时每个正样本回归对应点到bbox四个边的距离。

实验

不同核结果

在shortcut connections中使用不同设置时,速度-准确性权衡如下

与其他性能比较

TTFNet vs. CenterNet

可视化

以上就是提高训练效率的实时目标检测(附源码)的详细内容,更多请关注比你酷【www.biniku.com】。

观涛云信怎么查看实时的短信到达率

观涛云信不支持短信到达率监控,因其仅为终端IM工具,无运营商级通道及SMPP接口;所谓“到达率”属中国移动“移动云云信”专属指标,需签约、开通状态报告与短链归因后,通过数据看板查看。 观涛云信本身不提供短信到达率监控功能,它是一款面向终端用户的即时通讯软件,不具备运营商级短信通道能力,也不对接三大运营商的SMPP状态回执接口。 先确认你用的是哪个“云信” 当前存在两个名称近似但完全不同的产品:【观...

Mac系统怎么查看WiFi的实时传输速率

Mac查看WiFi实时传输速率需读取lastTxRate:一、按Option键点击Wi-Fi图标,查“传输速率”字段(Mbps);二、终端执行airport-I命令获取lastTxRate、agrCtlRSSI和channel;三、用无线诊断工具分析PHY模式、MCS及信道带宽以定位降速原因。 Mac系统查看WiFi实时传输速率,需直接读取无线网卡当前协商的物理层速率(lastTxRate),该数...

Mac 怎么设置访达(Finder)最顺手?资深果粉的 5 个效率设置【指南】

Mac访达5个关键效率设置:一、设新窗口默认打开于高频文件夹;二、启用路径栏与状态栏;三、搜索范围锁定为当前文件夹;四、开启标签页并禁用独立窗口;五、精简侧边栏并固定高频文件夹。 如果您希望让Mac的访达(Finder)操作更符合个人工作习惯、减少重复点击与路径迷失,可通过系统级偏好设置与界面定制实现深度适配。以下是资深用户长期验证的5个关键效率设置,覆盖视图、导航、搜索、标签与交互逻辑。 一、强...

彻底开启 Windows 11 原生的“屏幕截图实时草图” 像手机一样实时标注截图文字

需系统版本≥22H2(Build22621),启用“使用Win+Shift+S启用截图和草图”开关,并确保InkWorkspace服务注册;启用后按Win+Shift+S直接进入带笔/荧光笔/文本框的半透明草图界面,支持实时手写、打字与擦除。 在Windows11中启用原生“屏幕截图实时草图”功能,能让截图后立刻用触控笔或鼠标圈画、打字、涂鸦,无需启动Paint或第三方工具——但该功能默认被隐藏,...

苹果电脑怎么开启实时翻译屏幕上的内容

苹果Mac支持屏幕文本即时翻译,含快捷键选中翻译、Safari整页翻译、触控板三指轻点唤出浮窗三种方式,需提前下载语言包并可选设备端模式保障隐私。 苹果电脑需要将屏幕上正在显示的文本(比如网页、PDF、聊天窗口里的文字)即时翻译成中文或其他语言,而不是仅翻译已复制的片段或图片中的文字。 用快捷键直接翻译选中内容 这一步操作起来很简单,直接按住Control键点按任意可选中文本即可触发翻译浮窗。 选...

如何在 Windows 11 中开启“剪贴板跨设备云同步” 电脑手机端共享实时剪贴板

需同时启用剪贴板历史、跨设备同步开关,选择“自动同步我复制的文本”,并确保微软账户统一登录、手机完成双向可信配对及权限开启;若开关灰显,须通过注册表新建AllowCrossDeviceClipboard值并设为1。 您在Windows11电脑上复制一段会议纪要、验证码或微信链接后,希望几秒内就能在安卓手机输入框里直接粘贴,无需截图、转发或手动重输——这需要剪贴板跨设备云同步功能完全就位,而不仅仅是...

彻底开启 Windows 11 内置的“手机屏幕无线投影” 电脑全屏实时同步操作手机教程方法

必须激活PhoneLink的“手机屏幕”功能,通过Wi-FiDirect直连实现安卓屏幕无线镜像与鼠标键盘反向操控;需系统≥22H2、DirectX11显卡、受支持安卓机型,并安装“无线显示器”可选功能及授予手机端三项关键权限。 想让安卓手机屏幕全屏实时同步到Windows11电脑,并用鼠标键盘直接点击、拖拽、输入操作手机里的App,必须激活系统原生“手机屏幕无线投影”能力——它不依赖第三方投屏软...

百度翻译怎么开启拍照翻译 百度翻译实时翻译方法【教程】

百度翻译拍照翻译可在5秒内完成外文转中文,支持App内相机识别、百度APP直启、系统实况文本及电脑网页上传四种方式,各适配不同场景需求。 你需要在手机上快速把菜单、路标、说明书上的外文转成中文,又不想手动敲字——百度翻译的拍照翻译功能就是为此设计的,它能直接调用摄像头捕获画面并实时识别翻译,整个过程不到5秒。 用百度翻译App启动拍照翻译 这是最稳定、功能最全的路径,支持涂抹选区、语言自动检测、原...