These subroutines process the information contained after the DICOM header and process this information into an image (2D or 3D) or complex-valued vector.

parsePixelData(rawString, hdr, endian = "little", flipupdown = TRUE)

parseSpectroscopyData(rawString, hdr, endian = "little")

Arguments

rawString

is a vector of raw values taken directly from the DICOM file.

hdr

is the list object of DICOM header information.

endian

is the endian-ness of the file (default is "little").

flipupdown

is a logical variable for vertical flipping of the image (default is TRUE).

Source

See references.

Value

A list containing two elements:

hdr

all DICOM header fields (with or without “sequence” information).

img

the ‘image’ information.

Details

A while loop is used to traverse the unknown number of DICOM header fields contained in a single file. Information contained in “sequences” may be included/excluded according to the logical variable skipSequence (default = TRUE).

A resursive implementation of the code breaks the DICOM file into segments and calls itself to parse each segment.

References

Digital Imaging and Communications in Medicine (DICOM)
http://medical.nema.org
http://en.wikipedia.org/wiki/Digital_Imaging_and_Communications_in_Medicine

See also

Author

Brandon Whitcher bwhitcher@gmail.com