LEADTOOLS Image Processing (Leadtools.ImageProcessing.Effects assembly)
LEAD Technologies, Inc

GetUserLookupTable Method

Example 





Lookup table array to be filled by this method.
Array of LeadPoint structures that contain the points on the curve used to update the lookup table.
Updates the lookup table, based on a curve that passes through the specified points. .NET support WinRT support Silverlight support
Syntax
public static int GetUserLookupTable( 
   int[] lookupTable,
   LeadPoint[] userPoints
)
'Declaration
 
Public Shared Function GetUserLookupTable( _
   ByVal lookupTable() As Integer, _
   ByVal userPoints() As LeadPoint _
) As Integer
'Usage
 
Dim lookupTable() As Integer
Dim userPoints() As LeadPoint
Dim value As Integer
 
value = EffectsUtilities.GetUserLookupTable(lookupTable, userPoints)
public static int GetUserLookupTable( 
   int[] lookupTable,
   LeadPoint[] userPoints
)
 function Leadtools.ImageProcessing.Effects.EffectsUtilities.GetUserLookupTable( 
   lookupTable ,
   userPoints 
)
public:
static int GetUserLookupTable( 
   array<int>^ lookupTable,
   array<LeadPoint>^ userPoints
) 

Parameters

lookupTable
Lookup table array to be filled by this method.
userPoints
Array of LeadPoint structures that contain the points on the curve used to update the lookup table.

Return Value

return the number of entries in the lookup table array that were actually updated by this method.
Remarks
Example
 
Public Sub GetUserLookupTableExample()
   Dim codecs As New RasterCodecs()
   codecs.ThrowExceptionsOnInvalidImages = True

   Dim leadImage As RasterImage = codecs.Load(Path.Combine(LEAD_VARS.ImagesDir, "Master.jpg"))

   ' Prepare the command
   Dim LookupTable() As Integer
   ReDim LookupTable(255)
   Dim UserPoint() As LeadPoint
   ReDim UserPoint(2)

   UserPoint(0) = New LeadPoint(0, 0)
   UserPoint(1) = New LeadPoint(128, 150)
   UserPoint(2) = New LeadPoint(255, 255)

   'Get Lookup table where the array effected by user data method.
   EffectsUtilities.GetUserLookupTable(LookupTable, UserPoint)
   Dim command As RemapIntensityCommand = New RemapIntensityCommand
   command.Flags = RemapIntensityCommandFlags.Master
   command.LookupTable = LookupTable
   command.Run(leadImage)
   codecs.Save(leadImage, Path.Combine(LEAD_VARS.ImagesDir, "Result.jpg"), RasterImageFormat.Jpeg, 24)

End Sub

Public NotInheritable Class LEAD_VARS
   Public Const ImagesDir As String = "C:\Users\Public\Documents\LEADTOOLS Images"
End Class
public void GetUserLookupTableExample()
   {
      // Load an image
      RasterCodecs codecs = new RasterCodecs();
      codecs.ThrowExceptionsOnInvalidImages = true;

      RasterImage image = codecs.Load(Path.Combine(LEAD_VARS.ImagesDir, "Master.jpg"));

      // Prepare the command
      int[] LookupTable = new int[256];
      LeadPoint[] UserPoint = new LeadPoint[3];
      UserPoint[0] = new LeadPoint(0, 0);
      UserPoint[1] = new LeadPoint(128, 150);
      UserPoint[2] = new LeadPoint(255, 255);

      //Get Lookup table where the array effected by user data method.
      EffectsUtilities.GetUserLookupTable(LookupTable, UserPoint);
      RemapIntensityCommand command = new RemapIntensityCommand();
      command.Flags = RemapIntensityCommandFlags.Master;
      command.LookupTable = LookupTable;
      command.Run(image);
      codecs.Save(image, Path.Combine(LEAD_VARS.ImagesDir, "Result.jpg"), RasterImageFormat.Jpeg, 24);

   }

static class LEAD_VARS
{
   public const string ImagesDir = @"C:\Users\Public\Documents\LEADTOOLS Images";
}
[TestMethod]
public async Task GetUserLookupTableExample()
{
   // Load an image
   RasterCodecs codecs = new RasterCodecs();
   codecs.ThrowExceptionsOnInvalidImages = true;
   // Load the image
   string srcFileName = @"Assets\Image1.cmp";
   StorageFile loadFile = await Tools.AppInstallFolder.GetFileAsync(srcFileName);
   RasterImage image = await codecs.LoadAsync(LeadStreamFactory.Create(loadFile));

   // Prepare the command
   int[] LookupTable = new int[256];
   LeadPoint[] UserPoint = new LeadPoint[3];
   UserPoint[0] = LeadPointHelper.Create(0, 0);
   UserPoint[1] = LeadPointHelper.Create(128, 150);
   UserPoint[2] = LeadPointHelper.Create(255, 255);

   //Get Lookup table where the array effected by user data method.
   EffectsUtilities.GetUserLookupTable(LookupTable, UserPoint);
   RemapIntensityCommand command = new RemapIntensityCommand();
   command.Flags = RemapIntensityCommandFlags.Master;
   command.LookupTable = LookupTable;
   command.Run(image);
   //Save as BMP
   string destFileName = @"result.bmp";
   StorageFile saveFile = await Tools.AppLocalFolder.CreateFileAsync(destFileName);
   await codecs.SaveAsync(image, LeadStreamFactory.Create(saveFile), RasterImageFormat.Bmp, 24);

}
public void GetUserLookupTableExample(RasterImage image, Stream outStream)
{
   // Prepare the command
   int[] LookupTable = new int[256];
   LeadPoint[] UserPoint = new LeadPoint[3];
   UserPoint[0] = new LeadPoint(0, 0);
   UserPoint[1] = new LeadPoint(128, 150);
   UserPoint[2] = new LeadPoint(255, 255);
   //Get Lookup table where the array effected by user data method.
   EffectsUtilities.GetUserLookupTable(LookupTable, UserPoint);
   RemapIntensityCommand command = new RemapIntensityCommand();
   command.Flags = RemapIntensityCommandFlags.Master;
   command.LookupTable = LookupTable;
   command.Run(image);
   // Save result image
   RasterCodecs codecs = new RasterCodecs();
   codecs.Save(image, outStream, RasterImageFormat.Jpeg, 24);
   image.Dispose();
}
Public Sub GetUserLookupTableExample(ByVal image As RasterImage, ByVal outStream As Stream)
   ' Prepare the command
   Dim LookupTable As Integer() = New Integer(255){}
   Dim UserPoint As LeadPoint() = New LeadPoint(2){}
   UserPoint(0) = New LeadPoint(0, 0)
   UserPoint(1) = New LeadPoint(128, 150)
   UserPoint(2) = New LeadPoint(255, 255)
   'Get Lookup table where the array effected by user data method.
   EffectsUtilities.GetUserLookupTable(LookupTable, UserPoint)
   Dim command As RemapIntensityCommand = New RemapIntensityCommand()
   command.Flags = RemapIntensityCommandFlags.Master
   command.LookupTable = LookupTable
   command.Run(image)
   ' Save result image
   Dim codecs As RasterCodecs = New RasterCodecs()
   codecs.Save(image, outStream, RasterImageFormat.Jpeg, 24)
   image.Dispose()
End Sub
Requirements

Target Platforms: Windows 7, Windows Vista SP1 or later, Windows XP SP3, Windows Server 2008 (Server Core not supported), Windows Server 2008 R2 (Server Core supported with SP1 or later), Windows Server 2003 SP2

See Also

Reference

EffectsUtilities Class
EffectsUtilities Members
Leadtools.ImageProcessing.Color.RemapIntensityCommand
Leadtools.ImageProcessing.Color.AdjustTintCommand
Leadtools.ImageProcessing.Color.GammaCorrectExtendedCommand

 

 


Products | Support | Contact Us | Copyright Notices

© 2006-2012 All Rights Reserved. LEAD Technologies, Inc.