Make point_cloud optional and publish camera_info once #15

Closed
opened 2026-09-04 20:36:10 +00:00 by cristhian · 0 comments
Owner

Feature: Make point_cloud optional and publish camera_info once

User Story

As a dataflow author,
I want the camera to publish only what my graph consumes,
so that unused high-bandwidth outputs do not cost capture time or memory.

Requirements

  • Add ZED_POINT_CLOUD, default off, gating both retrieveMeasure(sl::MEASURE::XYZRGBA) and the point_cloud output.
  • When off, do not retrieve the measure at all.
  • ZED_PC_MODE applies only when ZED_POINT_CLOUD is on.
  • Publish camera_info once after the camera opens, and again after a reconnection, rather than on every frame.
  • Document both behaviours in README.md.

Acceptance Criteria

  • With ZED_POINT_CLOUD unset, no point_cloud output is published and no XYZRGBA measure is retrieved.
  • With ZED_POINT_CLOUD on, behaviour matches the current FULL and HALF modes.
  • camera_info is published once per camera session and after each reconnection.
  • image_bgr and depth rates are unchanged.
  • README.md documents the variable and the camera_info cadence.

Notes

At 1080p a FULL point cloud is approximately 14.7 MB per frame. Consumers that need 3D
back-project the depth output using the published intrinsics, so the point cloud is
unused in that case.

camera_info carries fx, fy, cx, cy and distortion, which are fixed for a given
camera and resolution. Publishing them per frame adds no information.

Depends on the depth output existing, so that disabling the point cloud does not remove
the only source of 3D data.

# Feature: Make point_cloud optional and publish camera_info once ## User Story As a dataflow author, I want the camera to publish only what my graph consumes, so that unused high-bandwidth outputs do not cost capture time or memory. ## Requirements - Add `ZED_POINT_CLOUD`, default off, gating both `retrieveMeasure(sl::MEASURE::XYZRGBA)` and the `point_cloud` output. - When off, do not retrieve the measure at all. - `ZED_PC_MODE` applies only when `ZED_POINT_CLOUD` is on. - Publish `camera_info` once after the camera opens, and again after a reconnection, rather than on every frame. - Document both behaviours in `README.md`. ## Acceptance Criteria - [ ] With `ZED_POINT_CLOUD` unset, no `point_cloud` output is published and no XYZRGBA measure is retrieved. - [ ] With `ZED_POINT_CLOUD` on, behaviour matches the current `FULL` and `HALF` modes. - [ ] `camera_info` is published once per camera session and after each reconnection. - [ ] `image_bgr` and `depth` rates are unchanged. - [ ] `README.md` documents the variable and the `camera_info` cadence. ## Notes At 1080p a `FULL` point cloud is approximately 14.7 MB per frame. Consumers that need 3D back-project the `depth` output using the published intrinsics, so the point cloud is unused in that case. `camera_info` carries `fx`, `fy`, `cx`, `cy` and distortion, which are fixed for a given camera and resolution. Publishing them per frame adds no information. Depends on the depth output existing, so that disabling the point cloud does not remove the only source of 3D data.
cristhian added this to the v0.2.0 Pure camera source on dora 1.0 milestone 2026-09-04 20:36:10 +00:00
cristhian added the feature label 2026-09-04 20:36:10 +00:00
Sign in to join this conversation.