Dear list,
Recently I struggled by importing an ITK-ImageSpatial-Object to render it in
MITK. In ITK I use the itk::ImageSpatialObject to apply tracking-coordinates
(translation and rotation) to slices. Than I want to display the slices as a
3D-Volume by using an interpolation-method (i.E. a LinearInterpolator). But I
have no idea how to import itk::ImageSpatialObjects in MITK. Can I do the hole
process in MITK directly?
Here is my code for the ImageSpatialObject:
VolumeSpatialObjectType::Pointer imageSO = VolumeSpatialObjectType::New();
//Spatial-Slice
VolumeSpatialObjectType::Pointer volumeSO =
VolumeSpatialObjectType::New(); //Spatial-Volume
//Set spacing
const double[3] spacing;
spacing[0] = 1;
spacing[1] = 1;
spacing[2] = 1;
volumeSO->SetSpacing(spacing);
queueMutex.Lock();
//Get the Image-Queue (std::deque)
m_ImageStack = m_QueueManager->GetImageQueue();
// Get the Tracking-Data-Queue (std::deque)
m_TrackingDataStack = m_QueueManager->GetTrackingQueue();
queueMutex.Unlock();
//iterate through the queue and stack the images to a 3D-Volume
// VolumeType is defined as itk::image<unsigned char, 3>
deque<VolumeType::Pointer>::iterator queueIter =
m_ImageStack.begin();
deque<mitk::NavigationData::Pointer>::iterator trackingIter =
m_TrackingDataStack.begin();
for(; queueIter != m_ImageStack.end(); ++queueIter,
++trackingIter){
//Set Spatial-Object-Offset
imageSO->SetImage(*queueIter); //Set slice
volumeSO->AddSpatialObject(imageSO); //add a slice to the volume
//Set the offset for the current slice
TransformType::OffsetType translationSO;
trackingData = *trackingIter;
translationSO[0] = m_TrackedData->GetPosition()[0];
translationSO[1] = m_TrackedData->GetPosition()[1];
translationSO[2] = m_TrackedData->GetPosition()[2];
imageSO->GetIndexToObjectTransform()->SetOffset(translationSO);
imageSO->ObjectToParentTransform();
}
//ImageSpatialObject-Volume with transformed slices
volumeSO->ComputeObjectToWorldTransform();
Regards!
Matthias Mucha
--
GRATIS für alle GMX-Mitglieder: Die maxdome Movie-FLAT!
Jetzt freischalten unter http://portal.gmx.net/de/go/maxdome01
------------------------------------------------------------------------------
_______________________________________________
mitk-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/mitk-users