CUDA ISP for NVIDIA Jetson: API usage

From RidgeRun Developer Connection
Jump to: navigation, search


  Index  






General

CUDA ISP provides several algorithms to process raw image data from a camera sensor in a variety of ways.

Here we illustrate a simple example that involves all the basic algorithms. This example takes a raw bayer10 image, converts it to a bayer8 image, then converts it to a rgb image, then applies automatic white balancing on the image, then converts it to I420 format. A simple process of this type might be used to encode camera information into a video file or a network stream.

We first create a backend object. The backend object provides factories to create algorithms and buffers. We specify CUDA as the desired backend type.

auto backend = rr::IBackend::Build(rr::kCUDA);

The creation of any given algorithm requires a single function call:

auto shift = backend->CreateAlgorithm(rr::kShift);
auto debayer = backend->CreateAlgorithm(rr::kDebayer);
auto white_balancer = backend->CreateAlgorithm(rr::kWhiteBalancer);
auto color_space_converter = backend->CreateAlgorithm(rr::kColorSpaceConverter);

AWB

Debayer

Shift


  Index