<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META http-equiv=Content-Type content="text/html; charset=iso-8859-2">
<META content="MSHTML 6.00.2800.1491" name=GENERATOR>
<STYLE></STYLE>
</HEAD>
<BODY bgColor=#ffffff>
<DIV><FONT face=Arial size=2><FONT face=Arial size=2></FONT> </DIV>
<DIV>
<DIV><FONT face=Arial size=2>Hi all,</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial size=2>i am implementing a multidimensional polar
transform. It transforms first two dimensions of cartesian space into
<angle,radius> coordinates, leaving the other dimensions unchanged (i.e. -
multidimensional cylindric transform). I have implemented both forward and
backward transforms. To transform space to cylinder in general position (to
transform other than first two dimensions), it is neccessary to transform the
image first by for example Euler3DTransform, or PermuteAxesImageFilter. To avoid
excess memory and time, i implemented PermuteAxesTransform, which does the same
as the filter, but it is a transform.</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial size=2>Now i have two possibilities what to
do:</FONT></DIV>
<DIV><FONT face=Arial size=2>1) imlement something like "bulk transform" as it
is in BSplineDeformableTransform into the polar transforms, or</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial size=2>2) implement general "ComposeTransformsTransform",
which keeps a queue of transforms and successively transforms points and vectors
by all of them. So it is possible to do several transforms in just one
ResampleImageFilter.</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial size=2>I find the second solution more laborious but
principally much more useful. But before i will do it, i need to know surely, if
there is not such class in ITK yet, because i did not find it and i think that
it is really useful and it should be implemented. Or is there any other way how
to pass several transforms into one ResampleImageFilter??</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial size=2>I also found AzimuthElevationToCartesianTransform
class in ITK. This does a kind of spheric transform and i must say that it is
implemented badly. It uses several parameters to "sample" the "polar" space once
more. All these parameters are redundant to properly set Size, Spacing and
Origin parameters of ResampleImageFilters output and only comlicates the
situation. Keeping in mind that transforms are transforming "real" coordinates,
such transforms as polar, cylindric or spheric do not need any parameters.
Everything is just question of proper sampling of input and output
space.</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial size=2>Finally, i found several requests for polar
transforms in insight-users archives, so if it is still open and if it is
possible, i would be pleased to submit my classes into ITK.</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial size=2>Regards</FONT></DIV>
<DIV><FONT face=Arial size=2>Jakub</FONT></DIV></FONT></DIV></BODY></HTML>