Refine frame loss rate precision in common Benchmark node

This commit is contained in:
slz
2025-09-23 15:33:49 +08:00
parent 73118f27b9
commit e0c9f1aa6e
2 changed files with 103 additions and 62 deletions
@@ -252,9 +252,9 @@ class CameraMonitorNode(Node):
color_tracker = self.trackers["color"] color_tracker = self.trackers["color"]
depth_tracker = self.trackers["depth"] depth_tracker = self.trackers["depth"]
color_frames_loss = color_tracker.drop_frames color_frames_loss = color_tracker.drop_frames
color_frames_loss_rate = round(color_tracker.frames_loss_rate() * 100.0, 2) color_frames_loss_rate = round(color_tracker.frames_loss_rate() * 100.0, 3)
depth_frames_loss = depth_tracker.drop_frames depth_frames_loss = depth_tracker.drop_frames
depth_frames_loss_rate = round(depth_tracker.frames_loss_rate() * 100.0, 2) depth_frames_loss_rate = round(depth_tracker.frames_loss_rate() * 100.0, 3)
# guard: if stats keys missing, use 0 # guard: if stats keys missing, use 0
def safe(k): def safe(k):
@@ -295,7 +295,7 @@ class CameraMonitorNode(Node):
tracker = self.trackers[stream] tracker = self.trackers[stream]
frames_loss = tracker.drop_frames frames_loss = tracker.drop_frames
frames_loss_rate = round(tracker.frames_loss_rate() * 100.0, 2) frames_loss_rate = round(tracker.frames_loss_rate() * 100.0, 3)
rows.append([topic_name, *fps_vals, *delay_vals, frames_loss, frames_loss_rate]) rows.append([topic_name, *fps_vals, *delay_vals, frames_loss, frames_loss_rate])
header_bottom = ["Option", "fps_cur", "fps_avg", "fps_min", "fps_max", "delay_cur(ms)", "delay_avg(ms)", "delay_min(ms)", "delay_max(ms)", "Pub_lost_count", "Pub_lost_rate(%)"] header_bottom = ["Option", "fps_cur", "fps_avg", "fps_min", "fps_max", "delay_cur(ms)", "delay_avg(ms)", "delay_min(ms)", "delay_max(ms)", "Pub_lost_count", "Pub_lost_rate(%)"]
+100 -59
View File
@@ -36,9 +36,6 @@ services:
- name: /camera/set_auto_white_balance - name: /camera/set_auto_white_balance
type: std_srvs/srv/SetBool type: std_srvs/srv/SetBool
request: {data: false} request: {data: false}
- name: /camera/set_color_ae_roi
type: orbbec_camera_msgs/srv/SetArrays
request: {data_param: [0,1279,0,719]}
- name: /camera/set_color_auto_exposure - name: /camera/set_color_auto_exposure
type: std_srvs/srv/SetBool type: std_srvs/srv/SetBool
request: {data: false} request: {data: false}
@@ -57,9 +54,6 @@ services:
- name: /camera/set_color_rotation - name: /camera/set_color_rotation
type: orbbec_camera_msgs/srv/SetInt32 type: orbbec_camera_msgs/srv/SetInt32
request: {data: 90} request: {data: 90}
- name: /camera/set_depth_ae_roi
type: orbbec_camera_msgs/srv/SetArrays
request: {data_param: [0,1279,0,719]}
- name: /camera/set_depth_auto_exposure - name: /camera/set_depth_auto_exposure
type: std_srvs/srv/SetBool type: std_srvs/srv/SetBool
request: {data: false} request: {data: false}
@@ -71,7 +65,7 @@ services:
request: {data: false} request: {data: false}
- name: /camera/set_depth_gain - name: /camera/set_depth_gain
type: orbbec_camera_msgs/srv/SetInt32 type: orbbec_camera_msgs/srv/SetInt32
request: {data: 200} request: {data: 1000} # for Gemini 2L range is 1000-15000
- name: /camera/set_depth_mirror - name: /camera/set_depth_mirror
type: std_srvs/srv/SetBool type: std_srvs/srv/SetBool
request: {data: false} request: {data: false}
@@ -96,9 +90,6 @@ services:
- name: /camera/set_sync_hosttime - name: /camera/set_sync_hosttime
type: std_srvs/srv/SetBool type: std_srvs/srv/SetBool
request: {data: false} request: {data: false}
- name: /camera/set_sync_interleaverlaser
type: orbbec_camera_msgs/srv/SetInt32
request: {data: 1}
- name: /camera/set_white_balance - name: /camera/set_white_balance
type: orbbec_camera_msgs/srv/SetInt32 type: orbbec_camera_msgs/srv/SetInt32
request: {data: 3000} request: {data: 3000}
@@ -116,11 +107,7 @@ services:
# open according to your camera type # open according to your camera type
# - name: /camera/get_ptp_config
# type: orbbec_camera_msgs/srv/GetBool
# - name: /camera/set_ptp_config
# type: std_srvs/srv/SetBool
# request: {data: false}
# - name: /camera/set_floor_enable # - name: /camera/set_floor_enable
# type: std_srvs/srv/SetBool # type: std_srvs/srv/SetBool
# request: {data: false} # request: {data: false}
@@ -144,60 +131,114 @@ services:
# - name: /camera/read_customer_data # - name: /camera/read_customer_data
# type: orbbec_camera_msgs/srv/GetString # type: orbbec_camera_msgs/srv/GetString
# 335 support
- name: /camera/get_left_ir_exposure # 335/336/336L/335Le support
# - name: /camera/set_sync_interleaverlaser
# type: orbbec_camera_msgs/srv/SetInt32
# request: {data: 1}
# 335/336/336L/335Le support
# - name: /camera/set_color_ae_roi
# type: orbbec_camera_msgs/srv/SetArrays
# request: {data_param: [0,1279,0,719]}
# - name: /camera/set_depth_ae_roi
# type: orbbec_camera_msgs/srv/SetArrays
# request: {data_param: [0,1279,0,719]}
# 335Le support
# - name: /camera/get_ptp_config
# type: orbbec_camera_msgs/srv/GetBool
# - name: /camera/set_ptp_config
# type: std_srvs/srv/SetBool
# request: {data: false}
# 335/336/336L/335Le support left and right ir services
# - name: /camera/get_left_ir_exposure
# type: orbbec_camera_msgs/srv/GetInt32
# - name: /camera/get_left_ir_gain
# type: orbbec_camera_msgs/srv/GetInt32
# - name: /camera/get_right_ir_exposure
# type: orbbec_camera_msgs/srv/GetInt32
# - name: /camera/get_right_ir_gain
# type: orbbec_camera_msgs/srv/GetInt32
# - name: /camera/set_left_ir_ae_roi
# type: orbbec_camera_msgs/srv/SetArrays
# request: {data_param: [0,1279,0,719]}
# - name: /camera/set_left_ir_auto_exposure
# type: std_srvs/srv/SetBool
# request: {data: false}
# - name: /camera/set_left_ir_exposure
# type: orbbec_camera_msgs/srv/SetInt32
# request: {data: 30}
# - name: /camera/set_left_ir_flip
# type: std_srvs/srv/SetBool
# request: {data: false}
# - name: /camera/set_left_ir_gain
# type: orbbec_camera_msgs/srv/SetInt32
# request: {data: 20}
# - name: /camera/set_left_ir_mirror
# type: std_srvs/srv/SetBool
# request: {data: false}
# - name: /camera/set_left_ir_rotation
# type: orbbec_camera_msgs/srv/SetInt32
# request: {data: 90}
# - name: /camera/set_right_ir_ae_roi
# type: orbbec_camera_msgs/srv/SetArrays
# request: {data_param: [0,1279,0,719]}
# - name: /camera/set_right_ir_auto_exposure
# type: std_srvs/srv/SetBool
# request: {data: false}
# - name: /camera/set_right_ir_exposure
# type: orbbec_camera_msgs/srv/SetInt32
# request: {data: 30}
# - name: /camera/set_right_ir_flip
# type: std_srvs/srv/SetBool
# request: {data: false}
# - name: /camera/set_right_ir_gain
# type: orbbec_camera_msgs/srv/SetInt32
# request: {data: 20}
# - name: /camera/set_right_ir_mirror
# type: std_srvs/srv/SetBool
# request: {data: false}
# - name: /camera/set_right_ir_rotation
# type: orbbec_camera_msgs/srv/SetInt32
# request: {data: 90}
# - name: /camera/toggle_left_ir
# type: std_srvs/srv/SetBool
# request: {data: false}
# - name: /camera/toggle_right_ir
# type: std_srvs/srv/SetBool
# request: {data: false}
# Gemini 215/Gemini 2L support
- name: /camera/get_ir_exposure
type: orbbec_camera_msgs/srv/GetInt32 type: orbbec_camera_msgs/srv/GetInt32
- name: /camera/get_left_ir_gain - name: /camera/get_ir_gain
type: orbbec_camera_msgs/srv/GetInt32 type: orbbec_camera_msgs/srv/GetInt32
- name: /camera/get_right_ir_exposure # - name: /camera/set_ir_ae_roi
type: orbbec_camera_msgs/srv/GetInt32 # type: orbbec_camera_msgs/srv/SetArrays
- name: /camera/get_right_ir_gain # request: {data_param: [0,1279,0,719]}
type: orbbec_camera_msgs/srv/GetInt32 - name: /camera/set_ir_auto_exposure
- name: /camera/set_left_ir_ae_roi
type: orbbec_camera_msgs/srv/SetArrays
request: {data_param: [0,1279,0,719]}
- name: /camera/set_left_ir_auto_exposure
type: std_srvs/srv/SetBool type: std_srvs/srv/SetBool
request: {data: false} request: {data: false}
- name: /camera/set_left_ir_exposure - name: /camera/set_ir_exposure
type: orbbec_camera_msgs/srv/SetInt32 type: orbbec_camera_msgs/srv/SetInt32
request: {data: 30} request: {data: 30}
- name: /camera/set_left_ir_flip - name: /camera/set_ir_flip
type: std_srvs/srv/SetBool type: std_srvs/srv/SetBool
request: {data: false} request: {data: false}
- name: /camera/set_left_ir_gain - name: /camera/set_ir_gain
type: orbbec_camera_msgs/srv/SetInt32 type: orbbec_camera_msgs/srv/SetInt32
request: {data: 20} request: {data: 2000}
- name: /camera/set_left_ir_mirror # - name: /camera/set_ir_long_exposure
# type: std_srvs/srv/SetBool
# request: {data: false}
- name: /camera/set_ir_mirror
type: std_srvs/srv/SetBool type: std_srvs/srv/SetBool
request: {data: false} request: {data: false}
- name: /camera/set_left_ir_rotation - name: /camera/set_ir_rotation
type: orbbec_camera_msgs/srv/SetInt32 type: orbbec_camera_msgs/srv/SetInt32
request: {data: 90} request: {data: 90}
- name: /camera/set_right_ir_ae_roi
type: orbbec_camera_msgs/srv/SetArrays
request: {data_param: [0,1279,0,719]}
- name: /camera/set_right_ir_auto_exposure
type: std_srvs/srv/SetBool
request: {data: false}
- name: /camera/set_right_ir_exposure
type: orbbec_camera_msgs/srv/SetInt32
request: {data: 30}
- name: /camera/set_right_ir_flip
type: std_srvs/srv/SetBool
request: {data: false}
- name: /camera/set_right_ir_gain
type: orbbec_camera_msgs/srv/SetInt32
request: {data: 20}
- name: /camera/set_right_ir_mirror
type: std_srvs/srv/SetBool
request: {data: false}
- name: /camera/set_right_ir_rotation
type: orbbec_camera_msgs/srv/SetInt32
request: {data: 90}
- name: /camera/toggle_left_ir
type: std_srvs/srv/SetBool
request: {data: false}
- name: /camera/toggle_right_ir
type: std_srvs/srv/SetBool
request: {data: false}