1. A method comprising: collecting, by an end-user device, a depth map at a location in a path network; slicing the depth map into a plurality of horizontal segments, each horizontal segment corresponding to a different elevation; extracting, using a processor of the end-user device, two-dimensional feature geometries from at least one of the plurality of horizontal segments of the depth map, wherein the two-dimensional feature geometries comprise one or more of the following: arcs, splines, lines, or a set of connected lines or curves; identifying a plurality of control points in the extracted two-dimensional feature geometries, wherein at least one feature geometry has at least two control points; calculating distances between the end-user device and the identified control points; receiving location reference information for each identified control point from an external database; and determining a geographic location of the end-user device in the path network through a multilateration calculation using the location reference information of the identified control points and the calculated distances between the end-user device and each identified control point.