Name
gray_projectionsT_gray_projectionsGrayProjectionsGrayProjections — Calculate horizontal and vertical gray-value projections.
void GrayProjections(const HObject& Region, const HObject& Image, const HTuple& Mode, HTuple* HorProjection, HTuple* VertProjection)
HTuple HImage::GrayProjections(const HRegion& Region, const HString& Mode, HTuple* VertProjection) const
HTuple HImage::GrayProjections(const HRegion& Region, const char* Mode, HTuple* VertProjection) const
HTuple HRegion::GrayProjections(const HImage& Image, const HString& Mode, HTuple* VertProjection) const
HTuple HRegion::GrayProjections(const HImage& Image, const char* Mode, HTuple* VertProjection) const
gray_projectionsgray_projectionsGrayProjectionsGrayProjectionsGrayProjections calculates the horizontal and vertical
gray-value projections, i.e., the mean values in the horizontal and
vertical direction of the gray values of the input image
ImageImageImageImageimage within the input region RegionRegionRegionRegionregion.
If ModeModeModeModemode = 'simple'"simple""simple""simple""simple" is selected the projection is
performed in the direction of the coordinate axes of the image,
i.e.:
Here, (r',c') denotes the upper left corner of the smallest
enclosing axis-parallel rectangle of the input region (see
smallest_rectangle1smallest_rectangle1SmallestRectangle1SmallestRectangle1SmallestRectangle1), and n(x) denotes the number of region
points in the corresponding row r+r' or column c+c'. Hence,
the horizontal projection
returns a one-dimensional function that reflects the vertical gray
value changes. Likewise, the vertical projection returns a function
that reflects the horizontal gray value changes.
If ModeModeModeModemode = 'rectangle'"rectangle""rectangle""rectangle""rectangle"is selected the projection is
performed in the direction of the major axes of the smallest
enclosing rectangle of arbitrary orientation of the input region
(see smallest_rectangle2smallest_rectangle2SmallestRectangle2SmallestRectangle2SmallestRectangle2). Here, the horizontal projection
direction corresponds to the larger axis, while the vertical
direction corresponds to the smaller axis. In this mode, all gray
values within the smallest enclosing rectangle of arbitrary
orientation of the input region are used to compute the
projections.
The operator gray_projectionsgray_projectionsGrayProjectionsGrayProjectionsGrayProjections only considers the given
RegionRegionRegionRegionregion and ignores any previously set domain of the input
image ImageImageImageImageimage.
If n(x) = 0, i.e., if there are no region points in the
corresponding row r+r' or column c+c', the respective value of
HorProjectionHorProjectionHorProjectionHorProjectionhorProjection or VertProjectionVertProjectionVertProjectionVertProjectionvertProjection is set to -1.
gray_projectionsgray_projectionsGrayProjectionsGrayProjectionsGrayProjections can be executed on an OpenCL device for the
'simple'"simple""simple""simple""simple" mode if the OpenCL device supports the
cl_khr_global_int32_base_atomics OpenCL extension. For processing images of
type real, the OpenCL device must support the cl_khr_fp64 and
cl_khr_int64_base_atomics extensions.
- Supports OpenCL compute devices.
- Multithreading type: reentrant (runs in parallel with non-exclusive operators).
- Multithreading scope: global (may be called from any thread).
- Processed without parallelization.
Grayvalues for projections.
Method to compute the projections.
Default value:
'simple'
"simple"
"simple"
"simple"
"simple"
List of values: 'rectangle'"rectangle""rectangle""rectangle""rectangle", 'simple'"simple""simple""simple""simple"
List of values (for compute devices): 'simple'"simple""simple""simple""simple"
1D Metrology