Skip to main content
se3labs.interface.eval.camera

Cameras

Camera hardware specifications and image observations.

Camera_DeviceType​

class Camera_DeviceType(Enum)

Attributes​

Realsense_D405 = 'realsense_d405'​#

Realsense D405 Stereo Camera. Both imagers are RGB, so one observation carries 2 views (left, right).

n_views: int​#

Read-only property. Number of frames delivered per observation (1 for mono, 2 for a stereo pair).

Camera_DeviceSpec​

Camera_DeviceSpec(
device_type: Camera_DeviceType,
resolution: tuple[int, int],
refresh_rate: int,
jpeg_compression: int | None,
)

Attributes​

device_type: Camera_DeviceType​#

Device type of the camera

resolution: tuple[int, int]​#

Resolution of each view of the camera stream, in tuple of (height, width), unit: [px]

refresh_rate: int​#

Refresh rate of the camera, unit: [fps]

jpeg_compression: int | None​#

jpeg compression quality value if specified, if None then no compression will be made.

n_views: int​#

Read-only property.

Camera_Observation​

Camera_Observation(timestamp: float, rgb: jt.UInt8[np.ndarray, 'b h w 3'])

One decoded observation of a camera: b RGB views captured together (b = 2 for a stereo pair).

Frames are delivered already decoded regardless of jpeg_compression. Construction enforces uint8 BHWC with 3 channels; validate binds (b, h, w) to the camera spec.

Attributes​

timestamp: float​#

Monotonic capture time on the station clock, unit: [s]. Shared by all views.

rgb: jt.UInt8[np.ndarray, 'b h w 3']​#

Views in device order (stereo: index 0 = left, 1 = right).

n_views: int​#

Read-only property.

Methods​

validate(spec: Camera_DeviceSpec) -> None​#