Medical Imaging Interaction Toolkit
2018.4.99-389bf124
Medical Imaging Interaction Toolkit
|
Extends DICOMITKSeriesGDCMReader by sorting/grouping into 3D+t image blocks. More...
#include <mitkThreeDnTDICOMSeriesReader.h>
Public Member Functions | |
mitkClassMacro (ThreeDnTDICOMSeriesReader, DICOMITKSeriesGDCMReader) | |
mitkCloneMacro (ThreeDnTDICOMSeriesReader) | |
mitkNewMacro1Param (ThreeDnTDICOMSeriesReader, unsigned int) | |
void | SetGroup3DandT (bool on) |
Control whether 3D+t grouping shall actually be attempted. More... | |
bool | GetGroup3DandT () const |
bool | LoadImages () override |
Load via multiple calls to itk::ImageSeriesReader. More... | |
bool | operator== (const DICOMFileReader &other) const override |
![]() | |
mitkClassMacro (DICOMITKSeriesGDCMReader, DICOMFileReader) | |
mitkCloneMacro (DICOMITKSeriesGDCMReader) | |
mitkNewMacro1Param (DICOMITKSeriesGDCMReader, unsigned int) | |
mitkNewMacro2Param (DICOMITKSeriesGDCMReader, unsigned int, bool) | |
void | AnalyzeInputFiles () override |
Runs the sorting / splitting process described in Loading strategy. Method required by DICOMFileReader. More... | |
bool | CanHandleFile (const std::string &filename) override |
Indicate whether this reader can handle given file. More... | |
virtual void | AddSortingElement (DICOMDatasetSorter *sorter, bool atFront=false) |
Add an element to the sorting procedure described in Loading strategy. More... | |
ConstSorterList | GetFreelyConfiguredSortingElements () const |
void | SetFixTiltByShearing (bool on) |
Controls whether to "fix" tilted acquisitions by shearing the output (see Gantry tilt handling). More... | |
bool | GetFixTiltByShearing () const |
void | SetAcceptTwoSlicesGroups (bool accept) const |
Controls whether groups of only two images are accepted when ensuring consecutive slices via EquiDistantBlocksSorter. More... | |
bool | GetAcceptTwoSlicesGroups () const |
void | SetToleratedOriginOffsetToAdaptive (double fractionOfInterSliceDistanct=0.3) const |
See Forced Configuration. More... | |
void | SetToleratedOriginOffset (double millimeters=0.005) const |
See Forced Configuration. More... | |
void | SetSimpleVolumeReading (bool read) |
Ignore all dicom tags that are non-essential for simple 3D volume import. More... | |
bool | GetSimpleVolumeReading () |
Ignore all dicom tags that are non-essential for simple 3D volume import. More... | |
double | GetToleratedOriginError () const |
bool | IsToleratedOriginOffsetAbsolute () const |
double | GetDecimalPlacesForOrientation () const |
DICOMTagPathList | GetTagsOfInterest () const override |
![]() | |
mitkClassMacroItkParent (DICOMFileReader, itk::Object) | |
void | SetInputFiles (const StringList &filenames) |
This input files. More... | |
const StringList & | GetInputFiles () const |
This input files. More... | |
unsigned int | GetNumberOfOutputs () const |
Number of outputs, only meaningful after calling AnalyzeInputFiles() More... | |
const DICOMImageBlockDescriptor & | GetOutput (unsigned int index) const |
Individual outputs, only meaningful after calling AnalyzeInputFiles(). More... | |
void | SetConfigurationLabel (const std::string &) |
Short label/name to describe this reader. More... | |
std::string | GetConfigurationLabel () const |
Short label/name to describe this reader. More... | |
void | SetConfigurationDescription (const std::string &) |
One-sentence description of the reader's loading "strategy". More... | |
std::string | GetConfigurationDescription () const |
One-sentence description of the reader's loading "strategy". More... | |
void | PrintConfiguration (std::ostream &os) const |
Print configuration description to given stream, for human reader. More... | |
void | PrintOutputs (std::ostream &os, bool filenameDetails=false) const |
Print output description to given stream, for human reader. More... | |
virtual void | SetAdditionalTagsOfInterest (const AdditionalTagsMapType &tagList) |
Set a list of DICOMTagPaths that specifiy all DICOM-Tags that will be copied into the property of the mitk::Image. More... | |
virtual void | SetTagLookupTableToPropertyFunctor (mitk::DICOMImageBlockDescriptor::TagLookupTableToPropertyFunctor functor) |
Set a functor that defines how the slice-specific tag-values are stored in a Property. More... | |
Static Public Member Functions | |
static Pointer | New () |
static bool | GetDefaultGroup3DandT () |
![]() | |
static Pointer | New () |
static int | GetDefaultDecimalPlacesForOrientation () |
static bool | GetDefaultSimpleVolumeImport () |
static bool | GetDefaultFixTiltByShearing () |
![]() | |
static bool | IsDICOM (const std::string &filename) |
Test whether a file is DICOM at all. More... | |
Protected Member Functions | |
ThreeDnTDICOMSeriesReader (unsigned int decimalPlacesForOrientation=Superclass::m_DefaultDecimalPlacesForOrientation) | |
~ThreeDnTDICOMSeriesReader () override | |
ThreeDnTDICOMSeriesReader (const ThreeDnTDICOMSeriesReader &other) | |
ThreeDnTDICOMSeriesReader & | operator= (const ThreeDnTDICOMSeriesReader &other) |
SortingBlockList | Condense3DBlocks (SortingBlockList &) override |
Analyze the groups produced by DICOMITKSeriesGDCMReader for 3D+t properties. This method tests whether some blocks are at the same spatial position and groups them into single blocks. More... | |
bool | LoadMitkImageForImageBlockDescriptor (DICOMImageBlockDescriptor &block) const override |
![]() | |
void | InternalPrintConfiguration (std::ostream &os) const override |
Configuration description for human reader, to be implemented by sub-classes. More... | |
void | PushLocale () const |
Remember current locale on stack, activate "C" locale. "C" locale is required for correct parsing of numbers by itk::ImageSeriesReader. More... | |
void | PopLocale () const |
Activate last remembered locale from locale stack "C" locale is required for correct parsing of numbers by itk::ImageSeriesReader. More... | |
DICOMITKSeriesGDCMReader (unsigned int decimalPlacesForOrientation=m_DefaultDecimalPlacesForOrientation, bool simpleVolumeImport=m_DefaultSimpleVolumeImport) | |
~DICOMITKSeriesGDCMReader () override | |
DICOMITKSeriesGDCMReader (const DICOMITKSeriesGDCMReader &other) | |
DICOMITKSeriesGDCMReader & | operator= (const DICOMITKSeriesGDCMReader &other) |
virtual DICOMTagCache::Pointer | GetTagCache () const |
void | SetTagCache (const DICOMTagCache::Pointer &) override |
A way to provide external knowledge about files and tag values is appreciated. More... | |
virtual bool | LoadMitkImageForOutput (unsigned int o) |
Loads the mitk::Image by means of an itk::ImageSeriesReader. More... | |
![]() | |
DICOMFileReader () | |
~DICOMFileReader () override | |
DICOMFileReader (const DICOMFileReader &other) | |
DICOMFileReader & | operator= (const DICOMFileReader &other) |
void | ClearOutputs () |
void | SetNumberOfOutputs (unsigned int numberOfOutputs) |
void | SetOutput (unsigned int index, const DICOMImageBlockDescriptor &output) |
DICOMImageBlockDescriptor & | InternalGetOutput (unsigned int index) |
non-const access to the DICOMImageBlockDescriptor More... | |
virtual AdditionalTagsMapType | GetAdditionalTagsOfInterest () const |
mitk::DICOMImageBlockDescriptor::TagLookupTableToPropertyFunctor | GetTagLookupTableToPropertyFunctor () const |
Protected Attributes | |
bool | m_Group3DandT |
![]() | |
bool | m_FixTiltByShearing |
bool | m_SimpleVolumeReading |
mitk::EquiDistantBlocksSorter::Pointer | m_EquiDistantBlocksSorter |
mitk::NormalDirectionConsistencySorter::Pointer | m_NormalDirectionConsistencySorter |
Static Protected Attributes | |
static const bool | m_DefaultGroup3DandT |
![]() | |
static const int | m_DefaultDecimalPlacesForOrientation |
static const bool | m_DefaultSimpleVolumeImport |
static const bool | m_DefaultFixTiltByShearing |
Additional Inherited Members | |
![]() | |
typedef const std::list< DICOMDatasetSorter::ConstPointer > | ConstSorterList |
![]() | |
typedef DICOMImageBlockDescriptor::AdditionalTagsMapType | AdditionalTagsMapType |
![]() | |
typedef std::vector< DICOMDatasetAccessingImageFrameList > | SortingBlockList |
![]() | |
static std::string | GetActiveLocale () |
Return active C locale. More... | |
static SortingBlockList | InternalExecuteSortingStep (unsigned int sortingStepIndex, const DICOMDatasetSorter::Pointer &sorter, const SortingBlockList &input) |
Sorting step as described in Loading strategy. More... | |
static ReaderImplementationLevel | GetReaderImplementationLevel (const std::string sopClassUID) |
Describe this reader's confidence for given SOP class UID. More... | |
Extends DICOMITKSeriesGDCMReader by sorting/grouping into 3D+t image blocks.
This class reuses the DICOMITKSeriesGDCMReader class and adds the option of grouping 3D blocks at the same spatial position into a single block, which is loaded as a 3D+t mitk::Image (compare to Sub-classes can condense multiple blocks into a single larger block).
To group two output blocks into a single 3D+t block, this class tests a number of requirements that the two blocks must fulfill:
The output blocks described by DICOMImageBlockDescriptor will contains the following properties:
Definition at line 41 of file mitkThreeDnTDICOMSeriesReader.h.
|
protected |
Definition at line 17 of file mitkThreeDnTDICOMSeriesReader.cpp.
|
overrideprotected |
Definition at line 31 of file mitkThreeDnTDICOMSeriesReader.cpp.
References operator=().
Referenced by ThreeDnTDICOMSeriesReader().
|
protected |
Definition at line 24 of file mitkThreeDnTDICOMSeriesReader.cpp.
References ~ThreeDnTDICOMSeriesReader().
|
overrideprotectedvirtual |
Analyze the groups produced by DICOMITKSeriesGDCMReader for 3D+t properties. This method tests whether some blocks are at the same spatial position and groups them into single blocks.
Reimplemented from mitk::DICOMITKSeriesGDCMReader.
Definition at line 79 of file mitkThreeDnTDICOMSeriesReader.cpp.
References mitk::ConvertToDICOMDatasetAccessingImageFrameList(), mitk::ConvertToDICOMDatasetList(), mitk::ConvertToDICOMImageFrameList(), mitk::DICOMFileReader::GetAdditionalTagsOfInterest(), mitk::DICOMITKSeriesGDCMReader::GetTagCache(), mitk::DICOMFileReader::GetTagLookupTableToPropertyFunctor(), LoadImages(), m_Group3DandT, mitk::DICOMITKSeriesGDCMReader::m_NormalDirectionConsistencySorter, MITK_DEBUG, mitk::DICOMFileReader::SetNumberOfOutputs(), mitk::DICOMFileReader::SetOutput(), and mitk::DICOMImageBlockDescriptor::SetTagCache().
Referenced by GetGroup3DandT().
|
inlinestatic |
Definition at line 60 of file mitkThreeDnTDICOMSeriesReader.h.
bool mitk::ThreeDnTDICOMSeriesReader::GetGroup3DandT | ( | ) | const |
Definition at line 72 of file mitkThreeDnTDICOMSeriesReader.cpp.
References Condense3DBlocks(), and m_Group3DandT.
Referenced by mitk::DICOMReaderConfigurator::CreateConfigStringFromReader(), and SetGroup3DandT().
|
overridevirtual |
Load via multiple calls to itk::ImageSeriesReader.
Reimplemented from mitk::DICOMITKSeriesGDCMReader.
Definition at line 196 of file mitkThreeDnTDICOMSeriesReader.cpp.
References mitk::DICOMImageBlockDescriptor::GetFlag(), mitk::DICOMFileReader::GetNumberOfOutputs(), mitk::DICOMFileReader::InternalGetOutput(), LoadMitkImageForImageBlockDescriptor(), and mitk::DICOMITKSeriesGDCMReader::LoadMitkImageForOutput().
Referenced by Condense3DBlocks().
|
overrideprotectedvirtual |
Reimplemented from mitk::DICOMITKSeriesGDCMReader.
Definition at line 220 of file mitkThreeDnTDICOMSeriesReader.cpp.
References mitk::DICOMImageBlockDescriptor::GetImageFrameList(), mitk::DICOMImageBlockDescriptor::GetNumberOfFramesPerTimeStep(), mitk::DICOMImageBlockDescriptor::GetNumberOfTimeSteps(), mitk::DICOMImageBlockDescriptor::GetTiltInformation(), mitk::GantryTiltInformation::IsRegularGantryTilt(), mitk::ITKDICOMSeriesReaderHelper::Load3DnT(), mitk::DICOMITKSeriesGDCMReader::LoadMitkImageForImageBlockDescriptor(), mitk::DICOMITKSeriesGDCMReader::m_FixTiltByShearing, mitk::DICOMITKSeriesGDCMReader::PopLocale(), mitk::DICOMITKSeriesGDCMReader::PushLocale(), and mitk::DICOMImageBlockDescriptor::SetMitkImage().
Referenced by LoadImages().
mitk::ThreeDnTDICOMSeriesReader::mitkClassMacro | ( | ThreeDnTDICOMSeriesReader | , |
DICOMITKSeriesGDCMReader | |||
) |
mitk::ThreeDnTDICOMSeriesReader::mitkCloneMacro | ( | ThreeDnTDICOMSeriesReader | ) |
mitk::ThreeDnTDICOMSeriesReader::mitkNewMacro1Param | ( | ThreeDnTDICOMSeriesReader | , |
unsigned | int | ||
) |
|
static |
Referenced by mitk::DICOMReaderConfigurator::CreateFromUTF8ConfigString().
|
protected |
Definition at line 37 of file mitkThreeDnTDICOMSeriesReader.cpp.
References m_Group3DandT, mitk::DICOMITKSeriesGDCMReader::operator=(), and operator==().
Referenced by mitk::ClassicDICOMSeriesReader::operator=(), and ~ThreeDnTDICOMSeriesReader().
|
overridevirtual |
Reimplemented from mitk::DICOMITKSeriesGDCMReader.
Definition at line 49 of file mitkThreeDnTDICOMSeriesReader.cpp.
References m_Group3DandT, mitk::DICOMITKSeriesGDCMReader::operator==(), and SetGroup3DandT().
Referenced by operator=().
void mitk::ThreeDnTDICOMSeriesReader::SetGroup3DandT | ( | bool | on | ) |
Control whether 3D+t grouping shall actually be attempted.
Definition at line 65 of file mitkThreeDnTDICOMSeriesReader.cpp.
References GetGroup3DandT(), and m_Group3DandT.
Referenced by mitk::ClassicDICOMSeriesReader::ClassicDICOMSeriesReader(), and operator==().
|
staticprotected |
Definition at line 84 of file mitkThreeDnTDICOMSeriesReader.h.
|
protected |
Definition at line 82 of file mitkThreeDnTDICOMSeriesReader.h.
Referenced by Condense3DBlocks(), GetGroup3DandT(), operator=(), operator==(), and SetGroup3DandT().