[IGSTK-Developers] igstk transformation heirarchy - request for comments

Ziv Yaniv zivy at isis.imac.georgetown.edu
Thu Oct 2 16:09:53 EDT 2008


Hi all,

I am currently working on loading calibration/registration data from xml 
files and I need to add additional transformation classes to igstk 
(affine - US calibration, perspective - camera calibration).

Currently we only have igstk::Transform which is a rigid transformation.

The hierarchy I am building is:

igstk::TransformBase - Abstract base class for all transforms, has two 
ivars, timestamp and error and the functionality associated with them.

igstk::AffineTransform - uses itk::AffineTransform, inhherits from 
igstk::TransformBase

igstk::PerspectiveTransform - igstk implementation of perspective 
transformation, inherits from igstk::TransformBase. I'll implement it 
within IGSTK, internally as a 3x4 matrix representing the intrinsic and 
extrinsic camera parameters. This transformation from R^3 to R^2 is most 
often relative to a dynamic reference frame that we track so no need to 
separate between intrinsic and extrinsic.

I wanted to use itk::Rigid3DPerspective but this class does not fit what 
I want, it assumes a perfect pin-hole camera (no skew between axes) 
which I can't guarantee. Is there a more generic itk class?

I would also like to change igstk::Transform so that it inherits from 
igstk::TransformBase. After looking at the class I wondered why we 
didn't use itk::VersorRigid3DTransform internally?

             please comment
                     Ziv


-- 
Ziv Yaniv, PhD., Research Assistant Professor
Imaging Science and Information Systems (ISIS) Center
Department of Radiology
Georgetown University Medical Center
2115 Wisconsin Avenue, Suite 603
Washington, DC, 20007,

Phone: +1-202-687-7286
Fax: +1-202-784-3479
email: zivy at isis.georgetown.edu
web: http://isiswiki.georgetown.edu/zivy/



More information about the IGSTK-Developers mailing list