Semantic Region Extractor

The Semantic Region Extractor (SRE) is a component of the Isaac AMR Navigation Stack. Its purpose is to extract the relevant semantic regions around the robot, s.t. they can then be used by other planner components. For example the extracted semantic regions can be used to prune the searching space of a planner or implement restricted zones where a robot should not drive through. The semantic objects extracted by the SRE are

  • Navigable Surfaces: Regions where the robot is free to move.

  • Regions of Interest: Special regions inside of the extracted navigable surfaces; this could include obstacles, docking stations, restricted zones etc.

  • Route: The global route that the robot should follow

  • Robot Pose: The current pose of the robot

  • Semantic Map: The semantic map of the environment in which the robot is located

  • Relevant Semantic Regions: The extracted semantic regions. This contains both navigable surfaces and regions of interest.

flowchart LR B:::hidden --> |Robot Pose| SRE A:::hidden --> |Route| SRE C:::hidden --> |Semantic Map| SRE SRE[Semantic Region Extractor] -->|Relevant Semantic Regions| OUT:::hidden

The Semantic Region Extractor internally consists of two steps:

  1. Extract all semantic regions which are touched by the route.

  2. If the extracted regions do not contain the current robot position, expand the extracted regions using a Breadth-First Search to connect the robot to the extracted regions.

NvIsaacSemanticRegionExtractor

Extension containing components for semantic region extractor.

nvidia::isaac::SemanticRegionExtractor

Extracts the relevant semantic regions from a semantic map.

Parameters:

name

Input route

lookup_name

rx_route

description

Name of input route channel.

flags

GXF_PARAMETER_FLAGS_NONE

type

GXF_PARAMETER_TYPE_HANDLE

default

N/A

name

Output Semantic Region

lookup_name

tx_semantic_region

description

Name of output semantic region channel.

flags

GXF_PARAMETER_FLAGS_NONE

type

GXF_PARAMETER_TYPE_HANDLE

default

N/A

name

Atlas

lookup_name

atlas

description

Atlas Frontend used to access pose tree and semantic map.

flags

GXF_PARAMETER_FLAGS_NONE

type

GXF_PARAMETER_TYPE_HANDLE

default

N/A

name

Semantic Map

lookup_name

semantic_map

description

Semantic map used to get access to semantic regions.

flags

GXF_PARAMETER_FLAGS_NONE

type

GXF_PARAMETER_TYPE_HANDLE

default

N/A

name

Robot Frame

lookup_name

robot_frame

description

Robot Frame

flags

GXF_PARAMETER_FLAGS_NONE

type

GXF_PARAMETER_TYPE_HANDLE

default

N/A

name

Search Radius

lookup_name

search_radius

description

Search radius used when querying semantic map.

flags

GXF_PARAMETER_FLAGS_DYNAMIC

type

GXF_PARAMETER_TYPE_FLOAT64

default

N/A

name

Max Height Difference

lookup_name

max_height_difference

description

Max height difference used when querying semantic map.

flags

GXF_PARAMETER_FLAGS_DYNAMIC

type

GXF_PARAMETER_TYPE_FLOAT64

default

N/A

name

Max Waypoint Distance

lookup_name

max_waypoint_distance

description

The last waypoint considered for extracting the semantic region will have a distance closer than this parameter to the robot.

flags

GXF_PARAMETER_FLAGS_DYNAMIC

type

GXF_PARAMETER_TYPE_FLOAT64

default

N/A

© Copyright 2018-2023, NVIDIA Corporation. Last updated on Oct 23, 2023.