Sets up the paint or paint and image processing methods' window leveling options for a specific image through a lookup-table (LookupTable).
public class ApplyVoiLookupTableCommand : RasterCommand Public Class ApplyVoiLookupTableCommandInherits Leadtools.Imageprocessing.Leadtools.ImageProcessing.RasterCommandImplements Leadtools.Imageprocessing.Leadtools.ImageProcessing.IRasterCommand
public sealed class ApplyVoiLookupTableCommand : Leadtools.Imageprocessing.Leadtools.ImageProcessing.IRasterCommand @interface LTApplyVoiLookupTableCommand : LTRasterCommand public class ApplyVoiLookupTableCommand extends RasterCommand function Leadtools.ImageProcessing.Core.ApplyVoiLookupTableCommand() public ref class ApplyVoiLookupTableCommand : public Leadtools.Imageprocessing.Leadtools.ImageProcessing.RasterCommand, Leadtools.Imageprocessing.Leadtools.ImageProcessing.IRasterCommand This command is available in the Document and Medical Imaging toolkits.
For more information, refer to Changing Brightness and Contrast. In Silverlight versions of LEADTOOLS, this image processing command will fail if the image data for the RasterImage object is stored internally using a Silverlight WriteableBitmap object. For more information, refer to Image Processing Command Limitations in Silverlight.
Run the ApplyVoiLookupTableCommand on an image.
using Leadtools;using Leadtools.Codecs;using Leadtools.ImageProcessing.Core;public void ApplyVoiLookupTableCommandExample(){// Load an imageRasterCodecs codecs = new RasterCodecs();codecs.ThrowExceptionsOnInvalidImages = true;RasterImage image = codecs.Load(Path.Combine(LEAD_VARS.ImagesDir, "IMAGE2.dcm"));// Prepare the commandint i;short[] pLookupTable = new short[0x10000];DicomLookupTableDescriptor LookupTableDescriptor = new DicomLookupTableDescriptor();for (i = 0; i < 0x10000; i++){if (i < 30){pLookupTable[i] = 0;}elseif (i > 630)pLookupTable[i] = 630;elsepLookupTable[i] = (short)i;}// fill the LookupTableDescriptor objectLookupTableDescriptor.FirstStoredPixelValueMapped = 0;LookupTableDescriptor.EntryBits = 16;ApplyVoiLookupTableCommand command = new ApplyVoiLookupTableCommand();command.Flags = VoiLookupTableCommandFlags.None;command.LookupTable = pLookupTable;command.LookupTableDescriptor = LookupTableDescriptor;command.Run(image);}static class LEAD_VARS{public const string ImagesDir = @"C:\Users\Public\Documents\LEADTOOLS Images";}
Imports LeadtoolsImports Leadtools.CodecsImports Leadtools.ImageProcessing.CoreLeadtools.Examples.Support.SetLicense()Public Sub ApplyVoiLookupTableCommandExample()Dim codecs As New RasterCodecs()codecs.ThrowExceptionsOnInvalidImages = TrueDim leadImage As RasterImage = codecs.Load(Path.Combine(LEAD_VARS.ImagesDir, "IMAGE2.dcm"))' Prepare the commandDim i As IntegerDim pLookupTable() As ShortReDim pLookupTable(65536)Dim LookupTableDescriptor As DicomLookupTableDescriptor = New DicomLookupTableDescriptorFor i = 0 To 65536If (i < 30) ThenpLookupTable(i) = 0ElseIf (i > 630) ThenpLookupTable(i) = 630ElsepLookupTable(i) = CType(i, Int16)End IfEnd IfNext' fill the LookupTableDescriptor objectLookupTableDescriptor.FirstStoredPixelValueMapped = 0LookupTableDescriptor.EntryBits = 16Dim command As ApplyVoiLookupTableCommand = New ApplyVoiLookupTableCommandcommand.Flags = VoiLookupTableCommandFlags.Nonecommand.LookupTable = pLookupTablecommand.LookupTableDescriptor = LookupTableDescriptorcommand.Run(leadImage)End SubPublic NotInheritable Class LEAD_VARSPublic Const ImagesDir As String = "C:\Users\Public\Documents\LEADTOOLS Images"End Class
using Leadtools;using Leadtools.Examples;using Leadtools.Codecs;using Leadtools.ImageProcessing.Core;public void ApplyVoiLookupTableCommandExample(RasterImage image, Stream outStream){// Prepare the commandint i;short[] pLookupTable = new short[0x10000];DicomLookupTableDescriptor LookupTableDescriptor = new DicomLookupTableDescriptor();for (i = 0; i < 0x10000; i++){if (i < 30){pLookupTable[i] = 0;}elseif (i > 630)pLookupTable[i] = 630;elsepLookupTable[i] = (short)i;}// fill the LookupTableDescriptor objectLookupTableDescriptor.FirstStoredPixelValueMapped = 0;LookupTableDescriptor.EntryBits = 16;ApplyVoiLookupTableCommand command = new ApplyVoiLookupTableCommand();command.Flags = VoiLookupTableCommandFlags.None;command.LookupTable = pLookupTable;command.LookupTableDescriptor = LookupTableDescriptor;command.Run(image);// Save result imageRasterCodecs codecs = new RasterCodecs();codecs.Save(image, outStream, RasterImageFormat.Jpeg, 24);image.Dispose();}
Imports LeadtoolsImports Leadtools.CodecsImports Leadtools.ImageProcessing.CorePublic Sub ApplyVoiLookupTableCommandExample(ByVal image As RasterImage, ByVal outStream As Stream)' Prepare the commandDim i As IntegerDim pLookupTable As Short() = New Short(&H10000 - 1) {}Dim LookupTableDescriptor As DicomLookupTableDescriptor = New DicomLookupTableDescriptor()i = 0Do While i < &H10000If i < 30 ThenpLookupTable(i) = 0ElseIf i > 630 ThenpLookupTable(i) = 630ElsepLookupTable(i) = CShort(i)End IfEnd Ifi += 1Loop' fill the LookupTableDescriptor objectLookupTableDescriptor.FirstStoredPixelValueMapped = 0LookupTableDescriptor.EntryBits = 16Dim command As ApplyVoiLookupTableCommand = New ApplyVoiLookupTableCommand()command.Flags = VoiLookupTableCommandFlags.Nonecommand.LookupTable = pLookupTablecommand.LookupTableDescriptor = LookupTableDescriptorcommand.Run(image)' Save result imageDim codecs As RasterCodecs = New RasterCodecs()codecs.Save(image, outStream, RasterImageFormat.Jpeg, 24)image.Dispose()End Sub
ApplyVoiLookupTableCommand Members
Leadtools.ImageProcessing.Core Namespace
Changing Brightness and Contrast
ApplyLinearVoiLookupTableCommand Class
Leadtools.ImageProcessing.Color.RemapIntensityCommand
ApplyModalityLookupTableCommand Class
ApplyLinearModalityLookupTableCommand Class
Raster .NET | C API | C++ Class Library | JavaScript HTML5
Document .NET | C API | C++ Class Library | JavaScript HTML5
Medical .NET | C API | C++ Class Library | JavaScript HTML5
Medical Web Viewer .NET
