Skip to content

Commit 9c2a821

Browse files
committed
feat: add processing time publisher for tracker merger
Signed-off-by: yoshiri <yoshiyoshidetteiu@gmail.com>
1 parent 6dd5561 commit 9c2a821

File tree

2 files changed

+16
-0
lines changed

2 files changed

+16
-0
lines changed

perception/tracking_object_merger/include/tracking_object_merger/decorative_tracker_merger.hpp

+4
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,8 @@
2020
#include "tracking_object_merger/utils/utils.hpp"
2121

2222
#include <rclcpp/rclcpp.hpp>
23+
#include <tier4_autoware_utils/ros/debug_publisher.hpp>
24+
#include <tier4_autoware_utils/system/stop_watch.hpp>
2325

2426
#include <autoware_auto_perception_msgs/msg/tracked_objects.hpp>
2527
#include <std_msgs/msg/header.hpp>
@@ -87,6 +89,8 @@ class DecorativeTrackerMergerNode : public rclcpp::Node
8789
rclcpp::Publisher<autoware_auto_perception_msgs::msg::TrackedObjects>::SharedPtr
8890
debug_object_pub_;
8991
bool publish_interpolated_sub_objects_;
92+
std::unique_ptr<tier4_autoware_utils::StopWatch<std::chrono::milliseconds>> stop_watch_ptr_;
93+
std::unique_ptr<tier4_autoware_utils::DebugPublisher> processing_time_publisher_;
9094

9195
/* handle objects */
9296
std::unordered_map<MEASUREMENT_STATE, std::function<void(TrackedObject &, const TrackedObject &)>>

perception/tracking_object_merger/src/decorative_tracker_merger.cpp

+12
Original file line numberDiff line numberDiff line change
@@ -151,6 +151,13 @@ DecorativeTrackerMergerNode::DecorativeTrackerMergerNode(const rclcpp::NodeOptio
151151
set3dDataAssociation("lidar-radar", data_association_map_);
152152
// radar-radar association matrix
153153
set3dDataAssociation("radar-radar", data_association_map_);
154+
155+
// debug publisher
156+
processing_time_publisher_ =
157+
std::make_unique<tier4_autoware_utils::DebugPublisher>(this, "decorative_object_merger_node");
158+
stop_watch_ptr_ = std::make_unique<tier4_autoware_utils::StopWatch<std::chrono::milliseconds>>();
159+
stop_watch_ptr_->tic("cyclic_time");
160+
stop_watch_ptr_->tic("processing_time");
154161
}
155162

156163
void DecorativeTrackerMergerNode::set3dDataAssociation(
@@ -182,6 +189,7 @@ void DecorativeTrackerMergerNode::set3dDataAssociation(
182189
void DecorativeTrackerMergerNode::mainObjectsCallback(
183190
const TrackedObjects::ConstSharedPtr & main_objects)
184191
{
192+
stop_watch_ptr_->toc("processing_time", true);
185193
// try to merge sub object
186194
if (!sub_objects_buffer_.empty()) {
187195
// get interpolated sub objects
@@ -214,6 +222,10 @@ void DecorativeTrackerMergerNode::mainObjectsCallback(
214222
this->decorativeMerger(main_sensor_type_, main_objects);
215223

216224
merged_object_pub_->publish(getTrackedObjects(main_objects->header));
225+
processing_time_publisher_->publish<tier4_debug_msgs::msg::Float64Stamped>(
226+
"debug/cyclic_time_ms", stop_watch_ptr_->toc("cyclic_time", true));
227+
processing_time_publisher_->publish<tier4_debug_msgs::msg::Float64Stamped>(
228+
"debug/processing_time_ms", stop_watch_ptr_->toc("processing_time", true));
217229
}
218230

219231
/**

0 commit comments

Comments
 (0)