Skip to content

Commit 0a9764b

Browse files
authored
Merge branch 'main' into refactor/image_projection_based_fusion
2 parents 665ebcf + 6be9a00 commit 0a9764b

24 files changed

+3633
-99
lines changed

perception/image_projection_based_fusion/README.md

+9
Original file line numberDiff line numberDiff line change
@@ -53,6 +53,15 @@ The timeout threshold should be set according to the postprocessing time.
5353
E.g, if the postprocessing time is around 50ms, the timeout threshold should be set smaller than 50ms, so that the whole processing time could be less than 100ms.
5454
current default value at autoware.universe for XX1: - timeout_ms: 50.0
5555

56+
#### The `build_only` option
57+
58+
The `pointpainting_fusion` node has `build_only` option to build the TensorRT engine file from the ONNX file.
59+
Although it is preferred to move all the ROS parameters in `.param.yaml` file in Autoware Universe, the `build_only` option is not moved to the `.param.yaml` file for now, because it may be used as a flag to execute the build as a pre-task. You can execute with the following command:
60+
61+
```bash
62+
ros2 launch image_projection_based_fusion pointpainting_fusion.launch.xml model_name:=pointpainting model_path:=/home/autoware/autoware_data/image_projection_based_fusion model_param_path:=$(ros2 pkg prefix image_projection_based_fusion --share)/config/pointpainting.param.yaml build_only:=true
63+
```
64+
5665
#### Known Limits
5766

5867
The rclcpp::TimerBase timer could not break a for loop, therefore even if time is out when fusing a roi msg at the middle, the program will run until all msgs are fused.

perception/image_projection_based_fusion/config/pointpainting.param.yaml

+6
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,11 @@
11
/**:
22
ros__parameters:
3+
trt_precision: fp16
4+
encoder_onnx_path: "$(var model_path)/pts_voxel_encoder_$(var model_name).onnx"
5+
encoder_engine_path: "$(var model_path)/pts_voxel_encoder_$(var model_name).engine"
6+
head_onnx_path: "$(var model_path)/pts_backbone_neck_head_$(var model_name).onnx"
7+
head_engine_path: "$(var model_path)/pts_backbone_neck_head_$(var model_name).engine"
8+
39
model_params:
410
class_names: ["CAR", "TRUCK", "BUS", "BICYCLE", "PEDESTRIAN"]
511
paint_class_names: ["CAR", "BICYCLE", "PEDESTRIAN"]

perception/image_projection_based_fusion/config/segmentation_pointcloud_fusion.param.yaml

+7-6
Original file line numberDiff line numberDiff line change
@@ -30,11 +30,12 @@
3030
filter_distance_threshold: 60.0
3131

3232
# fusion interface common params
33+
# debug
3334
debug_mode: false
35+
filter_scope_minx: -100
36+
filter_scope_maxx: 100
37+
filter_scope_miny: -100
38+
filter_scope_maxy: 100
39+
filter_scope_minz: -100
40+
filter_scope_maxz: 100
3441
image_buffer_size: 15
35-
filter_scope_min_x: -100.0
36-
filter_scope_min_y: -100.0
37-
filter_scope_min_z: -100.0
38-
filter_scope_max_x: 100.0
39-
filter_scope_max_y: 100.0
40-
filter_scope_max_z: 100.0

perception/image_projection_based_fusion/launch/pointpainting_fusion.launch.xml

+6-12
Original file line numberDiff line numberDiff line change
@@ -47,15 +47,12 @@
4747
<composable_node pkg="image_projection_based_fusion" plugin="image_projection_based_fusion::PointPaintingFusionNode" name="pointpainting">
4848
<remap from="~/input/pointcloud" to="$(var input/pointcloud)"/>
4949
<remap from="~/output/objects" to="$(var output/objects)"/>
50-
<param name="trt_precision" value="fp16"/>
51-
<param name="encoder_onnx_path" value="$(var model_path)/pts_voxel_encoder_$(var model_name).onnx"/>
52-
<param name="encoder_engine_path" value="$(var model_path)/pts_voxel_encoder_$(var model_name).engine"/>
53-
<param name="head_onnx_path" value="$(var model_path)/pts_backbone_neck_head_$(var model_name).onnx"/>
54-
<param name="head_engine_path" value="$(var model_path)/pts_backbone_neck_head_$(var model_name).engine"/>
55-
<param from="$(var model_param_path)"/>
50+
<param from="$(var model_param_path)" allow_substs="true"/>
5651
<param from="$(var sync_param_path)"/>
5752
<param from="$(var class_remapper_param_path)"/>
5853
<param name="rois_number" value="$(var input/rois_number)"/>
54+
55+
<!-- This parameter shall NOT be included in param file. See the PR from the git blame for details. -->
5956
<param name="build_only" value="$(var build_only)"/>
6057

6158
<!-- rois, camera and info -->
@@ -91,15 +88,12 @@
9188
<node pkg="image_projection_based_fusion" exec="pointpainting_fusion_node" name="pointpainting" output="screen">
9289
<remap from="~/input/pointcloud" to="$(var input/pointcloud)"/>
9390
<remap from="~/output/objects" to="$(var output/objects)"/>
94-
<param name="trt_precision" value="fp16"/>
95-
<param name="encoder_onnx_path" value="$(var model_path)/pts_voxel_encoder_$(var model_name).onnx"/>
96-
<param name="encoder_engine_path" value="$(var model_path)/pts_voxel_encoder_$(var model_name).engine"/>
97-
<param name="head_onnx_path" value="$(var model_path)/pts_backbone_neck_head_$(var model_name).onnx"/>
98-
<param name="head_engine_path" value="$(var model_path)/pts_backbone_neck_head_$(var model_name).engine"/>
99-
<param from="$(var model_param_path)"/>
91+
<param from="$(var model_param_path)" allow_substs="true"/>
10092
<param from="$(var sync_param_path)"/>
10193
<param from="$(var class_remapper_param_path)"/>
10294
<param name="rois_number" value="$(var input/rois_number)"/>
95+
96+
<!-- This parameter shall NOT be included in param file. See the PR from the git blame for details. -->
10397
<param name="build_only" value="$(var build_only)"/>
10498

10599
<!-- rois, camera and info -->

0 commit comments

Comments
 (0)