贝塞尔曲线法

算法简介:
贝塞尔曲线是应用于二维图形应用程序的数学曲线,由一组称为控制点的向量来确定,给定的控制点按顺序连接构成控制多边形,贝塞尔曲线逼近这个多边形,进而通过调整控制点坐标改变曲线的形状。
算法思想:
对于车辆系统,规划的轨迹应满足以下准则:轨迹连续、轨迹曲率连续、轨迹容易被车辆跟随,且容易生成
给定n+1个数据点,p0~pn,生成一条曲线,使得该曲线与这些点描述的形状相符。
性质1:p0和pn分别位于贝塞尔曲线的起点和终点。
性质2:几何特性不随坐标系的变换而变化。
性质3:起点和终点处的切线方向和特征多边形的第一条边及最后一条边分别相切
性质4:至少需要三阶贝塞尔曲线(四个控点)才能生成曲率连续的路径。

B样条曲线

B样条曲线是B-样条基函数(给定区间上的所有样条函数组成一个线性空间。)的线性组合。
贝塞尔曲线有以下缺陷:
1.确定了多边形的顶点数(n+1个),也就决定了所定义的Bezier曲线的阶次(n次),这样很不灵活。
2.当顶点数(n+1)较大时,曲线的次数较高,曲线的导数次数也会较高,因此曲线会出现较多的峰谷值。
3.贝塞尔曲线无法进行局部修改。
B样条曲线除了保持Bezier曲线所具有的优点外,还弥补了上述所有的缺陷。
均匀B样条:当节点沿参数轴均匀等距分布,为均匀B样条曲线。当n和k一定时,均匀B样条的基函数呈周期性,所有基函数有相同形状,每个后续基函数仅仅是前面基函数在新位置上的重复。
准均匀B样条曲线:两端节点具有重复度k
,中间节点非递减的序列。准均匀B样条曲线保留了贝塞尔曲线在两个端点处的性质:样条曲线在端点处的切线即为倒数两个端点的连线。准均匀B样条曲线用途最为广泛。
一般来说,次数越高,则曲线的导数次数也会越高,那么将会有很多零点存在,较多的导数零点就导致原曲线存在较多的极值,使曲线出现较多的峰谷值,次数越低,样条曲线逼近控制点的效果越好。
另一方面,三次B样条曲线能够实现二阶导数连续,故最终选择准均匀三次B样条曲线作为轨迹规划的曲线比较合适。