此页面由 AI 自动翻译。查看英文原版

本页目录

  • 驱动
  • 管道生成
  • 图像传感器
  • 初始参数
  • 运行时参数
  • 立体参数
  • 深度对齐
  • 立体插槽顺序
  • 自定义传感器插槽
  • 参数
  • 特征跟踪器
  • 参数
  • IMU
  • 参数:
  • 神经网络
  • 参数
  • 同步
  • 参数
  • ToF
  • 参数
  • 热成像
  • 参数
  • RGBD
  • 参数
  • VIO
  • 参数

参数

驱动程序可以通过大量参数进行配置。每个节点的参数说明可在下方找到,其中大多数与 DepthAI C++/Python API 相同。 r_ 开头的参数可以在运行时自由修改,例如使用 rqt。i_ 开头的参数在相机初始化时设置,要更改它们,您需要调用 stopstart 服务。这可用于在运行时热交换神经网络、更改分辨率等。
RGB 参数

驱动

  • driver.i_publish_tf_from_calibration: true <bool> - 将此设置为 true 会启动 TFPublisher
  • driver.i_tf_device_name: [NODE_NAME] <string> - 如果未设置,则默认为节点名称
  • driver.i_tf_device_model: '' <string> - 如果未设置,它将自动检测。如果节点无法检测到设备的 STL 文件,则设置为 OAK-D-S2。要在 driver.launch.py 中显式设置,请设置 override_cam_model:=true
  • driver.i_tf_base_frame: oak <string> - 用作相机框架根的框架,通常与 CAM_A(OAK-D 系列的中心传感器)位于同一位置
  • driver.i_tf_parent_frame: oak_parent_frame <string> - 设置为您想要连接相机的框架(例如机器人末端执行器)
  • driver.i_tf_cam_pos_x: '0.0' <string> - 相机框架相对于父框架的位置
  • driver.i_tf_cam_pos_y: '0.0' <string> - 相机框架相对于父框架的位置
  • driver.i_tf_cam_pos_z: '0.0' <string> - 相机框架相对于父框架的位置
  • driver.i_tf_cam_roll: '0.0' <string> - 相机框架相对于父框架的朝向
  • driver.i_tf_cam_pitch: '0.0' <string> - 相机框架相对于父框架的朝向
  • driver.i_tf_cam_yaw: '0.0' <string> - 相机框架相对于父框架的朝向 除了与 TF 发布相关的参数外,driver 还有其他参数:
  • i_usb_speed: SUPER <string> - 用于使用当前接口的 USB 速度,它会自动推断,但可以覆盖,例如显式使用 SUPER_PLUS 可用选项:
    • LOW
    • FULL
    • HIGH (USB2)
    • SUPER (USB3)
    • SUPER_PLUS - 用于连接高速接口(如 Thunderbolt),在某些情况下可能不稳定
  • i_device_id: "" <string> - 用于连接到具有特定 ID 的设备
  • i_ip "" <string> - 用于连接到具有特定 IP 的设备
  • i_usb_port_id: "" <string> - 用于连接到特定 USB 端口上的设备
  • i_pipeline_dump: false <bool> - 是否将创建的管道转储到 JSON 文件(用于调试)
  • i_calibration_dump: false <bool> - 是否将校准转储到 JSON 文件
  • i_external_calibration_path: "" <string> - 用于覆盖设备校准
  • i_pipeline_auto_calibration_mode: "" <string or bool> - 管道自动校准模式。留空则不更改 DepthAI 管道的默认设置。设置为 OFF 可禁用自动校准。有效的字符串值为 OFFON_STARTCONTINUOUS。布尔值也向后兼容:true 映射到 ON_STARTfalse 映射到 OFF
  • i_enable_ir : true <bool> - 是否启用 IR 投影仪
  • i_restart_on_diagnostics_error: false <bool> - 如果管道中启用了诊断发布并且报告了错误,驱动程序将重启
  • i_rs_compat: false <bool> - 启用 Realsense 兼容性。主题、帧名称和参数名称将更改为反映 RS 相机。
  • r_laser_dot_intensity: 0.6 <float> <0.0-1.0> - 设置激光点投影仪的强度。USB 相机可能需要通过 Y 型适配器提供额外功率
  • r_floodlight_intensity: 0.6 <float> <0.0-1.0> - 设置泛光灯投影仪的强度。USB 相机可能需要通过 Y 型适配器提供额外功率

管道生成

参数以 pipeline_gen 开头
  • i_pipeline_type 可以是以下之一:
    • RGB - 仅发布 RGB 流,可用 NN
    • RGBD - 发布 RGB + 深度流(设置左右相机的 i_publish_topic 以启用它们),可用 NN 和空间 NN
    • Stereo - 发布左右传感器的流,每个传感器可单独设置 NN
    • RGBStereo - 发布 RGB + 左 + 右流,每个传感器可单独设置 NN
    • Depth - 仅发布深度流,可在立体声节点上通过参数设置 NN
    • CamArray - 发布所有检测到的传感器的流,每个传感器可单独设置 NN
    • Tof - 仅发布 TOF 流,无 NN
    • DepthTof - 发布深度 + TOF 流,特定于 OAK-D-SR-POE,可在立体声节点上通过参数设置 NN
    • StereoToF - 发布立体声 + TOF 流,特定于 OAK-D-SR-POE,可在立体声节点上通过参数设置 NN
    • RGBToF - 发布 RGB + TOF 流,特定于 OAK-D-SR-POE,可在立体声节点上通过参数设置 NN
    • Thermal - 针对 OAK-T 相机,发布 RGB + 热流。
  • i_nn_type: spatial <string> - 使用管道创建的 NN 类型
  • i_enable_imu: true <bool> - 是否在某些管道中启用 IMU 节点
  • i_enable_diagnostics: false <bool> - 是否启用诊断节点
  • i_enable_rgbd: false <bool> - 是否在某些管道中启用 RGBD 节点

图像传感器

传感器参数以 sensor_name.[PARAMETER_NAME] 开头,例如 rgb.i_width

初始参数

  • i_board_socket_id <int> - 传感器的插槽 ID,主要用于对齐、校准和推断帧名称,会自动检测每个传感器,但可以被覆盖
  • i_enable_feature_tracker: false <bool> - 为此特定传感器启用 FeatureTracker 节点
  • i_enable_nn: false <bool> - 为此特定传感器启用 NeuralNetwork
  • i_max_q_size: 8 <int> - 设置 DAI 队列大小
  • i_low_bandwidth: false <bool> - 设置为 true 时,将为该特定传感器启用 VideoEncoder 以改善摄像头和主机之间的延迟。默认情况下,DAI 编码帧(仅在 MJPEG 编码器的情况下,对于 H264 请启用 i_publish_compressed 参数)将在主机上解码为 ROS Image 消息。
  • i_low_bandwidth_profile: 4 <int> - 使用的编码器类型。可用类型如下:
    • H264_BASELINE,
    • H264_HIGH,
    • H264_MAIN,
    • H265_MAIN,
    • MJPEG (默认)
  • i_low_bandwidth_frame_freq: 30 <int> - 编码器的帧频率,用于 H26X 类型
  • i_low_bandwidth_bitrate: 0 <int> - 编码器的比特率,用于 H26X 类型
  • i_low_bandwidth_quality: 50 <int> - MJPEG 编码器的质量
  • i_publish_compressed: false <bool> - 不将 DAI 编码帧转换为 ROS Image 消息,而是以相应的压缩图像格式发布它们(MJPEG 为 CompressedImage,H26X 类型为 FFMPEGMsgs::FFMPPEGPacket)
  • i_get_base_device_timestamp: false <bool> - 控制为数据获取的 DAI 时间戳是否与主机同步(时间戳本身仍与 ROS 时间对齐)
  • i_calibration_file: "" <string> - 用于用 ROS 校准覆盖 DAI 校准
  • i_update_ros_base_time_on_ros_msg: false <bool> - 如果遇到系统时间偏移(例如,系统时钟由外部控制),请启用此选项
  • i_enable_lazy_publisher: true <bool> - 是否仅在图像/camera_info 主题上检测到订阅时才发布数据
  • i_add_exposure_offset: false <bool> - 是否将曝光偏移添加到 ROS 时间戳
  • i_exposure_offset: 0 <int> - 曝光偏移类型:
    • START
    • MIDDLE
    • END
  • i_reverse_stereo_socket_order: false <bool> - 有关更多信息,请参阅下面的“立体声插槽顺序”部分
  • i_synced: :false <bool> - 是否将输出添加到同步输出组,所有同步的发布者将以相同的时间戳发布图像
  • i_publish_topic: true/false <bool> - 是否在 ROS 主题上发布,默认情况下,CAM_A 插槽上的传感器为 true,否则为 false
  • i_publish_full_resolution: false <bool> - 是否发布全分辨率图像
  • i_use_max_resolution_possible: false <bool> - 是否使用可能的最大分辨率
  • i_width: 640 <int> - 图像宽度
  • i_height: 400 <int> - 图像高度
  • i_fps: 30.0 <float> - 传感器帧率
  • i_undistorted: true <bool> - 是否对图像进行去畸变
  • i_resize_mode: "CROP" <string> - 去畸变图像时使用的缩放类型,有关更多信息,请参阅 DAI Camera 节点,可以是:
    • CROP
    • LETTERBOX
    • STRETCH
  • i_fsync_continuous: false <bool> - 是否设置帧同步模式。如果启用,将使用 i_fsync_mode 参数进行模式设置
  • i_fsync_mode: "INPUT <string> - FSync 模式类型,可以是:
    • OFF
    • OUTPUT
    • INPUT
  • i_fsync_trigger: false <bool> - 是否使用外部触发器捕获图像
  • i_num_frames_burst: 1 <int> - 触发突发模式下的帧数
  • i_num_frames_discard: 0 <int> - 在初始突发模式下要丢弃的帧数(它们的质量可能较差)

运行时参数

  • r_iso: 800 <int> <100-1600> - 设置手动曝光时的 ISO 设置,设置为 r_set_man_exposure 以使用
  • r_exposure: 1000 <int> <1-33000> - 设置手动曝光时的曝光设置,设置为 r_set_man_exposure 以使用
  • r_set_man_exposure: false <bool> - 是否设置手动曝光
  • r_set_autoexposure_limit: false <bool> - 是否限制自动曝光
  • r_auto_exposure_limit: 1000 <int> - 自动曝光限制
  • r_set_man_focus: false <bool> - 是否设置手动对焦
  • r_focus: 1 <int> <1-255> - 对焦值
  • r_set_man_whitebalance: false <bool> - 是否设置手动白平衡
  • r_whitebalance: 3000 <int> <1000-12000> - 手动白平衡
  • r_set_sharpness: false <bool> - 是否手动设置锐度
  • r_sharpness: 1 <int> <1-4> - 锐度级别
  • r_set_chroma_denoise: false - 是否手动设置色度降噪
  • r_chroma_denoise: 1 <int> <1-4> - 色度降噪级别
  • r_set_luma_denoise: false - 是否手动设置亮度降噪
  • r_luma_denoise: 1 <int> <1-4> - 亮度降噪级别
  • r_set_auto_exp_region: false <bool> - 是否使用图像的一部分来控制曝光
  • r_auto_exp_region_start_x: 0 <int> - 自动曝光区域的起始点(以图像坐标表示,即 X 向右,Y 向下)
  • r_auto_exp_region_start_y: 0 <int> - 自动曝光区域的起始点(以图像坐标表示,即 X 向右,Y 向下)
  • r_auto_exp_region_width: 0 <int> - 自动曝光区域的宽度
  • r_auto_exp_region_height: 0 <int> - 自动曝光区域的高度

立体参数

Stereo Params

深度对齐

当设置 stereo.aligned: true 时,立体输出将对齐到 stereo.i_board_socket_id 参数指定的板载插槽(默认为 0/CAM_A)。您可以通过设置来启用校正后的立体流,例如在右侧流的情况下设置 i_publish_right_rect: true

立体插槽顺序

默认情况下,右侧摄像头在立体计算中被视为第一个,这在 CameraInfo 消息中有所体现。如果您想反转该逻辑,请设置 stereo.i_reverse_stereo_socket_order: true(也可以为单个传感器设置)。

自定义传感器插槽

用于计算立体对的传感器配置可以通过以下两种方式完成:一种是通过在 Stereo 节点构造函数中指定它们(例如,在构建自定义管道时),另一种是通过参数 - stereo.i_left_socket_id/stereo.i_right_socket_id。请注意,目前如果您想使用 rgb/center 插槽而不是给定对中的一个,则需要为此构建一个自定义管道。

参数

有关过滤器的更多信息,请访问 配置立体深度
  • i_max_q_size: 30 <int> - 设置 DAI 队列大小
  • i_fps: 30.0 <float> - 立体帧率
  • i_low_bandwidth: false <bool> - 请参阅 Sensor 节点中的参数说明。注意 此参数与 i_subpixel 参数不兼容。
  • i_low_bandwidth_profile: 4 <int> - 使用的编码器类型。可用类型如下:
    • H264_BASELINE,
    • H264_HIGH,
    • H264_MAIN,
    • H265_MAIN,
    • MJPEG (默认)
  • i_low_bandwidth_frame_freq: 30 <int> - 编码器的帧频率,用于 H26X 类型
  • i_low_bandwidth_bitrate: 0 <int> - 编码器的比特率,用于 H26X 类型
  • i_low_bandwidth_quality: 50 <int> - MJPEG 编码器的质量
  • i_get_base_device_timestamp: false <bool> - 控制获取数据的 DAI 时间戳是否与主机同步(时间戳本身仍与 ROS 时间对齐)
  • i_calibration_file: "" <string> - 用于覆盖 DAI 校准与 ROS 校准
  • i_update_ros_base_time_on_ros_msg: false <bool> - 如果遇到系统时间偏移(例如系统时钟由外部控制),请启用
  • i_enable_lazy_publisher: true <bool> - 是否仅在图像/camera_info 主题上检测到订阅时才发布数据
  • i_add_exposure_offset: false <bool> - 是否将曝光偏移添加到 ROS 时间戳
  • i_exposure_offset: 0 <int> - 曝光偏移类型:
    • START
    • MIDDLE
    • END
  • i_reverse_stereo_socket_order: false <bool> - 有关更多信息,请参阅下面的 立体套接字顺序 部分
  • i_synced: :false <bool> - 是否将输出添加到同步输出组,所有同步的发布器将发布具有相同时间戳的图像
  • i_publish_topic: true/false <bool> - 是否在 ROS 主题上发布,默认情况下 CAM_A 套接字上的传感器为 true,否则为 false
  • i_output_disparity: false <bool> - 是否输出视差而不是深度
  • i_enable_left_spatial_nn: false <bool> - 是否使用左传感器作为 RGB 源创建空间 NN
  • i_enable_right_spatial_nn: false <bool> - 是否使用右传感器作为 RGB 源创建空间 NN
  • i_enable_left_rgbd: false <bool> - 是否使用左传感器作为 RGB 源创建 RGBD 节点
  • i_enable_right_rgbd: false <bool> - 是否使用右传感器作为 RGB 源创建 RGBD 节点
  • i_aligned: true <bool> - 是否将立体节点对齐到 i_board_socket_id
  • i_run_align_on_host: true <bool> - 是否在主机上运行对齐节点(仅适用于 RVC4)
  • i_depth_preset: FAST_ACCURACY <string> - 要应用的默认深度预设类型。警告 对于 FAST_ACCURACY 以外的类型,其他立体过滤参数可能会被覆盖。此外,在某些情况下会应用抽取滤波器,导致最终图像尺寸减小,处理能力的增加可能会减少可用于与 RVC2 设备上的神经网络等共享的资源。公开的设置如下:
    • FAST_ACCURACY
    • DEFAULT
    • FACE
    • HIGH_DETAIL
    • ROBOTICS
  • i_enable_distortion_correction: true <bool> - 切换输出流上的失真校正
  • i_set_disparity_to_depth_use_spec_translation: false <bool> - 是否使用 CAD 数据中的基线,而不是校准数据
  • i_bilateral_sigma: 0 <int> <0-65535> - 双边 sigma 滤波器的值。此参数的值越大,表示像素邻域内更远的颜色将混合在一起,导致大面积的半等颜色。
  • i_lrc_threshold: 10 <int> <0-255> - 左右、右左视差图组合的阈值。
  • i_stereo_conf_threshold: 15 <int> <0-255> - 视差计算的置信度阈值。值越高表示丢弃的深度值越多
  • i_subpixel: true <bool> - 使用亚像素插值计算视差(默认 3 个小数位。适用于长距离。目前与扩展视差和低带宽模式不兼容。设置亚像素会输出更多深度值(点云中的“台阶”更少,但代价是使用更多带宽和资源。在某些深度预设上自动启用。
  • i_subpixel_fractional_bits: 3 <int> <3-5> - 定义小数视差的数量:2^x
  • i_rectify_edge_fill_color: 0 <int> <-1-255> - 边缘缺失数据的填充颜色。0-255 表示灰度,-1 表示复制像素
  • i_enable_alpha_scaling: false <bool> - 启用 alpha 缩放。
  • i_alpha_scaling: 0.0 <float> - Alpha 缩放参数。它是一个介于 0(未校正图像中的所有像素都有效)和 1(未校正图像中的所有源图像像素都保留)之间的自由缩放参数。对于某些高失真镜头和/或由于校正(图像旋转),即使 alpha=0 也可能出现无效区域,在这些情况下 alpha < 0.0 有助于去除无效区域。
  • i_disparity_width: DISPARITY_96 <string> - 视差搜索范围。值:
    • DISPARITY_64
    • DISPARITY_96
  • i_extended_disp: false <bool> - 视差范围从 0-95 增加到 0-190,结合全分辨率和下采样图像。适用于短距离物体。目前与亚像素视差不兼容。
  • i_enable_companding: false <bool> - 使用稀疏匹配启用视差压缩。逐像素匹配 N 个视差。每隔一个像素匹配 M 个视差。每隔两个像素匹配 T 个视差。对于 96 个视差:N=48,M=32,T=16。这样,通过稀疏匹配,搜索范围扩展到 176 个视差。注意,启用此标志后,只有深度图会受到影响,视差图不会。
  • i_enable_temporal_filter: false <bool> - 启用时间滤波器。
  • i_temporal_filter_alpha: 0.4 <float> <0.0-1.0> - 指数移动平均中的 alpha 因子,Alpha=1 - 无滤波器。Alpha=0 - 无限滤波器。确定应平均的时间历史范围。
  • i_temporal_filter_delta: 20 <int> - 步长边界。建立用于保留“边缘”的阈值。如果相邻像素之间的视差值超过此 delta 参数设置的视差阈值,则将暂时禁用滤波。默认值 0 表示自动:3 个视差整数级别。在亚像素模式下,它是 3 * 亚像素级别数。
  • i_temporal_filter_persistency: VALID_2_IN_LAST_4 <string> - 持久性模式。如果当前视差/深度值无效,它将被替换为旧值,具体取决于持久性模式。有效值:
    • PERSISTENCY_OFF
    • VALID_8_OUT_OF_8
    • VALID_2_IN_LAST_3
    • VALID_2_IN_LAST_4
    • VALID_2_OUT_OF_8
    • VALID_1_IN_LAST_2
    • VALID_1_IN_LAST_5
    • VALID_1_IN_LAST_8
    • PERSISTENCY_INDEFINITELY
  • i_enable_speckle_filter: false <bool> - 启用斑点滤波器。
  • i_speckle_filter_speckle_range: 50 <int> - 斑点搜索范围。
  • i_enable_disparity_shift: false <bool> - 将输入帧移动一定数量的像素以增加最小深度。例如,移动 48 会将有效视差搜索范围从 (0,95] 更改为 [48,143]。一种减少 minZ 的替代方法。我们通常只建议在已知没有比 MaxZ 更远的物体时这样做,例如将深度相机安装在桌子上并向下指向桌面。
  • i_disparity_shift: 0 <int> - 视差偏移值。
  • i_enable_spatial_filter: false <bool> - 启用空间滤波器。
  • i_spatial_filter_hole_filling_radius: 2 <int> - 在滤波器通道中水平应用的就地启发式对称孔填充模式。旨在以最小的性能影响修复细微的瑕疵。用于孔填充的搜索半径。
  • i_spatial_filter_alpha: 0.5 <float> - 指数移动平均中的 Alpha 因子,Alpha=1 - 无滤波。Alpha = 0 - 无限滤波。确定平滑量。
  • i_spatial_filter_delta: 20 <int> - 类似于时间滤波中的 delta。
  • i_spatial_filter_num_iterations: 1 <int> - 在水平和垂直方向上对图像进行迭代的次数。
  • i_enable_threshold_filter: false <bool> - 启用阈值滤波器
  • i_threshold_filter_min_range: 400 <int> - 深度单位(毫米)中的最小范围。低于此值的深度值将被视为无效。
  • i_threshold_filter_max_range: 15000 <int> - 深度单位中的最大范围。高于此值的深度值将被视为无效。
  • i_enable_brightness_filter: false <bool> - 启用亮度滤波器
  • i_brightness_filter_min_brightness: 0 <int> - 最小像素亮度。如果输入像素小于或等于此值,则深度值无效。
  • i_brightness_filter_max_brightness: 255 <int> - 最大像素亮度。如果输入像素大于或等于此值,则深度值无效。
  • i_enable_decimation_filter: false <bool> - 启用抽取滤波器。影响最终图像大小。
  • i_decimation_filter_decimation_mode: PIXEL_SKIPPING <string> - 抽取算法类型。可用值:
    • PIXEL_SKIPPING
    • NON_ZERO_MEDIAN
    • NON_ZERO_MEAN
  • i_decimation_filter_decimation_factor: 1 <int> <1-4> - 有效值为 1,2,3,4。视差/深度图 x/y 分辨率将以此值进行抽取。
  • i_use_neural_depth: false <bool>- 是否使用 Neural Depth 而不是常规 Stereo(仅在 RVC4 上可用)
  • i_neural_depth_model: NEURAL_DEPTH_SMALL <string> - Neural Depth 的类型。可用类型:
    • NEURAL_DEPTH_LARGE
    • NEURAL_DEPTH_MEDIUM
    • NEURAL_DEPTH_SMALL
    • NEURAL_DEPTH_NANO
  • r_edge_threshold: 10 <int> - Neural Depth 的边缘阈值
  • r_confidence_threshold: 125 <int> - Neural Depth 的置信度阈值
  • 以下参数对左右校正流相同,为简洁起见,以下为左侧参数:
    • i_publish_left_rect: false <bool> - 是否发布校正后的左侧流
    • i_left_rect_low_bandwidth: false <bool> - 左侧校正低带宽配置文件
    • i_left_rect_low_bandwidth_profile: 4 <int> - 左侧校正 LB 配置文件
    • i_left_rect_low_bandwidth_frame_freq: 30 <int> - 左侧校正 LB 帧频率
    • i_left_rect_low_bandwidth_bitrate: 0 <int> - 左侧校正 LB 比特率
    • i_left_rect_low_bandwidth_quality: 50 <int> - 左侧校正 LB 质量
    • i_left_rect_publish_compressed: false <bool> - 是否为左侧校正发布压缩图像
    • i_left_rect_add_exposure_offset: false <bool> - 左侧校正添加曝光偏移
    • i_left_rect_exposure_offset: 0 <int> - 左侧校正曝光偏移设置
    • i_left_rect_enable_feature_tracker: false <bool> - 是否为校正后的左侧添加特征跟踪器
    • i_left_rect_synced: false <bool> - 是否将左侧校正与其他流同步

特征跟踪器

每个传感器节点(以及 Stereo 节点的校正流)都可以选择添加 FeatureTracker 节点,该节点发布 depthai_ros_msgs/msg/TrackedFeatures 消息。 要启用例如 RGB 节点的特征,请将 rgb: i_enable_feature_tracker: true 设置为 true。要启用校正流的发布,请设置例如 stereo: i_left_rect_enable_feature_tracker

参数

  • i_motion_estimation_type: LUKAS_KANADE_OPTICAL_FLOW <string> - 运动估计器类型,可以是:
    • LUKAS_KANADE_OPTICAL_FLOW
    • HW_MOTION_ESTIMATION
  • i_update_ros_base_time_on_ros_msg: false <bool> - 如果您遇到系统时间偏移,请启用此选项(例如,在系统时钟由外部控制的情况下)
  • i_get_base_device_timestamp: false <bool> - 控制 DAI 时间戳是否与主机同步(时间戳本身仍与 ROS 时间对齐)

IMU

参数:

  • i_max_q_size: 8 <int> - 设置 DAI 队列大小
  • i_acc_freq: 480 <int> - 加速度计传感器频率
  • i_acc_cov: 0.0 <float> - 加速度计协方差
  • i_batch_report_threshold: 5 <int> - 批次报告大小
  • i_enable_rotation: false <bool> - 是否启用旋转向量和磁力计数据(在使用 IMU_WITH_MAGN/ IMU_WITH_MAGN_SPLIT 消息类型和 BNO086 传感器时可用)
  • i_gyro_cov: 0.0 <float> - 陀螺仪协方差
  • i_gyro_freq: 400 <int> - 陀螺仪频率
  • i_mag_cov: 0.0 <float> - 磁力计协方差
  • i_mag_freq: 100 <int> - 磁力计频率
  • i_max_batch_reports: 10 <int> - 每个批次的最大报告数
  • i_message_type: IMU <string> - ROS 发布者类型:
    • IMU - sensor_msgs/Imu
    • IMU_WITH_MAG - depthai_ros_msgs/ImuWithMagneticField
    • IMU_WITH_MAG_SPLIT - 两个发布者 - sensor_msgs/Imu 和 sensor_msgs/MagneticField
  • i_rot_cov: -1.0 <float> - 旋转协方差
  • i_rot_freq: 400 <int> - 旋转频率
  • i_sync_method: COPY <string> - 同步方法。可用选项(警告 RVC4 设备目前仅支持 COPY):
    • COPY
    • LINEAR_INTERPOLATE_GYRO
    • LINEAR_INTERPOLATE_ACCEL
  • i_rotation_vector_type <string> - 旋转向量的类型,有关更多信息,请参阅 此链接。可用选项:
    • ROTATION_VECTOR
    • GAME_ROTATION_VECTOR
    • GEOMAGNETIC_ROTATION_VECTOR
    • ARVR_STABILIZED_ROTATION_VECTOR
    • ARVR_STABILIZED_GAME_ROTATION_VECTOR
  • i_update_ros_base_time_on_ros_msg: false <bool> - 如果您遇到系统时间偏移,请启用此选项(例如,在系统时钟由外部控制的情况下)
  • i_get_base_device_timestamp: false <bool> - 控制 DAI 时间戳是否与主机同步(时间戳本身仍与 ROS 时间对齐)

神经网络

在大多数管道类型中,都可以轻松地启用神经网络。
  • camera.i_nn_type 可以是 none(无 NN)、rgbspatial。这决定了我们加载的 NN 是否应包含深度信息(例如,以 3D 格式提供检测)。默认为 spatial

参数

  • i_nn_family: detection <string> - 设置我们想要的NN类型。当前可用选项为: *detection
    • segmentation (目前仅在RVC2上)
  • i_nn_model: yolov6-nano <string> - 我们想要加载的模型,模型会在驱动启动时从网络自动下载,类似于DepthAI C++/Python示例。
  • i_nn_confidence_threshold: 0.5 <float> - NN的置信度阈值
  • i_nn_depth_lower_threshold: 100 <int> - (仅空间) 检测的下限深度阈值 (单位:mm)
  • i_nn_depth_upper_threshold: 10000 <int> - (仅空间) 检测的上限深度阈值 (单位:mm)
  • i_enable_passthrough: false <bool> - 是否发布RGB透传图像
  • i_enable_passthrough_depth: false <bool> - 是否发布深度透传图像
  • i_update_ros_base_time_on_ros_msg: false <bool> - 如果您遇到系统时间偏移,请启用此选项 (例如,当系统时钟由外部控制时)
  • i_get_base_device_timestamp: false <bool> - 控制是否将获取的数据的DAI时间戳同步到主机 (时间戳本身仍与ROS时间对齐)
  • i_bounding_box_scale_factor: 0.5 <float> <0.0-1.0> - 检测框的缩放因子
  • i_max_q_size: 8 <int> - 设置DAI队列大小
您还可以通过设置 sensor_name.i_enable_nntrue 来选择在特定传感器上运行NN。之后,您可以 类似地将 sensor_name_nn.i_nn_model 设置为配置文件路径。 您还可以为Stereo节点设置空间NN,并使用其左/右流之一作为RGB输入。这可以在具有RGB侧传感器的摄像头上启用,例如OAK-D-SR和OAK-D-LR。设置方式也类似:
  • stereo.i_enable_left_spatial_nn - 设置为true以启用以左传感器作为输入的空间NN

同步

目前,您可以使用同步节点包装器同步任意数量的图像主题。要创建同步节点,请设置 pipeline_gen: i_enable_sync: true,并例如设置 rgb.i_synced: truestereo.i_synced: true 此示例配置在运行 driver.launch.py 并带有 pointcloud.enable:=true 参数时应用。

参数

  • i_sync_threshold: 10 <int> - 设置组内消息之间的最大间隔(以毫秒为单位)。
  • i_sync_attempts: 10 <int> - 同步尝试次数

ToF

ToF节点在ToF、RgbTof、StereoToF和DepthTof管道上可用。其参数与常规摄像头节点类似

参数

  • i_publish_topic: true <bool> - 是否发布主题
  • i_max_q_size: 8 <int> - 设置DAI队列大小
  • i_low_bandwidth: false <bool> - 请参阅 Sensor 节点中的参数说明。注意 此参数与 i_subpixel 参数不兼容。
  • i_low_bandwidth_profile: 4 <int> - 使用的编码器类型。可用类型如下:
    • H264_BASELINE,
    • H264_HIGH,
    • H264_MAIN,
    • H265_MAIN,
    • MJPEG (默认)
  • i_low_bandwidth_frame_freq: 30 <int> - 编码器的帧频率,用于H26X类型
  • i_low_bandwidth_bitrate: 0 <int> - 编码器的比特率,用于H26X类型
  • i_low_bandwidth_quality: 50 <int> - MJPEG编码器的质量
  • i_get_base_device_timestamp: false <bool> - 控制是否将获取的数据的DAI时间戳同步到主机 (时间戳本身仍与ROS时间对齐)
  • i_calibration_file: "" <string> - 用于用ROS校准覆盖DAI校准
  • i_update_ros_base_time_on_ros_msg: false <bool> - 如果您遇到系统时间偏移,请启用此选项 (例如,当系统时钟由外部控制时)
  • i_enable_lazy_publisher: true <bool> - 是否仅在图像/camera_info主题有订阅时才发布数据
  • i_publish_compressed: false <bool> - 是否发布压缩图像
  • i_update_ros_base_time_on_ros_msg: false <bool> - 如果您遇到系统时间偏移,请启用此选项 (例如,当系统时钟由外部控制时)
  • i_get_base_device_timestamp: false <bool> - 控制是否将获取的数据的DAI时间戳同步到主机 (时间戳本身仍与ROS时间对齐)
  • i_add_exposure_offset: false <bool> - 是否将曝光偏移添加到ROS时间戳
  • i_exposure_offset: 0 <int> - 曝光偏移类型:
    • START
    • MIDDLE
    • END
  • i_width: 640 <int> - 图像宽度
  • i_height: 400 <int> - 图像高度
  • i_fps: 30 <int> - 图像帧率
  • i_aligned :false <bool> - 是否将图像与另一个传感器对齐
  • i_aligned_socket_id: "" <string> - 用于对齐图像的套接字
  • i_run_align_on_host: true <bool> - 是否在主机上运行对齐节点 (仅适用于RVC4)
  • i_synced: :false <bool> - 是否将输出添加到同步输出组,所有同步的发布器将以相同的时间戳发布图像
  • i_preset_mode: TOF_MID_RANGE <string> - 图像滤波的预设模式

热成像

热成像相机同样作为相机节点运行,并可设置一些额外的运行时参数。

参数

  • i_publish_topic: true <bool> - 是否发布主题
  • i_max_q_size: 8 <int> - 设置 DAI 队列大小
  • i_low_bandwidth: false <bool> - 请参阅 Sensor 节点中的参数说明。注意 此参数与 i_subpixel 参数不兼容。
  • i_low_bandwidth_profile: 4 <int> - 使用的编码器类型。可用类型如下:
    • H264_BASELINE,
    • H264_HIGH,
    • H264_MAIN,
    • H265_MAIN,
    • MJPEG (默认)
  • i_low_bandwidth_frame_freq: 30 <int> - 编码器的帧频率,用于 H26X 类型
  • i_low_bandwidth_bitrate: 0 <int> - 编码器的比特率,用于 H26X 类型
  • i_low_bandwidth_quality: 50 <int> - MJPEG 编码器的质量
  • i_get_base_device_timestamp: false <bool> - 控制获取的 DAI 时间戳是否与主机同步(时间戳本身仍与 ROS 时间对齐)
  • i_calibration_file: "" <string> - 用于用 ROS 校准覆盖 DAI 校准
  • i_update_ros_base_time_on_ros_msg: false <bool> - 如果遇到系统时间偏移,请启用(例如,当系统时钟由外部控制时)
  • i_enable_lazy_publisher: true <bool> - 是否仅在检测到图像/camera_info 主题的订阅时才发布数据
  • i_publish_compressed: false <bool> - 是否发布压缩图像
  • i_update_ros_base_time_on_ros_msg: false <bool> - 如果遇到系统时间偏移,请启用(例如,当系统时钟由外部控制时)
  • i_get_base_device_timestamp: false <bool> - 控制获取的 DAI 时间戳是否与主机同步(时间戳本身仍与 ROS 时间对齐)
  • i_add_exposure_offset: false <bool> - 是否将曝光偏移添加到 ROS 时间戳
  • i_exposure_offset: 0 <int> - 曝光偏移类型:
    • START
    • MIDDLE
    • END
  • i_width: 640 <int> - 图像宽度
  • i_height: 400 <int> - 图像高度
  • i_fps: 30.0 <float> - 图像帧率
  • i_aligned :false <bool> - 是否将图像与另一个传感器对齐
  • i_aligned_socket_id: "" <string> - 用于对齐图像的套接字
  • i_run_align_on_host: true <bool> - 是否在主机上运行对齐节点(仅适用于 RVC4)
  • i_synced: :false <bool> - 是否将输出添加到同步输出组,所有同步的发布器将发布具有相同时间戳的图像
  • i_orientation: NORMAL <string> - 图像方向。可用选项:
    • NORMAL
    • MIRROR
    • FLIP
    • MIRROR_FLIP
  • r_auto_ffc: false <bool> - 自动平场校正。控制快门是否由传感器模块自动控制。
  • r_close_manual_shutter: false <bool> - 在禁用 autoFFC 时,将此设置为 True/False 以关闭/打开快门。
  • r_brightness_level: 0 <int> <0-255> - 图像亮度级别。
  • r_time_noise_filter_level: 0 <int> <0-3> - 时间噪声滤波器级别。滤除随时间出现的噪声。

RGBD

RGBD 节点可以通过在某些管线中启用 pipeline_gen.i_enable_rgbd 参数或在 Stereo 节点中设置 i_enable_left/right_rgbd 来启用。

参数

  • i_publish_topic: true <bool> - 是否发布主题
  • i_max_q_size: 2 <int> - 设置 DAI 队列大小
  • i_update_ros_base_time_on_ros_msg: false <bool> - 如果遇到系统时间偏移,请启用(例如,当系统时钟由外部控制时)
  • i_get_base_device_timestamp: false <bool> - 控制获取的 DAI 时间戳是否与主机同步(时间戳本身仍与 ROS 时间对齐)
  • i_num_threads: 1 <int> - RGBD 节点使用的线程数
  • i_run_sync_on_host: true <bool> - 是否在主机上同步消息
  • i_run_align_on_host: true <bool> - 是否在主机上运行对齐节点(仅适用于 RVC4)

VIO

VIO 节点可以通过在某些管线中启用 pipeline_gen.i_enable_vio 参数来启用。

参数

  • i_publish_topic: true <bool> - 是否发布主题
  • i_max_q_size: 2 <int> - 设置 DAI 队列大小
  • i_update_ros_base_time_on_ros_msg: false <bool> - 如果遇到系统时间偏移,请启用(例如,当系统时钟由外部控制时)
  • i_get_base_device_timestamp: false <bool> - 控制获取的 DAI 时间戳是否与主机同步(时间戳本身仍与 ROS 时间对齐)
  • i_run_sync_on_host: true <bool> - 是否在主机上同步消息
  • i_imu_update_rate: 400 <int> - IMU 消息的更新速率
  • i_width: 640 <int> - 图像宽度
  • i_height: 400 <int> - 图像高度
  • i_fps: 60.0 <float> - 图像帧率
  • i_config_path: 'depthai_ros_driver_default.json' <string> - config.json 的完整路径,当使用默认值时,将使用 depthai_ros_driver/config/custom 中的配置
  • i_override_local_transform: false <bool> - 是否覆盖本地变换,启用后,可以设置以下参数
    • i_local_transform_x: 0.0 <float> - X 位置
    • i_local_transform_y: 0.0 <float> - Y 位置
    • i_local_transform_z: 0.0 <float> - Z 位置
    • i_local_transform_qx: 0.0 <float> - 四元数的 X 分量
    • i_local_transform_qy: 0.0 <float> - 四元数的 Y 分量
    • i_local_transform_qz: 0.0 <float> - 四元数的 Z 分量
    • i_local_transform_qw: 0.0 <float> - 四元数的 w 分量
  • i_override_imu_extrinsics: false <bool> - 是否用其他值覆盖 IMU 外参
    • i_imu_extr_x: 0.0 <float> - X 位置
    • i_imu_extr_y: 0.0 <float> - Y 位置
    • i_imu_extr_z: 0.0 <float> - Z 位置
    • i_imu_extr_qx: 0.0 <float> - 四元数的 X 分量
    • i_imu_extr_qy: 0.0 <float> - 四元数的 Y 分量
    • i_imu_extr_qz: 0.0 <float> - 四元数的 Z 分量
    • i_imu_extr_qw: 0.0 <float> - 四元数的 w 分量
  • i_set_acc_bias: false <bool> - 覆盖默认加速度计偏差
  • i_accel_bias: 9x0.0 <vector<double>> - 加速度计偏差
  • i_set_acc_noise_std: false <bool> - 覆盖加速度计的标准噪声
  • i_acc_noise_std: 3x0.0 <vector<double>> - 加速度计标准噪声
  • i_set_gyro_bias: false <bool> - 覆盖默认陀螺仪偏差
  • i_gyro_bias: 9x0.0 <vector<double>> - 陀螺仪偏差
  • i_set_gyro_noise_std: false <bool> - 覆盖陀螺仪的标准噪声
  • i_gyro_noise_std: 3x0.0 <vector<double>> - 陀螺仪标准噪声
  • i_publish_tf: true <bool> - 是否同时发布 TF 坐标系
  • i_frame_id: odom <string> - 消息的坐标系 ID
  • i_child_frame_id: oak_parent_frame <string> - 子坐标系 ID
  • i_covariance: 36x0.0 <vector<double>> - 消息的协方差