Foundation > Image Processing Filters > IlvBitmapFilter: The Image Processing Class > The IlvComponentTransferFilter Class
 
The IlvComponentTransferFilter Class
The IlvComponentTransferFilter class lets you perform component-wise remapping on images as follows:
R' = feFuncR( R )
G' = feFuncG( G )
B' = feFuncB( B )
A' = feFuncA( A )
feFuncR, feFuncG, feFuncB, and feFuncA define the transfer functions for each component.
It allows operations such as brightness adjustment, contrast adjustment, color balance, or thresholding.
Five predefined transfer functions are defined:
*identity: C' = C
*table: the function is defined by linear interpolation into a lookup table by attribute values, which provides a list of n+1 values (that is, v0 to vn) in order to identify n interpolation ranges. Interpolations use the following formula:
k/N <= C < (k+1)/N => C' = vk + (C - k/N)*N * (vk+1 - vk)
*discrete: the function is defined by the step function defined by attribute values, which provides a list of n values (that is, v0 to vn-1) in order to identify a step function consisting of n steps. The step function is defined by the following formula:
k/N <= C < (k+1)/N => C' = vk
*linear: the function is defined by the following linear equation:
C' = slope * C + intercept
where slope and intercept are user specified.
*gamma: the function is defined by the following exponential function:
C' = amplitude * pow(C, exponent) + offset
where amplitude, exponent, and offset are user specified.
Transfer functions are classes on their own and can be redefined (see IlvTransferFunction, IlvIdentityTransfer, IlvLinearTransfer, IlvTableTransfer, IlvDiscreteTransfer, and IlvGammaTransfer).

Version 6.3
Copyright © 2018, Rogue Wave Software, Inc. All Rights Reserved.