[Insight-users] Antwort: Re: BSplineDeformableTransform parameters?

matthias.honal at uniklinik-freiburg.de matthias.honal at uniklinik-freiburg.de
Thu Jul 23 12:25:40 EDT 2009


Hi,

I'm still struggeling a little bit with the second point from below. Taking
the sketch from below but giving the different points names, we would have
for a cubic BSpline the following situation at the left image border:

                       P1________||P2________P3_________P4

Point P2 is located exactly on the border and in the intervall [P2, P3]
transform values are defined. The leftmost point for which a transform
value can be obtained is P2 itself. Now let's look at the right image
border and assume that P3 is sitting directly on the border.

                       P1________P2_________P3||_________P4

Still we would have transform values in the intervall [P2, P3] defined with
the rightmost point with a defined transform value beeing P3. Hence, to my
understanding we need only P4 outside the image border but not another
point P5. (A BSpline Kernel which would be centered over a point P5 would
actually be zero at the right image border.)

So please give me an idea what is wrong with my thinking....

Thanks a lot,

Matthias






                                                                           
             Luis Ibanez                                                   
             <luis.ibanez at kitw                                             
             are.com>                                                   An 
             Gesendet von:               motes motes                       
             insight-users-bou           <mort.motes at gmail.com>            
             nces at itk.org                                            Kopie 
                                         Insight Users Mailing List        
                                         <insight-users at itk.org>           
             22.07.2009 18:43                                        Thema 
                                         Re: [Insight-users]               
                                         BSplineDeformableTransform        
                                         parameters?                       
                                                                           
                                                                           
                                                                           
                                                                           
                                                                           
                                                                           




Hi Motes,

1) Yes, the parameters of the BSplineDeformableTransform are the
components      of the deformation vectors at every node of the BSpline
grid.

2) In order to compute a value in the domain of a BSpline of order 3, you
need     the values of 4 BSpline nodes.      If you think about a point in
just on the left border of an image, you will need     one node in the
border of the image, another one outside of the image, and     two more
inside the image. Imagine that in the diagram below, the "O" symbols 
represent BSpline nodes, and the "x" symbol represent the point where you 
need to compute a value (for example, a deformation
vector).   
O________Ox________O_________O                               Now consider the
right side of the image domain in the diagram below you      will need two
BSpline nodes outside of the image, one in the border and     another one
inside of the image.  
O_______xO_________O_________O       Of course, the asymmetry of the choice
is arbitrary. We could have chosen      to use two nodes on the left side
outside of the image, and one on the right      side, outside of the image.


3) When we refer to Cubic BSplines, we are talking about the largest order
of     the polynomials used for the interpolation.  In this case, = 3.    
Regards,              Luis   
---------------------------------------------------------------------
On Wed, Jul 22, 2009 at 10:39 AM, motes motes <mort.motes at gmail.com> wrote:
      I am trying to understand the parameters to the
      BSplineDeformableTransform in the BSplineWarping1.cxx example.

      1) As I understand the parameters are actually just a set of
      deformation vectors. The location of theses vectors are distributed
      uniformly over the image but the orientation and magnitude of the
      vectors might vary during the registration.

      2) When defining the grid extra "vectors" outside the image must be
      defined following the below rule from the example:


      //  Since we are using a B-spline of order 3, the coverage of the
      BSpling grid
      //  should exceed by one the spatial extent of the image on the lower
      region of
      //  image indices, and by two grid points on the upper region of
      image indices.
      //  We choose here to use a $8 \times 8$ B-spline grid, from which
      only a $5
      //  \times 5$ sub-grid will be covering the input image.

      But why?

      If p=3 is the degree a Cubic B-spline has support over p+1=4 knots.
      Assuming that clamped knot-vectors are used the first and second
      basis function will only have support over 1 and 2 knots
      respectively.
      The third basis function has full support over the 4 knots.

      Is this why extra control points / deformation vectors are added?


      Another thing. In the above comments is not meant to say order 4?
      Normally the order = degree+1 and as I understand ITK uses cubic
      B-splines which is 3-degree.


      _____________________________________
      Powered by www.kitware.com

      Visit other Kitware open-source projects at
      http://www.kitware.com/opensource/opensource.html

      Please keep messages on-topic and check the ITK FAQ at:
      http://www.itk.org/Wiki/ITK_FAQ

      Follow this link to subscribe/unsubscribe:
      http://www.itk.org/mailman/listinfo/insight-users

_____________________________________
Powered by www.kitware.com

Visit other Kitware open-source projects at
http://www.kitware.com/opensource/opensource.html

Please keep messages on-topic and check the ITK FAQ at:
http://www.itk.org/Wiki/ITK_FAQ

Follow this link to subscribe/unsubscribe:
http://www.itk.org/mailman/listinfo/insight-users





More information about the Insight-users mailing list