ImageDev

FlipImage3d

Flips a three-dimensional image along the X, Y, or Z axis.

Access to parameter description

This algorithm generates an output image according to the selected axis of symmetry, as explained in the axis parameter description.

See also

Function Syntax

This function returns the outputImage output parameter.
// Function prototype.
std::shared_ptr< iolink::ImageView >
flipImage3d( std::shared_ptr< iolink::ImageView > inputImage,
             FlipImage3d::Axis axis,
             std::shared_ptr< iolink::ImageView > outputImage = NULL );
This function returns the outputImage output parameter.
// Function prototype.
flip_image_3d( input_image, axis = FlipImage3d.Axis.Z_AXIS, output_image = None )
This function returns the outputImage output parameter.
// Function prototype.
public static IOLink.ImageView
FlipImage3d( IOLink.ImageView inputImage,
             FlipImage3d.Axis axis = ImageDev.FlipImage3d.Axis.Z_AXIS,
             IOLink.ImageView outputImage = null );

Class Syntax

Parameters

Class Name FlipImage3d

Parameter Name Description Type Supported Values Default Value
input
inputImage
The input image. Image Binary, Label, Grayscale or Multispectral nullptr
input
axis
The symmetry axis.
X_AXIS The flip transformation is relative to an axis parallel to X. The result is given by: $$ O(i,j,k)=I(i,M+1-j,N+1-k) $$ where M is the Y image size and N is the Z image size.
Y_AXIS The flip transformation is relative to an axis parallel to Y. The result is given by: $$ O(i,j,k)=I(M+1-i,j,N+1-k) $$ where M is the X image size and N is the Z image size.
Z_AXIS The flip transformation is relative to an axis parallel to the Z axis. The result is given by: $$ O(i,j,k)=I(M+1-i,N+1-j,k) $$ where M is the X image size and N is the Y image size.
Enumeration Z_AXIS
output
outputImage
The output image. Its dimensions and type are forced to the same values as the input. Image nullptr

Object Examples

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

FlipImage3d flipImage3dAlgo;
flipImage3dAlgo.setInputImage( foam );
flipImage3dAlgo.setAxis( FlipImage3d::Axis::X_AXIS );
flipImage3dAlgo.execute();

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

flip_image_3d_algo = imagedev.FlipImage3d()
flip_image_3d_algo.input_image = foam
flip_image_3d_algo.axis = imagedev.FlipImage3d.X_AXIS
flip_image_3d_algo.execute()

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

FlipImage3d flipImage3dAlgo = new FlipImage3d
{
    inputImage = foam,
    axis = FlipImage3d.Axis.X_AXIS
};
flipImage3dAlgo.Execute();

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

Function Examples

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

auto result = flipImage3d( foam, FlipImage3d::Axis::X_AXIS );

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

result = imagedev.flip_image_3d( foam, imagedev.FlipImage3d.X_AXIS )

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

IOLink.ImageView result = Processing.FlipImage3d( foam, FlipImage3d.Axis.X_AXIS );

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