diff --git a/build_depends.repos b/build_depends.repos
index 0b81f20483..d7b72add90 100644
--- a/build_depends.repos
+++ b/build_depends.repos
@@ -3,3 +3,27 @@ repositories:
type: git
url: https://github.com/autowarefoundation/autoware_msgs.git
version: main
+ autoware_utils:
+ type: git
+ url: https://github.com/autowarefoundation/autoware_utils
+ version: main
+ autoware_internal_msgs:
+ type: git
+ url: https://github.com/autowarefoundation/autoware_internal_msgs
+ version: main
+ autoware_adapi_msgs:
+ type: git
+ url: https://github.com/autowarefoundation/autoware_adapi_msgs
+ version: main
+ autoware_lanelet2_extension:
+ type: git
+ url: https://github.com/autowarefoundation/autoware_lanelet2_extension
+ version: main
+ autoware_lanelet2_extension:
+ type: git
+ url: https://github.com/autowarefoundation/autoware_lanelet2_extension
+ version: main
+ autoware_msgs:
+ type: git
+ url: https://github.com/autowarefoundation/autoware_msgs
+ version: main
diff --git a/common/autoware_test_utils/CMakeLists.txt b/common/autoware_test_utils/CMakeLists.txt
new file mode 100644
index 0000000000..8bfa44f7bf
--- /dev/null
+++ b/common/autoware_test_utils/CMakeLists.txt
@@ -0,0 +1,29 @@
+cmake_minimum_required(VERSION 3.14)
+project(autoware_test_utils)
+
+find_package(autoware_cmake REQUIRED)
+autoware_package()
+
+ament_auto_add_library(autoware_test_utils SHARED
+ src/autoware_test_utils.cpp
+ src/mock_data_parser.cpp
+)
+
+ament_auto_add_executable(topic_snapshot_saver src/topic_snapshot_saver.cpp)
+
+target_link_libraries(topic_snapshot_saver autoware_test_utils)
+
+if(BUILD_TESTING)
+ ament_auto_add_gtest(test_autoware_test_utils
+ test/test_mock_data_parser.cpp
+ test/test_autoware_test_manager.cpp
+ )
+endif()
+
+ament_auto_package(INSTALL_TO_SHARE
+ config
+ test_map
+ test_data
+ launch
+ rviz
+)
diff --git a/common/autoware_test_utils/README.md b/common/autoware_test_utils/README.md
new file mode 100644
index 0000000000..54b67d279e
--- /dev/null
+++ b/common/autoware_test_utils/README.md
@@ -0,0 +1,106 @@
+# Test Utils
+
+## Background
+
+Several Autoware's components and modules have already adopted unit testing, so a common library to ease the process of writing unit tests is necessary.
+
+## Purpose
+
+The objective of the `test_utils` is to develop a unit testing library for the Autoware components. This library will include
+
+- commonly used functions
+- input/mock data parser
+- maps for testing
+- common routes and mock data for testing.
+
+## Available Maps
+
+The following maps are available [here](https://github.com/autowarefoundation/autoware.universe/tree/main/common/autoware_test_utils/test_map)
+
+### Common
+
+The common map contains multiple types of usable inputs, including shoulder lanes, intersections, and some regulatory elements. The common map is named `lanelet2_map.osm` in the folder.
+
+![common](./images/common.png)
+
+### 2 km Straight
+
+The 2 km straight lanelet map consists of two lanes that run in the same direction. The map is named `2km_test.osm`.
+
+![two_km](./images/2km-test.png)
+
+The following illustrates the design of the map.
+
+![straight_diagram](./images/2km-test.svg)
+
+### road_shoulders
+
+The road_shoulders lanelet map consist of a variety of pick-up/drop-off site maps with road_shoulder tags including:
+
+- pick-up/drop-off sites on the side of street lanes
+- pick-up/drop-off sites on the side of curved lanes
+- pick-up/drop-off sites inside a private area
+
+![road_shoulder_test](./images/road_shoulder_test_map.png)
+
+You can easily launch planning_simulator by
+
+```bash
+ros2 launch autoware_test_utils psim_road_shoulder.launch.xml vehicle_model:=<> sensor_model:=<> use_sim_time:=true
+```
+
+### intersection
+
+The intersections lanelet map consist of a variety of intersections including:
+
+- 4-way crossing with traffic light
+- 4-way crossing without traffic light
+- T-shape crossing without traffic light
+- intersection with a loop
+- complicated intersection
+
+![intersection_test](./images/intersection_test_map.png)
+
+You can easily launch planning_simulator by
+
+```bash
+ros2 launch autoware_test_utils psim_intersection.launch.xml vehicle_model:=<> sensor_model:=<> use_sim_time:=true
+```
+
+## Example use cases
+
+### Autoware Planning Test Manager
+
+The goal of the [Autoware Planning Test Manager](https://autowarefoundation.github.io/autoware.universe/main/planning/autoware_planning_test_manager/) is to test planning module nodes. The `PlanningInterfaceTestManager` class ([source code](https://github.com/autowarefoundation/autoware.universe/blob/main/planning/autoware_planning_test_manager/src/autoware_planning_test_manager.cpp)) creates wrapper functions based on the `test_utils` functions.
+
+### Generate test data for unit testing
+
+As presented in this [PR description](https://github.com/autowarefoundation/autoware.universe/pull/9207), the user can save a snapshot of the scene to a yaml file while running Planning Simulation on the test map.
+
+```bash
+ros2 launch autoware_test_utils psim_road_shoulder.launch.xml
+ros2 launch autoware_test_utils psim_intersection.launch.xml
+```
+
+It uses the autoware `sample_vehicle_description` and `sample_sensor_kit` by default, and `autoware_test_utils/config/test_vehicle_info.param.yaml` is exactly the same as that of `sample_vehicle_description`. If specified, `vehicle_model`/`sensor_model` argument is available.
+
+```bash
+ros2 service call /autoware_test_utils/topic_snapshot_saver std_srvs/srv/Empty \{\}
+```
+
+The list and field names of the topics to be saved are specified in `config/sample_topic_snapshot.yaml`.
+
+```yaml
+# setting
+fields:
+ - name: self_odometry # this is the field name for this topic
+ type: Odometry # the abbreviated type name of this topic
+ topic: /localization/kinematic_state # the name of this topic
+
+# output
+self_odometry:
+ - header: ...
+ ...
+```
+
+Each field can be parsed to ROS message type using the functions defined in `autoware_test_utils/mock_data_parser.hpp`
diff --git a/common/autoware_test_utils/config/path_with_lane_id_data.yaml b/common/autoware_test_utils/config/path_with_lane_id_data.yaml
new file mode 100644
index 0000000000..3c97143247
--- /dev/null
+++ b/common/autoware_test_utils/config/path_with_lane_id_data.yaml
@@ -0,0 +1,973 @@
+header:
+ stamp:
+ sec: 1681359948
+ nanosec: 547141221
+ frame_id: map
+points:
+ - point:
+ pose:
+ position:
+ x: 3715.5740795767524
+ y: 73720.05420502694
+ z: 19.32159271846531
+ orientation:
+ x: -0.00012492665895144978
+ y: 0.0005080452893778649
+ z: 0.2387835635176333
+ w: 0.9710726729123492
+ longitudinal_velocity_mps: 8.333333015441895
+ lateral_velocity_mps: 0.0
+ heading_rate_rps: 0.0
+ is_final: false
+ lane_ids:
+ - 9102
+ - point:
+ pose:
+ position:
+ x: 3717.3460091535017
+ y: 73720.98171005391
+ z: 19.323685436930614
+ orientation:
+ x: -0.0001249266589515537
+ y: 0.0005080452893780565
+ z: 0.2387835635177357
+ w: 0.971072672912324
+ longitudinal_velocity_mps: 8.333333015441895
+ lateral_velocity_mps: 0.0
+ heading_rate_rps: 0.0
+ is_final: false
+ lane_ids:
+ - 9102
+ - point:
+ pose:
+ position:
+ x: 3719.11793873025
+ y: 73721.90921508087
+ z: 19.325778155395916
+ orientation:
+ x: -0.0001249266589531248
+ y: 0.000508045289375651
+ z: 0.23878356352163355
+ w: 0.9710726729113656
+ longitudinal_velocity_mps: 8.333333015441895
+ lateral_velocity_mps: 0.0
+ heading_rate_rps: 0.0
+ is_final: false
+ lane_ids:
+ - 9102
+ - point:
+ pose:
+ position:
+ x: 3720.8898683069915
+ y: 73722.83672010785
+ z: 19.32787087386121
+ orientation:
+ x: -0.000310683506242536
+ y: 0.0012634693896696495
+ z: 0.23878379678994716
+ w: 0.9710718848321361
+ longitudinal_velocity_mps: 8.333333015441895
+ lateral_velocity_mps: 0.0
+ heading_rate_rps: 0.0
+ is_final: false
+ lane_ids:
+ - 9102
+ - point:
+ pose:
+ position:
+ x: 3722.6617971144556
+ y: 73723.76422660447
+ z: 19.333075314637686
+ orientation:
+ x: -0.0003921929665141434
+ y: 0.001594941534042793
+ z: 0.2387844856659324
+ w: 0.9710711980856173
+ longitudinal_velocity_mps: 8.333333015441895
+ lateral_velocity_mps: 0.0
+ heading_rate_rps: 0.0
+ is_final: false
+ lane_ids:
+ - 9102
+ - point:
+ pose:
+ position:
+ x: 3724.433724376814
+ y: 73724.69173605289
+ z: 19.339645155612516
+ orientation:
+ x: -0.00039219245860208326
+ y: 0.0015949416581376968
+ z: 0.23878417653940906
+ w: 0.9710712740991666
+ longitudinal_velocity_mps: 8.333333015441895
+ lateral_velocity_mps: 0.0
+ heading_rate_rps: 0.0
+ is_final: false
+ lane_ids:
+ - 9102
+ - point:
+ pose:
+ position:
+ x: 3725.24415
+ y: 73725.11595
+ z: 19.34265
+ orientation:
+ x: -0.0002959351487701356
+ y: 0.0012039266025741496
+ z: 0.23870246198693626
+ w: 0.9710919614663168
+ longitudinal_velocity_mps: 8.333333015441895
+ lateral_velocity_mps: 0.0
+ heading_rate_rps: 0.0
+ is_final: false
+ lane_ids:
+ - 9102
+ - 9540
+ - point:
+ pose:
+ position:
+ x: 3726.2057370620514
+ y: 73725.61908227473
+ z: 19.345340943452
+ orientation:
+ x: -0.00029572536087377183
+ y: 0.001203978076825147
+ z: 0.2385332600613671
+ w: 0.9711335370729391
+ longitudinal_velocity_mps: 8.333333015441895
+ lateral_velocity_mps: 0.0
+ heading_rate_rps: 0.0
+ is_final: false
+ lane_ids:
+ - 9540
+ - point:
+ pose:
+ position:
+ x: 3727.9781442476115
+ y: 73726.54567429313
+ z: 19.35030001398721
+ orientation:
+ x: -0.00021110267262458964
+ y: 0.0008599917814071184
+ z: 0.23839323765808382
+ w: 0.971168306777303
+ longitudinal_velocity_mps: 8.333333015441895
+ lateral_velocity_mps: 0.0
+ heading_rate_rps: 0.0
+ is_final: false
+ lane_ids:
+ - 9540
+ - point:
+ pose:
+ position:
+ x: 3729.7508187263084
+ y: 73727.47175484717
+ z: 19.35384210838946
+ orientation:
+ x: -6.692141519012481e-05
+ y: 0.0002732311146433046
+ z: 0.23789445221110034
+ w: 0.9712909710655518
+ longitudinal_velocity_mps: 8.333333015441895
+ lateral_velocity_mps: 0.0
+ heading_rate_rps: 0.0
+ is_final: false
+ lane_ids:
+ - 9540
+ - point:
+ pose:
+ position:
+ x: 3731.5244436268235
+ y: 73728.3960138543
+ z: 19.35496733715985
+ orientation:
+ x: -1.6242011437904305e-05
+ y: 6.641944354783482e-05
+ z: 0.23753792578867083
+ w: 0.9713782626436884
+ longitudinal_velocity_mps: 8.333333015441895
+ lateral_velocity_mps: 0.0
+ heading_rate_rps: 0.0
+ is_final: false
+ lane_ids:
+ - 9540
+ - point:
+ pose:
+ position:
+ x: 3733.2987465610177
+ y: 73729.31897056928
+ z: 19.355240843151954
+ orientation:
+ x: 0.00018936146763009307
+ y: -0.0007793818555571481
+ z: 0.236094991504571
+ w: 0.9717296494872504
+ longitudinal_velocity_mps: 8.333333015441895
+ lateral_velocity_mps: 0.0
+ heading_rate_rps: 0.0
+ is_final: false
+ lane_ids:
+ - 9540
+ - point:
+ pose:
+ position:
+ x: 3735.07578303753
+ y: 73730.23665317298
+ z: 19.352032616018658
+ orientation:
+ x: 0.0001900917198224421
+ y: -0.0007792079910932596
+ z: 0.23700434041186835
+ w: 0.9715082600400162
+ longitudinal_velocity_mps: 8.333333015441895
+ lateral_velocity_mps: 0.0
+ heading_rate_rps: 0.0
+ is_final: false
+ lane_ids:
+ - 9540
+ - point:
+ pose:
+ position:
+ x: 3736.8092500000002
+ y: 73731.13595
+ z: 19.3489
+ orientation:
+ x: 7.886260021628063e-05
+ y: -0.00032055994712992694
+ z: 0.23889203668732487
+ w: 0.9710460781185373
+ longitudinal_velocity_mps: 8.333333015441895
+ lateral_velocity_mps: 0.0
+ heading_rate_rps: 0.0
+ is_final: false
+ lane_ids:
+ - 9540
+ - 9546
+ - point:
+ pose:
+ position:
+ x: 3738.6227363153803
+ y: 73732.08572376282
+ z: 19.34754840033396
+ orientation:
+ x: 7.893340496191734e-05
+ y: -0.00032054260392099735
+ z: 0.23910646055901144
+ w: 0.9709933014912608
+ longitudinal_velocity_mps: 8.333333015441895
+ lateral_velocity_mps: 0.0
+ heading_rate_rps: 0.0
+ is_final: false
+ lane_ids:
+ - 9546
+ - point:
+ pose:
+ position:
+ x: 3740.3940486925344
+ y: 73733.01440695021
+ z: 19.346227927212833
+ orientation:
+ x: 0.00022440522723324796
+ y: -0.0009107235004995869
+ z: 0.23924725826360474
+ w: 0.970958222395973
+ longitudinal_velocity_mps: 8.333333015441895
+ lateral_velocity_mps: 0.0
+ heading_rate_rps: 0.0
+ is_final: false
+ lane_ids:
+ - 9546
+ - point:
+ pose:
+ position:
+ x: 3742.1650914887546
+ y: 73733.94360413808
+ z: 19.342476069385278
+ orientation:
+ x: 0.0002332790846132277
+ y: -0.000947163467295005
+ z: 0.23914570261323878
+ w: 0.9709832034509429
+ longitudinal_velocity_mps: 8.333333015441895
+ lateral_velocity_mps: 0.0
+ heading_rate_rps: 0.0
+ is_final: false
+ lane_ids:
+ - 9546
+ - point:
+ pose:
+ position:
+ x: 3743.936328602766
+ y: 73734.87243086356
+ z: 19.338574191926664
+ orientation:
+ x: 0.000226112916788845
+ y: -0.0009199350095595325
+ z: 0.23868786320777624
+ w: 0.9710958791745709
+ longitudinal_velocity_mps: 8.333333015441895
+ lateral_velocity_mps: 0.0
+ heading_rate_rps: 0.0
+ is_final: false
+ lane_ids:
+ - 9546
+ - point:
+ pose:
+ position:
+ x: 3745.7084408140895
+ y: 73735.79958689708
+ z: 19.334784923102248
+ orientation:
+ x: 0.00022481230257080656
+ y: -0.000915542859410791
+ z: 0.23846673302914229
+ w: 0.9711502090197526
+ longitudinal_velocity_mps: 8.333333015441895
+ lateral_velocity_mps: 0.0
+ heading_rate_rps: 0.0
+ is_final: false
+ lane_ids:
+ - 9546
+ - point:
+ pose:
+ position:
+ x: 3747.480975080877
+ y: 73736.72593579088
+ z: 19.331013956820804
+ orientation:
+ x: 0.00022096547458045463
+ y: -0.0009000029138000313
+ z: 0.23843520658566603
+ w: 0.9711579652298924
+ longitudinal_velocity_mps: 8.333333015441895
+ lateral_velocity_mps: 0.0
+ heading_rate_rps: 0.0
+ is_final: false
+ lane_ids:
+ - 9546
+ - point:
+ pose:
+ position:
+ x: 3749.25356949462
+ y: 73737.65216958662
+ z: 19.327307026665355
+ orientation:
+ x: 0.00021984685012575375
+ y: -0.0008955876604564825
+ z: 0.23839981306281235
+ w: 0.971166658571906
+ longitudinal_velocity_mps: 8.333333015441895
+ lateral_velocity_mps: 0.0
+ heading_rate_rps: 0.0
+ is_final: false
+ lane_ids:
+ - 9546
+ - point:
+ pose:
+ position:
+ x: 3751.026231417815
+ y: 73738.57827417362
+ z: 19.32361831509698
+ orientation:
+ x: 0.00021985229462805398
+ y: -0.0008955862317758568
+ z: 0.2384057401672238
+ w: 0.9711652035805176
+ longitudinal_velocity_mps: 8.333333015441895
+ lateral_velocity_mps: 0.0
+ heading_rate_rps: 0.0
+ is_final: false
+ lane_ids:
+ - 9546
+ - point:
+ pose:
+ position:
+ x: 3751.56365
+ y: 73738.85905
+ z: 19.322499999999998
+ orientation:
+ x: 0.00038211915951996884
+ y: -0.0015577432267740116
+ z: 0.2382395686330772
+ w: 0.9712050943845552
+ longitudinal_velocity_mps: 8.333333015441895
+ lateral_velocity_mps: 0.0
+ heading_rate_rps: 0.0
+ is_final: false
+ lane_ids:
+ - 9546
+ - 9178
+ - point:
+ pose:
+ position:
+ x: 3752.7991025330516
+ y: 73739.50397818141
+ z: 19.318029342200663
+ orientation:
+ x: 0.00038170668546860933
+ y: -0.0015578234532538037
+ z: 0.23798541524130806
+ w: 0.971267403766088
+ longitudinal_velocity_mps: 8.333333015441895
+ lateral_velocity_mps: 0.0
+ heading_rate_rps: 0.0
+ is_final: false
+ lane_ids:
+ - 9178
+ - point:
+ pose:
+ position:
+ x: 3754.572553718778
+ y: 73740.42857046552
+ z: 19.31161369413195
+ orientation:
+ x: 0.0003816081805609274
+ y: -0.0015577413453910945
+ z: 0.2379393079079524
+ w: 0.9712787002551749
+ longitudinal_velocity_mps: 8.333333015441895
+ lateral_velocity_mps: 0.0
+ heading_rate_rps: 0.0
+ is_final: false
+ lane_ids:
+ - 9178
+ - point:
+ pose:
+ position:
+ x: 3755.1569
+ y: 73740.73315
+ z: 19.3095
+ orientation:
+ x: 3.3651043495358337e-05
+ y: -0.00014983865010364847
+ z: 0.21912386053108962
+ w: 0.9756970381024725
+ longitudinal_velocity_mps: 8.333333015441895
+ lateral_velocity_mps: 0.0
+ heading_rate_rps: 0.0
+ is_final: false
+ lane_ids:
+ - 9178
+ - 54
+ - point:
+ pose:
+ position:
+ x: 3756.3691634450834
+ y: 73741.30657670146
+ z: 19.30908810917335
+ orientation:
+ x: 2.756305989731722e-05
+ y: -0.00015030185318417783
+ z: 0.18037674543436244
+ w: 0.9835975835452921
+ longitudinal_velocity_mps: 8.333333015441895
+ lateral_velocity_mps: 0.0
+ heading_rate_rps: 0.0
+ is_final: false
+ lane_ids:
+ - 54
+ - point:
+ pose:
+ position:
+ x: 3758.2390212156342
+ y: 73742.0162495662
+ z: 19.30847687576686
+ orientation:
+ x: -0.0004360373565484762
+ y: 0.004088265926675131
+ z: 0.10605342127152705
+ w: 0.994351933567658
+ longitudinal_velocity_mps: 8.333333015441895
+ lateral_velocity_mps: 0.0
+ heading_rate_rps: 0.0
+ is_final: false
+ lane_ids:
+ - 54
+ - point:
+ pose:
+ position:
+ x: 3760.194122023701
+ y: 73742.43809400384
+ z: 19.324923869837736
+ orientation:
+ x: 8.681609276137115e-05
+ y: 0.005224211276852721
+ z: -0.016615507728450753
+ w: 0.9998483009849177
+ longitudinal_velocity_mps: 8.333333015441895
+ lateral_velocity_mps: 0.0
+ heading_rate_rps: 0.0
+ is_final: false
+ lane_ids:
+ - 54
+ - point:
+ pose:
+ position:
+ x: 3762.1929591494604
+ y: 73742.37164218727
+ z: 19.345823843919984
+ orientation:
+ x: 0.0001531786687225762
+ y: 0.0015359491755148644
+ z: -0.09923660060229327
+ w: 0.9950626686281255
+ longitudinal_velocity_mps: 8.333333015441895
+ lateral_velocity_mps: 0.0
+ heading_rate_rps: 0.0
+ is_final: false
+ lane_ids:
+ - 54
+ - point:
+ pose:
+ position:
+ x: 3764.1535192009887
+ y: 73741.9766644188
+ z: 19.35199798787947
+ orientation:
+ x: 0.00017226521914067523
+ y: 0.000878641135546086
+ z: -0.19239571655372437
+ w: 0.9813170163439683
+ longitudinal_velocity_mps: 8.333333015441895
+ lateral_velocity_mps: 0.0
+ heading_rate_rps: 0.0
+ is_final: false
+ lane_ids:
+ - 54
+ - point:
+ pose:
+ position:
+ x: 3766.005183624521
+ y: 73741.22156956742
+ z: 19.355578943862316
+ orientation:
+ x: -0.0017237648178610864
+ y: -0.006155496494888137
+ z: -0.26965717149460783
+ w: 0.9629351734978226
+ longitudinal_velocity_mps: 8.333333015441895
+ lateral_velocity_mps: 0.0
+ heading_rate_rps: 0.0
+ is_final: false
+ lane_ids:
+ - 54
+ - point:
+ pose:
+ position:
+ x: 3767.7139130315963
+ y: 73740.18311995531
+ z: 19.33001414139043
+ orientation:
+ x: -0.0020068542186831096
+ y: -0.00475671285010973
+ z: -0.38871439637880045
+ w: 0.921343836071459
+ longitudinal_velocity_mps: 8.333333015441895
+ lateral_velocity_mps: 0.0
+ heading_rate_rps: 0.0
+ is_final: false
+ lane_ids:
+ - 54
+ - point:
+ pose:
+ position:
+ x: 3769.110057328236
+ y: 73738.74995264222
+ z: 19.309354169085896
+ orientation:
+ x: 0.001897599368611848
+ y: 0.00354829845105058
+ z: -0.4715851065133287
+ w: 0.8818113721253265
+ longitudinal_velocity_mps: 8.333333015441895
+ lateral_velocity_mps: 0.0
+ heading_rate_rps: 0.0
+ is_final: false
+ lane_ids:
+ - 54
+ - point:
+ pose:
+ position:
+ x: 3770.2207264862286
+ y: 73737.08614935388
+ z: 19.325453604588517
+ orientation:
+ x: 0.002207949729174236
+ y: 0.003771770275607204
+ z: -0.5051887257323875
+ w: 0.8629978274015921
+ longitudinal_velocity_mps: 8.333333015441895
+ lateral_velocity_mps: 0.0
+ heading_rate_rps: 0.0
+ is_final: false
+ lane_ids:
+ - 54
+ - point:
+ pose:
+ position:
+ x: 3770.9794
+ y: 73735.73485000001
+ z: 19.339
+ orientation:
+ x: 0.0012987300905163237
+ y: 0.002139902333252243
+ z: -0.5188316266762862
+ w: 0.8548727842659366
+ longitudinal_velocity_mps: 8.333333015441895
+ lateral_velocity_mps: 0.0
+ heading_rate_rps: 0.0
+ is_final: false
+ lane_ids:
+ - 54
+ - 112
+ - point:
+ pose:
+ position:
+ x: 3771.187290146968
+ y: 73735.33535985528
+ z: 19.341254605687745
+ orientation:
+ x: 0.0012987405080321385
+ y: 0.002139897912591106
+ z: -0.5188354513887092
+ w: 0.8548704629897391
+ longitudinal_velocity_mps: 8.333333015441895
+ lateral_velocity_mps: 0.0
+ heading_rate_rps: 0.0
+ is_final: false
+ lane_ids:
+ - 112
+ - point:
+ pose:
+ position:
+ x: 3772.1105224970565
+ y: 73733.56120032944
+ z: 19.351267403708185
+ orientation:
+ x: 0.001284637221584647
+ y: 0.002116691463527833
+ z: -0.5188299089220646
+ w: 0.8548739058670461
+ longitudinal_velocity_mps: 8.333333015441895
+ lateral_velocity_mps: 0.0
+ heading_rate_rps: 0.0
+ is_final: false
+ lane_ids:
+ - 112
+ - point:
+ pose:
+ position:
+ x: 3773.0337779331385
+ y: 73731.78705297508
+ z: 19.361171574493966
+ orientation:
+ x: 0.001142131909105283
+ y: 0.0018819208009395528
+ z: -0.5188232398247702
+ w: 0.8548787046865363
+ longitudinal_velocity_mps: 8.333333015441895
+ lateral_velocity_mps: 0.0
+ heading_rate_rps: 0.0
+ is_final: false
+ lane_ids:
+ - 112
+ - point:
+ pose:
+ position:
+ x: 3773.9570625659217
+ y: 73730.01292049112
+ z: 19.36997717485808
+ orientation:
+ x: 0.0011373590375455824
+ y: 0.0018740521620074502
+ z: -0.5188241107734224
+ w: 0.8548781997589371
+ longitudinal_velocity_mps: 8.333333015441895
+ lateral_velocity_mps: 0.0
+ heading_rate_rps: 0.0
+ is_final: false
+ lane_ids:
+ - 112
+ - point:
+ pose:
+ position:
+ x: 3774.88034355803
+ y: 73728.2387862816
+ z: 19.378745961639066
+ orientation:
+ x: 0.001085865951009278
+ y: 0.001760577504405141
+ z: -0.5249493938024202
+ w: 0.851130927183626
+ longitudinal_velocity_mps: 8.333333015441895
+ lateral_velocity_mps: 0.0
+ heading_rate_rps: 0.0
+ is_final: false
+ lane_ids:
+ - 112
+ - point:
+ pose:
+ position:
+ x: 3775.7780381215507
+ y: 73726.45160236803
+ z: 19.387019936812187
+ orientation:
+ x: 0.001097732717327821
+ y: 0.0017477932337268103
+ z: -0.5318646975336433
+ w: 0.8468268321912925
+ longitudinal_velocity_mps: 8.333333015441895
+ lateral_velocity_mps: 0.0
+ heading_rate_rps: 0.0
+ is_final: false
+ lane_ids:
+ - 112
+ - point:
+ pose:
+ position:
+ x: 3776.646678677668
+ y: 73724.64966197452
+ z: 19.39527727531804
+ orientation:
+ x: 0.001092720497131852
+ y: 0.0017513843126196664
+ z: -0.5293376353561939
+ w: 0.8484087496074152
+ longitudinal_velocity_mps: 8.333333015441895
+ lateral_velocity_mps: 0.0
+ heading_rate_rps: 0.0
+ is_final: false
+ lane_ids:
+ - 112
+ - point:
+ pose:
+ position:
+ x: 3777.52588447988
+ y: 73722.85326761093
+ z: 19.403534613823894
+ orientation:
+ x: 0.0011058496923820054
+ y: 0.001836501024357326
+ z: -0.515848443146248
+ w: 0.8566771784424034
+ longitudinal_velocity_mps: 8.333333015441895
+ lateral_velocity_mps: 0.0
+ heading_rate_rps: 0.0
+ is_final: false
+ lane_ids:
+ - 112
+ - point:
+ pose:
+ position:
+ x: 3778.362060546875
+ y: 73721.2734375
+ z: 19.411198429353448
+ orientation:
+ x: 0.0011058496923820054
+ y: 0.001836501024357326
+ z: -0.515848443146248
+ w: 0.8566771784424034
+ longitudinal_velocity_mps: 0.0
+ lateral_velocity_mps: 0.0
+ heading_rate_rps: 0.0
+ is_final: false
+ lane_ids:
+ - 112
+left_bound:
+ - x: 3714.4453347666704
+ y: 73721.13700770421
+ z: 19.284887409033047
+ - x: 3722.9174
+ y: 73725.5562
+ z: 19.297
+ - x: 3724.5488
+ y: 73726.3942
+ z: 19.2833
+ - x: 3728.6133
+ y: 73728.5323
+ z: 19.308
+ - x: 3729.2336
+ y: 73728.8553
+ z: 19.306
+ - x: 3733.699
+ y: 73731.1885
+ z: 19.317
+ - x: 3736.1127
+ y: 73732.4548
+ z: 19.3088
+ - x: 3738.1619
+ y: 73733.5217
+ z: 19.317
+ - x: 3738.7847
+ y: 73733.8477
+ z: 19.313
+ - x: 3744.0873
+ y: 73736.6186
+ z: 19.3
+ - x: 3750.9282
+ y: 73740.1584
+ z: 19.2908
+ - x: 3754.4655
+ y: 73742.0426
+ z: 19.278
+ - x: 3756.4876
+ y: 73743.096
+ z: 19.255
+ - x: 3757.8421
+ y: 73743.3924
+ z: 19.275
+ - x: 3758.958
+ y: 73743.6452
+ z: 19.294
+ - x: 3760.0928
+ y: 73743.7931
+ z: 19.315
+ - x: 3761.2364
+ y: 73743.8299
+ z: 19.333
+ - x: 3762.3789
+ y: 73743.765
+ z: 19.353
+ - x: 3763.5102
+ y: 73743.5894
+ z: 19.373
+ - x: 3764.6203
+ y: 73743.3092
+ z: 19.373
+ - x: 3765.6991
+ y: 73742.9276
+ z: 19.371
+ - x: 3766.7368
+ y: 73742.4448
+ z: 19.369
+ - x: 3767.7258
+ y: 73741.8701
+ z: 19.347
+ - x: 3768.6561
+ y: 73741.2005
+ z: 19.331
+ - x: 3769.5179
+ y: 73740.4516
+ z: 19.318
+ - x: 3770.3086
+ y: 73739.6233
+ z: 19.307
+ - x: 3771.0112
+ y: 73738.759
+ z: 19.293
+ - x: 3771.2311
+ y: 73738.47
+ z: 19.29
+ - x: 3772.1544
+ y: 73736.6942
+ z: 19.304
+ - x: 3772.2992
+ y: 73736.4122
+ z: 19.305
+ - x: 3774.9144
+ y: 73731.3856
+ z: 19.338
+ - x: 3777.6768
+ y: 73726.0769
+ z: 19.363
+ - x: 3777.9518
+ y: 73725.547
+ z: 19.364
+ - x: 3781.0066
+ y: 73719.6805
+ z: 19.39
+ - x: 3782.04730357663
+ y: 73717.67915221369
+ z: 19.400229050291234
+right_bound:
+ - x: 3715.820601233884
+ y: 73718.50963718728
+ z: 19.357252159643334
+ - x: 3723.0499
+ y: 73722.3069
+ z: 19.364
+ - x: 3725.9395
+ y: 73723.8377
+ z: 19.402
+ - x: 3736.3301
+ y: 73729.2369
+ z: 19.397
+ - x: 3737.5058
+ y: 73729.8171
+ z: 19.389
+ - x: 3745.1879
+ y: 73733.861
+ z: 19.374
+ - x: 3752.1991
+ y: 73737.5597
+ z: 19.3542
+ - x: 3755.8483
+ y: 73739.4237
+ z: 19.341
+ - x: 3757.8428
+ y: 73740.465
+ z: 19.337
+ - x: 3758.2933
+ y: 73740.6265
+ z: 19.335
+ - x: 3759.1305
+ y: 73740.8454
+ z: 19.331
+ - x: 3759.9869
+ y: 73740.9839
+ z: 19.336
+ - x: 3760.8525
+ y: 73741.0423
+ z: 19.338
+ - x: 3761.7197
+ y: 73741.0205
+ z: 19.339
+ - x: 3762.581
+ y: 73740.9156
+ z: 19.339
+ - x: 3763.4288
+ y: 73740.7307
+ z: 19.337
+ - x: 3764.2558
+ y: 73740.4659
+ z: 19.34
+ - x: 3765.0543
+ y: 73740.1274
+ z: 19.343
+ - x: 3765.8145
+ y: 73739.7124
+ z: 19.344
+ - x: 3766.5362
+ y: 73739.23
+ z: 19.335
+ - x: 3767.2071
+ y: 73738.6772
+ z: 19.32
+ - x: 3767.8247
+ y: 73738.0696
+ z: 19.305
+ - x: 3768.3815
+ y: 73737.4041
+ z: 19.289
+ - x: 3768.5939
+ y: 73737.106
+ z: 19.287
+ - x: 3769.6596
+ y: 73735.0575
+ z: 19.373
+ - x: 3772.4147
+ y: 73729.7643
+ z: 19.398
+ - x: 3775.1698
+ y: 73724.4711
+ z: 19.422
+ - x: 3776.7831
+ y: 73721.3721
+ z: 19.438
+ - x: 3779.2263
+ y: 73716.6739
+ z: 19.466
+ - x: 3779.4158436325565
+ y: 73716.30980852067
+ z: 19.467859942424305
diff --git a/common/autoware_test_utils/config/sample_topic_snapshot.yaml b/common/autoware_test_utils/config/sample_topic_snapshot.yaml
new file mode 100644
index 0000000000..8122d6e5f4
--- /dev/null
+++ b/common/autoware_test_utils/config/sample_topic_snapshot.yaml
@@ -0,0 +1,32 @@
+format_version: 1
+
+fields:
+ - name: self_odometry
+ type: Odometry # nav_msgs::msg::Odometry
+ topic: /localization/kinematic_state
+
+ - name: self_acceleration
+ type: AccelWithCovarianceStamped # geometry_msgs::msg::AccelWithCovarianceStamped
+ topic: /localization/acceleration
+
+ - name: operation_mode
+ type: OperationModeState # autoware_adapi_v1_msgs::msg::OperationModeState
+ topic: /system/operation_mode/state
+
+ - name: route
+ type: LaneletRoute # autoware_planning_msgs::msg::LaneletRoute
+ topic: /planning/mission_planning/route
+
+ - name: traffic_signal
+ type: TrafficLightGroupArray # autoware_perception_msgs::msg::TrafficLightGroupArray
+ topic: /perception/traffic_light_recognition/traffic_signals
+
+ - name: dynamic_object
+ type: PredictedObjects # autoware_perception_msgs::msg::PredictedObjects
+ topic: /perception/object_recognition/objects
+ # - name: tracked_object
+ # type: TrackedObjects # autoware_perception_msgs::msg::TrackedObjects
+ # topic: /perception/object_recognition/tracking/objects
+ # - name: path_with_lane_id
+ # type: PathWithLaneId # autoware_internal_planning_msgs::msg::PathWithLaneId
+ # topic: /planning/scenario_planning/lane_driving/behavior_planning/path_with_lane_id
diff --git a/common/autoware_test_utils/config/test_common.param.yaml b/common/autoware_test_utils/config/test_common.param.yaml
new file mode 100644
index 0000000000..6c547c8cd8
--- /dev/null
+++ b/common/autoware_test_utils/config/test_common.param.yaml
@@ -0,0 +1,17 @@
+/**:
+ ros__parameters:
+ # constraints param for normal driving
+ max_vel: 11.1 # max velocity limit [m/s]
+
+ normal:
+ min_acc: -1.0 # min deceleration [m/ss]
+ max_acc: 1.0 # max acceleration [m/ss]
+ min_jerk: -1.0 # min jerk [m/sss]
+ max_jerk: 1.0 # max jerk [m/sss]
+
+ # constraints to be observed
+ limit:
+ min_acc: -2.5 # min deceleration limit [m/ss]
+ max_acc: 1.0 # max acceleration limit [m/ss]
+ min_jerk: -1.5 # min jerk limit [m/sss]
+ max_jerk: 1.5 # max jerk limit [m/sss]
diff --git a/common/autoware_test_utils/config/test_nearest_search.param.yaml b/common/autoware_test_utils/config/test_nearest_search.param.yaml
new file mode 100644
index 0000000000..eb6709764c
--- /dev/null
+++ b/common/autoware_test_utils/config/test_nearest_search.param.yaml
@@ -0,0 +1,5 @@
+/**:
+ ros__parameters:
+ # ego
+ ego_nearest_dist_threshold: 3.0 # [m]
+ ego_nearest_yaw_threshold: 1.046 # [rad] = 60 [deg]
diff --git a/common/autoware_test_utils/config/test_vehicle_info.param.yaml b/common/autoware_test_utils/config/test_vehicle_info.param.yaml
new file mode 100644
index 0000000000..185ecb9e50
--- /dev/null
+++ b/common/autoware_test_utils/config/test_vehicle_info.param.yaml
@@ -0,0 +1,13 @@
+# NOTE: this configuration is exactly the same as that of sample_vehicle_description
+/**:
+ ros__parameters:
+ wheel_radius: 0.383 # The radius of the wheel, primarily used for dead reckoning.
+ wheel_width: 0.235 # The lateral width of a wheel tire, primarily used for dead reckoning.
+ wheel_base: 2.79 # between front wheel center and rear wheel center
+ wheel_tread: 1.64 # between left wheel center and right wheel center
+ front_overhang: 1.0 # between front wheel center and vehicle front
+ rear_overhang: 1.1 # between rear wheel center and vehicle rear
+ left_overhang: 0.128 # between left wheel center and vehicle left
+ right_overhang: 0.128 # between right wheel center and vehicle right
+ vehicle_height: 2.5
+ max_steer_angle: 0.70 # [rad]
diff --git a/common/autoware_test_utils/images/2km-test.png b/common/autoware_test_utils/images/2km-test.png
new file mode 100644
index 0000000000..297dc5a438
Binary files /dev/null and b/common/autoware_test_utils/images/2km-test.png differ
diff --git a/common/autoware_test_utils/images/2km-test.svg b/common/autoware_test_utils/images/2km-test.svg
new file mode 100644
index 0000000000..26632cdde9
--- /dev/null
+++ b/common/autoware_test_utils/images/2km-test.svg
@@ -0,0 +1,505 @@
+
+
+
diff --git a/common/autoware_test_utils/images/common.png b/common/autoware_test_utils/images/common.png
new file mode 100644
index 0000000000..340437b53c
Binary files /dev/null and b/common/autoware_test_utils/images/common.png differ
diff --git a/common/autoware_test_utils/images/intersection_test_map.png b/common/autoware_test_utils/images/intersection_test_map.png
new file mode 100644
index 0000000000..a2f3db6ad2
Binary files /dev/null and b/common/autoware_test_utils/images/intersection_test_map.png differ
diff --git a/common/autoware_test_utils/images/road_shoulder_test_map.png b/common/autoware_test_utils/images/road_shoulder_test_map.png
new file mode 100644
index 0000000000..0815bd9353
Binary files /dev/null and b/common/autoware_test_utils/images/road_shoulder_test_map.png differ
diff --git a/common/autoware_test_utils/include/autoware_test_utils/autoware_test_utils.hpp b/common/autoware_test_utils/include/autoware_test_utils/autoware_test_utils.hpp
new file mode 100644
index 0000000000..a15fb1fc77
--- /dev/null
+++ b/common/autoware_test_utils/include/autoware_test_utils/autoware_test_utils.hpp
@@ -0,0 +1,651 @@
+// Copyright 2023 Tier IV, Inc.
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+#ifndef AUTOWARE_TEST_UTILS__AUTOWARE_TEST_UTILS_HPP_
+#define AUTOWARE_TEST_UTILS__AUTOWARE_TEST_UTILS_HPP_
+
+#include
+#include
+
+#include
+#include
+#include
+#include
+#include
+#include
+#include
+#include
+#include
+#include
+#include
+#include
+#include
+#include
+#include
+
+#include
+
+#include
+#include
+#include
+#include
+#include
+#include
+#include
+#include
+
+namespace autoware::test_utils
+{
+using autoware_adapi_v1_msgs::msg::OperationModeState;
+using autoware_internal_planning_msgs::msg::PathPointWithLaneId;
+using autoware_internal_planning_msgs::msg::PathWithLaneId;
+using autoware_map_msgs::msg::LaneletMapBin;
+using autoware_planning_msgs::msg::LaneletPrimitive;
+using autoware_planning_msgs::msg::LaneletRoute;
+using autoware_planning_msgs::msg::LaneletSegment;
+using autoware_planning_msgs::msg::Path;
+using autoware_planning_msgs::msg::Trajectory;
+using RouteSections = std::vector;
+using autoware_internal_planning_msgs::msg::Scenario;
+using geometry_msgs::msg::Point;
+using geometry_msgs::msg::Pose;
+using geometry_msgs::msg::PoseStamped;
+using nav_msgs::msg::OccupancyGrid;
+using nav_msgs::msg::Odometry;
+using tf2_msgs::msg::TFMessage;
+
+/**
+ * @brief Creates a Pose message with the specified position and orientation.
+ *
+ * This function initializes a geometry_msgs::msg::Pose message with the
+ * given position (x, y, z) and orientation (roll, pitch, yaw).
+ *
+ * @param x The x-coordinate of the position.
+ * @param y The y-coordinate of the position.
+ * @param z The z-coordinate of the position.
+ * @param roll The roll component of the orientation (in radians).
+ * @param pitch The pitch component of the orientation (in radians).
+ * @param yaw The yaw component of the orientation (in radians).
+ * @return A geometry_msgs::msg::Pose message with the specified position
+ * and orientation.
+ */
+geometry_msgs::msg::Pose createPose(
+ double x, double y, double z, double roll, double pitch, double yaw);
+
+/**
+ * @brief Creates a Pose message from a 4-element array representing a 3D pose.
+ *
+ * This function initializes a geometry_msgs::msg::Pose message using a
+ * std::array of four doubles, where the first three elements represent the
+ * position (x, y, z) and the fourth element represents the yaw orientation.
+ * The roll and pitch orientations are assumed to be zero.
+ *
+ * @param pose3d A std::array of four doubles representing the 3D pose. The
+ * first element is the x-coordinate, the second is the y-coordinate, the
+ * third is the z-coordinate, and the fourth is the yaw orientation.
+ * @return A geometry_msgs::msg::Pose message with the specified position
+ * and yaw orientation, with roll and pitch set to zero.
+ */
+geometry_msgs::msg::Pose createPose(const std::array & pose3d);
+
+/**
+ * @brief Creates a LaneletSegment with the specified ID.
+ *
+ * Initializes a LaneletSegment containing a single LaneletPrimitive with the
+ * given ID and a primitive type of "lane".
+ *
+ * @param id The ID for the LaneletPrimitive and preferred primitive.
+ * @return A LaneletSegment with the specified ID.
+ */
+LaneletSegment createLaneletSegment(int id);
+
+/**
+ * @brief Loads a Lanelet map from a specified file.
+ *
+ * This function loads a Lanelet2 map using the given filename. It uses the MGRS
+ * projector and checks for any errors during the loading process. If errors
+ * are found, they are logged, and the function returns nullptr.
+ *
+ * @param lanelet2_filename The filename of the Lanelet2 map to load.
+ * @return A LaneletMapPtr to the loaded map, or nullptr if there were errors.
+ */
+lanelet::LaneletMapPtr loadMap(const std::string & lanelet2_filename);
+
+/**
+ * @brief Converts a Lanelet map to a LaneletMapBin message.
+ *
+ * This function converts a given Lanelet map to a LaneletMapBin message. It also
+ * parses the format and map versions from the specified filename and includes
+ * them in the message. The timestamp for the message is set to the provided time.
+ *
+ * @param map The Lanelet map to convert.
+ * @param lanelet2_filename The filename of the Lanelet2 map, used to parse format and map versions.
+ * @param now The current time to set in the message header.
+ * @return A LaneletMapBin message containing the converted map data.
+ */
+LaneletMapBin convertToMapBinMsg(
+ const lanelet::LaneletMapPtr map, const std::string & lanelet2_filename,
+ const rclcpp::Time & now);
+
+/**
+ * @brief Creates a normal Lanelet route with predefined start and goal poses.
+ *
+ * This function initializes a LaneletRoute with a predefined start and goal pose.
+ *
+ * @return A LaneletRoute with the specified start and goal poses.
+ */
+LaneletRoute makeNormalRoute();
+
+/**
+ * @brief Creates an OccupancyGrid message with the specified dimensions and resolution.
+ *
+ * This function initializes an OccupancyGrid message with given width, height, and resolution.
+ * All cells in the grid are initialized to zero.
+ *
+ * @param width The width of the occupancy grid.
+ * @param height The height of the occupancy grid.
+ * @param resolution The resolution of the occupancy grid.
+ * @return An OccupancyGrid message with the specified dimensions and resolution.
+ */
+OccupancyGrid makeCostMapMsg(size_t width = 150, size_t height = 150, double resolution = 0.2);
+
+/**
+ * @brief Get the absolute path to the lanelet map file.
+ *
+ * This function retrieves the absolute path to a lanelet map file located in the
+ * package's share directory under the "test_map" folder.
+ *
+ * @param package_name The name of the package containing the map file.
+ * @param map_filename The name of the map file.
+ * @return A string representing the absolute path to the lanelet map file.
+ */
+std::string get_absolute_path_to_lanelet_map(
+ const std::string & package_name, const std::string & map_filename);
+
+/**
+ * @brief Get the absolute path to the route file.
+ *
+ * This function retrieves the absolute path to a route file located in the
+ * package's share directory under the "test_route" folder.
+ *
+ * @param package_name The name of the package containing the route file.
+ * @param route_filename The name of the route file.
+ * @return A string representing the absolute path to the route file.
+ */
+std::string get_absolute_path_to_route(
+ const std::string & package_name, const std::string & route_filename);
+
+/**
+ * @brief Get the absolute path to the config file.
+ *
+ * This function retrieves the absolute path to a route file located in the
+ * package's share directory under the "config" folder.
+ *
+ * @param package_name The name of the package containing the route file.
+ * @param route_filename The name of the config file.
+ * @return A string representing the absolute path to the config file.
+ */
+std::string get_absolute_path_to_config(
+ const std::string & package_name, const std::string & config_filename);
+
+/**
+ * @brief Creates a LaneletMapBin message from a Lanelet map file.
+ *
+ * This function loads a Lanelet map from the given file, overwrites the
+ * centerline with the specified resolution, and converts the map to a LaneletMapBin message.
+ *
+ * @param absolute_path The absolute path to the Lanelet2 map file.
+ * @param center_line_resolution The resolution for the centerline.
+ * @return A LaneletMapBin message containing the map data.
+ */
+LaneletMapBin make_map_bin_msg(
+ const std::string & absolute_path, const double center_line_resolution = 5.0);
+
+/**
+ * @brief Creates a LaneletMapBin message using a Lanelet2 map file.
+ *
+ * This function loads a specified map file from the test_map folder in the
+ * specified package (or autoware_test_utils if no package is specified),
+ * overwrites the centerline with a resolution of 5.0,
+ * and converts the map to a LaneletMapBin message.
+ *
+ * @param package_name The name of the package containing the map file. If empty, defaults to
+ * "autoware_test_utils".
+ * @param map_filename The name of the map file (e.g. "lanelet2_map.osm")
+ * @return A LaneletMapBin message containing the map data.
+ */
+LaneletMapBin makeMapBinMsg(
+ const std::string & package_name = "autoware_test_utils",
+ const std::string & map_filename = "lanelet2_map.osm");
+
+/**
+ * @brief Creates an Odometry message with a specified shift.
+ *
+ * This function initializes an Odometry message with a pose shifted by the given amount at y
+ * direction. x pose, z pose, and yaw angle remains zero.
+ *
+ * @param shift The amount by which to shift the pose.
+ * @return An Odometry message with the specified shift.
+ */
+Odometry makeOdometry(const double shift = 0.0);
+
+/**
+ * @brief Creates an initial Odometry message with a specified shift.
+ *
+ * This function initializes an Odometry message with a pose shifted by the given amount,
+ * accounting for a specific yaw angle.
+ *
+ * @param shift The amount by which to shift the pose.
+ * @return An Odometry message with the specified shift.
+ */
+Odometry makeInitialPose(const double shift = 0.0);
+
+/**
+ * @brief Creates a TFMessage with the specified frame IDs.
+ *
+ * This function initializes a TFMessage with a transform containing the given frame IDs.
+ * The transform includes a specific translation and rotation.
+ *
+ * @param target_node The node to use for obtaining the current time.
+ * @param frame_id The ID of the parent frame.
+ * @param child_frame_id The ID of the child frame.
+ * @return A TFMessage containing the transform.
+ */
+TFMessage makeTFMsg(
+ rclcpp::Node::SharedPtr target_node, std::string && frame_id = "",
+ std::string && child_frame_id = "");
+
+/**
+ * @brief Creates a Scenario message with the specified scenario.
+ *
+ * This function initializes a Scenario message with the current scenario and a list of activating
+ * scenarios.
+ *
+ * @param scenario The name of the current scenario.
+ * @return A Scenario message with the specified scenario.
+ */
+Scenario makeScenarioMsg(const std::string & scenario);
+
+/**
+ * @brief Combines two sets of consecutive RouteSections.
+ *
+ * This function combines two sets of RouteSections, removing the overlapping end section from the
+ * first set.
+ *
+ * @param route_sections1 The first set of RouteSections.
+ * @param route_sections2 The second set of RouteSections.
+ * @return A combined set of RouteSections.
+ */
+RouteSections combineConsecutiveRouteSections(
+ const RouteSections & route_sections1, const RouteSections & route_sections2);
+
+/**
+ * @brief Creates a predefined behavior Lanelet route.
+ *
+ * This function initializes a LaneletRoute with predefined start and goal poses,
+ * a list of lanelet segment IDs, and a fixed UUID.
+ * this is for the test lanelet2_map.osm
+ * file hash: a9f84cff03b55a64917bc066451276d2293b0a54f5c088febca0c7fdf2f245d5
+ *
+ * @return A LaneletRoute with the specified attributes.
+ */
+LaneletRoute makeBehaviorNormalRoute();
+
+/**
+ * @brief Spins multiple ROS nodes a specified number of times.
+ *
+ * This function spins the given test and target nodes for the specified number of iterations.
+ *
+ * @param test_node The test node to spin.
+ * @param target_node The target node to spin.
+ * @param repeat_count The number of times to spin the nodes.
+ */
+void spinSomeNodes(
+ rclcpp::Node::SharedPtr test_node, rclcpp::Node::SharedPtr target_node,
+ const int repeat_count = 1);
+
+/**
+ * @brief Updates node options with parameter files.
+ *
+ * This function updates the given node options to include the specified parameter files.
+ *
+ * @param node_options The node options to update.
+ * @param params_files A vector of parameter file paths to add to the node options.
+ */
+void updateNodeOptions(
+ rclcpp::NodeOptions & node_options, const std::vector & params_files);
+
+/**
+ * @brief Loads a PathWithLaneId message from a YAML file.
+ *
+ * This function loads a PathWithLaneId message from a YAML file located in the
+ * autoware_test_utils package.
+ *
+ * @return A PathWithLaneId message containing the loaded data.
+ */
+PathWithLaneId loadPathWithLaneIdInYaml();
+
+/**
+ * @brief create a straight lanelet from 2 segments defined by 4 points
+ * @param [in] left0 start of the left segment
+ * @param [in] left1 end of the left segment
+ * @param [in] right0 start of the right segment
+ * @param [in] right1 end of the right segment
+ * @return a ConstLanelet with the given left and right bounds and a unique lanelet id
+ *
+ */
+lanelet::ConstLanelet make_lanelet(
+ const lanelet::BasicPoint2d & left0, const lanelet::BasicPoint2d & left1,
+ const lanelet::BasicPoint2d & right0, const lanelet::BasicPoint2d & right1);
+
+/**
+ * @brief Generates a trajectory with specified parameters.
+ *
+ * This function generates a trajectory of type T with a given number of points,
+ * point interval, velocity, initial theta, delta theta, and optionally an
+ * overlapping point index.
+ *
+ * @tparam T The type of the trajectory.
+ * @param num_points The number of points in the trajectory.
+ * @param point_interval The distance between consecutive points.
+ * @param velocity The longitudinal velocity for each point.
+ * @param init_theta The initial theta angle.
+ * @param delta_theta The change in theta per point.
+ * @param overlapping_point_index The index of the point to overlap (default is max size_t value).
+ * @return A trajectory of type T with the specified parameters.
+ */
+template
+T generateTrajectory(
+ const size_t num_points, const double point_interval, const double velocity = 0.0,
+ const double init_theta = 0.0, const double delta_theta = 0.0,
+ const size_t overlapping_point_index = std::numeric_limits::max())
+{
+ using Point = typename T::_points_type::value_type;
+
+ T traj;
+ for (size_t i = 0; i < num_points; ++i) {
+ const double theta = init_theta + static_cast(i) * delta_theta;
+ const double x = static_cast(i) * point_interval * std::cos(theta);
+ const double y = static_cast(i) * point_interval * std::sin(theta);
+
+ Point p;
+ p.pose = createPose(x, y, 0.0, 0.0, 0.0, theta);
+ p.longitudinal_velocity_mps = velocity;
+ traj.points.push_back(p);
+
+ if (i == overlapping_point_index) {
+ Point value_to_insert = traj.points[overlapping_point_index];
+ traj.points.insert(traj.points.begin() + overlapping_point_index + 1, value_to_insert);
+ }
+ }
+
+ return traj;
+}
+
+template <>
+inline PathWithLaneId generateTrajectory(
+ const size_t num_points, const double point_interval, const double velocity,
+ const double init_theta, const double delta_theta, const size_t overlapping_point_index)
+{
+ PathWithLaneId traj;
+
+ for (size_t i = 0; i < num_points; i++) {
+ const double theta = init_theta + static_cast(i) * delta_theta;
+ const double x = static_cast(i) * point_interval * std::cos(theta);
+ const double y = static_cast(i) * point_interval * std::sin(theta);
+
+ PathPointWithLaneId p;
+ p.point.pose = createPose(x, y, 0.0, 0.0, 0.0, theta);
+ p.point.longitudinal_velocity_mps = static_cast(velocity);
+ p.lane_ids.push_back(static_cast(i));
+ traj.points.push_back(p);
+
+ if (i == overlapping_point_index) {
+ auto value_to_insert = traj.points.at(overlapping_point_index);
+ traj.points.insert(
+ traj.points.begin() + static_cast(overlapping_point_index) + 1, value_to_insert);
+ }
+ }
+ return traj;
+}
+
+/**
+ * @brief Creates a publisher with appropriate QoS settings.
+ *
+ * This function creates a publisher for a given topic name and message type with appropriate
+ * QoS settings, depending on the message type.
+ *
+ * @tparam T The type of the message to publish.
+ * @param test_node The node to create the publisher on.
+ * @param topic_name The name of the topic to publish to.
+ * @param publisher A reference to the publisher to be created.
+ */
+template
+void createPublisherWithQoS(
+ rclcpp::Node::SharedPtr test_node, std::string topic_name,
+ std::shared_ptr> & publisher)
+{
+ // override QoS settings for specific message types
+ if constexpr (
+ std::is_same_v || std::is_same_v ||
+ std::is_same_v) {
+ rclcpp::QoS qos(rclcpp::KeepLast(1));
+ qos.reliable();
+ qos.transient_local();
+ publisher = rclcpp::create_publisher(test_node, topic_name, qos);
+ } else {
+ publisher = rclcpp::create_publisher(test_node, topic_name, 1);
+ }
+}
+
+/**
+ * @brief Sets up a publisher for a given topic.
+ *
+ * This function sets up a publisher for a given topic using createPublisherWithQoS.
+ *
+ * @tparam T The type of the message to publish.
+ * @param test_node The node to create the publisher on.
+ * @param topic_name The name of the topic to publish to.
+ * @param publisher A reference to the publisher to be set.
+ */
+template
+void setPublisher(
+ rclcpp::Node::SharedPtr test_node, std::string topic_name,
+ std::shared_ptr> & publisher)
+{
+ createPublisherWithQoS(test_node, topic_name, publisher);
+}
+
+/**
+ * @brief Creates a subscription with appropriate QoS settings.
+ *
+ * This function creates a subscription for a given topic name and message type with appropriate
+ * QoS settings, depending on the message type.
+ *
+ * @tparam T The type of the message to subscribe to.
+ * @param test_node The node to create the subscription on.
+ * @param topic_name The name of the topic to subscribe to.
+ * @param callback The callback function to call when a message is received.
+ * @param subscriber A reference to the subscription to be created.
+ * @param qos The QoS settings for the subscription (optional).
+ */
+template
+void createSubscription(
+ rclcpp::Node::SharedPtr test_node, const std::string & topic_name,
+ std::function callback,
+ std::shared_ptr> & subscriber,
+ std::optional qos = std::nullopt)
+{
+ if (!qos.has_value()) {
+ if constexpr (std::is_same_v) {
+ qos = rclcpp::QoS{1};
+ } else {
+ qos = rclcpp::QoS{10};
+ }
+ }
+ subscriber = test_node->create_subscription(topic_name, *qos, callback);
+}
+
+/**
+ * @brief Sets up a subscriber for a given topic.
+ *
+ * This function sets up a subscriber for a given topic using createSubscription.
+ *
+ * @tparam T The type of the message to subscribe to.
+ * @param test_node The node to create the subscription on.
+ * @param topic_name The name of the topic to subscribe to.
+ * @param subscriber A reference to the subscription to be set.
+ * @param count A reference to a counter that increments on message receipt.
+ * @param qos The QoS settings for the subscription (optional).
+ */
+template
+void setSubscriber(
+ rclcpp::Node::SharedPtr test_node, std::string topic_name,
+ std::shared_ptr> & subscriber, size_t & count,
+ std::optional qos = std::nullopt)
+{
+ createSubscription(
+ test_node, topic_name, [&count](const typename T::ConstSharedPtr) { count++; }, subscriber,
+ qos);
+}
+
+/**
+ * @brief Publishes data to a target node.
+ *
+ * This function publishes data to a target node on a given topic, ensuring that the topic has
+ * subscribers and retrying a specified number of times.
+ *
+ * @tparam T The type of the message to publish.
+ * @param test_node The node to create the publisher on.
+ * @param target_node The target node to publish the message to.
+ * @param topic_name The name of the topic to publish to.
+ * @param publisher A shared pointer to the publisher.
+ * @param data The data to publish.
+ * @param repeat_count The number of times to retry publishing.
+ */
+template
+void publishToTargetNode(
+ rclcpp::Node::SharedPtr test_node, rclcpp::Node::SharedPtr target_node, std::string topic_name,
+ typename rclcpp::Publisher::SharedPtr publisher, T data, const int repeat_count = 3)
+{
+ if (topic_name.empty()) {
+ int status = 1;
+ char * demangled_name = abi::__cxa_demangle(typeid(data).name(), nullptr, nullptr, &status);
+ if (status == 0) {
+ throw std::runtime_error(std::string("Topic name for ") + demangled_name + " is empty");
+ }
+ throw std::runtime_error(std::string("Topic name for ") + typeid(data).name() + " is empty");
+ }
+
+ autoware::test_utils::setPublisher(test_node, topic_name, publisher);
+ publisher->publish(data);
+
+ if (target_node->count_subscribers(topic_name) == 0) {
+ throw std::runtime_error("No subscriber for " + topic_name);
+ }
+ autoware::test_utils::spinSomeNodes(test_node, target_node, repeat_count);
+}
+
+/**
+ * @brief Manages publishing and subscribing to ROS topics for testing Autoware.
+ *
+ * The AutowareTestManager class provides utility functions to facilitate
+ * the publishing of messages to specified topics and the setting up of
+ * subscribers to listen for messages on specified topics. This class
+ * simplifies the setup of test environments in Autoware.
+ */
+class AutowareTestManager
+{
+public:
+ AutowareTestManager()
+ {
+ test_node_ = std::make_shared("autoware_test_manager_node");
+ pub_clock_ = test_node_->create_publisher("/clock", 1);
+ }
+
+ template
+ void test_pub_msg(
+ rclcpp::Node::SharedPtr target_node, const std::string & topic_name, MessageType & msg)
+ {
+ rclcpp::QoS qos(rclcpp::KeepLast(10));
+ test_pub_msg(target_node, topic_name, msg, qos);
+ }
+
+ template
+ void test_pub_msg(
+ rclcpp::Node::SharedPtr target_node, const std::string & topic_name, MessageType & msg,
+ rclcpp::QoS qos)
+ {
+ if (publishers_.find(topic_name) == publishers_.end()) {
+ auto publisher = test_node_->create_publisher(topic_name, qos);
+ publishers_[topic_name] = std::static_pointer_cast(publisher);
+ }
+
+ auto publisher =
+ std::dynamic_pointer_cast>(publishers_[topic_name]);
+
+ publisher->publish(msg);
+ const int repeat_count = 3;
+ autoware::test_utils::spinSomeNodes(test_node_, target_node, repeat_count);
+ RCLCPP_INFO(test_node_->get_logger(), "Published message on topic '%s'", topic_name.c_str());
+ }
+
+ template
+ void set_subscriber(
+ const std::string & topic_name,
+ std::function callback,
+ std::optional qos = std::nullopt)
+ {
+ if (subscribers_.find(topic_name) == subscribers_.end()) {
+ std::shared_ptr> subscriber;
+ autoware::test_utils::createSubscription(
+ test_node_, topic_name, callback, subscriber, qos);
+ subscribers_[topic_name] = std::static_pointer_cast(subscriber);
+ } else {
+ RCLCPP_WARN(test_node_->get_logger(), "Subscriber %s already set.", topic_name.c_str());
+ }
+ }
+
+ /**
+ * @brief Publishes a ROS Clock message with the specified time.
+ *
+ * This function publishes a ROS Clock message with the specified time.
+ * Be careful when using this function, as it can affect the behavior of
+ * the system under test. Consider using ament_add_ros_isolated_gtest to
+ * isolate the system under test from the ROS clock.
+ *
+ * @param time The time to publish.
+ */
+ void jump_clock(const rclcpp::Time & time)
+ {
+ rosgraph_msgs::msg::Clock clock;
+ clock.clock = time;
+ pub_clock_->publish(clock);
+ }
+
+protected:
+ // Publisher
+ std::unordered_map> publishers_;
+ std::unordered_map> subscribers_;
+ rclcpp::Publisher::SharedPtr pub_clock_;
+
+ // Node
+ rclcpp::Node::SharedPtr test_node_;
+}; // class AutowareTestManager
+
+std::optional resolve_pkg_share_uri(const std::string & uri_path);
+
+} // namespace autoware::test_utils
+
+#endif // AUTOWARE_TEST_UTILS__AUTOWARE_TEST_UTILS_HPP_
diff --git a/common/autoware_test_utils/include/autoware_test_utils/mock_data_parser.hpp b/common/autoware_test_utils/include/autoware_test_utils/mock_data_parser.hpp
new file mode 100644
index 0000000000..e4cba1f1a8
--- /dev/null
+++ b/common/autoware_test_utils/include/autoware_test_utils/mock_data_parser.hpp
@@ -0,0 +1,228 @@
+// Copyright 2024 TIER IV
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+#ifndef AUTOWARE_TEST_UTILS__MOCK_DATA_PARSER_HPP_
+#define AUTOWARE_TEST_UTILS__MOCK_DATA_PARSER_HPP_
+
+#include
+#include
+
+#include
+#include
+#include
+#include
+#include
+#include
+#include
+#include
+#include
+#include
+#include
+#include
+
+#include
+
+#include
+#include
+#include
+#include
+#include
+#include
+
+namespace autoware::test_utils
+{
+using autoware_adapi_v1_msgs::msg::OperationModeState;
+using autoware_perception_msgs::msg::ObjectClassification;
+using autoware_perception_msgs::msg::PredictedObject;
+using autoware_perception_msgs::msg::PredictedObjectKinematics;
+using autoware_perception_msgs::msg::PredictedObjects;
+using autoware_perception_msgs::msg::PredictedPath;
+using autoware_perception_msgs::msg::Shape;
+using autoware_perception_msgs::msg::TrackedObject;
+using autoware_perception_msgs::msg::TrackedObjectKinematics;
+using autoware_perception_msgs::msg::TrackedObjects;
+using autoware_perception_msgs::msg::TrafficLightElement;
+using autoware_perception_msgs::msg::TrafficLightGroup;
+using autoware_perception_msgs::msg::TrafficLightGroupArray;
+
+using autoware_internal_planning_msgs::msg::PathPointWithLaneId;
+using autoware_internal_planning_msgs::msg::PathWithLaneId;
+using autoware_planning_msgs::msg::LaneletPrimitive;
+using autoware_planning_msgs::msg::LaneletRoute;
+using autoware_planning_msgs::msg::LaneletSegment;
+using autoware_planning_msgs::msg::PathPoint;
+using builtin_interfaces::msg::Duration;
+using builtin_interfaces::msg::Time;
+using geometry_msgs::msg::Accel;
+using geometry_msgs::msg::AccelWithCovariance;
+using geometry_msgs::msg::AccelWithCovarianceStamped;
+using geometry_msgs::msg::Point;
+using geometry_msgs::msg::Pose;
+using geometry_msgs::msg::PoseWithCovariance;
+using geometry_msgs::msg::Twist;
+using geometry_msgs::msg::TwistWithCovariance;
+using nav_msgs::msg::Odometry;
+using std_msgs::msg::Header;
+using unique_identifier_msgs::msg::UUID;
+
+/**
+ * @brief Parses a YAML node and converts it into an object of type T.
+ *
+ * This function extracts data from the given YAML node and converts it into an object of type T.
+ * If no specialization exists for T, it will result in a compile-time error.
+ *
+ * @tparam T The type of object to parse the node contents into.
+ * @param node The YAML node to be parsed.
+ * @return T An object of type T containing the parsed data.
+ */
+template
+T parse(const YAML::Node & node);
+
+template <>
+Header parse(const YAML::Node & node);
+
+template <>
+Duration parse(const YAML::Node & node);
+
+template <>
+Time parse(const YAML::Node & node);
+
+template <>
+Point parse(const YAML::Node & node);
+
+template <>
+std::vector parse(const YAML::Node & node);
+
+template <>
+std::array parse(const YAML::Node & node);
+
+template <>
+Pose parse(const YAML::Node & node);
+
+template <>
+PoseWithCovariance parse(const YAML::Node & node);
+
+template <>
+Twist parse(const YAML::Node & node);
+
+template <>
+TwistWithCovariance parse(const YAML::Node & node);
+
+template <>
+Odometry parse(const YAML::Node & node);
+
+template <>
+Accel parse(const YAML::Node & node);
+
+template <>
+AccelWithCovariance parse(const YAML::Node & node);
+
+template <>
+AccelWithCovarianceStamped parse(const YAML::Node & node);
+
+template <>
+LaneletPrimitive parse(const YAML::Node & node);
+
+template <>
+std::vector parse(const YAML::Node & node);
+
+template <>
+std::vector parse(const YAML::Node & node);
+
+template <>
+LaneletRoute parse(const YAML::Node & node);
+
+template <>
+std::vector parse(const YAML::Node & node);
+
+template <>
+UUID parse(const YAML::Node & node);
+
+template <>
+PathPoint parse(const YAML::Node & node);
+
+template <>
+PathPointWithLaneId parse(const YAML::Node & node);
+
+template <>
+PathWithLaneId parse(const YAML::Node & node);
+
+template <>
+PredictedPath parse(const YAML::Node & node);
+
+template <>
+ObjectClassification parse(const YAML::Node & node);
+
+template <>
+Shape parse(const YAML::Node & node);
+
+template <>
+PredictedObjectKinematics parse(const YAML::Node & node);
+
+template <>
+PredictedObject parse(const YAML::Node & node);
+
+template <>
+PredictedObjects parse(const YAML::Node & node);
+
+template <>
+TrackedObjectKinematics parse(const YAML::Node & node);
+
+template <>
+TrackedObject parse(const YAML::Node & node);
+
+template <>
+TrackedObjects parse(const YAML::Node & node);
+
+template <>
+TrafficLightGroupArray parse(const YAML::Node & node);
+
+template <>
+TrafficLightGroup parse(const YAML::Node & node);
+
+template <>
+TrafficLightElement parse(const YAML::Node & node);
+
+template <>
+OperationModeState parse(const YAML::Node & node);
+
+/**
+ * @brief Parses a YAML file and converts it into an object of type T.
+ *
+ * This function reads the specified YAML file and converts its contents into an object of the given
+ * type T. If no specialization exists for T, it will result in a compile-time error.
+ *
+ * @tparam T The type of object to parse the file contents into.
+ * @param filename The path to the YAML file to be parsed.
+ * @return T An object of type T containing the parsed data.
+ */
+template
+T parse(const std::string & filename);
+
+template <>
+std::optional parse(const std::string & filename);
+
+template <>
+std::optional parse(const std::string & filename);
+
+template
+auto create_const_shared_ptr(MessageType && payload)
+{
+ using UnqualifiedType = typename std::decay_t;
+ return std::make_shared(std::forward(payload));
+}
+
+} // namespace autoware::test_utils
+
+#endif // AUTOWARE_TEST_UTILS__MOCK_DATA_PARSER_HPP_
diff --git a/common/autoware_test_utils/include/autoware_test_utils/visualization.hpp b/common/autoware_test_utils/include/autoware_test_utils/visualization.hpp
new file mode 100644
index 0000000000..0c596673e4
--- /dev/null
+++ b/common/autoware_test_utils/include/autoware_test_utils/visualization.hpp
@@ -0,0 +1,328 @@
+// Copyright 2024 TIER IV
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+// NOTE(soblin): this file is intentionally inline to deal with link issue
+
+#ifndef AUTOWARE_TEST_UTILS__VISUALIZATION_HPP_
+#define AUTOWARE_TEST_UTILS__VISUALIZATION_HPP_
+
+#include
+#include
+#include
+
+#include
+
+#include
+#include
+#include
+#include
+#include
+
+#include
+#include
+#include
+#include
+#include
+
+namespace autoware::test_utils
+{
+
+struct PointConfig
+{
+ std::optional color{};
+ std::optional marker{};
+ std::optional marker_size{};
+};
+
+struct LineConfig
+{
+ static constexpr const char * default_color = "blue";
+ static LineConfig defaults()
+ {
+ return LineConfig{std::string(default_color), 1.0, "solid", std::nullopt};
+ }
+ std::optional color{};
+ std::optional linewidth{};
+ std::optional linestyle{};
+ std::optional label{};
+};
+
+struct LaneConfig
+{
+ static LaneConfig defaults() { return LaneConfig{std::nullopt, LineConfig::defaults(), true}; }
+
+ std::optional label{};
+ std::optional line_config{};
+ bool plot_centerline = true; // alpha{};
+ std::optional color{};
+ bool fill{true};
+ std::optional linewidth{};
+ std::optional point_config{};
+};
+
+/**
+ * @brief plot the linestring by `axes.plot()`
+ * @param [in] config_opt argument for plotting the linestring. if valid, each field is used as the
+ * kwargs
+ */
+inline void plot_lanelet2_object(
+ const lanelet::ConstLineString3d & line, autoware::pyplot::Axes & axes,
+ const std::optional & config_opt = std::nullopt)
+{
+ py::dict kwargs{};
+ if (config_opt) {
+ const auto & config = config_opt.value();
+ if (config.color) {
+ kwargs["color"] = config.color.value();
+ }
+ if (config.linewidth) {
+ kwargs["linewidth"] = config.linewidth.value();
+ }
+ if (config.linestyle) {
+ kwargs["linestyle"] = config.linestyle.value();
+ }
+ if (config.label) {
+ kwargs["label"] = config.label.value();
+ }
+ }
+ std::vector xs;
+ for (const auto & p : line) {
+ xs.emplace_back(p.x());
+ }
+ std::vector ys;
+ for (const auto & p : line) {
+ ys.emplace_back(p.y());
+ }
+ axes.plot(Args(xs, ys), kwargs);
+}
+
+/**
+ * @brief plot the left/right bounds and optionally centerline
+ * @param [in] args used for plotting the left/right bounds as
+ */
+inline void plot_lanelet2_object(
+ const lanelet::ConstLanelet & lanelet, autoware::pyplot::Axes & axes,
+ const std::optional & config_opt = std::nullopt)
+{
+ const auto left = lanelet.leftBound();
+ const auto right = lanelet.rightBound();
+
+ const auto line_config = [&]() -> std::optional {
+ if (!config_opt) {
+ return LineConfig{std::string(LineConfig::default_color)};
+ }
+ return config_opt.value().line_config;
+ }();
+
+ if (config_opt) {
+ const auto & config = config_opt.value();
+
+ // plot lanelet centerline
+ if (config.plot_centerline) {
+ auto centerline_config = [&]() -> LineConfig {
+ if (!config.line_config) {
+ return LineConfig{"k", std::nullopt, "dashed"};
+ }
+ auto cfg = config.line_config.value();
+ cfg.color = "k";
+ cfg.linestyle = "dashed";
+ return cfg;
+ }();
+ plot_lanelet2_object(
+ lanelet.centerline(), axes, std::make_optional(std::move(centerline_config)));
+ }
+
+ // plot lanelet-id
+ const auto center = (left.front().basicPoint2d() + left.back().basicPoint2d() +
+ right.front().basicPoint2d() + right.back().basicPoint2d()) /
+ 4.0;
+ axes.text(
+ Args(center.x(), center.y(), std::to_string(lanelet.id())), Kwargs("clip_on"_a = true));
+ }
+
+ if (config_opt && config_opt.value().label) {
+ auto left_line_config_for_legend = line_config ? line_config.value() : LineConfig::defaults();
+ left_line_config_for_legend.label = config_opt.value().label.value();
+
+ // plot left
+ plot_lanelet2_object(lanelet.leftBound(), axes, left_line_config_for_legend);
+
+ // plot right
+ plot_lanelet2_object(lanelet.rightBound(), axes, line_config);
+ } else {
+ // plot left
+ plot_lanelet2_object(lanelet.leftBound(), axes, line_config);
+
+ // plot right
+ plot_lanelet2_object(lanelet.rightBound(), axes, line_config);
+ }
+
+ // plot centerline direction
+ const auto centerline_size = lanelet.centerline().size();
+ const auto mid_index = centerline_size / 2;
+ const auto before = static_cast(std::max(0, mid_index - 1));
+ const auto after = static_cast(std::min(centerline_size - 1, mid_index + 1));
+ const auto p_before = lanelet.centerline()[before];
+ const auto p_after = lanelet.centerline()[after];
+ const double azimuth = std::atan2(p_after.y() - p_before.y(), p_after.x() - p_before.x());
+ const auto & mid = lanelet.centerline()[mid_index];
+ axes.quiver(
+ Args(mid.x(), mid.y(), std::cos(azimuth), std::sin(azimuth)), Kwargs("units"_a = "width"));
+}
+
+/**
+ * @brief plot the polygon as matplotlib.patches.Polygon
+ * @param [in] config_opt argument for plotting the polygon. if valid, each field is used as the
+ * kwargs
+ */
+inline void plot_lanelet2_object(
+ const lanelet::ConstPolygon3d & polygon, autoware::pyplot::Axes & axes,
+ const std::optional & config_opt = std::nullopt)
+{
+ std::vector> xy(polygon.size());
+ for (unsigned i = 0; i < polygon.size(); ++i) {
+ xy.at(i) = std::vector({polygon[i].x(), polygon[i].y()});
+ }
+ py::dict kwargs;
+ if (config_opt) {
+ const auto & config = config_opt.value();
+ if (config.alpha) {
+ kwargs["alpha"] = config.alpha.value();
+ }
+ if (config.color) {
+ kwargs["color"] = config.color.value();
+ }
+ kwargs["fill"] = config.fill;
+ if (config.linewidth) {
+ kwargs["linewidth"] = config.linewidth.value();
+ }
+ }
+ auto poly = autoware::pyplot::Polygon(Args(xy), kwargs);
+ axes.add_patch(Args(poly.unwrap()));
+}
+
+struct DrivableAreaConfig
+{
+ static DrivableAreaConfig defaults() { return {"turquoise", 2.0}; }
+ std::optional color{};
+ std::optional linewidth{};
+};
+
+struct PathWithLaneIdConfig
+{
+ static PathWithLaneIdConfig defaults()
+ {
+ return {std::nullopt, "k", 1.0, std::nullopt, false, 1.0};
+ }
+ std::optional label{};
+ std::optional color{};
+ std::optional linewidth{};
+ std::optional da{};
+ bool lane_id{}; // & config_opt = std::nullopt)
+{
+ py::dict kwargs{};
+ if (config_opt) {
+ const auto & config = config_opt.value();
+ if (config.label) {
+ kwargs["label"] = config.label.value();
+ }
+ if (config.color) {
+ kwargs["color"] = config.color.value();
+ }
+ if (config.linewidth) {
+ kwargs["linewidth"] = config.linewidth.value();
+ }
+ }
+ std::vector xs;
+ std::vector ys;
+ std::vector yaw_cos;
+ std::vector yaw_sin;
+ std::vector> ids;
+ const bool plot_lane_id = config_opt ? config_opt.value().lane_id : false;
+ for (const auto & point : path.points) {
+ xs.push_back(point.point.pose.position.x);
+ ys.push_back(point.point.pose.position.y);
+ const auto th = autoware_utils::get_rpy(point.point.pose.orientation).z;
+ yaw_cos.push_back(std::cos(th));
+ yaw_sin.push_back(std::sin(th));
+ if (plot_lane_id) {
+ ids.emplace_back();
+ for (const auto & id : point.lane_ids) {
+ ids.back().push_back(id);
+ }
+ }
+ }
+ // plot centerline
+ axes.plot(Args(xs, ys), kwargs);
+ const auto quiver_scale =
+ config_opt ? config_opt.value().quiver_size : PathWithLaneIdConfig::defaults().quiver_size;
+ const auto quiver_color =
+ config_opt ? (config_opt.value().color ? config_opt.value().color.value() : "k") : "k";
+ axes.quiver(
+ Args(xs, ys, yaw_cos, yaw_sin), Kwargs(
+ "angles"_a = "xy", "scale_units"_a = "xy",
+ "scale"_a = quiver_scale, "color"_a = quiver_color));
+ if (plot_lane_id) {
+ for (size_t i = 0; i < xs.size(); ++i) {
+ std::stringstream ss;
+ const char * delimiter = "";
+ for (const auto id : ids[i]) {
+ ss << std::exchange(delimiter, ",") << id;
+ }
+ axes.text(Args(xs[i], ys[i], ss.str()), Kwargs("clip_on"_a = true));
+ }
+ }
+ // plot drivable area
+ if (config_opt && config_opt.value().da) {
+ auto plot_boundary = [&](const decltype(path.left_bound) & points) {
+ std::vector xs;
+ std::vector ys;
+ for (const auto & point : points) {
+ xs.push_back(point.x);
+ ys.push_back(point.y);
+ }
+ const auto & cfg = config_opt.value().da.value();
+ py::dict kwargs{};
+ if (cfg.color) {
+ kwargs["color"] = cfg.color.value();
+ }
+ if (cfg.linewidth) {
+ kwargs["linewidth"] = cfg.linewidth.value();
+ }
+ axes.plot(Args(xs, ys), kwargs);
+ };
+ plot_boundary(path.left_bound);
+ plot_boundary(path.right_bound);
+ }
+}
+
+} // namespace autoware::test_utils
+
+#endif // AUTOWARE_TEST_UTILS__VISUALIZATION_HPP_
diff --git a/common/autoware_test_utils/launch/psim_intersection.launch.xml b/common/autoware_test_utils/launch/psim_intersection.launch.xml
new file mode 100644
index 0000000000..723dd73522
--- /dev/null
+++ b/common/autoware_test_utils/launch/psim_intersection.launch.xml
@@ -0,0 +1,21 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/common/autoware_test_utils/launch/psim_road_shoulder.launch.xml b/common/autoware_test_utils/launch/psim_road_shoulder.launch.xml
new file mode 100644
index 0000000000..7dd888a036
--- /dev/null
+++ b/common/autoware_test_utils/launch/psim_road_shoulder.launch.xml
@@ -0,0 +1,21 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/common/autoware_test_utils/package.xml b/common/autoware_test_utils/package.xml
new file mode 100644
index 0000000000..16aa464050
--- /dev/null
+++ b/common/autoware_test_utils/package.xml
@@ -0,0 +1,44 @@
+
+
+
+ autoware_test_utils
+ 0.0.0
+ ROS 2 node for testing interface of the nodes in planning module
+ Kyoichi Sugahara
+ Takamasa Horibe
+ Zulfaqar Azmi
+ Mamoru Sobue
+ Yukinari Hisaki
+ Jian Kang
+ Apache License 2.0
+
+ Kyoichi Sugahara
+
+ ament_cmake_auto
+ autoware_cmake
+
+ ament_index_cpp
+ autoware_adapi_v1_msgs
+ autoware_internal_planning_msgs
+ autoware_lanelet2_extension
+ autoware_map_msgs
+ autoware_perception_msgs
+ autoware_planning_msgs
+ autoware_utils
+ lanelet2_io
+ nav_msgs
+ rclcpp
+ std_srvs
+ tf2_msgs
+ tf2_ros
+ unique_identifier_msgs
+ yaml_cpp_vendor
+
+ ament_cmake_ros
+ ament_lint_auto
+ autoware_lint_common
+
+
+ ament_cmake
+
+
diff --git a/common/autoware_test_utils/rviz/psim_test_map.rviz b/common/autoware_test_utils/rviz/psim_test_map.rviz
new file mode 100644
index 0000000000..8475c94b86
--- /dev/null
+++ b/common/autoware_test_utils/rviz/psim_test_map.rviz
@@ -0,0 +1,4569 @@
+Panels:
+ - Class: rviz_common/Displays
+ Help Height: 0
+ Name: Displays
+ Property Tree Widget:
+ Expanded:
+ - /Sensing1/LiDAR1/ConcatenatePointCloud1/Autocompute Value Bounds1
+ Splitter Ratio: 0.557669460773468
+ Tree Height: 225
+ - Class: rviz_common/Selection
+ Name: Selection
+ - Class: rviz_common/Tool Properties
+ Expanded: ~
+ Name: Tool Properties
+ Splitter Ratio: 0.5886790156364441
+ - Class: rviz_common/Views
+ Expanded:
+ - /Current View1
+ Name: Views
+ Splitter Ratio: 0.5
+ - Class: AutowareDateTimePanel
+ Name: AutowareDateTimePanel
+ - Class: rviz_plugins::AutowareStatePanel
+ Name: AutowareStatePanel
+ - Class: rviz_plugins::SimulatedClockPanel
+ Name: SimulatedClockPanel
+ - Class: rviz_plugins::TrafficLightPublishPanel
+ Name: TrafficLightPublishPanel
+Visualization Manager:
+ Class: ""
+ Displays:
+ - Class: rviz_common/Group
+ Displays:
+ - Class: rviz_default_plugins/TF
+ Enabled: false
+ Frame Timeout: 15
+ Frames:
+ All Enabled: true
+ Marker Scale: 1
+ Name: TF
+ Show Arrows: true
+ Show Axes: true
+ Show Names: true
+ Tree:
+ {}
+ Update Interval: 0
+ Value: false
+ - Alpha: 0.5
+ Cell Size: 1
+ Class: rviz_default_plugins/Grid
+ Color: 160; 160; 164
+ Enabled: false
+ Line Style:
+ Line Width: 0.029999999329447746
+ Value: Lines
+ Name: Grid
+ Normal Cell Count: 0
+ Offset:
+ X: 0
+ Y: 0
+ Z: 0
+ Plane: XY
+ Plane Cell Count: 10
+ Reference Frame:
+ Value: false
+ - Class: rviz_common/Group
+ Displays:
+ - Alpha: 0.30000001192092896
+ Class: rviz_default_plugins/RobotModel
+ Collision Enabled: false
+ Description File: ""
+ Description Source: Topic
+ Description Topic:
+ Depth: 5
+ Durability Policy: Volatile
+ History Policy: Keep Last
+ Reliability Policy: Reliable
+ Value: /robot_description
+ Enabled: true
+ Links:
+ All Links Enabled: true
+ Expand Joint Details: false
+ Expand Link Details: false
+ Expand Tree: false
+ Link Tree Style: Links in Alphabetic Order
+ ars408_front_center:
+ Alpha: 1
+ Show Axes: false
+ Show Trail: false
+ Value: true
+ base_link:
+ Alpha: 1
+ Show Axes: false
+ Show Trail: false
+ Value: true
+ camera0/camera_link:
+ Alpha: 1
+ Show Axes: false
+ Show Trail: false
+ Value: true
+ camera0/camera_optical_link:
+ Alpha: 1
+ Show Axes: false
+ Show Trail: false
+ camera1/camera_link:
+ Alpha: 1
+ Show Axes: false
+ Show Trail: false
+ Value: true
+ camera1/camera_optical_link:
+ Alpha: 1
+ Show Axes: false
+ Show Trail: false
+ camera2/camera_link:
+ Alpha: 1
+ Show Axes: false
+ Show Trail: false
+ Value: true
+ camera2/camera_optical_link:
+ Alpha: 1
+ Show Axes: false
+ Show Trail: false
+ camera3/camera_link:
+ Alpha: 1
+ Show Axes: false
+ Show Trail: false
+ Value: true
+ camera3/camera_optical_link:
+ Alpha: 1
+ Show Axes: false
+ Show Trail: false
+ camera4/camera_link:
+ Alpha: 1
+ Show Axes: false
+ Show Trail: false
+ Value: true
+ camera4/camera_optical_link:
+ Alpha: 1
+ Show Axes: false
+ Show Trail: false
+ camera5/camera_link:
+ Alpha: 1
+ Show Axes: false
+ Show Trail: false
+ Value: true
+ camera5/camera_optical_link:
+ Alpha: 1
+ Show Axes: false
+ Show Trail: false
+ camera6/camera_link:
+ Alpha: 1
+ Show Axes: false
+ Show Trail: false
+ Value: true
+ camera6/camera_optical_link:
+ Alpha: 1
+ Show Axes: false
+ Show Trail: false
+ camera7/camera_link:
+ Alpha: 1
+ Show Axes: false
+ Show Trail: false
+ Value: true
+ camera7/camera_optical_link:
+ Alpha: 1
+ Show Axes: false
+ Show Trail: false
+ gnss_link:
+ Alpha: 1
+ Show Axes: false
+ Show Trail: false
+ Value: true
+ livox_front_left:
+ Alpha: 1
+ Show Axes: false
+ Show Trail: false
+ livox_front_left_base_link:
+ Alpha: 1
+ Show Axes: false
+ Show Trail: false
+ Value: true
+ livox_front_right:
+ Alpha: 1
+ Show Axes: false
+ Show Trail: false
+ livox_front_right_base_link:
+ Alpha: 1
+ Show Axes: false
+ Show Trail: false
+ Value: true
+ sensor_kit_base_link:
+ Alpha: 1
+ Show Axes: false
+ Show Trail: false
+ tamagawa/imu_link:
+ Alpha: 1
+ Show Axes: false
+ Show Trail: false
+ Value: true
+ velodyne_left:
+ Alpha: 1
+ Show Axes: false
+ Show Trail: false
+ Value: true
+ velodyne_left_base_link:
+ Alpha: 1
+ Show Axes: false
+ Show Trail: false
+ Value: true
+ velodyne_rear:
+ Alpha: 1
+ Show Axes: false
+ Show Trail: false
+ Value: true
+ velodyne_rear_base_link:
+ Alpha: 1
+ Show Axes: false
+ Show Trail: false
+ Value: true
+ velodyne_right:
+ Alpha: 1
+ Show Axes: false
+ Show Trail: false
+ Value: true
+ velodyne_right_base_link:
+ Alpha: 1
+ Show Axes: false
+ Show Trail: false
+ Value: true
+ velodyne_top:
+ Alpha: 1
+ Show Axes: false
+ Show Trail: false
+ Value: true
+ velodyne_top_base_link:
+ Alpha: 1
+ Show Axes: false
+ Show Trail: false
+ Value: true
+ Mass Properties:
+ Inertia: false
+ Mass: false
+ Name: VehicleModel
+ TF Prefix: ""
+ Update Interval: 0
+ Value: true
+ Visual Enabled: true
+ - Class: rviz_plugins/PolarGridDisplay
+ Color: 255; 255; 255
+ Delta Range: 10
+ Enabled: true
+ Max Alpha: 0.5
+ Max Range: 100
+ Max Wave Alpha: 0.5
+ Min Alpha: 0.009999999776482582
+ Min Wave Alpha: 0.009999999776482582
+ Name: PolarGridDisplay
+ Reference Frame: base_link
+ Value: true
+ Wave Color: 255; 255; 255
+ Wave Velocity: 40
+ - Background Alpha: 0.5
+ Background Color: 23; 28; 31
+ Class: autoware_overlay_rviz_plugin/SignalDisplay
+ Dark Traffic Color: 255; 51; 51
+ Enabled: true
+ Gear Topic Test: /vehicle/status/gear_status
+ Handle Angle Scale: 17
+ Hazard Lights Topic: /vehicle/status/hazard_lights_status
+ Height: 100
+ Left: 0
+ Light Traffic Color: 255; 153; 153
+ Name: SignalDisplay
+ Primary Color: 174; 174; 174
+ Signal Color: 0; 230; 120
+ Speed Limit Topic: /planning/scenario_planning/current_max_velocity
+ Speed Topic: /vehicle/status/velocity_status
+ Steering Topic: /vehicle/status/steering_status
+ Top: 10
+ Traffic Topic: /planning/scenario_planning/lane_driving/behavior_planning/debug/traffic_signal
+ Turn Signals Topic: /vehicle/status/turn_indicators_status
+ Value: true
+ Width: 550
+ Enabled: true
+ Name: Vehicle
+ - Class: rviz_plugins/MrmSummaryOverlayDisplay
+ Enabled: false
+ Font Size: 10
+ Left: 512
+ Max Letter Num: 100
+ Name: MRM Summary
+ Text Color: 25; 255; 240
+ Top: 64
+ Topic:
+ Depth: 5
+ Durability Policy: Volatile
+ History Policy: Keep Last
+ Reliability Policy: Reliable
+ Value: /system/emergency/hazard_status
+ Value: false
+ Value height offset: 0
+ Enabled: true
+ Name: System
+ - Class: rviz_common/Group
+ Displays:
+ - Alpha: 0.20000000298023224
+ Autocompute Intensity Bounds: true
+ Autocompute Value Bounds:
+ Max Value: 28.71826171875
+ Min Value: -7.4224700927734375
+ Value: true
+ Axis: Z
+ Channel Name: intensity
+ Class: rviz_default_plugins/PointCloud2
+ Color: 255; 255; 255
+ Color Transformer: FlatColor
+ Decay Time: 0
+ Enabled: false
+ Invert Rainbow: false
+ Max Color: 255; 255; 255
+ Max Intensity: 237
+ Min Color: 211; 215; 207
+ Min Intensity: 0
+ Name: PointCloudMap
+ Position Transformer: XYZ
+ Selectable: false
+ Size (Pixels): 1
+ Size (m): 0.019999999552965164
+ Style: Points
+ Topic:
+ Depth: 5
+ Durability Policy: Transient Local
+ Filter size: 10
+ History Policy: Keep Last
+ Reliability Policy: Reliable
+ Value: /map/pointcloud_map
+ Use Fixed Frame: true
+ Use rainbow: false
+ Value: false
+ - Class: rviz_default_plugins/MarkerArray
+ Enabled: true
+ Name: Lanelet2VectorMap
+ Namespaces:
+ bus_stop_area: true
+ center_lane_line: false
+ center_line_arrows: false
+ curbstone: true
+ lane_start_bound: false
+ lanelet direction: true
+ lanelet_id: false
+ left_lane_bound: true
+ no_parking_area: true
+ parking_lots: true
+ parking_space: true
+ partitions: true
+ right_lane_bound: true
+ road_lanelets: false
+ shoulder_center_lane_line: false
+ shoulder_center_line_arrows: true
+ shoulder_lane_start_bound: true
+ shoulder_left_lane_bound: true
+ shoulder_right_lane_bound: true
+ shoulder_road_lanelets: false
+ Topic:
+ Depth: 5
+ Durability Policy: Transient Local
+ History Policy: Keep Last
+ Reliability Policy: Reliable
+ Value: /map/vector_map_marker
+ Value: true
+ Enabled: true
+ Name: Map
+ - Class: rviz_common/Group
+ Displays:
+ - Class: rviz_common/Group
+ Displays:
+ - Alpha: 0.4000000059604645
+ Autocompute Intensity Bounds: true
+ Autocompute Value Bounds:
+ Max Value: 5
+ Min Value: -1
+ Value: false
+ Axis: Z
+ Channel Name: intensity
+ Class: rviz_default_plugins/PointCloud2
+ Color: 255; 255; 255
+ Color Transformer: AxisColor
+ Decay Time: 0
+ Enabled: true
+ Invert Rainbow: false
+ Max Color: 255; 255; 255
+ Max Intensity: 4096
+ Min Color: 0; 0; 0
+ Min Intensity: 0
+ Name: ConcatenatePointCloud
+ Position Transformer: XYZ
+ Selectable: false
+ Size (Pixels): 1
+ Size (m): 0.019999999552965164
+ Style: Points
+ Topic:
+ Depth: 5
+ Durability Policy: Volatile
+ Filter size: 10
+ History Policy: Keep Last
+ Reliability Policy: Best Effort
+ Value: /sensing/lidar/concatenated/pointcloud
+ Use Fixed Frame: false
+ Use rainbow: true
+ Value: true
+ - Alpha: 0.9990000128746033
+ Class: rviz_default_plugins/Polygon
+ Color: 25; 255; 0
+ Enabled: false
+ Name: MeasurementRange
+ Topic:
+ Depth: 5
+ Durability Policy: Volatile
+ Filter size: 10
+ History Policy: Keep Last
+ Reliability Policy: Reliable
+ Value: /sensing/lidar/crop_box_filter/crop_box_polygon
+ Value: false
+ Enabled: true
+ Name: LiDAR
+ - Class: rviz_common/Group
+ Displays:
+ - Alpha: 0.9990000128746033
+ Axes Length: 1
+ Axes Radius: 0.10000000149011612
+ Class: rviz_default_plugins/PoseWithCovariance
+ Color: 233; 185; 110
+ Covariance:
+ Orientation:
+ Alpha: 0.5
+ Color: 255; 255; 127
+ Color Style: Unique
+ Frame: Local
+ Offset: 1
+ Scale: 1
+ Value: false
+ Position:
+ Alpha: 0.20000000298023224
+ Color: 204; 51; 204
+ Scale: 1
+ Value: true
+ Value: true
+ Enabled: true
+ Head Length: 0.699999988079071
+ Head Radius: 1.2000000476837158
+ Name: PoseWithCovariance
+ Shaft Length: 1
+ Shaft Radius: 0.5
+ Shape: Arrow
+ Topic:
+ Depth: 5
+ Durability Policy: Volatile
+ Filter size: 10
+ History Policy: Keep Last
+ Reliability Policy: Reliable
+ Value: /sensing/gnss/pose_with_covariance
+ Value: true
+ Enabled: false
+ Name: GNSS
+ Enabled: true
+ Name: Sensing
+ - Class: rviz_common/Group
+ Displays:
+ - Class: rviz_common/Group
+ Displays:
+ - Alpha: 0.9990000128746033
+ Axes Length: 1
+ Axes Radius: 0.10000000149011612
+ Class: rviz_default_plugins/PoseWithCovariance
+ Color: 0; 170; 255
+ Covariance:
+ Orientation:
+ Alpha: 0.5
+ Color: 255; 255; 127
+ Color Style: Unique
+ Frame: Local
+ Offset: 1
+ Scale: 1
+ Value: true
+ Position:
+ Alpha: 0.30000001192092896
+ Color: 204; 51; 204
+ Scale: 1
+ Value: true
+ Value: true
+ Enabled: false
+ Head Length: 0.4000000059604645
+ Head Radius: 0.6000000238418579
+ Name: PoseWithCovInitial
+ Shaft Length: 0.6000000238418579
+ Shaft Radius: 0.30000001192092896
+ Shape: Arrow
+ Topic:
+ Depth: 5
+ Durability Policy: Volatile
+ Filter size: 10
+ History Policy: Keep Last
+ Reliability Policy: Reliable
+ Value: /localization/pose_estimator/initial_pose_with_covariance
+ Value: false
+ - Alpha: 0.9990000128746033
+ Axes Length: 1
+ Axes Radius: 0.10000000149011612
+ Class: rviz_default_plugins/PoseWithCovariance
+ Color: 0; 255; 0
+ Covariance:
+ Orientation:
+ Alpha: 0.5
+ Color: 255; 255; 127
+ Color Style: Unique
+ Frame: Local
+ Offset: 1
+ Scale: 1
+ Value: true
+ Position:
+ Alpha: 0.30000001192092896
+ Color: 204; 51; 204
+ Scale: 1
+ Value: true
+ Value: true
+ Enabled: false
+ Head Length: 0.4000000059604645
+ Head Radius: 0.6000000238418579
+ Name: PoseWithCovAligned
+ Shaft Length: 0.6000000238418579
+ Shaft Radius: 0.30000001192092896
+ Shape: Arrow
+ Topic:
+ Depth: 5
+ Durability Policy: Volatile
+ Filter size: 10
+ History Policy: Keep Last
+ Reliability Policy: Reliable
+ Value: /localization/pose_estimator/pose_with_covariance
+ Value: false
+ - Buffer Size: 200
+ Class: rviz_plugins::PoseHistory
+ Enabled: false
+ Line:
+ Alpha: 0.9990000128746033
+ Color: 170; 255; 127
+ Value: true
+ Width: 0.10000000149011612
+ Name: PoseHistory
+ Topic:
+ Depth: 5
+ Durability Policy: Volatile
+ Filter size: 10
+ History Policy: Keep Last
+ Reliability Policy: Reliable
+ Value: /localization/pose_estimator/pose
+ Value: false
+ - Alpha: 0.9990000128746033
+ Autocompute Intensity Bounds: true
+ Autocompute Value Bounds:
+ Max Value: 10
+ Min Value: -10
+ Value: true
+ Axis: Z
+ Channel Name: intensity
+ Class: rviz_default_plugins/PointCloud2
+ Color: 0; 255; 255
+ Color Transformer: ""
+ Decay Time: 0
+ Enabled: false
+ Invert Rainbow: false
+ Max Color: 255; 255; 255
+ Max Intensity: 4096
+ Min Color: 0; 0; 0
+ Min Intensity: 0
+ Name: Initial
+ Position Transformer: XYZ
+ Selectable: false
+ Size (Pixels): 10
+ Size (m): 0.5
+ Style: Squares
+ Topic:
+ Depth: 5
+ Durability Policy: Volatile
+ Filter size: 10
+ History Policy: Keep Last
+ Reliability Policy: Best Effort
+ Value: /localization/util/downsample/pointcloud
+ Use Fixed Frame: true
+ Use rainbow: true
+ Value: false
+ - Alpha: 0.9990000128746033
+ Autocompute Intensity Bounds: true
+ Autocompute Value Bounds:
+ Max Value: 10
+ Min Value: -10
+ Value: true
+ Axis: Z
+ Channel Name: intensity
+ Class: rviz_default_plugins/PointCloud2
+ Color: 85; 255; 0
+ Color Transformer: FlatColor
+ Decay Time: 0
+ Enabled: false
+ Invert Rainbow: false
+ Max Color: 85; 255; 127
+ Max Intensity: 0
+ Min Color: 0; 0; 0
+ Min Intensity: 0
+ Name: Aligned
+ Position Transformer: XYZ
+ Selectable: false
+ Size (Pixels): 10
+ Size (m): 0.5
+ Style: Squares
+ Topic:
+ Depth: 5
+ Durability Policy: Volatile
+ Filter size: 10
+ History Policy: Keep Last
+ Reliability Policy: Reliable
+ Value: /localization/pose_estimator/points_aligned
+ Use Fixed Frame: true
+ Use rainbow: true
+ Value: false
+ - Class: rviz_default_plugins/MarkerArray
+ Enabled: true
+ Name: MonteCarloInitialPose
+ Namespaces:
+ {}
+ Topic:
+ Depth: 5
+ Durability Policy: Volatile
+ History Policy: Keep Last
+ Reliability Policy: Reliable
+ Value: /localization/pose_estimator/monte_carlo_initial_pose_marker
+ Value: true
+ Enabled: true
+ Name: NDT
+ - Class: rviz_common/Group
+ Displays:
+ - Buffer Size: 1000
+ Class: rviz_plugins::PoseHistory
+ Enabled: true
+ Line:
+ Alpha: 0.9990000128746033
+ Color: 0; 255; 255
+ Value: true
+ Width: 0.10000000149011612
+ Name: PoseHistory
+ Topic:
+ Depth: 5
+ Durability Policy: Volatile
+ Filter size: 10
+ History Policy: Keep Last
+ Reliability Policy: Reliable
+ Value: /localization/pose_twist_fusion_filter/pose
+ Value: true
+ Enabled: true
+ Name: EKF
+ Enabled: true
+ Name: Localization
+ - Class: rviz_common/Group
+ Displays:
+ - Class: rviz_common/Group
+ Displays:
+ - Alpha: 0.9990000128746033
+ Autocompute Intensity Bounds: true
+ Autocompute Value Bounds:
+ Max Value: 15
+ Min Value: -2
+ Value: false
+ Axis: Z
+ Channel Name: z
+ Class: rviz_default_plugins/PointCloud2
+ Color: 200; 200; 200
+ Color Transformer: FlatColor
+ Decay Time: 0
+ Enabled: true
+ Invert Rainbow: false
+ Max Color: 255; 255; 255
+ Max Intensity: 15
+ Min Color: 0; 0; 0
+ Min Intensity: -5
+ Name: NoGroundPointCloud
+ Position Transformer: XYZ
+ Selectable: false
+ Size (Pixels): 3
+ Size (m): 0.019999999552965164
+ Style: Points
+ Topic:
+ Depth: 5
+ Durability Policy: Volatile
+ Filter size: 10
+ History Policy: Keep Last
+ Reliability Policy: Best Effort
+ Value: /perception/obstacle_segmentation/pointcloud
+ Use Fixed Frame: true
+ Use rainbow: true
+ Value: true
+ Enabled: true
+ Name: Segmentation
+ - Class: rviz_common/Group
+ Displays:
+ - Class: rviz_common/Group
+ Displays:
+ - BUS:
+ Alpha: 0.9990000128746033
+ Color: 30; 144; 255
+ CAR:
+ Alpha: 0.9990000128746033
+ Color: 30; 144; 255
+ CYCLIST:
+ Alpha: 0.9990000128746033
+ Color: 119; 11; 32
+ Class: autoware_perception_rviz_plugin/DetectedObjects
+ Confidence Interval: 95%
+ Display Acceleration: true
+ Display Existence Probability: false
+ Display Label: true
+ Display Pose Covariance: true
+ Display Predicted Path Confidence: true
+ Display Predicted Paths: true
+ Display Twist: true
+ Display Twist Covariance: false
+ Display UUID: true
+ Display Velocity: true
+ Display Yaw Covariance: false
+ Display Yaw Rate: false
+ Display Yaw Rate Covariance: false
+ Enabled: true
+ Line Width: 0.029999999329447746
+ MOTORCYCLE:
+ Alpha: 0.9990000128746033
+ Color: 119; 11; 32
+ Name: DetectedObjects
+ Namespaces:
+ {}
+ Object Fill Type: skeleton
+ PEDESTRIAN:
+ Alpha: 0.9990000128746033
+ Color: 255; 192; 203
+ Polygon Type: 3d
+ TRAILER:
+ Alpha: 0.9990000128746033
+ Color: 30; 144; 255
+ TRUCK:
+ Alpha: 0.9990000128746033
+ Color: 30; 144; 255
+ Topic:
+ Depth: 5
+ Durability Policy: Volatile
+ History Policy: Keep Last
+ Reliability Policy: Best Effort
+ Value: /perception/object_recognition/detection/objects
+ UNKNOWN:
+ Alpha: 0.9990000128746033
+ Color: 255; 255; 255
+ Value: true
+ Visualization Type: Normal
+ Enabled: false
+ Name: Detection
+ - Class: rviz_common/Group
+ Displays:
+ - BUS:
+ Alpha: 0.9990000128746033
+ Color: 30; 144; 255
+ CAR:
+ Alpha: 0.9990000128746033
+ Color: 30; 144; 255
+ CYCLIST:
+ Alpha: 0.9990000128746033
+ Color: 119; 11; 32
+ Class: autoware_perception_rviz_plugin/TrackedObjects
+ Confidence Interval: 95%
+ Display Acceleration: true
+ Display Existence Probability: false
+ Display Label: true
+ Display Pose Covariance: true
+ Display Predicted Path Confidence: true
+ Display Predicted Paths: true
+ Display Twist: true
+ Display Twist Covariance: false
+ Display UUID: true
+ Display Velocity: true
+ Display Yaw Covariance: false
+ Display Yaw Rate: false
+ Display Yaw Rate Covariance: false
+ Dynamic Status: All
+ Enabled: true
+ Line Width: 0.029999999329447746
+ MOTORCYCLE:
+ Alpha: 0.9990000128746033
+ Color: 119; 11; 32
+ Name: TrackedObjects
+ Namespaces:
+ {}
+ Object Fill Type: skeleton
+ PEDESTRIAN:
+ Alpha: 0.9990000128746033
+ Color: 255; 192; 203
+ Polygon Type: 3d
+ TRAILER:
+ Alpha: 0.9990000128746033
+ Color: 30; 144; 255
+ TRUCK:
+ Alpha: 0.9990000128746033
+ Color: 30; 144; 255
+ Topic:
+ Depth: 5
+ Durability Policy: Volatile
+ History Policy: Keep Last
+ Reliability Policy: Best Effort
+ Value: /perception/object_recognition/tracking/objects
+ UNKNOWN:
+ Alpha: 0.9990000128746033
+ Color: 255; 255; 255
+ Value: true
+ Visualization Type: Normal
+ Enabled: false
+ Name: Tracking
+ - Class: rviz_common/Group
+ Displays:
+ - BUS:
+ Alpha: 0.9990000128746033
+ Color: 30; 144; 255
+ CAR:
+ Alpha: 0.9990000128746033
+ Color: 30; 144; 255
+ CYCLIST:
+ Alpha: 0.9990000128746033
+ Color: 119; 11; 32
+ Class: autoware_perception_rviz_plugin/PredictedObjects
+ Confidence Interval: 95%
+ Display Acceleration: true
+ Display Existence Probability: false
+ Display Label: true
+ Display Pose Covariance: true
+ Display Predicted Path Confidence: true
+ Display Predicted Paths: true
+ Display Twist: true
+ Display Twist Covariance: false
+ Display UUID: true
+ Display Velocity: true
+ Display Yaw Covariance: false
+ Display Yaw Rate: false
+ Display Yaw Rate Covariance: false
+ Enabled: true
+ Line Width: 0.029999999329447746
+ MOTORCYCLE:
+ Alpha: 0.9990000128746033
+ Color: 119; 11; 32
+ Name: PredictedObjects
+ Namespaces:
+ {}
+ Object Fill Type: skeleton
+ PEDESTRIAN:
+ Alpha: 0.9990000128746033
+ Color: 255; 192; 203
+ Polygon Type: 3d
+ TRAILER:
+ Alpha: 0.9990000128746033
+ Color: 30; 144; 255
+ TRUCK:
+ Alpha: 0.9990000128746033
+ Color: 30; 144; 255
+ Topic:
+ Depth: 5
+ Durability Policy: Volatile
+ History Policy: Keep Last
+ Reliability Policy: Best Effort
+ Value: /perception/object_recognition/objects
+ UNKNOWN:
+ Alpha: 0.9990000128746033
+ Color: 255; 255; 255
+ Value: true
+ Visualization Type: Normal
+ - Class: rviz_default_plugins/MarkerArray
+ Enabled: false
+ Name: Maneuver
+ Namespaces:
+ {}
+ Topic:
+ Depth: 5
+ Durability Policy: Volatile
+ History Policy: Keep Last
+ Reliability Policy: Best Effort
+ Value: /perception/object_recognition/prediction/maneuver
+ Value: false
+ Enabled: true
+ Name: Prediction
+ Enabled: true
+ Name: ObjectRecognition
+ - Class: rviz_common/Group
+ Displays:
+ - Class: rviz_default_plugins/Image
+ Enabled: false
+ Max Value: 1
+ Median window: 5
+ Min Value: 0
+ Name: RecognitionResultOnImage
+ Normalize Range: true
+ Topic:
+ Depth: 5
+ Durability Policy: Volatile
+ History Policy: Keep Last
+ Reliability Policy: Best Effort
+ Value: /perception/traffic_light_recognition/traffic_light/debug/rois
+ Value: false
+ - Class: rviz_default_plugins/MarkerArray
+ Enabled: true
+ Name: MapBasedDetectionResult
+ Namespaces:
+ {}
+ Topic:
+ Depth: 5
+ Durability Policy: Volatile
+ History Policy: Keep Last
+ Reliability Policy: Best Effort
+ Value: /perception/traffic_light_recognition/traffic_light_map_based_detector/debug/markers
+ Value: true
+ Enabled: true
+ Name: TrafficLight
+ - Class: rviz_common/Group
+ Displays:
+ - Alpha: 0.5
+ Class: rviz_default_plugins/Map
+ Color Scheme: map
+ Draw Behind: false
+ Enabled: true
+ Name: Map
+ Topic:
+ Depth: 5
+ Durability Policy: Volatile
+ Filter size: 10
+ History Policy: Keep Last
+ Reliability Policy: Best Effort
+ Value: /perception/occupancy_grid_map/map
+ Update Topic:
+ Depth: 5
+ Durability Policy: Volatile
+ History Policy: Keep Last
+ Reliability Policy: Best Effort
+ Value: /perception/occupancy_grid_map/map_updates
+ Use Timestamp: false
+ Value: true
+ Enabled: false
+ Name: OccupancyGrid
+ Enabled: true
+ Name: Perception
+ - Class: rviz_common/Group
+ Displays:
+ - Class: rviz_common/Group
+ Displays:
+ - Class: rviz_default_plugins/MarkerArray
+ Enabled: true
+ Name: RouteArea
+ Namespaces:
+ {}
+ Topic:
+ Depth: 5
+ Durability Policy: Transient Local
+ History Policy: Keep Last
+ Reliability Policy: Reliable
+ Value: /planning/mission_planning/route_marker
+ Value: true
+ - Alpha: 0.9990000128746033
+ Axes Length: 1
+ Axes Radius: 0.30000001192092896
+ Class: rviz_default_plugins/Pose
+ Color: 255; 25; 0
+ Enabled: true
+ Head Length: 0.30000001192092896
+ Head Radius: 0.5
+ Name: GoalPose
+ Shaft Length: 3
+ Shaft Radius: 0.20000000298023224
+ Shape: Axes
+ Topic:
+ Depth: 5
+ Durability Policy: Volatile
+ Filter size: 10
+ History Policy: Keep Last
+ Reliability Policy: Reliable
+ Value: /planning/mission_planning/echo_back_goal_pose
+ Value: true
+ - Background Alpha: 0.5
+ Background Color: 23; 28; 31
+ Class: autoware_mission_details_overlay_rviz_plugin/MissionDetailsDisplay
+ Enabled: true
+ Height: 100
+ Name: MissionDetailsDisplay
+ Remaining Distance and Time Topic: /planning/mission_remaining_distance_time
+ Right: 10
+ Text Color: 194; 194; 194
+ Top: 10
+ Value: true
+ Width: 170
+ Enabled: true
+ Name: MissionPlanning
+ - Class: rviz_common/Group
+ Displays:
+ - Class: rviz_plugins/Trajectory
+ Color Border Vel Max: 3
+ Enabled: true
+ Name: ScenarioTrajectory
+ Topic:
+ Depth: 5
+ Durability Policy: Volatile
+ Filter size: 10
+ History Policy: Keep Last
+ Reliability Policy: Reliable
+ Value: /planning/scenario_planning/trajectory
+ Value: true
+ View Footprint:
+ Alpha: 1
+ Color: 230; 230; 50
+ Offset from BaseLink: 0
+ Rear Overhang: 1.0299999713897705
+ Value: false
+ Vehicle Length: 4.769999980926514
+ Vehicle Width: 1.8300000429153442
+ View Path:
+ Alpha: 0.9990000128746033
+ Constant Width: false
+ Fade Out Distance: 0
+ Max Velocity Color: 0; 230; 120
+ Mid Velocity Color: 32; 138; 174
+ Min Velocity Color: 63; 46; 227
+ Value: true
+ Width: 2
+ View Point:
+ Alpha: 1
+ Color: 0; 60; 255
+ Offset: 0
+ Radius: 0.10000000149011612
+ Value: false
+ View Text Slope:
+ Scale: 0.30000001192092896
+ Value: false
+ View Text Velocity:
+ Scale: 0.30000001192092896
+ Value: false
+ View Velocity:
+ Alpha: 0.9990000128746033
+ Color: 0; 0; 0
+ Constant Color: false
+ Scale: 0.30000001192092896
+ Value: true
+ - Class: rviz_common/Group
+ Displays:
+ - Class: rviz_common/Group
+ Displays:
+ - Class: rviz_plugins/Path
+ Color Border Vel Max: 3
+ Enabled: true
+ Name: Path
+ Topic:
+ Depth: 5
+ Durability Policy: Volatile
+ Filter size: 10
+ History Policy: Keep Last
+ Reliability Policy: Reliable
+ Value: /planning/scenario_planning/lane_driving/behavior_planning/path
+ Value: true
+ View Drivable Area:
+ Alpha: 0.9990000128746033
+ Color: 0; 148; 205
+ Value: true
+ Width: 0.30000001192092896
+ View Footprint:
+ Alpha: 1
+ Color: 230; 230; 50
+ Offset from BaseLink: 0
+ Rear Overhang: 1.0299999713897705
+ Value: false
+ Vehicle Length: 4.769999980926514
+ Vehicle Width: 1.8300000429153442
+ View Path:
+ Alpha: 0.4000000059604645
+ Constant Width: false
+ Fade Out Distance: 0
+ Max Velocity Color: 0; 230; 120
+ Mid Velocity Color: 32; 138; 174
+ Min Velocity Color: 63; 46; 227
+ Value: true
+ Width: 2
+ View Point:
+ Alpha: 1
+ Color: 0; 60; 255
+ Offset: 0
+ Radius: 0.10000000149011612
+ Value: false
+ View Text Slope:
+ Scale: 0.30000001192092896
+ Value: false
+ View Text Velocity:
+ Scale: 0.30000001192092896
+ Value: false
+ View Velocity:
+ Alpha: 0.4000000059604645
+ Color: 0; 0; 0
+ Constant Color: false
+ Scale: 0.30000001192092896
+ Value: true
+ - Class: rviz_plugins/Path
+ Color Border Vel Max: 3
+ Enabled: false
+ Name: PathReference_AvoidanceByLC
+ Topic:
+ Depth: 5
+ Durability Policy: Volatile
+ Filter size: 10
+ History Policy: Keep Last
+ Reliability Policy: Reliable
+ Value: /planning/path_reference/avoidance_by_lane_change
+ Value: false
+ View Drivable Area:
+ Alpha: 0.9990000128746033
+ Color: 0; 148; 205
+ Value: true
+ Width: 0.30000001192092896
+ View Footprint:
+ Alpha: 1
+ Color: 230; 230; 50
+ Offset from BaseLink: 0
+ Rear Overhang: 1.0299999713897705
+ Value: false
+ Vehicle Length: 4.769999980926514
+ Vehicle Width: 1.8300000429153442
+ View Path:
+ Alpha: 0.30000001192092896
+ Constant Width: false
+ Fade Out Distance: 0
+ Max Velocity Color: 0; 230; 120
+ Mid Velocity Color: 32; 138; 174
+ Min Velocity Color: 63; 46; 227
+ Value: true
+ Width: 2
+ View Point:
+ Alpha: 1
+ Color: 0; 60; 255
+ Offset: 0
+ Radius: 0.10000000149011612
+ Value: false
+ View Text Slope:
+ Scale: 0.30000001192092896
+ Value: false
+ View Text Velocity:
+ Scale: 0.30000001192092896
+ Value: false
+ View Velocity:
+ Alpha: 0.30000001192092896
+ Color: 0; 0; 0
+ Constant Color: false
+ Scale: 0.30000001192092896
+ Value: false
+ - Class: rviz_plugins/Path
+ Color Border Vel Max: 3
+ Enabled: false
+ Name: PathReference_Avoidance
+ Topic:
+ Depth: 5
+ Durability Policy: Volatile
+ Filter size: 10
+ History Policy: Keep Last
+ Reliability Policy: Reliable
+ Value: /planning/path_reference/static_obstacle_avoidance
+ Value: false
+ View Drivable Area:
+ Alpha: 0.9990000128746033
+ Color: 0; 148; 205
+ Value: true
+ Width: 0.30000001192092896
+ View Footprint:
+ Alpha: 1
+ Color: 230; 230; 50
+ Offset from BaseLink: 0
+ Rear Overhang: 1.0299999713897705
+ Value: false
+ Vehicle Length: 4.769999980926514
+ Vehicle Width: 1.8300000429153442
+ View Path:
+ Alpha: 0.30000001192092896
+ Constant Width: false
+ Fade Out Distance: 0
+ Max Velocity Color: 0; 230; 120
+ Mid Velocity Color: 32; 138; 174
+ Min Velocity Color: 63; 46; 227
+ Value: true
+ Width: 2
+ View Point:
+ Alpha: 1
+ Color: 0; 60; 255
+ Offset: 0
+ Radius: 0.10000000149011612
+ Value: false
+ View Text Slope:
+ Scale: 0.30000001192092896
+ Value: false
+ View Text Velocity:
+ Scale: 0.30000001192092896
+ Value: false
+ View Velocity:
+ Alpha: 0.30000001192092896
+ Color: 0; 0; 0
+ Constant Color: false
+ Scale: 0.30000001192092896
+ Value: false
+ - Class: rviz_plugins/Path
+ Color Border Vel Max: 3
+ Enabled: false
+ Name: PathReference_LaneChangeRight
+ Topic:
+ Depth: 5
+ Durability Policy: Volatile
+ Filter size: 10
+ History Policy: Keep Last
+ Reliability Policy: Reliable
+ Value: /planning/path_reference/lane_change_right
+ Value: false
+ View Drivable Area:
+ Alpha: 0.9990000128746033
+ Color: 0; 148; 205
+ Value: true
+ Width: 0.30000001192092896
+ View Footprint:
+ Alpha: 1
+ Color: 230; 230; 50
+ Offset from BaseLink: 0
+ Rear Overhang: 1.0299999713897705
+ Value: false
+ Vehicle Length: 4.769999980926514
+ Vehicle Width: 1.8300000429153442
+ View Path:
+ Alpha: 0.30000001192092896
+ Constant Width: false
+ Fade Out Distance: 0
+ Max Velocity Color: 0; 230; 120
+ Mid Velocity Color: 32; 138; 174
+ Min Velocity Color: 63; 46; 227
+ Value: true
+ Width: 2
+ View Point:
+ Alpha: 1
+ Color: 0; 60; 255
+ Offset: 0
+ Radius: 0.10000000149011612
+ Value: false
+ View Text Slope:
+ Scale: 0.30000001192092896
+ Value: false
+ View Text Velocity:
+ Scale: 0.30000001192092896
+ Value: false
+ View Velocity:
+ Alpha: 0.30000001192092896
+ Color: 0; 0; 0
+ Constant Color: false
+ Scale: 0.30000001192092896
+ Value: false
+ - Class: rviz_plugins/Path
+ Color Border Vel Max: 3
+ Enabled: false
+ Name: PathReference_LaneChangeLeft
+ Topic:
+ Depth: 5
+ Durability Policy: Volatile
+ Filter size: 10
+ History Policy: Keep Last
+ Reliability Policy: Reliable
+ Value: /planning/path_reference/lane_change_left
+ Value: false
+ View Drivable Area:
+ Alpha: 0.9990000128746033
+ Color: 0; 148; 205
+ Value: true
+ Width: 0.30000001192092896
+ View Footprint:
+ Alpha: 1
+ Color: 230; 230; 50
+ Offset from BaseLink: 0
+ Rear Overhang: 1.0299999713897705
+ Value: false
+ Vehicle Length: 4.769999980926514
+ Vehicle Width: 1.8300000429153442
+ View Path:
+ Alpha: 0.30000001192092896
+ Constant Width: false
+ Fade Out Distance: 0
+ Max Velocity Color: 0; 230; 120
+ Mid Velocity Color: 32; 138; 174
+ Min Velocity Color: 63; 46; 227
+ Value: true
+ Width: 2
+ View Point:
+ Alpha: 1
+ Color: 0; 60; 255
+ Offset: 0
+ Radius: 0.10000000149011612
+ Value: false
+ View Text Slope:
+ Scale: 0.30000001192092896
+ Value: false
+ View Text Velocity:
+ Scale: 0.30000001192092896
+ Value: false
+ View Velocity:
+ Alpha: 0.30000001192092896
+ Color: 0; 0; 0
+ Constant Color: false
+ Scale: 0.30000001192092896
+ Value: false
+ - Class: rviz_plugins/Path
+ Color Border Vel Max: 3
+ Enabled: false
+ Name: PathReference_GoalPlanner
+ Topic:
+ Depth: 5
+ Durability Policy: Volatile
+ Filter size: 10
+ History Policy: Keep Last
+ Reliability Policy: Reliable
+ Value: /planning/path_reference/goal_planner
+ Value: false
+ View Drivable Area:
+ Alpha: 0.9990000128746033
+ Color: 0; 148; 205
+ Value: true
+ Width: 0.30000001192092896
+ View Footprint:
+ Alpha: 1
+ Color: 230; 230; 50
+ Offset from BaseLink: 0
+ Rear Overhang: 1.0299999713897705
+ Value: false
+ Vehicle Length: 4.769999980926514
+ Vehicle Width: 1.8300000429153442
+ View Path:
+ Alpha: 0.30000001192092896
+ Constant Width: false
+ Fade Out Distance: 0
+ Max Velocity Color: 0; 230; 120
+ Mid Velocity Color: 32; 138; 174
+ Min Velocity Color: 63; 46; 227
+ Value: true
+ Width: 2
+ View Point:
+ Alpha: 1
+ Color: 0; 60; 255
+ Offset: 0
+ Radius: 0.10000000149011612
+ Value: false
+ View Text Slope:
+ Scale: 0.30000001192092896
+ Value: false
+ View Text Velocity:
+ Scale: 0.30000001192092896
+ Value: false
+ View Velocity:
+ Alpha: 0.30000001192092896
+ Color: 0; 0; 0
+ Constant Color: false
+ Scale: 0.30000001192092896
+ Value: false
+ - Class: rviz_plugins/Path
+ Color Border Vel Max: 3
+ Enabled: false
+ Name: PathReference_StartPlanner
+ Topic:
+ Depth: 5
+ Durability Policy: Volatile
+ Filter size: 10
+ History Policy: Keep Last
+ Reliability Policy: Reliable
+ Value: /planning/path_reference/start_planner
+ Value: false
+ View Drivable Area:
+ Alpha: 0.9990000128746033
+ Color: 0; 148; 205
+ Value: true
+ Width: 0.30000001192092896
+ View Footprint:
+ Alpha: 1
+ Color: 230; 230; 50
+ Offset from BaseLink: 0
+ Rear Overhang: 1.0299999713897705
+ Value: false
+ Vehicle Length: 4.769999980926514
+ Vehicle Width: 1.8300000429153442
+ View Path:
+ Alpha: 0.30000001192092896
+ Constant Width: false
+ Fade Out Distance: 0
+ Max Velocity Color: 0; 230; 120
+ Mid Velocity Color: 32; 138; 174
+ Min Velocity Color: 63; 46; 227
+ Value: true
+ Width: 2
+ View Point:
+ Alpha: 1
+ Color: 0; 60; 255
+ Offset: 0
+ Radius: 0.10000000149011612
+ Value: false
+ View Text Slope:
+ Scale: 0.30000001192092896
+ Value: false
+ View Text Velocity:
+ Scale: 0.30000001192092896
+ Value: false
+ View Velocity:
+ Alpha: 0.30000001192092896
+ Color: 0; 0; 0
+ Constant Color: false
+ Scale: 0.30000001192092896
+ Value: false
+ - Class: rviz_plugins/Path
+ Color Border Vel Max: 3
+ Enabled: true
+ Name: PathChangeCandidate_AvoidanceByLC
+ Topic:
+ Depth: 5
+ Durability Policy: Volatile
+ Filter size: 10
+ History Policy: Keep Last
+ Reliability Policy: Reliable
+ Value: /planning/path_candidate/avoidance_by_lane_change
+ Value: true
+ View Drivable Area:
+ Alpha: 0.9990000128746033
+ Color: 0; 148; 205
+ Value: true
+ Width: 0.30000001192092896
+ View Footprint:
+ Alpha: 1
+ Color: 230; 230; 50
+ Offset from BaseLink: 0
+ Rear Overhang: 1.0299999713897705
+ Value: false
+ Vehicle Length: 4.769999980926514
+ Vehicle Width: 1.8300000429153442
+ View Path:
+ Alpha: 0.30000001192092896
+ Constant Width: false
+ Fade Out Distance: 0
+ Max Velocity Color: 0; 230; 120
+ Mid Velocity Color: 32; 138; 174
+ Min Velocity Color: 63; 46; 227
+ Value: true
+ Width: 2
+ View Point:
+ Alpha: 1
+ Color: 0; 60; 255
+ Offset: 0
+ Radius: 0.10000000149011612
+ Value: false
+ View Text Slope:
+ Scale: 0.30000001192092896
+ Value: false
+ View Text Velocity:
+ Scale: 0.30000001192092896
+ Value: false
+ View Velocity:
+ Alpha: 0.30000001192092896
+ Color: 0; 0; 0
+ Constant Color: false
+ Scale: 0.30000001192092896
+ Value: false
+ - Class: rviz_plugins/Path
+ Color Border Vel Max: 3
+ Enabled: true
+ Name: (old)PathChangeCandidate_LaneChange
+ Topic:
+ Depth: 5
+ Durability Policy: Volatile
+ Filter size: 10
+ History Policy: Keep Last
+ Reliability Policy: Reliable
+ Value: /planning/path_candidate/lane_change
+ Value: true
+ View Drivable Area:
+ Alpha: 0.9990000128746033
+ Color: 0; 148; 205
+ Value: true
+ Width: 0.30000001192092896
+ View Footprint:
+ Alpha: 1
+ Color: 230; 230; 50
+ Offset from BaseLink: 0
+ Rear Overhang: 1.0299999713897705
+ Value: false
+ Vehicle Length: 4.769999980926514
+ Vehicle Width: 1.8300000429153442
+ View Path:
+ Alpha: 0.30000001192092896
+ Constant Width: false
+ Fade Out Distance: 0
+ Max Velocity Color: 0; 230; 120
+ Mid Velocity Color: 32; 138; 174
+ Min Velocity Color: 63; 46; 227
+ Value: true
+ Width: 2
+ View Point:
+ Alpha: 1
+ Color: 0; 60; 255
+ Offset: 0
+ Radius: 0.10000000149011612
+ Value: false
+ View Text Slope:
+ Scale: 0.30000001192092896
+ Value: false
+ View Text Velocity:
+ Scale: 0.30000001192092896
+ Value: false
+ View Velocity:
+ Alpha: 0.30000001192092896
+ Color: 0; 0; 0
+ Constant Color: false
+ Scale: 0.30000001192092896
+ Value: false
+ - Class: rviz_plugins/Path
+ Color Border Vel Max: 3
+ Enabled: true
+ Name: PathChangeCandidate_LaneChangeRight
+ Topic:
+ Depth: 5
+ Durability Policy: Volatile
+ Filter size: 10
+ History Policy: Keep Last
+ Reliability Policy: Reliable
+ Value: /planning/path_candidate/lane_change_right
+ Value: true
+ View Drivable Area:
+ Alpha: 0.9990000128746033
+ Color: 0; 148; 205
+ Value: true
+ Width: 0.30000001192092896
+ View Footprint:
+ Alpha: 1
+ Color: 230; 230; 50
+ Offset from BaseLink: 0
+ Rear Overhang: 1.0299999713897705
+ Value: false
+ Vehicle Length: 4.769999980926514
+ Vehicle Width: 1.8300000429153442
+ View Path:
+ Alpha: 0.30000001192092896
+ Constant Width: false
+ Fade Out Distance: 0
+ Max Velocity Color: 0; 230; 120
+ Mid Velocity Color: 32; 138; 174
+ Min Velocity Color: 63; 46; 227
+ Value: true
+ Width: 2
+ View Point:
+ Alpha: 1
+ Color: 0; 60; 255
+ Offset: 0
+ Radius: 0.10000000149011612
+ Value: false
+ View Text Slope:
+ Scale: 0.30000001192092896
+ Value: false
+ View Text Velocity:
+ Scale: 0.30000001192092896
+ Value: false
+ View Velocity:
+ Alpha: 0.30000001192092896
+ Color: 0; 0; 0
+ Constant Color: false
+ Scale: 0.30000001192092896
+ Value: false
+ - Class: rviz_plugins/Path
+ Color Border Vel Max: 3
+ Enabled: true
+ Name: PathChangeCandidate_LaneChangeLeft
+ Topic:
+ Depth: 5
+ Durability Policy: Volatile
+ Filter size: 10
+ History Policy: Keep Last
+ Reliability Policy: Reliable
+ Value: /planning/path_candidate/lane_change_left
+ Value: true
+ View Drivable Area:
+ Alpha: 0.9990000128746033
+ Color: 0; 148; 205
+ Value: true
+ Width: 0.30000001192092896
+ View Footprint:
+ Alpha: 1
+ Color: 230; 230; 50
+ Offset from BaseLink: 0
+ Rear Overhang: 1.0299999713897705
+ Value: false
+ Vehicle Length: 4.769999980926514
+ Vehicle Width: 1.8300000429153442
+ View Path:
+ Alpha: 0.30000001192092896
+ Constant Width: false
+ Fade Out Distance: 0
+ Max Velocity Color: 0; 230; 120
+ Mid Velocity Color: 32; 138; 174
+ Min Velocity Color: 63; 46; 227
+ Value: true
+ Width: 2
+ View Point:
+ Alpha: 1
+ Color: 0; 60; 255
+ Offset: 0
+ Radius: 0.10000000149011612
+ Value: false
+ View Text Slope:
+ Scale: 0.30000001192092896
+ Value: false
+ View Text Velocity:
+ Scale: 0.30000001192092896
+ Value: false
+ View Velocity:
+ Alpha: 0.30000001192092896
+ Color: 0; 0; 0
+ Constant Color: false
+ Scale: 0.30000001192092896
+ Value: false
+ - Class: rviz_plugins/Path
+ Color Border Vel Max: 3
+ Enabled: true
+ Name: PathChangeCandidate_ExternalRequestLaneChangeRight
+ Topic:
+ Depth: 5
+ Durability Policy: Volatile
+ Filter size: 10
+ History Policy: Keep Last
+ Reliability Policy: Reliable
+ Value: /planning/path_candidate/external_request_lane_change_right
+ Value: true
+ View Drivable Area:
+ Alpha: 0.9990000128746033
+ Color: 0; 148; 205
+ Value: true
+ Width: 0.30000001192092896
+ View Footprint:
+ Alpha: 1
+ Color: 230; 230; 50
+ Offset from BaseLink: 0
+ Rear Overhang: 1.0299999713897705
+ Value: false
+ Vehicle Length: 4.769999980926514
+ Vehicle Width: 1.8300000429153442
+ View Path:
+ Alpha: 0.30000001192092896
+ Constant Width: false
+ Fade Out Distance: 0
+ Max Velocity Color: 0; 230; 120
+ Mid Velocity Color: 32; 138; 174
+ Min Velocity Color: 63; 46; 227
+ Value: true
+ Width: 2
+ View Point:
+ Alpha: 1
+ Color: 0; 60; 255
+ Offset: 0
+ Radius: 0.10000000149011612
+ Value: false
+ View Text Slope:
+ Scale: 0.30000001192092896
+ Value: false
+ View Text Velocity:
+ Scale: 0.30000001192092896
+ Value: false
+ View Velocity:
+ Alpha: 0.30000001192092896
+ Color: 0; 0; 0
+ Constant Color: false
+ Scale: 0.30000001192092896
+ Value: false
+ - Class: rviz_plugins/Path
+ Color Border Vel Max: 3
+ Enabled: true
+ Name: PathChangeCandidate_ExternalRequestLaneChangeLeft
+ Topic:
+ Depth: 5
+ Durability Policy: Volatile
+ Filter size: 10
+ History Policy: Keep Last
+ Reliability Policy: Reliable
+ Value: /planning/path_candidate/external_request_lane_change_left
+ Value: true
+ View Drivable Area:
+ Alpha: 0.9990000128746033
+ Color: 0; 148; 205
+ Value: true
+ Width: 0.30000001192092896
+ View Footprint:
+ Alpha: 1
+ Color: 230; 230; 50
+ Offset from BaseLink: 0
+ Rear Overhang: 1.0299999713897705
+ Value: false
+ Vehicle Length: 4.769999980926514
+ Vehicle Width: 1.8300000429153442
+ View Path:
+ Alpha: 0.30000001192092896
+ Constant Width: false
+ Fade Out Distance: 0
+ Max Velocity Color: 0; 230; 120
+ Mid Velocity Color: 32; 138; 174
+ Min Velocity Color: 63; 46; 227
+ Value: true
+ Width: 2
+ View Point:
+ Alpha: 1
+ Color: 0; 60; 255
+ Offset: 0
+ Radius: 0.10000000149011612
+ Value: false
+ View Text Slope:
+ Scale: 0.30000001192092896
+ Value: false
+ View Text Velocity:
+ Scale: 0.30000001192092896
+ Value: false
+ View Velocity:
+ Alpha: 0.30000001192092896
+ Color: 0; 0; 0
+ Constant Color: false
+ Scale: 0.30000001192092896
+ Value: false
+ - Class: rviz_plugins/Path
+ Color Border Vel Max: 3
+ Enabled: true
+ Name: PathChangeCandidate_Avoidance
+ Topic:
+ Depth: 5
+ Durability Policy: Volatile
+ Filter size: 10
+ History Policy: Keep Last
+ Reliability Policy: Reliable
+ Value: /planning/path_candidate/static_obstacle_avoidance
+ Value: true
+ View Drivable Area:
+ Alpha: 0.9990000128746033
+ Color: 0; 148; 205
+ Value: true
+ Width: 0.30000001192092896
+ View Footprint:
+ Alpha: 1
+ Color: 230; 230; 50
+ Offset from BaseLink: 0
+ Rear Overhang: 1.0299999713897705
+ Value: false
+ Vehicle Length: 4.769999980926514
+ Vehicle Width: 1.8300000429153442
+ View Path:
+ Alpha: 0.30000001192092896
+ Constant Width: false
+ Fade Out Distance: 0
+ Max Velocity Color: 0; 230; 120
+ Mid Velocity Color: 32; 138; 174
+ Min Velocity Color: 63; 46; 227
+ Value: true
+ Width: 2
+ View Point:
+ Alpha: 1
+ Color: 0; 60; 255
+ Offset: 0
+ Radius: 0.10000000149011612
+ Value: false
+ View Text Slope:
+ Scale: 0.30000001192092896
+ Value: false
+ View Text Velocity:
+ Scale: 0.30000001192092896
+ Value: false
+ View Velocity:
+ Alpha: 0.30000001192092896
+ Color: 0; 0; 0
+ Constant Color: false
+ Scale: 0.30000001192092896
+ Value: false
+ - Class: rviz_plugins/Path
+ Color Border Vel Max: 3
+ Enabled: true
+ Name: PathChangeCandidate_StartPlanner
+ Topic:
+ Depth: 5
+ Durability Policy: Volatile
+ Filter size: 10
+ History Policy: Keep Last
+ Reliability Policy: Reliable
+ Value: /planning/path_candidate/start_planner
+ Value: true
+ View Drivable Area:
+ Alpha: 0.9990000128746033
+ Color: 0; 148; 205
+ Value: true
+ Width: 0.30000001192092896
+ View Footprint:
+ Alpha: 1
+ Color: 230; 230; 50
+ Offset from BaseLink: 0
+ Rear Overhang: 1.0299999713897705
+ Value: false
+ Vehicle Length: 4.769999980926514
+ Vehicle Width: 1.8300000429153442
+ View Path:
+ Alpha: 0.30000001192092896
+ Constant Width: false
+ Fade Out Distance: 0
+ Max Velocity Color: 0; 230; 120
+ Mid Velocity Color: 32; 138; 174
+ Min Velocity Color: 63; 46; 227
+ Value: true
+ Width: 2
+ View Point:
+ Alpha: 1
+ Color: 0; 60; 255
+ Offset: 0
+ Radius: 0.10000000149011612
+ Value: false
+ View Text Slope:
+ Scale: 0.30000001192092896
+ Value: false
+ View Text Velocity:
+ Scale: 0.30000001192092896
+ Value: false
+ View Velocity:
+ Alpha: 0.30000001192092896
+ Color: 0; 0; 0
+ Constant Color: false
+ Scale: 0.30000001192092896
+ Value: false
+ - Class: rviz_plugins/Path
+ Color Border Vel Max: 3
+ Enabled: true
+ Name: PathChangeCandidate_GoalPlanner
+ Topic:
+ Depth: 5
+ Durability Policy: Volatile
+ Filter size: 10
+ History Policy: Keep Last
+ Reliability Policy: Reliable
+ Value: /planning/path_candidate/goal_planner
+ Value: true
+ View Drivable Area:
+ Alpha: 0.9990000128746033
+ Color: 0; 148; 205
+ Value: true
+ Width: 0.30000001192092896
+ View Footprint:
+ Alpha: 1
+ Color: 230; 230; 50
+ Offset from BaseLink: 0
+ Rear Overhang: 1.0299999713897705
+ Value: false
+ Vehicle Length: 4.769999980926514
+ Vehicle Width: 1.8300000429153442
+ View Path:
+ Alpha: 0.30000001192092896
+ Constant Width: false
+ Fade Out Distance: 0
+ Max Velocity Color: 0; 230; 120
+ Mid Velocity Color: 32; 138; 174
+ Min Velocity Color: 63; 46; 227
+ Value: true
+ Width: 2
+ View Point:
+ Alpha: 1
+ Color: 0; 60; 255
+ Offset: 0
+ Radius: 0.10000000149011612
+ Value: false
+ View Text Slope:
+ Scale: 0.30000001192092896
+ Value: false
+ View Text Velocity:
+ Scale: 0.30000001192092896
+ Value: false
+ View Velocity:
+ Alpha: 0.30000001192092896
+ Color: 0; 0; 0
+ Constant Color: false
+ Scale: 0.30000001192092896
+ Value: false
+ - Class: rviz_default_plugins/MarkerArray
+ Enabled: false
+ Name: Bound
+ Namespaces:
+ {}
+ Topic:
+ Depth: 5
+ Durability Policy: Volatile
+ History Policy: Keep Last
+ Reliability Policy: Reliable
+ Value: /planning/scenario_planning/lane_driving/behavior_planning/behavior_path_planner/debug/bound
+ Value: false
+ - Class: rviz_common/Group
+ Displays:
+ - Class: rviz_default_plugins/MarkerArray
+ Enabled: true
+ Name: VirtualWall (StaticObstacleAvoidance)
+ Namespaces:
+ {}
+ Topic:
+ Depth: 5
+ Durability Policy: Volatile
+ History Policy: Keep Last
+ Reliability Policy: Reliable
+ Value: /planning/scenario_planning/lane_driving/behavior_planning/behavior_path_planner/virtual_wall/static_obstacle_avoidance
+ Value: true
+ - Class: rviz_default_plugins/MarkerArray
+ Enabled: true
+ Name: VirtualWall (AvoidanceByLC)
+ Namespaces:
+ {}
+ Topic:
+ Depth: 5
+ Durability Policy: Volatile
+ History Policy: Keep Last
+ Reliability Policy: Reliable
+ Value: /planning/scenario_planning/lane_driving/behavior_planning/behavior_path_planner/virtual_wall/avoidance_by_lane_change
+ Value: true
+ - Class: rviz_default_plugins/MarkerArray
+ Enabled: true
+ Name: VirtualWall (LaneChangeRight)
+ Namespaces:
+ {}
+ Topic:
+ Depth: 5
+ Durability Policy: Volatile
+ History Policy: Keep Last
+ Reliability Policy: Reliable
+ Value: /planning/scenario_planning/lane_driving/behavior_planning/behavior_path_planner/virtual_wall/lane_change_right
+ Value: true
+ - Class: rviz_default_plugins/MarkerArray
+ Enabled: true
+ Name: VirtualWall (LaneChangeLeft)
+ Namespaces:
+ {}
+ Topic:
+ Depth: 5
+ Durability Policy: Volatile
+ History Policy: Keep Last
+ Reliability Policy: Reliable
+ Value: /planning/scenario_planning/lane_driving/behavior_planning/behavior_path_planner/virtual_wall/lane_change_left
+ Value: true
+ - Class: rviz_default_plugins/MarkerArray
+ Enabled: true
+ Name: VirtualWall (ExtLaneChangeRight)
+ Namespaces:
+ {}
+ Topic:
+ Depth: 5
+ Durability Policy: Volatile
+ History Policy: Keep Last
+ Reliability Policy: Reliable
+ Value: /planning/scenario_planning/lane_driving/behavior_planning/behavior_path_planner/virtual_wall/external_request_lane_change_right
+ Value: true
+ - Class: rviz_default_plugins/MarkerArray
+ Enabled: true
+ Name: VirtualWall (ExtLaneChangeLeft)
+ Namespaces:
+ {}
+ Topic:
+ Depth: 5
+ Durability Policy: Volatile
+ History Policy: Keep Last
+ Reliability Policy: Reliable
+ Value: /planning/scenario_planning/lane_driving/behavior_planning/behavior_path_planner/virtual_wall/external_request_lane_change_left
+ Value: true
+ - Class: rviz_default_plugins/MarkerArray
+ Enabled: true
+ Name: VirtualWall (GoalPlanner)
+ Namespaces:
+ {}
+ Topic:
+ Depth: 5
+ Durability Policy: Volatile
+ History Policy: Keep Last
+ Reliability Policy: Reliable
+ Value: /planning/scenario_planning/lane_driving/behavior_planning/behavior_path_planner/virtual_wall/goal_planner
+ Value: true
+ - Class: rviz_default_plugins/MarkerArray
+ Enabled: true
+ Name: VirtualWall (StartPlanner)
+ Namespaces:
+ {}
+ Topic:
+ Depth: 5
+ Durability Policy: Volatile
+ History Policy: Keep Last
+ Reliability Policy: Reliable
+ Value: /planning/scenario_planning/lane_driving/behavior_planning/behavior_path_planner/virtual_wall/start_planner
+ Value: true
+ - Class: rviz_default_plugins/MarkerArray
+ Enabled: true
+ Name: VirtualWall (BlindSpot)
+ Namespaces:
+ {}
+ Topic:
+ Depth: 5
+ Durability Policy: Volatile
+ History Policy: Keep Last
+ Reliability Policy: Reliable
+ Value: /planning/scenario_planning/lane_driving/behavior_planning/behavior_velocity_planner/virtual_wall/blind_spot
+ Value: true
+ - Class: rviz_default_plugins/MarkerArray
+ Enabled: true
+ Name: VirtualWall (Crosswalk)
+ Namespaces:
+ {}
+ Topic:
+ Depth: 5
+ Durability Policy: Volatile
+ History Policy: Keep Last
+ Reliability Policy: Reliable
+ Value: /planning/scenario_planning/lane_driving/behavior_planning/behavior_velocity_planner/virtual_wall/crosswalk
+ Value: true
+ - Class: rviz_default_plugins/MarkerArray
+ Enabled: true
+ Name: VirtualWall (Walkway)
+ Namespaces:
+ {}
+ Topic:
+ Depth: 5
+ Durability Policy: Volatile
+ History Policy: Keep Last
+ Reliability Policy: Reliable
+ Value: /planning/scenario_planning/lane_driving/behavior_planning/behavior_velocity_planner/virtual_wall/walkway
+ Value: true
+ - Class: rviz_default_plugins/MarkerArray
+ Enabled: true
+ Name: VirtualWall (DetectionArea)
+ Namespaces:
+ {}
+ Topic:
+ Depth: 5
+ Durability Policy: Volatile
+ History Policy: Keep Last
+ Reliability Policy: Reliable
+ Value: /planning/scenario_planning/lane_driving/behavior_planning/behavior_velocity_planner/virtual_wall/detection_area
+ Value: true
+ - Class: rviz_default_plugins/MarkerArray
+ Enabled: true
+ Name: VirtualWall (Intersection)
+ Namespaces:
+ {}
+ Topic:
+ Depth: 5
+ Durability Policy: Volatile
+ History Policy: Keep Last
+ Reliability Policy: Reliable
+ Value: /planning/scenario_planning/lane_driving/behavior_planning/behavior_velocity_planner/virtual_wall/intersection
+ Value: true
+ - Class: rviz_default_plugins/MarkerArray
+ Enabled: true
+ Name: VirtualWall (MergeFromPrivateArea)
+ Namespaces:
+ {}
+ Topic:
+ Depth: 5
+ Durability Policy: Volatile
+ History Policy: Keep Last
+ Reliability Policy: Reliable
+ Value: /planning/scenario_planning/lane_driving/behavior_planning/behavior_velocity_planner/virtual_wall/merge_from_private
+ Value: true
+ - Class: rviz_default_plugins/MarkerArray
+ Enabled: true
+ Name: VirtualWall (NoStoppingArea)
+ Namespaces:
+ {}
+ Topic:
+ Depth: 5
+ Durability Policy: Volatile
+ History Policy: Keep Last
+ Reliability Policy: Reliable
+ Value: /planning/scenario_planning/lane_driving/behavior_planning/behavior_velocity_planner/virtual_wall/no_stopping_area
+ Value: true
+ - Class: rviz_default_plugins/MarkerArray
+ Enabled: true
+ Name: VirtualWall (OcclusionSpot)
+ Namespaces:
+ {}
+ Topic:
+ Depth: 5
+ Durability Policy: Volatile
+ History Policy: Keep Last
+ Reliability Policy: Reliable
+ Value: /planning/scenario_planning/lane_driving/behavior_planning/behavior_velocity_planner/virtual_wall/occlusion_spot
+ Value: true
+ - Class: rviz_default_plugins/MarkerArray
+ Enabled: true
+ Name: VirtualWall (StopLine)
+ Namespaces:
+ {}
+ Topic:
+ Depth: 5
+ Durability Policy: Volatile
+ History Policy: Keep Last
+ Reliability Policy: Reliable
+ Value: /planning/scenario_planning/lane_driving/behavior_planning/behavior_velocity_planner/virtual_wall/stop_line
+ Value: true
+ - Class: rviz_default_plugins/MarkerArray
+ Enabled: true
+ Name: VirtualWall (TrafficLight)
+ Namespaces:
+ {}
+ Topic:
+ Depth: 5
+ Durability Policy: Volatile
+ History Policy: Keep Last
+ Reliability Policy: Reliable
+ Value: /planning/scenario_planning/lane_driving/behavior_planning/behavior_velocity_planner/virtual_wall/traffic_light
+ Value: true
+ - Class: rviz_default_plugins/MarkerArray
+ Enabled: true
+ Name: VirtualWall (VirtualTrafficLight)
+ Namespaces:
+ {}
+ Topic:
+ Depth: 5
+ Durability Policy: Volatile
+ History Policy: Keep Last
+ Reliability Policy: Reliable
+ Value: /planning/scenario_planning/lane_driving/behavior_planning/behavior_velocity_planner/virtual_wall/virtual_traffic_light
+ Value: true
+ - Class: rviz_default_plugins/MarkerArray
+ Enabled: true
+ Name: VirtualWall (RunOut)
+ Namespaces:
+ {}
+ Topic:
+ Depth: 5
+ Durability Policy: Volatile
+ History Policy: Keep Last
+ Reliability Policy: Reliable
+ Value: /planning/scenario_planning/lane_driving/behavior_planning/behavior_velocity_planner/virtual_wall/run_out
+ Value: true
+ - Class: rviz_default_plugins/MarkerArray
+ Enabled: true
+ Name: VirtualWall (SpeedBump)
+ Namespaces:
+ {}
+ Topic:
+ Depth: 5
+ Durability Policy: Volatile
+ History Policy: Keep Last
+ Reliability Policy: Reliable
+ Value: /planning/scenario_planning/lane_driving/behavior_planning/behavior_velocity_planner/virtual_wall/speed_bump
+ Value: true
+ - Class: rviz_default_plugins/MarkerArray
+ Enabled: true
+ Name: VirtualWall (NoDrivableLane)
+ Namespaces:
+ {}
+ Topic:
+ Depth: 5
+ Durability Policy: Volatile
+ History Policy: Keep Last
+ Reliability Policy: Reliable
+ Value: /planning/scenario_planning/lane_driving/behavior_planning/behavior_velocity_planner/virtual_wall/no_drivable_lane
+ Value: true
+ Enabled: true
+ Name: VirtualWall
+ - Class: rviz_common/Group
+ Displays:
+ - Class: rviz_default_plugins/MarkerArray
+ Enabled: false
+ Name: Arrow
+ Namespaces:
+ {}
+ Topic:
+ Depth: 5
+ Durability Policy: Volatile
+ History Policy: Keep Last
+ Reliability Policy: Reliable
+ Value: /planning/scenario_planning/lane_driving/behavior_planning/behavior_velocity_planner/debug/path
+ Value: false
+ - Class: rviz_default_plugins/MarkerArray
+ Enabled: false
+ Name: Crosswalk
+ Namespaces:
+ {}
+ Topic:
+ Depth: 5
+ Durability Policy: Volatile
+ History Policy: Keep Last
+ Reliability Policy: Reliable
+ Value: /planning/scenario_planning/lane_driving/behavior_planning/behavior_velocity_planner/debug/crosswalk
+ Value: false
+ - Class: rviz_default_plugins/MarkerArray
+ Enabled: false
+ Name: Intersection
+ Namespaces:
+ {}
+ Topic:
+ Depth: 5
+ Durability Policy: Volatile
+ History Policy: Keep Last
+ Reliability Policy: Reliable
+ Value: /planning/scenario_planning/lane_driving/behavior_planning/behavior_velocity_planner/debug/intersection
+ Value: false
+ - Class: rviz_default_plugins/MarkerArray
+ Enabled: false
+ Name: Blind Spot
+ Namespaces:
+ {}
+ Topic:
+ Depth: 5
+ Durability Policy: Volatile
+ History Policy: Keep Last
+ Reliability Policy: Reliable
+ Value: /planning/scenario_planning/lane_driving/behavior_planning/behavior_velocity_planner/debug/blind_spot
+ Value: false
+ - Class: rviz_default_plugins/MarkerArray
+ Enabled: false
+ Name: TrafficLight
+ Namespaces:
+ {}
+ Topic:
+ Depth: 5
+ Durability Policy: Volatile
+ History Policy: Keep Last
+ Reliability Policy: Reliable
+ Value: /planning/scenario_planning/lane_driving/behavior_planning/behavior_velocity_planner/debug/traffic_light
+ Value: false
+ - Class: rviz_default_plugins/MarkerArray
+ Enabled: false
+ Name: VirtualTrafficLight
+ Namespaces:
+ {}
+ Topic:
+ Depth: 5
+ Durability Policy: Volatile
+ History Policy: Keep Last
+ Reliability Policy: Reliable
+ Value: /planning/scenario_planning/lane_driving/behavior_planning/behavior_velocity_planner/debug/virtual_traffic_light
+ Value: false
+ - Class: rviz_default_plugins/MarkerArray
+ Enabled: false
+ Name: StopLine
+ Namespaces:
+ {}
+ Topic:
+ Depth: 5
+ Durability Policy: Volatile
+ History Policy: Keep Last
+ Reliability Policy: Reliable
+ Value: /planning/scenario_planning/lane_driving/behavior_planning/behavior_velocity_planner/debug/stop_line
+ Value: false
+ - Class: rviz_default_plugins/MarkerArray
+ Enabled: false
+ Name: DetectionArea
+ Namespaces:
+ {}
+ Topic:
+ Depth: 5
+ Durability Policy: Volatile
+ History Policy: Keep Last
+ Reliability Policy: Reliable
+ Value: /planning/scenario_planning/lane_driving/behavior_planning/behavior_velocity_planner/debug/detection_area
+ Value: false
+ - Class: rviz_default_plugins/MarkerArray
+ Enabled: false
+ Name: OcclusionSpot
+ Namespaces:
+ {}
+ Topic:
+ Depth: 5
+ Durability Policy: Volatile
+ History Policy: Keep Last
+ Reliability Policy: Reliable
+ Value: /planning/scenario_planning/lane_driving/behavior_planning/behavior_velocity_planner/debug/occlusion_spot
+ Value: false
+ - Class: rviz_default_plugins/MarkerArray
+ Enabled: false
+ Name: NoStoppingArea
+ Namespaces:
+ {}
+ Topic:
+ Depth: 5
+ Durability Policy: Volatile
+ History Policy: Keep Last
+ Reliability Policy: Reliable
+ Value: /planning/scenario_planning/lane_driving/behavior_planning/behavior_velocity_planner/debug/no_stopping_area
+ Value: false
+ - Class: rviz_default_plugins/MarkerArray
+ Enabled: false
+ Name: RunOut
+ Namespaces:
+ {}
+ Topic:
+ Depth: 5
+ Durability Policy: Volatile
+ History Policy: Keep Last
+ Reliability Policy: Reliable
+ Value: /planning/scenario_planning/lane_driving/behavior_planning/behavior_velocity_planner/debug/run_out
+ Value: false
+ - Class: rviz_default_plugins/MarkerArray
+ Enabled: false
+ Name: StaticObstacleAvoidance
+ Namespaces:
+ {}
+ Topic:
+ Depth: 5
+ Durability Policy: Volatile
+ History Policy: Keep Last
+ Reliability Policy: Reliable
+ Value: /planning/scenario_planning/lane_driving/behavior_planning/behavior_path_planner/debug/static_obstacle_avoidance
+ Value: false
+ - Class: rviz_default_plugins/MarkerArray
+ Enabled: false
+ Name: LeftLaneChange
+ Namespaces:
+ {}
+ Topic:
+ Depth: 5
+ Durability Policy: Volatile
+ History Policy: Keep Last
+ Reliability Policy: Reliable
+ Value: /planning/scenario_planning/lane_driving/behavior_planning/behavior_path_planner/debug/lane_change_left
+ Value: false
+ - Class: rviz_default_plugins/MarkerArray
+ Enabled: false
+ Name: RightLaneChange
+ Namespaces:
+ {}
+ Topic:
+ Depth: 5
+ Durability Policy: Volatile
+ History Policy: Keep Last
+ Reliability Policy: Reliable
+ Value: /planning/scenario_planning/lane_driving/behavior_planning/behavior_path_planner/debug/lane_change_right
+ Value: false
+ - Class: rviz_default_plugins/MarkerArray
+ Enabled: false
+ Name: LaneFollowing
+ Namespaces:
+ {}
+ Topic:
+ Depth: 5
+ Durability Policy: Volatile
+ History Policy: Keep Last
+ Reliability Policy: Reliable
+ Value: /planning/scenario_planning/lane_driving/behavior_planning/behavior_path_planner/debug/lane_following
+ Value: false
+ - Class: rviz_default_plugins/MarkerArray
+ Enabled: false
+ Name: GoalPlanner
+ Namespaces:
+ {}
+ Topic:
+ Depth: 5
+ Durability Policy: Volatile
+ History Policy: Keep Last
+ Reliability Policy: Reliable
+ Value: /planning/scenario_planning/lane_driving/behavior_planning/behavior_path_planner/debug/goal_planner
+ Value: false
+ - Class: rviz_default_plugins/MarkerArray
+ Enabled: false
+ Name: StartPlanner
+ Namespaces:
+ {}
+ Topic:
+ Depth: 5
+ Durability Policy: Volatile
+ History Policy: Keep Last
+ Reliability Policy: Reliable
+ Value: /planning/scenario_planning/lane_driving/behavior_planning/behavior_path_planner/debug/start_planner
+ Value: false
+ - Class: rviz_default_plugins/MarkerArray
+ Enabled: false
+ Name: SideShift
+ Namespaces:
+ {}
+ Topic:
+ Depth: 5
+ Durability Policy: Volatile
+ History Policy: Keep Last
+ Reliability Policy: Reliable
+ Value: /planning/scenario_planning/lane_driving/behavior_planning/behavior_path_planner/debug/side_shift
+ Value: false
+ - Class: rviz_default_plugins/MarkerArray
+ Enabled: false
+ Name: SpeedBump
+ Namespaces:
+ {}
+ Topic:
+ Depth: 5
+ Durability Policy: Volatile
+ History Policy: Keep Last
+ Reliability Policy: Reliable
+ Value: /planning/scenario_planning/lane_driving/behavior_planning/behavior_velocity_planner/debug/speed_bump
+ Value: false
+ - Class: rviz_default_plugins/MarkerArray
+ Enabled: false
+ Name: DynamicObstacleAvoidance
+ Namespaces:
+ {}
+ Topic:
+ Depth: 5
+ Durability Policy: Volatile
+ History Policy: Keep Last
+ Reliability Policy: Reliable
+ Value: /planning/scenario_planning/lane_driving/behavior_planning/behavior_path_planner/debug/dynamic_obstacle_avoidance
+ Value: false
+ - Class: rviz_default_plugins/MarkerArray
+ Enabled: false
+ Name: NoDrivableLane
+ Namespaces:
+ {}
+ Topic:
+ Depth: 5
+ Durability Policy: Volatile
+ History Policy: Keep Last
+ Reliability Policy: Reliable
+ Value: /planning/scenario_planning/lane_driving/behavior_planning/behavior_velocity_planner/debug/no_drivable_lane
+ Value: false
+ Enabled: false
+ Name: DebugMarker
+ - Class: rviz_common/Group
+ Displays:
+ - Class: rviz_default_plugins/MarkerArray
+ Enabled: false
+ Name: Info (StaticObstacleAvoidance)
+ Namespaces:
+ {}
+ Topic:
+ Depth: 5
+ Durability Policy: Volatile
+ History Policy: Keep Last
+ Reliability Policy: Reliable
+ Value: /planning/scenario_planning/lane_driving/behavior_planning/behavior_path_planner/info/static_obstacle_avoidance
+ Value: false
+ - Class: rviz_default_plugins/MarkerArray
+ Enabled: false
+ Name: Info (AvoidanceByLC)
+ Namespaces:
+ {}
+ Topic:
+ Depth: 5
+ Durability Policy: Volatile
+ History Policy: Keep Last
+ Reliability Policy: Reliable
+ Value: /planning/scenario_planning/lane_driving/behavior_planning/behavior_path_planner/info/avoidance_by_lane_change
+ Value: false
+ - Class: rviz_default_plugins/MarkerArray
+ Enabled: false
+ Name: Info (LaneChangeLeft)
+ Namespaces:
+ {}
+ Topic:
+ Depth: 5
+ Durability Policy: Volatile
+ History Policy: Keep Last
+ Reliability Policy: Reliable
+ Value: /planning/scenario_planning/lane_driving/behavior_planning/behavior_path_planner/info/lane_change_left
+ Value: false
+ - Class: rviz_default_plugins/MarkerArray
+ Enabled: false
+ Name: Info (LaneChangeRight)
+ Namespaces:
+ {}
+ Topic:
+ Depth: 5
+ Durability Policy: Volatile
+ History Policy: Keep Last
+ Reliability Policy: Reliable
+ Value: /planning/scenario_planning/lane_driving/behavior_planning/behavior_path_planner/info/lane_change_right
+ Value: false
+ - Class: rviz_default_plugins/MarkerArray
+ Enabled: false
+ Name: Info (ExtLaneChangeLeft)
+ Namespaces:
+ {}
+ Topic:
+ Depth: 5
+ Durability Policy: Volatile
+ History Policy: Keep Last
+ Reliability Policy: Reliable
+ Value: /planning/scenario_planning/lane_driving/behavior_planning/behavior_path_planner/info/external_request_lane_change_left
+ Value: false
+ - Class: rviz_default_plugins/MarkerArray
+ Enabled: false
+ Name: Info (ExtLaneChangeRight)
+ Namespaces:
+ {}
+ Topic:
+ Depth: 5
+ Durability Policy: Volatile
+ History Policy: Keep Last
+ Reliability Policy: Reliable
+ Value: /planning/scenario_planning/lane_driving/behavior_planning/behavior_path_planner/info/external_request_lane_change_right
+ Value: false
+ - Class: rviz_default_plugins/MarkerArray
+ Enabled: false
+ Name: Info (GoalPlanner)
+ Namespaces:
+ {}
+ Topic:
+ Depth: 5
+ Durability Policy: Volatile
+ History Policy: Keep Last
+ Reliability Policy: Reliable
+ Value: /planning/scenario_planning/lane_driving/behavior_planning/behavior_path_planner/info/goal_planner
+ Value: false
+ - Class: rviz_default_plugins/MarkerArray
+ Enabled: false
+ Name: Info (StartPlanner)
+ Namespaces:
+ {}
+ Topic:
+ Depth: 5
+ Durability Policy: Volatile
+ History Policy: Keep Last
+ Reliability Policy: Reliable
+ Value: /planning/scenario_planning/lane_driving/behavior_planning/behavior_path_planner/info/start_planner
+ Value: false
+ - Class: rviz_default_plugins/MarkerArray
+ Enabled: false
+ Name: Info (DynamicObstacleAvoidance)
+ Namespaces:
+ {}
+ Topic:
+ Depth: 5
+ Durability Policy: Volatile
+ History Policy: Keep Last
+ Reliability Policy: Reliable
+ Value: /planning/scenario_planning/lane_driving/behavior_planning/behavior_path_planner/info/dynamic_obstacle_avoidance
+ Value: false
+ Enabled: false
+ Name: InfoMarker
+ Enabled: true
+ Name: BehaviorPlanning
+ - Class: rviz_common/Group
+ Displays:
+ - Class: rviz_plugins/Trajectory
+ Color Border Vel Max: 3
+ Enabled: false
+ Name: Trajectory
+ Topic:
+ Depth: 5
+ Durability Policy: Volatile
+ Filter size: 10
+ History Policy: Keep Last
+ Reliability Policy: Reliable
+ Value: /planning/scenario_planning/lane_driving/trajectory
+ Value: false
+ View Footprint:
+ Alpha: 1
+ Color: 230; 230; 50
+ Offset from BaseLink: 0
+ Rear Overhang: 1.0299999713897705
+ Value: false
+ Vehicle Length: 4.769999980926514
+ Vehicle Width: 1.8300000429153442
+ View Path:
+ Alpha: 0.9990000128746033
+ Constant Width: false
+ Fade Out Distance: 0
+ Max Velocity Color: 0; 230; 120
+ Mid Velocity Color: 32; 138; 174
+ Min Velocity Color: 63; 46; 227
+ Value: true
+ Width: 2
+ View Point:
+ Alpha: 1
+ Color: 0; 60; 255
+ Offset: 0
+ Radius: 0.10000000149011612
+ Value: false
+ View Text Slope:
+ Scale: 0.30000001192092896
+ Value: false
+ View Text Velocity:
+ Scale: 0.30000001192092896
+ Value: false
+ View Velocity:
+ Alpha: 0.9990000128746033
+ Color: 0; 0; 0
+ Constant Color: false
+ Scale: 0.30000001192092896
+ Value: true
+ - Class: rviz_common/Group
+ Displays:
+ - Class: rviz_default_plugins/MarkerArray
+ Enabled: true
+ Name: VirtualWall (ObstacleStop)
+ Namespaces:
+ {}
+ Topic:
+ Depth: 5
+ Durability Policy: Volatile
+ History Policy: Keep Last
+ Reliability Policy: Reliable
+ Value: /planning/scenario_planning/lane_driving/motion_planning/obstacle_stop_planner/virtual_wall
+ Value: true
+ - Class: rviz_default_plugins/MarkerArray
+ Enabled: true
+ Name: VirtualWall (SurroundObstacle)
+ Namespaces:
+ {}
+ Topic:
+ Depth: 5
+ Durability Policy: Volatile
+ History Policy: Keep Last
+ Reliability Policy: Reliable
+ Value: /planning/scenario_planning/lane_driving/motion_planning/surround_obstacle_checker/virtual_wall
+ Value: true
+ - Class: rviz_default_plugins/MarkerArray
+ Enabled: true
+ Name: VirtualWall (ObstacleAvoidance)
+ Namespaces:
+ {}
+ Topic:
+ Depth: 5
+ Durability Policy: Volatile
+ History Policy: Keep Last
+ Reliability Policy: Reliable
+ Value: /planning/scenario_planning/lane_driving/motion_planning/obstacle_avoidance_planner/virtual_wall
+ Value: true
+ - Class: rviz_default_plugins/MarkerArray
+ Enabled: true
+ Name: VirtualWall (ObstacleCruise)
+ Namespaces:
+ {}
+ Topic:
+ Depth: 5
+ Durability Policy: Volatile
+ History Policy: Keep Last
+ Reliability Policy: Reliable
+ Value: /planning/scenario_planning/lane_driving/motion_planning/obstacle_cruise_planner/virtual_wall
+ Value: true
+ - Class: rviz_default_plugins/MarkerArray
+ Enabled: true
+ Name: VirtualWall (MotionVelocitySmoother)
+ Namespaces:
+ {}
+ Topic:
+ Depth: 5
+ Durability Policy: Volatile
+ History Policy: Keep Last
+ Reliability Policy: Reliable
+ Value: /planning/scenario_planning/velocity_smoother/virtual_wall
+ Value: true
+ - Class: rviz_default_plugins/MarkerArray
+ Enabled: true
+ Name: VirtualWall (OutOfLane)
+ Namespaces:
+ {}
+ Topic:
+ Depth: 5
+ Durability Policy: Volatile
+ History Policy: Keep Last
+ Reliability Policy: Reliable
+ Value: /planning/scenario_planning/lane_driving/motion_planning/motion_velocity_planner/out_of_lane/virtual_walls
+ Value: true
+ - Class: rviz_default_plugins/MarkerArray
+ Enabled: true
+ Name: VirtualWall (ObstacleVelocityLimiter)
+ Namespaces:
+ {}
+ Topic:
+ Depth: 5
+ Durability Policy: Volatile
+ History Policy: Keep Last
+ Reliability Policy: Reliable
+ Value: /planning/scenario_planning/lane_driving/motion_planning/motion_velocity_planner/obstacle_velocity_limiter/virtual_walls
+ Value: true
+ - Class: rviz_default_plugins/MarkerArray
+ Enabled: true
+ Name: VirtualWall (DynamicObstacleStop)
+ Namespaces:
+ {}
+ Topic:
+ Depth: 5
+ Durability Policy: Volatile
+ History Policy: Keep Last
+ Reliability Policy: Reliable
+ Value: /planning/scenario_planning/lane_driving/motion_planning/motion_velocity_planner/dynamic_obstacle_stop/virtual_walls
+ Value: true
+ Enabled: true
+ Name: VirtualWall
+ - Class: rviz_common/Group
+ Displays:
+ - Class: rviz_common/Group
+ Displays:
+ - Class: rviz_default_plugins/MarkerArray
+ Enabled: true
+ Name: SurroundObstacleCheck
+ Namespaces:
+ {}
+ Topic:
+ Depth: 5
+ Durability Policy: Volatile
+ History Policy: Keep Last
+ Reliability Policy: Reliable
+ Value: /planning/scenario_planning/lane_driving/motion_planning/surround_obstacle_checker/debug/marker
+ Value: true
+ - Alpha: 1
+ Class: rviz_default_plugins/Polygon
+ Color: 25; 255; 0
+ Enabled: false
+ Name: Footprint
+ Topic:
+ Depth: 5
+ Durability Policy: Volatile
+ Filter size: 10
+ History Policy: Keep Last
+ Reliability Policy: Reliable
+ Value: /planning/scenario_planning/lane_driving/motion_planning/surround_obstacle_checker/debug/footprint
+ Value: false
+ - Alpha: 1
+ Class: rviz_default_plugins/Polygon
+ Color: 239; 41; 41
+ Enabled: false
+ Name: FootprintOffset
+ Topic:
+ Depth: 5
+ Durability Policy: Volatile
+ Filter size: 10
+ History Policy: Keep Last
+ Reliability Policy: Reliable
+ Value: /planning/scenario_planning/lane_driving/motion_planning/surround_obstacle_checker/debug/footprint_offset
+ Value: false
+ - Alpha: 1
+ Class: rviz_default_plugins/Polygon
+ Color: 10; 21; 255
+ Enabled: false
+ Name: FootprintRecoverOffset
+ Topic:
+ Depth: 5
+ Durability Policy: Volatile
+ Filter size: 10
+ History Policy: Keep Last
+ Reliability Policy: Reliable
+ Value: /planning/scenario_planning/lane_driving/motion_planning/surround_obstacle_checker/debug/footprint_recover_offset
+ Value: false
+ Enabled: false
+ Name: SurroundObstacleChecker
+ - Class: rviz_default_plugins/MarkerArray
+ Enabled: false
+ Name: ObstacleStop
+ Namespaces:
+ {}
+ Topic:
+ Depth: 5
+ Durability Policy: Volatile
+ History Policy: Keep Last
+ Reliability Policy: Reliable
+ Value: /planning/scenario_planning/lane_driving/motion_planning/obstacle_stop_planner/debug/marker
+ Value: false
+ - Class: rviz_common/Group
+ Displays:
+ - Class: rviz_default_plugins/MarkerArray
+ Enabled: true
+ Name: CruiseVirtualWall
+ Namespaces:
+ {}
+ Topic:
+ Depth: 5
+ Durability Policy: Volatile
+ History Policy: Keep Last
+ Reliability Policy: Reliable
+ Value: /planning/scenario_planning/lane_driving/motion_planning/obstacle_cruise_planner/debug/cruise/virtual_wall
+ Value: true
+ - Class: rviz_default_plugins/MarkerArray
+ Enabled: true
+ Name: SlowDownVirtualWall
+ Namespaces:
+ {}
+ Topic:
+ Depth: 5
+ Durability Policy: Volatile
+ History Policy: Keep Last
+ Reliability Policy: Reliable
+ Value: /planning/scenario_planning/lane_driving/motion_planning/obstacle_cruise_planner/debug/slow_down/virtual_wall
+ Value: true
+ - Class: rviz_default_plugins/MarkerArray
+ Enabled: true
+ Name: DebugMarker
+ Namespaces:
+ {}
+ Topic:
+ Depth: 5
+ Durability Policy: Volatile
+ History Policy: Keep Last
+ Reliability Policy: Reliable
+ Value: /planning/scenario_planning/lane_driving/motion_planning/obstacle_cruise_planner/debug/marker
+ Value: true
+ Enabled: false
+ Name: ObstacleCruise
+ - Class: rviz_default_plugins/MarkerArray
+ Enabled: false
+ Name: ObstacleAvoidance
+ Namespaces:
+ {}
+ Topic:
+ Depth: 5
+ Durability Policy: Volatile
+ History Policy: Keep Last
+ Reliability Policy: Reliable
+ Value: /planning/scenario_planning/lane_driving/motion_planning/obstacle_avoidance_planner/debug/marker
+ Value: false
+ - Class: rviz_common/Group
+ Displays:
+ - Class: rviz_default_plugins/MarkerArray
+ Enabled: true
+ Name: OutOfLane
+ Namespaces:
+ {}
+ Topic:
+ Depth: 5
+ Durability Policy: Volatile
+ History Policy: Keep Last
+ Reliability Policy: Reliable
+ Value: /planning/scenario_planning/lane_driving/motion_planning/motion_velocity_planner/out_of_lane/debug_markers
+ Value: true
+ - Class: rviz_default_plugins/MarkerArray
+ Enabled: true
+ Name: ObstacleVelocityLimiter
+ Namespaces:
+ {}
+ Topic:
+ Depth: 5
+ Durability Policy: Volatile
+ History Policy: Keep Last
+ Reliability Policy: Reliable
+ Value: /planning/scenario_planning/lane_driving/motion_planning/motion_velocity_planner/obstacle_velocity_limiter/debug_markers
+ Value: true
+ - Class: rviz_default_plugins/MarkerArray
+ Enabled: true
+ Name: DynamicObstacleStop
+ Namespaces:
+ {}
+ Topic:
+ Depth: 5
+ Durability Policy: Volatile
+ History Policy: Keep Last
+ Reliability Policy: Reliable
+ Value: /planning/scenario_planning/lane_driving/motion_planning/motion_velocity_planner/dynamic_obstacle_stop/debug_markers
+ Value: true
+ Enabled: false
+ Name: MotionVelocityPlanner
+ Enabled: false
+ Name: DebugMarker
+ Enabled: true
+ Name: MotionPlanning
+ Enabled: true
+ Name: LaneDriving
+ - Class: rviz_common/Group
+ Displays:
+ - Alpha: 0.699999988079071
+ Class: rviz_default_plugins/Map
+ Color Scheme: map
+ Draw Behind: false
+ Enabled: false
+ Name: Costmap
+ Topic:
+ Depth: 5
+ Durability Policy: Volatile
+ Filter size: 10
+ History Policy: Keep Last
+ Reliability Policy: Reliable
+ Value: /planning/scenario_planning/parking/costmap_generator/occupancy_grid
+ Update Topic:
+ Depth: 5
+ Durability Policy: Volatile
+ History Policy: Keep Last
+ Reliability Policy: Reliable
+ Value: /planning/scenario_planning/parking/costmap_generator/occupancy_grid_updates
+ Use Timestamp: false
+ Value: false
+ - Alpha: 0.9990000128746033
+ Arrow Length: 0.30000001192092896
+ Axes Length: 0.30000001192092896
+ Axes Radius: 0.009999999776482582
+ Class: rviz_default_plugins/PoseArray
+ Color: 255; 25; 0
+ Enabled: true
+ Head Length: 0.10000000149011612
+ Head Radius: 0.20000000298023224
+ Name: PartialPoseArray
+ Shaft Length: 0.20000000298023224
+ Shaft Radius: 0.05000000074505806
+ Shape: Arrow (3D)
+ Topic:
+ Depth: 5
+ Durability Policy: Volatile
+ Filter size: 10
+ History Policy: Keep Last
+ Reliability Policy: Reliable
+ Value: /planning/scenario_planning/parking/freespace_planner/debug/partial_pose_array
+ Value: true
+ - Alpha: 0.9990000128746033
+ Arrow Length: 0.5
+ Axes Length: 0.30000001192092896
+ Axes Radius: 0.009999999776482582
+ Class: rviz_default_plugins/PoseArray
+ Color: 0; 0; 255
+ Enabled: true
+ Head Length: 0.10000000149011612
+ Head Radius: 0.20000000298023224
+ Name: PoseArray
+ Shaft Length: 0.20000000298023224
+ Shaft Radius: 0.05000000074505806
+ Shape: Arrow (Flat)
+ Topic:
+ Depth: 5
+ Durability Policy: Volatile
+ Filter size: 10
+ History Policy: Keep Last
+ Reliability Policy: Reliable
+ Value: /planning/scenario_planning/parking/freespace_planner/debug/pose_array
+ Value: true
+ Enabled: true
+ Name: Parking
+ - Class: rviz_plugins/PoseWithUuidStamped
+ Enabled: true
+ Length: 1.5
+ Name: ModifiedGoal
+ Radius: 0.5
+ Topic:
+ Depth: 5
+ Durability Policy: Volatile
+ Filter size: 10
+ History Policy: Keep Last
+ Reliability Policy: Reliable
+ Value: /planning/scenario_planning/modified_goal
+ UUID:
+ Scale: 0.30000001192092896
+ Value: false
+ Value: true
+ Enabled: true
+ Name: ScenarioPlanning
+ - Class: rviz_common/Group
+ Displays:
+ - Class: rviz_default_plugins/MarkerArray
+ Enabled: true
+ Name: PlanningErrorMarker
+ Namespaces:
+ {}
+ Topic:
+ Depth: 5
+ Durability Policy: Volatile
+ History Policy: Keep Last
+ Reliability Policy: Best Effort
+ Value: /planning/planning_diagnostics/planning_error_monitor/debug/marker
+ Value: true
+ Enabled: false
+ Name: Diagnostic
+ Enabled: true
+ Name: Planning
+ - Class: rviz_common/Group
+ Displays:
+ - Class: rviz_plugins/Trajectory
+ Color Border Vel Max: 3
+ Enabled: true
+ Name: Predicted Trajectory
+ Topic:
+ Depth: 5
+ Durability Policy: Volatile
+ Filter size: 10
+ History Policy: Keep Last
+ Reliability Policy: Reliable
+ Value: /control/trajectory_follower/controller_node_exe/debug/predicted_trajectory_in_frenet_coordinate
+ Value: true
+ View Footprint:
+ Alpha: 1
+ Color: 230; 230; 50
+ Offset from BaseLink: 0
+ Rear Overhang: 1.0299999713897705
+ Value: false
+ Vehicle Length: 4.769999980926514
+ Vehicle Width: 1.8300000429153442
+ View Path:
+ Alpha: 1
+ Constant Width: true
+ Fade Out Distance: 0
+ Max Velocity Color: 0; 230; 120
+ Mid Velocity Color: 32; 138; 174
+ Min Velocity Color: 63; 46; 227
+ Value: true
+ Width: 0.05000000074505806
+ View Point:
+ Alpha: 1
+ Color: 0; 60; 255
+ Offset: 0
+ Radius: 0.10000000149011612
+ Value: false
+ View Text Slope:
+ Scale: 0.30000001192092896
+ Value: false
+ View Text Velocity:
+ Scale: 0.30000001192092896
+ Value: false
+ View Velocity:
+ Alpha: 1
+ Color: 0; 0; 0
+ Constant Color: false
+ Scale: 0.30000001192092896
+ Value: false
+ - Class: rviz_plugins/Trajectory
+ Color Border Vel Max: 3
+ Enabled: false
+ Name: Resampled Reference Trajectory
+ Topic:
+ Depth: 5
+ Durability Policy: Volatile
+ Filter size: 10
+ History Policy: Keep Last
+ Reliability Policy: Reliable
+ Value: /control/trajectory_follower/controller_node_exe/debug/resampled_reference_trajectory
+ Value: false
+ View Footprint:
+ Alpha: 1
+ Color: 230; 230; 50
+ Offset from BaseLink: 0
+ Rear Overhang: 1.0299999713897705
+ Value: false
+ Vehicle Length: 4.769999980926514
+ Vehicle Width: 1.8300000429153442
+ View Path:
+ Alpha: 1
+ Constant Width: true
+ Fade Out Distance: 0
+ Max Velocity Color: 0; 230; 120
+ Mid Velocity Color: 32; 138; 174
+ Min Velocity Color: 63; 46; 227
+ Value: false
+ Width: 0.20000000298023224
+ View Point:
+ Alpha: 1
+ Color: 0; 60; 255
+ Offset: 0
+ Radius: 0.10000000149011612
+ Value: true
+ View Text Slope:
+ Scale: 0.30000001192092896
+ Value: false
+ View Text Velocity:
+ Scale: 0.30000001192092896
+ Value: false
+ View Velocity:
+ Alpha: 1
+ Color: 0; 0; 0
+ Constant Color: false
+ Scale: 0.30000001192092896
+ Value: false
+ - Class: rviz_common/Group
+ Displays:
+ - Class: rviz_default_plugins/MarkerArray
+ Enabled: true
+ Name: VirtualWall (AEB)
+ Namespaces:
+ {}
+ Topic:
+ Depth: 5
+ Durability Policy: Volatile
+ History Policy: Keep Last
+ Reliability Policy: Reliable
+ Value: /control/autonomous_emergency_braking/virtual_wall
+ Value: true
+ Enabled: true
+ Name: VirtualWall
+ - Class: rviz_default_plugins/Marker
+ Enabled: false
+ Name: Stop Reason
+ Namespaces:
+ {}
+ Topic:
+ Depth: 5
+ Durability Policy: Volatile
+ Filter size: 10
+ History Policy: Keep Last
+ Reliability Policy: Reliable
+ Value: /control/trajectory_follower/longitudinal/stop_reason
+ Value: false
+ - Class: rviz_default_plugins/MarkerArray
+ Enabled: false
+ Name: Debug/MPC
+ Namespaces:
+ {}
+ Topic:
+ Depth: 5
+ Durability Policy: Volatile
+ History Policy: Keep Last
+ Reliability Policy: Reliable
+ Value: /control/trajectory_follower/mpc_follower/debug/markers
+ Value: false
+ - Class: rviz_default_plugins/MarkerArray
+ Enabled: false
+ Name: Debug/PurePursuit
+ Namespaces:
+ {}
+ Topic:
+ Depth: 5
+ Durability Policy: Volatile
+ History Policy: Keep Last
+ Reliability Policy: Reliable
+ Value: /control/trajectory_follower/controller_node_exe/debug/markers
+ Value: false
+ - Class: rviz_default_plugins/MarkerArray
+ Enabled: false
+ Name: Debug/AEB
+ Namespaces:
+ {}
+ Topic:
+ Depth: 5
+ Durability Policy: Volatile
+ History Policy: Keep Last
+ Reliability Policy: Reliable
+ Value: /control/autonomous_emergency_braking/debug/markers
+ Value: false
+ Enabled: true
+ Name: Control
+ - Class: rviz_common/Group
+ Displays:
+ - Class: rviz_common/Group
+ Displays: ~
+ Enabled: true
+ Name: Map
+ - Class: rviz_common/Group
+ Displays:
+ - Class: rviz_default_plugins/Camera
+ Enabled: true
+ Far Plane Distance: 100
+ Image Rendering: background and overlay
+ Name: PointcloudOnCamera
+ Overlay Alpha: 0.5
+ Topic:
+ Depth: 5
+ Durability Policy: Volatile
+ History Policy: Keep Last
+ Reliability Policy: Best Effort
+ Value: /sensing/camera/camera6/image_raw
+ Value: true
+ Visibility:
+ Control:
+ Debug/AEB: true
+ Debug/MPC: true
+ Debug/PurePursuit: true
+ Predicted Trajectory: true
+ Resampled Reference Trajectory: true
+ Stop Reason: true
+ Value: false
+ VirtualWall:
+ Value: true
+ VirtualWall (AEB): true
+ Debug:
+ Control: true
+ Localization:
+ "": true
+ Value: true
+ Map: true
+ Perception:
+ "": true
+ Value: true
+ Planning:
+ "":
+ "": true
+ Value: true
+ Value: true
+ Sensing:
+ ConcatenatePointCloud: true
+ RadarRawObjects(white): true
+ Value: true
+ Value: true
+ Localization:
+ EKF:
+ PoseHistory: true
+ Value: true
+ NDT:
+ Aligned: true
+ Initial: true
+ MonteCarloInitialPose: true
+ PoseHistory: true
+ PoseWithCovAligned: true
+ PoseWithCovInitial: true
+ Value: true
+ Value: false
+ Map:
+ Lanelet2VectorMap: true
+ PointCloudMap: true
+ Value: false
+ Perception:
+ ObjectRecognition:
+ Detection:
+ DetectedObjects: true
+ Value: true
+ Prediction:
+ Maneuver: true
+ PredictedObjects: true
+ Value: true
+ Tracking:
+ TrackedObjects: true
+ Value: true
+ Value: true
+ OccupancyGrid:
+ Map: true
+ Value: true
+ Segmentation:
+ NoGroundPointCloud: true
+ Value: true
+ TrafficLight:
+ MapBasedDetectionResult: true
+ RecognitionResultOnImage: true
+ Value: true
+ Value: false
+ Planning:
+ Diagnostic:
+ PlanningErrorMarker: true
+ Value: true
+ MissionPlanning:
+ GoalPose: true
+ MissionDetailsDisplay: true
+ RouteArea: true
+ Value: true
+ ScenarioPlanning:
+ LaneDriving:
+ BehaviorPlanning:
+ (old)PathChangeCandidate_LaneChange: true
+ Bound: true
+ DebugMarker:
+ Arrow: true
+ Blind Spot: true
+ Crosswalk: true
+ DetectionArea: true
+ DynamicObstacleAvoidance: true
+ GoalPlanner: true
+ Intersection: true
+ LaneFollowing: true
+ LeftLaneChange: true
+ NoDrivableLane: true
+ NoStoppingArea: true
+ OcclusionSpot: true
+ RightLaneChange: true
+ RunOut: true
+ SideShift: true
+ SpeedBump: true
+ StartPlanner: true
+ StaticObstacleAvoidance: true
+ StopLine: true
+ TrafficLight: true
+ Value: true
+ VirtualTrafficLight: true
+ InfoMarker:
+ Info (AvoidanceByLC): true
+ Info (DynamicObstacleAvoidance): true
+ Info (ExtLaneChangeLeft): true
+ Info (ExtLaneChangeRight): true
+ Info (GoalPlanner): true
+ Info (LaneChangeLeft): true
+ Info (LaneChangeRight): true
+ Info (StartPlanner): true
+ Info (StaticObstacleAvoidance): true
+ Value: true
+ Path: true
+ PathChangeCandidate_Avoidance: true
+ PathChangeCandidate_AvoidanceByLC: true
+ PathChangeCandidate_ExternalRequestLaneChangeLeft: true
+ PathChangeCandidate_ExternalRequestLaneChangeRight: true
+ PathChangeCandidate_GoalPlanner: true
+ PathChangeCandidate_LaneChangeLeft: true
+ PathChangeCandidate_LaneChangeRight: true
+ PathChangeCandidate_StartPlanner: true
+ PathReference_Avoidance: true
+ PathReference_AvoidanceByLC: true
+ PathReference_GoalPlanner: true
+ PathReference_LaneChangeLeft: true
+ PathReference_LaneChangeRight: true
+ PathReference_StartPlanner: true
+ Value: true
+ VirtualWall:
+ Value: true
+ VirtualWall (AvoidanceByLC): true
+ VirtualWall (BlindSpot): true
+ VirtualWall (Crosswalk): true
+ VirtualWall (DetectionArea): true
+ VirtualWall (ExtLaneChangeLeft): true
+ VirtualWall (ExtLaneChangeRight): true
+ VirtualWall (GoalPlanner): true
+ VirtualWall (Intersection): true
+ VirtualWall (LaneChangeLeft): true
+ VirtualWall (LaneChangeRight): true
+ VirtualWall (MergeFromPrivateArea): true
+ VirtualWall (NoDrivableLane): true
+ VirtualWall (NoStoppingArea): true
+ VirtualWall (OcclusionSpot): true
+ VirtualWall (RunOut): true
+ VirtualWall (SpeedBump): true
+ VirtualWall (StartPlanner): true
+ VirtualWall (StaticObstacleAvoidance): true
+ VirtualWall (StopLine): true
+ VirtualWall (TrafficLight): true
+ VirtualWall (VirtualTrafficLight): true
+ VirtualWall (Walkway): true
+ MotionPlanning:
+ DebugMarker:
+ MotionVelocityPlanner:
+ DynamicObstacleStop: true
+ ObstacleVelocityLimiter: true
+ OutOfLane: true
+ Value: true
+ ObstacleAvoidance: true
+ ObstacleCruise:
+ CruiseVirtualWall: true
+ DebugMarker: true
+ SlowDownVirtualWall: true
+ Value: true
+ ObstacleStop: true
+ SurroundObstacleChecker:
+ Footprint: true
+ FootprintOffset: true
+ FootprintRecoverOffset: true
+ SurroundObstacleCheck: true
+ Value: true
+ Value: true
+ Trajectory: true
+ Value: true
+ VirtualWall:
+ Value: true
+ VirtualWall (DynamicObstacleStop): true
+ VirtualWall (MotionVelocitySmoother): true
+ VirtualWall (ObstacleAvoidance): true
+ VirtualWall (ObstacleCruise): true
+ VirtualWall (ObstacleStop): true
+ VirtualWall (ObstacleVelocityLimiter): true
+ VirtualWall (OutOfLane): true
+ VirtualWall (SurroundObstacle): true
+ Value: true
+ ModifiedGoal: true
+ Parking:
+ Costmap: true
+ PartialPoseArray: true
+ PoseArray: true
+ Value: true
+ ScenarioTrajectory: true
+ Value: true
+ Value: false
+ Sensing:
+ GNSS:
+ PoseWithCovariance: true
+ Value: true
+ LiDAR:
+ ConcatenatePointCloud: true
+ MeasurementRange: true
+ Value: true
+ Value: true
+ System:
+ Grid: true
+ MRM Summary: true
+ TF: true
+ Value: false
+ Vehicle:
+ PolarGridDisplay: true
+ SignalDisplay: true
+ Value: true
+ VehicleModel: true
+ Value: true
+ Zoom Factor: 1
+ - Alpha: 1
+ Autocompute Intensity Bounds: true
+ Autocompute Value Bounds:
+ Max Value: 5
+ Min Value: -1
+ Value: false
+ Axis: Z
+ Channel Name: intensity
+ Class: rviz_default_plugins/PointCloud2
+ Color: 255; 255; 255
+ Color Transformer: AxisColor
+ Decay Time: 0
+ Enabled: true
+ Invert Rainbow: false
+ Max Color: 255; 255; 255
+ Max Intensity: 4096
+ Min Color: 0; 0; 0
+ Min Intensity: 0
+ Name: ConcatenatePointCloud
+ Position Transformer: XYZ
+ Selectable: false
+ Size (Pixels): 3
+ Size (m): 0.019999999552965164
+ Style: Points
+ Topic:
+ Depth: 5
+ Durability Policy: Volatile
+ Filter size: 10
+ History Policy: Keep Last
+ Reliability Policy: Best Effort
+ Value: /sensing/lidar/concatenated/pointcloud
+ Use Fixed Frame: false
+ Use rainbow: true
+ Value: true
+ - BUS:
+ Alpha: 0.5
+ Color: 255; 255; 255
+ CAR:
+ Alpha: 0.5
+ Color: 255; 255; 255
+ CYCLIST:
+ Alpha: 0.5
+ Color: 255; 255; 255
+ Class: autoware_perception_rviz_plugin/DetectedObjects
+ Confidence Interval: 95%
+ Display Acceleration: true
+ Display Existence Probability: false
+ Display Label: true
+ Display Pose Covariance: true
+ Display Predicted Path Confidence: true
+ Display Predicted Paths: true
+ Display Twist: true
+ Display Twist Covariance: false
+ Display UUID: true
+ Display Velocity: true
+ Display Yaw Covariance: false
+ Display Yaw Rate: false
+ Display Yaw Rate Covariance: false
+ Enabled: true
+ Line Width: 0.029999999329447746
+ MOTORCYCLE:
+ Alpha: 0.5
+ Color: 255; 255; 255
+ Name: RadarRawObjects(white)
+ Namespaces:
+ {}
+ Object Fill Type: skeleton
+ PEDESTRIAN:
+ Alpha: 0.5
+ Color: 255; 255; 255
+ Polygon Type: 3d
+ TRAILER:
+ Alpha: 0.5
+ Color: 255; 255; 255
+ TRUCK:
+ Alpha: 0.5
+ Color: 255; 255; 255
+ Topic:
+ Depth: 5
+ Durability Policy: Volatile
+ History Policy: Keep Last
+ Reliability Policy: Best Effort
+ Value: /sensing/radar/detected_objects
+ UNKNOWN:
+ Alpha: 0.5
+ Color: 255; 255; 255
+ Value: true
+ Visualization Type: Normal
+ Enabled: false
+ Name: Sensing
+ - Class: rviz_common/Group
+ Displays:
+ - Alpha: 0.9990000128746033
+ Autocompute Intensity Bounds: true
+ Autocompute Value Bounds:
+ Max Value: 10
+ Min Value: -10
+ Value: true
+ Axis: Z
+ Channel Name: intensity
+ Class: rviz_default_plugins/PointCloud2
+ Color: 85; 255; 0
+ Color Transformer: FlatColor
+ Decay Time: 0
+ Enabled: true
+ Invert Rainbow: false
+ Max Color: 85; 255; 127
+ Max Intensity: 0
+ Min Color: 0; 0; 0
+ Min Intensity: 0
+ Name: NDT pointclouds
+ Position Transformer: XYZ
+ Selectable: false
+ Size (Pixels): 10
+ Size (m): 0.5
+ Style: Squares
+ Topic:
+ Depth: 5
+ Durability Policy: Volatile
+ Filter size: 10
+ History Policy: Keep Last
+ Reliability Policy: Reliable
+ Value: /localization/pose_estimator/points_aligned
+ Use Fixed Frame: true
+ Use rainbow: true
+ Value: true
+ - Alpha: 1
+ Autocompute Intensity Bounds: true
+ Autocompute Value Bounds:
+ Max Value: 10
+ Min Value: -10
+ Value: true
+ Axis: Z
+ Channel Name: intensity
+ Class: rviz_default_plugins/PointCloud2
+ Color: 255; 255; 255
+ Color Transformer: ""
+ Decay Time: 0
+ Enabled: true
+ Invert Rainbow: false
+ Max Color: 255; 255; 255
+ Max Intensity: 4096
+ Min Color: 0; 0; 0
+ Min Intensity: 0
+ Name: NDTLoadedPCDMap
+ Position Transformer: ""
+ Selectable: true
+ Size (Pixels): 3
+ Size (m): 0.10000000149011612
+ Style: Flat Squares
+ Topic:
+ Depth: 5
+ Durability Policy: Volatile
+ Filter size: 10
+ History Policy: Keep Last
+ Reliability Policy: Reliable
+ Value: /localization/pose_estimator/debug/loaded_pointcloud_map
+ Use Fixed Frame: true
+ Use rainbow: true
+ Value: true
+ - Buffer Size: 200
+ Class: rviz_plugins::PoseHistory
+ Enabled: true
+ Line:
+ Alpha: 0.9990000128746033
+ Color: 170; 255; 127
+ Value: true
+ Width: 0.10000000149011612
+ Name: NDTPoseHistory
+ Topic:
+ Depth: 5
+ Durability Policy: Volatile
+ Filter size: 10
+ History Policy: Keep Last
+ Reliability Policy: Reliable
+ Value: /localization/pose_estimator/pose
+ Value: true
+ - Buffer Size: 1000
+ Class: rviz_plugins::PoseHistory
+ Enabled: true
+ Line:
+ Alpha: 0.9990000128746033
+ Color: 0; 255; 255
+ Value: true
+ Width: 0.10000000149011612
+ Name: EKFPoseHistory
+ Topic:
+ Depth: 5
+ Durability Policy: Volatile
+ Filter size: 10
+ History Policy: Keep Last
+ Reliability Policy: Reliable
+ Value: /localization/pose_twist_fusion_filter/pose
+ Value: true
+ Enabled: true
+ Name: Localization
+ - Class: rviz_common/Group
+ Displays:
+ - BUS:
+ Alpha: 0.9990000128746033
+ Color: 255; 138; 128
+ CAR:
+ Alpha: 0.9990000128746033
+ Color: 255; 138; 128
+ CYCLIST:
+ Alpha: 0.9990000128746033
+ Color: 255; 138; 128
+ Class: autoware_perception_rviz_plugin/DetectedObjects
+ Confidence Interval: 95%
+ Display Acceleration: true
+ Display Existence Probability: false
+ Display Label: true
+ Display Pose Covariance: true
+ Display Predicted Path Confidence: true
+ Display Predicted Paths: true
+ Display Twist: true
+ Display Twist Covariance: false
+ Display UUID: true
+ Display Velocity: true
+ Display Yaw Covariance: false
+ Display Yaw Rate: false
+ Display Yaw Rate Covariance: false
+ Enabled: true
+ Line Width: 0.10000000149011612
+ MOTORCYCLE:
+ Alpha: 0.9990000128746033
+ Color: 255; 138; 128
+ Name: Centerpoint(red1)
+ Namespaces:
+ {}
+ Object Fill Type: skeleton
+ PEDESTRIAN:
+ Alpha: 0.9990000128746033
+ Color: 255; 138; 128
+ Polygon Type: 3d
+ TRAILER:
+ Alpha: 0.9990000128746033
+ Color: 255; 138; 128
+ TRUCK:
+ Alpha: 0.9990000128746033
+ Color: 255; 138; 128
+ Topic:
+ Depth: 5
+ Durability Policy: Volatile
+ History Policy: Keep Last
+ Reliability Policy: Best Effort
+ Value: /perception/object_recognition/detection/centerpoint/objects
+ UNKNOWN:
+ Alpha: 0.9990000128746033
+ Color: 255; 138; 128
+ Value: true
+ Visualization Type: Normal
+ - BUS:
+ Alpha: 0.9990000128746033
+ Color: 255; 82; 82
+ CAR:
+ Alpha: 0.9990000128746033
+ Color: 255; 82; 82
+ CYCLIST:
+ Alpha: 0.9990000128746033
+ Color: 255; 82; 82
+ Class: autoware_perception_rviz_plugin/DetectedObjects
+ Confidence Interval: 95%
+ Display Acceleration: true
+ Display Existence Probability: false
+ Display Label: true
+ Display Pose Covariance: true
+ Display Predicted Path Confidence: true
+ Display Predicted Paths: true
+ Display Twist: true
+ Display Twist Covariance: false
+ Display UUID: true
+ Display Velocity: true
+ Display Yaw Covariance: false
+ Display Yaw Rate: false
+ Display Yaw Rate Covariance: false
+ Enabled: true
+ Line Width: 0.10000000149011612
+ MOTORCYCLE:
+ Alpha: 0.9990000128746033
+ Color: 255; 82; 82
+ Name: CenterpointROIFusion(red2)
+ Namespaces:
+ {}
+ Object Fill Type: skeleton
+ PEDESTRIAN:
+ Alpha: 0.9990000128746033
+ Color: 255; 82; 82
+ Polygon Type: 3d
+ TRAILER:
+ Alpha: 0.9990000128746033
+ Color: 255; 82; 82
+ TRUCK:
+ Alpha: 0.9990000128746033
+ Color: 255; 82; 82
+ Topic:
+ Depth: 5
+ Durability Policy: Volatile
+ History Policy: Keep Last
+ Reliability Policy: Best Effort
+ Value: /perception/object_recognition/detection/centerpoint/roi_fusion/objects
+ UNKNOWN:
+ Alpha: 0.9990000128746033
+ Color: 255; 82; 82
+ Value: true
+ Visualization Type: Normal
+ - BUS:
+ Alpha: 0.9990000128746033
+ Color: 213; 0; 0
+ CAR:
+ Alpha: 0.9990000128746033
+ Color: 213; 0; 0
+ CYCLIST:
+ Alpha: 0.9990000128746033
+ Color: 213; 0; 0
+ Class: autoware_perception_rviz_plugin/DetectedObjects
+ Confidence Interval: 95%
+ Display Acceleration: true
+ Display Existence Probability: false
+ Display Label: true
+ Display Pose Covariance: true
+ Display Predicted Path Confidence: true
+ Display Predicted Paths: true
+ Display Twist: true
+ Display Twist Covariance: false
+ Display UUID: true
+ Display Velocity: true
+ Display Yaw Covariance: false
+ Display Yaw Rate: false
+ Display Yaw Rate Covariance: false
+ Enabled: true
+ Line Width: 0.10000000149011612
+ MOTORCYCLE:
+ Alpha: 0.9990000128746033
+ Color: 213; 0; 0
+ Name: CenterpointValidator(red3)
+ Namespaces:
+ {}
+ Object Fill Type: skeleton
+ PEDESTRIAN:
+ Alpha: 0.9990000128746033
+ Color: 213; 0; 0
+ Polygon Type: 3d
+ TRAILER:
+ Alpha: 0.9990000128746033
+ Color: 213; 0; 0
+ TRUCK:
+ Alpha: 0.9990000128746033
+ Color: 213; 0; 0
+ Topic:
+ Depth: 5
+ Durability Policy: Volatile
+ History Policy: Keep Last
+ Reliability Policy: Best Effort
+ Value: /perception/object_recognition/detection/centerpoint/validation/objects
+ UNKNOWN:
+ Alpha: 0.9990000128746033
+ Color: 213; 0; 0
+ Value: true
+ Visualization Type: Normal
+ - BUS:
+ Alpha: 0.9990000128746033
+ Color: 178; 255; 89
+ CAR:
+ Alpha: 0.9990000128746033
+ Color: 178; 255; 89
+ CYCLIST:
+ Alpha: 0.9990000128746033
+ Color: 178; 255; 89
+ Class: autoware_perception_rviz_plugin/DetectedObjects
+ Confidence Interval: 95%
+ Display Acceleration: true
+ Display Existence Probability: false
+ Display Label: true
+ Display Pose Covariance: true
+ Display Predicted Path Confidence: true
+ Display Predicted Paths: true
+ Display Twist: true
+ Display Twist Covariance: false
+ Display UUID: true
+ Display Velocity: true
+ Display Yaw Covariance: false
+ Display Yaw Rate: false
+ Display Yaw Rate Covariance: false
+ Enabled: true
+ Line Width: 0.10000000149011612
+ MOTORCYCLE:
+ Alpha: 0.9990000128746033
+ Color: 178; 255; 89
+ Name: PointPainting(light_green1)
+ Namespaces:
+ {}
+ Object Fill Type: skeleton
+ PEDESTRIAN:
+ Alpha: 0.9990000128746033
+ Color: 178; 255; 89
+ Polygon Type: 3d
+ TRAILER:
+ Alpha: 0.9990000128746033
+ Color: 178; 255; 89
+ TRUCK:
+ Alpha: 0.9990000128746033
+ Color: 178; 255; 89
+ Topic:
+ Depth: 5
+ Durability Policy: Volatile
+ History Policy: Keep Last
+ Reliability Policy: Best Effort
+ Value: /perception/object_recognition/detection/pointpainting/objects
+ UNKNOWN:
+ Alpha: 0.9990000128746033
+ Color: 178; 255; 89
+ Value: true
+ Visualization Type: Normal
+ - BUS:
+ Alpha: 0.9990000128746033
+ Color: 118; 255; 3
+ CAR:
+ Alpha: 0.9990000128746033
+ Color: 118; 255; 3
+ CYCLIST:
+ Alpha: 0.9990000128746033
+ Color: 118; 255; 3
+ Class: autoware_perception_rviz_plugin/DetectedObjects
+ Confidence Interval: 95%
+ Display Acceleration: true
+ Display Existence Probability: false
+ Display Label: true
+ Display Pose Covariance: true
+ Display Predicted Path Confidence: true
+ Display Predicted Paths: true
+ Display Twist: true
+ Display Twist Covariance: false
+ Display UUID: true
+ Display Velocity: true
+ Display Yaw Covariance: false
+ Display Yaw Rate: false
+ Display Yaw Rate Covariance: false
+ Enabled: true
+ Line Width: 0.10000000149011612
+ MOTORCYCLE:
+ Alpha: 0.9990000128746033
+ Color: 118; 255; 3
+ Name: PointPaintingROIFusion(light_green2)
+ Namespaces:
+ {}
+ Object Fill Type: skeleton
+ PEDESTRIAN:
+ Alpha: 0.9990000128746033
+ Color: 118; 255; 3
+ Polygon Type: 3d
+ TRAILER:
+ Alpha: 0.9990000128746033
+ Color: 118; 255; 3
+ TRUCK:
+ Alpha: 0.9990000128746033
+ Color: 118; 255; 3
+ Topic:
+ Depth: 5
+ Durability Policy: Volatile
+ History Policy: Keep Last
+ Reliability Policy: Best Effort
+ Value: /perception/object_recognition/detection/pointpainting/roi_fusion/objects
+ UNKNOWN:
+ Alpha: 0.9990000128746033
+ Color: 118; 255; 3
+ Value: true
+ Visualization Type: Normal
+ - BUS:
+ Alpha: 0.9990000128746033
+ Color: 100; 221; 23
+ CAR:
+ Alpha: 0.9990000128746033
+ Color: 100; 221; 23
+ CYCLIST:
+ Alpha: 0.9990000128746033
+ Color: 100; 221; 23
+ Class: autoware_perception_rviz_plugin/DetectedObjects
+ Confidence Interval: 95%
+ Display Acceleration: true
+ Display Existence Probability: false
+ Display Label: true
+ Display Pose Covariance: true
+ Display Predicted Path Confidence: true
+ Display Predicted Paths: true
+ Display Twist: true
+ Display Twist Covariance: false
+ Display UUID: true
+ Display Velocity: true
+ Display Yaw Covariance: false
+ Display Yaw Rate: false
+ Display Yaw Rate Covariance: false
+ Enabled: true
+ Line Width: 0.10000000149011612
+ MOTORCYCLE:
+ Alpha: 0.9990000128746033
+ Color: 100; 221; 23
+ Name: PointPaintingValidator(light_green3)
+ Namespaces:
+ {}
+ Object Fill Type: skeleton
+ PEDESTRIAN:
+ Alpha: 0.9990000128746033
+ Color: 100; 221; 23
+ Polygon Type: 3d
+ TRAILER:
+ Alpha: 0.9990000128746033
+ Color: 100; 221; 23
+ TRUCK:
+ Alpha: 0.9990000128746033
+ Color: 100; 221; 23
+ Topic:
+ Depth: 5
+ Durability Policy: Volatile
+ History Policy: Keep Last
+ Reliability Policy: Best Effort
+ Value: /perception/object_recognition/detection/pointpainting/validation/objects
+ UNKNOWN:
+ Alpha: 0.9990000128746033
+ Color: 100; 221; 23
+ Value: true
+ Visualization Type: Normal
+ - BUS:
+ Alpha: 0.9990000128746033
+ Color: 255; 145; 0
+ CAR:
+ Alpha: 0.9990000128746033
+ Color: 255; 145; 0
+ CYCLIST:
+ Alpha: 0.9990000128746033
+ Color: 255; 145; 0
+ Class: autoware_perception_rviz_plugin/DetectedObjects
+ Confidence Interval: 95%
+ Display Acceleration: true
+ Display Existence Probability: false
+ Display Label: true
+ Display Pose Covariance: true
+ Display Predicted Path Confidence: true
+ Display Predicted Paths: true
+ Display Twist: true
+ Display Twist Covariance: false
+ Display UUID: true
+ Display Velocity: true
+ Display Yaw Covariance: false
+ Display Yaw Rate: false
+ Display Yaw Rate Covariance: false
+ Enabled: true
+ Line Width: 0.10000000149011612
+ MOTORCYCLE:
+ Alpha: 0.9990000128746033
+ Color: 255; 145; 0
+ Name: DetectionByTracker(orange)
+ Namespaces:
+ {}
+ Object Fill Type: skeleton
+ PEDESTRIAN:
+ Alpha: 0.9990000128746033
+ Color: 255; 145; 0
+ Polygon Type: 3d
+ TRAILER:
+ Alpha: 0.9990000128746033
+ Color: 255; 145; 0
+ TRUCK:
+ Alpha: 0.9990000128746033
+ Color: 255; 145; 0
+ Topic:
+ Depth: 5
+ Durability Policy: Volatile
+ History Policy: Keep Last
+ Reliability Policy: Best Effort
+ Value: /perception/object_recognition/detection/detection_by_tracker/objects
+ UNKNOWN:
+ Alpha: 0.9990000128746033
+ Color: 255; 145; 0
+ Value: true
+ Visualization Type: Normal
+ - BUS:
+ Alpha: 0.9990000128746033
+ Color: 213; 0; 249
+ CAR:
+ Alpha: 0.9990000128746033
+ Color: 213; 0; 249
+ CYCLIST:
+ Alpha: 0.9990000128746033
+ Color: 213; 0; 249
+ Class: autoware_perception_rviz_plugin/DetectedObjects
+ Confidence Interval: 95%
+ Display Acceleration: true
+ Display Existence Probability: false
+ Display Label: true
+ Display Pose Covariance: true
+ Display Predicted Path Confidence: true
+ Display Predicted Paths: true
+ Display Twist: true
+ Display Twist Covariance: false
+ Display UUID: true
+ Display Velocity: true
+ Display Yaw Covariance: false
+ Display Yaw Rate: false
+ Display Yaw Rate Covariance: false
+ Enabled: true
+ Line Width: 0.10000000149011612
+ MOTORCYCLE:
+ Alpha: 0.9990000128746033
+ Color: 213; 0; 249
+ Name: CameraLidarFusion(purple)
+ Namespaces:
+ {}
+ Object Fill Type: skeleton
+ PEDESTRIAN:
+ Alpha: 0.9990000128746033
+ Color: 213; 0; 249
+ Polygon Type: 3d
+ TRAILER:
+ Alpha: 0.9990000128746033
+ Color: 213; 0; 249
+ TRUCK:
+ Alpha: 0.9990000128746033
+ Color: 213; 0; 249
+ Topic:
+ Depth: 5
+ Durability Policy: Volatile
+ History Policy: Keep Last
+ Reliability Policy: Best Effort
+ Value: /perception/object_recognition/detection/clustering/camera_lidar_fusion/objects
+ UNKNOWN:
+ Alpha: 0.9990000128746033
+ Color: 213; 0; 249
+ Value: true
+ Visualization Type: Normal
+ - BUS:
+ Alpha: 0.9990000128746033
+ Color: 255; 255; 255
+ CAR:
+ Alpha: 0.9990000128746033
+ Color: 255; 255; 255
+ CYCLIST:
+ Alpha: 0.9990000128746033
+ Color: 255; 255; 255
+ Class: autoware_perception_rviz_plugin/DetectedObjects
+ Confidence Interval: 95%
+ Display Acceleration: true
+ Display Existence Probability: false
+ Display Label: true
+ Display Pose Covariance: true
+ Display Predicted Path Confidence: true
+ Display Predicted Paths: true
+ Display Twist: true
+ Display Twist Covariance: false
+ Display UUID: true
+ Display Velocity: true
+ Display Yaw Covariance: false
+ Display Yaw Rate: false
+ Display Yaw Rate Covariance: false
+ Enabled: true
+ Line Width: 0.10000000149011612
+ MOTORCYCLE:
+ Alpha: 0.9990000128746033
+ Color: 255; 255; 255
+ Name: RadarFarObjects(white)
+ Namespaces:
+ {}
+ Object Fill Type: skeleton
+ PEDESTRIAN:
+ Alpha: 0.9990000128746033
+ Color: 255; 255; 255
+ Polygon Type: 3d
+ TRAILER:
+ Alpha: 0.9990000128746033
+ Color: 255; 255; 255
+ TRUCK:
+ Alpha: 0.9990000128746033
+ Color: 255; 255; 255
+ Topic:
+ Depth: 5
+ Durability Policy: Volatile
+ History Policy: Keep Last
+ Reliability Policy: Best Effort
+ Value: /perception/object_recognition/detection/radar/far_objects
+ UNKNOWN:
+ Alpha: 0.9990000128746033
+ Color: 255; 255; 255
+ Value: true
+ Visualization Type: Normal
+ - BUS:
+ Alpha: 0.9990000128746033
+ Color: 255; 234; 0
+ CAR:
+ Alpha: 0.9990000128746033
+ Color: 255; 234; 0
+ CYCLIST:
+ Alpha: 0.9990000128746033
+ Color: 255; 234; 0
+ Class: autoware_perception_rviz_plugin/DetectedObjects
+ Confidence Interval: 95%
+ Display Acceleration: true
+ Display Existence Probability: false
+ Display Label: true
+ Display Pose Covariance: true
+ Display Predicted Path Confidence: true
+ Display Predicted Paths: true
+ Display Twist: true
+ Display Twist Covariance: false
+ Display UUID: true
+ Display Velocity: true
+ Display Yaw Covariance: false
+ Display Yaw Rate: false
+ Display Yaw Rate Covariance: false
+ Enabled: true
+ Line Width: 0.10000000149011612
+ MOTORCYCLE:
+ Alpha: 0.9990000128746033
+ Color: 255; 234; 0
+ Name: Detection(yellow)
+ Namespaces:
+ {}
+ Object Fill Type: skeleton
+ PEDESTRIAN:
+ Alpha: 0.9990000128746033
+ Color: 255; 234; 0
+ Polygon Type: 3d
+ TRAILER:
+ Alpha: 0.9990000128746033
+ Color: 255; 234; 0
+ TRUCK:
+ Alpha: 0.9990000128746033
+ Color: 255; 234; 0
+ Topic:
+ Depth: 5
+ Durability Policy: Volatile
+ History Policy: Keep Last
+ Reliability Policy: Best Effort
+ Value: /perception/object_recognition/detection/objects
+ UNKNOWN:
+ Alpha: 0.9990000128746033
+ Color: 255; 234; 0
+ Value: true
+ Visualization Type: Normal
+ - BUS:
+ Alpha: 0.9990000128746033
+ Color: 0; 230; 118
+ CAR:
+ Alpha: 0.9990000128746033
+ Color: 0; 230; 118
+ CYCLIST:
+ Alpha: 0.9990000128746033
+ Color: 0; 230; 118
+ Class: autoware_perception_rviz_plugin/TrackedObjects
+ Confidence Interval: 95%
+ Display Acceleration: true
+ Display Existence Probability: false
+ Display Label: true
+ Display Pose Covariance: true
+ Display Predicted Path Confidence: true
+ Display Predicted Paths: true
+ Display Twist: true
+ Display Twist Covariance: false
+ Display UUID: true
+ Display Velocity: true
+ Display Yaw Covariance: false
+ Display Yaw Rate: false
+ Display Yaw Rate Covariance: false
+ Dynamic Status: All
+ Enabled: true
+ Line Width: 0.10000000149011612
+ MOTORCYCLE:
+ Alpha: 0.9990000128746033
+ Color: 0; 230; 118
+ Name: Tracking(green)
+ Namespaces:
+ {}
+ Object Fill Type: skeleton
+ PEDESTRIAN:
+ Alpha: 0.9990000128746033
+ Color: 0; 230; 118
+ Polygon Type: 3d
+ TRAILER:
+ Alpha: 0.9990000128746033
+ Color: 0; 230; 118
+ TRUCK:
+ Alpha: 0.9990000128746033
+ Color: 0; 230; 118
+ Topic:
+ Depth: 5
+ Durability Policy: Volatile
+ History Policy: Keep Last
+ Reliability Policy: Best Effort
+ Value: /perception/object_recognition/tracking/objects
+ UNKNOWN:
+ Alpha: 0.9990000128746033
+ Color: 0; 230; 118
+ Value: true
+ Visualization Type: Normal
+ - BUS:
+ Alpha: 0.9990000128746033
+ Color: 0; 176; 255
+ CAR:
+ Alpha: 0.9990000128746033
+ Color: 0; 176; 255
+ CYCLIST:
+ Alpha: 0.9990000128746033
+ Color: 0; 176; 255
+ Class: autoware_perception_rviz_plugin/PredictedObjects
+ Confidence Interval: 95%
+ Display Acceleration: true
+ Display Existence Probability: false
+ Display Label: true
+ Display Pose Covariance: true
+ Display Predicted Path Confidence: true
+ Display Predicted Paths: true
+ Display Twist: true
+ Display Twist Covariance: false
+ Display UUID: true
+ Display Velocity: true
+ Display Yaw Covariance: false
+ Display Yaw Rate: false
+ Display Yaw Rate Covariance: false
+ Enabled: true
+ Line Width: 0.10000000149011612
+ MOTORCYCLE:
+ Alpha: 0.9990000128746033
+ Color: 0; 176; 255
+ Name: Prediction(light_blue)
+ Namespaces:
+ {}
+ Object Fill Type: skeleton
+ PEDESTRIAN:
+ Alpha: 0.9990000128746033
+ Color: 0; 176; 255
+ Polygon Type: 3d
+ TRAILER:
+ Alpha: 0.9990000128746033
+ Color: 0; 176; 255
+ TRUCK:
+ Alpha: 0.9990000128746033
+ Color: 0; 176; 255
+ Topic:
+ Depth: 5
+ Durability Policy: Volatile
+ History Policy: Keep Last
+ Reliability Policy: Best Effort
+ Value: /perception/object_recognition/objects
+ UNKNOWN:
+ Alpha: 0.9990000128746033
+ Color: 0; 176; 255
+ Value: true
+ Visualization Type: Normal
+ Enabled: true
+ Name: Perception
+ - Class: rviz_common/Group
+ Displays:
+ - Class: rviz_common/Group
+ Displays:
+ - Class: rviz_default_plugins/MarkerArray
+ Enabled: true
+ Name: LaneChangeLeft
+ Namespaces:
+ {}
+ Topic:
+ Depth: 5
+ Durability Policy: Volatile
+ History Policy: Keep Last
+ Reliability Policy: Reliable
+ Value: /planning/debug/objects_of_interest/lane_change_left
+ Value: true
+ - Class: rviz_default_plugins/MarkerArray
+ Enabled: true
+ Name: LaneChangeRight
+ Namespaces:
+ {}
+ Topic:
+ Depth: 5
+ Durability Policy: Volatile
+ History Policy: Keep Last
+ Reliability Policy: Reliable
+ Value: /planning/debug/objects_of_interest/lane_change_right
+ Value: true
+ - Class: rviz_default_plugins/MarkerArray
+ Enabled: true
+ Name: AvoidanceLeft
+ Namespaces:
+ {}
+ Topic:
+ Depth: 5
+ Durability Policy: Volatile
+ History Policy: Keep Last
+ Reliability Policy: Reliable
+ Value: /planning/debug/objects_of_interest/static_obstacle_avoidance_left
+ Value: true
+ - Class: rviz_default_plugins/MarkerArray
+ Enabled: true
+ Name: AvoidanceRight
+ Namespaces:
+ {}
+ Topic:
+ Depth: 5
+ Durability Policy: Volatile
+ History Policy: Keep Last
+ Reliability Policy: Reliable
+ Value: /planning/debug/objects_of_interest/static_obstacle_avoidance_right
+ Value: true
+ - Class: rviz_default_plugins/MarkerArray
+ Enabled: true
+ Name: AvoidanceByLCLeft
+ Namespaces:
+ {}
+ Topic:
+ Depth: 5
+ Durability Policy: Volatile
+ History Policy: Keep Last
+ Reliability Policy: Reliable
+ Value: /planning/debug/objects_of_interest/avoidance_by_lc_left
+ Value: true
+ - Class: rviz_default_plugins/MarkerArray
+ Enabled: true
+ Name: AvoidanceByLCRight
+ Namespaces:
+ {}
+ Topic:
+ Depth: 5
+ Durability Policy: Volatile
+ History Policy: Keep Last
+ Reliability Policy: Reliable
+ Value: /planning/debug/objects_of_interest/avoidance_by_lc_right
+ Value: true
+ - Class: rviz_default_plugins/MarkerArray
+ Enabled: true
+ Name: StartPlanner
+ Namespaces:
+ {}
+ Topic:
+ Depth: 5
+ Durability Policy: Volatile
+ History Policy: Keep Last
+ Reliability Policy: Reliable
+ Value: /planning/debug/objects_of_interest/start_planner
+ Value: true
+ - Class: rviz_default_plugins/MarkerArray
+ Enabled: true
+ Name: GoalPlanner
+ Namespaces:
+ {}
+ Topic:
+ Depth: 5
+ Durability Policy: Volatile
+ History Policy: Keep Last
+ Reliability Policy: Reliable
+ Value: /planning/debug/objects_of_interest/goal_planner
+ Value: true
+ - Class: rviz_default_plugins/MarkerArray
+ Enabled: true
+ Name: Crosswalk
+ Namespaces:
+ {}
+ Topic:
+ Depth: 5
+ Durability Policy: Volatile
+ History Policy: Keep Last
+ Reliability Policy: Reliable
+ Value: /planning/debug/objects_of_interest/crosswalk
+ Value: true
+ - Class: rviz_default_plugins/MarkerArray
+ Enabled: true
+ Name: Intersection
+ Namespaces:
+ {}
+ Topic:
+ Depth: 5
+ Durability Policy: Volatile
+ History Policy: Keep Last
+ Reliability Policy: Reliable
+ Value: /planning/debug/objects_of_interest/intersection
+ Value: true
+ - Class: rviz_default_plugins/MarkerArray
+ Enabled: true
+ Name: BlindSpot
+ Namespaces:
+ {}
+ Topic:
+ Depth: 5
+ Durability Policy: Volatile
+ History Policy: Keep Last
+ Reliability Policy: Reliable
+ Value: /planning/debug/objects_of_interest/blind_spot
+ Value: true
+ - Class: rviz_default_plugins/MarkerArray
+ Enabled: true
+ Name: TrafficLight
+ Namespaces:
+ {}
+ Topic:
+ Depth: 5
+ Durability Policy: Volatile
+ History Policy: Keep Last
+ Reliability Policy: Reliable
+ Value: /planning/debug/objects_of_interest/traffic_light
+ Value: true
+ - Class: rviz_default_plugins/MarkerArray
+ Enabled: true
+ Name: DetectionArea
+ Namespaces:
+ {}
+ Topic:
+ Depth: 5
+ Durability Policy: Volatile
+ History Policy: Keep Last
+ Reliability Policy: Reliable
+ Value: /planning/debug/objects_of_interest/detection_area
+ Value: true
+ - Class: rviz_default_plugins/MarkerArray
+ Enabled: true
+ Name: NoStoppingArea
+ Namespaces:
+ {}
+ Topic:
+ Depth: 5
+ Durability Policy: Volatile
+ History Policy: Keep Last
+ Reliability Policy: Reliable
+ Value: /planning/debug/objects_of_interest/no_stopping_area
+ Value: true
+ Enabled: true
+ Name: Objects Of Interest
+ Enabled: true
+ Name: Planning
+ - Class: rviz_common/Group
+ Displays: ~
+ Enabled: true
+ Name: Control
+ Enabled: false
+ Name: Debug
+ Enabled: true
+ Global Options:
+ Background Color: 15; 20; 23
+ Fixed Frame: map
+ Frame Rate: 30
+ Name: root
+ Tools:
+ - Class: rviz_default_plugins/Interact
+ Hide Inactive Objects: true
+ - Class: rviz_default_plugins/MoveCamera
+ - Class: rviz_default_plugins/Select
+ - Class: rviz_default_plugins/FocusCamera
+ - Class: rviz_default_plugins/Measure
+ Line color: 128; 128; 0
+ - Class: rviz_default_plugins/SetInitialPose
+ Covariance x: 0.25
+ Covariance y: 0.25
+ Covariance yaw: 0.06853891909122467
+ Topic:
+ Depth: 5
+ Durability Policy: Volatile
+ History Policy: Keep Last
+ Reliability Policy: Reliable
+ Value: /initialpose
+ - Class: rviz_default_plugins/SetGoal
+ Topic:
+ Depth: 5
+ Durability Policy: Volatile
+ History Policy: Keep Last
+ Reliability Policy: Reliable
+ Value: /planning/mission_planning/goal
+ - Class: tier4_adapi_rviz_plugins::RouteTool
+ Topic:
+ Depth: 5
+ Durability Policy: Volatile
+ History Policy: Keep Last
+ Reliability Policy: Reliable
+ Value: /rviz/routing/rough_goal
+ - Acceleration: 0
+ Class: rviz_plugins/PedestrianInitialPoseTool
+ Interactive: false
+ Max velocity: 33.29999923706055
+ Min velocity: -33.29999923706055
+ Pose Topic: /simulation/dummy_perception_publisher/object_info
+ Target Frame:
+ Theta std deviation: 0.0872664600610733
+ Velocity: 0
+ X std deviation: 0.029999999329447746
+ Y std deviation: 0.029999999329447746
+ Z position: 1
+ Z std deviation: 0.029999999329447746
+ - Acceleration: 0
+ Class: rviz_plugins/CarInitialPoseTool
+ H vehicle height: 2
+ Interactive: false
+ L vehicle length: 4
+ Max velocity: 33.29999923706055
+ Min velocity: -33.29999923706055
+ Pose Topic: /simulation/dummy_perception_publisher/object_info
+ Target Frame:
+ Theta std deviation: 0.0872664600610733
+ Velocity: 3
+ W vehicle width: 1.7999999523162842
+ X std deviation: 0.029999999329447746
+ Y std deviation: 0.029999999329447746
+ Z position: 0
+ Z std deviation: 0.029999999329447746
+ - Acceleration: 0
+ Class: rviz_plugins/BusInitialPoseTool
+ H vehicle height: 3.5
+ Interactive: false
+ L vehicle length: 10.5
+ Max velocity: 33.29999923706055
+ Min velocity: -33.29999923706055
+ Pose Topic: /simulation/dummy_perception_publisher/object_info
+ Target Frame:
+ Theta std deviation: 0.0872664600610733
+ Velocity: 0
+ W vehicle width: 2.5
+ X std deviation: 0.029999999329447746
+ Y std deviation: 0.029999999329447746
+ Z position: 0
+ Z std deviation: 0.029999999329447746
+ - Class: rviz_plugins/MissionCheckpointTool
+ Pose Topic: /planning/mission_planning/checkpoint
+ Theta std deviation: 0.2617993950843811
+ X std deviation: 0.5
+ Y std deviation: 0.5
+ Z position: 0
+ - Class: rviz_plugins/DeleteAllObjectsTool
+ Pose Topic: /simulation/dummy_perception_publisher/object_info
+ Transformation:
+ Current:
+ Class: rviz_default_plugins/TF
+ Value: true
+ Views:
+ Current:
+ Angle: 0
+ Class: rviz_default_plugins/TopDownOrtho
+ Enable Stereo Rendering:
+ Stereo Eye Separation: 0.05999999865889549
+ Stereo Focal Distance: 1
+ Swap Stereo Eyes: false
+ Value: false
+ Invert Z Axis: false
+ Name: Current View
+ Near Clip Distance: 0.009999999776482582
+ Scale: 10
+ Target Frame: viewer
+ Value: TopDownOrtho (rviz_default_plugins)
+ X: 0
+ Y: 0
+ Saved:
+ - Class: rviz_default_plugins/ThirdPersonFollower
+ Distance: 18
+ Enable Stereo Rendering:
+ Stereo Eye Separation: 0.05999999865889549
+ Stereo Focal Distance: 1
+ Swap Stereo Eyes: false
+ Value: false
+ Focal Point:
+ X: 0
+ Y: 0
+ Z: 0
+ Focal Shape Fixed Size: true
+ Focal Shape Size: 0.05000000074505806
+ Invert Z Axis: false
+ Name: ThirdPersonFollower
+ Near Clip Distance: 0.009999999776482582
+ Pitch: 0.20000000298023224
+ Target Frame: base_link
+ Value: ThirdPersonFollower (rviz)
+ Yaw: 3.141592025756836
+ - Angle: 0
+ Class: rviz_default_plugins/TopDownOrtho
+ Enable Stereo Rendering:
+ Stereo Eye Separation: 0.05999999865889549
+ Stereo Focal Distance: 1
+ Swap Stereo Eyes: false
+ Value: false
+ Invert Z Axis: false
+ Name: TopDownOrtho
+ Near Clip Distance: 0.009999999776482582
+ Scale: 10
+ Target Frame: viewer
+ Value: TopDownOrtho (rviz)
+ X: 0
+ Y: 0
+Window Geometry:
+ AutowareDateTimePanel:
+ collapsed: false
+ AutowareStatePanel:
+ collapsed: false
+ Displays:
+ collapsed: false
+ Height: 939
+ Hide Left Dock: false
+ Hide Right Dock: false
+ PointcloudOnCamera:
+ collapsed: false
+ QMainWindow State: 000000ff00000000fd0000000400000000000001ef00000349fc020000000ffb0000001200530065006c0065006300740069006f006e00000001e10000009b0000006b00fffffffb000000120056006900650077007300200054006f006f02000001df000002110000018500000122fb000000200054006f006f006c002000500072006f0070006500720074006900650073003203000002880000011d000002210000017afb00000024004100750074006f00770061007200650053007400610074006500500061006e0065006c01000000440000029b0000008100fffffffb0000002000730065006c0065006300740069006f006e00200062007500660066006500720200000138000000aa0000023a00000294fb00000014005700690064006500530074006500720065006f02000000e6000000d2000003ee0000030bfb0000000c004b0069006e0065006300740200000186000001060000030c00000261fb0000000c00430061006d0065007200610100000682000000eb0000000000000000fb0000000a0049006d0061006700650100000505000002680000000000000000fb0000002c0049006e0069007400690061006c0050006f007300650042007500740074006f006e00500061006e0065006c000000068f000000de0000000000000000fb0000002c0049006e0069007400690061006c0050006f007300650042007500740074006f006e00500061006e0065006c000000068f000000de0000000000000000fb00000030005200650063006f0067006e006900740069006f006e0052006500730075006c0074004f006e0049006d0061006700650000000246000000c10000002c00fffffffb0000002a004100750074006f0077006100720065004400610074006500540069006d006500500061006e0065006c0000000332000000720000004600fffffffb000000240050006f0069006e00740063006c006f00750064004f006e00430061006d006500720061000000039d000000560000002c00fffffffb0000002600530069006d0075006c00610074006500640043006c006f0063006b00500061006e0065006c01000002e6000000a70000007f00ffffff00000001000001ab00000349fc0200000004fb000000100044006900730070006c006100790073010000004400000122000000eb00fffffffc0000016d00000220000000da01000020fa000000000100000002fb0000000a0056006900650077007301000005d5000001ab0000010200fffffffb0000001e0054006f006f006c002000500072006f00700065007200740069006500730100000000ffffffff000000a400fffffffb0000001e0054006f006f006c002000500072006f00700065007200740069006500730100000041000000780000000000000000fb0000001200530065006c0065006300740069006f006e010000025a000000b200000000000000000000000200000e7a0000005afc0100000001fb0000000a00560069006500770073030000004e00000080000002e1000001970000000300000e7a0000005afc0100000002fb0000000800540069006d0065010000000000000e7a0000000000000000fb0000000800540069006d00650100000000000004500000000000000000000003d80000034900000004000000040000000800000008fc0000000100000002000000010000000a0054006f006f006c00730100000000ffffffff0000000000000000
+ RecognitionResultOnImage:
+ collapsed: false
+ Selection:
+ collapsed: false
+ SimulatedClockPanel:
+ collapsed: false
+ Tool Properties:
+ collapsed: false
+ TrafficLightPublishPanel:
+ collapsed: false
+ Views:
+ collapsed: false
+ Width: 1920
+ X: 0
+ Y: 34
diff --git a/common/autoware_test_utils/src/autoware_test_utils.cpp b/common/autoware_test_utils/src/autoware_test_utils.cpp
new file mode 100644
index 0000000000..0ab2430f7f
--- /dev/null
+++ b/common/autoware_test_utils/src/autoware_test_utils.cpp
@@ -0,0 +1,348 @@
+// Copyright 2024 TIER IV, Inc.
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+#include
+#include
+#include
+#include
+#include
+#include
+#include
+#include
+#include
+
+#include
+#include
+#include
+
+#include
+#include
+#include
+
+namespace autoware::test_utils
+{
+
+using autoware_utils::create_point;
+using autoware_utils::create_quaternion_from_rpy;
+using geometry_msgs::msg::TransformStamped;
+
+geometry_msgs::msg::Pose createPose(
+ double x, double y, double z, double roll, double pitch, double yaw)
+{
+ geometry_msgs::msg::Pose p;
+ p.position = create_point(x, y, z);
+ p.orientation = create_quaternion_from_rpy(roll, pitch, yaw);
+ return p;
+}
+
+geometry_msgs::msg::Pose createPose(const std::array & pose3d)
+{
+ return createPose(pose3d[0], pose3d[1], pose3d[2], 0.0, 0.0, pose3d[3]);
+}
+
+LaneletSegment createLaneletSegment(int id)
+{
+ LaneletPrimitive primitive;
+ primitive.id = id;
+ primitive.primitive_type = "lane";
+ LaneletSegment segment;
+ segment.preferred_primitive.id = id;
+ segment.primitives.push_back(primitive);
+ return segment;
+}
+
+lanelet::LaneletMapPtr loadMap(const std::string & lanelet2_filename)
+{
+ lanelet::ErrorMessages errors{};
+ lanelet::projection::MGRSProjector projector{};
+ lanelet::LaneletMapPtr map = lanelet::load(lanelet2_filename, projector, &errors);
+ if (!errors.empty()) {
+ for (const auto & error : errors) {
+ RCLCPP_ERROR_STREAM(rclcpp::get_logger("map_loader"), error);
+ }
+ return nullptr;
+ }
+
+ for (lanelet::Point3d point : map->pointLayer) {
+ if (point.hasAttribute("local_x")) {
+ point.x() = point.attribute("local_x").asDouble().value();
+ }
+ if (point.hasAttribute("local_y")) {
+ point.y() = point.attribute("local_y").asDouble().value();
+ }
+ }
+
+ // realign lanelet borders using updated points
+ for (lanelet::Lanelet lanelet : map->laneletLayer) {
+ auto left = lanelet.leftBound();
+ auto right = lanelet.rightBound();
+ std::tie(left, right) = lanelet::geometry::align(left, right);
+ lanelet.setLeftBound(left);
+ lanelet.setRightBound(right);
+ }
+
+ return map;
+}
+
+LaneletMapBin convertToMapBinMsg(
+ const lanelet::LaneletMapPtr map, const std::string & lanelet2_filename, const rclcpp::Time & now)
+{
+ std::string format_version{};
+ std::string map_version{};
+ lanelet::io_handlers::AutowareOsmParser::parseVersions(
+ lanelet2_filename, &format_version, &map_version);
+
+ LaneletMapBin map_bin_msg;
+ map_bin_msg.header.stamp = now;
+ map_bin_msg.header.frame_id = "map";
+ map_bin_msg.version_map_format = format_version;
+ map_bin_msg.version_map = map_version;
+ lanelet::utils::conversion::toBinMsg(map, &map_bin_msg);
+
+ return map_bin_msg;
+}
+
+LaneletRoute makeNormalRoute()
+{
+ const std::array start_pose{5.5, 4., 0., M_PI_2};
+ const std::array goal_pose{8.0, 26.3, 0, 0};
+ LaneletRoute route;
+ route.header.frame_id = "map";
+ route.start_pose = createPose(start_pose);
+ route.goal_pose = createPose(goal_pose);
+ return route;
+}
+
+OccupancyGrid makeCostMapMsg(size_t width, size_t height, double resolution)
+{
+ nav_msgs::msg::OccupancyGrid costmap_msg;
+
+ // create info
+ costmap_msg.header.frame_id = "map";
+ costmap_msg.info.width = width;
+ costmap_msg.info.height = height;
+ costmap_msg.info.resolution = static_cast(resolution);
+
+ // create data
+ const size_t n_elem = width * height;
+ for (size_t i = 0; i < n_elem; ++i) {
+ costmap_msg.data.push_back(0.0);
+ }
+ return costmap_msg;
+}
+
+std::string get_absolute_path_to_lanelet_map(
+ const std::string & package_name, const std::string & map_filename)
+{
+ const auto dir = ament_index_cpp::get_package_share_directory(package_name);
+ return dir + "/test_map/" + map_filename;
+}
+
+std::string get_absolute_path_to_route(
+ const std::string & package_name, const std::string & route_filename)
+{
+ const auto dir = ament_index_cpp::get_package_share_directory(package_name);
+ return dir + "/test_route/" + route_filename;
+}
+
+std::string get_absolute_path_to_config(
+ const std::string & package_name, const std::string & config_filename)
+{
+ const auto dir = ament_index_cpp::get_package_share_directory(package_name);
+ return dir + "/config/" + config_filename;
+}
+
+LaneletMapBin make_map_bin_msg(
+ const std::string & absolute_path, const double center_line_resolution)
+{
+ const auto map = loadMap(absolute_path);
+ if (!map) {
+ return autoware_map_msgs::msg::LaneletMapBin_>{};
+ }
+
+ // overwrite centerline
+ lanelet::utils::overwriteLaneletsCenterline(map, center_line_resolution, false);
+
+ // create map bin msg
+ const auto map_bin_msg =
+ convertToMapBinMsg(map, absolute_path, rclcpp::Clock(RCL_ROS_TIME).now());
+ return map_bin_msg;
+}
+
+LaneletMapBin makeMapBinMsg(const std::string & package_name, const std::string & map_filename)
+{
+ return make_map_bin_msg(get_absolute_path_to_lanelet_map(package_name, map_filename));
+}
+
+Odometry makeOdometry(const double shift)
+{
+ Odometry odometry;
+ const std::array start_pose{0.0, shift, 0.0, 0.0};
+ odometry.pose.pose = createPose(start_pose);
+ odometry.header.frame_id = "map";
+ return odometry;
+}
+
+Odometry makeInitialPose(const double shift)
+{
+ Odometry current_odometry;
+ const auto yaw = 0.9724497591854532;
+ const auto shift_x = shift * std::sin(yaw);
+ const auto shift_y = shift * std::cos(yaw);
+ const std::array start_pose{
+ 3722.16015625 + shift_x, 73723.515625 + shift_y, 0.233112560494183, yaw};
+ current_odometry.pose.pose = autoware::test_utils::createPose(start_pose);
+ current_odometry.header.frame_id = "map";
+ return current_odometry;
+}
+
+TFMessage makeTFMsg(
+ rclcpp::Node::SharedPtr target_node, std::string && frame_id, std::string && child_frame_id)
+{
+ TFMessage tf_msg;
+ geometry_msgs::msg::Quaternion quaternion;
+ quaternion.x = 0.;
+ quaternion.y = 0.;
+ quaternion.z = 0.23311256049418302;
+ quaternion.w = 0.9724497591854532;
+
+ TransformStamped tf;
+ tf.header.stamp = target_node->get_clock()->now();
+ tf.header.frame_id = frame_id;
+ tf.child_frame_id = child_frame_id;
+ tf.transform.translation.x = 3722.16015625;
+ tf.transform.translation.y = 73723.515625;
+ tf.transform.translation.z = 0;
+ tf.transform.rotation = quaternion;
+
+ tf_msg.transforms.emplace_back(std::move(tf));
+ return tf_msg;
+}
+
+Scenario makeScenarioMsg(const std::string & scenario)
+{
+ Scenario scenario_msg;
+ scenario_msg.current_scenario = scenario;
+ scenario_msg.activating_scenarios = {scenario};
+ return scenario_msg;
+}
+
+// cppcheck-suppress unusedFunction
+RouteSections combineConsecutiveRouteSections(
+ const RouteSections & route_sections1, const RouteSections & route_sections2)
+{
+ RouteSections route_sections;
+ route_sections.reserve(route_sections1.size() + route_sections2.size());
+ if (!route_sections1.empty()) {
+ // remove end route section because it is overlapping with first one in next route_section
+ route_sections.insert(route_sections.end(), route_sections1.begin(), route_sections1.end() - 1);
+ }
+ if (!route_sections2.empty()) {
+ route_sections.insert(route_sections.end(), route_sections2.begin(), route_sections2.end());
+ }
+ return route_sections;
+}
+
+// this is for the test lanelet2_map.osm
+// file hash: a9f84cff03b55a64917bc066451276d2293b0a54f5c088febca0c7fdf2f245d5
+LaneletRoute makeBehaviorNormalRoute()
+{
+ LaneletRoute route;
+ route.header.frame_id = "map";
+ route.start_pose =
+ createPose({3722.16015625, 73723.515625, 0.233112560494183, 0.9724497591854532});
+ route.goal_pose =
+ createPose({3778.362060546875, 73721.2734375, -0.5107480274693206, 0.8597304533609347});
+
+ std::vector primitive_ids = {9102, 9178, 54, 112};
+ for (int id : primitive_ids) {
+ route.segments.push_back(createLaneletSegment(id));
+ }
+
+ std::array uuid_bytes{210, 87, 16, 126, 98, 151, 58, 28,
+ 252, 221, 230, 92, 122, 170, 46, 6};
+ route.uuid.uuid = uuid_bytes;
+
+ route.allow_modification = false;
+ return route;
+}
+
+// cppcheck-suppress unusedFunction
+void spinSomeNodes(
+ rclcpp::Node::SharedPtr test_node, rclcpp::Node::SharedPtr target_node, const int repeat_count)
+{
+ rclcpp::executors::SingleThreadedExecutor executor;
+ executor.add_node(test_node);
+ executor.add_node(target_node);
+ for (int i = 0; i < repeat_count; i++) {
+ executor.spin_some(std::chrono::milliseconds(100));
+ rclcpp::sleep_for(std::chrono::milliseconds(100));
+ }
+}
+
+void updateNodeOptions(
+ rclcpp::NodeOptions & node_options, const std::vector & params_files)
+{
+ std::vector arguments;
+ arguments.push_back("--ros-args");
+ arguments.push_back("--params-file");
+ for (const auto & param_file : params_files) {
+ arguments.push_back(param_file.c_str());
+ arguments.push_back("--params-file");
+ }
+ arguments.pop_back();
+
+ node_options.arguments(std::vector{arguments.begin(), arguments.end()});
+}
+
+PathWithLaneId loadPathWithLaneIdInYaml()
+{
+ const auto yaml_path =
+ get_absolute_path_to_config("autoware_test_utils", "path_with_lane_id_data.yaml");
+
+ if (const auto path = parse>(yaml_path)) {
+ return *path;
+ }
+
+ throw std::runtime_error(
+ "Failed to parse YAML file: " + yaml_path + ". The file might be corrupted.");
+}
+
+lanelet::ConstLanelet make_lanelet(
+ const lanelet::BasicPoint2d & left0, const lanelet::BasicPoint2d & left1,
+ const lanelet::BasicPoint2d & right0, const lanelet::BasicPoint2d & right1)
+{
+ lanelet::LineString3d left_bound;
+ left_bound.push_back(lanelet::Point3d(lanelet::InvalId, left0.x(), left0.y(), 0.0));
+ left_bound.push_back(lanelet::Point3d(lanelet::InvalId, left1.x(), left1.y(), 0.0));
+ lanelet::LineString3d right_bound;
+ right_bound.push_back(lanelet::Point3d(lanelet::InvalId, right0.x(), right0.y(), 0.0));
+ right_bound.push_back(lanelet::Point3d(lanelet::InvalId, right1.x(), right1.y(), 0.0));
+ return {lanelet::utils::getId(), left_bound, right_bound};
+}
+
+std::optional resolve_pkg_share_uri(const std::string & uri_path)
+{
+ std::smatch match;
+ std::regex pattern(R"(package://([^/]+)/(.+))");
+ if (std::regex_match(uri_path, match, pattern)) {
+ const std::string pkg_name = ament_index_cpp::get_package_share_directory(match[1].str());
+ const std::string resource_path = match[2].str();
+ const auto path = std::filesystem::path(pkg_name) / std::filesystem::path(resource_path);
+ return std::filesystem::exists(path) ? std::make_optional(path) : std::nullopt;
+ }
+ return std::nullopt;
+}
+
+} // namespace autoware::test_utils
diff --git a/common/autoware_test_utils/src/mock_data_parser.cpp b/common/autoware_test_utils/src/mock_data_parser.cpp
new file mode 100644
index 0000000000..29aed75357
--- /dev/null
+++ b/common/autoware_test_utils/src/mock_data_parser.cpp
@@ -0,0 +1,504 @@
+// Copyright 2024 TIER IV
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+#include "autoware_test_utils/mock_data_parser.hpp"
+
+#include
+
+#include
+#include
+#include
+#include
+
+namespace autoware::test_utils
+{
+
+template <>
+Header parse(const YAML::Node & node)
+{
+ Header header;
+
+ header.stamp.sec = node["stamp"]["sec"].as();
+ header.stamp.nanosec = node["stamp"]["nanosec"].as();
+ header.frame_id = node["frame_id"].as();
+
+ return header;
+}
+
+template <>
+Duration parse(const YAML::Node & node)
+{
+ Duration msg;
+ msg.sec = node["sec"].as();
+ msg.nanosec = node["nanosec"].as();
+ return msg;
+}
+
+template <>
+Time parse(const YAML::Node & node)
+{
+ Time msg;
+ msg.sec = node["sec"].as();
+ msg.nanosec = node["nanosec"].as();
+ return msg;
+}
+
+template <>
+std::array parse(const YAML::Node & node)
+{
+ std::array msg{};
+ const auto cov = node.as>();
+ for (size_t i = 0; i < 36; ++i) {
+ msg[i] = cov.at(i);
+ }
+ return msg;
+}
+
+template <>
+Point parse(const YAML::Node & node)
+{
+ Point geom_point;
+ geom_point.x = node["x"].as();
+ geom_point.y = node["y"].as();
+ geom_point.z = node["z"].as();
+ return geom_point;
+}
+
+template <>
+std::vector parse(const YAML::Node & node)
+{
+ std::vector geom_points;
+
+ std::transform(
+ node.begin(), node.end(), std::back_inserter(geom_points), [&](const YAML::Node & input) {
+ Point point;
+ point.x = input["x"].as();
+ point.y = input["y"].as();
+ point.z = input["z"].as();
+ return point;
+ });
+
+ return geom_points;
+}
+
+template <>
+Pose parse(const YAML::Node & node)
+{
+ Pose pose;
+ pose.position.x = node["position"]["x"].as();
+ pose.position.y = node["position"]["y"].as();
+ pose.position.z = node["position"]["z"].as();
+ pose.orientation.x = node["orientation"]["x"].as();
+ pose.orientation.y = node["orientation"]["y"].as();
+ pose.orientation.z = node["orientation"]["z"].as();
+ pose.orientation.w = node["orientation"]["w"].as();
+ return pose;
+}
+
+template <>
+PoseWithCovariance parse(const YAML::Node & node)
+{
+ PoseWithCovariance msg;
+ msg.pose = parse(node["pose"]);
+ msg.covariance = parse>(node["covariance"]);
+ return msg;
+}
+
+template <>
+Twist parse(const YAML::Node & node)
+{
+ Twist msg;
+ msg.linear.x = node["linear"]["x"].as();
+ msg.linear.y = node["linear"]["y"].as();
+ msg.linear.z = node["linear"]["z"].as();
+ msg.angular.x = node["angular"]["x"].as();
+ msg.angular.y = node["angular"]["y"].as();
+ msg.angular.z = node["angular"]["z"].as();
+ return msg;
+}
+
+template <>
+TwistWithCovariance parse(const YAML::Node & node)
+{
+ TwistWithCovariance msg;
+ msg.twist = parse(node["twist"]);
+ msg.covariance = parse>(node["covariance"]);
+ return msg;
+}
+
+template <>
+Odometry parse(const YAML::Node & node)
+{
+ Odometry msg;
+ msg.header = parse(node["header"]);
+ msg.child_frame_id = node["child_frame_id"].as();
+ msg.pose = parse(node["pose"]);
+ msg.twist = parse(node["twist"]);
+ return msg;
+}
+
+template <>
+Accel parse(const YAML::Node & node)
+{
+ Accel msg;
+ msg.linear.x = node["linear"]["x"].as();
+ msg.linear.y = node["linear"]["y"].as();
+ msg.linear.z = node["linear"]["z"].as();
+ msg.angular.x = node["angular"]["x"].as();
+ msg.angular.y = node["angular"]["y"].as();
+ msg.angular.z = node["angular"]["z"].as();
+ return msg;
+}
+
+template <>
+AccelWithCovariance parse(const YAML::Node & node)
+{
+ AccelWithCovariance msg;
+ msg.accel = parse(node["accel"]);
+ msg.covariance = parse>(node["covariance"]);
+ return msg;
+}
+
+template <>
+AccelWithCovarianceStamped parse(const YAML::Node & node)
+{
+ AccelWithCovarianceStamped msg;
+ msg.header = parse(node["header"]);
+ msg.accel = parse(node["accel"]);
+ return msg;
+}
+
+template <>
+LaneletPrimitive parse(const YAML::Node & node)
+{
+ LaneletPrimitive primitive;
+ primitive.id = node["id"].as();
+ primitive.primitive_type = node["primitive_type"].as