论文解读:《基于TinyML毫米波雷达的座舱检测、定位与分类》

摘要

       本文提出了一种实时的座舱检测、定位和分类解决方案,采用毫米波(mmWave)雷达系统芯片(SoC),CapterahCAL60S344-AE,支持微型机器学习(TinyML)。提出了波束距离-多普勒(BRD)特征,以减轻干扰的影响,便于成人和婴儿的分类。我们开发了两个轻量级卷积神经网络(CNNs)与标签平滑技术来克服噪声标签和增强模型的通用性。大量的实验表明,在最坏的情况下,该实现可以达到96%以上的检测精度和90%以上的定位和分类准确率,只有76 KB的模型大小和大约44 ms的推理时间。比较分析还强调了模型的通用性和鲁棒性对实际应用程序的重要性,并证明了即使使用一个简单的CNN模型也可以获得令人满意的性能。

引言

      座舱内乘客检测在各种安全应用中发挥着至关重要的作用,如安全带提醒、安全气囊部署优化和儿童在场检测(CPD),以防止中暑事件。虽然相机被广泛用于检测和识别,但它们可能会侵犯个人隐私,并在检测隐藏在障碍物背后的物体时面临挑战。压力传感器也可以用于检测乘客的存在,但将物体放置在座位上可能会导致传感器的假警报。相比之下,mmWave雷达有潜力克服这些限制,并提供准确的乘客探测,即使是在具有挑战性的情况下,如低光环境或阳光眩光。它能够检测小的运动,比如儿童的呼吸,使它特别适合满足EuroNCAP 2025路线图规定的严格安全要求,该路线图强调了CPD在车辆中预防事故的重要性。最近的研究探索了使用毫米波雷达进行座舱检测,使用信号处理或新兴的机器学习技术。Chen等人[1]提出了一种基于雷达的由Capon和CFAR生成的点云处理的舱内乘员监测。Abedi等人[2]利用机器学习方法处理范围-方位角(RA)热图,以确定被占据座位的位置。虽然基于capon的方法可以实现更高的角度分辨率,并有助于检测和定位汽车中的人,但它们可能对复杂的干扰很敏感,如手机的振动、风扇和汽车的小运动。

        这些干扰将产生高频分量,并且不能通过在基于RAMAP的处理流程中采用的零多普勒去除来消除。此外,由Capon生成的RAMAP需要大量的矩阵乘法和转置,这使得在mmWave雷达soc上难以实现。Cruz等人[3],Song等人[4]提出利用时频特征来减少推断的影响,提高检测的鲁棒性。然而,获得时频特征也需要大量的计算和内存。此外,以往的工作在开发深度学习模型时很少考虑内存和计算复杂性,这可能导致在嵌入式雷达系统上不可行的实现。

        在本文中,我们提出了一种新的处理流程,利用BRD特征而不是使用RA域的功率分布,以克服干扰的影响,并提供了利用它们不同的范围-多普勒特征对成人和婴儿进行分类的能力。在mmWave雷达SoC上开发并部署了具有8位整数后量化的小型CNN模型。除了检测车内是否有一个人外,我们还通过采用深度学习模型来同时确定这个人坐在哪个座位上,以及这个人是成年人还是婴儿。此外,我们演示了在Caltah雷达SoC上的实时实现,并通过广泛的实验验证。

方法

处理流程

        图1显示了所提出的座舱内检测、定位和分类的处理流程。输入的是模数转换后的数据,称为ADC数据。首先对ADC数据进行沿快速时间采样轴的快速傅里叶变换(FFT),也称为快速时间处理,以获得距离信息。随后,进行零多普勒去除,然后沿慢时间轴进行另一个FFT,以获得所有虚拟MIMO信道的距离-多普勒(RD)图。传统的雷达处理采用非相干集成、恒定误警率(CFAR)检测和到达方向(DOA)估计,我们直接采用N-Point二维数字波束形成(DBF),如下所示:

其中,是对于虚拟通道c,距离下标 r,多普勒下标 v的慢时间FFT结果。为通道c和波束i的导向向量。是n点DBF幂。每束光束都指向我们感兴趣的区域,以便在舱内应用。例如,我们执行一个6点的DBF,这些光束指向第二行的三个座位和它们对应的脚槽区域。由于在我们的设计中有相对较大的波束宽,所以第二排的整个区域,包括两个座位之间的区域,都被有效地覆盖了。

        在N-Point DBF之后,将得到一个具有范围、多普勒和角度尺寸的数据立方体,其中每个元素代表一个特定范围、多普勒频率和角度对应的功率。我们选择了数据立方体的一部分,特别是在本文中显示的实现中的24×64×6,并使用非对称的8位整数格式来量化幂值,如等式所示 2:

        其中,b0和a0分别表示输入的假设偏差和比例因子,round表示舍入操作,clip(x,xmin,xmax)是在xmin和xmax范围内剪辑输入的函数。图2显示了没有seat-A移动的成年人和没有安全seat-B的婴儿的BRD特征。在图中可以观察到一个视觉上的差异,这承诺了所提出的方法来定位和分类成人和婴儿。

        然后将得到的三维 int8 数据输入到已开发的 CNN 模型中。在这项工作中,CNN 执行了七类分类任务,分别对应以下场景:有或无干扰的空车位、座位 A/B/C(第二排的右/中/左座位)被成人占用、座位 A/B/C 被婴儿占用。

深度倾模型开发和部署

        座舱内雷达CNN模型的开发和部署过程如图3所示。CNN模型在初始化后,通过对多个时期的梯度下降优化进行训练。执行验证,以评估验证损失,并确定是否应尽早停止训练过程。来自所有7个Case的35个独立实验的数据,每个案例包含1000帧,并将它们分割成训练和验证数据集。分割比是0.3。虽然数据可以标记为舱内应用,但噪声数据仍然存在。例如,一个人可以坐在一个座位的边缘,并占据相邻座位的一小部分。此外,一个人的运动也可能侵入另一个座位区域。因此,直接使用这些标签会混淆CNN模型,降低其性能。此外,数据分布漂移可以在实际应用中观察到,如第四节所示。为了解决噪声标签和提高模型的通用性,我们采用了标签平滑[5]。标签平滑使用一个小的非零概率α,而不是使用one-hot编码标签,而非其他类的概率为0,如等式所示:

        TinyML 技术对于在内存和计算能力有限的边缘设备上部署已建立的 CNN 模型至关重要。这项工作主要采用训练后量化来减少内存占用并加速推理。在此过程中,训练数据集用作代表性数据集。在此数据集上运行已建立的模型,并收集每层参数的最小值、最大值和标准偏差值。基于这些统计数据,将参数从 32 位浮点数缩放到 8 位整数范围,类似于等式 2 所示的 CNN 输入量化。最后,使用 TensorFlow Lite Micro 框架将量化模型与雷达平台 SDK 一起部署,生成可闪存到 mmWave 雷达 SoC 的舱内雷达二进制文件。

补充

        我们在CaalterahCAL60S344-AE平台上实现了我们提出的方法,也被称为RhinePro。这种4T4R雷达SoC在59 GHz到64 GHz的频率范围内工作,并配备了一个雷达基带加速器(BBA)来加速信号处理。它的特点是一个300MHz的双CPU核心和3MB的SRAM。我们采用半波长均匀阵列,利用TDM生成一个4×4的矩形虚拟阵列。SoC芯片和天线如图4所示。

        如图1所示,FFT和n点DBF在RhinePro的BBA中实现。然后,CPU将访问DBF的结果,并执行随后的推断。RhinePro的BBA显著加速了信号处理,在0.4 ms内获得DBF结果。由于快速处理与波形传输并行化,快速处理的处理时间较大。

我们开发了两种类型的 CNN 模型。

第一种是简单的3 层顺序 CNN,本文中称为 SimpleNet。它包含三个卷积层,具有最大池化和 ReLu6 激活,然后是全连接层

第二种是 MobileNetV2 [6],它比 SimpleNet 复杂得多,被认为是最好的轻量级 CNN 架构之一。SimpleNet 和 MobileNetV2 的大小分别约为 275KB 和 5.3MB。量化后,它们的大小减小到78KB 和 1.6MB 左右。我们在 RhinePro 平台上实现了 int8 后量化后的 SimpleNet,并将在下一节中展示评估结果,而开发的 MobileNetV2 仅部署在桌面上以供比较。在我们的实现中,int8量化的SimpleNet的推理时间约为44毫秒,而没有量化的相同模型则需要大约855毫秒。通过将CNN推理与波形传输并行化,我们开发的舱内雷达可以实现高达20Hz的更新率

实验结果分析

        为了验证我们提出的方法和实现,我们进行了一系列全面的实验。图5显示了实验测试用例的例子。雷达平台安装在车辆的顶部中心位置。我们评估了三种不同类型的场景: (1)有干扰场景的空车,如操作风扇、座位上的手机振动或外部车辆振动;(2)成年人坐着有或没有身体运动;(3)在座位上有模拟呼吸的娃娃,儿童安全座椅安装在向前或向后的配置,或没有安全座椅。

        图6给出了三种没有量化的CNN模型的训练和验证精度:不带标签平滑的SimpleNet,带标签平滑的Simple网,以及带标签平滑的MobileNetV2。很明显,两个简单网络的训练准确率超过了95%,而MobileNetV2的训练准确率约为99.6%。此外,与SimpleNets相比,MobileNetV2表现出明显更快的收敛速度。我们使用一个独立的测试数据集对这些模型进行了评估,结果如图7所示。一个性能差距在验证结果和测试结果之间进行了观察。在最坏的情况下,没有标签平滑的SimpleNet的性能比验证结果下降了约15%,而其他两种模型的最坏情况下的精度仍超过89%。这种差异可以归因于训练和验证数据集中的数据来自相同的实验,而测试数据集来自一个独立的实验。这可能引入了数据分布偏移,而没有标签平滑的SimpleNet的过拟合导致了严重的性能恶化。

        为了进一步评估两种标签平滑和量化模型的泛化能力,我们进行了一个额外的独立实验,略微修改了安装位置和不同的测试人员和婴儿模型。其目的是模拟在实际应用程序中遇到的实际条件。如图8所示的结果表明,虽然由于测试环境的变化,本实验中模型的性能与测试数据集上的性能有所不同,但两种模型的平均精度仍约为94%。通过比较验证数据集上的量化模型的结果,我们发现,量化后几乎没有导致性能下降,相反,性能略有提高。这主要可以归因于后量化引入了一定程度的噪声,这类似于训练过程中的正则化,从而防止过拟合和增强泛化。

        图8和图7中的结果也强调了在现实应用中存在的个案波动,这表明深度学习模型的通用性将是一个主要关注的问题。此外,与在本研究中使用一个简单、紧凑的CNN,如SimpleNet相比,使用一个相对复杂的模型,如MobileNetV2,可能会产生有限的改进。

        为了证明所提出的方法的鲁棒性,我们给出了一个推理案例的详细结果简单网络,一个人从外面摇晃空车来模拟汽车的外部振动。图9(a)展示了CNN输入特征的一个例子,(b)和(c)描述了本案例研究的预测分数和分类结果。通过图9(a)和图2的比较,可以看出干扰、成人和婴儿对BRD特征的差异,可以用来区分它们。虽然在这种情况下会了两个错误警报,但它们可以通过使用时间平滑等逻辑策略来减轻

结论

        本文提出了一种基于Cinterah雷达SoC平台和TinyML的实时座舱检测、定位和分类应用解决方案。我们提出并实现了一种新的处理流程,它利用了多波束方向的BRD特性。为了解决有噪声的标签和提高所开发的CNN的通用性,采用了标签平滑技术。此外,量化被用于减少内存占用和加速推理。广泛的实验表明,在实践中存在数据分布波动,因此模型的通用性将是一个主要关注的问题。无论波动如何,结果表明,我们的实现的检测准确率超过96%,最坏情况下的准确率超过定位和分类的90%。开发的微型CNN模型占用约76 KB的内存,花费44 ms进行推断。

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

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

相关文章

尚硅谷课程【笔记】——大数据之Shell【一】

课程视频:【【尚硅谷】Shell脚本从入门到实战】 一、Shell概述 为什么要学习Shell? 1)需要看懂运维人员的Shell程序 2)偶尔编写一些简单的Shell程序来管理集群、提高开发效率 什么是Shell? 1)Shell是一…

【2025】camunda API接口介绍以及REST接口使用(3)

前言 在前面的两篇文章我们介绍了Camunda的web端和camunda-modeler的使用。这篇文章主要介绍camunda结合springboot进行使用,以及相关api介绍。 该专栏主要为介绍camunda的学习和使用 🍅【2024】Camunda常用功能基本详细介绍和使用-下(1&…

Java进阶学习之路

Java进阶之路 提示:这里可以添加系列文章的所有文章的目录,目录需要自己手动添加 提示:写完文章后,目录可以自动生成,如何生成可参考右边的帮助文档 目录 Java进阶之路前言一、Java入门 Java基础 1、Java概述 1.1 什…

JAVA安全—反射机制攻击链类对象成员变量方法构造方法

前言 还是JAVA安全,哎,真的讲不完,太多啦。 今天主要是讲一下JAVA中的反射机制,因为反序列化的利用基本都是要用到这个反射机制,还有一些攻击链条的构造,也会用到,所以就讲一下。 什么是反射…

DeepSeek-R1 论文解读:强化学习如何 “炼” 出超强推理模型?

深度解析DeepSeek-R1:强化学习驱动大语言模型推理能力新突破 论文链接:DeepSeek-R1: Incentivizing Reasoning Capability in LLMs via Reinforcement Learning 在大语言模型(LLMs)飞速发展的当下,提升模型推理能力成…

【数据结构】循环链表

循环链表 单链表局限性单向循环链表判断链表是否有环思路code 找到链表入口思路代码结构与逻辑 code 单链表局限性 单链表作为一种基本的数据结构,虽然在很多场景下都非常有用,但它也存在一些局限性: 单向访问:由于每个节点仅包含…

ip属地是手机号还是手机位置?一文理清

在数字化和网络化的今天,IP属地这一概念逐渐成为了人们关注的焦点。特别是在社交媒体和在线平台上,IP属地的显示往往让人联想到用户的地理位置。然而,关于IP属地到底与手机号还是手机位置有关,却存在着不少误解和混淆。本文将深入…

离散时间傅里叶变换(DTFT)公式详解:周期性与连续性剖析

摘要 离散时间傅里叶变换(DTFT)是数字信号处理领域的重要工具,它能将离散时间信号从时域转换到频域,揭示信号的频率特性。本文将深入解读DTFT公式,详细阐述其具有周期性和连续性的原因,帮助读者全面理解DT…

哈希表与散列表的原理及C++实现

1. 什么是哈希表? 哈希表(Hash Table)是一种高效的数据结构,用于存储键值对(Key-Value Pairs)。它通过哈希函数(Hash Function)将键(Key)映射到一个固定大小…

图像分类与目标检测算法

在计算机视觉领域,图像分类与目标检测是两项至关重要的技术。它们通过对图像进行深入解析和理解,为各种应用场景提供了强大的支持。本文将详细介绍这两项技术的算法原理、技术进展以及当前的落地应用。 一、图像分类算法 图像分类是指将输入的图像划分为…

数字化转型:概念性名词浅谈(第四讲)

​大家好,本篇文章是在新年之际写的,所以在这里先给大家拜个年。 今天要介绍的名词为ETL: ETL,是英文Extract-Transform-Load的缩写,用来描述将数据从来源端经过抽取(extract)、转换(transfor…

UVM factory机制

目录 1. factory-register 1.1 uvm_object_registry#(type T=uvm_object, string Tname="") 1.1 uvm_default_factory::register 2. factory-override 2.1 set_type_override(uvm_object_wrapper override_type) 2.2 set_inst_override(uvm_object_wrapper ove…

奥迪改名风波再起,A6L能否率队创下新奇迹

文/王俣祺 导语:春节假期刚过,奥迪的车型命名规则又变了。在如今以内卷为主基调的环境下,车型改名可不是小事,而奥迪的这次调整背后藏着许多深意,也预示着2025年奥迪在产品布局上的新动向。 改名能否“改命” 回溯到…

改进Transformer,解读Tokenformer论文:基于参数分词化重新思考Transformer的扩展策略

Transformer 训练成本高昂的问题日益凸显,不仅需要耗费巨额的资金与大量的计算资源,还对环境产生了不可忽视的影响,最近由北京大学与谷歌联合发表的一篇论文,为这一棘手难题带来了全新的曙光。论文中提出的创新方案,有…

【STM32】HAL库USB虚拟U盘MSC配置及采用自带的Flash作为文件系统

【STM32】HAL库USB虚拟U盘MSC实现配置及采用自带的Flash作为文件系统 本文将自带的Flash作为文件系统 通过配置USB的MSC功能实现虚拟U盘 没有单独建立FATFS文件系统 仅仅是配置USB和Flash读写而已 当然 这里也可以用外部Flash等等 也可以配置文件系统来进行套壳 但总体而言不如…

Nginx通过设置自定义标记识别代理调用

Nginx通过设置自定义标记识别代理调用 业务场景 最近遇到一个业务场景,部署在云端服务器的一个平台,接口提供给多个现场调用,其中一个现场是通过nginx代理服务器代理转发到云服务器,另外一个现场则是直接通过云服务器接口进行调…

【DeepSeek系列】01 DeepSeek-V1 快速入门

1、DeepSeek简介 2024年底,DeepSeek 相继推出了其第一代推理大模型:DeepSeek-R1-Zero 和 DeepSeek-R1。 DeepSeek-R1-Zero 是一个通过大规模强化学习(RL)训练的模型,训练过程中没有使用监督微调(SFT&…

基于LabVIEW的Modbus-RTU设备通信失败问题分析与解决

在使用 LabVIEW 通过 Modbus-RTU 协议与工业设备进行通信时,可能遇到无法正常发送或接收指令的问题。常见原因包括协议参数配置错误、硬件连接问题、数据帧格式不正确等。本文以某 RGBW 控制器调光失败为例,提出了一种通用的排查思路,帮助开发…

密云生活的初体验

【】在《岁末随笔之碎碎念》里,我通告了自己搬新家的事情。乙巳年开始,我慢慢与大家分享自己买房装修以及在新家的居住体验等情况。 跳过买房装修的内容,今天先说说这三个月的生活体验。 【白河】 潮白河是海河水系五大河之一,贯穿…

Python爬虫:1药城店铺爬虫(完整代码)

⭐️⭐️⭐️⭐️⭐️欢迎来到我的博客⭐️⭐️⭐️⭐️⭐️ 🐴作者:秋无之地 🐴简介:CSDN爬虫、后端、大数据领域创作者。目前从事python爬虫、后端和大数据等相关工作,主要擅长领域有:爬虫、后端、大数据…