Rotate2d
Applies a rotation of a given angle on a two-dimensional image arround a given point or the center of the image.
Access to parameter description
![<b> Figure 1.</b> The angle corresponds to this convention for defining the orientation](../images/Rotation2d-angleConvention.png)
Figure 1. The angle corresponds to this convention for defining the orientation
Access to parameter description
![<b> Figure 1.</b> The angle corresponds to this convention for defining the orientation](../images/Rotation2d-angleConvention.png)
Figure 1. The angle corresponds to this convention for defining the orientation
Function Syntax
This function returns outputImage.
// Function prototype
std::shared_ptr< iolink::ImageView > rotate2d( std::shared_ptr< iolink::ImageView > inputImage, double rotationAngle, Rotate2d::CenterMode centerMode, iolink::Vector2d rotationCenter, Rotate2d::InterpolationType interpolationType, bool outputResizing, double paddingValue, std::shared_ptr< iolink::ImageView > outputImage = NULL );
This function returns outputImage.
// Function prototype. rotate_2d( input_image, rotation_angle = 90, center_mode = Rotate2d.CenterMode.IMAGE_CENTER, rotation_center = [0, 0], interpolation_type = Rotate2d.InterpolationType.NEAREST_NEIGHBOR, output_resizing = True, padding_value = 0, output_image = None )
This function returns outputImage.
// Function prototype. public static IOLink.ImageView Rotate2d( IOLink.ImageView inputImage, double rotationAngle = 90, Rotate2d.CenterMode centerMode = ImageDev.Rotate2d.CenterMode.IMAGE_CENTER, double[] rotationCenter = null, Rotate2d.InterpolationType interpolationType = ImageDev.Rotate2d.InterpolationType.NEAREST_NEIGHBOR, bool outputResizing = true, double paddingValue = 0, 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 | ||||
![]() |
rotationAngle |
The angle of the rotation in degrees. | Float64 | Any value | 90 | ||||
![]() |
centerMode |
The way to define the rotation center
|
Enumeration | IMAGE_CENTER | |||||
![]() |
rotationCenter |
The rotation center coordinates. This parameter is ignored in IMAGE_CENTER mode. | Vector2d | Any value | {0.f, 0.f} | ||||
![]() |
interpolationType |
The interpolation mode. Method used to calculate the intensity of each pixel in the result image.
|
Enumeration | NEAREST_NEIGHBOR | |||||
![]() |
outputResizing |
Resize the output image to make all input data visible in the output image if set to True. Preserve the input dimension if set to False. | Bool | true | |||||
![]() |
paddingValue |
The background value for pixels with no correpondant point in the input image. | Float64 | Any value | 0 | ||||
![]() |
outputImage |
The output image. Its type is forced to the same values as the input. Its dimensions are identical to or greater than the input image, according to the outputResizing parameter. | Image | nullptr |
Parameter Name | Description | Type | Supported Values | Default Value | |||||
---|---|---|---|---|---|---|---|---|---|
![]() |
input_image |
The input image. | image | Binary, Label, Grayscale or Multispectral | None | ||||
![]() |
rotation_angle |
The angle of the rotation in degrees. | float64 | Any value | 90 | ||||
![]() |
center_mode |
The way to define the rotation center
|
enumeration | IMAGE_CENTER | |||||
![]() |
rotation_center |
The rotation center coordinates. This parameter is ignored in IMAGE_CENTER mode. | vector2d | Any value | [0, 0] | ||||
![]() |
interpolation_type |
The interpolation mode. Method used to calculate the intensity of each pixel in the result image.
|
enumeration | NEAREST_NEIGHBOR | |||||
![]() |
output_resizing |
Resize the output image to make all input data visible in the output image if set to True. Preserve the input dimension if set to False. | bool | True | |||||
![]() |
padding_value |
The background value for pixels with no correpondant point in the input image. | float64 | Any value | 0 | ||||
![]() |
output_image |
The output image. Its type is forced to the same values as the input. Its dimensions are identical to or greater than the input image, according to the outputResizing parameter. | image | None |
Parameter Name | Description | Type | Supported Values | Default Value | |||||
---|---|---|---|---|---|---|---|---|---|
![]() |
inputImage |
The input image. | Image | Binary, Label, Grayscale or Multispectral | null | ||||
![]() |
rotationAngle |
The angle of the rotation in degrees. | Float64 | Any value | 90 | ||||
![]() |
centerMode |
The way to define the rotation center
|
Enumeration | IMAGE_CENTER | |||||
![]() |
rotationCenter |
The rotation center coordinates. This parameter is ignored in IMAGE_CENTER mode. | Vector2d | Any value | {0f, 0f} | ||||
![]() |
interpolationType |
The interpolation mode. Method used to calculate the intensity of each pixel in the result image.
|
Enumeration | NEAREST_NEIGHBOR | |||||
![]() |
outputResizing |
Resize the output image to make all input data visible in the output image if set to True. Preserve the input dimension if set to False. | Bool | true | |||||
![]() |
paddingValue |
The background value for pixels with no correpondant point in the input image. | Float64 | Any value | 0 | ||||
![]() |
outputImage |
The output image. Its type is forced to the same values as the input. Its dimensions are identical to or greater than the input image, according to the outputResizing parameter. | Image | null |
Object Examples
std::shared_ptr< iolink::ImageView > polystyrene = ioformat::readImage( std::string( IMAGEDEVDATA_IMAGES_FOLDER ) + "polystyrene.tif" ); Rotate2d rotate2dAlgo; rotate2dAlgo.setInputImage( polystyrene ); rotate2dAlgo.setRotationAngle( 40.5 ); rotate2dAlgo.setCenterMode( Rotate2d::CenterMode::IMAGE_CENTER ); rotate2dAlgo.setRotationCenter( {15.5, 32} ); rotate2dAlgo.setInterpolationType( Rotate2d::InterpolationType::NEAREST_NEIGHBOR ); rotate2dAlgo.setOutputResizing( true ); rotate2dAlgo.setPaddingValue( 0 ); rotate2dAlgo.execute(); std::cout << "outputImage:" << rotate2dAlgo.outputImage()->toString();
polystyrene = ioformat.read_image(imagedev_data.get_image_path("polystyrene.tif")) rotate_2d_algo = imagedev.Rotate2d() rotate_2d_algo.input_image = polystyrene rotate_2d_algo.rotation_angle = 40.5 rotate_2d_algo.center_mode = imagedev.Rotate2d.IMAGE_CENTER rotate_2d_algo.rotation_center = [15.5, 32] rotate_2d_algo.interpolation_type = imagedev.Rotate2d.NEAREST_NEIGHBOR rotate_2d_algo.output_resizing = True rotate_2d_algo.padding_value = 0 rotate_2d_algo.execute() print( "output_image:", str( rotate_2d_algo.output_image ) )
ImageView polystyrene = ViewIO.ReadImage( @"Data/images/polystyrene.tif" ); Rotate2d rotate2dAlgo = new Rotate2d { inputImage = polystyrene, rotationAngle = 40.5, centerMode = Rotate2d.CenterMode.IMAGE_CENTER, rotationCenter = new double[]{15.5, 32}, interpolationType = Rotate2d.InterpolationType.NEAREST_NEIGHBOR, outputResizing = true, paddingValue = 0 }; rotate2dAlgo.Execute(); Console.WriteLine( "outputImage:" + rotate2dAlgo.outputImage.ToString() );
Function Examples
std::shared_ptr< iolink::ImageView > polystyrene = ioformat::readImage( std::string( IMAGEDEVDATA_IMAGES_FOLDER ) + "polystyrene.tif" ); auto result = rotate2d( polystyrene, 40.5, Rotate2d::CenterMode::IMAGE_CENTER, {15.5, 32}, Rotate2d::InterpolationType::NEAREST_NEIGHBOR, true, 0 ); std::cout << "outputImage:" << result->toString();
polystyrene = ioformat.read_image(imagedev_data.get_image_path("polystyrene.tif")) result = imagedev.rotate_2d( polystyrene, 40.5, imagedev.Rotate2d.IMAGE_CENTER, [15.5, 32], imagedev.Rotate2d.NEAREST_NEIGHBOR, True, 0 ) print( "output_image:", str( result ) )
ImageView polystyrene = ViewIO.ReadImage( @"Data/images/polystyrene.tif" ); IOLink.ImageView result = Processing.Rotate2d( polystyrene, 40.5, Rotate2d.CenterMode.IMAGE_CENTER, new double[]{15.5, 32}, Rotate2d.InterpolationType.NEAREST_NEIGHBOR, true, 0 ); Console.WriteLine( "outputImage:" + result.ToString() );