Skip to content

Releases: sohams25/prism-ros

Release list

Release 0.1.0

Choose a tag to compare

@sohams25 sohams25 released this 26 Apr 23:11

What's New

  • Initial public release of prism_image_proc: hardware-agnostic ROS 2 Humble image-processing accelerator with prism::ResizeNode as a drop-in replacement for image_proc::ResizeNode's resize pipeline.
  • prism::ImageProcNode chainable base with action-chain composition (resize, crop, flip, colorconvert) and cv::resize direct-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 via PipelineFactory (two-step probes per backend: nvvideoconvertnvvidconv on Jetson, vapostprocvaapipostproc on Intel).
  • Zero-copy intra-process ingest (gst_buffer_new_wrapped_full + unique_ptr move), 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 CameraInfoTransform functors, and PipelineFactory.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: vaapipostproc chroma-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 sends crop to CPU videocrop. A JetPack image with the multimedia API installed (ships nvvideoconvert) closes this gap; capture is forward-work.
  • Rectification not implemented (forward-work).