Every object in DICOM, whether a permanent Composite Object or merely a transient Normalised Object as used in Printing has a unique UID called its Instance UID. This is different from the SOP class UID which is shared with all other objects of the same type.
Key Object Selection Document
Object Selection Documents can be thought of as Structured Reports without the report!
Whilst this might sound stupid, it makes sense as they are used merely as a “manifest with a purpose”, sharing most of the attributes of Structured Reports.
There are multiple names by which this object type is commonly known:
Key Image note (KIN) Key Object note (KON) KOS They can be used for multiple purposes where it is required to “group” or “sub-smaple” Composite Instances, such as
This article describes different ways a DicomLabel object can be aligned inside a DicomViewer control using its properties in .NET and COM version of DicomObjects.
The LabelType “Formatted” in .NET version of DicomObjects provides a very useful way to access the value of any DicomImage property. For property which has a shortcut name, you can just put the name of the property within a pair of square brackets. You can also specify the “Group” and “Element” of any particular attribute. The code shows how to use the formatted label.
We have to admit the term “Bitmap” is a bit confusing for most people. It is actually a DICOM term for “map of bits”, not the common Bitmap graph. What you have for label type Bitmap is a collection of dots, positions of which are specified in the Points property of that label object:
Limiting Transfer Syntax for RT SOP Classes
There is a known issue in the Dicom Standard. SOP classes related to RT can legitimately be written / transferred using several different Transfer Syntaxes. HOWEVER The length of some of the attributes associated to RT is such that they can not be represented within a 32 bit word. As such it is imposable to represent them using an explicit Transfer Syntax.
Problem: Achieving Dicom Server security in .NET using DicomObjects.COM (activeX) version
A QueryServer implemented as a windows service in .NET environment. When listen to a secured port using ListenSecure method of the DicomServer a COM Exception “Exception from HRESULT: 0x80010105 (RPC E SERVERFAULT)” is thrown.
Contents DicomObjects.NET DicomObjects.COM 32 BIT 64 BIT Sensible level values for logging DicomObjects log files are extremely important and useful for analysing DICOM network and query/retrieve problems.
There are several ways to turn on logging in DicomObjects. DicomObjects.NET Use DicomGlobal.LogToFile method in your program. This should appear in a Form Load or similar startup method. DicomGlobal.LogToFile("C:\\DicomLogs",level);
Alternatively, without having to modify your source code, you can use the DicomObjects.
There 3 stages or transforms within the DICOM rendering pipeline with regards to applying Lookup tables that can alter input values for rendering. Used within these stages are 4 types of lookup table (LUT) which can be found within DICOM images are part of the standard, and one further type which exists in DicomObjects. These together with a number of other Pixel data modifiers are used within the pipeline to produce a flexible rendering chain.
Machine ID generation
Before DicomObjects can be used on any machine (physical or virtual), a list of unique MachineIDs is generated and used in the licensee activation process.
To generate a machine ID that can best (uniquely) identifies a machine, we gather various system information, for example:
Hard drive info MAC Address Operating System info > ‘(Only Applicable to Operating Systems that are older than Windows Vista)’ Adding new hardware Adding new hardware would not break the installed DicomObjects licence, as long as the existing hardware remain.
Making a copy of the image as displayed
It is possible to “Capture” an image as displayed on screen. This can be easily done in both .NET and COM version of DicomObjects.
Manual Editing of MWL data
It is a very bad and dangerous idea to let users (radiographers/technicians) edit the data received through Modality Worklist.
Here is a scenario There are 2 patients scheduled:
Joe Bloggs ID = 12345 Study UID = 220.127.116.11.12345 John Doe ID = 778899 Study UID = 18.104.22.168.778899 Now Joe Bloggs comes into the room, but the technician accidentally clicks on John Doe - what happens next?
Mask subtraction is very different in the COM and .NET versions of DicomObjects
DicomObjects.COM In the COM version of DicomObjects, two DicomImage properties associated with the Mask Subtraction operations are sometimes found a bit confusing to developers: Mask & MaskFrame.
Mask This functions as a switch to turn on/off the mask subtraction operation. If Mask Subtraction Sequence (0028, 6100) exists then DicomObjects will sets the default value of Mask to 1, otherwise 0.
Meta SOP Class
A Meta SOP class is used where it is required to negotiate a “set” of SOP Classes as a batch, as one would not be useful without the others. The Meta SOP classes still used in DICOM are: