1. 基于毫米波雷达稀疏点云的物体检测与跟踪
(1)处理流程
- 输入数据:输入数据为点云,它包括静态目标点和动态目标点。另外,前面所得到的速度是点的相对速度,也就是说目标相对于车辆的相对速度,还需要根据车身实际速度将相对速度转化为绝对速度。
- 静态点过滤:按照绝对速度将静态点过滤掉
- 点云聚类:将过滤后的点进行聚类,获取目标级别的信息,检测运动目标
- 目标跟踪:利用多帧检测结果采用卡尔曼滤波进行目标跟踪
(2)聚类算法:DBSCAN
DBSCAN:Density-Based Spatial Clustering of Applications with Noise,它是基于密度的聚类方法,对样本分布的适应能力比K-Means更好。
-
基本思路:假定类别可以通过样本分布的紧密程度决定,通过将紧密相连的样本分为一类,得到不同的聚类类别。
-
基本概念
- ( ϵ , M i n P t s ) (\epsilon,MinPts) (ϵ,MinPts):用来描述邻域的密度
- ϵ \epsilon ϵ:描述了某一样本的邻域距离阈值
- MinPts:描述了 ϵ − \epsilon- ϵ−邻域中的最小样本数
- 核心对象:对于任一样本,其 ϵ − \epsilon- ϵ−邻域至少包含MinPts个样本
-
算法流程
- 找到所有的核心对象
- 对于每一个未处理的核心对象,生成新的聚类
- 搜索其 ϵ − \epsilon- ϵ−邻域,将 ϵ − \epsilon- ϵ−邻域中的点加入该聚类
- 如果 ϵ − \epsilon- ϵ−邻域中包含新的核心对象,则重复步骤3,直到找不到新的核心对象
- 注意:距离的度量不限于点的空间距离,还可以是其他点特征,比如速度、反射强度等
(3)聚类算法:DBSCAN vs K-Means
- K-Means
- 需要手工指定cluster的数量,实际中事先很难准确确定
- 所有点都进行聚类,不会去除outlier
- 各个方向同等重要,只适合于球形的cluster
- 具有随机性,每次运行结果都不一致
- DBSCAN
- 不需要指定cluster个数
- 可以排除outlier
- 对样本分布的适应性更好
- 每次运行结果是一致的
(4)目标跟踪:卡尔曼滤波
利用当前时刻具有不确定性的测量数据,结合上一时刻跟踪系统的估计值来预测当前时刻系统的状态
-
基本概念(以一维雷达测距为例,假设速度恒定)
- 系统状态 x t x_t xt:t时刻飞机的航程
- 测量值 z t z_t zt:雷达测距的结果
- 系统状态的估计值 x ^ t , t \hat{x}_{t,t} x^t,t:t时刻x的估计值(根据 z t z_t zt估计)
- 系统状态的预测值 x ^ t + 1 , t \hat{x}_{t+1,t} x^t+1,t:t+1时刻x的预测值(根据速度预测)
- 状态更新模型: x ^ t , t = x ^ t , t − 1 + K t ( z t − x ^ t , t − 1 ) = ( 1 − K t ) x ^ t , t − 1 + K t z t \hat{x}_{t,t}=\hat{x}_{t,t-1}+K_t(z_t-\hat{x}_{t,t-1})=(1-K_t)\hat{x}_{t,t-1}+K_tz_t x^t,t=