FLIR Knowledge Base
Search for...
Search
        |     
Exclude unwanted words:
Browse KB Articles
Go Back Printable Version Email This Article Bookmark This Article

Different color processing algorithms in FlyCapture2

KB Number: 10141
Last Revision Date: 5/4/2016

This article provides an example of each of the color processing algorithms implemented in FlyCapture2 and discusses the advantages of each. 

Some cameras (e.g., Flea3, Grasshopper3) convert the raw Bayer tiled images produced by the sensor into color on board the camera, while others (e.g., Firefly MV, Chameleon) leave this task to the host computer. The following list enumerates the various color processing / interpolation algorithms accessible through our various libraries.

NOTE: Details regarding our specific implementation of these algorithms is proprietary and cannot be shared with the public. Refer to the Coriander library for Linux (see KB 10144 Writing color processing software and color interpolation algorithms) for details on how to create your own color processing algorithms.

NOTE: Users of cameras that perform on-board color processing can still access the raw Bayer data, which will allow them to apply their own color conversion algorithm or one of the FlyCapture library algorithms. This is done by acquiring images using one of the Format_7 video modes that support Raw8 or Raw16 pixel encoding.

The following images were generated from the same raw image and are magnified to illustrate the differences. Click on the title above each image to open the full image from which it was taken, which can then be magnified further to examine the differences.

  • Nearest Neighbor - This is the fastest algorithm but it produces the lowest quality results.

Nearest Neighbour Sample

  • Edge Sensing - Slower than Nearest Neighbor, this algorithm weights surrounding pixels based on localized edge orientations.

Edge Sensing Sample

  • IPP - This is a multi-threaded color processing algorithm that produces results similar to Edge Sensing.

IPP Sample

  • High Quality Linear - Although this is the second-slowest algorithm, it is much faster than Rigorous and produces comparable results.

High Quality Linear Sample

  • Rigorous - This algorithm is the slowest of all of the algorithms, but produces good results.

Rigorous Sample

  • Directional - This algorithm is much faster than Rigorous and produces the best quality results.

Directional Sample

Was this article helpful?

Go Back Printable Version Email This Article Bookmark This Article