毫米波雷达信号处理中的静止目标(静态杂波)滤除问题

news2024/12/30 3:59:49

说明

    杂波及其消除是雷达信号处理中的一个很重要的话题,不过对于车载毫米波雷达,考虑到其应用场景和作用范围,关于杂波我们需要考虑的东西其实并没有比如预警雷达、机载SAR雷达等那么多。特别是车载4D雷达的出现,杂波这个概念已经越来越模糊了:对于雷达能检测到的东西我们都感兴趣,都成为了我们的探测目标,似乎没有传统意义上的杂波这个概念了。

    不过在一些应用场合,静止“目标”(这里说目标其实是矛盾的,因为对于目标的定义就是我们所感兴趣的东西,那感兴趣的东西咋还做去除?这也是本博文的题目后面加一个静态杂波的原因,可是静态杂波这个话题又太大了..)是需要我们做去除的。本博文谈谈毫米波雷达信号处理中的静止“目标”滤除的问题。

Blog

20230523 博文第一次写作

目录

说明

目录

一、话题综述与概念解释

二、雷达静止条件下的静止“目标”滤除方法

三、雷达运动条件下的静止“目标”滤除方法

四、总结

五、参考资料

六、code&data


一、话题综述与概念解释

1、关于杂波

    先给它定个性:杂波是一个相对的(主观的)概念,它可以随着应用场景和需求而发生变化。对于雷达所能检测到的东西,这里头有一些是我们感兴趣的(对于车载毫米波雷达这个应用场景来说,它们可以是行人、车辆等道路使用者),有些则是不想其出现的(比如车道外的树木等),判断某个“东西”的回波是杂波与否,应该放到具体应用场景中来谈。比如对于地面的回波,我们在做前向或者角雷达时,它们对于雷达而言是杂波,可是如果我们想基于地面回波来做路面识别时(可以参考我之前的一篇博文:毫米波雷达在路况识别中的应用_墨@#≯的博客-CSDN博客),地面本身就成了我所感兴趣的目标了;再比如道路护栏或者道路边上的植被所产生的回波,传统的毫米波雷达并不需要这些信息,这些东西对于检测而言就是杂波,而对于4D雷达它们却成了很重要的需要被检测出来的道路特征信息。

    于是我尝试给杂波下一个定义:对于我们使用雷达做检测而言,那些我们不感兴趣的强反射体所产生的回波都可以归为杂波。这里加一个字是为了体现两点:A、它们的回波能量足够强大,以至于我们可以将之检测出来。B、或者,它们的回波能量至少强到会影响我们对感兴趣的微弱目标的检测。如果不满足这两点之一,那其实归到噪声中也无妨…。

    放在大的雷达信号处理领域,杂波及其抑制是一个蛮大的话题,涉及到杂波建模、杂波抑制的评价、杂波抑制的方法:各种滤波手段比如MTI,MTD等。本文不做讨论。

2、关于静止“目标”

    本文所讨论的静止“目标”特指对地静止的物体

    传统的车载毫米波雷达不具备测高能力(俯仰向的测角能力),无法判断被检测到的物体的离地高度,如果此时把对地静止的物体都检测出来,是没法判断该物体是在高空(比如天桥)还是在地面的,也无法判断汽车是否可以轧过(比如井盖)。如果都判断为障碍物,那么雷达的检测信息可能会使得汽车的辅助驾驶系统频繁地减速刹车而严重影响驾驶体验(或者说毫米波雷达所提供的信息毫无意义),于是业内普遍都是使用静态杂波滤除的方法将这些对地静止的目标都滤除掉。当然,这样做是有风险的(虽然毫米波雷达提供的信息在决策系统中的置信度不是很高)。4D雷达因为具备俯仰向的测角能力,且分辨率高,它的出现很好地解决了上面的矛盾,但是本文暂时不讨论4D雷达。

    此外,对于毫米波雷达的室内应用(比如跌倒检测等),人是在室内走动的,除此之外静止的东西都不是雷达感兴趣的,此时也是有必要做静止目标滤除的。

    以上论述限定了静止目标的范围,并说明了要做静止目标滤除这件事的原因由来。但是光说我们不感兴趣就要去除它,这个理由还是不够充分的:如果它对于我们检测感兴趣的目标并没有影响,我们也没有必要多加这么一个步骤吧。

    这里简单探讨一下我们要做这件事(滤除静止目标)的更底层的原因

    对于雷达静止的情况,此时二维压缩后对地静止的目标会被压缩到零多普勒的位置(具体看后文第二章),如果目标的速度很小(接近零多普勒)或者很大而恰巧耦合到零多普勒附近(也即速度模糊了,关于速度模糊可以参考我之前的博文:车载毫米波雷达信号处理中的模糊问题_墨@#≯的博客-CSDN博客),此时我们去做CFAR时,零多普勒位置上的静止目标是可能会影响我们对于噪底的估计而影响检测的。此外,如果我们不对零多普勒的数据做处理,CFAR会将这些静止目标都检测出来,如果超过CFAR的阈值个数(受限于硬件内存),会导致我们感兴趣的动目标检测不出来。对雷达静止情况下的静止目标的去除我们一般在CFAR检测之前进行,具体的处理见第二章。

    对于雷达运动的情况此时对地静止的目标都有了速度,这些对地静止的目标会因与雷达法线的夹角不同而具备不同的速度,二维压缩之后,这些目标会散布在距离-多普勒图的不同位置上。雷达运动情况下的对地静止目标的处理我们一般在得到点云信息之后做,具体的处理见第三章。这种情况下要进行处理的原因本节第二段话可以做出解释。

3、关于静止“目标”的滤除

    如前文所述,需要注意的是,雷达直接测量的是和目标之间的相对的径向的速度!对于车载毫米波雷达的实际应用场合,因为车在使用时其绝大部分时间下是运动的状态,装在车上的雷达自然也是运动的,所以此时对地静止的目标相对雷达而言是有速度的

    本博文讨论的话题是毫米波雷达信号处理中如何把对地静止的“目标”进行滤除。于是需要分两种情况讨论:A、雷达静止。B、雷达运动。

二、雷达静止条件下的静止“目标”滤除方法

    关于(车载)毫米波雷达的信号处理相关的知识这里不做重复了,可以参考我之前的博文:车载与体征/手势检测 毫米波雷达信号处理流程_墨@#≯的博客-CSDN博客,当雷达静止时,对地静止的目标必然也相对雷达静止,此时对ADC数据进行二维压缩之后,这些静止目标必然都藏在了零多普勒里面

图2.1  2D-FFT后的结果

    为方便理解,上面两图是同一份数据使用不同函数画出来的两种视角。图中黄色框内的亮线对应零多普勒的位置。雷达视场范围内的所有静止目标都被压缩到了该多普勒维度中。图中红色框为我们感兴趣的动目标所在的位置(实际上其幅值相对于噪底来说还是很大的,只是在静止目标这么大的能量幅值下显得很小而已)。

【数据说明】 本文后面第六章的链接将提供一份基于Ti级联板解析好的ADC数据(读者其实也可以从我之前的博文中拿那些数据以及数据解析的代码)、以及静止目标滤除的处理代码。数据采集的场景是:级联板静止,在实验区内,人在板子前面来回跑动,采用12T16R的TDM发射模式采集数据,后面链接提供的数据为采集的数据其中一帧下的一个通道的结果。数据的距离维度为256个点,速度维度为64个点。

    雷达静止条件下的静止目标滤除,是在CFAR处理之前进行的,这里介绍三种我了解的方法,实现起来都很简单,这里直接贴结果。

1、最直接的:二维压缩之后把零多普勒维度置0

图2.2  方法一处理前后结果对比

2、距离维度压缩后减均值再进行速度维压缩

图2.3  方法二处理前后结果对比

3、对消(距离压缩后,相邻多普勒维度的数据相减,一种MTI方法)

图2.4  方法三处理前后结果对比

4、小结

    图中标出了动目标所在位置处(幅值最大处)的能量,以及在图上随机选取的一点的能量(用以评估噪底),因为对消法丢失了一列,故方法三在标点时其横坐标要小一列。

    简单讨论一下这几种方法

a\  前两种方法达到的效果是一模一样的。(不过在实际的应用中我们还是用第二种方法比较多?比如加特兰SOC芯片中固化内置的就是第二种方法。单从信号处理的便利性来说,第一种方法是最简单的,第二种方法还需要用到for循环和各类运算,但是为啥第二种方法用得多,可能有硬件实现上的考量?),方法二并没有增加或降低SNR(相较于方法一)

b\  对消的方法会改变幅值,在一些区域里甚至会增加噪底。整体上来看,至少在车载毫米波雷达的领域,这种方法不是很推荐。

三、雷达运动条件下的静止“目标”滤除方法

    如前所述,雷达运动时,因为雷达测量的是与目标之间相对的径向的速度,此时对地静止的物体会因为与雷达法向有不同的夹角而有不同的速度,考虑最简单的情况,如下图所示:

图3.1  雷达运动时与静止目标相对运动的示意图

    假设车以V0的速度匀速向前运动,安装在车正前方的雷达的速度自然也是V0,在某一时刻,对地静止的物体与雷达法线之间的夹角为θ,不难理解的是:此时雷达与目标之间的相对速度为V1 = V0*cos(θ),从雷达的视角来看,该目标以V1的速度靠近雷达。【说这种情况是最简单的情况,介绍一下更复杂的:比如雷达不是安装在车的正前方的(例如安装在车四角的角雷达),再比如车在转弯时,此时要做的一些转换会更复杂】

    对于路面上众多的对地静止的物体,反映到距离-多普勒图上,就不会像图2.1那样都藏在了零多普勒那一列,而是会在这幅图中散布开来。此时我们去做处理时是在得到点云信息之后做的:先把这些目标都检测出来,然后想办法找到对地静止的目标并将之去除。

    这部分的说明我手上没有实际的ADC数据可供分析,但是从我参与的一个项目的实践来看,本章提出的方法是可行的,方法其实也很简单,几句话可以说清楚(还是考虑前述最简单的情况):知道车速V0和目标的角度θ后,我们可以得到雷达在该目标方向的速度分量:V1 = V0*cos(θ),此外我们还能知道雷达测量得到的该目标的速度Vmeasure,此时我们可以求得V1和V_measure之间的差值Vd,理论上来说如果目标是静止的,那么Vmeasure是等于V1的,也即Vd = 0,但是考虑到实际可能存在的一些误差,我们可以设定一个阈值Vthrehold,如果Vd > Vthrehold那么认为该目标是运动目标,如果Vd < Vthrehold,认为该目标对地静止。对所有检测到的目标构建for循环进行判断,并删除被判断为对地静止的目标。

    该方法实践的效果取决于以下几个主要因素:1、目标角度测量的准确度。2、目标速度测量的准确度(特别地,不能有速度模糊的情况发生,关于速度模糊的讨论可以参考我上面给出的模糊问题的链接)。3、车速的获取,车速信息可以从车的OBD接口中拿到(将之通过CAN口传送到雷达中)。4、Vthrehold的设置(当然这与前面几个参数的测量准确度有关,理论上来说接近于0时最好)。

    核心的原理如上,更复杂的情况这里不做讨论。

四、总结

    本博文写作最开始的想法是要捋清楚静态杂波的问题,但是该话题有点过大了,后面还是将之局限于(车载)毫米波雷达的静止“目标”滤除问题上。本博文的内容其实比较简单,本文对杂波、静止目标的概念进行了描述,探讨了雷达静止和运动两种情况下静止目标去除的方法,其中,前者用实测数据进行了处理和说明,后者给出了解决的方法和流程。可能还有更多有意思的方法,后面如果接触到我会做补充。

五、参考资料

六、code&data

雷达信号处理中的静止目标(静态杂波)滤除问题博文相对应的代码和数据资源-CSDN文库

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

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

相关文章

【Linux系统编程(文件编程)】之创建、打开文件

文章目录 一、前言二、打开文件、创建文件1. man手册使用起来2. open函数参数 三、文件权限四、打开、创建 的代码示例五、文件创建、打开的补充O_EXCLO_APPENDO_TRUNCcreat创建文件函数 一、前言 linux下&#xff0c;一切皆文件。学好对文件的操作是很重要的&#xff0c;会在…

pytorch:nn.ModuleList和nn.Sequential、list的用法以及区别

文章目录 在构建网络的时候&#xff0c;pytorch有一些基础概念很重要&#xff0c;比如nn.Module&#xff0c;nn.ModuleList&#xff0c;nn.Sequential&#xff0c;这些类我们称为为容器&#xff08;containers&#xff09;&#xff0c;可参考containers。本文中我们主要学习nn.…

3D模型渲染引擎6大特点解读:助力AR/VR呈现惊叹的视觉效果!

一、用于桌面、移动和 AR/VR 应用程序的2D和3D图形引擎 HOOPS Visualize是一个3D图形SDK&#xff0c;可以快速开发高性能、跨平台的工程应用程序。主要特点包括&#xff1a; HOOPS Visualize的基石是图形内核&#xff0c;这是一种功能齐全、以工程为中心的场景图形技术&#…

项目实战(cloud)--配置中心Config(码云来做一个配置中心)

服务的拆分原则&#xff1a; 单体应用向微服的一个改造&#xff1a; 搭建一个聚合项目 创建一个maven项目 父项目 pom <?xml version"1.0" encoding"UTF-8"?> <project xmlns"http://maven.apache.org/POM/4.0.0"xmlns:xsi"…

uCOSii信号量

uCOSii信号量 主要用来测试使用uCOSii“创建信号量,发送信号量&#xff0c;接收信号量,删除信号量”。 学习uCOSii一定要先了解os_cfg.h文件。 信号量管理函数如下&#xff1a; OSSemAccept() 无条件地等待请求一个信号量函数,中断服务子程序只能用OSSemAccept()而不能用OS…

Docker介绍、常用命令、项目部署

什么是Docker 简单说&#xff1a;Docker就是一个虚拟机&#xff0c;专业说&#xff1a;它是一个开源的容器平台。它和我们常用的VMware有很多相似的地方。 名词解释 镜像/images 由本体打包出来的文件。并不是文件本身&#xff0c;但是具有该文件的功能。举个不太贴切的例子&…

离线安装python、pip和python的第三方库

1.安装python3 1.1下载python3 安装python3的网址为点击这里 选择想要下载的对应版本进行下载&#xff0c;这里使用的是63位的Windows系统&#xff0c;因此下载的选的是&#xff1a; 下载后如图&#xff1a; python-3.7.9-amd64.exe是python3的安装程序 1.2安装python3 1…

5月第3周榜单丨飞瓜数据B站UP主排行榜单(哔哩哔哩)发布!

飞瓜轻数发布2023年5月15日-5月21日飞瓜数据UP主排行榜&#xff08;B站平台&#xff09;&#xff0c;通过充电数、涨粉数、成长指数三个维度来体现UP主账号成长的情况&#xff0c;为用户提供B站号综合价值的数据参考&#xff0c;根据UP主成长情况用户能够快速找到运营能力强的B…

BLE协议栈结构

// 开坑BLE协议栈 0 镇楼图 接下来会自下往上粗略分析各个层级&#xff0c;后续会有对各层的细致解读 1 CONTROLLER 1.1 PHY BLE使用ISM频段&#xff08;频率范围是2.400-2.4835 GHz&#xff09;。将整个频带分为40份&#xff0c;每份的带宽为2MHz&#xff0c;称作RF Chann…

CASAIM与北京体育大学达成合作,高精度三维扫描技术助力体育运动装备仿真分析

近期&#xff0c;CASAIM与北京体育大学开展合作交流&#xff0c;基于高精度三维扫描技术助力体育运动装备仿真分析&#xff0c;为体育运动装备可靠性研究提供准确的数据参考。 北京体育大学是全国重点院校、国家“211工程”重点建设大学、国家首批“双一流”建设高校&#xff0…

基于springboot+vue社区团购系统(分前后台springboot+mybatis+mysql+maven+vue+html)

基于springbootvue社区团购系统 一、项目简介二、技术实现三、开发运行环境四、系统功能五、页面展示六、数据库七、项目结构八、部分代码展示九、源码地址 一、项目简介 本项目是一套基于springboot社区团购系统&#xff0c;主要针对计算机相关专业的正在做毕设的学生与需要项…

【正点原子STM32连载】 第十六章 外部中断实验 摘自【正点原子】STM32F103 战舰开发指南V1.2

1&#xff09;实验平台&#xff1a;正点原子stm32f103战舰开发板V4 2&#xff09;平台购买地址&#xff1a;https://detail.tmall.com/item.htm?id609294757420 3&#xff09;全套实验源码手册视频下载地址&#xff1a; http://www.openedv.com/thread-340252-1-1.html 第十六…

【Sentinel】流控、熔断、热点基本介绍和使用

目录 环境介绍Sentinel的使用可以分为两个部分Sentinel管理控制台客户端接入控制台配置启动参数流控规则名词解释 熔断策略公共字段说明慢调用比例字段说明 异常比例字段说明异常数字段说明 热点规则 环境介绍 开发依赖版本Spring Boot3.0.6Spring Cloud2022.0.2Spring Cloud …

一文搞清RabbitMQ的部署运维及使用

1.通过docker-compose安装RabbitMQ 1.0 初始化yum和Docker yum update yum install epel-release -y yum clean all yum list yum install docker-io -y1.1 dockerfile FROM rabbitmq:management MAINTAINER LCJ # 添加插件到指定目录 可按照此方式自行扩展其他插件 # ADD .…

shopee虾皮跨境电商网站商品数据支持网站后缀(.com.my;.vn;.ph)

作为一名技术爱好者&#xff0c;我们总会遇到各种各样的技术问题&#xff0c;需要寻找合适的技术解决方案。而在互联网时代&#xff0c;我们可以快速通过搜索引擎获取丰富的技术资源和解决方案。然而&#xff0c;在不同的技术分享中&#xff0c;我们常常会遇到质量参差不齐的文…

【新星计划·2023】单臂路由的原理讲解

单臂路由是指在路由器的一个接口上通过配置子接口的方式&#xff0c;实现原来互相隔离的VLAN之间可以互相通信。 一、单臂路由概述 网络中通过VLAN技术来实现隔离广播、方便管理及提高安全性等功能&#xff0c;一旦划分VLAN后&#xff0c;同—VLAN之间可以相互通信&#xff0…

【统计模型】瑞典生育率现状与影响因素分析

目录 瑞典生育率现状与影响因素分析 一、研究目的 二、数据来源和相关说明 三、描述性分析 3.1 样本描述 3.2 数据可视化 四、数学建模 4.1 模型建立 4.2 模型结果 &#xff08;1&#xff09;全模型A &#xff08;2&#xff09;全模型B &#xff08;3&#xff09;全…

传奇手游三职业1.80合击服务端三端互通版搭建教程

传奇手游三职业1.80合击服务端三端互通版搭建教程 大家好&#xff0c;我是驰网艾西。随着时代的发展&#xff0c;以前我们热爱的传奇游戏也越来越没有时间玩了&#xff0c;到了一定的年纪大家都有自己的事业以及生活压力。以前我们总是玩PC端所谓的端游&#xff0c;现在大家都…

highcharts矢量图放在图表的最上方

将矢量图对应的y轴的top和height都设置为0 即可 下面红色标注全是y轴的设置 以上这中图怎么实现 其中top是指图表中每个模块的位置&#xff0c;offset表示偏移的位置&#xff0c;height表示每个模块占据整个图标的高度的百分比&#xff0c;opposite表示该y轴是否在右侧&#xf…

麒麟系统安装HDP【已解决】

麒麟系统安装HDP 麒麟系统安装HDP1、软件版本介绍2、文件替换3 报错解决3.1 解决KeyError: HDP-3.1&#xff08;所有机器&#xff09;3.2 安装smartsense-hst&#xff08;所有机器&#xff09;3.3 解决Non-ASCII character \xe5 in file&#xff08;所有机器&#xff09;3.4 解…