Skip to content

Commit 780c943

Browse files
authored
Merge pull request #13 from naturerobots/better-costmap-params
Better/New Inflation Parameters
2 parents 6fcabed + e69b3c5 commit 780c943

18 files changed

+34
-898
lines changed

mesh_navigation_tutorials/config/mbf_mesh_nav.yaml

Lines changed: 32 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -11,8 +11,9 @@ move_base_flex:
1111
planners: ['mesh_planner']
1212
mesh_planner:
1313
type: 'cvp_mesh_planner/CVPMeshPlanner'
14-
cost_limit: 0.8
14+
cost_limit: 2.0 # inscribed radius has inf values. so they will be avoided independent on how we select this value
1515
publish_vector_field: true
16+
1617
planner_patience: 10.0
1718
planner_max_retries: 2
1819
project_path_onto_mesh: false
@@ -31,38 +32,58 @@ move_base_flex:
3132

3233
mesh_map:
3334
# input
34-
# mesh_file: '/home/amock/mesh_nav_ws/src/mesh_navigation_tutorials/mesh_navigation_tutorials/maps/parking_garage.ply'
35+
# In this examples, `mesh_file` is set dynamically from the launch file.
36+
# you can also set it statically:
37+
# mesh_file: '.../parking_garage.ply'
3538
mesh_part: '/'
3639
# storage
3740
# mesh_working_file: 'parking_garage.h5'
3841
mesh_working_part: 'mesh'
3942

4043
# half-edge-mesh implementation
41-
hem: pmp # pmp (default), lvr
44+
# pmp (default), lvr
45+
hem: pmp
4246

47+
# compute each layer's vertex costs in the following order
4348
layers: ['border', 'height_diff', 'roughness', 'inflation']
49+
# After computing the layers, a final combined vertex cost is determined by linearly combine all layers' vertex costs:
50+
# -> vertex_cost = layer1.combination_weight * layer1.vertex_cost + layer2.combination_weight * layer2.vertex_cost + ...
51+
# The lethal vertices are accumulated in a set along the layer list
4452

4553
height_diff:
4654
type: 'mesh_layers/HeightDiffLayer'
47-
factor: 1.0
55+
combination_weight: 0.0
4856
threshold: 0.8
4957

5058
border:
5159
type: 'mesh_layers/BorderLayer'
52-
factor: 1.0
60+
combination_weight: 0.0
5361
border_cost: 1.0
5462
threshold: 0.2
5563

5664
roughness:
5765
type: 'mesh_layers/RoughnessLayer'
58-
factor: 1.0
66+
combination_weight: 0.0
5967
threshold: 0.8
6068

6169
inflation:
6270
type: 'mesh_layers/InflationLayer'
63-
factor: 1.0
64-
inflation_radius: 0.5
65-
inscribed_radius: 0.7
66-
lethal_value: 1.0
67-
inscribed_value: 0.6
71+
combination_weight: 1.0
72+
inflation_radius: 1.5 # outer ring
73+
inscribed_radius: 0.4 # inner ring
74+
lethal_value: 1.0 # is also inscribed value
75+
inscribed_value: 1.0
6876
repulsive_field: false
77+
cost_scaling_factor: 2.0
78+
79+
# An edge cost equals the total costs that are collected along a
80+
# triangle's edge by linearly interpolating the combined vertex costs
81+
# This factor defines the factor that is used for the final edge weight
82+
# -> edge_weight = edge_length + edge_cost_factor * edge_cost
83+
# This edge_weight is then passed to the global planner to search for
84+
# the best path
85+
# Note: Set this to 0.0 if you need the shortest path
86+
edge_cost_factor: 5.0
87+
88+
# debug function: enable this, for publishing text markers with edge costs
89+
publish_edge_weights_text: false

mesh_navigation_tutorials/maps/floor_is_lava.dae

Lines changed: 0 additions & 66 deletions
This file was deleted.
-422 KB
Binary file not shown.

mesh_navigation_tutorials/maps/floor_is_lava_s3.dae

Lines changed: 0 additions & 243 deletions
This file was deleted.
-90.1 KB
Binary file not shown.
-237 KB
Binary file not shown.

mesh_navigation_tutorials/maps/parking_garage.dae

Lines changed: 0 additions & 56 deletions
This file was deleted.
-2.71 MB
Binary file not shown.
5.24 MB
Binary file not shown.

mesh_navigation_tutorials/maps/parking_garage_s4.dae

Lines changed: 0 additions & 211 deletions
This file was deleted.

0 commit comments

Comments
 (0)