How to decide if a DICOM series is a 3D volume or a series of images?

StackOverflow https://stackoverflow.com/questions/18529967

  •  26-06-2022
  •  | 
  •  

문제

We are writing an importer for dicom files.

How does one generally deceide if a series of images forms a 3D-Volume or is just a series of 2D images?

Is there a universal way to decide this for most vendors? I looked a the DICOM tags and could no find an apparent solution.

도움이 되었습니까?

해결책

The DICOM standard defines UIDs for describing the hierarchy. These are from top to bottom:

  • Study UID - Identifier of the study or scanning session.
  • Series UID - The same within a series acquired in one scan.
  • Image UID - Should be unique for any image.

A DICOM image saved by a standard-conforming implementation should have all these IDs. If multiple images have the same SeriesUID, they are a volume (or time-series) as defined in the standard. Some software of course is not standard-conforming and you'll have to look at other things like timestamps and patient position, but it is usually best to start by following the standard.

For ordering the series after identifying it, GDCM (as malat suggested) or dcmtkdicom are pretty well-established libraries.

다른 팁

In MR, you'll want to look for:

MR Acquisition Type (0018,0023). It has two enumerated values:

  • 2D = frequency x phase
  • 3D = frequency x phase x phase

I'm not as sure about CT.

Most of the time, malat's answer is what you'll want to do (i.e. organize the slices by position and orientation and treat them in a 3D fashion through multi-planar reconstruction).

I think what you are searching for is the algorithm to organise DICOM dataset using Image Position (Patient) and Image Orientation (Patient).

A typical implementation can be found in GDCM

Please note that my answer may be totally unrelated to your specific DICOM instances, but since you did not specified which SOP Class UID you were dealing with, I simply assumed you were dealing with old CT or MR Image Storage

Patient Position (0018, 5100) is a type 1 required attribute for both the CT and MR modalities. This attribute is VERY IMPORTANT for accurately interpreting the patient's orientation.

Projection radiograph typically will have Patient Orientation (0020, 0020) attribute and cross-sectional image should have Image Position (0020, 0032) and Image Orientation (0020, 0037) attributes as they are type 1 required element of Image Plane module (see PS 3.3 section C.7.6.2.1.1). However, localizer or scout image included with CT study is not really a cross-sectional image but a projection image and may contain Image Position and Image Orientation attributes. So is the case of MR study where one or more sagittal or coronal images are usually captured from which axial images are prescribed. In this case different logic is needed to identify the localizer image. For example, CT localizer may use the string "LOCALIZER" for value 3 of "Image Type" attributes.

If someone haven't found the answer, I looked through the tags in RadiAnt DICOM viewer where I compared different files and the Scan Options (0018, 0022) tag I think which contains the information. If the tag exists (because on some it was not there) and the value is equal to HELICAL MODE or HELIX then a 3D image can be constructed from that.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top