Skip to content

Commit ab8383b

Browse files
authored
Merge branch 'main' into feat/freespace_astar_python
2 parents fc0085b + 9530c8a commit ab8383b

File tree

65 files changed

+4018
-1314
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

65 files changed

+4018
-1314
lines changed

.cspell-partial.json

+1-1
Original file line numberDiff line numberDiff line change
@@ -5,5 +5,5 @@
55
"perception/bytetrack/lib/**"
66
],
77
"ignoreRegExpList": [],
8-
"words": ["dltype", "tvmgen", "quantizer", "imageio", "mimsave"]
8+
"words": ["dltype", "tvmgen"]
99
}

.github/CODEOWNERS

+4-4
Original file line numberDiff line numberDiff line change
@@ -67,7 +67,7 @@ control/lane_departure_checker/** kyoichi.sugahara@tier4.jp makoto.kurihara@tier
6767
control/mpc_lateral_controller/** takamasa.horibe@tier4.jp takayuki.murooka@tier4.jp
6868
control/obstacle_collision_checker/** fumiya.watanabe@tier4.jp satoshi.ota@tier4.jp shumpei.wakabayashi@tier4.jp taiki.tanaka@tier4.jp takamasa.horibe@tier4.jp takayuki.murooka@tier4.jp tomoya.kimura@tier4.jp
6969
control/operation_mode_transition_manager/** takamasa.horibe@tier4.jp tomoya.kimura@tier4.jp
70-
control/pid_longitudinal_controller/** takamasa.horibe@tier4.jp takayuki.murooka@tier4.jp
70+
control/pid_longitudinal_controller/** mamoru.sobue@tier4.jp takamasa.horibe@tier4.jp takayuki.murooka@tier4.jp
7171
control/predicted_path_checker/** berkay@leodrive.ai
7272
control/pure_pursuit/** takamasa.horibe@tier4.jp
7373
control/shift_decider/** takamasa.horibe@tier4.jp
@@ -113,7 +113,7 @@ map/map_height_fitter/** anh.nguyen.2@tier4.jp isamu.takagi@tier4.jp kento.yabuu
113113
map/map_loader/** anh.nguyen.2@tier4.jp kento.yabuuchi.2@tier4.jp koji.minoda@tier4.jp masahiro.sakamoto@tier4.jp ryohsuke.mitsudome@tier4.jp ryu.yamamoto@tier4.jp shintaro.sakoda@tier4.jp taiki.yamada@tier4.jp yamato.ando@tier4.jp
114114
map/map_projection_loader/** anh.nguyen.2@tier4.jp kento.yabuuchi.2@tier4.jp koji.minoda@tier4.jp masahiro.sakamoto@tier4.jp ryu.yamamoto@tier4.jp shintaro.sakoda@tier4.jp taiki.yamada@tier4.jp yamato.ando@tier4.jp
115115
map/map_tf_generator/** anh.nguyen.2@tier4.jp kento.yabuuchi.2@tier4.jp masahiro.sakamoto@tier4.jp ryu.yamamoto@tier4.jp shintaro.sakoda@tier4.jp taiki.yamada@tier4.jp yamato.ando@tier4.jp
116-
map/util/lanelet2_map_preprocessor/** ryohsuke.mitsudome@tier4.jp
116+
map/util/lanelet2_map_preprocessor/** anh.nguyen.2@tier4.jp kento.yabuuchi.2@tier4.jp masahiro.sakamoto@tier4.jp ryohsuke.mitsudome@tier4.jp ryu.yamamoto@tier4.jp shintaro.sakoda@tier4.jp taiki.yamada@tier4.jp yamato.ando@tier4.jp
117117
perception/bytetrack/** manato.hirabayashi@tier4.jp
118118
perception/cluster_merger/** dai.nguyen@tier4.jp shunsuke.miura@tier4.jp yukihiro.saito@tier4.jp
119119
perception/compare_map_segmentation/** abrahammonrroy@yahoo.com dai.nguyen@tier4.jp yukihiro.saito@tier4.jp
@@ -159,7 +159,7 @@ planning/behavior_path_avoidance_module/** fumiya.watanabe@tier4.jp kyoichi.suga
159159
planning/behavior_path_dynamic_avoidance_module/** kosuke.takeuchi@tier4.jp satoshi.ota@tier4.jp takayuki.murooka@tier4.jp yuki.takagi@tier4.jp
160160
planning/behavior_path_external_request_lane_change_module/** fumiya.watanabe@tier4.jp kosuke.takeuchi@tier4.jp shumpei.wakabayashi@tier4.jp tomohito.ando@tier4.jp tomoya.kimura@tier4.jp zulfaqar.azmi@tier4.jp
161161
planning/behavior_path_goal_planner_module/** daniel.sanchez@tier4.jp kosuke.takeuchi@tier4.jp kyoichi.sugahara@tier4.jp mamoru.sobue@tier4.jp satoshi.ota@tier4.jp shumpei.wakabayashi@tier4.jp tomohito.ando@tier4.jp tomoya.kimura@tier4.jp
162-
planning/behavior_path_lane_change_module/** fumiya.watanabe@tier4.jp kosuke.takeuchi@tier4.jp shumpei.wakabayashi@tier4.jp tomohito.ando@tier4.jp tomoya.kimura@tier4.jp zulfaqar.azmi@tier4.jp
162+
planning/behavior_path_lane_change_module/** fumiya.watanabe@tier4.jp kosuke.takeuchi@tier4.jp satoshi.ota@tier4.jp shumpei.wakabayashi@tier4.jp tomohito.ando@tier4.jp tomoya.kimura@tier4.jp zulfaqar.azmi@tier4.jp
163163
planning/behavior_path_planner/** fumiya.watanabe@tier4.jp kosuke.takeuchi@tier4.jp kyoichi.sugahara@tier4.jp satoshi.ota@tier4.jp shumpei.wakabayashi@tier4.jp takamasa.horibe@tier4.jp takayuki.murooka@tier4.jp tomohito.ando@tier4.jp tomoya.kimura@tier4.jp zulfaqar.azmi@tier4.jp
164164
planning/behavior_path_planner_common/** daniel.sanchez@tier4.jp fumiya.watanabe@tier4.jp kosuke.takeuchi@tier4.jp mamoru.sobue@tier4.jp maxime.clement@tier4.jp satoshi.ota@tier4.jp shumpei.wakabayashi@tier4.jp takamasa.horibe@tier4.jp takayuki.murooka@tier4.jp tomoya.kimura@tier4.jp zulfaqar.azmi@tier4.jp
165165
planning/behavior_path_sampling_planner_module/** daniel.sanchez@tier4.jp maxime.clement@tier4.jp
@@ -235,7 +235,7 @@ system/diagnostic_graph_aggregator/** isamu.takagi@tier4.jp
235235
system/dummy_diag_publisher/** fumihito.ito@tier4.jp tetsuhiro.kawaguchi@tier4.jp
236236
system/dummy_infrastructure/** ryohsuke.mitsudome@tier4.jp
237237
system/duplicated_node_checker/** shumpei.wakabayashi@tier4.jp uken.ryu@tier4.jp
238-
system/emergency_handler/** makoto.kurihara@tier4.jp
238+
system/emergency_handler/** makoto.kurihara@tier4.jp ryuta.kambe@tier4.jp tetsuhiro.kawaguchi@tier4.jp
239239
system/mrm_comfortable_stop_operator/** makoto.kurihara@tier4.jp tomohito.ando@tier4.jp
240240
system/mrm_emergency_stop_operator/** makoto.kurihara@tier4.jp tomohito.ando@tier4.jp
241241
system/system_error_monitor/** fumihito.ito@tier4.jp

launch/tier4_control_launch/launch/control.launch.py

+30-19
Original file line numberDiff line numberDiff line change
@@ -116,23 +116,6 @@ def launch_setup(context, *args, **kwargs):
116116
parameters=[nearest_search_param, lane_departure_checker_param, vehicle_info_param],
117117
extra_arguments=[{"use_intra_process_comms": LaunchConfiguration("use_intra_process")}],
118118
)
119-
# control validator checker
120-
control_validator_component = ComposableNode(
121-
package="control_validator",
122-
plugin="control_validator::ControlValidator",
123-
name="control_validator",
124-
remappings=[
125-
("~/input/kinematics", "/localization/kinematic_state"),
126-
("~/input/reference_trajectory", "/planning/scenario_planning/trajectory"),
127-
(
128-
"~/input/predicted_trajectory",
129-
"/control/trajectory_follower/lateral/predicted_trajectory",
130-
),
131-
("~/output/validation_status", "~/validation_status"),
132-
],
133-
parameters=[control_validator_param],
134-
extra_arguments=[{"use_intra_process_comms": LaunchConfiguration("use_intra_process")}],
135-
)
136119

137120
# shift decider
138121
shift_decider_component = ComposableNode(
@@ -351,7 +334,6 @@ def launch_setup(context, *args, **kwargs):
351334
executable=LaunchConfiguration("container_executable"),
352335
composable_node_descriptions=[
353336
controller_component,
354-
control_validator_component,
355337
lane_departure_component,
356338
shift_decider_component,
357339
vehicle_cmd_gate_component,
@@ -360,6 +342,23 @@ def launch_setup(context, *args, **kwargs):
360342
],
361343
)
362344

345+
# control validator checker
346+
control_validator_component = ComposableNode(
347+
package="control_validator",
348+
plugin="control_validator::ControlValidator",
349+
name="control_validator",
350+
remappings=[
351+
("~/input/kinematics", "/localization/kinematic_state"),
352+
("~/input/reference_trajectory", "/planning/scenario_planning/trajectory"),
353+
(
354+
"~/input/predicted_trajectory",
355+
"/control/trajectory_follower/lateral/predicted_trajectory",
356+
),
357+
("~/output/validation_status", "~/validation_status"),
358+
],
359+
parameters=[control_validator_param],
360+
)
361+
363362
group = GroupAction(
364363
[
365364
PushRosNamespace("control"),
@@ -372,7 +371,19 @@ def launch_setup(context, *args, **kwargs):
372371
]
373372
)
374373

375-
return [group]
374+
control_validator_group = GroupAction(
375+
[
376+
PushRosNamespace("control"),
377+
ComposableNodeContainer(
378+
name="control_validator_container",
379+
namespace="",
380+
package="rclcpp_components",
381+
executable=LaunchConfiguration("container_executable"),
382+
composable_node_descriptions=[control_validator_component, glog_component],
383+
),
384+
]
385+
)
386+
return [group, control_validator_group]
376387

377388

378389
def generate_launch_description():

launch/tier4_perception_launch/launch/object_recognition/detection/detector/camera_lidar_detector.launch.xml

+33-30
Original file line numberDiff line numberDiff line change
@@ -117,36 +117,39 @@
117117

118118
<!-- roi based clustering -->
119119
<group>
120-
<include file="$(find-pkg-share image_projection_based_fusion)/launch/roi_pointcloud_fusion.launch.xml" if="$(var use_roi_based_cluster)">
121-
<arg name="input/camera_info0" value="$(var camera_info0)"/>
122-
<arg name="input/rois0" value="$(var detection_rois0)"/>
123-
<arg name="input/camera_info1" value="$(var camera_info1)"/>
124-
<arg name="input/rois1" value="$(var detection_rois1)"/>
125-
<arg name="input/camera_info2" value="$(var camera_info2)"/>
126-
<arg name="input/rois2" value="$(var detection_rois2)"/>
127-
<arg name="input/camera_info3" value="$(var camera_info3)"/>
128-
<arg name="input/rois3" value="$(var detection_rois3)"/>
129-
<arg name="input/camera_info4" value="$(var camera_info4)"/>
130-
<arg name="input/rois4" value="$(var detection_rois4)"/>
131-
<arg name="input/camera_info5" value="$(var camera_info5)"/>
132-
<arg name="input/rois5" value="$(var detection_rois5)"/>
133-
<arg name="input/camera_info6" value="$(var camera_info6)"/>
134-
<arg name="input/rois6" value="$(var detection_rois6)"/>
135-
<arg name="input/camera_info7" value="$(var camera_info7)"/>
136-
<arg name="input/rois7" value="$(var detection_rois7)"/>
137-
<arg name="input/rois_number" value="$(var image_number)"/>
138-
<arg name="input/image0" value="$(var image_raw0)"/>
139-
<arg name="input/image1" value="$(var image_raw1)"/>
140-
<arg name="input/image2" value="$(var image_raw2)"/>
141-
<arg name="input/image3" value="$(var image_raw3)"/>
142-
<arg name="input/image4" value="$(var image_raw4)"/>
143-
<arg name="input/image5" value="$(var image_raw5)"/>
144-
<arg name="input/image6" value="$(var image_raw6)"/>
145-
<arg name="input/image7" value="$(var image_raw7)"/>
146-
<arg name="input/pointcloud" value="/perception/object_recognition/detection/pointcloud_map_filtered/pointcloud"/>
147-
<arg name="output_clusters" value="roi_cluster/clusters"/>
148-
<arg name="param_path" value="$(var roi_pointcloud_fusion_param_path)"/>
149-
</include>
120+
<push-ros-namespace namespace="roi_cluster"/>
121+
<group>
122+
<include file="$(find-pkg-share image_projection_based_fusion)/launch/roi_pointcloud_fusion.launch.xml" if="$(var use_roi_based_cluster)">
123+
<arg name="input/camera_info0" value="$(var camera_info0)"/>
124+
<arg name="input/rois0" value="$(var detection_rois0)"/>
125+
<arg name="input/camera_info1" value="$(var camera_info1)"/>
126+
<arg name="input/rois1" value="$(var detection_rois1)"/>
127+
<arg name="input/camera_info2" value="$(var camera_info2)"/>
128+
<arg name="input/rois2" value="$(var detection_rois2)"/>
129+
<arg name="input/camera_info3" value="$(var camera_info3)"/>
130+
<arg name="input/rois3" value="$(var detection_rois3)"/>
131+
<arg name="input/camera_info4" value="$(var camera_info4)"/>
132+
<arg name="input/rois4" value="$(var detection_rois4)"/>
133+
<arg name="input/camera_info5" value="$(var camera_info5)"/>
134+
<arg name="input/rois5" value="$(var detection_rois5)"/>
135+
<arg name="input/camera_info6" value="$(var camera_info6)"/>
136+
<arg name="input/rois6" value="$(var detection_rois6)"/>
137+
<arg name="input/camera_info7" value="$(var camera_info7)"/>
138+
<arg name="input/rois7" value="$(var detection_rois7)"/>
139+
<arg name="input/rois_number" value="$(var image_number)"/>
140+
<arg name="input/image0" value="$(var image_raw0)"/>
141+
<arg name="input/image1" value="$(var image_raw1)"/>
142+
<arg name="input/image2" value="$(var image_raw2)"/>
143+
<arg name="input/image3" value="$(var image_raw3)"/>
144+
<arg name="input/image4" value="$(var image_raw4)"/>
145+
<arg name="input/image5" value="$(var image_raw5)"/>
146+
<arg name="input/image6" value="$(var image_raw6)"/>
147+
<arg name="input/image7" value="$(var image_raw7)"/>
148+
<arg name="input/pointcloud" value="/perception/object_recognition/detection/pointcloud_map_filtered/pointcloud"/>
149+
<arg name="output_clusters" value="clusters"/>
150+
<arg name="param_path" value="$(var roi_pointcloud_fusion_param_path)"/>
151+
</include>
152+
</group>
150153
</group>
151154

152155
<!-- simple_cluster_merger -->

localization/pose_instability_detector/config/pose_instability_detector.param.yaml

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
/**:
22
ros__parameters:
3-
interval_sec: 1.0 # [sec]
3+
interval_sec: 0.5 # [sec]
44
threshold_diff_position_x: 1.0 # [m]
55
threshold_diff_position_y: 1.0 # [m]
66
threshold_diff_position_z: 1.0 # [m]

localization/pose_instability_detector/schema/pose_instability_detector.schema.json

+1-1
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88
"properties": {
99
"interval_sec": {
1010
"type": "number",
11-
"default": 1.0,
11+
"default": 0.5,
1212
"exclusiveMinimum": 0,
1313
"description": "The interval of timer_callback in seconds."
1414
},

perception/bytetrack/README.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@ the number of false negatives is expected to decrease by using it.
2525
The paper just says that the 2d tracking algorithm is a simple Kalman filter.
2626
Original codes use the `top-left-corner` and `aspect ratio` and `size` as the state vector.
2727

28-
This is sometimes unstable because the aspectratio can be changed by the occlusion.
28+
This is sometimes unstable because the aspect ratio can be changed by the occlusion.
2929
So, we use the `top-left` and `size` as the state vector.
3030

3131
Kalman filter settings can be controlled by the parameters in `config/bytetrack_node.param.yaml`.

perception/bytetrack/lib/include/data_type.h

+1-1
Original file line numberDiff line numberDiff line change
@@ -50,7 +50,7 @@ typedef Eigen::Matrix<float, 1, 128, Eigen::RowMajor> FEATURE;
5050
typedef Eigen::Matrix<float, Eigen::Dynamic, 128, Eigen::RowMajor> FEATURESS;
5151
// typedef std::vector<FEATURE> FEATURESS;
5252

53-
// Kalmanfilter
53+
// Kalman Filter
5454
// typedef Eigen::Matrix<float, 8, 8, Eigen::RowMajor> KAL_FILTER;
5555
typedef Eigen::Matrix<float, 1, 8, Eigen::RowMajor> KAL_MEAN;
5656
typedef Eigen::Matrix<float, 8, 8, Eigen::RowMajor> KAL_COVA;

perception/compare_map_segmentation/src/voxel_grid_map_loader.cpp

+4-2
Original file line numberDiff line numberDiff line change
@@ -241,8 +241,10 @@ bool VoxelGridMapLoader::is_in_voxel(
241241
const double dist_x = map->points.at(voxel_index).x - target_point.x;
242242
const double dist_y = map->points.at(voxel_index).y - target_point.y;
243243
const double dist_z = map->points.at(voxel_index).z - target_point.z;
244-
const double sqr_distance = dist_x * dist_x + dist_y * dist_y + dist_z * dist_z;
245-
if (sqr_distance < distance_threshold * distance_threshold * downsize_ratio_z_axis_) {
244+
// check if the point is inside the distance threshold voxel
245+
if (
246+
std::abs(dist_x) < distance_threshold && std::abs(dist_y) < distance_threshold &&
247+
std::abs(dist_z) < distance_threshold * downsize_ratio_z_axis_) {
246248
return true;
247249
}
248250
}

perception/image_projection_based_fusion/src/fusion_node.cpp

+3-2
Original file line numberDiff line numberDiff line change
@@ -132,7 +132,7 @@ FusionNode<Msg, ObjType, Msg2D>::FusionNode(
132132
using tier4_autoware_utils::DebugPublisher;
133133
using tier4_autoware_utils::StopWatch;
134134
stop_watch_ptr_ = std::make_unique<StopWatch<std::chrono::milliseconds>>();
135-
debug_publisher_ = std::make_unique<DebugPublisher>(this, "image_projection_based_fusion");
135+
debug_publisher_ = std::make_unique<DebugPublisher>(this, get_name());
136136
stop_watch_ptr_->tic("cyclic_time");
137137
stop_watch_ptr_->tic("processing_time");
138138
}
@@ -167,7 +167,6 @@ void FusionNode<Msg, Obj, Msg2D>::subCallback(const typename Msg::ConstSharedPtr
167167
timer_->cancel();
168168
postprocess(*(cached_msg_.second));
169169
publish(*(cached_msg_.second));
170-
cached_msg_.second = nullptr;
171170
std::fill(is_fused_.begin(), is_fused_.end(), false);
172171

173172
// add processing time for debug
@@ -187,6 +186,8 @@ void FusionNode<Msg, Obj, Msg2D>::subCallback(const typename Msg::ConstSharedPtr
187186
"debug/pipeline_latency_ms", pipeline_latency_ms);
188187
processing_time_ms = 0;
189188
}
189+
190+
cached_msg_.second = nullptr;
190191
}
191192

192193
std::lock_guard<std::mutex> lock(mutex_cached_msgs_);

perception/map_based_prediction/README.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -193,7 +193,7 @@ If there are a reachable crosswalk entry points within the `prediction_time_hori
193193

194194
This module takes into account the corresponding traffic light information.
195195
When RED signal is indicated, we assume the target object will not walk across.
196-
In additon, if the target object is stopping (not moving) against GREEN signal, we assume the target object will not walk across either.
196+
In addition, if the target object is stopping (not moving) against GREEN signal, we assume the target object will not walk across either.
197197
This prediction comes from the assumption that the object should move if the traffic light is green and the object is intended to cross.
198198

199199
<div align="center">

perception/map_based_prediction/include/map_based_prediction/map_based_prediction_node.hpp

+1-1
Original file line numberDiff line numberDiff line change
@@ -268,7 +268,7 @@ class MapBasedPredictionNode : public rclcpp::Node
268268
const PredictedPath & predicted_path, const std::vector<PredictedPath> & predicted_paths);
269269
std::optional<lanelet::Id> getTrafficSignalId(const lanelet::ConstLanelet & way_lanelet);
270270
std::optional<TrafficSignalElement> getTrafficSignalElement(const lanelet::Id & id);
271-
bool calcIntentionToCrossWithTrafficSgnal(
271+
bool calcIntentionToCrossWithTrafficSignal(
272272
const TrackedObject & object, const lanelet::ConstLanelet & crosswalk,
273273
const lanelet::Id & signal_id);
274274

perception/map_based_prediction/src/map_based_prediction_node.cpp

+2-2
Original file line numberDiff line numberDiff line change
@@ -1240,7 +1240,7 @@ PredictedObject MapBasedPredictionNode::getPredictedObjectAsCrosswalkUser(
12401240
for (const auto & crosswalk : crosswalks_) {
12411241
const auto crosswalk_signal_id_opt = getTrafficSignalId(crosswalk);
12421242
if (crosswalk_signal_id_opt.has_value() && use_crosswalk_signal_) {
1243-
if (!calcIntentionToCrossWithTrafficSgnal(
1243+
if (!calcIntentionToCrossWithTrafficSignal(
12441244
object, crosswalk, crosswalk_signal_id_opt.value())) {
12451245
continue;
12461246
}
@@ -2292,7 +2292,7 @@ std::optional<TrafficSignalElement> MapBasedPredictionNode::getTrafficSignalElem
22922292
return std::nullopt;
22932293
}
22942294

2295-
bool MapBasedPredictionNode::calcIntentionToCrossWithTrafficSgnal(
2295+
bool MapBasedPredictionNode::calcIntentionToCrossWithTrafficSignal(
22962296
const TrackedObject & object, const lanelet::ConstLanelet & crosswalk,
22972297
const lanelet::Id & signal_id)
22982298
{

perception/probabilistic_occupancy_grid_map/test/test_synchronized_grid_map_fusion_node.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -57,7 +57,7 @@ def generate_test_description():
5757
FindPackageShare(PACKAGE_NAME).find(PACKAGE_NAME)
5858
+ "/launch/synchronized_occupancy_grid_map_fusion.launch.xml"
5959
)
60-
# use default launch arguments and parms
60+
# use default launch arguments and params
6161
launch_args = []
6262
# action to include launch file
6363
test_launch_file = launch.actions.IncludeLaunchDescription(

perception/radar_object_tracker/src/tracker/model/constant_turn_rate_motion_tracker.cpp

+9-9
Original file line numberDiff line numberDiff line change
@@ -387,11 +387,11 @@ bool ConstantTurnRateMotionTracker::measureWithPose(
387387
const bool enable_yaw_measurement = trust_yaw_input_ && object_has_orientation;
388388

389389
if (enable_yaw_measurement) {
390-
Eigen::MatrixXd Cyaw = Eigen::MatrixXd::Zero(1, ekf_params_.dim_x);
391-
Cyaw(0, IDX::YAW) = 1;
392-
C_list.push_back(Cyaw);
390+
Eigen::MatrixXd C_yaw = Eigen::MatrixXd::Zero(1, ekf_params_.dim_x);
391+
C_yaw(0, IDX::YAW) = 1;
392+
C_list.push_back(C_yaw);
393393

394-
Eigen::MatrixXd Yyaw = Eigen::MatrixXd::Zero(1, 1);
394+
Eigen::MatrixXd Y_yaw = Eigen::MatrixXd::Zero(1, 1);
395395
const auto yaw = [&] {
396396
auto obj_yaw = tier4_autoware_utils::normalizeRadian(
397397
tf2::getYaw(object.kinematics.pose_with_covariance.pose.orientation));
@@ -404,12 +404,12 @@ bool ConstantTurnRateMotionTracker::measureWithPose(
404404
return obj_yaw;
405405
}();
406406

407-
Yyaw << yaw;
408-
Y_list.push_back(Yyaw);
407+
Y_yaw << yaw;
408+
Y_list.push_back(Y_yaw);
409409

410-
Eigen::MatrixXd Ryaw = Eigen::MatrixXd::Zero(1, 1);
411-
Ryaw << ekf_params_.r_cov_yaw;
412-
R_block_list.push_back(Ryaw);
410+
Eigen::MatrixXd R_yaw = Eigen::MatrixXd::Zero(1, 1);
411+
R_yaw << ekf_params_.r_cov_yaw;
412+
R_block_list.push_back(R_yaw);
413413
}
414414

415415
// 3. add linear velocity measurement
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
/**:
22
ros__parameters:
33
update_rate_hz: 20.0
4+
new_frame_id: "base_link"
45
use_twist_compensation: true
56
use_twist_yaw_compensation: false
67
static_object_speed_threshold: 1.0

perception/tracking_object_merger/src/decorative_tracker_merger.cpp

+1-1
Original file line numberDiff line numberDiff line change
@@ -380,7 +380,7 @@ TrackerState DecorativeTrackerMergerNode::createNewTracker(
380380
const MEASUREMENT_STATE input_index, rclcpp::Time current_time,
381381
const autoware_auto_perception_msgs::msg::TrackedObject & input_object)
382382
{
383-
// check if object id is not included in innner_tracker_objects_
383+
// check if object id is not included in inner_tracker_objects_
384384
for (const auto & object : inner_tracker_objects_) {
385385
if (object.const_uuid_ == input_object.object_id) {
386386
// create new uuid

0 commit comments

Comments
 (0)