[Insight-developers] Medical/Physical Images: Algorithms Call: 02/16/01

George Stetten george@stetten.com
Sun, 18 Feb 2001 10:51:53 -0500


Stephen,

I like these ideas, and also agree with Ross about renaming "MedicalImage"
to something more general like "PhysicalImage".   I'm not so much interested
in accessing images by physical coordinates.... actually, I do my
processing, like you, in data space and then scale the results (especially
gradient calculations) by the local spacing.  Is there some other group,
perhaps the registration folks who want to trasform entire images, who would
use MedicalImage to do this?

George

"Stephen R. Aylward" wrote:

> We should have a base image class that contains only voxel data.
>
> We should have a derived image class that supports transforms to/from
> voxel indexes from/to physical coordinates and that does transforms and
> interpolation to directly access values in physical space.
>
> Class Hierarchy
>         itkImage
>                 itkMedicalImage
>
> itkMedicalImage has the following methods
>         Get/SetOrigin (itkPoint *)
>         Get/SetOffset (itkPoint *)
>         Get/SetOrientation (itkPoint *dirX, *dirY, *dirZ)
>         Get/SetAffineTransformMatrix (itkMatrix *)
>         Get/SetMapper (itkMapper *)
>         Get/SetInterpolator (itkImageFunction)
>         GetPhysicalPointValue (itkPoint *)
>         GetPhysicalPointFromImagePoint (itkPoint *)
>         GetImagePointFromPhysicalPoint (itkPoint *)
>
> The idea is that George can also derive from this class to get
> itkUltraSoundMedicalImage that uses a polar transform....
>
> This way, you can even write methods (albeit slow methods) that directly
> use physical coordinates.   The better approach for most methods is to
> operate on the voxel data and then scale the results based on voxel
> spacing.
>
> We will need to make a conscious effort to provide itkFilters that
> operate on itkMedicalImages so that after doing calculations, the
> results can be appropriately adjusted based on anisotropic voxel spacing
> (e.g., gradient measures can be made zoom invariant and e.g., a gaussian
> convolution kernel can be designed to produce a blurring that is
> isotropic in physical space).
>
>
> --
> ===============================================
> Stephen R. Aylward
> Assistant Professor of Radiology
> Adjunct Assistant Professor of Computer Science
> http://www.cs.unc.edu/~aylward
> aylward@unc.edu
> (919) 966-9695
>
> _______________________________________________
> Insight-developers mailing list
> Insight-developers@public.kitware.com
> http://public.kitware.com/mailman/listinfo/insight-developers