Releases: sohams25/prism-ros
Releases · sohams25/prism-ros
Release list
Release 0.1.0
What's New
- Initial public release of
prism_image_proc: hardware-agnostic ROS 2 Humble image-processing accelerator withprism::ResizeNodeas a drop-in replacement forimage_proc::ResizeNode's resize pipeline. prism::ImageProcNodechainable base with action-chain composition (resize, crop, flip, colorconvert) andcv::resizedirect-mode fallback when no GPU element validates.- Thin component wrappers:
prism::ResizeNode,prism::CropNode,prism::ColorConvertNode. - Runtime hardware detection via
HardwareDetector+ live GStreamer registry validation viaPipelineFactory(two-step probes per backend:nvvideoconvert→nvvidconvon Jetson,vapostproc→vaapipostprocon Intel). - Zero-copy intra-process ingest (
gst_buffer_new_wrapped_full+unique_ptrmove), single-copy egress, no DDS round-trip on supported paths; verified empirically on Jetson Orin. - A/B benchmark harness with Python NumPy stock baseline; A/B comparison launch file for side-by-side measurement against
image_proc. - Test/demo helpers:
prism::MediaStreamerNode,prism::Synthetic4kPubNode. - gtest unit suite covering the action-chain parser, all four
CameraInfoTransformfunctors, andPipelineFactory.build(). - CI workflow on push and pull request (Humble container, gtest target).
- Project website at https://sohams25.github.io/prism-ros/ with architecture, parameters, benchmarks, and roadmap.
- Apache-2.0 license.
Known Limitations
- Intel VA-API:
vaapipostprocchroma-subsampling regression on GStreamer 1.20 forces direct-mode fallback on stock Humble. GStreamer 1.22+ (Ubuntu 24.04 / Jazzy) is required for the GPU resize kernel on Intel. - Jetson Orin (legacy
nvvidconv): BGR-CAPS gap forces a CPU adapter on each pipeline boundary; per-action routing table sendscropto CPUvideocrop. A JetPack image with the multimedia API installed (shipsnvvideoconvert) closes this gap; capture is forward-work. - Rectification not implemented (forward-work).