imop.h File Reference


Detailed Description

Author:
Andrea Vedaldi

Definition in file imop.h.

#include "generic.h"

Go to the source code of this file.


Defines

Convolution padding modes
#define VL_CONV_ZERO   0
#define VL_CONV_CIRC   1
#define VL_CONV_CONT   2

Functions

Convolution
VL_EXPORT void vl_convtransp_f (float *dst, float const *src, float const *filt, int width, int height, int filt_width, int mode)
 Convolve along columns and take transpose.
VL_EXPORT void vl_convtransp_d (double *dst, double const *src, double const *filt, int width, int height, int filt_width, int mode)
 Convolve along columns and take transpose.
Image Smoothing
VL_EXPORT void vl_imsmooth_f (float *dst, float *temp, float const *src, int width, int height, double sigma)
 Smooth image by Gaussian kernel.
VL_EXPORT void vl_imsmooth_d (double *dst, double *temp, double const *src, int width, int height, double sigma)
 Smooth image by Gaussian kernel.

Define Documentation

#define VL_CONV_CIRC   1

Circular convolution

Definition at line 22 of file imop.h.

#define VL_CONV_CONT   2

Pad by continuity

Definition at line 23 of file imop.h.

#define VL_CONV_ZERO   0

Zero padding

Definition at line 21 of file imop.h.


Function Documentation

VL_EXPORT void vl_convtransp_d ( double *  dst,
double const *  src,
double const *  filt,
int  width,
int  height,
int  filt_width,
int  mode 
)

The function convolves the columns of the matrix src by the kernel filt and writes the transpose of the result to the buffer dst.

Remarks:
Here `columns' correspond to the fastest varying index. Often image are stored in row-major order, so the `columns' are actually the `rows' of the image.

To convolve an image by a 2-D separable filter just call this function twice.

The function can be used to process N-dimensional arrays by stacking them properly.

Parameters:
dst output image buffer.
src input image buffer.
filt filter buffer.
width width of the image.
height height of the image.
filt_width filter half width (total width = 2 filt_width + 1).
mode mode flags.

vl_convtransp_f ( float *  dst,
float const *  src,
float const *  filt,
int  width,
int  height,
int  filt_width,
int  mode 
)

The function convolves the columns of the matrix src by the kernel filt and writes the transpose of the result to the buffer dst.

Remarks:
Here `columns' correspond to the fastest varying index. Often image are stored in row-major order, so the `columns' are actually the `rows' of the image.

To convolve an image by a 2-D separable filter just call this function twice.

The function can be used to process N-dimensional arrays by stacking them properly.

Parameters:
dst output image buffer.
src input image buffer.
filt filter buffer.
width width of the image.
height height of the image.
filt_width filter half width (total width = 2 filt_width + 1).
mode mode flags.

VL_EXPORT void vl_imsmooth_d ( double *  dst,
double *  temp,
double const *  src,
int  width,
int  height,
double  sigma 
)

The function convolves the image src by a Gaussian kernel of variance sigma and write the result to the buffer dst. The functions also need a scratch buffer dst of the same size of the buffers src and dst.

The various functions differ by the data type of the image pixels that they process.

Parameters:
dst output image buffer.
temp scratch image buffer.
src input image buffer.
width width of the buffers.
height height of the buffers.
sigma standard deviation of the Gaussian kernel.

vl_imsmooth_f ( float *  dst,
float *  temp,
float const *  src,
int  width,
int  height,
double  sigma 
)

The function convolves the image src by a Gaussian kernel of variance sigma and write the result to the buffer dst. The functions also need a scratch buffer dst of the same size of the buffers src and dst.

The various functions differ by the data type of the image pixels that they process.

Parameters:
dst output image buffer.
temp scratch image buffer.
src input image buffer.
width width of the buffers.
height height of the buffers.
sigma standard deviation of the Gaussian kernel.

Referenced by vl_sift_process_first_octave(), and vl_sift_process_next_octave().