LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

DICOM Dissection

Hello everyone,

Recently I have began a project with requires the processing of DICOM images. I know there have been a lot of discussion of this topic, but I have yet to see a well documented answer. I've done my own research on this obstacle and have one quick question.

Assuming the DICOM image format it laid out as follows;

128-byte preamble (typically consisting of all 0's followed by the ASCII characters D,I,C,M)
794-byte header (contains information regarding patient, and device property, including image resolution, compression, and other specifications)
[Image]

Would it be possible to simply cut out the 128-preamble using low level data function, then separate the header file, then decompress the image, typically encoded in jpeg lossy, or jpeg lossless which is specified in the 794 byte header. If so would I run into any problems, and if so how would I overcome them.

My experience with other languages and files suggests that I could simply partition the file by specifying how many bytes into the file, and then process the image piece using a standard decode jpeg function, or in this case vi. Unfortunately, I am unfamiliar with these low level file manipulation function within lab view.

Any help, suggestions, or useful information is highly appreciated.

Thanks,
Taylor S. Amarel




Learning is living.
Co-Founder and CEO of http://3dprintingmodel.com/

"If we did all the things we are capable of, we would literally astound ourselves."
-Thomas Edison
0 Kudos
Message 1 of 4
(2,709 Views)

The DICOM standard is not directly supported by IMAQ Read File function, however, http://www.medicalconnections.co.uk/Examples.html

has a LabVIEW - DICOM interface which may be helpful to you.

 

 

Andy Chang
National Instruments
LabVIEW Control Design and Simulation
0 Kudos
Message 2 of 4
(2,689 Views)

Hello. Taylor

 

DICOM format is defined by a variable-length header, not an constant-length header such as BMP, JPEG.....

 

So, I recommend you search the Image Tag (7FE0,0010 : HEX (Little Endian)) which show the start point of image.

And after you cut 64 bits of ValueReference, the image is remain itself. 

If you don't know the size and bit-depth of Image, you also search tags, rows (0028,0010), columns (0028,0010),

bit-depth (0028,0100) before search the image tag.

 

Teru.

0 Kudos
Message 3 of 4
(2,624 Views)

Here are some vi's that I use to read and display DICOM images. Perhaps they will help.

0 Kudos
Message 4 of 4
(1,879 Views)