public int[] GetPaletteColorLutData(
DicomPaletteColorLutType type
)
public int[] getPaletteColorLutData(DicomPaletteColorLutType type)
public:
array<int>^ GetPaletteColorLutData(
DicomPaletteColorLutType type
)
type
Type of the "Palette Color Lookup Table Data" to get.
Buffer that contains the "Palette Color Lookup Table Data".
This method will retrieve the data for the "Red", "Green" or "Blue" "Palette Color Lookup Table". If the data is segmented, the method will decode the data before copying it to the returned buffer.
using Leadtools;
using Leadtools.Dicom;
public void TestPaletteColorLut()
{
string dicomFileName = Path.Combine(LEAD_VARS.ImagesDir, "DICOM", "image3.dcm");
//Make sure to initialize the DICOM engine, this needs to be done only once
//In the whole application
DicomEngine.Startup();
using (DicomDataSet ds = new DicomDataSet())
{
int paletteColorLutSize = 65536;
//Load DICOM File
ds.Load(dicomFileName, DicomDataSetLoadFlags.None);
ds.DeletePaletteColorLut();
DicomPaletteColorLutAttributes paletteColorLutAttributes = new DicomPaletteColorLutAttributes();
// Initialize Red Palette Color Lookup Table Descriptor (0028,1101)
paletteColorLutAttributes.RedFirstStoredPixelValueMapped = 0;
paletteColorLutAttributes.RedEntryBits = 16;
paletteColorLutAttributes.RedNumberOfEntries = paletteColorLutSize;
// Initialize Green Palette Color Lookup Table Descriptor (0028,1102)
paletteColorLutAttributes.GreenFirstStoredPixelValueMapped = 0;
paletteColorLutAttributes.GreenEntryBits = 16;
paletteColorLutAttributes.GreenNumberOfEntries = paletteColorLutSize;
// Initialize Blue Palette Color Lookup Table Descriptor (0028,1103)
paletteColorLutAttributes.BlueFirstStoredPixelValueMapped = 0;
paletteColorLutAttributes.BlueEntryBits = 16;
paletteColorLutAttributes.BlueNumberOfEntries = paletteColorLutSize;
ds.SetPaletteColorLutAttributes(paletteColorLutAttributes);
int[] LutData = new int[paletteColorLutSize];
for (int i = 0; i < paletteColorLutSize; i++)
{
LutData[i] = i;
}
ds.SetPaletteColorLutData(LutData, DicomPaletteColorLutType.Red);
ds.SetPaletteColorLutData(LutData, DicomPaletteColorLutType.Green);
ds.SetPaletteColorLutData(LutData, DicomPaletteColorLutType.Blue);
DicomPaletteColorLutAttributes attributes = ds.GetPaletteColorLutAttributes();
if (attributes != null)
{
Debug.Assert(attributes.RedNumberOfEntries == paletteColorLutSize);
Debug.Assert(attributes.GreenNumberOfEntries == paletteColorLutSize);
Debug.Assert(attributes.BlueNumberOfEntries == paletteColorLutSize);
int[] data = ds.GetPaletteColorLutData(DicomPaletteColorLutType.Red);
// Do something with the data
}
ds.Save(Path.Combine(LEAD_VARS.ImagesDir, "DICOM", "PLUT.dcm"), DicomDataSetSaveFlags.None);
}
DicomEngine.Shutdown();
}
static class LEAD_VARS
{
public const string ImagesDir = @"C:\LEADTOOLS23\Resources\Images";
}
Help Collections
Raster .NET | C API | C++ Class Library | HTML5 JavaScript
Document .NET | C API | C++ Class Library | HTML5 JavaScript
Medical .NET | C API | C++ Class Library | HTML5 JavaScript
Medical Web Viewer .NET
Multimedia
Direct Show .NET | C API | Filters
Media Foundation .NET | C API | Transforms
Supported Platforms
.NET, Java, Android, and iOS/macOS Assemblies
Imaging, Medical, and Document
C API/C++ Class Libraries
Imaging, Medical, and Document
HTML5 JavaScript Libraries
Imaging, Medical, and Document