主要内容

评估边界

根据地面真实情况评估车道边界模型

描述

numMatches=评估边界(边界,世界真相点,门槛)评估候选车道边界模型,边界,与世界坐标地面真值点形成的车道边界相对,世界真相点,并返回匹配车道边界的总数,numMatches。如果候选边界内的所有点都在横向距离内门槛对于地面真实车道边界,则该边界被视为有效匹配(真正)。

实例

[numMatches,轻推,numFalsePositives]=评估边界(___)还使用以前的输入返回未命中(漏报)和漏报的总数。

[___]=评估边界(___,xWorld)指定x-要执行比较的轴点。中指定的点世界真相点在给定的时间点进行线性插值x-轴线位置。

[___]=评估边界(边界,地面边界,门槛)将边界与车道边界对象数组或数组单元格数组中指定的地面真实值模型进行比较。

[___,作业]=评估边界(___)还返回中指定的赋值索引地面边界. 每个边界都与中相应的类赋值相匹配地面边界这个K中的第th个边界边界是匹配的作业(k)元素世界真相点. 零表示假阳性(未找到匹配项)。

例子

全部崩溃

创建一组地面真实点,添加噪波以模拟实际车道边界点,并将模拟数据与模型进行比较。

使用抛物线参数创建一组表示地面真相的点。

抛物线参数1=[-0.001 0.01 0.5];抛物线参数2=[0.001 0.02 0.52];x=(0:0.1:20)';y1=多值(抛物线参数1,x);y2=多值(抛物线参数1,x);

添加相对于偏移参数的噪波。

y1=y1+0.10*抛物线参数1(3)*(兰特(长度(y1),1)-0.5);y2=y2+0.10*抛物线参数2(3)*(兰特(长度(y2),1)-0.5);

创建一组测试边界模型。

testlbs=抛物面基数([-0.002 0.01 0.5;-0.001 0.02 0.45;-0.001 0.01 0.5;0.000 0.02 0.52;-0.001 0.01 0.51]);

将边界模型与地面真值点进行比较。根据匹配、未命中和误报的数量计算模型的精度和灵敏度。

阈值=0.1;[numMatches,nummises,numFalsePositives,~]=...EvaluatelaneBoundries(testlbs,{[xy1],[xy2]},阈值);disp(“精度:”);
精度:
disp(numMatches/(numMatches+numFalsePositives));
0.4000
disp(“敏感度/召回率:”);
敏感性/召回:
disp(numMatches/(numMatches+nummiss));
1.

输入参数

全部崩溃

车道边界的地面真值点,指定为[x y]数组或单元格数组[x y]数组x-轴点必须是唯一的,并且与边界模型位于同一坐标系中。车道边界必须至少包含两个点,但为了进行稳健比较,建议使用四个或更多点。单元数组的每个元素表示一个单独的车道边界。

模型和地面真值点之间的最大横向距离,以便将该点视为有效匹配(真正),指定为实标量。

车道边界模型,指定为抛物线基对象或立体厨房对象。车道边界模型包含以下属性:

  • 参数-对应于边界模型系数的向量。向量的大小取决于模型的多项式次数。

    车道边界对象 参数
    抛物线基

    [甲、乙、丙],对应于以下形式的二次多项式方程的系数Y=斧头2.+Bx+C

    立体厨房 [甲、乙、丙、丁],对应于以下形式的三次多项式方程的系数Y=斧头3.+Bx2.+Cx+D
  • 边界类型-A蓝本型支持车道边界的枚举:金宝app

    • 无标记

    • 固体

    • 冲刺

    • 白点

    • 双固体

    将车道边界类型指定为蓝本型。边界类型。例如:

    LaneBoundaryType.BottsDots
  • 力量-唯一数量的比率x-边界上的轴位置到基于XExtent所有物

  • XExtent-描述最小值和最大值的两元素向量x-边界点的轴位置。

x-边界的轴位置,指定为实值向量。指向世界真相点在给定的时间点进行线性插值x-轴位置。这些位置之外的边界被排除在外,并被视为假阴性。

地面真值边界模型,指定为抛物线基立体厨房对象或单元格数组抛物线基立体厨房数组。

输出参数

全部崩溃

作为实标量返回的匹配数(真正数)。

未命中数(假阴性),作为实标量返回。

作为实标量返回的误报数。

基本真值边界的赋值索引,作为实值数组的单元格数组返回。每个边界与中的相应赋值匹配地面边界这个K中的第th个边界边界是匹配的作业(k)元素世界真相点. 零表示假阳性(未找到匹配项)。

R2017a中引入