Functions
contrib/mul/vimt3d/vimt3d_gauss_reduce.h File Reference

Function to smooth and sub-sample 3D images. More...

#include <vimt3d/vimt3d_image_3d_of.h>
#include <vil3d/algo/vil3d_gauss_reduce.h>

Go to the source code of this file.

Functions

template<class T >
void vimt3d_gauss_reduce (const vimt3d_image_3d_of< T > &src, vimt3d_image_3d_of< T > &dst, vimt3d_image_3d_of< T > &work1, vimt3d_image_3d_of< T > &work2)
 Smooth and subsample src_im to produce dest_im.
template<class T >
void vimt3d_gauss_reduce (const vimt3d_image_3d_of< T > &src, vimt3d_image_3d_of< T > &dst)
 Smooth and subsample src_im to produce dest_im.

Detailed Description

Function to smooth and sub-sample 3D images.

Author:
Kevin de Souza

Definition in file vimt3d_gauss_reduce.h.


Function Documentation

template<class T >
void vimt3d_gauss_reduce ( const vimt3d_image_3d_of< T > &  src,
vimt3d_image_3d_of< T > &  dst,
vimt3d_image_3d_of< T > &  work1,
vimt3d_image_3d_of< T > &  work2 
)

Smooth and subsample src_im to produce dest_im.

Applies filter in i,j and k directions, then samples every other pixel. Resulting image is (ni+1)/2 x (nj+1)/2 x (nk+1)/2. Transform is modified by a scaling factor of 0.5. An image can be reduced in-place, by having src_im and dest_im pointing to the same image. Requires client to provide 2 workspace images.

See also:
vimt3d_gauss_reduce()

Definition at line 20 of file vimt3d_gauss_reduce.h.

template<class T >
void vimt3d_gauss_reduce ( const vimt3d_image_3d_of< T > &  src,
vimt3d_image_3d_of< T > &  dst 
)

Smooth and subsample src_im to produce dest_im.

This simple overload does not require client to provide 2 workspace images.

See also:
vimt3d_gauss_reduce()

Definition at line 37 of file vimt3d_gauss_reduce.h.