dots_imagedots_imageDotsImageDotsImage (Operator)
Name
dots_imagedots_imageDotsImageDotsImage
— Enhance circular dots in an image.
Signature
void DotsImage(const HObject& Image, HObject* DotImage, const HTuple& Diameter, const HTuple& FilterType, const HTuple& PixelShift)
HImage HImage::DotsImage(Hlong Diameter, const HString& FilterType, Hlong PixelShift) const
HImage HImage::DotsImage(Hlong Diameter, const char* FilterType, Hlong PixelShift) const
HImage HImage::DotsImage(Hlong Diameter, const wchar_t* FilterType, Hlong PixelShift) const
(Windows only)
Description
dots_imagedots_imageDotsImageDotsImageDotsImage
enhances circular dots of diameter
DiameterDiameterDiameterDiameterdiameter
in the input image ImageImageImageImageimage
. Hence,
dots_imagedots_imageDotsImageDotsImageDotsImage
is especially suited for the segmentation of dot
prints, e.g., in OCR applications. The enhancement is performed by
using matched filters with filter masks that are tuned for a
particular dot size. For example, for DiameterDiameterDiameterDiameterdiameter
= 5 the
filter mask is given by:
The parameter FilterTypeFilterTypeFilterTypeFilterTypefilterType
selects whether 'dark'"dark""dark""dark""dark",
'light'"light""light""light""light", or 'all'"all""all""all""all" dots in the image should be
enhanced. The PixelShiftPixelShiftPixelShiftPixelShiftpixelShift
can be used either to increase
the contrast of the output image (PixelShiftPixelShiftPixelShiftPixelShiftpixelShift
> 0) or to
dampen the values in extremely bright areas that would be cut off
otherwise (PixelShiftPixelShiftPixelShiftPixelShiftpixelShift
= -1).
Attention
Note that filter operators may return unexpected results if
an image with a reduced domain is used as input. Please refer to the
chapter Filters.
Execution Information
- 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
ImageImageImageImageimage
(input_object) (multichannel-)image(-array) →
objectHImageHImageHobject (byte / uint2)
Input image.
DotImageDotImageDotImageDotImagedotImage
(output_object) (multichannel-)image(-array) →
objectHImageHImageHobject * (byte / uint2)
Output image.
DiameterDiameterDiameterDiameterdiameter
(input_control) integer →
HTupleHTupleHtuple (integer) (int / long) (Hlong) (Hlong)
Diameter of the dots to be enhanced.
Default value: 5
List of values: 3, 5, 7, 9, 11, 13, 15, 17, 19, 21, 23
FilterTypeFilterTypeFilterTypeFilterTypefilterType
(input_control) string →
HTupleHTupleHtuple (string) (string) (HString) (char*)
Enhance dark, light, or all dots.
Default value:
'light'
"light"
"light"
"light"
"light"
List of values: 'all'"all""all""all""all", 'dark'"dark""dark""dark""dark", 'light'"light""light""light""light"
PixelShiftPixelShiftPixelShiftPixelShiftpixelShift
(input_control) integer →
HTupleHTupleHtuple (integer) (int / long) (Hlong) (Hlong)
Shift of the filter response.
Default value: 0
List of values: -1, 0, 1, 2
Possible Successors
thresholdthresholdThresholdThresholdThreshold
Alternatives
laplacelaplaceLaplaceLaplaceLaplace
,
laplace_of_gausslaplace_of_gaussLaplaceOfGaussLaplaceOfGaussLaplaceOfGauss
,
diff_of_gaussdiff_of_gaussDiffOfGaussDiffOfGaussDiffOfGauss
,
derivate_gaussderivate_gaussDerivateGaussDerivateGaussDerivateGauss
,
convol_imageconvol_imageConvolImageConvolImageConvolImage
Module
Foundation