主要内容

lidarScan

创建对象来存储二维激光雷达扫描

自从R2019b

描述

一个lidarScan对象包含数据为一个二维激光雷达(光探测和测距)扫描。激光雷达扫描激光扫描的二维平面的距离(范围)测量的传感器在特定环境中的障碍角度()。使用这个激光扫描对象作为输入到其他机器人算法等matchScans(导航工具箱),controllerVFH(导航工具箱),或monteCarloLocalization(导航工具箱)

创建

描述

例子

扫描= lidarScan (范围,)创建一个lidarScan对象的范围,代表了从激光雷达传感器收集的数据。的范围输入向量的长度相同,直接设置范围属性。

扫描= lidarScan ()创建一个lidarScan对象使用笛卡尔坐标作为输入n2矩阵。的笛卡儿直接从这个输入属性设置。

扫描= lidarScan (scanMsg)创建一个lidarScan对象从一个提升(ROS工具箱)ROS消息对象。

属性

全部展开

范围从激光雷达数据,指定为一个向量在米。这个向量长度一样和向量元素是以米。

数据类型:|

角范围从激光雷达数据,指定为一个向量。这个向量长度一样范围和向量元素是以弧度。在正面角度测量逆时针z设在。

数据类型:|

笛卡尔坐标激光雷达数据,作为一个返回(x, y)矩阵。在激光雷达坐标系,积极的x是向前,积极y是左边。

数据类型:|

激光雷达数据,作为一个标量返回。这个标量也等于的长度范围向量中的行数笛卡儿

数据类型:

对象的功能

情节 显示激光器或激光雷达扫描读数
removeInvalidData 删除无效的范围和角度数据
transformScan 基于相对姿态变换激光扫描

例子

全部折叠

激光雷达数据指定为向量的范围和角度。这些价值包括传感器范围以外的读数。

x = linspace (2, 2);范围= abs ((1.5)。* x。^ 2 + 5);范围(45:55)= 3.5;角= linspace(-π/ 2,π/ 2,元素个数(范围);

创建一个激光雷达扫描指定范围和角度。所有点的激光雷达扫描的阴谋。

扫描= lidarScan(范围、角度);情节(扫描)

图包含一个坐标轴对象。坐标轴标题激光雷达扫描对象,包含X, Y ylabel包含一行对象显示它的值只使用标记。

删除无效点基于指定的最小值和最大值范围。

minRange = 0.1;maxRange = 7;scan2 = removeInvalidData(扫描,“RangeLimits”,(minRange maxRange]);持有情节(scan2)传说(“点”,“有效点”)

图包含一个坐标轴对象。坐标轴标题激光雷达扫描对象,包含X, Y ylabel包含2线类型的对象。一个或多个行显示的值只使用这些对象标记代表所有点,有效的点。

创建一个lidarScan对象。指定范围和角度向量。

refRanges = 5 * 1 (1300);refAngles = linspace(-π/ 2π/ 2300);refScan = lidarScan (refRanges refAngles);

将激光扫描的(x, y)偏置的(0.5,0.2)

transformedScan = transformScan (refScan, 0.5 - 0.2 [0]);

旋转20度的激光扫描。

rotateScan = transformScan (refScan(0, 0,函数(20)]);

扩展功能

版本历史

介绍了R2019b

另请参阅