Macros | Functions
vil_gauss_filter.hxx File Reference

smooth images More...

#include <iostream>
#include "vil_gauss_filter.h"
#include <vil/vil_transpose.h>
#include <vil/algo/vil_convolve_1d.h>
#include <cassert>

Go to the source code of this file.

Macros

#define VIL_GAUSS_FILTER_INSTANTIATE(srcT, destT)
 

Functions

unsigned char vl_round (double x, unsigned char)
 
signed char vl_round (double x, signed char)
 
unsigned short vl_round (double x, unsigned short)
 
signed short vl_round (double x, signed short)
 
unsigned int vl_round (double x, unsigned int)
 
signed int vl_round (double x, signed int)
 
unsigned long vl_round (double x, unsigned long)
 
signed long vl_round (double x, signed long)
 
double vl_round (double x, double)
 
float vl_round (double x, float)
 
template<class srcT , class destT >
void vil_gauss_filter_5tap (const srcT *src_im, std::ptrdiff_t src_istep, std::ptrdiff_t src_jstep, destT *dest_im, std::ptrdiff_t dest_istep, std::ptrdiff_t dest_jstep, unsigned nx, unsigned ny, const vil_gauss_filter_5tap_params &params, destT *work, std::ptrdiff_t work_jstep)
 Smooth and subsample src_im to produce dest_im. More...
 
template<class srcT , class destT >
void vil_gauss_filter_5tap (const vil_image_view< srcT > &src_im, vil_image_view< destT > &dest_im, const vil_gauss_filter_5tap_params &params, vil_image_view< destT > &work)
 Smooth a src_im to produce dest_im. More...
 

Detailed Description

smooth images

Author
Ian Scott

Definition in file vil_gauss_filter.hxx.

Macro Definition Documentation

◆ VIL_GAUSS_FILTER_INSTANTIATE

#define VIL_GAUSS_FILTER_INSTANTIATE (   srcT,
  destT 
)
Value:
template void vil_gauss_filter_5tap(const vil_image_view<srcT >& src_im, \
Concrete view of image data of type T held in memory.
Definition: vil_fwd.h:13
void vil_gauss_filter_5tap(const srcT *src_im, std::ptrdiff_t src_istep, std::ptrdiff_t src_jstep, destT *dest_im, std::ptrdiff_t dest_istep, std::ptrdiff_t dest_jstep, unsigned nx, unsigned ny, const vil_gauss_filter_5tap_params &params, destT *work, std::ptrdiff_t work_jstep)
Smooth and subsample src_im to produce dest_im.

Definition at line 292 of file vil_gauss_filter.hxx.

Function Documentation

◆ vil_gauss_filter_5tap() [1/2]

template<class srcT , class destT >
void vil_gauss_filter_5tap ( const srcT *  src_im,
std::ptrdiff_t  src_istep,
std::ptrdiff_t  src_jstep,
destT *  dest_im,
std::ptrdiff_t  dest_istep,
std::ptrdiff_t  dest_jstep,
unsigned  nx,
unsigned  ny,
const vil_gauss_filter_5tap_params params,
destT *  work,
std::ptrdiff_t  work_jstep 
)

Smooth and subsample src_im to produce dest_im.

Applies 5 pin filter in x and y, then samples every other pixel. Assumes dest_im has sufficient data allocated

Definition at line 39 of file vil_gauss_filter.hxx.

◆ vil_gauss_filter_5tap() [2/2]

template<class srcT , class destT >
void vil_gauss_filter_5tap ( const vil_image_view< srcT > &  src_im,
vil_image_view< destT > &  dest_im,
const vil_gauss_filter_5tap_params params,
vil_image_view< destT > &  work 
)

Smooth a src_im to produce dest_im.

Applies 5 element FIR filter in x and y.

Definition at line 147 of file vil_gauss_filter.hxx.

◆ vl_round() [1/10]

unsigned char vl_round ( double  x,
unsigned char   
)
inline

Definition at line 21 of file vil_gauss_filter.hxx.

◆ vl_round() [2/10]

signed char vl_round ( double  x,
signed char   
)
inline

Definition at line 22 of file vil_gauss_filter.hxx.

◆ vl_round() [3/10]

unsigned short vl_round ( double  x,
unsigned short   
)
inline

Definition at line 23 of file vil_gauss_filter.hxx.

◆ vl_round() [4/10]

signed short vl_round ( double  x,
signed short   
)
inline

Definition at line 24 of file vil_gauss_filter.hxx.

◆ vl_round() [5/10]

unsigned int vl_round ( double  x,
unsigned int   
)
inline

Definition at line 25 of file vil_gauss_filter.hxx.

◆ vl_round() [6/10]

signed int vl_round ( double  x,
signed int   
)
inline

Definition at line 26 of file vil_gauss_filter.hxx.

◆ vl_round() [7/10]

unsigned long vl_round ( double  x,
unsigned long   
)
inline

Definition at line 27 of file vil_gauss_filter.hxx.

◆ vl_round() [8/10]

signed long vl_round ( double  x,
signed long   
)
inline

Definition at line 28 of file vil_gauss_filter.hxx.

◆ vl_round() [9/10]

double vl_round ( double  x,
double   
)
inline

Definition at line 29 of file vil_gauss_filter.hxx.

◆ vl_round() [10/10]

float vl_round ( double  x,
float   
)
inline

Definition at line 30 of file vil_gauss_filter.hxx.