GPU Bayer Conversion

来源:互联网 发布:刘亦菲票房毒药知乎 编辑:程序博客网 时间:2024/05/16 15:38

转自:

http://www.visionexperts.co.uk/news/?id=19

Tuesday 3 November 2009

Vision Experts has released its latest GPU accelerated library which uses CUDA enabled NVidia GPU's to perform high quality adaptive Bayer-to-RGB conversion with colour correction.

This library addresses the requirment for high throughput format conversion for the latest generation of high resolution colour vision cameras without the associated cost of an FPGA solution.

The library consists of a simple 'C' interface and associated DLLs, plus example application and documentation. The library functions enable the user to easily perform all the initialisation, transfers and conversion in just a few function calls and completely hides all of the underlying details of GPU data marshalling and processing from the user. All Bayer modes are supported and several conversion quality modes are available from ultra-fast Half resolution through to a fully edge adaptive conversion with colour correction. Conversion can be performed from 8-bit Bayer to both 24-bit and 32-bit data types - all combinations of RGB, RGBX, BGR and BGRX formats can be produced in record times.

The library has been tested and demonstrated running continuously at 60fps with a high resolution Adamec camera.

The Bayer library is part of the input stage for the GPU JPG library currently under development that can convert Bayer or RGB images directly into a JPG stream at high speed.

 

GPU shader development

Monday 8 October 2007

YUV Display
YUV Display

Using the Vision Experts image processing engine with custom fragment shaders, the GPU can be harnessed to perform a variety of useful image processing tasks

Our latest addition is a YUV422 to RGB24 conversion algorithm for OpenGL under Windows operating systems. Capture bandwith is reduced when using YUV422 with 16bits per pixel when compared to 24-bit RGB, which reduces system loading. Unfortunately, using a YUV422 image as a texture source results in a corrupted display since this format is not supported by OpenGL under Windows. After inserting our fragment shader into the rendering pipeline the problem is corrected and the image is rendered correctly, with virtually no processing overhead. We have now developed shaders for a number of real-time display tasks including:

  • YUV422 to RGB24 format conversion
  • Bayer to RGB24 format conversion
  • Image alignment and warping and stitching (vertex & fragment programs)
  • Video fusion and blending (vertex & fragment programs)

At present, due to bandwidth limitations it is usually more efficient to use the GPU for display than as an intermediate image processing step. However, as that situation changes, Vision Experts is committed to being on the cutting edge of algorithm development for GPU technology.