Fast implementation of convolution algorithms to be used only with 4D separable linear filters. More...
Classes | |
| struct | Separable4DFilter< VOXEL > |
| Structure for representing 4D separable filter of arbitrary size in each directions/axis. More... | |
| struct | BorderPaddings4D< VOXEL > |
| Structure containing data that is used for 4D input image expansion. More... | |
Functions | |
| template<class VOXEL > | |
| int | SeparableFilterConvolution4D (Image4d< VOXEL > const &d, Image4d< VOXEL > &res, struct Separable4DFilter< VOXEL > const &f, struct BorderPaddings4D< VOXEL > const &b) |
| template<class VOXEL > | |
| int | SeparableFilterConvolution4D (Image4d< VOXEL > const &d, Image4d< VOXEL > &res, struct Separable4DFilter< VOXEL > const &f, const int x_bsize=0, const VOXEL x_bvalue=0, const int y_bsize=0, const VOXEL y_bvalue=0, const int z_bsize=0, const VOXEL z_bvalue=0, const int t_bsize=0, const VOXEL t_bvalue=0) |
Fast implementation of convolution algorithms to be used only with 4D separable linear filters.
It also contains structures for defining the convolution filter and the means to extend input image boundaries. It supports 1D, 2D, 3D or 4D filters. 4D filtering is based in Image4d representation.
| int SeparableFilterConvolution4D | ( | Image4d< VOXEL > const & | d, | |
| Image4d< VOXEL > & | res, | |||
| struct Separable4DFilter< VOXEL > const & | f, | |||
| struct BorderPaddings4D< VOXEL > const & | b | |||
| ) |
Convolution of 4D input image extended by given user data.
This function is, in fact, an extension of the function SeparableFilterConvolution(). Please, refer there for more detailed information.
| [in] | d | const reference to the input image |
| [out] | res | reference to the output image, the result |
| [in] | f | the convolution filter |
| [in] | b | the input image extension receipt |
float and double versions of this template are available, since GRAY8 suffers from voxel value overflows. | int SeparableFilterConvolution4D | ( | Image4d< VOXEL > const & | d, | |
| Image4d< VOXEL > & | res, | |||
| struct Separable4DFilter< VOXEL > const & | f, | |||
| const int | x_bsize = 0, |
|||
| const VOXEL | x_bvalue = 0, |
|||
| const int | y_bsize = 0, |
|||
| const VOXEL | y_bvalue = 0, |
|||
| const int | z_bsize = 0, |
|||
| const VOXEL | z_bvalue = 0, |
|||
| const int | t_bsize = 0, |
|||
| const VOXEL | t_bvalue = 0 | |||
| ) |
Convolution of 4D input image extended by given constant values.
This is a wrapper function to the main workhorse SeparableFilterConvolution4D().
| [in] | d | const reference to the input image |
| [out] | res | reference to the output image, the result |
| [in] | f | the convolution filter |
| [in] | x_bsize | the number of voxels to extend image in each direction along the x axis |
| [in] | x_bvalue | the input image is extended along the x axis with this voxel value |
| [in] | y_bsize | the number of voxels to extend image in each direction along the y axis |
| [in] | y_bvalue | the input image is extended along the y axis with this voxel value |
| [in] | z_bsize | the number of voxels to extend image in each direction along the z axis |
| [in] | z_bvalue | the input image is extended along the z axis with this voxel value |
| [in] | t_bsize | the number of voxels to extend image in each direction along the t axis |
| [in] | t_bvalue | the input image is extended along the t axis with this voxel value |
The extension sizes must comply with the convolution filter sizes along respective axes.
float and double versions of this template are available, since GRAY8 suffers from voxel value overflows.
1.7.1