VarianceFilter2d
Computes, for each pixel of a two-dimensional image, the variance value of its neighborhood.
Access to parameter description
For an introduction:
The shape of the neighborhood can be:
Access to parameter description
For an introduction:
- section Images Filtering.
- section First Order Statistics Filters.
The shape of the neighborhood can be:
- A square with a half side length defined by the kernelRadius parameter,
- A disk with a radius defined by the kernelRadius parameter.
Function Syntax
This function returns outputImage.
// Function prototype
std::shared_ptr< iolink::ImageView > varianceFilter2d( std::shared_ptr< iolink::ImageView > inputImage, VarianceFilter2d::KernelShape kernelShape, uint32_t kernelRadius, std::shared_ptr< iolink::ImageView > outputImage = NULL );
This function returns outputImage.
// Function prototype.
variance_filter_2d( input_image,
kernel_shape = VarianceFilter2d.KernelShape.DISK,
kernel_radius = 3,
output_image = None )
This function returns outputImage.
// Function prototype.
public static IOLink.ImageView
VarianceFilter2d( IOLink.ImageView inputImage,
VarianceFilter2d.KernelShape kernelShape = ImageDev.VarianceFilter2d.KernelShape.DISK,
UInt32 kernelRadius = 3,
IOLink.ImageView outputImage = null );
Class Syntax
Parameters
| Parameter Name | Description | Type | Supported Values | Default Value | |||||
|---|---|---|---|---|---|---|---|---|---|
![]() |
inputImage |
The input image. | Image | Binary, Label, Grayscale or Multispectral | nullptr | ||||
![]() |
kernelRadius |
The kernel half side length or radius, in pixels. In case of a square, a value N produces a square window of 2N+1 pixels side length. In case of a disk, a value N produces a disk with a 2N+1 pixels diameter. | UInt32 | >=1 | 3 | ||||
![]() |
kernelShape |
The shape of the window defining the neighborhood.
|
Enumeration | DISK | |||||
![]() |
outputImage |
The output image. Its dimensions are forced to the same values as the input. Its data type is forced to floating point. | Image | nullptr | |||||
| Parameter Name | Description | Type | Supported Values | Default Value | |||||
|---|---|---|---|---|---|---|---|---|---|
![]() |
input_image |
The input image. | image | Binary, Label, Grayscale or Multispectral | None | ||||
![]() |
kernel_radius |
The kernel half side length or radius, in pixels. In case of a square, a value N produces a square window of 2N+1 pixels side length. In case of a disk, a value N produces a disk with a 2N+1 pixels diameter. | uint32 | >=1 | 3 | ||||
![]() |
kernel_shape |
The shape of the window defining the neighborhood.
|
enumeration | DISK | |||||
![]() |
output_image |
The output image. Its dimensions are forced to the same values as the input. Its data type is forced to floating point. | image | None | |||||
| Parameter Name | Description | Type | Supported Values | Default Value | |||||
|---|---|---|---|---|---|---|---|---|---|
![]() |
inputImage |
The input image. | Image | Binary, Label, Grayscale or Multispectral | null | ||||
![]() |
kernelRadius |
The kernel half side length or radius, in pixels. In case of a square, a value N produces a square window of 2N+1 pixels side length. In case of a disk, a value N produces a disk with a 2N+1 pixels diameter. | UInt32 | >=1 | 3 | ||||
![]() |
kernelShape |
The shape of the window defining the neighborhood.
|
Enumeration | DISK | |||||
![]() |
outputImage |
The output image. Its dimensions are forced to the same values as the input. Its data type is forced to floating point. | Image | null | |||||
Object Examples
std::shared_ptr< iolink::ImageView > polystyrene = ioformat::readImage( std::string( IMAGEDEVDATA_IMAGES_FOLDER ) + "polystyrene.tif" ); VarianceFilter2d varianceFilter2dAlgo; varianceFilter2dAlgo.setInputImage( polystyrene ); varianceFilter2dAlgo.setKernelShape( VarianceFilter2d::KernelShape::SQUARE ); varianceFilter2dAlgo.setKernelRadius( 3 ); varianceFilter2dAlgo.execute(); std::cout << "outputImage:" << varianceFilter2dAlgo.outputImage()->toString();
polystyrene = ioformat.read_image(imagedev_data.get_image_path("polystyrene.tif"))
variance_filter_2d_algo = imagedev.VarianceFilter2d()
variance_filter_2d_algo.input_image = polystyrene
variance_filter_2d_algo.kernel_shape = imagedev.VarianceFilter2d.SQUARE
variance_filter_2d_algo.kernel_radius = 3
variance_filter_2d_algo.execute()
print( "output_image:", str( variance_filter_2d_algo.output_image ) )
ImageView polystyrene = ViewIO.ReadImage( @"Data/images/polystyrene.tif" );
VarianceFilter2d varianceFilter2dAlgo = new VarianceFilter2d
{
inputImage = polystyrene,
kernelShape = VarianceFilter2d.KernelShape.SQUARE,
kernelRadius = 3
};
varianceFilter2dAlgo.Execute();
Console.WriteLine( "outputImage:" + varianceFilter2dAlgo.outputImage.ToString() );
Function Examples
std::shared_ptr< iolink::ImageView > polystyrene = ioformat::readImage( std::string( IMAGEDEVDATA_IMAGES_FOLDER ) + "polystyrene.tif" ); auto result = varianceFilter2d( polystyrene, VarianceFilter2d::KernelShape::SQUARE, 3 ); std::cout << "outputImage:" << result->toString();
polystyrene = ioformat.read_image(imagedev_data.get_image_path("polystyrene.tif"))
result = imagedev.variance_filter_2d( polystyrene, imagedev.VarianceFilter2d.SQUARE, 3 )
print( "output_image:", str( result ) )
ImageView polystyrene = ViewIO.ReadImage( @"Data/images/polystyrene.tif" ); IOLink.ImageView result = Processing.VarianceFilter2d( polystyrene, VarianceFilter2d.KernelShape.SQUARE, 3 ); Console.WriteLine( "outputImage:" + result.ToString() );

