[IGSTK-Users] Incorrect value received when using picker method for CT image

Chris Heath christopher.c.heath at gmail.com
Tue Jul 8 17:57:56 EDT 2008


Hello,

As I mentioned before, I used the picker method from the NeedleTracker  
to get coordinates in mm from a CT image.  However, I noticed that  
these values were not correct.  When stepping through the slices 1 by  
1, the values do not change as they should.  For example, I have an  
image whose slices are 0.4 mm thick.  The following table shows some  
slices and their reported z value as an illustration

Slice   Z
0        48.115
1        48.115
2        49.872
3        49.872
4        50.753
5        50.753
6        50.753
7        50.753
8        51.635

This trend continues throughout the image.  Here's the relevant  
portions of my code:

 From the constructor:

typedef itk::ReceptorMemberCommand < Self >    LoadedObserverType;

m_ViewPickerObserverAxial = LoadedObserverType::New();
m_ViewPickerObserverAxial->SetCallbackFunction( this,  
&CTDisplay_Implementation::PickerAxial );

m_ImageSpatialObject = m_CTImageObserver->GetCTImage();

m_AxialImageRepresentation =  
igstk::CTImageSpatialObjectRepresentationType::New();
m_AxialImageRepresentation- 
 >RequestSetImageSpatialObject( m_ImageSpatialObject );

m_AxialFLTKWidget->RequestSetView( ctAxialView );
ctAxialView->RequestAddObject( m_AxialImageRepresentation );
ctAxialView->RequestSetTransformAndParent( identityTransform,  
m_WorldReference);

m_AxialImageRepresentation- 
 > 
RequestSetOrientation 
( igstk::CTImageSpatialObjectRepresentationType::Axial );
ctAxialView->AddObserver( igstk::CoordinateSystemTransformToEvent(),  
m_ViewPickerObserverAxial );



void CTDisplay_Implementation( const itk::EventObject & event )
{
   typedef igstk::CoordinateSystemTransformToEvent TransformEventType;
   const TransformEventType * tmevent = dynamic_cast< const  
TraansformEventType *>( & event );
   igskt::CoordinateSystemTransformToResult transformCarrier = tmevent- 
 >Get();
   igstk::Transform transform = transformCarrier.GetTransform();
   point = TransformToPoint( transform );
}


Any thoughts would be appreciated.

Thanks,
Chris


-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://public.kitware.com/pipermail/igstk-users/attachments/20080708/cb41efa1/attachment-0001.html>


More information about the IGSTK-Users mailing list