Hello!
I have recently explored MITK to read my data files which consist in a
sequence of DICOM files containing 12 volumes for different timepoints.
After some experimentation, with no satisfying results, I decided to
explore the MITK code in more detail and I have some change suggestions.
I ask the more experienced users to check if I am not missing anything
here.
In file mitkDataTreeNodeFactory.cpp I changed the line
nameGenerator->SetDirectory( ...) to below the code adding the series
restrictions. I did this because, when the method SetDirectory is called
the unique ID for each file is computed. As the series restrictions have
not been set yet this will only use the default restrictions imposed in
the MITK code. The effect is that if the user needs to set additional
restrictions (as was my case) to correctly separate the data in volumes
they will not have any effect as the UID for each file has already been
set.
By moving the line below the series restrictions setting all user set
restrictions will be considered.
//==============================================================
void mitk::DataTreeNodeFactory::ReadFileSeriesTypeDCM()
(...)
// Get the DICOM filenames from the directory
NameGeneratorType::Pointer nameGenerator = NameGeneratorType::New();
//// nameGenerator->SetDirectory( dir.c_str() );
// add more criteria to distinguish between different series
nameGenerator->SetUseSeriesDetails( m_UseSeriesDetails );
// add series restrictions
std::vector<std::string>::const_iterator it;
for(it=m_SeriesRestrictions.begin(); it!=m_SeriesRestrictions.end(); it++)
{
nameGenerator->AddSeriesRestriction( *it );
}
nameGenerator->SetDirectory( dir.c_str() ); //<---- line moved to here
//================================================================
Am I correct in my judgement?
Regards,
Sam
------------------------------------------------------------------------------
_______________________________________________
mitk-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/mitk-users