invert_imageinvert_imageInvertImageInvertImageinvert_image (Operator)
Name
invert_imageinvert_imageInvertImageInvertImageinvert_image
— Invert an image.
Signature
def invert_image(image: HObject) -> HObject
Description
The operator invert_imageinvert_imageInvertImageInvertImageInvertImageinvert_image
inverts the gray values of an image.
For images of the byte
and cyclic
type the result is
calculated
as:
g' = 255 - g
Images of the 'direction' type are transformed by
g' = (g + 90) modulo 180
In the case of signed types the values are negated. The resulting
image has the same pixel type as the input image.
Several images can be processed in one call.
An output image is generated for every input image.
invert_imageinvert_imageInvertImageInvertImageInvertImageinvert_image
can be executed on an OpenCL device for byte
,
direction
, cyclic
, int1
, int2
,
uint2
, int4
, and real
images.
Execution Information
- Supports OpenCL compute devices.
- Multithreading type: reentrant (runs in parallel with non-exclusive operators).
- Multithreading scope: global (may be called from any thread).
- Automatically parallelized on tuple level.
- Automatically parallelized on channel level.
- Automatically parallelized on domain level.
Parameters
ImageImageImageImageimageimage
(input_object) (multichannel-)image(-array) →
objectHImageHObjectHImageHobject (byte* / direction* / cyclic* / int1* / int2* / uint2* / int4* / int8 / real*) *allowed for compute devices
Input image(s).
ImageInvertImageInvertImageInvertImageInvertimageInvertimage_invert
(output_object) (multichannel-)image(-array) →
objectHImageHObjectHImageHobject * (byte / direction / cyclic / int1 / int2 / uint2 / int4 / int8 / real)
Image(s) with inverted gray values.
Example (HDevelop)
read_image(Orig,'fabrik')
invert_image(Orig,Invert)
dev_display(Invert)
Example (C)
read_image(&Orig,"fabrik");
invert_image(Orig,&Invert);
disp_image(Invert,WindowHandle);
Example (C++)
#include "HalconCpp.h"
using namespace Halcon;
#include "HIOStream.h"
#if !defined(USE_IOSTREAM_H)
using namespace std;
#endif
int main()
{
HWindow win;
HImage inv,
org ("monkey");
cout << "Display original image" << endl;
org.Display (win);
win.Click ();
inv = org.InvertImage ();
cout << "Display inverted image" << endl;
inv.Display (win);
win.Click ();
return 0;
}
Example (HDevelop)
read_image(Orig,'fabrik')
invert_image(Orig,Invert)
dev_display(Invert)
Example (HDevelop)
read_image(Orig,'fabrik')
invert_image(Orig,Invert)
dev_display(Invert)
Possible Successors
watershedswatershedsWatershedsWatershedsWatershedswatersheds
Alternatives
scale_imagescale_imageScaleImageScaleImageScaleImagescale_image
See also
scale_imagescale_imageScaleImageScaleImageScaleImagescale_image
,
add_imageadd_imageAddImageAddImageAddImageadd_image
,
sub_imagesub_imageSubImageSubImageSubImagesub_image
Module
Foundation