Learn R Programming

oro.dicom (version 0.4.3)

readDICOMFile: Read Single DICOM File

Description

All information, both header and image, is read into a list structure from a DICOM file.

Usage

readDICOMFile(fname, endian = "little", flipud = TRUE, skipSequence = FALSE, 
              pixelData = TRUE, warn = -1, debug = FALSE)
parseDICOMHeader(rawString, sq.txt = "", endian = "little", 
                 verbose = FALSE)

Arguments

fname
is the file name of the DICOM image (with suffix).
endian
is the endian-ness of the file (default is "little").
flipud
is a logical variable for vertical flipping of the image (default is TRUE).
skipSequence
is a logical variable to skip all content contained in SequenceItem tags (default = TRUE).
pixelData
is a logical variable (default = TRUE) on whether or not the PixelData should be read from the DICOM files. This is useful when one wants to gather the DICOM header information without loading the images.
warn
is a number to regulate the display of warnings (default = -1). See options for more details.
debug
is a logical variable (default = FALSE) that regulates to display of intermediate processing steps.
verbose
is a logical variable (default = FALSE) that regulates to display of intermediate processing steps.
rawString
is a vector of raw values taken directly from the DICOM file.
sq.txt
is an character string (default = ) that indicates if the DICOM header field is embedded within a sequence.

Value

  • A list containing two elements: [object Object],[object Object]

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. Strict adherence to the DICOM standard is not required. Specifically, content is allowed to start at the first byte and the four characters DICM are not required at bytes 129-132.

References

Whitcher, B., V. J. Schmid and A. Thornton (2011). Working with the DICOM and NIfTI Data Standards in R, Journal of Statistical Software, 44 (6), 1--28. http://www.jstatsoft.org/v44/i06

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

See Also

readDICOM

Examples

Run this code
x <- readDICOMFile(system.file("dcm/Abdo.dcm", package="oro.dicom"))
graphics::image(t(x$img), col=grey(0:64/64), axes=FALSE, xlab="", ylab="",
                main="Abdo.dcm")

x <- readDICOMFile(system.file("dcm/Spine1.dcm", package="oro.dicom"))
graphics::image(t(x$img), col=grey(0:64/64), axes=FALSE, xlab="", ylab="",
                main="Spine1.dcm")

Run the code above in your browser using DataLab