无人驾驶全局路径规划之路径平滑(贝塞尔曲线)

本文介绍了如何利用贝塞尔曲线进行无人驾驶全局路径规划的路径平滑。通过给出的贝塞尔曲线公式,展示了在MATLAB中实现的路径平滑函数,并应用到RRT算法和A星算法生成的路径上,得到平滑效果。建议先进行直线平滑处理,再用贝塞尔曲线以避免路径与障碍物碰撞,可通过增加障碍物膨胀层来解决。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

贝塞尔曲线公式如下(具体推导过程请参见网上),
在这里插入图片描述
我所编写的贝塞尔曲线路径平滑函数如下,

function [x, y] = bezir_n(points, M)
%points是控制点,为多行两列的矩阵
%M为你要生成的贝塞尔曲线上点的个数

    n = size(points,1) - 1;
    if n < 1
        x = []; y = [];
        return;
    elseif n == 1 %一阶贝塞尔曲线,即直线
        x = points(:,1);
        y = points(:,2);
        return;
    else
        % 使用向量卷积来计算 k值,k是二项式系数nchoosek(n,k)组合在一起的向量,
        %也为杨辉三角第n行的所有数。k对应着贝塞尔曲线公式里的二项式展开系数。
        k = [1 1];
        for i = 1 : (n - 1)
            k = conv(k, [1 1]);
        end
        
        tem1=n:-1:0;
        tem2=0:1:n;
        x=[];
        y=[];
        for t=0:1/(M-1):1
              x=[x,sum(k.*(points(:, 1)').*((1-t).^tem1).*(t.^tem2))];
              y
评论 20
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值