core/vil1/vil1_convolve_simple.h File Reference


Detailed Description

Simple convolution functions.

Author:
awf@robots.ox.ac.uk

Definition in file vil1_convolve_simple.h.

Go to the source code of this file.


Functions

template<class I1, class I2, class AC, class O>
void vil1_convolve_simple (I1 const *const *in1, unsigned w1, unsigned h1, I2 const *const *in2, unsigned w2, unsigned h2, AC *, O *const *out)
 Convolution.
template<class I1, class I2, class AC, class O>
void vil1_convolve_simple (vil1_memory_image_of< I1 > const &IN1, int x1, int y1, unsigned w1, unsigned h1, vil1_memory_image_of< I2 > const &IN2, int x2, int y2, unsigned w2, unsigned h2, AC *, vil1_memory_image_of< O > &OUT, int xo, int yo)
 Convolution.
template<class I1, class I2, class AC, class O>
void vil1_convolve_simple (vil1_memory_image_of< I1 > const &input1, vil1_memory_image_of< I2 > const &input2, AC *, vil1_memory_image_of< O > &output)
 Convolution.

Function Documentation

template<class I1, class I2, class AC, class O>
void vil1_convolve_simple ( vil1_memory_image_of< I1 > const &  input1,
vil1_memory_image_of< I2 > const &  input2,
AC *  ,
vil1_memory_image_of< O > &  output 
)

Convolution.

Like the previous function, except without bounds checking and specified regions.

$\displaystyle {\rm out}_{{\rm off}+k} = \sum_{i+j=k} a_{{\rm off}+i} b_{{\rm off}+j}$

Definition at line 149 of file vil1_convolve_simple.txx.

template<class I1, class I2, class AC, class O>
void vil1_convolve_simple ( vil1_memory_image_of< I1 > const &  IN1,
int  x1,
int  y1,
unsigned  w1,
unsigned  h1,
vil1_memory_image_of< I2 > const &  IN2,
int  x2,
int  y2,
unsigned  w2,
unsigned  h2,
AC *  ,
vil1_memory_image_of< O > &  OUT,
int  xo,
int  yo 
)

Convolution.

This function performs some bounds checks on the given memory images and then dispatches the convolution itself to the above function.

$\displaystyle {\rm out}_{{\rm off}+k} = \sum_{i+j=k} a_{{\rm off}+i} b_{{\rm off}+j}$

Definition at line 86 of file vil1_convolve_simple.txx.

template<class I1, class I2, class AC, class O>
void vil1_convolve_simple ( I1 const *const *  in1,
unsigned  w1,
unsigned  h1,
I2 const *const *  in2,
unsigned  w2,
unsigned  h2,
AC *  ,
O *const *  out 
)

Convolution.

This function assumes that the image types provide operator[] to return a pointer (or something which behaves like one) to the y'th raster.

The given regions of the input images are convolved and placed at the given position in the output image, according to the formula : $\displaystyle OUT[y][x] = \sum_{x_1+x_2=x, y_1+y_2=y} IN_1[y_1][x_1] IN_2[y_2][x_2]$

The dummy parameter is just for dumb compilers that do not allow the use of vil1_convolve_simple<...> to specify the accumulator type.

Definition at line 32 of file vil1_convolve_simple.txx.


Generated on Sun Sep 7 05:08:28 2008 for core/vil1 by  doxygen 1.5.1