IMcLookupTable2ExtendedLutEx Property
|
|
Get the composite LUT curve in one of several formats.
Namespace:
MediaCy.IQL.Engine
Assembly:
MediaCy.IQL.Engine (in MediaCy.IQL.Engine.dll) Version: 10.0.6912.0
SyntaxReadOnly Property ExtendedLutEx (
Type As mcExtendedLUTType,
Optional FrameIndex As Integer = -1
) As Object
Get
Parameters
- Type
- Type: MediaCy.IQL.EnginemcExtendedLUTType
The type of LUT to expose. When using mceltDisplay or
mceltDisplayLinear, the array returned will be of type Byte, while
mceltConversion or mceltScaled will result in type double. As the names
imply, the conversion LUT is most useful when applying all of the current
LUT settings to the image, the scaled LUT is most useful when scaling pixel
values proportionally, while the display LUT is most often used for display.
Only for Types mceltDisplay or mceltDisplayLinear is any pseudocoloring
applied to the LUT. - FrameIndex (Optional)
- Type: SystemInt32
If given, the frame index in the ancestor McImage for which the
LUT is desired. Since a McPseudoColor instance may be assigned to each
frame as the McFrame.PseudoColor property, the LUT may be different for each
frame. The default is McActiveFrame (-1), which produces the same behavior
as accessing the obsolete ExtendedLut property.
Property Value
Type:
Object
RemarksUse this property in preference to the McLookupTable.ExtendedLut
property, which can only return the proper LUT for the active frame. The
ExtendedLutEx property will produce the proper LUT for any specified frame.
This property can be used to get a response curve LUT for either display
(requiring Byte output values), image conversion (requiring Double output
values) or image scaling (requiring Single output values). It differs from the
LUT property in that the response curve is returned in the proper length to fit
the dynamic range of the image (or the Length property for floating point
images), it applies the luminance channel response curve (for multi-channel
images), it applies the black and white levels, and it always returns the entire
LUT. In addition, for multi-channel images where this is the response LUT, that
is McLookupTables.Item(0), the returned LUT is returned as 3-tuple for each LUT
element (psuedocolored monochrome images are also returned as 3-tuples for the
display Types, see below).
The ExtendedLutEx property is exposed as an array of Byte (for the Type
parameter mceltDisplay or mceltDisplayLinear, these Types are also known as
"response LUT's"), as an array of Double (Type mceltConversion) or an array of
Single (Type mceltScaled). The array will be a one-dimensional array of Length
for non-pseudocolored monochrome images, where the mceltMonochromeLuminanceLut
flag is OR'ed with the requested Type or where this is not a response LUT. For a
response LUT of color images or pseudocolored monochrome images, the returned
array will be a two dimensional array dimensioned as (0 to 2, 0 to Length-1) in
VB notation or as [Length,3] in C/C++ notation (that is the fastest moving
dimension has 3 elements).
For ExtendedLutEx accesses with Type mceltDisplay or mceltDisplayLinear, the
exposed LUT will be pseudocolored for monochrome images if the
ParentLutsCollection McLookupTables.PseudoColor property is not Nothing. If the
ParentLutsCollection McLookupTables.PseudoColor property is Nothing, then a
McPseudoColor instance is applied from the McFrame.PseudoColor property of the
frame referenced in the ancestor McImage by the FrameIndex argument. In any
case, any McPseudoColor will be applied only if its McPseudoColor.Visible
property is True. The exposed LUT is never pseudocolored if the property is
accessed with the Type argument mceltConversion or mceltScaled. Pseudocolored
LUT's are returned as Byte triplets, as described above.
When getting this property, the return will contain an arrray of byte or double
values representing the LUT curve for each possible pixel value. For integral
pixel types, the number of values will be equal to the number of possible pixel
values in the corresponding image channel (e.g. 256 values for 8-bit per channel
images) up to a maximum of 64K. Floating point images have 64K LUT elements by
default, or the number assigned to the Length property (but always 256 or more).
See Also