ImageGear21.Core Assembly > ImageGear.Processing Namespace > ImGearRasterProcessing Class : TransformWithLUT Method |
'Declaration Public Shared Sub TransformWithLUT( _ ByVal page As ImGearRasterPage, _ ByVal LUT As ImGearMultichannelLUT _ )
'Usage Dim page As ImGearRasterPage Dim LUT As ImGearMultichannelLUT ImGearRasterProcessing.TransformWithLUT(page, LUT)
public static void TransformWithLUT( ImGearRasterPage page, ImGearMultichannelLUT LUT )
public: static void TransformWithLUT( ImGearRasterPage* page, ImGearMultichannelLUT* LUT )
public: static void TransformWithLUT( ImGearRasterPage^ page, ImGearMultichannelLUT^ LUT )
Number of single-channel LUTs in the multichannel LUT must match number of image channels. Input depth of each single-channel LUT must match the depth of corresponding channel. Depths of image channels after transform are determined by output depths of the coresponding single-channel LUTs.
// Make sure the image is gray. if (!ImGearRasterProcessing.ImageIsGray(igRasterPage)) return; // Create a LUT to convert image from 8bit to 4bit while also inverting. ImGearMultichannelLUT igMultichannelLUT = new ImGearMultichannelLUT( igRasterPage.DIB.ChannelCount, 8, 4); for (int i = 0; i < 255; ++i ) { igMultichannelLUT[0][i] = 15 - (i / 16); } // Transform the image with the LUT. ImGearRasterProcessing.TransformWithLUT(igRasterPage,igMultichannelLUT);
' Make sure the image is gray. If Not ImGearRasterProcessing.ImageIsGray(igRasterPage) Then Return End If ' Create a LUT to convert image from 8bit to 4bit while also inverting. Dim igMultichannelLUT As New ImGearMultichannelLUT(igRasterPage.DIB.ChannelCount, 8, 4) For i As Integer = 0 To 254 igMultichannelLUT(0)(i) = 15 - (i / 16) Next ' Transform the image with the LUT. ImGearRasterProcessing.TransformWithLUT(igRasterPage, igMultichannelLUT)