public int EntryBits { get; set; }
@property (nonatomic, assign) NSUInteger entryBits;
public int getEntryBits();
public void setEntryBits(
int intValue
);
EntryBits # get and set (DicomLookupTableDescriptor)
The third value in the "LookupTable Descriptor", which specifies the number of bits for each entry in the LookupTable Data.
using Leadtools;
using Leadtools.Codecs;
using Leadtools.ImageProcessing.Core;
public void ApplyModalityLookupTableCommandExample()
{
// Load an image
RasterCodecs codecs = new RasterCodecs();
codecs.ThrowExceptionsOnInvalidImages = true;
RasterImage image = codecs.Load(Path.Combine(LEAD_VARS.ImagesDir, "IMAGE2.dcm"));
// Prepare the command
int i;
short[] pLookupTable = new short[0x10000];
DicomLookupTableDescriptor LookupTableDescriptor = new DicomLookupTableDescriptor();
// set a LookupTable which reduces the intensity of each pixel to half
for (i = 0; i <= 0xFFFF; i++)
pLookupTable[i] = (short)(i / 2);
// fill the LookupTableDescriptor object
LookupTableDescriptor.FirstStoredPixelValueMapped = 0;
LookupTableDescriptor.EntryBits = 16;
// apply the LookupTable
ApplyModalityLookupTableCommand command = new ApplyModalityLookupTableCommand();
command.Flags = ModalityLookupTableCommandFlags.None;
command.LookupTable = pLookupTable;
command.LookupTableDescriptor = LookupTableDescriptor;
command.Run(image);
}
static class LEAD_VARS
{
public const string ImagesDir = @"C:\LEADTOOLS23\Resources\Images";
}
import java.io.File;
import java.io.IOException;
import org.junit.*;
import org.junit.runner.JUnitCore;
import org.junit.runner.Result;
import org.junit.runner.notification.Failure;
import static org.junit.Assert.*;
import leadtools.*;
import leadtools.codecs.*;
import leadtools.imageprocessing.core.*;
public void applyModalityLookupTableCommandExample() {
final String LEAD_VARS_IMAGES_DIR = "C:\\LEADTOOLS23\\Resources\\Images";
// Load an image
RasterCodecs codecs = new RasterCodecs();
codecs.setThrowExceptionsOnInvalidImages(true);
RasterImage image = codecs.load(combine(LEAD_VARS_IMAGES_DIR, "DICOM\\image2.dcm"));
String outputFileName = combine(LEAD_VARS_IMAGES_DIR, "modality.jpg");
// Prepare the command
int i;
int[] pLookupTable = new int[0x10000];
DicomLookupTableDescriptor lookupTableDescriptor = new DicomLookupTableDescriptor();
// set a LookupTable which reduces the intensity of each pixel to half
for (i = 0; i <= 0xFFFF; i++)
pLookupTable[i] = (short) (i / 2);
// fill the lookupTableDescriptor object
lookupTableDescriptor.setFirstStoredPixelValueMapped(0);
lookupTableDescriptor.setEntryBits(16);
// apply the LookupTable
ApplyModalityLookupTableCommand command = new ApplyModalityLookupTableCommand();
command.setFlags(ModalityLookupTableCommandFlags.NONE.getValue());
command.setLookupTable(pLookupTable);
command.setLookupTableDescriptor(lookupTableDescriptor);
command.run(image);
codecs.save(image, outputFileName, RasterImageFormat.JPEG, 8);
System.out.println("Command run, image saved to " + outputFileName);
assertTrue(new File(outputFileName).exists());
}
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