Definition in file vil1_convolve.h.
#include <vcl_compiler.h>
#include <vil1/vil1_memory_image_of.h>
Go to the source code of this file.
Classes | |
| struct | vil1_convolve_signal_1d< T > |
| Parameters for convolution. More... | |
| struct | vil1_convolve_signal_2d< T > |
| Parameters for convolution. More... | |
Enumerations | |
| enum | vil1_convolve_boundary_option { vil1_convolve_no_extend, vil1_convolve_zero_extend, vil1_convolve_constant_extend, vil1_convolve_periodic_extend, vil1_convolve_reflect_extend, vil1_convolve_trim } |
| Available options for boundary behavior. More... | |
Functions | |
| template<class I1, class I2, class AC, class O> | |
| void | vil1_convolve_1d_x (vil1_convolve_signal_1d< I1 const > const &kernel, vil1_convolve_signal_2d< I2 const > const &input, AC *, vil1_convolve_signal_2d< O > const &output, vil1_convolve_boundary_option b, vil1_convolve_boundary_option e) |
| Convolution in x-direction : out(x, y) = kernel[i]*in(x-i, y). | |
| template<class I1, class I2, class AC, class O> | |
| void | vil1_convolve_1d_y (vil1_convolve_signal_1d< I1 const > const &kernel, vil1_convolve_signal_2d< I2 const > const &input, AC *, vil1_convolve_signal_2d< O > const &output, vil1_convolve_boundary_option b, vil1_convolve_boundary_option e) |
| Convolution in y-direction : out(x, y) = kernel[j]*in(x, y-j). | |
| template<class I1, class I2, class AC, class O> | |
| void | vil1_convolve_separable (I1 const kernel[], unsigned N, vil1_memory_image_of< I2 > &buf, vil1_memory_image_of< AC > &tmp, vil1_memory_image_of< O > &out) |
| template<class I1, class I2, class AC, class O> | |
| vil1_image | vil1_convolve_separable (vil1_image const &in, I1 const *kernel, int N, I2 *, AC *, O *) |
| template<class I1, class I2, class AC, class O> | |
| void | vil1_convolve_1d_x (I1 const *half_kernel, unsigned kernel_size, vil1_convolve_signal_2d< I2 const > const &input, AC *, vil1_convolve_signal_2d< O > const &output, vil1_convolve_boundary_option b, vil1_convolve_boundary_option e) |
| Convolution in x-direction, using a symmetric kernel. | |
| template<class I1, class I2, class AC, class O> | |
| void | vil1_convolve_1d_y (I1 const *half_kernel, unsigned kernel_size, vil1_convolve_signal_2d< I2 const > const &input, AC *, vil1_convolve_signal_2d< O > const &output, vil1_convolve_boundary_option b, vil1_convolve_boundary_option e) |
| Convolution in y-direction, using a symmetric kernel. | |
Available options for boundary behavior.
When convolving a finite signal the boundaries may be treated in various ways which can often be expressed in terms of ways to extend the signal outside its original range.
| vil1_convolve_no_extend | |
| vil1_convolve_zero_extend | |
| vil1_convolve_constant_extend | |
| vil1_convolve_periodic_extend | |
| vil1_convolve_reflect_extend | |
| vil1_convolve_trim |
Definition at line 15 of file vil1_convolve.h.
| void vil1_convolve_1d_x | ( | I1 const * | half_kernel, | |
| unsigned | kernel_size, | |||
| vil1_convolve_signal_2d< I2 const > const & | input, | |||
| AC * | , | |||
| vil1_convolve_signal_2d< O > const & | output, | |||
| vil1_convolve_boundary_option | b, | |||
| vil1_convolve_boundary_option | e | |||
| ) |
Convolution in x-direction, using a symmetric kernel.
| void vil1_convolve_1d_x | ( | vil1_convolve_signal_1d< I1 const > const & | kernel, | |
| vil1_convolve_signal_2d< I2 const > const & | input, | |||
| AC * | , | |||
| vil1_convolve_signal_2d< O > const & | output, | |||
| vil1_convolve_boundary_option | b, | |||
| vil1_convolve_boundary_option | e | |||
| ) |
Convolution in x-direction : out(x, y) = kernel[i]*in(x-i, y).
Definition at line 13 of file vil1_convolve_1d_x.txx.
| void vil1_convolve_1d_y | ( | I1 const * | half_kernel, | |
| unsigned | kernel_size, | |||
| vil1_convolve_signal_2d< I2 const > const & | input, | |||
| AC * | , | |||
| vil1_convolve_signal_2d< O > const & | output, | |||
| vil1_convolve_boundary_option | b, | |||
| vil1_convolve_boundary_option | e | |||
| ) |
Convolution in y-direction, using a symmetric kernel.
| void vil1_convolve_1d_y | ( | vil1_convolve_signal_1d< I1 const > const & | kernel, | |
| vil1_convolve_signal_2d< I2 const > const & | input, | |||
| AC * | , | |||
| vil1_convolve_signal_2d< O > const & | output, | |||
| vil1_convolve_boundary_option | b, | |||
| vil1_convolve_boundary_option | e | |||
| ) |
Convolution in y-direction : out(x, y) = kernel[j]*in(x, y-j).
Definition at line 13 of file vil1_convolve_1d_y.txx.
| vil1_image vil1_convolve_separable | ( | vil1_image const & | in, | |
| I1 const * | kernel, | |||
| int | N, | |||
| I2 * | , | |||
| AC * | , | |||
| O * | ||||
| ) |
Definition at line 38 of file vil1_convolve.txx.
| void vil1_convolve_separable | ( | I1 const | kernel[], | |
| unsigned | N, | |||
| vil1_memory_image_of< I2 > & | buf, | |||
| vil1_memory_image_of< AC > & | tmp, | |||
| vil1_memory_image_of< O > & | out | |||
| ) |
Definition at line 9 of file vil1_convolve.txx.
1.5.1