[Insight-developers] NIfTI orientation issue

Mathieu Coursolle mathieu at rogue-research.com
Tue Oct 27 11:36:15 EDT 2009


Hi,

I am not sure I understand that issue... Is the metadata currently  
copied in the pipeline ?
I also noticed that the metadata in the itkNiftiImageIO has predefined  
keys starting with ITK_.
Is that a standard to follow if I had the metadata from the NIfTI  
header ? I think that the GDCM reader
just uses the DICOM tags as the keys.

Thanks,

Mathieu

On 2009-10-27, at 11:22 AM, Luis Ibanez wrote:

> Mathieu,
>
> No objection from my corner...
>
> But, please note the related thread regarding the subsequent
> passing of the MetaDataDictionary through the pipeline:
> http://www.itk.org/pipermail/insight-users/2009-October/033423.html
>
>
>    Regards,
>
>            Luis
>
>
> -------------------------------------------------------------
> On Tue, Oct 27, 2009 at 9:26 AM, Mathieu Coursolle
> <mathieu at rogue-research.com> wrote:
>> Hi,
>> On the same topic, the itkNiftiImageIO has a function called  
>> DumpNiftiHeader
>> used to output
>> the header information.
>> Any objection on all this header information being added to the  
>> metadata
>> dictionary ?
>> Thanks,
>> Mathieu
>> On 2009-10-26, at 1:59 PM, Mathieu Coursolle wrote:
>>
>> Hi ITK developers,
>> I am using the itkNiftiImageIO to load NIfTI image data. The NIfTI  
>> file
>> format defines 2 different methods to map voxels
>> to physical coordinates. One of those methods is using a quaternion  
>> and is
>> defined when the qform_code > 0. The other
>> method is using a linear transform and is defined when the  
>> sform_code > 0.
>> Looking at the code which sets the orientation based on the NIfTI  
>> header, it
>> seems to prioritize the qform over the sform.
>> (See void NiftiImageIO:: SetImageIOOrientationFromNIfTI(unsigned  
>> short int
>> dims))
>> However, there are some cases where I would need both the qform and  
>> the
>> sform transforms once the data is loaded.
>> I guess one option would be to add them as part of the metadata ?
>> Could we do something like:
>> EncapsulateMetaData<std::vector<std::vector<double>
>>>  >(this->GetMetaDataDictionary(),"qform", myQForm);
>> EncapsulateMetaData<std::vector<std::vector<double>
>>>  >(this->GetMetaDataDictionary(),"sform", mySForm);
>> Any other suggestions ?
>> Thanks,
>> Mathieu
>> _________________________
>> Mathieu Coursolle, ing.jr., M.Ing.
>> Rogue Research Inc.
>> www.rogue-research.com
>>
>>
>>
>>
>>
>>
>> _______________________________________________
>> Powered by www.kitware.com
>>
>> Visit other Kitware open-source projects at
>> http://www.kitware.com/opensource/opensource.html
>>
>> Kitware offers ITK Training Courses, for more information visit:
>> http://kitware.com/products/protraining.html
>>
>> Please keep messages on-topic and check the ITK FAQ at:
>> http://www.itk.org/Wiki/ITK_FAQ
>>
>> Follow this link to subscribe/unsubscribe:
>> http://www.itk.org/mailman/listinfo/insight-developers
>>
>>
>



More information about the Insight-developers mailing list