IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 人工智能 -> 自动驾驶【3种点集生成外边界方式】 -> 正文阅读

[人工智能]自动驾驶【3种点集生成外边界方式】

?

图片来自网络

摄影|网络

#1?寻找点集的边界意义

自动驾驶碰撞检测中,对于其他交通参与者可以使用bounding_box的方式表示(类似于图像视觉中使用一个 [盒子]?将对象框起来)。

不同的障碍物占用的区域就是轨迹的不可行区域,对于激光雷达这类感知系统,形成的是一系列点云。

那么点集如何描述生成最优的边界呢?本文介绍一下三种常见的方式。


?三种不同的点集边界生成方式

#2?凸集(convex_hull)

凸集(convex_hull)是比较常用的一种产生点集的外边界方法。其主要步骤就是找已有的线段沿某个固定方向旋转,首先碰到哪个点,哪个点就加入外边界的集合。

?凸集算法示意图

①对于一系列点,首先找到这些点最上面(二维情况下就是y值最大)的点1,然后水平正方向拉一条射线。

②然后遍历剩下的每个点,沿着顺时针方向找到与①中射线夹角最小的点2

③以点2作为新的起点,沿着顺时针方向找到剩下点中与1-2射线夹角最小的点3。

。。。

以此类推,最终回到点1,则被选中的点就构成了外边界

多个点集的生成的外边界如下:

?

#3?quad-tree四叉树法

四叉树是把外边界等效成一段段直线段,如果线段足够细腻,那可以像素级等效出外边界。

四叉树法示意图

首先找到点集的最左上角的点和最右下角的点,然后把整个矩形四分,得到的矩形又可以无限四分下去。

只要得到的矩形和边界上的点不相交就不在细分下去,否则就一直细分到矩形足够小。

最后得到的矩形的最外围就是我们想要的外边界。

多个点集的生成的外边界如下:

?

#4?alpha-shape滚球法

凸集主要是射线围绕一个点旋转得到外边界,接下来介绍一种用一个圆(球)在点集上滚动生成外边界的方法:alpha_shape方法。

滚球法示意图

我们知道不共线的三点可以决定唯一的一个圆。那么两个点(不重合)加上一个足够的半径也可以构成一个圆。圆心就在这两个点中垂线上。

滚球法就是一个通过指定圆半径(1/alpha),然后看是否能够构成圆来寻找点集的外边界的方法。

多个点集的生成的外边界如下:

#5?总结

其实还有生成凹边界的方法:找到中心点,然后以中心点为圆心,再等分为n(比如n=64)份,每份中找到离圆心最远的点,这些点也可以构成外边界。但是这种方法生成的实在太丑了。

以上介绍的三种方法都可以生成外边界。但是在算法难易程度、需不需要调参、生成效果方面还是有一定区别,实际使用的时候可以根据需要选择合适的方法。

凸集算法比较简单快速,但是生成的结果不够细腻。四叉树算法复杂度比较高,调节的参数较多,但是运行可以很快,结果不太精确,是近似的结果。滚球法算法并不复杂,结果更加细腻,但是需要调参,应用不太具有泛化性。


?感兴趣,可以关注公众号elegantcoin,接受更多消息????


?

  人工智能 最新文章
2022吴恩达机器学习课程——第二课(神经网
第十五章 规则学习
FixMatch: Simplifying Semi-Supervised Le
数据挖掘Java——Kmeans算法的实现
大脑皮层的分割方法
【翻译】GPT-3是如何工作的
论文笔记:TEACHTEXT: CrossModal Generaliz
python从零学(六)
详解Python 3.x 导入(import)
【答读者问27】backtrader不支持最新版本的
上一篇文章      下一篇文章      查看所有文章
加:2022-08-06 10:44:55  更:2022-08-06 10:45:31 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/26 0:50:20-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码