主要内容

lidarPointCloudGenerator

产生激光雷达点云数据驱动的场景

自从R2020a

描述

lidarPointCloudGenerator从激光雷达系统对象™生成检测传感器安装在一个自我。所有的检测都是自我的参考坐标系统车辆或车载传感器。您可以使用lidarPointCloudGenerator对象包含演员和轨迹在一个场景中,您可以创建使用drivingScenario对象。使用统计传感器模型,lidarPointCloudGenerator对象可以模拟真实的检测与添加随机噪声。

产生激光雷达点云:

  1. 创建lidarPointCloudGenerator对象并设置其属性。

  2. 调用对象的参数,就好像它是一个函数。

了解更多关于系统对象是如何工作的,看到的系统对象是什么?

创建

描述

激光雷达= lidarPointCloudGenerator创建一个lidarPointCloudGenerator对象的默认属性值来生成一个点云激光雷达传感器。

例子

激光雷达= lidarPointCloudGenerator (名称,值)属性使用一个或多个名称-值对。例如,lidarPointCloudGenerator (‘DetectionCoordinates’,‘传感器笛卡儿’,‘MaxRange’, 200)创建一个报告检测的激光雷达点云发生器传感器笛卡尔坐标系统,最大探测距离为200米。在报价附上每个属性的名字。

属性

全部展开

属性,除非另有注明nontunable后,这意味着你不能改变它们的值调用对象。对象锁当你叫他们,释放函数打开它们。

如果一个属性可调在任何时候,你可以改变它的值。

改变属性值的更多信息,请参阅系统设计在MATLAB使用系统对象

激光雷达传感器的位置中心,作为一个指定(x, y)向量。的SensorLocation高度属性定义的坐标激光雷达传感器对自我车辆坐标系。默认值对应于一个激光雷达传感器安装在轿车,中心的屋顶的前沿。单位是米。

例子:0.1 [4]

数据类型:

独特的传感器标识符指定为一个正整数。这个属性区分检测来自不同传感器的多传感器系统。

例子:5

数据类型:

需要传感器更新之间的时间间隔,指定为一个积极的真正的标量。的drivingScenario对象调用激光雷达点云发生器以固定时间间隔。lidarPointCloudGenerator定义的对象生成新的检测间隔UpdateInterval财产。的值UpdateInterval属性必须是一个整数倍数的模拟时间间隔。更新请求之间的传感器更新间隔不包含检测。单位是秒。

例子:5

数据类型:

传感器高度地平面,指定为一个积极的真正的标量。默认值对应于一个激光雷达传感器安装在轿车,中心的屋顶的前沿。单位是米。

例子:1.5

数据类型:

偏航角的激光雷达传感器,指定为一个真正的标量。偏航角是自我的中心线的夹角下靶场车辆和激光雷达传感器的轴。积极的偏航角对应于一个顺时针旋转时的正方向z设在自我的工具坐标系。单位是在度。

例子:4

数据类型:

螺旋角的激光雷达传感器,指定为一个真正的标量。之间的螺距角是角下靶场激光雷达传感器和轴x - y飞机的自我车辆坐标系。一个积极的螺旋角对应于一个顺时针旋转时的正方向y设在自我的工具坐标系。单位是在度。

例子:3

数据类型:

横摇角的激光雷达传感器,指定为一个真正的标量。卷角的旋转角下靶场激光雷达传感器的轴x设在自我的工具坐标系。积极的横摇角对应于一个顺时针旋转时的正方向x设在的坐标系统。单位是在度。

例子:4

数据类型:

最大探测距离,指定为一个积极的真正的标量。传感器无法检测道路和演员超出这个范围。单位是米。

例子:200年

数据类型:

距离测量的准确性,指定为一个积极的真正的标量。单位是米。

例子:0.01

数据类型:|

激光雷达的方位分辨率,指定为一个积极的真正的标量。方位角的方位分辨率定义了最小分离的激光雷达可以区分两个目标。单位是在度。

例子:0.5

数据类型:|

海拔解决激光雷达,指定为一个积极的真正的标量。海拔高度分辨率定义了最小分离在仰角激光雷达可以区分两个目标。单位是在度。

例子:0.5

数据类型:|

激光雷达的方位限制,指定为1×2实值向量的形式(最小,最大)。单位是在度。

例子:50 [-100]

数据类型:|

高度限制的激光雷达,指定为1×2实值向量的形式(最小,最大)。单位是在度。

例子:10 [-10]

数据类型:|

允许添加噪声激光雷达传感器测量,指定为真正的。将此属性设置为真正的添加噪声传感器测量。否则,测量没有噪音。

数据类型:逻辑

输出生成的数据作为一个有组织的点云,指定为真正的。将此属性设置为真正的输出一个有组织的点云。否则,输出是无组织的。

数据类型:逻辑

包括自我车辆在生成的点云,指定为真正的。将此属性设置为真正的包括自我车辆在输出。否则,输出点云没有自我。

数据类型:逻辑

包括道路网格生成的点云数据,指定为真正的。将此属性设置为真正的生成的点云数据输入道路网,rdMesh。否则,输出点云没有道路网数据,您不能指定rdMesh

数据类型:逻辑

ActorID自我的车辆,指定为一个正整数标量。ActorID是一个演员的惟一标识符。

例子:4

数据类型:|

坐标系统的检测报告,指定这些值之一:

  • “自我笛卡儿”——在自我检测报告车辆笛卡儿坐标系统。

  • 传感器笛卡儿的——笛卡儿坐标系统传感器的检测报告。

数据类型:字符|字符串

演员概要文件,指定为一个结构或一个结构数组。每个结构都包含物理和雷达的特点,一个演员。

  • 如果ActorProfiles是一个结构,所有演员传递到吗lidarPointCloudGenerator对象使用这个配置文件。

  • 如果ActorProfiles是一个数组,每个演员都传递到对象必须有一个独特的演员。

为你的驾驶场景生成的数组结构,使用actorProfiles函数。表显示了有效的结构字段。如果你不指定一个字段,字段设置为默认值。如果没有传递到对象,演员的ActorID字段是不包括在内。

描述
ActorID 场景定义演员标识符指定为一个正整数。
ClassID 分类标识符指定为一个非负整数。0代表一个未知或未赋值的类的一个对象。
长度 演员,长度指定为一个积极的实值标量。单位是米。
宽度 指定宽度的演员,是一个积极的实值标量。单位是米。
高度 高度的演员,指定为一个积极的实值标量。单位是米。
OriginOffset 演员的旋转中心偏移的几何中心,指定为一个实值向量的形式x,y,z]。旋转中心,或起源,位于底部的中心的演员。车辆,旋转中心是点在地上在后桥的中心。单位是米。
MeshVertices 网格顶点的演员,指定为一个n——- - - - - -3实值矩阵的顶点。矩阵中的每一行定义了三维空间中的一个点。
MeshFaces 网的演员,指定为一个——- - - - - -3矩阵的整数。每一行的MeshFaces代表一个三角形顶点定义的id,顶点的行数。
RCSPattern 雷达截面(RCS)的演员,模式指定为一个元素个数(RCSElevationAngles)——- - - - - -元素个数(RCSAzimuthAngles)实值矩阵。单位是每平方米在分贝。
RCSAzimuthAngles 方位角度对应于行RCSPattern指定为一个向量中的值的范围(-180、180)。单位是在度。
RCSElevationAngles 高度角对应的行RCSPattern指定为一个向量中的值的范围(-90、90)。单位是在度。

对结构的完整定义字段,请参阅演员车辆功能。

使用

描述

ptCloud=激光雷达(演员,rdMesh,simTime)创建一个统计传感器模型来生成一个激光雷达点云,ptCloud,从传感器测量的演员,演员在当前的仿真时间,simTime。一个extendedObjectMesh对象,rdMesh,包含道路数据自我。

例子

(ptCloud,isValidTime]=激光雷达(演员,rdMesh,simTime)此外回报isValidTime,这表明点云是否在指定的模拟生成时间。

(ptCloud,isValidTime,集群]=激光雷达(演员,rdMesh,simTime)此外回报集群,其中包含集群分类数据生成的点云。

(___]=激光雷达(演员,simTime)不包括道路网格生成的点云数据通过禁用规范的rdMesh输入。使用这种语法,您可以返回任何输出在前面的语法描述。

排除道路网数据,设置HasRoadsInputPort财产

输入参数

全部展开

场景演员的姿势,指定为一个结构数组或结构。每个结构对应于一个演员。您可以生成使用这个结构actorPoses函数。你也可以手动创建这些结构。表显示了对象的属性使用生成检测。所有其他的演员属性将被忽略。

描述
ActorID

场景定义演员标识符指定为一个正整数。

位置

演员的位置,指定为一个实值向量的形式xyz]。单位是米。

速度

速度(v)的演员x- - - - - -y- - - - - -,z方向,指定为一个实值向量的形式vxvyvz]。单位是米每秒。

横摇角的演员,指定为一个实值标量。单位是在度。

球场

螺旋角的演员,指定为一个实值标量。单位是在度。

偏航

偏航角的演员,指定为一个实值标量。单位是在度。

AngularVelocity

角速度(ω)的演员x- - - - - -,y- - - - - -,z方向,指定为一个实值向量的形式ωxωyωz]。单位是每秒度。

对结构的完整定义字段,请参阅演员车辆功能。

数据类型:结构体

公路附近的网格表示演员,指定为一个extendedObjectMesh对象。

当前仿真时间,指定为一个积极的真正的标量。的drivingScenario对象调用激光雷达点云发生器以固定时间间隔生成新的点云所定义的时间间隔UpdateInterval财产。的值UpdateInterval属性必须是一个整数倍数的模拟时间间隔。更新请求更新间隔之间的传感器不生成一个点云。单位是秒。

例子:10.5

数据类型:

输出参数

全部展开

点云数据,作为一个返回pointCloud对象。

有效时间生成点云,返回01isValidTime0当更新请求之间的时间更新指定的时间间隔UpdateInterval

数据类型:逻辑

分类数据生成的点云,作为一个返回N2向量。目标的向量定义id生成的点云。N等于财产的pointCloud对象。向量包含ActorID在第一列和ClassID在第二列中。

对象的功能

使用一个目标函数,指定系统对象作为第一个输入参数。例如,释放系统资源的系统对象命名obj使用这个语法:

发行版(obj)

全部展开

isLocked 确定系统对象在使用
一步 运行系统对象算法
释放 释放资源,并允许修改系统对象属性值和输入特征
重置 重置的内部状态系统对象

例子

全部折叠

驾驶场景生成激光雷达点云数据与多个演员通过使用lidarPointCloudGenerator系统对象。通过使用创建驾驶场景drivingScenario对象。它包含一个ego-vehicle,行人和两个其他车辆。

创建和情节与多个车辆驾驶场景

创建一个驾驶场景。

场景= drivingScenario;

添加一个直路驾驶场景。在每个方向有一个车道的道路。

roadCenters = [0 0 0;70 0 0];laneSpecification = lanespec ([1]);路(场景、roadCenters“道”,laneSpecification);

添加一个自我车辆驾驶场景。

egoVehicle =车辆(场景中,“ClassID”,1“网”,driving.scenario.carMesh);路点= [1 2 0;35 2 0];smoothTrajectory (egoVehicle锚点10);

添加一个卡车、行人和自行车驾驶场景和情节场景。

卡车=车辆(场景中,“ClassID”2,“长度”,8.2,“宽度”,2.5,“高度”,3.5,“网”,driving.scenario.truckMesh);路点= [70 1.7 0;20 1.9 0];smoothTrajectory(卡车,锚点,15);行人=演员(场景中,“ClassID”4“长度”,0.24,“宽度”,0.45,“高度”,1.7,“网”,driving.scenario.pedestrianMesh);路点= [23 4 0;10.4 - 4 0);smoothTrajectory(行人,锚点,1.5);自行车=演员(场景中,“ClassID”3,“长度”,1.7,“宽度”,0.45,“高度”,1.7,“网”,driving.scenario.bicycleMesh);路点= (12.7 - -3.3 0;49.3 - -3.3 0);smoothTrajectory(自行车、锚点、5);情节(场景中,“网格”,“上”)

图包含一个坐标轴对象。坐标轴对象包含X (m), ylabel Y (m)包含7补丁,类型的对象。

激光雷达点云数据生成和阴谋

创建一个lidarPointCloudGenerator系统对象。

激光雷达= lidarPointCloudGenerator;

添加演员简介和自我车辆演员从驱动系统场景对象ID。

激光雷达。ActorProfiles = ActorProfiles(场景);激光雷达。EgoVehicleActorID = egoVehicle.ActorID;

情节点云数据。

cep = birdsEyePlot (“Xlimits”70年[0],“YLimits”[-30]30日);绘图机= pointCloudPlotter (cep);传奇(“关闭”);推进(场景)tgt = targetPoses (egoVehicle);rdmesh = roadMesh (egoVehicle);[ptCloud, isValidTime] =激光雷达(tgt, rdmesh scenario.SimulationTime);如果isValidTime plotPointCloud(绘图仪,ptCloud);结束结束

图包含一个坐标轴对象。坐标轴对象包含X (m), ylabel Y (m)包含7补丁,类型的对象。

图包含一个坐标轴对象。坐标轴对象包含X (m), ylabel Y (m)是空的。

版本历史

介绍了R2020a