ClassesClassesClassesClasses | | | | Operators

combine_roads_xldcombine_roads_xldCombineRoadsXldcombine_roads_xldCombineRoadsXldCombineRoadsXld (Operator)

Name

combine_roads_xldcombine_roads_xldCombineRoadsXldcombine_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 CombineRoadsXld(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)

HXLDPoly HXLDPoly::CombineRoadsXld(const HXLDModPara& ModParallels, const HXLDExtPara& ExtParallels, const HXLDPoly& CenterLines, const HTuple& MaxAngleParallel, const HTuple& MaxAngleColinear, const HTuple& MaxDistanceParallel, const HTuple& MaxDistanceColinear) const

HXLDPoly HXLDPoly::CombineRoadsXld(const HXLDModPara& ModParallels, const HXLDExtPara& ExtParallels, const HXLDPoly& CenterLines, double MaxAngleParallel, double MaxAngleColinear, double MaxDistanceParallel, double MaxDistanceColinear) const

HXLDPoly HXLDModPara::CombineRoadsXld(const HXLDPoly& EdgePolygons, const HXLDExtPara& ExtParallels, const HXLDPoly& CenterLines, const HTuple& MaxAngleParallel, const HTuple& MaxAngleColinear, const HTuple& MaxDistanceParallel, const HTuple& MaxDistanceColinear) const

HXLDPoly HXLDModPara::CombineRoadsXld(const HXLDPoly& EdgePolygons, const HXLDExtPara& ExtParallels, const HXLDPoly& CenterLines, double MaxAngleParallel, double MaxAngleColinear, double MaxDistanceParallel, double 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_xldCombineRoadsXldcombine_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 EdgePolygonsEdgePolygonsEdgePolygonsEdgePolygonsEdgePolygonsedgePolygons, ModParallelsModParallelsModParallelsModParallelsModParallelsmodParallels and ExtParallelsExtParallelsExtParallelsExtParallelsExtParallelsextParallels correspond to the road hypotheses from the highest resolution level. The parameter CenterLinesCenterLinesCenterLinesCenterLinesCenterLinescenterLines is the result of road extraction in a lower resolution level. Those of the polygons EdgePolygonsEdgePolygonsEdgePolygonsEdgePolygonsEdgePolygonsedgePolygons are returned for which evidence of being roadsides is found in both resolution levels. The parameters MaxAngleParallelMaxAngleParallelMaxAngleParallelMaxAngleParallelMaxAngleParallelmaxAngleParallel and MaxAngleColinearMaxAngleColinearMaxAngleColinearMaxAngleColinearMaxAngleColinearmaxAngleColinear determine the angle, that may be formed by two parallel collinear line segments, respectively. The parameters MaxDistanceParallelMaxDistanceParallelMaxDistanceParallelMaxDistanceParallelMaxDistanceParallelmaxDistanceParallel and MaxDistanceColinearMaxDistanceColinearMaxDistanceColinearMaxDistanceColinearMaxDistanceColinearmaxDistanceColinear determine the maximum allowed distance of two parallel or collinear line segments, respectively. The combination is done using a number of rules.

Parallelization

Parameters

EdgePolygonsEdgePolygonsEdgePolygonsEdgePolygonsEdgePolygonsedgePolygons (input_object)  xld_poly-array objectHXLDPolyHXLDPolyHXLDPolyArrayHXLDPolyXHobject

XLD polygons to be examined.

ModParallelsModParallelsModParallelsModParallelsModParallelsmodParallels (input_object)  xld_mod_para-array objectHXLDModParaHXLDModParaHXLDModParaArrayHXLDModParaXHobject

Modified parallels obtained from EdgePolygonsEdgePolygonsEdgePolygonsEdgePolygonsEdgePolygonsedgePolygons.

ExtParallelsExtParallelsExtParallelsExtParallelsExtParallelsextParallels (input_object)  xld_ext_para-array objectHXLDExtParaHXLDExtParaHXLDExtParaArrayHXLDExtParaXHobject

Extended parallels obtained from EdgePolygonsEdgePolygonsEdgePolygonsEdgePolygonsEdgePolygonsedgePolygons.

CenterLinesCenterLinesCenterLinesCenterLinesCenterLinescenterLines (input_object)  xld_poly-array objectHXLDPolyHXLDPolyHXLDPolyArrayHXLDPolyXHobject

Road-center-line polygons to be examined.

RoadSidesRoadSidesRoadSidesRoadSidesRoadSidesroadSides (output_object)  xld_poly-array objectHXLDPolyHXLDPolyHXLDPolyArrayHXLDPolyXHobject *

Roadsides found.

MaxAngleParallelMaxAngleParallelMaxAngleParallelMaxAngleParallelMaxAngleParallelmaxAngleParallel (input_control)  angle.rad HTupleHTupleHTupleVARIANTHtuple (real / integer) (double / int / long) (double / Hlong) (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

MaxAngleColinearMaxAngleColinearMaxAngleColinearMaxAngleColinearMaxAngleColinearmaxAngleColinear (input_control)  angle.rad HTupleHTupleHTupleVARIANTHtuple (real / integer) (double / int / long) (double / Hlong) (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

MaxDistanceParallelMaxDistanceParallelMaxDistanceParallelMaxDistanceParallelMaxDistanceParallelmaxDistanceParallel (input_control)  real HTupleHTupleHTupleVARIANTHtuple (real / integer) (double / int / long) (double / Hlong) (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

MaxDistanceColinearMaxDistanceColinearMaxDistanceColinearMaxDistanceColinearMaxDistanceColinearmaxDistanceColinear (input_control)  real HTupleHTupleHTupleVARIANTHtuple (real / integer) (double / int / long) (double / Hlong) (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_xldModParallelsXldmod_parallels_xldModParallelsXldModParallelsXld, gen_polygons_xldgen_polygons_xldGenPolygonsXldgen_polygons_xldGenPolygonsXldGenPolygonsXld, affine_trans_contour_xldaffine_trans_contour_xldAffineTransContourXldaffine_trans_contour_xldAffineTransContourXldAffineTransContourXld

Possible Successors

get_polygon_xldget_polygon_xldGetPolygonXldget_polygon_xldGetPolygonXldGetPolygonXld, get_lines_xldget_lines_xldGetLinesXldget_lines_xldGetLinesXldGetLinesXld

See also

lines_gausslines_gaussLinesGausslines_gaussLinesGaussLinesGauss, lines_facetlines_facetLinesFacetlines_facetLinesFacetLinesFacet, get_channel_infoget_channel_infoGetChannelInfoget_channel_infoGetChannelInfoGetChannelInfo, edges_sub_pixedges_sub_pixEdgesSubPixedges_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


ClassesClassesClassesClasses | | | | Operators