[Insight-developers] New ITK data objects

Luis Ibanez luis.ibanez@kitware.com
Wed, 15 Jan 2003 13:31:44 -0500


Hi John,


The hierarchy:


            FunctionBase<>
                   |
                   |
          +--------+---------+
          |                  |
   ParametricFunction    ChainCode



looks good,


Having an index as ivar in the ChainCode
also seems to be the way to go.

Note that in fourier descriptors the restriction
of the argument to be in the range 0:1 is simply
because of the periodicity. An argument of 1.3
could simply return the same value that 0.3.
An argument of -0.1 should return the same value
that 0.9.

You may find useful to allow this border crossing
in order to represent the continuity of the contour
aroun 0.0 (which is the same point as 1.0)


    Luis


---------------
John M. Galeotti wrote:
> Because the sequence is required to be connected, dN(t) has only 3
> possible values:  -1, 0, and 1.  Also, since the chain code is
> offset-valued, the index of the starting point (a ND vector) would also
> need to be stored as part of the class.
> 
> 
> On the other hand, my proposed parametric function class is of the form
> described by Luis below, but with the very important constraint that t
> is only defined over the range from 0 to 1.  In particular, for periodic
> functions this means that f(0) = f(1).
> 
> 
>  >     R ----->  R^N
>  >
>  >     t ------> { X1(t),X2(t),.... XN(t) }
>  >
>  > Where "t" is the parameters and {X1,X2...XN} are the coordinates
>  > of a point in N-D space associated with this parameter.
> 
> I intend to derive both itk::ParametricFunction and itk::ChainCode (or 
> perhaps a new parent class for itk::ChainCode, itk::Path) from 
> itk::FunctionBase; my prior concern was that I did not want to derive 
> from either of itk::ImageFunction or itk::SpatialFunction (Jim raised a 
> question concerning this at the start of the thread). I suppose my 
> phrasing "separate, new parent classes" was a bit strong; I meant parent 
> classes at the same level of the ITK hierarchy as the other parent 
> classes being discussed.
> 
>  > ====================================================================