Name
div_imagediv_imageDivImagediv_imageDivImageDivImage — Divide two images.
The operator div_imagediv_imageDivImagediv_imageDivImageDivImage divides two images. The gray values
(g1,g2) of the input images (Image1Image1Image1Image1Image1image1) are
transformed as follows:
g' := g1 / g2 * Mult + Add
If an overflow or an underflow occurs the values are clipped.
For a division by zero the result is set to zero.
Several images can be processed in one call. In this case
both input parameters contain the same number of images
which are then processed in pairs.
An output image is generated for every pair.
div_imagediv_imageDivImagediv_imageDivImageDivImage can be executed on an OpenCL device for byte, int1, int2,
uint2, int4, real and complex images. However, since for OpenCL 1.0 only
single precision floating point is supported for all devices, and not all
rounding modes are supported, the OpenCL implementation can produce slightly
different results from the scalar implementation.
- 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.
Result image(s) by the division.
MultMultMultMultMultmult (input_control) number → HTupleHTupleHTupleVARIANTHtuple (real / integer) (double / int / long) (double / Hlong) (double / Hlong) (double / Hlong) (double / Hlong)
Factor for gray range adaption.
Default value: 255
Suggested values: 0.1, 0.2, 0.5, 1.0, 2.0, 3.0, 10, 100, 500, 1000
Typical range of values: -1000
≤
Mult
Mult
Mult
Mult
Mult
mult
≤
1000
Minimum increment: 0.001
Recommended increment: 1
AddAddAddAddAddadd (input_control) number → HTupleHTupleHTupleVARIANTHtuple (real / integer) (double / int / long) (double / Hlong) (double / Hlong) (double / Hlong) (double / Hlong)
Value for gray range adaption.
Default value: 0
Suggested values: 0.0, 128.0, 256.0, 1025
Typical range of values: -1000
≤
Add
Add
Add
Add
Add
add
≤
1000
Minimum increment: 0.01
Recommended increment: 1.0
read_image(Image1,'fabrik')
dev_display (Image1)
read_image(Image2,'monkey')
dev_display (Image2)
div_image (Image1, Image2, Result, 200, 10)
dev_display (Result)
read_image(&Image1,"fabrik");
disp_image(Image1,WindowHandle);
read_image(&Image2,"monkey");
disp_image(Image2,WindowHandle);
div_image(Image1,Image2,&Result,200.0,10.0);
disp_image(Result,WindowHandle);
read_image(Image1,'fabrik')
dev_display (Image1)
read_image(Image2,'monkey')
dev_display (Image2)
div_image (Image1, Image2, Result, 200, 10)
dev_display (Result)
read_image(Image1,'fabrik')
dev_display (Image1)
read_image(Image2,'monkey')
dev_display (Image2)
div_image (Image1, Image2, Result, 200, 10)
dev_display (Result)
read_image(Image1,'fabrik')
dev_display (Image1)
read_image(Image2,'monkey')
dev_display (Image2)
div_image (Image1, Image2, Result, 200, 10)
dev_display (Result)
read_image(Image1,'fabrik')
dev_display (Image1)
read_image(Image2,'monkey')
dev_display (Image2)
div_image (Image1, Image2, Result, 200, 10)
dev_display (Result)
The operator div_imagediv_imageDivImagediv_imageDivImageDivImage returns the value 2 (H_MSG_TRUE) if the
parameters are correct. The behavior in case of empty input (no
input images available) is set via the operator
set_system(::'no_object_result',<Result>:)set_system("no_object_result",<Result>)SetSystem("no_object_result",<Result>)set_system("no_object_result",<Result>)SetSystem("no_object_result",<Result>)SetSystem("no_object_result",<Result>)
If necessary an exception is raised.
add_imageadd_imageAddImageadd_imageAddImageAddImage,
sub_imagesub_imageSubImagesub_imageSubImageSubImage,
mult_imagemult_imageMultImagemult_imageMultImageMultImage
add_imageadd_imageAddImageadd_imageAddImageAddImage,
sub_imagesub_imageSubImagesub_imageSubImageSubImage,
mult_imagemult_imageMultImagemult_imageMultImageMultImage
Foundation