Apparatus, method, and computer program for generating map
An apparatus for generating a map includes a processor configured to detect road areas representing roads from a bird's-eye view image, detect skeletal lines of the road areas and detects individual branch points of the skeletal lines as candidates for the centers of intersections, detect candidate intersection areas for the respective candidates for the centers of intersections from the bird's-eye view image, and detect two or more of the candidate intersection areas that at least partially overlap each other as a single intersection area. The candidate intersection areas respectively include the candidates for the centers.
1 . An apparatus for generating a map, comprising:
a processor configured to:
determine one or more stop lines by at least providing a bird's-eye view image to a machine learning classifier trained to detect stop lines,
detect road areas representing roads from the bird's-eye view image,
detect skeletal lines of the road areas and detect individual branch points of the skeletal lines as candidates for the centers of intersections,
detect candidate intersection areas for candidates for the centers of intersections from the bird's-eye view image based on the one or more stop lines, wherein an outer boundary of a candidate intersection area is determined by extending scan lines radially from a candidate for a center of an intersection, checking, for each of the scan lines, for (i) a border of a road area and (ii) an extension of a stop line to a road edge of the road area, and setting, for each of the scan lines, an outer edge of the candidate intersection area at a position where the scan line crosses the border or the extension,
detect two or more of candidate intersection areas that at least partially overlap each other as a single combined intersection area,
detect, for each candidate intersection area, and for each road connected to the intersection area, a number and a position of entry lanes and a number and position of exit lanes of each road, based on a length and a position of a stop line associated with each road, wherein each candidate intersection area contains at least one entry lane and at least one exit lane,
provide the candidate intersection areas to a variational autoencoder,
generate a lane network by the variational autoencoder, wherein the lane network connects, for each road connected to each candidate intersection area, each entry lane of the road to at least one exit lane of the at least one exit lane, and
generate a first road map using at least the lane network.
2 . The apparatus according to claim 1 , wherein the processor is further configured to detect a road marking formed across a road from the bird's-eye view image, and
the processor detects the two or more of the candidate intersection areas that at least partially overlap each other as separate intersection areas when the road marking exists between the candidates for the centers of the two or more of the candidate intersection areas.
3 . The apparatus according to claim 1 , wherein the processor is further configured to
detect, from among the candidates for the centers of intersections, a plurality of candidates connected by the skeletal lines to form a closed curve,
determine whether the closed curve is approximated by a circle centered at a centroid of the plurality of candidates, and
detect an area including the detected plurality of candidates as an area representing a rotary when the closed curve is approximated by a the circle.
4 . The apparatus according to claim 1 , wherein the processor is further configured to detect a road edge or a road marking indicating a road edge from the bird's-eye view image, and
the processor does not detect one of the candidate intersection areas corresponding to one of the candidates for the centers of intersections as the intersection area when one of the skeletal lines passing through the one of the candidates for the centers crosses the road edge or the road marking indicating a road edge along another of the skeletal lines passing through the one of the candidates for the centers.
5 . The apparatus according to claim 1 , wherein the bird's-eye view image includes altitude information indicating real-space altitudes of locations represented in respective pixels of the bird's-eye view image, and
the processor does not detect one of the candidate intersection areas corresponding to one of the candidates for the centers of intersections as the intersection area when a difference between a real-space altitude of a location corresponding to a position on one of the skeletal lines passing through the one of the candidates for the centers and a real-space altitude of a location corresponding to a position on another of the skeletal lines passing through the one of the candidates for the centers is not less than a predetermined altitude difference threshold.
6 . The apparatus according to claim 4 , wherein the detecting the road edge or the road marking includes extending the scan lines such that the scan lines are drawn radially from each candidate intersection area at equiangular intervals.
7 . The apparatus according to claim 1 , wherein the processor is further configured to:
divide each road of the first road map into first segments; and
determine geographical positions of the first segments based on information indicating the geographical area represented in the bird's-eye view image and positions of the first segments in the bird's-eye view image.
8 . The apparatus according to claim 1 , wherein the processor is further configured to:
generate a second road map based on a second bird's-eye view image; and
generate a third road map based on connecting the first road map to the second road map such that a position of a road included in the first road map matches the position of the road in the second road map.
9 . The apparatus according to claim 8 , wherein connecting the first road map to the second road map is based on information indicating the geographical areas represented in the first bird's-eye image and the second bird's-eye image.
10 . The apparatus according to claim 1 , wherein there are at least four roads connected to at least one of the candidate intersection areas.
11 . The apparatus according to claim 1 , wherein there are at least four roads connected to the combined intersection area.
12 . The apparatus according to claim 1 , wherein the combined intersection area includes at least a plurality of nodes of orders not less than three.
13 . The apparatus according to claim 12 , wherein the combined intersection area has a low degree of symmetry.
14 . The apparatus according to claim 1 , wherein generating the lane network further includes generating, by the variational autoencoder, and using values of pixels in each candidate intersection area, a feature map.
15 . The apparatus according to claim 1 , wherein generating the lane network further includes providing the generated feature map to a graph parsing neural network.
16 . A method for generating a map, comprising:
determining one or more stop lines by at least providing a bird's-eye view image to a machine learning classifier trained to detect stop lines;
detecting road areas representing roads from a bird's-eye view image;
detecting skeletal lines of the road areas and detecting individual branch points of the skeletal lines as candidates for the centers of intersections;
detecting candidate intersection areas for the respective candidates for the centers of intersections from the bird's-eye view image based on the one or more stop lines, wherein an outer boundary of a candidate intersection area is determined by extending scan lines radially from a candidate for a center of an intersection, checking, for each of the scan lines, for (i) a border of a road area and (ii) an extension of a stop line to a road edge of the road area, and setting, for each of the scan lines, an outer edge of the candidate intersection area at a position where the scan line crosses the border or the extension;
detecting two or more of candidate intersection areas that at least partially overlap each other as a single combined intersection area;
detecting, for each candidate intersection area, and for each road connected to the intersection area, a number and a position of entry lanes and a number and position of exit lanes of each road, based on a length and a position of a stop line associated with each road, wherein each candidate intersection area contains at least one entry lane and at least one exit lane;
providing the candidate intersection areas to a variational autoencoder,
generating a lane network by the variational autoencoder, wherein the lane network connects, for each road connected to each candidate intersection area, each entry lane of the road to at least one exit lane of the at least one exit lane; and
generating a first road map using at least the lane network.
17 . A non-transitory recording medium that stores a computer program for generating a map, the computer program causing a computer to execute a process comprising:
determining one or more stop lines by at least providing a bird's-eye view image to a machine learning classifier trained to detect stop lines;
detecting road areas representing roads from a bird's-eye view image;
detecting skeletal lines of the road areas and detecting individual branch points of the skeletal lines as candidates for the centers of intersections;
detecting candidate intersection areas for the respective candidates for the centers of intersections from the bird's-eye view image based on the one or more stop lines, wherein an outer boundary of a candidate intersection area is determined by extending scan lines radially from a candidate for a center of an intersection, checking, for each of the scan lines, for (i) a border of a road area and (ii) an extension of a stop line to a road edge of the road area, and setting, for each of the scan lines, an outer edge of the candidate intersection area at a position where the scan line crosses the border or the extension;
detecting two or more of candidate intersection areas that at least partially overlap each other as a single combined intersection area;
detecting, for each candidate intersection area, and for each road connected to the intersection area, a number and a position of entry lanes and a number and position of exit lanes of each road, based on a length and a position of a stop line associated with each road, wherein each candidate intersection area contains at least one entry lane and at least one exit lane;
providing the candidate intersection areas to a variational autoencoder;
generating a lane network by the variational autoencoder, wherein the lane network connects, each entry lane of the road to at least one exit lane; and
generating a first road map using at least the lane network.