Functions
contrib/mul/vil3d/algo/vil3d_quad_distance_function.h File Reference

Functions to compute quadratic distance functions. More...

#include <vil3d/vil3d_image_view.h>
#include <vil3d/vil3d_plane.h>
#include <vil3d/vil3d_switch_axes.h>
#include <vil/algo/vil_quad_distance_function.h>
#include <vcl_cassert.h>

Go to the source code of this file.

Functions

template<class srcT , class destT >
void vil3d_quad_distance_function_i (const vil3d_image_view< srcT > &src, double ai, vil3d_image_view< destT > &dest)
 Apply quadratic distance transform along each row of src.
template<class srcT , class destT >
void vil3d_quad_distance_function (const vil3d_image_view< srcT > &src, double ai, double aj, double ak, vil3d_image_view< destT > &dest)
 Apply quadratic distance transform.
template<class srcT , class destT , class posT >
void vil3d_quad_distance_function_i (const vil3d_image_view< srcT > &src, double ai, vil3d_image_view< destT > &dest, vil3d_image_view< posT > &pos)
 Apply quadratic distance transform along i, storing relative position of minima.
template<class srcT , class destT , class posT >
void vil3d_quad_distance_function (const vil3d_image_view< srcT > &src, double ai, double aj, double ak, vil3d_image_view< destT > &dest, vil3d_image_view< posT > &pos)
 Apply quadratic distance transform, storing relative position of minima.

Detailed Description

Functions to compute quadratic distance functions.

Author:
Tim Cootes

Definition in file vil3d_quad_distance_function.h.


Function Documentation

template<class srcT , class destT >
void vil3d_quad_distance_function ( const vil3d_image_view< srcT > &  src,
double  ai,
double  aj,
double  ak,
vil3d_image_view< destT > &  dest 
) [inline]

Apply quadratic distance transform.

dest(x,y,z)=min_i,j,k (src(x+i,y+j,z+k)+ai(i^2)+aj(j^2)+ak(k^2))

Definition at line 51 of file vil3d_quad_distance_function.h.

template<class srcT , class destT , class posT >
void vil3d_quad_distance_function ( const vil3d_image_view< srcT > &  src,
double  ai,
double  aj,
double  ak,
vil3d_image_view< destT > &  dest,
vil3d_image_view< posT > &  pos 
) [inline]

Apply quadratic distance transform, storing relative position of minima.

dest(x,y,z)=min_i,j,k (src(x+i,y+j,z+k)+ai(i^2)+aj(j^2)+ak(k^2)) (pos(x,y,0),pos(x,y,1),pos(x,y,2)) gives the position (x+i,y+j,z+k) leading to minima

Definition at line 118 of file vil3d_quad_distance_function.h.

template<class srcT , class destT >
void vil3d_quad_distance_function_i ( const vil3d_image_view< srcT > &  src,
double  ai,
vil3d_image_view< destT > &  dest 
) [inline]

Apply quadratic distance transform along each row of src.

dest(x,y,z)=min_i (src(x+i,y,z)+ai(i^2))

Definition at line 18 of file vil3d_quad_distance_function.h.

template<class srcT , class destT , class posT >
void vil3d_quad_distance_function_i ( const vil3d_image_view< srcT > &  src,
double  ai,
vil3d_image_view< destT > &  dest,
vil3d_image_view< posT > &  pos 
) [inline]

Apply quadratic distance transform along i, storing relative position of minima.

dest(x,y,z)=min_i (src(x+i,y,z)+ai(i^2)) (pos(x,y,0)) gives the position (x+i,y,z) leading to minima

Definition at line 79 of file vil3d_quad_distance_function.h.