Support
Support Modules Overview
DeGirum Tools provides a comprehensive suite of support modules designed to streamline various common tasks in the development of AI applications. These modules offer utilities that complement the core functionalities of PySDK and the DeGirum Tools, covering areas such as media handling, mathematical computations, model evaluation, user interface elements, and storage.
Included Support Modules
Audio Support
The Audio Support module offers utilities for managing and processing audio streams.
Key Features:
Open and manage audio streams from microphones and WAV files.
Generate audio frames with configurable buffer sizes, including support for overlapping buffers.
Handles both blocking and non-blocking stream operations.
Typical Usage: Integrating microphone input or file-based audio into AI pipelines, real-time audio processing.
Evaluation Support
The Model Evaluation Support module provides base classes and tools for assessing the performance of AI models.
Key Features:
Abstract base class (
ModelEvaluatorBase
) for creating custom model evaluators.Support for evaluator configuration via YAML files.
Tools for comparing model outputs with ground truth data and reporting results.
Typical Usage: Implementing custom evaluation pipelines for various models and datasets.
Math Support
The Math Support module delivers mathematical utilities tailored for computer vision and signal processing tasks.
Key Features:
Bounding box operations: area calculation, Intersection over Union (IoU), coordinate conversions.
Non-Maximum Suppression (NMS) with multiple selection policies.
Image tiling utilities for fixed size or aspect ratio.
A lightweight FIR low-pass filter for signal smoothing.
Typical Usage: Post-processing object detection results, preparing image data for models, smoothing time-series data.
Object Storage Support
The Object Storage Support module offers helper utilities for interacting with MinIO object storage.
Key Classes:
ObjectStorageConfig
: Manages configuration parameters for object storage connections.ObjectStorage
: A wrapper for common bucket operations like upload, download, and delete.
Typical Usage: Managing datasets, saving inference results, or handling other file-based assets in cloud or local storage.
UI Support
The UI Support module provides a versatile set of tools for user interface operations.
Key Features:
Displaying images and videos (
Display
class).Rendering text on images with customizable options (
put_text()
).Tracking progress with visual bars (
Progress
class).Measuring and displaying Frames Per Second (FPS) (
FPSMeter
class).
Typical Usage: Visualizing model outputs, creating interactive demos, monitoring application performance.
Video Support
The Video Support module offers comprehensive capabilities for using video streams with PySDK and DeGirum Tools.
Key Features:
Capture from local cameras, IP cameras, and video files.
Save video streams with configurable quality, format, and frame rates (
VideoWriter
).Extract frames from video files into JPEG sequences (
video2jpegs()
).Manage and save event-triggered video clips with pre/post event buffering (
ClipSaver
).
Typical Usage: Building video processing pipelines, security and surveillance applications, dataset creation from videos.
Last updated
Was this helpful?