Page MenuHomePhabricator

Refactoring of Dicom Loading in DiffusionImaging
Closed, ResolvedPublic

Description

Primary-Aims:

  • use the new infrastructure provided by fixes to T16744 ( Refactoring of DicomSeriesReader )
  • long-term : replace the QmitkDiffusionDICOMImportView by the standard DICOM Editor in the Workbench

Secondary-Aims:

  • extend the support for different scanners and image types in dependency on external demands:
    • Chile IVIM = GE Datasets
    • SIEMENS MOSAIC = Romy
    • PHILIPS = no studies yet

Current status: prototyping of the changes is implemented in personal/hering/dcm-refactor-diffusion and personal/hering/dcm-refactor-diffusion-gui

Event Timeline

User hering has pushed new remote branch:

bug-16813-dcm-refactor-diffusion-master

User hering has pushed new remote branch:

bug-16813-dcm-refactor-diffusion-2014-03

User hering has pushed new remote branch:

bug-16813-dcm-refactor-diffusion-master-ITK451

User hering has pushed new remote branch:

bug-16813-diffusion-dicom-integration

User goch has pushed new remote branch:

bug-16813-dicom-refactoring-integration

The branch contains changes in Core/Code which occured during the creation of integration branches an the consequent merge of the bugfix branch. Namely:

Core/Code/Testing/DCMTesting/mitkTestDCMLoading.h and .cpp
Core/Code/Testing/mitkDicomSeriesReaderTest.cpp
Core/Code/Testing/files.cmake

One line (empty) was removed in

Core/Code/Rendering/mitkImageVtkMapper2D.cpp

Requesting CoreChange flag.

Summary from merge attempt:

Core/Code/Rendering/mitkImageVtkMapper2D.cpp | 1 +
.../Code/Testing/DCMTesting/mitkTestDCMLoading.cpp | 1 +
Core/Code/Testing/DCMTesting/mitkTestDCMLoading.h | 1 -
Core/Code/Testing/files.cmake | 1 -
Core/Code/Testing/mitkDicomSeriesReaderTest.cpp | 1 +
Core/Code/TestingHelper/mitkTestingMacros.h | 1 +

[8f5f96]: Merge branch 'bug-16813-dicom-refactoring-integration'

Merged commits:

2014-10-07 17:39:23 Caspar Goch [04c7d2]
Merge remote-tracking branch 'origin/bug-16813-diffusion-dicom-integration' into bug-16813-dicom-refactoring-integration

Conflicts:
Modules/CMakeLists.txt
Modules/DiffusionImaging/DiffusionCore/Testing/files.cmake
Modules/MapperExt/Internal/vtkPointSetSlicer.h


2014-10-07 17:32:31 Caspar Goch [ee1f83]
Merge remote-tracking branch 'origin/bug-18112-DWI-Registration-PreReleaseFixes' into bug-16813-dicom-refactoring-integration


2014-09-09 17:06:45 Jan Hering [1403ca]
Add SplitMosaic control button


2014-09-09 16:57:17 Jan Hering [5b3394]
Fixed MOSAIC Handling


2014-09-09 16:56:59 Jan Hering [051008]
Fixed DICOM Diffusion sorting


2014-09-05 18:05:15 Jan Hering [a5621c]
Add missing include

  • reason: compiler error because of recovered file from older state than current master

2014-09-05 17:39:08 Jan Hering [3a0ea7]
Re-added accidentally removed test source file


2014-09-05 17:09:10 Jan Hering [8a6683]
Re-added accidentally removed test


2014-09-05 17:08:35 Jan Hering [e9a182]
Fixed compile errors on WIN


2014-09-05 16:53:04 Jan Hering [bebbf5]
Fixed loading of MOSAIC information


2014-09-03 17:01:42 Jan Hering [e7aafe]
Fixed node naming for loaded DICOM DWIs


2014-09-03 17:00:28 Jan Hering [fa7eb0]
Adapted MiniApp to new interface


2014-09-03 15:04:26 Jan Hering [b8dacc]
Fix module deps names


2014-09-03 14:59:02 Jan Hering [c9427f]
Merge branch 'personal/hering/mic-hackfest-dicom' into bug-16813-diffusion-dicom-integration


2014-09-03 14:58:21 Jan Hering [107534]
Formatting output messages


2014-08-25 14:14:06 Jan Hering [4c6de2]
Merge branch 'personal/hering/mic-hackfest-dicom' into bug-16813-diffusion-dicom-integration

Conflicts:
Core/Code/Testing/DCMTesting/mitkTestDCMLoading.cpp
Core/Code/Testing/DCMTesting/mitkTestDCMLoading.h
Core/Code/Testing/files.cmake
Core/Code/Testing/mitkDicomSeriesReaderTest.cpp
Modules/DiffusionImaging/MiniApps/files.cmake


2014-08-25 14:05:15 Jan Hering [1a6f2f]
Add multi-file loading support


2014-08-21 15:28:31 Jan Hering [37238f]
Let the DiffusionDICOM inherit the ThreeDnT Reader

  • provides better sorting for different acquisitions (based on spatial information)
  • number of components is stored in timesteps

2014-08-21 11:22:50 Jan Hering [ac98b2]
Directinos has to be set after reference value

  • otherwise the preprocessing is not showing the values properly

2014-08-21 11:18:40 Jan Hering [e3f97e]
Finishing Philips DICOM Header import support

  • add reading in of gradient direction

2014-08-20 17:41:26 Jan Hering [50c9a9]
Add support (WIP) for Philips Diffusion

  • b values are extracted correctly
  • missing: gradient direction & adapt for non-directed datasets ( IVIM )

2014-08-08 14:54:29 Jan Hering [ed6ab5]
Add handling meta information in MOSAIC data


2014-08-08 13:58:25 Jan Hering [c5334f]
Add handling SIEMENES Mosaic Files


2014-08-08 13:58:01 Jan Hering [c1f549]
Fixed PREFIX usage in QmitkDICOM


2014-08-07 11:34:28 Jan Hering [0cf946]
Merge remote-tracking branch 'origin/personal/hering/mic-hackfest-dicom' into personal/hering/mic-hackfest-dicom

Conflicts:
Plugins/org.mitk.gui.qt.diffusionimaging/src/internal/QmitkDiffusionDicomImportView.cpp


2014-08-07 10:05:45 Jan Hering [6905e6]
Enhance recursive scanning in DiffusionDICOM

  • user defined PREFIX for selecting subdirs

2014-08-07 10:05:45 Jan Hering [67927b]
Enhance recursive scanning in DiffusionDICOM

  • user defined PREFIX for selecting subdirs

2014-08-06 17:09:24 Jan Hering [a7e928]
Adapting DICOMLoader to new API


2014-08-06 10:16:17 Jan Hering [4fc77a]
Merge branch 'personal/hering/dcm-refactor-diffusion-gui' into personal/hering/mic-hackfest-dicom

Conflicts:
Plugins/org.mitk.gui.qt.diffusionimaging/src/internal/QmitkDiffusionDicomImportView.cpp


2014-08-05 17:22:01 Jan Hering [2a2398]
Adapt old code to new module structure

  • DiffusionCore_Exports -> MitkDiffusionCoreExports + include file name

2014-08-05 17:01:20 Jan Hering [48cb07]
Merge remote-tracking branch 'origin/bug-16744-dcm-refactor-integration-2014-03' into personal/hering/mic-hackfest-dicom

Conflicts:
Core/Code/Rendering/mitkImageVtkMapper2D.cpp
Core/Code/Testing/DCMTesting/mitkTestDCMLoading.h
Modules/DICOMReader/CMakeLists.txt


2014-08-05 16:01:38 Jan Hering [c461b1]
Merge branch 'bug-16813-dcm-refactor-diffusion-master-ITK451' into personal/hering/mic-hackfest-dicom

Conflicts:
Core/Code/Testing/DCMTesting/mitkTestDCMLoading.cpp
Core/Code/Testing/files.cmake
Core/Code/Testing/mitkDicomSeriesReaderTest.cpp
Modules/DiffusionImaging/DiffusionCore/Testing/files.cmake


2014-08-04 11:20:32 Jan Hering [8814ca]
Merge branch 'bug-16813-dcm-refactor-diffusion-master' into bug-16813-dcm-refactor-diffusion-master-ITK451

Conflicts:
Core/Code/Rendering/mitkImageVtkMapper2D.cpp
Core/Code/Testing/DCMTesting/mitkTestDCMLoading.h
Core/Code/Testing/DICOMTesting/CMakeLists.txt
Examples/Plugins/org.mitk.example.gui.opencv/CMakeLists.txt
Modules/CMakeLists.txt
Modules/DiffusionImaging/DiffusionCore/CMakeLists.txt
Modules/DiffusionImaging/DiffusionCore/Testing/files.cmake
Modules/DiffusionImaging/MiniApps/files.cmake


2014-06-03 11:13:36 Jan Hering [195883]
New MiniApp for Diffusion DICOM Loading


2014-01-29 16:22:34 Jan Hering [b1c6e3]
Adapting new DICOM to current master

  • fixed warnings (as they are errors)
  • better structuring, separating declaration and definitions

2014-01-29 12:58:40 Jan Hering [e94a18]
Merge branch 'personal/hering/dcm-refactor-diffusion' into bug-16813-dcm-refactor-diffusion-master

Conflicts:
Core/Code/TestingHelper/mitkTestingMacros.h
Modules/DICOMReader/mitkDICOMFileReaderSelector.cpp
Modules/DiffusionImaging/DiffusionCore/CMakeLists.txt
Modules/DiffusionImaging/DiffusionCore/Testing/files.cmake
Modules/DiffusionImaging/DiffusionCore/files.cmake


2014-01-29 12:54:49 Jan Hering [f5cf04]
Merge remote-tracking branch 'origin/bug-16744-integration-master' into bug-16813-dcm-refactor-diffusion-master


2014-01-28 13:09:36 Jan Hering [a64362]
Merge branch 'bug-16780-RemoveWarningsInDiffusionImaging'


2014-01-15 15:47:49 Jan Hering [b9890e]
Enhance test : variable output


2014-01-15 15:44:51 Jan Hering [fb40ed]
FIX: Direction normalization for output


2014-01-15 15:44:12 Jan Hering [86ffe9]
Fixed b-value parsing for GE


2014-01-15 12:51:42 Jan Hering [496f2e]
Normalize diffusion vector


2014-01-09 11:03:06 Jan Hering [5a6fdb]
WIP : Extending Diffusion DICOM Reader to handle mosaic

  • not finished yet, missing:
    • correct criterion for distinguishing between mosaic/normal
    • collecting geometry information from mosaic + passing to the reader
  • the loading itself as implemented in the LoadMosaicToVector method works well

2014-01-09 11:00:54 Jan Hering [39768e]
Special struct for holding SIEMENS MOSAIC Diffusion header info


2014-01-09 11:00:01 Jan Hering [b441d8]
Prototyping MOSAIC image data loading for Diffusion


2014-01-09 10:58:50 Jan Hering [a6ce7a]
Fixed namespace for ModuleContext


2013-12-17 00:50:13 Jan Hering [4423fb]
Adapting QmitkDiffusionDicomView


2014-01-08 13:39:01 Jan Hering [d8ae67]
Merge remote-tracking branch 'origin/bug-16744-dcm-refactor' into personal/hering/dcm-refactor-diffusion


2013-12-18 17:23:56 Jan Hering [d24d9e]
Merge remote-tracking branch 'origin/personal/maleike/dcm-refactor' into personal/hering/dcm-refactor-diffusion

Conflicts:
Modules/DICOMReader/mitkDICOMImageBlockDescriptor.cpp
Modules/DICOMReader/mitkDICOMImageBlockDescriptor.h


2013-12-16 23:28:38 Jan Hering [9683cc]
Enable GE Diffusion DICOM Header reading


2013-12-16 23:27:30 Jan Hering [295270]
Implementing GE Diffusion DICOM Header reader

  • reading out 0x0043, 0x1039 for b-value
  • and 0x019,0x10bb-0x10bd for gradient direction

2013-12-15 23:59:17 Jan Hering [d23913]
Clean-up code


2013-12-13 23:37:40 Jan Hering [86e098]
Finalizing the prototype for DiffusionDICOM Loading

  • correct initialization of the vector image
  • added helper class for the loading

    [The output now corresponds to current QmitkDiffusionDicomView reading operation, currently tested for SIEMENS (non-mosaic) data]

2013-12-13 14:06:29 Jan Hering [9b6b05]
Extended test


2013-12-13 14:06:03 Jan Hering [578e9d]
Added output analyze and file loading stub


2013-12-13 14:04:44 Jan Hering [c61690]
Cleanup, add output production


2013-12-13 11:08:52 Jan Hering [97a58f]
Add extraction of siemens mosaic information


2013-12-13 02:15:42 Jan Hering [897f85]
Moving methods for better re-usage


2013-12-12 15:53:34 Jan Hering [67eb40]
Move header information to topmost class


2013-12-12 15:30:53 Jan Hering [5b4ae7]
Isotropic data handling


2013-12-12 15:13:51 Jan Hering [20c568]
Moving string parsing to superclass


2013-12-12 15:12:25 Jan Hering [a3bc13]
Added diffusion header SIEMENS tag parsing


2013-12-12 01:33:34 Jan Hering [b8943d]
Enable DiffusionHeaderReader in CMake

Conflicts:

Modules/DiffusionImaging/DiffusionCore/files.cmake


2013-12-12 01:26:01 Jan Hering [4196b1]
Added SIEMENS specific diffusion header parser


2013-12-12 01:25:17 Jan Hering [a95c4f]
Added new superclass for all diffusion header reader

  • abstract class

2013-12-12 01:24:27 Jan Hering [dc23fb]
Added basic test for reader

[HotFix] copying the helpder from DICOMModule, only temporary


2013-12-12 01:22:54 Jan Hering [06b1de]
Added diffusion DICOM reader, unified API

  • uses the DICOMITKSeriesGDCMReader for Sorting
  • then tests for diffusion-specific tags
  • add DICOMReader module dep to DiffusionCore

2013-12-14 00:44:23 Jan Hering [00c4c5]
Fixed float -> ScalarType in BlockDescriptor


2013-12-13 23:50:31 Jan Hering [7fbed8]
Merge branch 'personal/maleike/dcm-refactor' into personal/hering/dcm-refactor-diffusion

Conflicts:
Core/Code/Common/mitkTestingMacros.h
Core/Code/Testing/CMakeLists.txt
Core/Code/Testing/mitkDicomSeriesReaderTest.cpp

Marked bug as resolved as fixed. Please reopen with appropriate target milestone if not true.