1 / 45

Converting DTI data into Nrrd file format

Converting DTI data into Nrrd file format. Sonia Pujol, Ph.D. Gordon Kindlmann, Ph.D. Randy Gollub, M.D, Ph.D. Acknowledgments. National Alliance for Medical Image Computing NIH U54EB005149 Neuroimage Analysis Center NIH P41RR013218 Section on Tissue Biophysics and Biomimetics

riley-bruce
Download Presentation

Converting DTI data into Nrrd file format

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Converting DTI data into Nrrd file format Sonia Pujol, Ph.D. Gordon Kindlmann, Ph.D. Randy Gollub, M.D, Ph.D.

  2. Acknowledgments National Alliance for Medical Image Computing NIH U54EB005149 Neuroimage Analysis Center NIH P41RR013218 Section on Tissue Biophysics and Biomimetics National Institutes of Health Thanks to Dr. Carlo Pierpaoli

  3. Disclaimer It is the responsibility of the user of 3DSlicer to comply with both the terms of the license and with the applicable laws, regulations and rules.

  4. Material • Slicer 2.6 http://www.na-mic.org/Wiki/index.php/Slicer:Slicer2.6_Getting_Started • Tensor Sample Data Set Tensor_data.zip http://www.na-mic.org/Wiki/index.php/Slicer:Workshop:User_Training_101 • Prerequisites This tutorial assumes that you have already completed • Slicer Basics Loading and Viewing Data (Slicer Training 1) • Slicer DT-MRI ( Slicer Training 8) http://www.na-mic.org/Wiki/index.php/Slicer:Workshop:User_Training_101

  5. Goal of the Tutorial Training on how to generate Nrrd headers DTI data and validate the orientation information within Slicer.

  6. Which image is correct ?

  7. Which image is correct ?

  8. The right one is correct

  9. Overview • Part 1: Nrrd description • Part 2: Nrrd requirements • Part 3: Generating Nrrd Files • Part 4: Nrrd training data • Part 5: Orientation validation within Slicer

  10. Background • Challenge: Concise and standardized description of the information contained in DWI and DTI data. • Current situation: • DICOM (Supplement 49) contains information on how to represent b-values and gradient directions of DWI • However no-one uses it: every vendor has their own unique way of archiving the relevant image acquisition parameters • The definition of the coordinate frame of the diffusion gradients (or the resulting estimated tensor) is not explicitly recorded in the header. • DICOM has no standard for tensors • Proposed Solution:Nrrd format

  11. Nearly Raw Raster Data (Nrrd) • The flexible Nrrd format includes a single header file and image file(s) that can be separate or combined. • A Nrrd header accurately represents N-dimensional raster information for scientific visualization and medical image processing. • NA-MIC has developed a way of using the Nrrd format to represent Diffusion Weighted Images (DWI) volumes and Diffusion Tensor Images (DTI). • Nrrd DWI and Nrrd DTI data can be read into 3D Slicer, to visually confirm that the orientation of the tensors is consistent with expected neuroanatomy

  12. DTI Pipeline Dxz Dxx Dxy Dyy Dyz Dzz Diffusion Sensitizing Gradients DWI images DTI images

  13. (X,Y,Z) (I,J,K) Coordinate frames Diffusion Sensitizing Gradients (X,Y,Z) DWI and DTI Image Orientation (I,J,K) Patient Space (R,A,S)

  14. Transformation matrices T: IJKRAS (I,J,K) (X,Y,Z) T: XYZRAS (R,A,S)

  15. Nrrd Terminology T: XYZRAS (X,Y,Z) (I,J,K) T: IJKRAS (R,A,S)

  16. Overview • Part 1: Nrrd description • Part 2: Nrrd requirements • Part 3: Generating Nrrd Files • Part 4: Nrrd training data • Part 5: Orientation validation within Slicer

  17. DTI Requirements To generate a Nrrd header for DTI data, you’ll need to know about the data representation and acquisition: DTI Volume characteristics • Data Type • Endianess • Dimensions Disk Storage • Axis Ordering Coordinate Frames • DTI Image Orientation • Gradient Measurement Frame Tensor coefficients • Order of the tensor coefficients

  18. Overview • Part 1: Nrrd description • Part 2: Nrrd requirements • Part 3: Generating Nrrd Files • Part 4: Nrrd training data • Part 5: Orientation validation within Slicer

  19. Generating Nrrd Files • Nrrd files can be generated from the Tk console of Slicer using the “unu” command line tool • unu is part of set of libraries called “Teem” compiled into Slicer 2.6 (http://teem.sourceforge.net/) • Slicer includes a Nrrd reader to load DTI volumes in Nrrd format

  20. Unu syntax • General Syntax: unucmd-iinput-ooutput • Tips: “unu”  list of unu commands “unucmd” help on cmd

  21. Unu syntax: ‘make’ command • ‘make’ syntax: unumake-iinput-ooutput • ‘make’ documentation: unumakehelp on make

  22. Running unu on Mac/Linux/Solaris To run the unu command from the Tk console, type ./unu • on Mac, you need to be in the directory /Lib/darwin-ppc/teem-build/bin • on Linux, you need to be in the directory /Lib/linux-x86/teem-build/bin • on Solaris, you need to be in the directory /Lib/solaris8/teem-build/bin. Another option for Mac/Linux/Solaris platforms is to enter the whole path to the /bin directory containing the executables when running the command.

  23. Running unu on Windows To run the unu command from the Tk console, type unu. On Windows, you do not need to be in the directory win32/bin/teem-build: the unu commands run from any location.

  24. Overview • Part 1: Nrrd description • Part 2: Nrrd requirements • Part 3: Generating Nrrd Files • Part 4: Nrrd DTI training data • Part 5: Orientation validation within Slicer

  25. Creating Nrrd header for the DTI Training Data From the Analyze header, extract the: • DTI Volume characteristics Data Type: Float “--type float” Endianess: Big Endian “--endian big” Dimensions: 91 109 91 6 “--size 91 109 91 6” • Disk Storage Axis Ordering: columns, rows, slices, tensor elements  “--kinds space space space 3d-symmetric-matrix” • Tensor coefficients Order of the tensor coefficients: Dxx, Dyy, Dzz, Dxy,Dxz, Dyz

  26. DTI Training Data • Coordinate Frames DTI Image Orientation: Right-Anterior-Superior • “--space ras” • Tensors Measurement Frame T: XYZRAS “--measurement frame (1,0,0) (0,1,0) (0,0,1)” • Space Direction and SpaceOrigin T: IJKRAS  --directions "(-1.98901,0.0,0.0) (0.0,1.99083,0.0) (0.0,0.0,2.0)--origin "(0,0,0)"

  27. Complete unu Command (Mac/Linux/Solaris) ./unumake -h -i Tensors.img --size 91 109 91 6 --type float --encoding raw --endian big --space ras --spaceunit mm mm mm --measurementframe "(1,0,0)(0,1,0)(0,0,1)“ --directions "(-1.98901,0.0,0.0) (0.0,1.99083,0.0) (0.0,0.0,2.0) none" --origin "(0,0,0)" | unu shuffle -a 3 -p 0 3 4 1 5 2 -o myTensors.nhdr

  28. Complete unu Command (Windows) unumake -h -i Tensors.img --size 91 109 91 6 --type float --encoding raw --endian big --space ras --spaceunit mm mm mm --measurementframe "(1,0,0)(0,1,0)(0,0,1)“ --directions "(-1.98901,0.0,0.0) (0.0,1.99083,0.0) (0.0,0.0,2.0) none" --origin "(0,0,0)" | unu shuffle -a 3 -p 0 3 4 1 5 2 -o myTensors.nhdr

  29. Reordering the Tensor Coefficients Initial tutorial dataset 0:Dxx 1:Dyy 2:Dzz 3:Dxy 4:Dxz 5:Dyz Final tutorial dataset 0:Dxx 3:Dxy 4:Dxz 1:Dyy 5:Dyz 2:Dzz unu shuffle –a 3 –p 0 3 4 1 5 2

  30. Step1: Unu Command into Slicer Type the unu command directly in the Tk console of Slicer

  31. Step 2: Adding axis description You need to add an additional kinds field to the generated Nrrd header to specify how the data is stored to disk (This is analogous to the “Intent” field in NIfTI file format)

  32. Step 2: Adding axis description Type the following Tcl commands in the Tk console: set file [open myTensors.nhdr a] puts $file “kinds: space space space 3d-symmetric-matrix” close $file

  33. Step 2: Axis description In this example kinds states that the data is stored with the tensors coefficients in the slowest axis.

  34. Step 3: Viewing the NRRD Header Type more MyTensors.nhdr in the Tk console to display the content of the NRRD header you just made

  35. Step 3: Viewing the Nrrd Header Slicer displays the content of the Nrrd header

  36. Overview • Part 1: Nrrd description • Part 2: Nrrd requirements • Part 3: Generating Nrrd Files • Part 4: Nrrd training data • Part 5: Orientation validation within Slicer

  37. Loading a Nrrd Volume Click on Add Volume in the Main Panel of Slicer

  38. Loading a Nrrd Volume The Props Panel of the module Volumes appears. Select Nrrd Reader in the Properties field Click on Browse and load the file myTensors.nhdr

  39. Loading a Nrrd Volume Check that the path to myTensors.nhdr is correctly loaded. If needed, type the correct path directly in the window. Click on Apply

  40. Loading a Nrrd Volume Slicer loads the Nrrd Tensor

  41. Fractional Anisotropy Compute the Fractional Anisotropy from the Nrrd Tensor Volume using the DT-MRI module (Slicer Training 4)

  42. Corpus Callosum Tracts Seed tracts in the Corpus Callosum using the tractography tools from the DT-MRI module (Slicer Training 4)

  43. Corpus Callosum Tracts The orientation of the tracts within the Corpus Callosum confirms that the orientation information contained in the Nrrd file is correct.

  44. The right one is correct

  45. Conclusion • Standardized description of the information contained in DTI data. • Rapid, intuitive visual assessment of orientation results within Slicer • Open-Source: http://teem.sourceforge.net/nrrd/

More Related