
将毫米波雷达数据转化为点云主要有传统信号处理和深度学习方法两条技术路径。⚙️ 路径一传统信号处理流程经典方法这是目前最主流的方法通过一系列数学运算从原始雷达信号中提取目标的空间位置。· 1. 数据采集与解析获取雷达的ADC原始数据。这是一个多维矩阵包含了目标的距离、速度等原始信息。· 2. 距离与速度估计2D-FFT对ADC数据执行距离FFT和多普勒FFT。距离FFT通过频率差算距离多普勒FFT则通过相位变化算速度。· 3. 目标检测CFAR使用恒虚警率CFAR 算法在“距离-多普勒”谱上自适应地筛选出真正由物体反射产生的峰值。· 4. 角度估计到达角利用多个接收天线收到信号的相位差来计算目标到达角DoA。这通常需要用到波束成形或MIMO技术。· 5. 生成点云与坐标转换综合距离、速度和角度得到目标在雷达极坐标下的位置。随后通过几何运算转换为笛卡尔坐标x, y, z并转换到车辆或世界坐标系下。每个点还可附加上速度、信号强度等信息形成4D点云。· 6. 后处理对原始点云进行滤波去噪、多帧融合以增加密度、聚类以区分不同物体等。 路径二深度学习方法前沿方向针对传统点云稀疏的问题深度学习方法通过学习雷达数据与理想点云的映射关系来直接生成点云。· 端到端生成神经网络如RaLD、RadCloud、R2P直接输入原始雷达数据如雷达频谱输出密集、高精度的点云。· 跨模态学习利用扩散模型等技术以激光雷达点云为学习目标真值让模型学习如何将稀疏的雷达数据“增强”成类似激光雷达的稠密点云。 总结选择哪种方法取决于你的需求· 传统方法可解释性强、实时性好适合工业质检、自动驾驶等对可靠性要求高的场景。· 深度学习方法能生成密度和精度接近激光雷达的点云但需要大量数据训练适合科研或对点云质量要求极高的应用。详细转换流程毫米波雷达数据转化为点云本质上是一个从原始回波信号中解算出目标空间位置距离、水平角、俯仰角和运动状态速度的多级信号处理过程。其核心流程可概括为原始ADC数据 →距离多普勒图RDM) →目标检测CFAR) →角度估计 →点云生成。下面我们来拆解这个信号链。一、从时域波形到距离多普勒图这是信号处理的第一个阶段目的是从原始的时域信号中提取出目标的距离和速度信息。1距离维处理1D-FFT)雷达发射的线性调频连续波FMCW信号遇到物体后反射接收信号与发射信号混频后得到中频信号。该信号的频率与目标距离成正比。通过对单个chirp内的ADC采样点进行快速傅里叶变换FFT)可以得到目标的距离信息。2速度维处理2D-FFT)雷达会连续发射多个chirp。如果目标有径向运动不同chirp之间回波信号的相位会发生旋转。在慢时间维度即针对同一个距离门跨越不同chirp的数据做第二次FFT就可以得到目标的速度信息。3结果经过上述两步我们得到一张距离多普勒图RDM)。这张图的X轴代表速度Y轴代表距离图中的亮点代表该距离和速度单元上存在潜在目标。二、目标检测CFAR算法RDM图上除了目标的亮点还有大量的热噪声和杂波。为了从噪声中筛选出真正的目标需要使用恒虚警率检测CFAR算法。核心思想 CFAR不设定一个固定的阈值而是为每一个待检测单元CUT动态计算一个门限。它通过评估CUT周围参考单元的平均功率再乘以一个比例因子来确定门限。如果CUT的功率高于此动态门限则判定为目标否则视为噪声。作用这一步实现了从稠密的RDM数据到稀疏的潜在目标点的转换是点云生成前至关重要的过滤步骤。三、角度估计与最终点云生成在确定了目标的距离和速度后我们需要知道目标在空间中的方位角和俯仰角从而确定其精确的3D位置。1角度估计3D-FFT 或超分辨率算法: 雷达利用多个接收天线RX组成的阵列来估计角度。当回波到达不同天线时由于天线间距d会产生一个与角度相关的相位差△φ。通过对不同天线数据的FFT即第三次FFT或使用更高级的算法如MUSIC)可以解算出目标的方位角Azimuth)和俯仰角Elevation)。2点云生成至此我们获得了目标的四维信息距离R)、速度v)、方位角θ)、俯仰角(φ)。最后一步是坐标系转换将球坐标系下的点转换到直角坐标系x,y, z):x R * cos(φ) * sin(θ)y R*cos(ф) * cos(θ)zR*sin(φ)3最终输出经过坐标转换后每一个目标点都包含了位置x,y,z)、多普勒速度v和反射强度(RCS等信息这些点共同构成了我们常说的毫米波雷达点云。四、工程实践与代码参考在实际工程中实现上述流程通常有几种途径使用TI毫米波雷达SDK对于TI的AWR/IWR系列芯片可以使用mmWaveDemo Visualizer或Uniflash等工具烧录固件并通过UART串口直接获取已经处理好的点云数据。MATLAB/Python仿真对于学习和研究可以使用MATLAB或Python编写完整的信号处理链。网上有大量开源代码例如TDMA-MIMO 4D点云生成提供了从雷达参数设置到最终点云显示的完整MATLAB代码。DDMA-MIMO 3D点云生成分享了基于DDMA-MIMO体制的雷达信号处理仿真代码。ROS驱动对于ARS548等雷达其ROS驱动提供了detection点云和object物体列表两种信息可以通过编写代码将自定义消息转换为标准的sensor_msgs::PointCloud2消息。总结毫米波雷达点云生成是一个典型的信号处理流程ADC数据 → 距离多普勒图2D-FFT)→ CFAR目标检测 →角度估计3D-FFT/MUSIC)→坐标转换 →点云输出。每一步都有成熟的算法和开源代码可以参考是进入雷达感知领域的基础。