|
3 | 3 | <arg name="enable_image_decompressor" default="true" description="enable image decompressor"/>
|
4 | 4 | <arg name="enable_fine_detection" default="true" description="enable fine position adjustment of traffic light"/>
|
5 | 5 | <arg name="fusion_only" default="false" description="launch only occlusion_predictor and multi_camera_fusion"/>
|
6 |
| - <arg name="traffic_light_fine_detector_model_path" default="$(find-pkg-share autoware_traffic_light_fine_detector)/data" description="fine detector label path"/> |
7 |
| - <arg name="traffic_light_fine_detector_label_name" default="tlr_labels.txt" description="fine detector label filename"/> |
8 |
| - <arg name="traffic_light_fine_detector_model_name" default="tlr_yolox_s_batch_6" description="fine detector onnx model filename"/> |
9 |
| - <arg name="traffic_light_classifier_model_path" default="$(find-pkg-share autoware_traffic_light_classifier)/data" description="classifier label path"/> |
10 |
| - <arg name="car_traffic_light_classifier_label_name" default="lamp_labels.txt" description="classifier label filename"/> |
11 |
| - <arg name="pedestrian_traffic_light_classifier_label_name" default="lamp_labels_ped.txt" description="classifier label filename"/> |
12 |
| - <arg name="car_traffic_light_classifier_model_name" default="traffic_light_classifier_mobilenetv2_batch_6.onnx" description="classifier onnx model filename"/> |
13 |
| - <arg name="pedestrian_traffic_light_classifier_model_name" default="ped_traffic_light_classifier_mobilenetv2_batch_6.onnx" description="classifier onnx model filename"/> |
14 | 6 | <arg name="input/cloud" default="/sensing/lidar/top/pointcloud_raw_ex" description="point cloud for occlusion prediction"/>
|
15 | 7 | <arg name="judged/traffic_signals" default="/perception/traffic_light_recognition/judged/traffic_signals"/>
|
16 | 8 | <arg name="internal/traffic_signals" default="/perception/traffic_light_recognition/internal/traffic_signals"/>
|
17 | 9 | <arg name="external/traffic_signals" default="/perception/traffic_light_recognition/external/traffic_signals"/>
|
18 | 10 | <arg name="output/traffic_signals" default="/perception/traffic_light_recognition/traffic_signals"/>
|
19 | 11 | <arg name="use_crosswalk_traffic_light_estimator" default="true" description="output pedestrian's traffic light signals"/>
|
20 | 12 | <arg name="crosswalk_traffic_light_estimator_param_file" default="$(find-pkg-share autoware_crosswalk_traffic_light_estimator)/config/crosswalk_traffic_light_estimator.param.yaml"/>
|
21 |
| - <arg name="image_number" default="1" description="choose image raw number(1-2)"/> |
22 |
| - <arg name="namespace1" default="camera6"/> |
23 |
| - <arg name="namespace2" default="camera7"/> |
24 |
| - <let name="all_camera_namespaces" value="[$(var namespace1)]" if="$(eval " '$(var image_number)' == '1' ")"/> |
25 |
| - <let name="all_camera_namespaces" value="[$(var namespace1), $(var namespace2)]" if="$(eval " '$(var image_number)' >= '2' ")"/> |
| 13 | + <arg name="all_camera_namespaces" default="[camera6, camera7]"/> |
26 | 14 |
|
| 15 | + <!-- ML parameters --> |
27 | 16 | <arg name="fine_detector_param_path" default="$(find-pkg-share autoware_traffic_light_fine_detector)/config/traffic_light_fine_detector.param.yaml"/>
|
28 | 17 | <arg name="car_classifier_param_path" default="$(find-pkg-share autoware_traffic_light_classifier)/config/car_traffic_light_classifier.param.yaml"/>
|
29 | 18 | <arg name="pedestrian_classifier_param_path" default="$(find-pkg-share autoware_traffic_light_classifier)/config/pedestrian_traffic_light_classifier.param.yaml"/>
|
| 19 | + <arg name="traffic_light_fine_detector_model_path" default="$(find-pkg-share autoware_traffic_light_fine_detector)/data" description="fine detector label path"/> |
| 20 | + <arg name="traffic_light_fine_detector_model_name" default="tlr_yolox_s_batch_6" description="fine detector onnx model filename"/> |
| 21 | + <arg name="traffic_light_fine_detector_label_name" default="tlr_labels.txt" description="fine detector label filename"/> |
| 22 | + <arg name="traffic_light_classifier_model_path" default="$(find-pkg-share autoware_traffic_light_classifier)/data" description="classifier label path"/> |
| 23 | + <arg name="car_traffic_light_classifier_label_name" default="lamp_labels.txt" description="classifier label filename"/> |
| 24 | + <arg name="pedestrian_traffic_light_classifier_label_name" default="lamp_labels_ped.txt" description="classifier label filename"/> |
| 25 | + <arg name="car_traffic_light_classifier_model_name" default="traffic_light_classifier_mobilenetv2_batch_6.onnx" description="classifier onnx model filename"/> |
| 26 | + <arg name="pedestrian_traffic_light_classifier_model_name" default="ped_traffic_light_classifier_mobilenetv2_batch_6.onnx" description="classifier onnx model filename"/> |
30 | 27 |
|
31 |
| - <!-- namespace1 camera TLR pipeline --> |
32 |
| - <group> |
33 |
| - <push-ros-namespace namespace="$(var namespace1)"/> |
34 |
| - <let name="input/image" value="/sensing/camera/$(var namespace1)/image_raw"/> |
35 |
| - <let name="input/camera_info" value="/sensing/camera/$(var namespace1)/camera_info"/> |
36 |
| - <let name="output/rois1" value="/perception/traffic_light_recognition/$(var namespace1)/detection/rois"/> |
37 |
| - <let name="output/traffic_signals1" value="/perception/traffic_light_recognition/$(var namespace1)/classification/traffic_signals"/> |
38 |
| - <let name="output/car/traffic_signals1" value="/perception/traffic_light_recognition/$(var namespace1)/classification/car/traffic_signals"/> |
39 |
| - <let name="output/pedestrian/traffic_signals1" value="/perception/traffic_light_recognition/$(var namespace1)/classification/pedestrian/traffic_signals"/> |
40 |
| - <let name="map_based_detector_output_topic" value="rough/rois" if="$(var enable_fine_detection)"/> |
41 |
| - <let name="map_based_detector_output_topic" value="$(var output/rois1)" unless="$(var enable_fine_detection)"/> |
42 |
| - |
43 |
| - <group unless="$(var fusion_only)"> |
44 |
| - <node pkg="topic_tools" exec="relay" name="traffic_light_camera_info_relay" args="$(var input/camera_info) camera_info"/> |
45 |
| - <group> |
46 |
| - <push-ros-namespace namespace="detection"/> |
47 |
| - <include file="$(find-pkg-share autoware_traffic_light_map_based_detector)/launch/traffic_light_map_based_detector.launch.xml"> |
48 |
| - <arg name="input/camera_info" value="$(var input/camera_info)"/> |
49 |
| - <arg name="expect/rois" value="expect/rois"/> |
50 |
| - <arg name="output/rois" value="$(var map_based_detector_output_topic)"/> |
51 |
| - <!-- This parameter should be configured differently for each camera considering their delay. --> |
52 |
| - <arg name="min_timestamp_offset" value="-0.3"/> |
53 |
| - <arg name="max_timestamp_offset" value="0.0"/> |
54 |
| - </include> |
55 |
| - </group> |
56 |
| - |
57 |
| - <include file="$(find-pkg-share tier4_perception_launch)/launch/traffic_light_recognition/traffic_light_node_container.launch.py"> |
58 |
| - <arg name="input/image" value="$(var input/image)"/> |
59 |
| - <arg name="enable_image_decompressor" value="$(var enable_image_decompressor)"/> |
60 |
| - <arg name="enable_fine_detection" value="$(var enable_fine_detection)"/> |
61 |
| - <arg name="use_intra_process" value="true"/> |
62 |
| - <arg name="use_multithread" value="true"/> |
63 |
| - <arg name="fine_detector_param_path" value="$(var fine_detector_param_path)"/> |
64 |
| - <arg name="car_classifier_param_path" value="$(var car_classifier_param_path)"/> |
65 |
| - <arg name="pedestrian_classifier_param_path" value="$(var pedestrian_classifier_param_path)"/> |
66 |
| - <arg name="output/rois" value="$(var output/rois1)"/> |
67 |
| - <arg name="output/traffic_signals" value="$(var output/traffic_signals1)"/> |
68 |
| - <arg name="output/car/traffic_signals" value="$(var output/car/traffic_signals1)"/> |
69 |
| - <arg name="output/pedestrian/traffic_signals" value="$(var output/pedestrian/traffic_signals1)"/> |
70 |
| - </include> |
71 |
| - </group> |
72 |
| - |
73 |
| - <group> |
74 |
| - <push-ros-namespace namespace="classification"/> |
75 |
| - <include file="$(find-pkg-share autoware_traffic_light_occlusion_predictor)/launch/traffic_light_occlusion_predictor.launch.xml"> |
76 |
| - <arg name="input/camera_info" value="$(var input/camera_info)"/> |
77 |
| - <arg name="input/cloud" value="$(var input/cloud)"/> |
78 |
| - <arg name="input/rois" value="$(var output/rois1)"/> |
79 |
| - <arg name="input/car/traffic_signals" value="classified/car/traffic_signals"/> |
80 |
| - <arg name="input/pedestrian/traffic_signals" value="classified/pedestrian/traffic_signals"/> |
81 |
| - <arg name="output/traffic_signals" value="$(var output/traffic_signals1)"/> |
82 |
| - </include> |
83 |
| - </group> |
| 28 | + <!-- main TLR pipeline on each camera --> |
| 29 | + <group unless="$(var fusion_only)"> |
| 30 | + <include file="$(find-pkg-share tier4_perception_launch)/launch/traffic_light_recognition/traffic_light_camera_info_relay.launch.py"> |
| 31 | + <arg name="all_camera_namespaces" value="$(var all_camera_namespaces)"/> |
| 32 | + </include> |
| 33 | + <include file="$(find-pkg-share tier4_perception_launch)/launch/traffic_light_recognition/traffic_light_map_based_detector.launch.py"> |
| 34 | + <arg name="all_camera_namespaces" value="$(var all_camera_namespaces)"/> |
| 35 | + <arg name="enable_fine_detection" value="$(var enable_fine_detection)"/> |
| 36 | + </include> |
| 37 | + <include file="$(find-pkg-share tier4_perception_launch)/launch/traffic_light_recognition/traffic_light_node_container.launch.py"> |
| 38 | + <arg name="all_camera_namespaces" value="$(var all_camera_namespaces)"/> |
| 39 | + <arg name="enable_image_decompressor" value="$(var enable_image_decompressor)"/> |
| 40 | + <arg name="enable_fine_detection" value="$(var enable_fine_detection)"/> |
| 41 | + <arg name="use_intra_process" value="true"/> |
| 42 | + <arg name="use_multithread" value="true"/> |
| 43 | + <arg name="fine_detector_param_path" value="$(var fine_detector_param_path)"/> |
| 44 | + <arg name="car_classifier_param_path" value="$(var car_classifier_param_path)"/> |
| 45 | + <arg name="pedestrian_classifier_param_path" value="$(var pedestrian_classifier_param_path)"/> |
| 46 | + </include> |
84 | 47 | </group>
|
85 | 48 |
|
86 |
| - <!-- namespace2 camera TLR pipeline --> |
87 |
| - <group if="$(eval " '$(var image_number)' >= '2' ")"> |
88 |
| - <push-ros-namespace namespace="$(var namespace2)"/> |
89 |
| - <let name="input/image" value="/sensing/camera/$(var namespace2)/image_raw"/> |
90 |
| - <let name="input/camera_info" value="/sensing/camera/$(var namespace2)/camera_info"/> |
91 |
| - <let name="output/rois2" value="/perception/traffic_light_recognition/$(var namespace2)/detection/rois"/> |
92 |
| - <let name="output/traffic_signals2" value="/perception/traffic_light_recognition/$(var namespace2)/classification/traffic_signals"/> |
93 |
| - <let name="output/car/traffic_signals2" value="/perception/traffic_light_recognition/$(var namespace2)/classification/car/traffic_signals"/> |
94 |
| - <let name="output/pedestrian/traffic_signals2" value="/perception/traffic_light_recognition/$(var namespace2)/classification/pedestrian/traffic_signals"/> |
95 |
| - <let name="map_based_detector_output_topic" value="rough/rois" if="$(var enable_fine_detection)"/> |
96 |
| - <let name="map_based_detector_output_topic" value="rois" unless="$(var enable_fine_detection)"/> |
97 |
| - |
98 |
| - <group unless="$(var fusion_only)"> |
99 |
| - <node pkg="topic_tools" exec="relay" name="traffic_light_camera_info_relay" args="$(var input/camera_info) camera_info"/> |
100 |
| - <group> |
101 |
| - <push-ros-namespace namespace="detection"/> |
102 |
| - <include file="$(find-pkg-share autoware_traffic_light_map_based_detector)/launch/traffic_light_map_based_detector.launch.xml"> |
103 |
| - <arg name="input/camera_info" value="$(var input/camera_info)"/> |
104 |
| - <arg name="expect/rois" value="expect/rois"/> |
105 |
| - <arg name="output/rois" value="$(var map_based_detector_output_topic)"/> |
106 |
| - <!-- This parameter should be configured differently for each camera considering their delay. --> |
107 |
| - <arg name="min_timestamp_offset" value="-0.04"/> |
108 |
| - <arg name="max_timestamp_offset" value="0.0"/> |
109 |
| - </include> |
110 |
| - </group> |
111 |
| - |
112 |
| - <include file="$(find-pkg-share tier4_perception_launch)/launch/traffic_light_recognition/traffic_light_node_container.launch.py"> |
113 |
| - <arg name="input/image" value="$(var input/image)"/> |
114 |
| - <arg name="enable_image_decompressor" value="$(var enable_image_decompressor)"/> |
115 |
| - <arg name="enable_fine_detection" value="$(var enable_fine_detection)"/> |
116 |
| - <arg name="use_intra_process" value="true"/> |
117 |
| - <arg name="use_multithread" value="true"/> |
118 |
| - <arg name="fine_detector_param_path" value="$(var fine_detector_param_path)"/> |
119 |
| - <arg name="car_classifier_param_path" value="$(var car_classifier_param_path)"/> |
120 |
| - <arg name="pedestrian_classifier_param_path" value="$(var pedestrian_classifier_param_path)"/> |
121 |
| - <arg name="output/rois" value="$(var output/rois2)"/> |
122 |
| - <arg name="output/traffic_signals" value="$(var output/traffic_signals2)"/> |
123 |
| - <arg name="output/car/traffic_signals" value="$(var output/car/traffic_signals2)"/> |
124 |
| - <arg name="output/pedestrian/traffic_signals" value="$(var output/pedestrian/traffic_signals2)"/> |
125 |
| - </include> |
126 |
| - </group> |
127 |
| - |
128 |
| - <group> |
129 |
| - <push-ros-namespace namespace="classification"/> |
130 |
| - <include file="$(find-pkg-share autoware_traffic_light_occlusion_predictor)/launch/traffic_light_occlusion_predictor.launch.xml"> |
131 |
| - <arg name="input/camera_info" value="$(var input/camera_info)"/> |
132 |
| - <arg name="input/cloud" value="$(var input/cloud)"/> |
133 |
| - <arg name="input/rois" value="$(var output/rois2)"/> |
134 |
| - <arg name="input/car/traffic_signals" value="classified/car/traffic_signals"/> |
135 |
| - <arg name="input/pedestrian/traffic_signals" value="classified/pedestrian/traffic_signals"/> |
136 |
| - <arg name="output/traffic_signals" value="$(var output/traffic_signals2)"/> |
137 |
| - </include> |
138 |
| - </group> |
| 49 | + <!-- traffic_light_occlusion_predictor on each camera --> |
| 50 | + <group> |
| 51 | + <include file="$(find-pkg-share tier4_perception_launch)/launch/traffic_light_recognition/traffic_light_occlusion_predictor.launch.py"> |
| 52 | + <arg name="all_camera_namespaces" value="$(var all_camera_namespaces)"/> |
| 53 | + <arg name="input/cloud" value="$(var input/cloud)"/> |
| 54 | + </include> |
139 | 55 | </group>
|
140 | 56 |
|
141 | 57 | <!-- traffic_light_multi_camera_fusion -->
|
|
0 commit comments