robokudo.io.camera_without_depth_interface

OpenCV camera interface for RGB-only devices in RoboKudo.

This module provides an interface for OpenCV-compatible cameras and video sources that only provide RGB data without depth information. It supports:

  • Live camera streams

  • Video file playback

  • Single image loading

  • Contrast/brightness normalization

  • Configurable looping behavior

The module is used for:

  • USB webcams

  • IP cameras

  • Video file playback

  • Image sequence processing

Attributes

Classes

OpenCVCameraWithoutDepthInterface

An openCV camera without depth information.

Module Contents

robokudo.io.camera_without_depth_interface.TYPE_VIDEO: int = 0
robokudo.io.camera_without_depth_interface.TYPE_CAMERA: int = 1
robokudo.io.camera_without_depth_interface.TYPE_IMAGE: int = 2
class robokudo.io.camera_without_depth_interface.OpenCVCameraWithoutDepthInterface(camera_config)

Bases: robokudo.io.camera_interface.CameraInterface

An openCV camera without depth information. An OpenCV-based interface for RGB-only cameras and video sources.

This class handles various types of RGB input sources through OpenCV: * Live camera feeds (USB webcams, IP cameras) * Video file playback * Single image or image sequence loading

Supports features like: * Automatic input type detection * Configurable frame looping * Image normalization * Static camera calibration

Variables:
  • video_capture – OpenCV video capture object

  • device_driver_flag – OpenCV-specific driver flags

  • stream_type – Type of input (video/camera/image)

  • _loop_counter – Number of remaining playback loops

  • _backup_color – Backup of image for single-image mode

video_capture
device_driver_flag
stream_type = 0
_loop_counter
_backup_color = None
has_new_data()

Check if new frame data is available.

For video/camera streams, attempts to grab the next frame. For single images, checks if backup image is available.

Returns:

True if new data is available, False otherwise

Return type:

bool

set_data(cas: robokudo.cas.CAS)

Update the Common Analysis Structure with latest frame data.

This method: * Retrieves the next frame from video/camera or backup * Handles looping behavior for videos and images * Applies optional contrast/brightness normalization * Updates the CAS with frame and camera data

Parameters:

cas (robokudo.cas.CAS) – Common Analysis Structure to update