Function:DemosaicDFPD

From CUVI Wiki
Jump to: navigation, search

Restores an RGB image from a CFA image using DFPD Bayer algorithm. Directional Filtering with Posteriori Decision to restore the color image gives much better results than demosaic (with bilinear interpolation) and remove artifacts.

Function

CuviStatus demosaicDFPD(const CuviImage& src,
                        CuviImage& dst,
                        const CuviBayerSeq sensorAlignment,
                        bool refineResults,
                        const CuviStream& stream = CuviStream());

Parameters

Name Type Description
src const CuviImage& Input Bayer Image
dst CuviImage& Output RGB Image
sensorAlignment CuviBayerSeq Sensor alignment of the bayer image
refineResults bool Perform additional refinement step
stream const CuviStream& GPU stream ID for execution

Image Type Support

Input Output
8u 8u
16u 16u

Sample

Input
Output

Example

CuviImage input("D:/bayer.tif", CUVI_LOAD_IMAGE_GRAYSCALE_KEEP_DEPTH), output;
 
cuvi::colorOperations::demosaicDFPD(input, output, CUVI_BAYER_RGGB);
 
// Or this to further refine the results
cuvi::colorOperations::demosaicDFPD(input, output, CUVI_BAYER_RGGB, true);
 
cuvi::io::saveImage(output, "D:/debayered.png");