Main Content

clothoidLaneBoundary

クロソイド形状の車線境界線モデル

説明

clothoidLaneBoundary オブジェクトには、クロソイド形状の車線境界線モデルに関する情報が含まれています。"クロソイド" とは、曲率の変化率が距離に対して直線的に変化する曲線のタイプです。

作成

説明

bdry = clothoidLaneBoundary は、既定のプロパティ値を使用して、クロソイド車線境界線モデル bdry を作成します。

bdry = clothoidLaneBoundary(Name,Value) は、1 つ以上の名前と値のペアを使用してプロパティを設定します。たとえば、clothoidLaneBoundary('BoundaryType','Solid') は、実線の車線境界線をもつクロソイド車線境界線モデルを作成します。プロパティ名はそれぞれ引用符で囲みます。

プロパティ

すべて展開する

車線境界線の曲率。実数スカラーとして指定します。このプロパティは、距離に対する車線境界線の方向の変化率を表します。単位は度/m です。

例: -1.0

データ型: single | double

車線境界線の曲率の微分。実数スカラーとして指定します。このプロパティは、距離に対する車線の曲率の変化率を表します。単位は度/m^2 です。

例: -0.01

データ型: single | double

道路方向の車線境界線の長さ。非負の実数スカラーとして指定します。単位はメートルです。

例: 25

データ型: single | double

車線境界線の初期進路。実数スカラーとして指定します。車線境界線の進路角は、自車の進路を基準にしています。単位は度です。

例: 10

データ型: single | double

自車位置の車線境界線からの横方向のオフセット。実数スカラーとして指定します。自車の左側にある車線境界線からのオフセットが正になります。自車の右側のオフセットは負になります。単位はメートルです。次のイメージで、自車のオフセットは左車線から 1.5 メートル、右車線から 2.1 メートルです。

Ego vehicle in a driving lane

例: -1.2

データ型: single | double

車線境界区分線のタイプ。以下のいずれかの値として指定します。

'Unmarked' 'Solid''Dashed''DoubleSolid''DoubleDashed''SolidDashed''DashedSolid'

車線区分線なし

実線

破線

2 本の実線

2 本の破線

左に実線、右に破線

左に破線、右に実線

Sample of an unmarked lane

Sample of a solid lane marking

Sample of a dashed lane marking

Sample of a double-solid lane marking

Sample of a double-dashed lane marking

Sample of a solid-dashed lane marking

Sample of a dashed-solid lane marking

車線区分線の可視性。範囲 [0, 1] の実数スカラーとして指定します。値 0 は、不可視の区分線に対応します。値 1 は、完全に可視である区分線に対応します。車線区分線が 2 本の場合、同じ度合いが両方の線に使用されます。

例: 0.9

データ型: single | double

車線境界区分線の X 軸方向の範囲。[Xmin Xmax] 形式の実数値ベクトルとして指定します。単位はメートルです。X 軸は自車に垂直であり、前方が正になります。

例: [0 100]

データ型: single | double

車線境界区分線の幅。非負の実数スカラーとして指定します。車線区分線が 2 本の場合、この値はそれぞれの車線区分線の幅と、それらの区分線間の距離に適用されます。単位はメートルです。

例: 0.15

データ型: single | double

オブジェクト関数

computeBoundaryModelCompute lane boundary points from clothoid lane boundary model

すべて折りたたむ

左右の車線境界線を表すクロソイド曲線を作成します。次に、曲線をプロットします。

左の境界線を作成します。

lb = clothoidLaneBoundary('BoundaryType','Solid', ...
'Strength',1,'Width',0.2,'CurveLength',40, ...
'Curvature',-0.8,'LateralOffset',2,'HeadingAngle',10);

ほぼ同じプロパティを使用して、右の境界線を作成します。

rb = lb;
rb.LateralOffset = -2;

鳥瞰図プロットを作成します。次に、車線境界線プロッターを作成して、境界線をプロットします。

bep = birdsEyePlot('XLimits',[0 50],'YLimits',[-10 10]);
lbPlotter = laneBoundaryPlotter(bep,'DisplayName','Left-lane boundary','Color','r');
rbPlotter = laneBoundaryPlotter(bep,'DisplayName','Right-lane boundary','Color','g');
plotLaneBoundary(lbPlotter,lb)
plotLaneBoundary(rbPlotter,rb);
grid
hold on

Figure contains an axes object. The axes object contains 2 objects of type line. These objects represent Left-lane boundary, Right-lane boundary.

境界線に沿って選択した点の座標をプロットします。

x = 0:5:50;
yl = computeBoundaryModel(lb,x);
yr = computeBoundaryModel(rb,x);
plot(x,yl,'ro')
plot(x,yr,'go')
hold off

Figure contains an axes object. The axes object contains 4 objects of type line. These objects represent Left-lane boundary, Right-lane boundary.

バージョン履歴

R2018a で導入