 SoBilateralFilterProcessing engine  
More...
  SoBilateralFilterProcessing engine  
More...
#include <ImageViz/Engines/ImageFiltering/SmoothingAndDenoising/SoBilateralFilterProcessing.h>
 
  
 | Public Types | |
| enum | FilterMode { BILATERAL = 0, SUSAN = 1 } | 
| Public Member Functions | |
| SoBilateralFilterProcessing () | |
| Public Attributes | |
| SoSFEnum | computeMode | 
| SoSFVec3i32 | kernelSize | 
| SoSFImageDataAdapter | inImage | 
| SoSFFloat | similarity | 
| SoSFEnum | filterMode | 
| SoImageVizEngineOutput < SoSFImageDataAdapter, SoImageDataAdapter * > | outImage | 
 SoBilateralFilterProcessing engine
  SoBilateralFilterProcessing engine 
The SoBilateralFilterProcessing engine edge-preserving smoothing filter.
For an introduction to smoothing and denoising image filters, see section Image Filters.
This engine is an edge-preserving smoothing filter. The intensity value at each voxel in an image is replaced by a weighted average of intensity values from nearby pixels. Crucially the weights depend on distance in color space from the voxel in question. This preserves sharp edges by systematically excluding pixels across discontinuities from consideration:
![\[O(i,j,k)=\frac{1}{K(i,j,k)}\sum_{l=-\frac{n_x}{2}}^{\frac{n_x}{2}}\sum_{m=-\frac{n_y}{2}}^{\frac{n_y}{2}}\sum_{n=-\frac{n_z}{2}}^{\frac{n_z}{2}} e^{_\frac{(I(i,j,k)-I(l,m,n))^2}{h^2}} I(l,m,n)\]](form_453.png) 
where  is a weighting similarity factor and
 is a weighting similarity factor and  is a local normalisation factor given by:
 is a local normalisation factor given by:
![\[K(i,j,k)=\sum_{l=-\frac{n_x}{2}}^{\frac{n_x}{2}}\sum_{m=-\frac{n_y}{2}}^{\frac{n_y}{2}}\sum_{n=-\frac{n_z}{2}}^{\frac{n_z}{2}} e^{_\frac{(I(i,j,k)-I(l,m,n))^2}{h^2}}\]](form_454.png) 
The greater  is, the stronger the blur is.
 is, the stronger the blur is.
: SoDespeckleProcessing, SoSigmaFilterProcessing, SoUnsharpMaskingProcessing.
| computeMode | MODE_AUTO | 
| kernelSize | 3 3 3 | 
| inImage | NULL | 
| similarity | 20.0f | 
| filterMode | BILATERAL | 
| SoBilateralFilterProcessing::SoBilateralFilterProcessing | ( | ) | 
Constructor.
Select the compute Mode (2D or 3D or AUTO) Use enum ComputeMode.
Default is MODE_AUTO
The filter type.
Use enum FilterMode. Default is BILATERAL
The input image.
Default value is NULL. Supported types include: grayscale binary label color image.
The kernel size in each direction (odd value).
Default value is SbVec3i32(3,3,3)
| SoImageVizEngineOutput<SoSFImageDataAdapter,SoImageDataAdapter*> SoBilateralFilterProcessing::outImage | 
The output image.
Default value is NULL. Supported types include: grayscale binary label color image.
The photometric similarity (strictly positive value).
Default value is 20.0f.