[vtkusers]ask how to read DICOM(again)

Noecker, Angela M. noeckera at ccf.org
Mon Oct 8 13:35:02 EDT 2007


Mathieu,

Could you explain exactly which fields in the DICOM header
vtkDICOMImageReader uses to parse the files?  I haven't dug into the
source code yet, but it seems clear that it accesses the following:

0020, 0032 Image Position (Patient)
0020, 0037 Image Orientation (Patient)

Other than that it's not clear.  It seems that when reading images from
a folder that contains multiple image series, the class looks for 0020,
000E Series Instance UID to determine which images to include in the
volume it opens.  Is that correct?

I'm currently having issues with z spacing of a DICOM dataset.  How does
vtkDICOMImageReader acquire the dataspacing using "GetDataSpacing"?  For
the specific dataset giving me trouble this class gives me a z spacing
of 6 although when I view the dataset using other software the z spacing
should clearly be 2.  The DICOM header value 0018, 0050 Slice Thickness
is 1.9999981.  There are 51 images in the set and the z value of the
DICOM header identifier 0020, 0032 Image Position (Patient) varies by 2
for each consecutive slice except the last one which varies by 6.  If I
remove the last image from the set I still get the same spacing problem.

Can you help?

Angela

-----Original Message-----
From: vtkusers-bounces+noeckera=ccf.org at vtk.org
[mailto:vtkusers-bounces+noeckera=ccf.org at vtk.org] On Behalf Of Mathieu
Malaterre
Sent: Monday, October 08, 2007 4:57 AM
To: m26404030 at john.petra.ac.id
Cc: vtkusers at vtk.org
Subject: Re: [vtkusers]ask how to read DICOM(again)

On 10/6/07, m26404030 at john.petra.ac.id <m26404030 at john.petra.ac.id>
wrote:
> thanx for ur answer again, but i am not allowed to use many libraries 
> in my project..i think i must use VTK only for the helping library.

If you are stuck with VTK only, your only choice is to use
vtkDICOMImageReader.

> anyone can show me how to get the data such as patient age manually by

> reading the .dcm files in C++?
>
> i dont understand the data structure of .dcm files..

You certainly don't want to dive into this, trust me :)

> i have read several references but i still dont understand it. maybe 
> someone can give me the example code in C++ how to do it..

  vtkDICOMImageReader *r = vtkDICOMImageReader::New()
  r->SetFileName( "image.dcm");
  r->Update();


HTH
--
Mathieu
_______________________________________________
This is the private VTK discussion list. 
Please keep messages on-topic. Check the FAQ at:
http://www.vtk.org/Wiki/VTK_FAQ Follow this link to
subscribe/unsubscribe:
http://www.vtk.org/mailman/listinfo/vtkusers


===================================

Cleveland Clinic is ranked one of the top hospitals
in America by U.S. News & World Report (2007).  
Visit us online at http://www.clevelandclinic.org for
a complete listing of our services, staff and
locations.


Confidentiality Note:  This message is intended for use
only by the individual or entity to which it is addressed
and may contain information that is privileged,
confidential, and exempt from disclosure under applicable
law.  If the reader of this message is not the intended
recipient or the employee or agent responsible for
delivering the message to the intended recipient, you are
hereby notified that any dissemination, distribution or
copying of this communication is strictly prohibited.  If
you have received this communication in error,  please
contact the sender immediately and destroy the material in
its entirety, whether electronic or hard copy.  Thank you.






More information about the vtkusers mailing list