【从kitti开始自动驾驶】--10.1 计算与其他物体的精确距离(数学推导)

本节介绍如何计算自己与object的最近距离,从数学的角度进行推理.

辅助准备

需要一点点画图,因此安装了linux的画图工具pinta

sudo apt install pinta

运行pinta 即可打开,如下
pinta工具

物体距离不同情况

物体之间的距离,可以较为精确的表示为:两个物体之间的最短距离。

特例1

要计算两个盒子之间的间距,必须知道物体侦测盒和我们的距离:如下是最常规的情况
和本车一样x或者y

一般情况

而更多情况下,需要侦测距离的车往往与我们呈现,x,y,和具有一定夹角,如下
一般情况
由于该情况包含第一种情况,因此着重分析这种普遍情况

排除的情况

二者侦测框如果有相接部分,则认为距离为0。

计算距离

数学基础

上述问题类比于数学问题,可抽象出来模型如下:

  • 已知两个矩形如下,找到两矩形最短距离R1, R2(minimum而不是infimum)

分析可知:这两个矩形同时满足有界性(bounded)和密闭性(closed)。

R1, R2中必有一点在某矩形顶点
且R1, R2必在边界上
常规情况的数学抽象
对上图进行分析,可将工作细分为:

  1. 对两个矩形的每个端点都求一次距离另一个矩形边的最短距离
  2. 比较求出最短距离

模型细化

对于某一端点到某个线段距离的求法如下:

点在线段外

如下,P为端点, A,B为另一矩形端点:
这种情况较为简单,只需要分别求PA,PB距离即可。即distance = minimum(PA, PB)。
在这里插入图片描述

  • 要判定P投影在AB外,只需要APAB < 0 , 或 BPBA < 0成立即可。

点投影在线段内

如下,P为端点, A,B为另一矩形端点:
这种情况较为普遍,需要利用向量知识求解

在这里插入图片描述

  • 判定条件是: APAB > 0 且 BABP > 0 (向量形式)

向量层面求解

对于上述点投影在线段内的情况:由velodyne的数据可以知P,A,B三个点的坐标,只需要求出Q点坐标和PQ长度即可。开始求解吧:
在这里插入图片描述

求Q的坐标

解算如下(AQ, AB向量同向):

在这里插入图片描述

求PQ长度/距离

因为Q的坐标已经出来了,所以d就比较好算
在这里插入图片描述

已经解决了最关键的,点到线段的距离如何求解,下一节将在代码层面实现。

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值