LogicalOperationWithImage
Performs a pointwise logical operation between two images.
Access to parameter description
The logical operators to apply between both input images $I1$ and $I2$ can be selected between:
See also
Access to parameter description
The logical operators to apply between both input images $I1$ and $I2$ can be selected between:
- The logical conjunction AND which corresponds to an intersection when applied on two binary images.
- The logical disconjunction OR which corresponds to an union when applied on two binary images.
- The negation of conjunction and disjunction NAND and NOR.
- The exclusive disjunction NOR and its negation NXOR.
- A logical difference operator.
See also
Function Syntax
This function returns the outputImage output parameter.
// Function prototype.
std::shared_ptr< iolink::ImageView >
logicalOperationWithImage( std::shared_ptr< iolink::ImageView > inputImage1,
std::shared_ptr< iolink::ImageView > inputImage2,
LogicalOperationWithImage::LogicalOperator logicalOperator,
std::shared_ptr< iolink::ImageView > outputImage = NULL );
This function returns the outputImage output parameter.
// Function prototype.
logical_operation_with_image( input_image1,
input_image2,
logical_operator = LogicalOperationWithImage.LogicalOperator.AND,
output_image = None )
This function returns the outputImage output parameter.
// Function prototype.
public static IOLink.ImageView
LogicalOperationWithImage( IOLink.ImageView inputImage1,
IOLink.ImageView inputImage2,
LogicalOperationWithImage.LogicalOperator logicalOperator = ImageDev.LogicalOperationWithImage.LogicalOperator.AND,
IOLink.ImageView outputImage = null );
Class Syntax
Parameters
| Class Name | LogicalOperationWithImage |
|---|
| Parameter Name | Description | Type | Supported Values | Default Value | |||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
![]() |
inputImage1 |
The first input image, must be integer, including grayscale, binary, label, and color. | Image | Binary, Label, Grayscale or Multispectral | nullptr | ||||||||||||||
![]() |
inputImage2 |
The second input image, must have same dimensions and type as the first input. | Image | Binary, Label, Grayscale or Multispectral | nullptr | ||||||||||||||
![]() |
logicalOperator |
The operator to apply.
|
Enumeration | AND | |||||||||||||||
![]() |
outputImage |
The output image, size and type are forced to the same values as the inputs. | Image | nullptr | |||||||||||||||
Object Examples
std::shared_ptr< iolink::ImageView > polystyrene = ioformat::readImage( std::string( IMAGEDEVDATA_IMAGES_FOLDER ) + "polystyrene.tif" ); LogicalOperationWithImage logicalOperationWithImageAlgo; logicalOperationWithImageAlgo.setInputImage1( polystyrene ); logicalOperationWithImageAlgo.setInputImage2( polystyrene ); logicalOperationWithImageAlgo.setLogicalOperator( LogicalOperationWithImage::LogicalOperator::AND ); logicalOperationWithImageAlgo.execute(); std::cout << "outputImage:" << logicalOperationWithImageAlgo.outputImage()->toString();
polystyrene = ioformat.read_image(imagedev_data.get_image_path("polystyrene.tif"))
logical_operation_with_image_algo = imagedev.LogicalOperationWithImage()
logical_operation_with_image_algo.input_image1 = polystyrene
logical_operation_with_image_algo.input_image2 = polystyrene
logical_operation_with_image_algo.logical_operator = imagedev.LogicalOperationWithImage.AND
logical_operation_with_image_algo.execute()
print( "output_image:", str( logical_operation_with_image_algo.output_image ) )
ImageView polystyrene = ViewIO.ReadImage( @"Data/images/polystyrene.tif" );
LogicalOperationWithImage logicalOperationWithImageAlgo = new LogicalOperationWithImage
{
inputImage1 = polystyrene,
inputImage2 = polystyrene,
logicalOperator = LogicalOperationWithImage.LogicalOperator.AND
};
logicalOperationWithImageAlgo.Execute();
Console.WriteLine( "outputImage:" + logicalOperationWithImageAlgo.outputImage.ToString() );
Function Examples
std::shared_ptr< iolink::ImageView > polystyrene = ioformat::readImage( std::string( IMAGEDEVDATA_IMAGES_FOLDER ) + "polystyrene.tif" ); auto result = logicalOperationWithImage( polystyrene, polystyrene, LogicalOperationWithImage::LogicalOperator::AND ); std::cout << "outputImage:" << result->toString();
polystyrene = ioformat.read_image(imagedev_data.get_image_path("polystyrene.tif"))
result = imagedev.logical_operation_with_image( polystyrene, polystyrene, imagedev.LogicalOperationWithImage.AND )
print( "output_image:", str( result ) )
ImageView polystyrene = ViewIO.ReadImage( @"Data/images/polystyrene.tif" ); IOLink.ImageView result = Processing.LogicalOperationWithImage( polystyrene, polystyrene, LogicalOperationWithImage.LogicalOperator.AND ); Console.WriteLine( "outputImage:" + result.ToString() );






