GStreamer / Video Stabilizer Element









Introduction

To ease the usage of the RidgeRun Video Stabilization library, a GStreamer plug-in is included to perform accelerated video stabilization based on the IMU readings. The stabilization process takes into account data coming from the sensor, which is matched with the timestamp of the frame to stabilize.

Thanks to this feature, the RidgeRun Video Stabilization GStreamer plug-in does not need buffering and reduces the latency of the stabilization library up to the processing time, which is usually less or equal to the frame interval (1/fps). For instance, if the framerate is 30 fps, the stabilization usually adds 33.3 ms or less.

This wiki will cover the features, properties and supported formats.

Supported Formats

The supported formats on GStreamer are:

  • Input: RGBA
  • Output: RGBA

The image dimensions are not constrained. However, it is highly recommended that the dimensions match a multiple of eight (8).

Features

The GStreamer plug-in included in the RidgeRun Video Stabilization library allows the selection of a sensor, fisheye lens undistortion, and hardware acceleration by setting only the element's properties. Here is a list of features:

  • Sensor Support: choose from the list of supported sensors provided by the library.
  • Hardware Acceleration: choose between OpenCV (CPU), OpenCL, and CUDA with a single selector.
  • Lens Correction: camera calibration and undistortion are crucial for good quality results. Pass the camera matrix and distortion coefficients easily without coding.
  • Variety of Algorithms: the RidgeRun Video Stabilization includes various algorithms for stabilization. Use them by just selecting them through a property.

When a sensor is not available in the library, the sensor has to be added to the library.

Properties

Missing Something?

You need another format, memory type, sensor or platform? Let's talk and add them together: Contact Us.