plateaus_center🔗
Short description🔗
plateaus_center — Detect the centers of all gray value plateaus.
Signature🔗
plateaus_center( image Image, out region Plateaus )
Description🔗
plateaus_center extracts all points from Image with a gray
value greater or equal to the gray value of its neighbors (8-neighborhood)
and returns them in Plateaus. If more than one of these points are
connected (plateau), their center of gravity is returned. Each plateau
center is returned as a separate region.
Execution information🔗
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.
Parameters🔗
Image (input_object) singlechannelimage(-array) → object (byte / direction / cyclic / int1 / int2 / uint2 / int4 / int8 / real)
Input image.
Plateaus (output_object) region-array → object
Centers of gravity of the extracted plateaus as regions (one region for each plateau).
Example🔗
(C)
read_image(&Image,"fabrik")\;
corner_responce(Image,&CornerResp,5,0.04)\;
plateaus_center(CornerResp,&Maxima)\;
set_colored(WindowHandle,12)\;
disp_region(Maxima,WindowHandle)\;
T_area_center(Maxima,NULL,&Row,&Col)\;
#include "HIOStream.h"
#if !defined(USE_IOSTREAM_H)
using namespace std\;
#endif
#include "HalconCpp.h"
using namespace Halcon\;
int main (int argc, char *argv[])
{
if (argc != 2)
{
cout << "Usage : " << argv[0] << " <name of image>" << endl\;
return (-1)\;
}
HImage image (argv[1])\;
HWindow win\;
image.Display (win)\;
HImage cres = image.CornerResponse (5, 0.04)\;
HRegionArray maxi = cres.PlateausCenter ()\;
win.SetColored (12)\;
maxi.Display (win)\;
win.Click ()\;
return (0)\;
}
Combinations with other operators🔗
Combinations
Possible predecessors
binomial_filter, gauss_filter, smooth_image
Possible successors
area_center, get_region_points, select_shape
Alternatives
plateaus, nonmax_suppression_amp, local_max
See also
Module🔗
Foundation