ImageDev

RadialGradientCentered3d

Performs a three-dimensional gradient projection with a directional vector defined by a center point.

Access to parameter description

For an introduction: The RadialGradientCentered3d algorithm performs a gradient projection by computing the directional vector from a single given center. For all voxels $P$ in the image, the projection is applied from the same user-defined center $C$.

Notice: See also

Function Syntax

This function returns the outputNormalImage output parameter.
// Function prototype.
std::shared_ptr< iolink::ImageView >
radialGradientCentered3d( std::shared_ptr< iolink::ImageView > inputImageX,
                          std::shared_ptr< iolink::ImageView > inputImageY,
                          std::shared_ptr< iolink::ImageView > inputImageZ,
                          iolink::Vector3i32 projectionCenter,
                          std::shared_ptr< iolink::ImageView > outputNormalImage = NULL );
This function returns the outputNormalImage output parameter.
// Function prototype.
radial_gradient_centered_3d( input_image_x,
                             input_image_y,
                             input_image_z,
                             projection_center = [3, 3, 3],
                             output_normal_image = None )
This function returns the outputNormalImage output parameter.
// Function prototype.
public static IOLink.ImageView
RadialGradientCentered3d( IOLink.ImageView inputImageX,
                          IOLink.ImageView inputImageY,
                          IOLink.ImageView inputImageZ,
                          int[] projectionCenter = null,
                          IOLink.ImageView outputNormalImage = null );

Class Syntax

Parameters

Class Name RadialGradientCentered3d

Parameter Name Description Type Supported Values Default Value
input
inputImageX
The X-gradient input image. Image Grayscale or Multispectral nullptr
input
inputImageY
The Y-gradient input image. Image Grayscale or Multispectral nullptr
input
inputImageZ
The Z-gradient input image. Image Grayscale or Multispectral nullptr
input
projectionCenter
The center of projection coordinates. Vector3i32 >=0 {3, 3, 3}
output
outputNormalImage
The normal gradient output image. Image nullptr

Object Examples

auto foam = readVipImage( std::string( IMAGEDEVDATA_IMAGES_FOLDER ) + "foam.vip" );

RadialGradientCentered3d radialGradientCentered3dAlgo;
radialGradientCentered3dAlgo.setInputImageX( foam );
radialGradientCentered3dAlgo.setInputImageY( foam );
radialGradientCentered3dAlgo.setInputImageZ( foam );
radialGradientCentered3dAlgo.setProjectionCenter( {3, 3, 3} );
radialGradientCentered3dAlgo.execute();

std::cout << "outputNormalImage:" << radialGradientCentered3dAlgo.outputNormalImage()->toString();
foam = imagedev.read_vip_image(imagedev_data.get_image_path("foam.vip"))

radial_gradient_centered_3d_algo = imagedev.RadialGradientCentered3d()
radial_gradient_centered_3d_algo.input_image_x = foam
radial_gradient_centered_3d_algo.input_image_y = foam
radial_gradient_centered_3d_algo.input_image_z = foam
radial_gradient_centered_3d_algo.projection_center = [3, 3, 3]
radial_gradient_centered_3d_algo.execute()

print( "output_normal_image:", str( radial_gradient_centered_3d_algo.output_normal_image ) );
ImageView foam = Data.ReadVipImage( @"Data/images/foam.vip" );

RadialGradientCentered3d radialGradientCentered3dAlgo = new RadialGradientCentered3d
{
    inputImageX = foam,
    inputImageY = foam,
    inputImageZ = foam,
    projectionCenter = new int[]{3, 3, 3}
};
radialGradientCentered3dAlgo.Execute();

Console.WriteLine( "outputNormalImage:" + radialGradientCentered3dAlgo.outputNormalImage.ToString() );

Function Examples

auto foam = readVipImage( std::string( IMAGEDEVDATA_IMAGES_FOLDER ) + "foam.vip" );

auto result = radialGradientCentered3d( foam, foam, foam, {3, 3, 3} );

std::cout << "outputNormalImage:" << result->toString();
foam = imagedev.read_vip_image(imagedev_data.get_image_path("foam.vip"))

result = imagedev.radial_gradient_centered_3d( foam, foam, foam, [3, 3, 3] )

print( "output_normal_image:", str( result ) );
ImageView foam = Data.ReadVipImage( @"Data/images/foam.vip" );

IOLink.ImageView result = Processing.RadialGradientCentered3d( foam, foam, foam, new int[]{3, 3, 3} );

Console.WriteLine( "outputNormalImage:" + result.ToString() );