Functions to apply anisotropic filters to 3D images.
More...
Go to the source code of this file.
Functions |
template<class T > |
void | vil3d_anisotropic_filter (const vil3d_image_view< T > &src, vil3d_image_view< float > &dest, const vgl_vector_3d< vcl_vector< double > > &filter, const vgl_vector_3d< unsigned > &c, const vgl_vector_3d< int > &lo, const vgl_vector_3d< int > &hi, const vgl_vector_3d< vil_convolve_boundary_option > &cbo, vil3d_image_view< float > &work1, vil3d_image_view< float > &work2) |
| Function to apply 3 different 1D filters to a 3D image.
|
void | vil3d_generate_gaussian_filters (const vgl_vector_3d< double > &sd, vgl_vector_3d< vcl_vector< double > > &filter, vgl_vector_3d< unsigned > &c, vgl_vector_3d< int > &lo, vgl_vector_3d< int > &hi) |
| Generates 3 Gaussian filters, 1 for each dimension.
|
template<class T > |
void | vil3d_anisotropic_gaussian_filter (const vil3d_image_view< T > &src, vil3d_image_view< T > &dest, const vgl_vector_3d< double > &sd, vil3d_image_view< float > &work1, vil3d_image_view< float > &work2, vil3d_image_view< float > &work3) |
| A convenience function to generate and apply an anisotropic Gaussian filter to a 3D image.
|
Detailed Description
Functions to apply anisotropic filters to 3D images.
- Author:
- Kevin de Souza and Ian Scott
Definition in file vil3d_anisotropic_filter.h.
Function Documentation
Function to apply 3 different 1D filters to a 3D image.
- Parameters:
-
- Return values:
-
dest | The destination image (of type <float>). |
- Parameters:
-
filter | The filter to apply in each direction. |
c | The (absolute) index of the centre tap of each filter. |
lo | The (relative) index of the lowest tap of each filter. |
hi | The (relative) index of the highest tap of each filter. |
cbo | The convolution boundary option to use with each filter. |
work1 | Workspace image (assumed to be correct size). |
work2 | Workspace image (assumed to be correct size). |
- Note:
- The returned image <float> can be converted to the source type by a subsequent call to vil3d_convert_round() or vil3d_convert-cast().
Definition at line 36 of file vil3d_anisotropic_filter.h.
A convenience function to generate and apply an anisotropic Gaussian filter to a 3D image.
- Parameters:
-
- Return values:
-
dest | The destination (filtered) image. |
- Parameters:
-
sd | The width of the Gaussian (in voxel widths) for each dimension. |
work1 | Workspace image (assumed to be correct size). |
work2 | Workspace image (assumed to be correct size). |
work3 | Workspace image (assumed to be correct size). |
- Note:
- The filtering is done in floating-point arithmetic, and the destination image is rounded to the same pixel type as the source.
- See also:
- vil3d_generate_gaussian_filters()
-
vil3d_anisotropic_filter()
Definition at line 168 of file vil3d_anisotropic_filter.h.
void vil3d_generate_gaussian_filters |
( |
const vgl_vector_3d< double > & |
sd, |
|
|
vgl_vector_3d< vcl_vector< double > > & |
filter, |
|
|
vgl_vector_3d< unsigned > & |
c, |
|
|
vgl_vector_3d< int > & |
lo, |
|
|
vgl_vector_3d< int > & |
hi |
|
) |
| [inline] |
Generates 3 Gaussian filters, 1 for each dimension.
- Parameters:
-
sd | The width of the Gaussian (in voxel widths) for each dimension. |
- Return values:
-
filter | The 3 filters. |
c | The (absolute) index of the centre tap of each filter. |
lo | The (relative) index of the lowest tap of each filter. |
hi | The (relative) index of the highest tap of each filter. |
Definition at line 101 of file vil3d_anisotropic_filter.h.