plateaus_centerplateaus_centerPlateausCenterPlateausCenterplateaus_center (Operator)
Name
plateaus_centerplateaus_centerPlateausCenterPlateausCenterplateaus_center — Detektieren der Schwerpunkte aller Grauwert-Plateaus.
Signatur
def plateaus_center(image: HObject) -> HObject
Beschreibung
plateaus_centerplateaus_centerPlateausCenterPlateausCenterplateaus_center wählt alle Punkte aus ImageImageImageimageimage aus, deren
Grauwert nicht kleiner als der Grauwert ihrer Nachbarn (8-er Nachbarschaft)
ist, und gibt sie in PlateausPlateausPlateausplateausplateaus zurück. Wenn mehrere solcher Punkte
zusammenhängen (Plateau), wird der Schwerpunkt verwendet. Jeder Schwerpunkt eines Plateaus
ergibt eine eigene Region.
Ausführungsinformationen
- Multithreading-Typ: reentrant (läuft parallel zu nicht-exklusiven Operatoren).
- Multithreading-Bereich: global (kann von jedem Thread aufgerufen werden).
- Automatisch parallelisiert auf Tupelebene.
Parameter
ImageImageImageimageimage (input_object) singlechannelimage(-array) → objectHImageHObjectHObjectHobject (byte / direction / cyclic / int1 / int2 / uint2 / int4 / int8 / real)
Eingabebild.
PlateausPlateausPlateausplateausplateaus (output_object) region-array → objectHRegionHObjectHObjectHobject *
Schwerpunkte der gefundenen Plateaus als Regionen
(für jedes Plateau eine Region).
Beispiel (C++)
#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);
}
Beispiel (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);
Beispiel (C++)
#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);
}
Beispiel (C++)
#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);
}
Vorgänger
binomial_filterbinomial_filterBinomialFilterBinomialFilterbinomial_filter,
gauss_filtergauss_filterGaussFilterGaussFiltergauss_filter,
smooth_imagesmooth_imageSmoothImageSmoothImagesmooth_image
Nachfolger
area_centerarea_centerAreaCenterAreaCenterarea_center,
get_region_pointsget_region_pointsGetRegionPointsGetRegionPointsget_region_points,
select_shapeselect_shapeSelectShapeSelectShapeselect_shape
Alternativen
plateausplateausPlateausPlateausplateaus,
nonmax_suppression_ampnonmax_suppression_ampNonmaxSuppressionAmpNonmaxSuppressionAmpnonmax_suppression_amp,
local_maxlocal_maxLocalMaxLocalMaxlocal_max
Siehe auch
monotonymonotonyMonotonyMonotonymonotony,
topographic_sketchtopographic_sketchTopographicSketchTopographicSketchtopographic_sketch,
corner_responsecorner_responseCornerResponseCornerResponsecorner_response,
texture_lawstexture_lawsTextureLawsTextureLawstexture_laws
Modul
Foundation