主要内容

validatorOccupancyMap

基于二维网格地图的状态验证器

描述

validatorOccupancyMap对象根据2-D占用图中的值验证状态和离散化运动。已占用的映射位置被解释为无效状态。

创建

语法

描述

验证器= validatorOccupancyMap创建一个带有默认设置的SE2状态空间关联的2-D占用映射验证器。

例子

验证器= validatorOccupancyMap (stateSpace在派生的给定状态空间定义中创建验证器导航。StateSpace

验证器= validatorOccupancyMap (stateSpace,名称,值指定了地图XYIndices属性的使用名称,值对参数。

属性

全部展开

的子类指定的用于验证状态的状态空间导航。StateSpace.所提供的状态空间对象包括:

用于验证状态的映射,指定为binaryOccupancyMapoccupancyMap对象。

状态之间采样和检查状态有效性的间隔,指定为正数值标量。

状态变量映射xy状态向量中的-坐标,指定为二元向量,[xIdx yIdx].例如,如果一个状态向量是[r p y x y z],xy坐标是5 [4]

对象的功能

复制 创建状态验证器对象的深度副本
isStateValid 检查state是否有效
isMotionValid 检查状态之间的路径是否有效

例子

全部折叠

这个例子展示了如何在一个环境中验证路径。

加载示例映射。使用简单映射来创建一个二进制占用映射。

负载exampleMaps.matmap = occuancymap (simpleMap);显示(图)

图中包含一个轴对象。标题为Occupancy Grid的axes对象包含一个image类型的对象。

指定通过映射的粗路径。

路径= [2 2 pi/2;10 15 0;17 8 -pi/2];持有情节(路径(:1),路径(:,2),”——o”

图中包含一个轴对象。标题为“占用网格”的坐标轴对象包含两个类型为image、line的对象。

属性创建状态验证器stateSpaceSE2定义。指定插值和验证路径段的映射和距离。

validator = validatorOccupancyMap(stateSpaceSE2);验证器。地图= map; validator.ValidationDistance = 0.1;

检查路径上的点是否处于有效状态。这三个点都在自由空间中,因此被认为是有效的。

isValid = isStateValid(验证器,路径)
isValid =3x1逻辑阵列1 1 1

检查每个连续路径状态之间的运动。的isMotionValid函数沿着状态之间的路径进行插值。如果路径段无效,则绘制沿路径的最后一个有效点。

startStates = [path(1,:);path(2,:)];endStates = [path(2,:);path(3,:)];i = 1:2 [isPathValid, lastValid] = isMotionValid(validator,startStates(i,:),endStates(i,:));如果~ isPathValid情节(lastValid (1) lastValid (2),”或“结束结束持有

图中包含一个轴对象。标题为“占用网格”的坐标轴对象包含3个类型为image、line的对象。

扩展功能

版本历史

R2019b引入

Baidu
map