Autoware的MPC源码解析(一)mpc_waypoints_converter解析

本文深入解析了Autoware源码中的MPC路径跟踪方法,重点介绍了mpc_waypoints_converter节点的工作流程,包括如何从全局路径中提取局部路径,并通过特定算法生成用于车辆控制的路径点。

版权声明:本文为博主原创文章,未经博主允许不得转载。
源码地址:https://gitlab.com/autowarefoundation/autoware.ai/autoware/wikis/Source-Build
目前在最新的Autoware源码中,包含两种路径跟踪(横向)控制方法:纯跟踪(pure pursuit)和模型预测控制(Model Predict Control,MPC)。本文主要对其中的MPC源码进行解析。
如有错误或建议,欢迎提出。

关于mpc方法的原理可参考此博文:https://blog.youkuaiyun.com/u013914471/article/details/83824490

在mpc源码中包含了两个节点,一个是/mpc_waypoints_converter,另一个是/mpc_follower。关系如下图所示。
在这里插入图片描述此图来源于源码

在此篇中先解析mpc_waypoints_converter节点的源码。此节点主要是接收路径信息后,截取最近点前后的若干点生成局部路径发出去。将此节点订阅三个topic,分别是:

    sub_closest_waypoint_ = nh_.subscribe("/closest_waypoint", 1, &MPCWaypointsConverter::callbackClosestWaypoints, this);
    //接受最近路径点的序号
    sub_base_waypoints_ = nh_.subscribe("/base_waypoints", 1, &MPCWaypointsConverter::callbackBaseWaypoints, this);
    //接受原始全局路径信息
    sub_final_waypoints_ = nh_.subscribe("/final_waypoints", 1, &MPCWaypointsConverter::callbackFinalWaypoints, this);
    //接受最近路径点之后的路径点信息

发布一个topic:

pub_waypoints_ = nh_.advertise<autoware_msgs::Lane>("/mpc_waypoints", 1);
//发布局部路径信息(只包含最近路径点前后的若干个点)

接受路径信息后,先找出在/base_waypoints路径上的最近点:

// find closest point index in base_waypoints (topic /closest_waypoints has no consistency with /final_waypoints due to delay)
    int closest_idx = -1;
    for (int i = 0; i < (int)base_waypoints_.waypoints.size(); ++i) {
      const double d = sq_dist(final_waypoints.waypoints[1].pose.pose.position, base_waypoints_.waypoints[i].pose.pose.position);
      if (d < 0.01) {
        closest_idx = i;
        break;
      }
    }

将最近点之前的back_waypoints_num_个路径点(已经跑过的路径点)注入mpc_waypoints中:

int base_start = std::max(closest_idx - back_waypoints_num_, 0);
    for (int i = base_start; i < closest_idx; ++i)
    {
      mpc_waypoints.waypoints.push_back(base_waypoints_.waypoints.at(i));
      mpc_waypoints.waypoints.back().twist = final_waypoints.waypoints[1].twist;
    }

将最近点之后的front_waypoints_num_个路径点(未跑过的路径)注入mpc_waypoints中:

int final_end = std::min(front_waypoints_num_ + 1, (int)final_waypoints.waypoints.size());
    for (int i = 1; i < final_end; ++i)
    {
      mpc_waypoints.waypoints.push_back(final_waypoints.waypoints.at(i));
    }

发布局部路径信息:

pub_waypoints_.publish(mpc_waypoints);
zy@zy-Lenovo-Legion-R7000P2020H:~/autoware$ colcon build --symlink-install \ --cmake-args \ -DCMAKE_BUILD_TYPE=Release \ -DCUDAToolkit_ROOT=/usr/local/cuda-12.4 \ -DCMAKE_CUDA_COMPILER=/usr/local/cuda-12.4/bin/nvcc \ --continue-on-error \ --allow-overriding can_msgs Starting >>> autoware_lint_common Starting >>> autoware_planning_msgs Starting >>> autoware_simple_object_merger --- stderr: autoware_probabilistic_occupancy_grid_map In this package, headers install destination is set to `include` by ament_auto_package. It is recommended to install `include/autoware_probabilistic_occupancy_grid_map` instead and will be the default behavior of ament_auto_package from ROS 2 Kilted Kaiju. On distributions before Kilted, ament_auto_package behaves the same way when you use USE_SCOPED_HEADER_INSTALL_DIR option. CMake Warning: Manually-specified variables were not used by the project: CMAKE_CUDA_COMPILER CUDAToolkit_ROOT /usr/bin/ccache: invalid option -- 'E' nvcc fatal : Failed to preprocess host compiler properties. CMake Error at autoware_probabilistic_occupancy_grid_map_cuda_generated_utils_kernel.cu.o.Release.cmake:220 (message): Error generating /home/zy/autoware/build/autoware_probabilistic_occupancy_grid_map/CMakeFiles/autoware_probabilistic_occupancy_grid_map_cuda.dir/lib/utils/./autoware_probabilistic_occupancy_grid_map_cuda_generated_utils_kernel.cu.o gmake[2]: *** [CMakeFiles/autoware_probabilistic_occupancy_grid_map_cuda.dir/build.make:105:CMakeFiles/autoware_probabilistic_occupancy_grid_map_cuda.dir/lib/utils/autoware_probabilistic_occupancy_grid_map_cuda_generated_utils_kernel.cu.o] 错误 1 gmake[1]: *** [CMakeFiles/Makefile2:150:CMakeFiles/autoware_probabilistic_occupancy_grid_map_cuda.dir/all] 错误 2 gmake: *** [Makefile:146:all] 错误 2 --- Failed <<< autoware_probabilistic_occupancy_grid_map [29.1s, exited with code 2] Starting >>> autoware_pid_longitudinal_controller --- stderr: autoware_lidar_transfusion In this package, headers install destination is set to `include` by ament_auto_package. It is recommended to install `include/autoware_lidar_transfusion` instead and will be the default behavior of ament_auto_package from ROS 2 Kilted Kaiju. On distributions before Kilted, ament_auto_package behaves the same way when you use USE_SCOPED_HEADER_INSTALL_DIR option. sh: 1: cicc: not found CMake Error at autoware_lidar_transfusion_cuda_lib_generated_preprocess_kernel.cu.o.Release.cmake:280 (message): Error generating file /home/zy/autoware/build/autoware_lidar_transfusion/CMakeFiles/autoware_lidar_transfusion_cuda_lib.dir/lib/preprocess/./autoware_lidar_transfusion_cuda_lib_generated_preprocess_kernel.cu.o gmake[2]: *** [CMakeFiles/autoware_lidar_transfusion_cuda_lib.dir/build.make:411:CMakeFiles/autoware_lidar_transfusion_cuda_lib.dir/lib/preprocess/autoware_lidar_transfusion_cuda_lib_generated_preprocess_kernel.cu.o] 错误 1 gmake[1]: *** [CMakeFiles/Makefile2:192:CMakeFiles/autoware_lidar_transfusion_cuda_lib.dir/all] 错误 2 gmake: *** [Makefile:146:all] 错误 2 --- Failed <<< autoware_lidar_transfusion [34.7s, exited with code 2] Starting >>> autoware_pure_pursuit --- stderr: autoware_planning_validator In this package, headers install destination is set to `include` by ament_auto_package. It is recommended to install `include/autoware_planning_validator` instead and will be the default behavior of ament_auto_package from ROS 2 Kilted Kaiju. On distributions before Kilted, ament_auto_package behaves the same way when you use USE_SCOPED_HEADER_INSTALL_DIR option. CMake Warning: Manually-specified variables were not used by the project: CMAKE_CUDA_COMPILER CUDAToolkit_ROOT /usr/bin/ld: CMakeFiles/test_autoware_planning_validator.dir/test/src/test_planning_validator_functions.cpp.o: in function `PlanningValidatorTestSuite_checkValidFiniteValueFunction_Test::TestBody()': test_planning_validator_functions.cpp:(.text+0xa4): undefined reference to `autoware::planning_validator::PlanningValidator::PlanningValidator(rclcpp::NodeOptions const&)' /usr/bin/ld: test_planning_validator_functions.cpp:(.text+0xf0): undefined reference to `autoware::planning_validator::PlanningValidator::checkValidFiniteValue(autoware_planning_msgs::msg::Trajectory_<std::allocator<void> > const&)' /usr/bin/ld: test_planning_validator_functions.cpp:(.text+0x120): undefined reference to `autoware::planning_validator::PlanningValidator::checkValidFiniteValue(autoware_planning_msgs::msg::Trajectory_<std::allocator<void> > const&)' /usr/bin/ld: test_planning_validator_functions.cpp:(.text+0x153): undefined reference to `autoware::planning_validator::PlanningValidator::checkValidFiniteValue(autoware_planning_msgs::msg::Trajectory_<std::allocator<void> > const&)' /usr/bin/ld: CMakeFiles/test_autoware_planning_validator.dir/test/src/test_planning_validator_functions.cpp.o: in function `PlanningValidatorTestSuite_checkValidIntervalFunction_Test::TestBody()': test_planning_validator_functions.cpp:(.text+0x4f9): undefined reference to `autoware::planning_validator::PlanningValidator::PlanningValidator(rclcpp::NodeOptions const&)' /usr/bin/ld: test_planning_validator_functions.cpp:(.text+0x549): undefined reference to `autoware::planning_validator::PlanningValidator::checkValidInterval(autoware_planning_msgs::msg::Trajectory_<std::allocator<void> > const&)' /usr/bin/ld: test_planning_validator_functions.cpp:(.text+0x59b): undefined reference to `autoware::planning_validator::PlanningValidator::checkValidInterval(autoware_planning_msgs::msg::Trajectory_<std::allocator<void> > const&)' /usr/bin/ld: test_planning_validator_functions.cpp:(.text+0x5e0): undefined reference to `autoware::planning_validator::PlanningValidator::checkValidInterval(autoware_planning_msgs::msg::Trajectory_<std::allocator<void> > const&)' /usr/bin/ld: test_planning_validator_functions.cpp:(.text+0x638): undefined reference to `autoware::planning_validator::PlanningValidator::checkValidInterval(autoware_planning_msgs::msg::Trajectory_<std::allocator<void> > const&)' /usr/bin/ld: CMakeFiles/test_autoware_planning_validator.dir/test/src/test_planning_validator_functions.cpp.o: in function `PlanningValidatorTestSuite_checkValidCurvatureFunction_Test::TestBody()': test_planning_validator_functions.cpp:(.text+0xb24): undefined reference to `autoware::planning_validator::PlanningValidator::PlanningValidator(rclcpp::NodeOptions const&)' /usr/bin/ld: test_planning_validator_functions.cpp:(.text+0xb70): undefined reference to `autoware::planning_validator::PlanningValidator::checkValidCurvature(autoware_planning_msgs::msg::Trajectory_<std::allocator<void> > const&)' /usr/bin/ld: CMakeFiles/test_autoware_planning_validator.dir/test/src/test_planning_validator_functions.cpp.o: in function `PlanningValidatorTestSuite_checkValidRelativeAngleFunction_Test::TestBody()': test_planning_validator_functions.cpp:(.text+0xde7): undefined reference to `autoware::planning_validator::PlanningValidator::PlanningValidator(rclcpp::NodeOptions const&)' /usr/bin/ld: test_planning_validator_functions.cpp:(.text+0xe64): undefined reference to `autoware::planning_validator::PlanningValidator::checkValidRelativeAngle(autoware_planning_msgs::msg::Trajectory_<std::allocator<void> > const&)' /usr/bin/ld: test_planning_validator_functions.cpp:(.text+0xec5): undefined reference to `autoware::planning_validator::PlanningValidator::checkValidRelativeAngle(autoware_planning_msgs::msg::Trajectory_<std::allocator<void> > const&)' /usr/bin/ld: test_planning_validator_functions.cpp:(.text+0xf28): undefined reference to `autoware::planning_validator::PlanningValidator::checkValidRelativeAngle(autoware_planning_msgs::msg::Trajectory_<std::allocator<void> > const&)' /usr/bin/ld: test_planning_validator_functions.cpp:(.text+0xfef): undefined reference to `autoware::planning_validator::PlanningValidator::checkValidRelativeAngle(autoware_planning_msgs::msg::Trajectory_<std::allocator<void> > const&)' /usr/bin/ld: CMakeFiles/test_autoware_planning_validator.dir/test/src/test_planning_validator_functions.cpp.o: in function `PlanningValidatorTestSuite_checkValidLateralJerkFunction_Test::TestBody()': test_planning_validator_functions.cpp:(.text+0x14b9): undefined reference to `autoware::planning_validator::PlanningValidator::PlanningValidator(rclcpp::NodeOptions const&)' /usr/bin/ld: test_planning_validator_functions.cpp:(.text+0x150a): undefined reference to `autoware::planning_validator::PlanningValidator::checkValidLateralJerk(autoware_planning_msgs::msg::Trajectory_<std::allocator<void> > const&)' /usr/bin/ld: test_planning_validator_functions.cpp:(.text+0x15ea): undefined reference to `autoware::planning_validator::PlanningValidator::checkValidLateralJerk(autoware_planning_msgs::msg::Trajectory_<std::allocator<void> > const&)' /usr/bin/ld: test_planning_validator_functions.cpp:(.text+0x1662): undefined reference to `autoware::planning_validator::PlanningValidator::checkValidLateralJerk(autoware_planning_msgs::msg::Trajectory_<std::allocator<void> > const&)' /usr/bin/ld: test_planning_validator_functions.cpp:(.text+0x17f5): undefined reference to `autoware::planning_validator::PlanningValidator::checkValidLateralJerk(autoware_planning_msgs::msg::Trajectory_<std::allocator<void> > const&)' /usr/bin/ld: CMakeFiles/test_autoware_planning_validator.dir/test/src/test_planning_validator_functions.cpp.o: in function `PlanningValidatorTestSuite_checkTrajectoryShiftFunction_Test::TestBody()': test_planning_validator_functions.cpp:(.text+0x1d2b): undefined reference to `autoware::planning_validator::PlanningValidator::PlanningValidator(rclcpp::NodeOptions const&)' /usr/bin/ld: test_planning_validator_functions.cpp:(.text+0x1dda): undefined reference to `autoware::planning_validator::PlanningValidator::checkTrajectoryShift(autoware_planning_msgs::msg::Trajectory_<std::allocator<void> > const&, autoware_planning_msgs::msg::Trajectory_<std::allocator<void> > const&, geometry_msgs::msg::Pose_<std::allocator<void> > const&)' /usr/bin/ld: test_planning_validator_functions.cpp:(.text+0x1e2a): undefined reference to `autoware::planning_validator::PlanningValidator::checkTrajectoryShift(autoware_planning_msgs::msg::Trajectory_<std::allocator<void> > const&, autoware_planning_msgs::msg::Trajectory_<std::allocator<void> > const&, geometry_msgs::msg::Pose_<std::allocator<void> > const&)' /usr/bin/ld: test_planning_validator_functions.cpp:(.text+0x1e77): undefined reference to `autoware::planning_validator::PlanningValidator::checkTrajectoryShift(autoware_planning_msgs::msg::Trajectory_<std::allocator<void> > const&, autoware_planning_msgs::msg::Trajectory_<std::allocator<void> > const&, geometry_msgs::msg::Pose_<std::allocator<void> > const&)' /usr/bin/ld: test_planning_validator_functions.cpp:(.text+0x1ec6): undefined reference to `autoware::planning_validator::PlanningValidator::checkTrajectoryShift(autoware_planning_msgs::msg::Trajectory_<std::allocator<void> > const&, autoware_planning_msgs::msg::Trajectory_<std::allocator<void> > const&, geometry_msgs::msg::Pose_<std::allocator<void> > const&)' /usr/bin/ld: CMakeFiles/test_autoware_planning_validator.dir/test/src/test_planning_validator_pubsub.cpp.o: in function `prepareTest(autoware_planning_msgs::msg::Trajectory_<std::allocator<void> > const&, nav_msgs::msg::Odometry_<std::allocator<void> > const&, geometry_msgs::msg::AccelWithCovarianceStamped_<std::allocator<void> > const&)': test_planning_validator_pubsub.cpp:(.text+0x3164): undefined reference to `autoware::planning_validator::PlanningValidator::PlanningValidator(rclcpp::NodeOptions const&)' /usr/bin/ld: CMakeFiles/test_autoware_planning_validator.dir/test/src/test_planning_validator_node_interface.cpp.o: in function `generateNode()': test_planning_validator_node_interface.cpp:(.text+0x14d5): undefined reference to `autoware::planning_validator::PlanningValidator::PlanningValidator(rclcpp::NodeOptions const&)' collect2: error: ld returned 1 exit status gmake[2]: *** [CMakeFiles/test_autoware_planning_validator.dir/build.make:736:test_autoware_planning_validator] 错误 1 gmake[1]: *** [CMakeFiles/Makefile2:761:CMakeFiles/test_autoware_planning_validator.dir/all] 错误 2 gmake: *** [Makefile:146:all] 错误 2 --- Failed <<< autoware_planning_validator [54.8s, exited with code 2] Summary: 400 packages finished [12min 14s] 13 packages failed: autoware_behavior_path_goal_planner_module autoware_costmap_generator autoware_cuda_pointcloud_preprocessor autoware_dummy_perception_publisher autoware_lidar_centerpoint autoware_lidar_transfusion autoware_obstacle_cruise_planner autoware_planning_validator autoware_probabilistic_occupancy_grid_map autoware_tensorrt_plugins autoware_tensorrt_yolox bevdet_vendor trt_batched_nms 393 packages had stderr output: agnocast_e2e_test agnocast_ioctl_wrapper agnocast_sample_application agnocast_sample_interfaces agnocastlib astra_camera astra_camera_msgs autoware_accel_brake_map_calibrator autoware_adapi_adaptors autoware_adapi_specs autoware_adapi_v1_msgs autoware_adapi_version_msgs autoware_agnocast_wrapper autoware_ar_tag_based_localizer autoware_auto_common autoware_automatic_pose_initializer autoware_autonomous_emergency_braking autoware_bag_time_manager_rviz_plugin autoware_behavior_path_avoidance_by_lane_change_module autoware_behavior_path_dynamic_obstacle_avoidance_module autoware_behavior_path_external_request_lane_change_module autoware_behavior_path_goal_planner_module autoware_behavior_path_lane_change_module autoware_behavior_path_planner autoware_behavior_path_planner_common autoware_behavior_path_sampling_planner_module autoware_behavior_path_side_shift_module autoware_behavior_path_start_planner_module autoware_behavior_path_static_obstacle_avoidance_module autoware_behavior_velocity_blind_spot_module autoware_behavior_velocity_crosswalk_module autoware_behavior_velocity_detection_area_module autoware_behavior_velocity_intersection_module autoware_behavior_velocity_no_drivable_lane_module autoware_behavior_velocity_no_stopping_area_module autoware_behavior_velocity_occlusion_spot_module autoware_behavior_velocity_planner autoware_behavior_velocity_planner_common autoware_behavior_velocity_rtc_interface autoware_behavior_velocity_run_out_module autoware_behavior_velocity_speed_bump_module autoware_behavior_velocity_stop_line_module autoware_behavior_velocity_template_module autoware_behavior_velocity_traffic_light_module autoware_behavior_velocity_virtual_traffic_light_module autoware_behavior_velocity_walkway_module autoware_bezier_sampler autoware_bluetooth_monitor autoware_boundary_departure_checker autoware_bytetrack autoware_cluster_merger autoware_collision_detector autoware_compare_map_segmentation autoware_component_interface_specs autoware_component_interface_specs_universe autoware_component_interface_tools autoware_component_interface_utils autoware_component_monitor autoware_component_state_monitor autoware_control_evaluator autoware_control_msgs autoware_control_performance_analysis autoware_control_validator autoware_core autoware_core_control autoware_core_localization autoware_core_map autoware_core_perception autoware_core_planning autoware_core_sensing autoware_core_vehicle autoware_costmap_generator autoware_crop_box_filter autoware_crosswalk_traffic_light_estimator autoware_cuda_pointcloud_preprocessor autoware_cuda_utils autoware_default_adapi autoware_detected_object_feature_remover autoware_diagnostic_graph_aggregator autoware_diagnostic_graph_utils autoware_dummy_diag_publisher autoware_dummy_infrastructure autoware_dummy_perception_publisher autoware_duplicated_node_checker autoware_ekf_localizer autoware_elevation_map_loader autoware_euclidean_cluster autoware_euclidean_cluster_object_detector autoware_external_api_msgs autoware_external_cmd_converter autoware_external_cmd_selector autoware_external_velocity_limit_selector autoware_fake_test_node autoware_fault_injection autoware_freespace_planner autoware_freespace_planning_algorithms autoware_frenet_planner autoware_geo_pose_projector autoware_geography_utils autoware_global_parameter_loader autoware_glog_component autoware_gnss_poser autoware_goal_distance_calculator autoware_grid_map_utils autoware_ground_filter autoware_ground_segmentation autoware_gyro_odometer autoware_hazard_status_converter autoware_image_diagnostics autoware_image_transport_decompressor autoware_imu_corrector autoware_internal_localization_msgs autoware_interpolation autoware_iv_external_api_adaptor autoware_iv_internal_api_adaptor autoware_joy_controller autoware_kalman_filter autoware_kinematic_evaluator autoware_landmark_manager autoware_lane_departure_checker autoware_lanelet2_extension autoware_lanelet2_extension_python autoware_lanelet2_map_visualizer autoware_lanelet2_utils autoware_learning_based_vehicle_model autoware_lidar_centerpoint autoware_lidar_marker_localizer autoware_lidar_transfusion autoware_livox_tag_filter autoware_localization_error_monitor autoware_localization_evaluator autoware_localization_msgs autoware_localization_rviz_plugin autoware_localization_util autoware_map_based_prediction autoware_map_height_fitter autoware_map_loader autoware_map_msgs autoware_map_projection_loader autoware_map_tf_generator autoware_mission_details_overlay_rviz_plugin autoware_mission_planner autoware_mission_planner_universe autoware_motion_utils autoware_motion_velocity_dynamic_obstacle_stop_module autoware_motion_velocity_obstacle_cruise_module autoware_motion_velocity_obstacle_slow_down_module autoware_motion_velocity_obstacle_stop_module autoware_motion_velocity_obstacle_velocity_limiter_module autoware_motion_velocity_out_of_lane_module autoware_motion_velocity_planner autoware_motion_velocity_planner_common autoware_motion_velocity_run_out_module autoware_mpc_lateral_controller autoware_mrm_comfortable_stop_operator autoware_mrm_emergency_stop_operator autoware_mrm_handler autoware_msgs autoware_multi_object_tracker autoware_ndt_scan_matcher autoware_node autoware_object_merger autoware_object_range_splitter autoware_object_recognition_utils autoware_object_velocity_splitter autoware_objects_of_interest_marker_interface autoware_obstacle_collision_checker autoware_obstacle_cruise_planner autoware_obstacle_stop_planner autoware_occupancy_grid_map_outlier_filter autoware_operation_mode_transition_manager autoware_osqp_interface autoware_overlay_rviz_plugin autoware_path_distance_calculator autoware_path_generator autoware_path_optimizer autoware_path_sampler autoware_path_smoother autoware_pcl_extensions autoware_perception_objects_converter autoware_perception_online_evaluator autoware_perception_rviz_plugin autoware_pid_longitudinal_controller autoware_planning_evaluator autoware_planning_factor_interface autoware_planning_rviz_plugin autoware_planning_test_manager autoware_planning_topic_converter autoware_planning_validator autoware_point_types autoware_pointcloud_preprocessor autoware_polar_grid autoware_pose2twist autoware_pose_covariance_modifier autoware_pose_estimator_arbiter autoware_pose_initializer autoware_pose_instability_detector autoware_predicted_path_checker autoware_probabilistic_occupancy_grid_map autoware_processing_time_checker autoware_pure_pursuit autoware_pyplot autoware_qp_interface autoware_radar_crossing_objects_noise_filter autoware_radar_fusion_to_detected_object autoware_radar_object_clustering autoware_radar_object_tracker autoware_radar_objects_adapter autoware_radar_scan_to_pointcloud2 autoware_radar_static_pointcloud_filter autoware_radar_threshold_filter autoware_radar_tracks_msgs_converter autoware_radar_tracks_noise_filter autoware_raw_vehicle_cmd_converter autoware_remaining_distance_time_calculator autoware_route_handler autoware_rtc_interface autoware_sampler_common autoware_scenario_selector autoware_scenario_simulator_v2_adapter autoware_sensing_msgs autoware_shape_estimation autoware_shift_decider autoware_signal_processing autoware_simple_object_merger autoware_simple_planning_simulator autoware_simple_pure_pursuit autoware_smart_mpc_trajectory_follower autoware_steer_offset_estimator autoware_stop_filter autoware_string_stamped_rviz_plugin autoware_surround_obstacle_checker autoware_system_diagnostic_monitor autoware_system_monitor autoware_system_msgs autoware_tensorrt_classifier autoware_tensorrt_plugins autoware_tensorrt_yolox autoware_test_node autoware_test_utils autoware_testing autoware_time_utils autoware_topic_relay_controller autoware_topic_state_monitor autoware_tracking_object_merger autoware_traffic_light_arbiter autoware_traffic_light_category_merger autoware_traffic_light_map_based_detector autoware_traffic_light_multi_camera_fusion autoware_traffic_light_occlusion_predictor autoware_traffic_light_recognition_marker_publisher autoware_traffic_light_selector autoware_traffic_light_utils autoware_traffic_light_visualization autoware_trajectory autoware_trajectory_follower_base autoware_trajectory_follower_node autoware_twist2accel autoware_universe_utils autoware_utils autoware_utils_debug autoware_utils_diagnostics autoware_utils_geometry autoware_utils_logging autoware_utils_math autoware_utils_pcl autoware_utils_rclcpp autoware_utils_system autoware_utils_tf autoware_utils_uuid autoware_utils_visualization autoware_v2x_msgs autoware_vehicle_cmd_gate autoware_vehicle_door_simulator autoware_vehicle_info_utils autoware_vehicle_msgs autoware_vehicle_velocity_converter autoware_velocity_smoother autoware_velodyne_monitor awapi_awiv_adapter awsim_labs_sensor_kit_description awsim_labs_sensor_kit_launch awsim_labs_vehicle_description awsim_labs_vehicle_launch awsim_sensor_kit_description awsim_sensor_kit_launch bevdet_vendor boost_io_context boost_serial_driver boost_tcp_driver boost_udp_driver camera_description can_bridge can_msgs cartop common_awsim_labs_sensor_launch common_sensor_launch continental_msgs continental_srvs cubtek_can cubtek_can_msgs cubtek_radar_adapter cuda_blackboard demo_cpp_tf dummy_status_publisher eagleye_coordinate eagleye_fix2kml eagleye_geo_pose_converter eagleye_geo_pose_fusion eagleye_gnss_converter eagleye_msgs eagleye_navigation eagleye_rt eagleye_tf glog imu_description imu_release livox_description llh_converter managed_transform_buffer morai_msgs mussp nebula_common nebula_decoders nebula_examples nebula_hw_interfaces nebula_msgs nebula_ros nebula_sensor_driver nebula_tests negotiated_examples pandar_description pandar_msgs perception_utils pointcloud_to_laserscan radar_description robosense_msgs ros2_wit_imu rtklib_bridge rtklib_msgs sample_sensor_kit_description sample_sensor_kit_launch sample_vehicle_description sample_vehicle_launch seyond single_lidar_common_launch single_lidar_sensor_kit_description single_lidar_sensor_kit_launch tier4_adapi_rviz_plugin tier4_api_msgs tier4_api_utils tier4_auto_msgs_converter tier4_autoware_api_launch tier4_camera_view_rviz_plugin tier4_control_launch tier4_control_msgs tier4_datetime_rviz_plugin tier4_debug_msgs tier4_deprecated_api_adapter tier4_dummy_object_rviz_plugin tier4_external_api_msgs tier4_hmi_msgs tier4_localization_launch tier4_localization_msgs tier4_localization_rviz_plugin tier4_map_launch tier4_map_msgs tier4_metric_msgs tier4_perception_msgs tier4_planning_factor_rviz_plugin tier4_planning_msgs tier4_rtc_msgs tier4_sensing_launch tier4_simulation_msgs tier4_state_rviz_plugin tier4_system_launch tier4_system_msgs tier4_system_rviz_plugin tier4_traffic_light_rviz_plugin tier4_v2x_msgs tier4_vehicle_launch tier4_vehicle_msgs tier4_vehicle_rviz_plugin tmlidar_msg tmlidar_sdk trt_batched_nms velodyne_description vls_description yabloc_common yabloc_image_processing yabloc_monitor yabloc_particle_filter yabloc_pose_initializer 11 packages not processed zy@zy-Lenovo-Legion-R7000P2020H:~/autoware$
最新发布
08-30
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值