ClassesClassesClassesClasses | | | | Operators

plateaus_centerplateaus_centerPlateausCenterplateaus_centerPlateausCenterPlateausCenter (Operator)

Name

plateaus_centerplateaus_centerPlateausCenterplateaus_centerPlateausCenterPlateausCenter — Detect the centers of all gray value plateaus.

Signature

plateaus_center(Image : Plateaus : : )

Herror plateaus_center(const Hobject Image, Hobject* Plateaus)

Herror T_plateaus_center(const Hobject Image, Hobject* Plateaus)

Herror plateaus_center(Hobject Image, Hobject* Plateaus)

HRegionArray HImage::PlateausCenter() const

HRegionArray HImageArray::PlateausCenter() const

void PlateausCenter(const HObject& Image, HObject* Plateaus)

HRegion HImage::PlateausCenter() const

void HOperatorSetX.PlateausCenter(
[in] IHUntypedObjectX* Image, [out] IHUntypedObjectX*Plateaus)

IHRegionX* HImageX.PlateausCenter()

static void HOperatorSet.PlateausCenter(HObject image, out HObject plateaus)

HRegion HImage.PlateausCenter()

Description

plateaus_centerplateaus_centerPlateausCenterplateaus_centerPlateausCenterPlateausCenter extracts all points from ImageImageImageImageImageimage with a gray value greater or equal to the gray value of its neighbors (8-neighborhood) and returns them in PlateausPlateausPlateausPlateausPlateausplateaus. 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.

Parallelization

Parameters

ImageImageImageImageImageimage (input_object)  singlechannelimage(-array) objectHImageHImageHImageHImageXHobject (byte / direction / cyclic / int1 / int2 / uint2 / int4 / int8 / real)

Input image.

PlateausPlateausPlateausPlateausPlateausplateaus (output_object)  region-array objectHRegionHRegionHRegionArrayHRegionXHobject *

Centers of gravity of the extracted plateaus as regions (one region for each plateau).

Example (C++ (HALCON 5.0-10.0))

#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);
}

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);

Example (C++ (HALCON 5.0-10.0))

#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);
}

Example (C++ (HALCON 5.0-10.0))

#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);
}

Example (C++ (HALCON 5.0-10.0))

#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);
}

Example (C++ (HALCON 5.0-10.0))

#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);
}

Possible Predecessors

binomial_filterbinomial_filterBinomialFilterbinomial_filterBinomialFilterBinomialFilter, gauss_filtergauss_filterGaussFiltergauss_filterGaussFilterGaussFilter, smooth_imagesmooth_imageSmoothImagesmooth_imageSmoothImageSmoothImage

Possible Successors

area_centerarea_centerAreaCenterarea_centerAreaCenterAreaCenter, get_region_pointsget_region_pointsGetRegionPointsget_region_pointsGetRegionPointsGetRegionPoints, select_shapeselect_shapeSelectShapeselect_shapeSelectShapeSelectShape

Alternatives

plateausplateausPlateausplateausPlateausPlateaus, nonmax_suppression_ampnonmax_suppression_ampNonmaxSuppressionAmpnonmax_suppression_ampNonmaxSuppressionAmpNonmaxSuppressionAmp, local_maxlocal_maxLocalMaxlocal_maxLocalMaxLocalMax

See also

monotonymonotonyMonotonymonotonyMonotonyMonotony, topographic_sketchtopographic_sketchTopographicSketchtopographic_sketchTopographicSketchTopographicSketch, corner_responsecorner_responseCornerResponsecorner_responseCornerResponseCornerResponse, texture_lawstexture_lawsTextureLawstexture_lawsTextureLawsTextureLaws

Module

Foundation


ClassesClassesClassesClasses | | | | Operators