ImageDev

Exponential

Calculates the exponential value of each pixel in a floating point image.

Access to parameter description

This algorithm applies a pointwise operator that calculates the exponential value of each pixel: $$ O(i,j)=exp(I(i,j)) $$ It works only with a floating point input image, and generates another floating point image.

Note: The exponential operator is inclined to produce overflows. Theoretically, it cannot be applied on values greater than 88.7. For convenience, it is recommened to apply it on lower values (for example, a data range like [0, 10]).

See also

Function Syntax

This function returns outputImage.
// Function prototype
std::shared_ptr< iolink::ImageView > exponential( std::shared_ptr< iolink::ImageView > inputImage, std::shared_ptr< iolink::ImageView > outputImage = nullptr );
This function returns outputImage.
// Function prototype.
exponential(input_image: idt.ImageType,
            output_image: idt.ImageType = None) -> idt.ImageType
This function returns outputImage.
// Function prototype.
public static IOLink.ImageView
Exponential( IOLink.ImageView inputImage, IOLink.ImageView outputImage = null );

Class Syntax

Parameters

Parameter Name Description Type Supported Values Default Value
input
inputImage
The input floating point image. Image Grayscale or Multispectral nullptr
output
outputImage
The output floating point image. Its dimensions are forced to the same values as the input. Image nullptr
Parameter Name Description Type Supported Values Default Value
input
input_image
The input floating point image. image Grayscale or Multispectral None
output
output_image
The output floating point image. Its dimensions are forced to the same values as the input. image None
Parameter Name Description Type Supported Values Default Value
input
inputImage
The input floating point image. Image Grayscale or Multispectral null
output
outputImage
The output floating point image. Its dimensions are forced to the same values as the input. Image null

Object Examples

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

Exponential exponentialAlgo;
exponentialAlgo.setInputImage( polystyrene_float );
exponentialAlgo.execute();

std::cout << "outputImage:" << exponentialAlgo.outputImage()->toString();
polystyrene_float = imagedev.read_vip_image(imagedev_data.get_image_path("polystyrene_float.vip"))

exponential_algo = imagedev.Exponential()
exponential_algo.input_image = polystyrene_float
exponential_algo.execute()

print("output_image:", str(exponential_algo.output_image))
ImageView polystyrene_float = Data.ReadVipImage( @"Data/images/polystyrene_float.vip" );

Exponential exponentialAlgo = new Exponential
{
    inputImage = polystyrene_float
};
exponentialAlgo.Execute();

Console.WriteLine( "outputImage:" + exponentialAlgo.outputImage.ToString() );

Function Examples

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

auto result = exponential( polystyrene_float );

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

result = imagedev.exponential(polystyrene_float)

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

IOLink.ImageView result = Processing.Exponential( polystyrene_float );

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