Skip to content

Commit

Permalink
feat(behavior_velocity): update grid map collision judgement using ob…
Browse files Browse the repository at this point in the history
…ject info (tier4#568)

* feature(behavior_velocity): update grid map utils

Signed-off-by: tanaka3 <[email protected]>

* feat(behavior_velocity): remove unused

Signed-off-by: tanaka3 <[email protected]>

* feat(behavior_velocity): early continue

Signed-off-by: tanaka3 <[email protected]>

* feat(behavior_velocity): add object info to occ grid and update collision judgement

Signed-off-by: tanaka3 <[email protected]>

* feat(behavior_velocity): add debug options

Signed-off-by: tanaka3 <[email protected]>

* chore(behavior_velocity): replace to planning utils

* chore(behavior_velocity): parametrize pedestrian radius and use planner data

Signed-off-by: tanaka3 <[email protected]>

* chore(behavior_velocity): update doc and minor change

Signed-off-by: tanaka3 <[email protected]>

* chore(behavior_velocity): minor change

Signed-off-by: tanaka3 <[email protected]>

* chore(behavior_velocity): update docs and update parameter from experiment

Signed-off-by: tanaka3 <[email protected]>

* feat(behavior_velocity): add compare polygon iterator and line iterator

Signed-off-by: tanaka3 <[email protected]>

* chore(behavior_velocity): reduce test verbose

Signed-off-by: tanaka3 <[email protected]>

* chore(behavior_velocity): to silent g-test

Signed-off-by: tanaka3 <[email protected]>

* chore(behavior_velocity): chores

Signed-off-by: tanaka3 <[email protected]>

* feat(behavior_velocity): add offset from front bumper

Signed-off-by: tanaka3 <[email protected]>

* chore(behavior_velocity): use clippled path as marker

Signed-off-by: tanaka3 <[email protected]>

* feat(behavior_velocity): add extract close partition

Signed-off-by: tanaka3 <[email protected]>

* fix(behavior_velocity): fix remaining

Signed-off-by: tanaka3 <[email protected]>

* chore(behavior_velocity): update debug marker

Signed-off-by: tanaka3 <[email protected]>

* feat(behavior_velocity): add ray option and tune param

Signed-off-by: tanaka3 <[email protected]>

* fix(behavior_velocity): fix predicted path

Signed-off-by: tanaka3 <[email protected]>
  • Loading branch information
taikitanaka3 authored and boyali committed Sep 28, 2022
1 parent cd7544d commit 0208e58
Show file tree
Hide file tree
Showing 18 changed files with 422 additions and 112 deletions.
26 changes: 22 additions & 4 deletions planning/behavior_velocity_planner/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -218,13 +218,31 @@ target_link_libraries(scene_module_virtual_traffic_light scene_module_lib)


# SceneModule OcclusionSpot
ament_auto_add_library(scene_module_occlusion_spot SHARED
# Util
ament_auto_add_library(occlusion_spot_lib SHARED
src/scene_module/occlusion_spot/grid_utils.cpp
src/scene_module/occlusion_spot/occlusion_spot_utils.cpp
src/scene_module/occlusion_spot/risk_predictive_braking.cpp
)

target_include_directories(occlusion_spot_lib
SYSTEM PUBLIC
${BOOST_INCLUDE_DIRS}
${tf2_geometry_msgs_INCLUDE_DIRS}
)

target_include_directories(occlusion_spot_lib
PUBLIC
$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>
$<INSTALL_INTERFACE:include>
)

ament_target_dependencies(occlusion_spot_lib ${BEHAVIOR_VELOCITY_PLANNER_DEPENDENCIES})

ament_auto_add_library(scene_module_occlusion_spot SHARED
src/scene_module/occlusion_spot/manager.cpp
src/scene_module/occlusion_spot/debug.cpp
src/scene_module/occlusion_spot/scene_occlusion_spot.cpp
src/scene_module/occlusion_spot/occlusion_spot_utils.cpp
src/scene_module/occlusion_spot/risk_predictive_braking.cpp
)

target_include_directories(scene_module_occlusion_spot
Expand All @@ -235,7 +253,7 @@ target_include_directories(scene_module_occlusion_spot

ament_target_dependencies(scene_module_occlusion_spot ${BEHAVIOR_VELOCITY_PLANNER_DEPENDENCIES})

target_link_libraries(scene_module_occlusion_spot scene_module_lib)
target_link_libraries(scene_module_occlusion_spot scene_module_lib occlusion_spot_lib)

# Scene Module Manager
ament_auto_add_library(scene_module_manager SHARED
Expand Down
Original file line number Diff line number Diff line change
@@ -1,11 +1,17 @@
/**:
ros__parameters:
occlusion_spot:
detection_method: "predicted_object" # [-] candidate is "occupancy_grid" or "predicted_object"
pass_judge: "current_velocity" # [-] candidate is "current_velocity""
debug: false # [-] whether to publish debug markers. Note Default should be false for performance
use_partition_lanelet: true # [-] whether to use partition lanelet map data
pedestrian_vel: 1.0 # [m/s] assume pedestrian is dashing from occlusion at this velocity
detection_method: "predicted_object" # [-] candidate is "occupancy_grid" or "predicted_object"
pass_judge: "current_velocity" # [-] candidate is "current_velocity"
filter_occupancy_grid: true # [-] whether to filter occupancy grid by morphologyEx or not
use_object_info: true # [-] whether to reflect object info to occupancy grid map or not
use_partition_lanelet: true # [-] whether to use partition lanelet map data
pedestrian_vel: 1.5 # [m/s] assume pedestrian is dashing from occlusion at this velocity
pedestrian_radius: 0.3 # [m] assume pedestrian width(0.2m) + margin(0.1m)
debug: # !Note: default should be false for performance
is_show_occlusion: false # [-] whether to show occlusion point markers.
is_show_cv_window: false # [-] whether to show open_cv debug window
is_show_processing_time: false # [-] whether to show processing time
threshold:
detection_area_length: 100.0 # [m] the length of path to consider perception range
stuck_vehicle_vel: 1.0 # [m/s] velocity below this value is assumed to stop
Expand All @@ -17,12 +23,12 @@
non_effective_jerk: -0.3 # [m/s^3] weak jerk for velocity planning.
non_effective_acceleration: -1.0 # [m/s^2] weak deceleration for velocity planning.
min_allowed_velocity: 1.0 # [m/s] minimum velocity allowed
delay_time: 0.1 # [s] safety time buffer for delay system response
safe_margin: 1.0 # [m] maximum safety distance for any error
safe_margin: 2.0 # [m] margin for detection failure(0.5m) + pedestrian radius(0.5m) + safe margin(1.0m)
detection_area:
min_occlusion_spot_size: 1.0 # [m] occupancy grid must contain an UNKNOWN area of at least size NxN to be considered a hidden obstacle.
slice_length: 10.0 # [m] size of slices in both length and distance relative to the ego path.
max_lateral_distance: 4.0 # [m] buffer around the ego path used to build the detection area.
min_longitudinal_offset: 1.0 # [m] detection area safety buffer from front bumper.
max_lateral_distance: 6.0 # [m] buffer around the ego path used to build the detection area.
grid:
free_space_max: 40 # [-] maximum value of a free space cell in the occupancy grid
occupied_min: 60 # [-] minimum value of an occupied cell in the occupancy grid
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading

0 comments on commit 0208e58

Please sign in to comment.