HALCON Reference Manual 10.0.2
Table of Contents / XLD / Transformations ClassesClassesClasses | | | Operators

combine_roads_xldcombine_roads_xldcombine_roads_xldCombineRoadsXldCombineRoadsXld (Operator)

Name

combine_roads_xldcombine_roads_xldcombine_roads_xldCombineRoadsXldCombineRoadsXld — Combine road hypotheses from two resolution levels.

Signature

combine_roads_xld(EdgePolygons, ModParallels, ExtParallels, CenterLines : RoadSides : MaxAngleParallel, MaxAngleColinear, MaxDistanceParallel, MaxDistanceColinear : )

Herror combine_roads_xld(const Hobject EdgePolygons, const Hobject ModParallels, const Hobject ExtParallels, const Hobject CenterLines, Hobject* RoadSides, double MaxAngleParallel, double MaxAngleColinear, double MaxDistanceParallel, double MaxDistanceColinear)

Herror T_combine_roads_xld(const Hobject EdgePolygons, const Hobject ModParallels, const Hobject ExtParallels, const Hobject CenterLines, Hobject* RoadSides, const Htuple MaxAngleParallel, const Htuple MaxAngleColinear, const Htuple MaxDistanceParallel, const Htuple MaxDistanceColinear)

Herror combine_roads_xld(Hobject EdgePolygons, Hobject ModParallels, Hobject ExtParallels, Hobject CenterLines, Hobject* RoadSides, const HTuple& MaxAngleParallel, const HTuple& MaxAngleColinear, const HTuple& MaxDistanceParallel, const HTuple& MaxDistanceColinear)

HXLDPolyArray HXLDPolyArray::CombineRoadsXld(const HXLDModParaArray& ModParallels, const HXLDExtParaArray& ExtParallels, const HXLDPolyArray& CenterLines, const HTuple& MaxAngleParallel, const HTuple& MaxAngleColinear, const HTuple& MaxDistanceParallel, const HTuple& MaxDistanceColinear) const

void HOperatorSetX.CombineRoadsXld(
[in] IHUntypedObjectX* EdgePolygons, [in] IHUntypedObjectX* ModParallels, [in] IHUntypedObjectX* ExtParallels, [in] IHUntypedObjectX* CenterLines, [out] IHUntypedObjectX*RoadSides, [in] VARIANT MaxAngleParallel, [in] VARIANT MaxAngleColinear, [in] VARIANT MaxDistanceParallel, [in] VARIANT MaxDistanceColinear)

IHXLDPolyX* HXLDPolyX.CombineRoadsXld(
[in] IHXLDModParaX* ModParallels, [in] IHXLDExtParaX* ExtParallels, [in] IHXLDPolyX* CenterLines, [in] VARIANT MaxAngleParallel, [in] VARIANT MaxAngleColinear, [in] VARIANT MaxDistanceParallel, [in] VARIANT MaxDistanceColinear)

IHXLDPolyX* HXLDModParaX.CombineRoadsXld(
[in] IHXLDPolyX* EdgePolygons, [in] IHXLDExtParaX* ExtParallels, [in] IHXLDPolyX* CenterLines, [in] VARIANT MaxAngleParallel, [in] VARIANT MaxAngleColinear, [in] VARIANT MaxDistanceParallel, [in] VARIANT MaxDistanceColinear)

static void HOperatorSet.CombineRoadsXld(HObject edgePolygons, HObject modParallels, HObject extParallels, HObject centerLines, out HObject roadSides, HTuple maxAngleParallel, HTuple maxAngleColinear, HTuple maxDistanceParallel, HTuple maxDistanceColinear)

HXLDPoly HXLDPoly.CombineRoadsXld(HXLDModPara modParallels, HXLDExtPara extParallels, HXLDPoly centerLines, HTuple maxAngleParallel, HTuple maxAngleColinear, HTuple maxDistanceParallel, HTuple maxDistanceColinear)

HXLDPoly HXLDPoly.CombineRoadsXld(HXLDModPara modParallels, HXLDExtPara extParallels, HXLDPoly centerLines, double maxAngleParallel, double maxAngleColinear, double maxDistanceParallel, double maxDistanceColinear)

HXLDPoly HXLDModPara.CombineRoadsXld(HXLDPoly edgePolygons, HXLDExtPara extParallels, HXLDPoly centerLines, HTuple maxAngleParallel, HTuple maxAngleColinear, HTuple maxDistanceParallel, HTuple maxDistanceColinear)

HXLDPoly HXLDModPara.CombineRoadsXld(HXLDPoly edgePolygons, HXLDExtPara extParallels, HXLDPoly centerLines, double maxAngleParallel, double maxAngleColinear, double maxDistanceParallel, double maxDistanceColinear)

Description

combine_roads_xldcombine_roads_xldcombine_roads_xldCombineRoadsXldCombineRoadsXld combines road hypotheses obtained from two different resolution levels. The algorithm selects only those hypotheses which mutually support each other in both resolution levels. The parameters EdgePolygonsEdgePolygonsEdgePolygonsEdgePolygonsedgePolygons, ModParallelsModParallelsModParallelsModParallelsmodParallels and ExtParallelsExtParallelsExtParallelsExtParallelsextParallels correspond to the road hypotheses from the highest resolution level. The parameter CenterLinesCenterLinesCenterLinesCenterLinescenterLines is the result of road extraction in a lower resolution level. Those of the polygons EdgePolygonsEdgePolygonsEdgePolygonsEdgePolygonsedgePolygons are returned for which evidence of being roadsides is found in both resolution levels. The parameters MaxAngleParallelMaxAngleParallelMaxAngleParallelMaxAngleParallelmaxAngleParallel and MaxAngleColinearMaxAngleColinearMaxAngleColinearMaxAngleColinearmaxAngleColinear determine the angle, that may be formed by two parallel collinear line segments, respectively. The parameters MaxDistanceParallelMaxDistanceParallelMaxDistanceParallelMaxDistanceParallelmaxDistanceParallel and MaxDistanceColinearMaxDistanceColinearMaxDistanceColinearMaxDistanceColinearmaxDistanceColinear determine the maximum allowed distance of two parallel or colliear line segments, respectively. The combination is done using a number of rules.

Parallelization

Parameters

EdgePolygonsEdgePolygonsEdgePolygonsEdgePolygonsedgePolygons (input_object)  xld_poly-array objectHXLDPolyHXLDPolyArrayHXLDPolyXHobject

XLD polygons to be examined.

ModParallelsModParallelsModParallelsModParallelsmodParallels (input_object)  xld_mod_para-array objectHXLDModParaHXLDModParaArrayHXLDModParaXHobject

Modified parallels obtained from EdgePolygonsEdgePolygonsEdgePolygonsEdgePolygonsedgePolygons.

ExtParallelsExtParallelsExtParallelsExtParallelsextParallels (input_object)  xld_ext_para-array objectHXLDExtParaHXLDExtParaArrayHXLDExtParaXHobject

Extended parallels obtained from EdgePolygonsEdgePolygonsEdgePolygonsEdgePolygonsedgePolygons.

CenterLinesCenterLinesCenterLinesCenterLinescenterLines (input_object)  xld_poly-array objectHXLDPolyHXLDPolyArrayHXLDPolyXHobject

Road-center-line polygons to be examined.

RoadSidesRoadSidesRoadSidesRoadSidesroadSides (output_object)  xld_poly-array objectHXLDPolyHXLDPolyArrayHXLDPolyXHobject *

Roadsides found.

MaxAngleParallelMaxAngleParallelMaxAngleParallelMaxAngleParallelmaxAngleParallel (input_control)  angle.rad HTupleHTupleVARIANTHtuple (real / integer) (double / int / long) (double / Hlong) (double / Hlong) (double / Hlong)

Maximum angle between two parallel line segments.

Default value: 0.523598775598

Suggested values: 0.349065850399, 0.523598775598, 0.6981317008

Restriction: (0 <= MaxAngleParallel) <= (pi / 2)

MaxAngleColinearMaxAngleColinearMaxAngleColinearMaxAngleColinearmaxAngleColinear (input_control)  angle.rad HTupleHTupleVARIANTHtuple (real / integer) (double / int / long) (double / Hlong) (double / Hlong) (double / Hlong)

Maximum angle between two collinear line segments.

Default value: 0.261799387799

Suggested values: 0.174532925199, 0.261799387799, 0.349065850399

Restriction: (0 <= MaxAngleColinear) <= (pi / 2)

MaxDistanceParallelMaxDistanceParallelMaxDistanceParallelMaxDistanceParallelmaxDistanceParallel (input_control)  real HTupleHTupleVARIANTHtuple (real / integer) (double / int / long) (double / Hlong) (double / Hlong) (double / Hlong)

Maximum distance between two parallel line segments.

Default value: 40

Suggested values: 20, 30, 40, 50, 60

Restriction: MaxDistanceParallel > 0

MaxDistanceColinearMaxDistanceColinearMaxDistanceColinearMaxDistanceColinearmaxDistanceColinear (input_control)  real HTupleHTupleVARIANTHtuple (real / integer) (double / int / long) (double / Hlong) (double / Hlong) (double / Hlong)

Maximum distance between two collinear line segments.

Default value: 40

Suggested values: 20, 30, 40, 50, 60

Restriction: MaxDistanceColinear > 0

Possible Predecessors

mod_parallels_xldmod_parallels_xldmod_parallels_xldModParallelsXldModParallelsXld, gen_polygons_xldgen_polygons_xldgen_polygons_xldGenPolygonsXldGenPolygonsXld, affine_trans_contour_xldaffine_trans_contour_xldaffine_trans_contour_xldAffineTransContourXldAffineTransContourXld

Possible Successors

get_polygon_xldget_polygon_xldget_polygon_xldGetPolygonXldGetPolygonXld, get_lines_xldget_lines_xldget_lines_xldGetLinesXldGetLinesXld

See also

lines_gausslines_gausslines_gaussLinesGaussLinesGauss, lines_facetlines_facetlines_facetLinesFacetLinesFacet, get_channel_infoget_channel_infoget_channel_infoGetChannelInfoGetChannelInfo, edges_sub_pixedges_sub_pixedges_sub_pixEdgesSubPixEdgesSubPix

References

C. Steger, C. Glock, W. Eckstein, H. Mayer, B. Radig; “Model-based Road Extraction from Images”; in “Automatic Extraction of Man-Made Objects from Aerial and Space Images”; A. Gruen, O. Kuebler, P. Agouris (Editors); Birkhäuser Verlag (1995), pp. 275-284.
C. Heipke, C. Steger, R. Multhammer; “A Hierarchical Approach to Automatic Road Extraction from Aerial Imagery”; in “Integrating Photogrammetric Techniques with Scene Analysis and Machine Vision II”; D. M. McKeown, Jr., I. J. Dowman (Editors); Proc. SPIE 2486 (1995), pp. 222-231.

Module

Foundation


Table of Contents / XLD / Transformations ClassesClassesClasses | | | Operators
HALCON Reference Manual 10.0.2 Copyright © 1996-2011 MVTec Software GmbH