local_minlocal_minLocalMinLocalMinlocal_min (Operator)
Name
local_minlocal_minLocalMinLocalMinlocal_min
— Detect all local minima in an image.
Signature
def local_min(image: HObject) -> HObject
Description
local_minlocal_minLocalMinLocalMinLocalMinlocal_min
extracts all points from ImageImageImageImageimageimage
having a gray
value smaller than the gray value of all its neighbors and returns them in
LocalMinimaLocalMinimaLocalMinimaLocalMinimalocalMinimalocal_minima
. The neighborhood used can be set by
set_system(::'neighborhood',<4/8>)set_system("neighborhood",<4/8>)SetSystem("neighborhood",<4/8>)SetSystem("neighborhood",<4/8>)SetSystem("neighborhood",<4/8>)set_system("neighborhood",<4/8>)
.
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
ImageImageImageImageimageimage
(input_object) singlechannelimage(-array) →
objectHImageHObjectHImageHobject (byte / direction / cyclic / int1 / int2 / uint2 / int4 / int8 / real)
Image to be processed.
LocalMinimaLocalMinimaLocalMinimaLocalMinimalocalMinimalocal_minima
(output_object) region(-array) →
objectHRegionHObjectHRegionHobject *
Extracted local minima as regions.
Number of elements:
LocalMinima == Image
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 mins = cres.LocalMin ();
win.SetColored (12);
mins.Display (win);
win.Click ();
return (0);
}
Example (C)
read_image(&Image,"fabrik");
corner_responce(Image,&CornerResp,5,0.04);
local_min(CornerResp,&Minima);
set_colored(WindowHandle,12);
disp_region(Minima,WindowHandle);
T_get_region_points(Minima,&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 mins = cres.LocalMin ();
win.SetColored (12);
mins.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 mins = cres.LocalMin ();
win.SetColored (12);
mins.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 mins = cres.LocalMin ();
win.SetColored (12);
mins.Display (win);
win.Click ();
return (0);
}
Possible Predecessors
binomial_filterbinomial_filterBinomialFilterBinomialFilterBinomialFilterbinomial_filter
,
gauss_filtergauss_filterGaussFilterGaussFilterGaussFiltergauss_filter
,
smooth_imagesmooth_imageSmoothImageSmoothImageSmoothImagesmooth_image
Possible Successors
get_region_pointsget_region_pointsGetRegionPointsGetRegionPointsGetRegionPointsget_region_points
,
connectionconnectionConnectionConnectionConnectionconnection
Alternatives
gray_skeletongray_skeletonGraySkeletonGraySkeletonGraySkeletongray_skeleton
,
lowlandslowlandsLowlandsLowlandsLowlandslowlands
,
lowlands_centerlowlands_centerLowlandsCenterLowlandsCenterLowlandsCenterlowlands_center
See also
monotonymonotonyMonotonyMonotonyMonotonymonotony
,
topographic_sketchtopographic_sketchTopographicSketchTopographicSketchTopographicSketchtopographic_sketch
,
corner_responsecorner_responseCornerResponseCornerResponseCornerResponsecorner_response
,
texture_lawstexture_lawsTextureLawsTextureLawsTextureLawstexture_laws
Module
Foundation