Compute a trichromatic image from an HSZ or FLA data structure

Contents

Syntax

    Irgb = recover_RGBImage(Data);
    Irgb = recover_RGBImage(Data, CMF);
    Irgb = recover_RGBImage(Data, CMF, 'use_endmembers');
    Irgb = recover_RGBImage(Data, CMF, 'tonemap');
    Irgb = recover_RGBImage(Data, CMF, 'use_endmembers','tonemap');

Description:

    Function for computing a pseudocolour image from an HSZ or FLA data
    structure using a pre-defined camera spectral sensitivity function.

Inputs:

    Data: HSZ FLA data struct to be processed.
    CMF: Spectral sensitivity function (CMF) to be used. This is a 4 x bands array whose first
        column contains the wavelength vector. The remaining columns account
        for the BGR components of the matching function. If no CMF is
        provided, the sensitivity function for the Nikon D70 camera is used.
    'use_endmembers': Option which deterrmines that the end members embedded in the file
        should be used for the color rendering rather than the
        materials. By default, the materials are used.
    'tonemap': Option which deterrmines whether the image should be
        tonemapped for display purposes. The default output does not include
        tonemapping.

Outputs:

    Irgb: Pseudo-colour image.

Example:

    I = FLAread('.\shared\samples\face.fla','fullheader');
    HSZ = Scyllarus(I);
    LibCMF = SLZread('.\shared\CMFs\StilesBurch1955CMFs2deg.slz');
    CMF = LibCMF.Endmember(1:3,:);
    Irgb=recover_RGBImage(HSZ,[LibCMF.HDR.wavelength;CMF(3,:);CMF(2,:);CMF(1,:)]);

See also:

 FLAread, HSZread, Scyllarus