TECHNOLOGICAL FIELD

An example embodiment relates generally to detecting and/or communicating information/data regarding features of a road network. An example embodiment relates generally to providing a correct, accurate, and up-to-date digital map representing a road network.

BACKGROUND

Vehicles will soon be making driving decisions without human intervention. Map information/data is an important and indispensable source of guidance for autonomous vehicles, so it is preferable that the map information/data be correct, accurate, and up-to-date. The world is not static. It is constantly shifting and evolving. Therefore, it is preferred that mapping systems detect, verify, and update mapping information/data based on changes that are happening in the world in near real-time or real-time.

BRIEF SUMMARY OF SOME EXAMPLE EMBODIMENTS

Correct, accurate, and up-to-date map information/data is important for performing various navigation functions by an autonomous, self-driving vehicle, an advanced driver assistances system (ADAS), and/or a vehicle apparatus configured to assist and/or guide a human operator. For example, map information/data may be used to perform navigation functions such as localization, route determination, lane level route determination, lane maintenance, route guidance, lane level route guidance, provision of traffic information/data, provision of lane level traffic information/data and/or the like. However, as road networks and conditions of road networks (e.g., construction, obstructions, traffic incidents, state of traffic signals, and/or the like) are constantly shifting and evolving, it is preferred that the map information/data is regularly modified and/or updated to maintain map information/data that is correct, accurate, and up-to-date. Preferably the map information/data would be updated in at least near real time (e.g., near real time or real time) with respect to changes in the road network. One strategy for maintaining a digital map such that the map information/data of the digital map is correct, accurate, and up-to-date is to crowdsource information/data from sensors installed on vehicle in order to timely detect changes to the road network and/or conditions of the road network and to determine appropriate updates for the map information/data to reflect the detected changes.

Various embodiments provide methods, systems, apparatuses, and computer program products for updating a digital map representing a road network such that the map information/data of the digital map is correct, accurate, and up-to-date. For example, various embodiments provide methods, systems, apparatuses, and computer program products for crowdsourcing road information/data such that topology of portions of the road network and/or changes to the road network may be efficiently and timely identified and the map information/data of the digital map may be updated accordingly. In various embodiments, the road information/data is generated based on sensor information/data captured by sensors onboard a vehicle traversing at least a portion of the road network. A vehicle apparatus onboard the vehicle may process the sensor information/data to generate the road information/data. Various embodiments provide for the reporting of the road information/data in a predetermined, standardized data model using predetermined, standardized data formats. The predetermined, standardized data model and predetermined standardized data formats are configured for efficient use of network bandwidth for the transmitting of the road information/data. In various embodiments, the road information/data is packaged, compiled, formatted, and/or the like into a maplet. A maplet is a data structure comprising (a) abstracted, parameterized, fused representations of environment elements detected in sensor information/data captured by one or more sensors of a vehicle apparatus and (b) a representation of the vehicle's trajectory history for a segment of a vehicle's trajectory. In an example embodiment, the segment of the vehicle's trajectory may correspond to predetermined length and/or time of a single vehicle ignition cycle. In various embodiments, the data structure of the maplet is a predefined and/or predetermined, standardized data structure. In various embodiments, the environment elements comprise a topology of a segment of the road network as indicated by segment of the vehicle's trajectory and observations corresponding to the segment of the road network such as sign faces, road surface markings, pole-like objects, construction markers, traffic signals, lane markings, driving surface edge (e.g., edge of the pavement comprising the driving surface), road side barriers, and/or the like. For example, an environment element may be a real world object in the environment of the segment of the road network and/or a property (e.g., topology) of the road network itself.

In various embodiments, a network apparatus may generate and provide maplet requests based on a management strategy. For example, the network apparatus may determine that a request trigger has been identified corresponding to a particular region of a geographic area represented by the digital map. Responsive to determining that the request trigger has been identified, the network apparatus may generate and provide a request trigger such that vehicle apparatuses on board vehicles located in or near the region identified in the request (referred to as the request region herein) may receive the maplet request. Responsive to receiving a maplet request a vehicle apparatus may determine if the corresponding vehicle is located within the request region and/or if/when the corresponding vehicle enters the request region. When the vehicle is within the request region, the vehicle apparatus may use sensor information/data captured by sensors onboard the vehicle to generate an observation. The vehicle apparatus may then generate a maplet that encodes a trajectory of a corresponding vehicle and various classes of features within the observation. For example the maplet request may identify one or more classes for which road information/data should be provided if features corresponding to the identified one or more classes are identified within the observation. Some example classes include sign faces, road surface markings, pole-like objects, construction markers, traffic signals, lane markings, driving surface edge (e.g., edge of the pavement comprising the driving surface), and road side barriers. For example, the road information/data of the pose points and/or GNSS points classes may provide and/or encode a trajectory of the vehicle along a predetermined and/or predefined length of the request region. For example, the road information/data of the sign faces, road surface markings, pole-like objects, construction markers, traffic signals, lane markings, driving surface edge (e.g., edge of the pavement comprising the driving surface), and/or road side barriers classes may provide and/or encode road information/data regarding observations identified within the observation.

After generating the maplet, the vehicle apparatus may provide the maplet such that the network apparatus receives the maplet. In various embodiments, the maplet may be compressed (e.g., using a compression algorithm) and provided in a compressed format. The network apparatus receives the maplet, performs any necessary decompression, and analyzes the maplet. In various embodiments, the network apparatus may receive a plurality of maplets from a plurality of vehicle apparatuses that correspond to overlapping portions of the request region. The analysis of the received maplets performed may be based on the type of the request trigger that was identified. In various embodiments, the analysis of the received maplets may be used to update the digital map. For example, the analysis of the received maplets may be used to determine road network topology within the request region (e.g., to identify road segments, lane segments, and/or portions thereof that were not previously encoded in and/or represented by the digital map); determine whether map information/data corresponding to the request region is still accurate, correct, and up-to-date and/or whether the map information/data should be updated to better reflect the current real world conditions of the request region as encoded by the road information/data of the maplet; and/or to determine new and/or updated map information/data.

In an example embodiment, the digital map may be a high definition map that may be used for navigation functions for an autonomous, self-driving vehicle, an advanced driver assistances system (ADAS), and/or a human operator. For example, the digital map and/or portions thereof may be used to perform navigation functions such as localization, route determination, lane level route determination, lane maintenance, route guidance, lane level route guidance, provision of traffic information/data, provision of lane level traffic information/data and/or the like.

Various embodiments of the present invention provide technical solutions to the technical problems of providing a digital map that is correct, accurate, and up-to-date such that the digital map is an effective tool for performing navigation functions that enable navigation of a road network by an autonomous, self-driving vehicle, an advanced driver assistances system (ADAS), and/or a human operator. Various embodiments of the present invention provide technical solutions to the technical problem of transmitting sufficient and rich enough road information/data for maintaining and updating the digital map while not overwhelming the limited bandwidth network over which the road information/data is transmitted. Various embodiments of the present invention provide technical solutions to the technical problem of using sensor information/data captured by a plurality of vehicles having a variety of (possibly proprietary) sensor configurations onboard to build a coherent, self-consistent, and accurate representation of the road network (e.g., the digital map). In various embodiments, the maplets and corresponding methods, apparatuses, systems, and/or computer program products provide technical solutions to these technical problems by providing a maplet that provides road information/data in a predetermined/predefined, standardized data format using a predetermined/predefined, standardized data model and that is configured to be an efficient information/data packet so as to reduce the bandwidth needed to communicate the road information/data such that road information/data may be automatically, efficiently, and timely provided to the network apparatus for use in maintaining and updating the digital map.

In an example embodiment, a vehicle apparatus receives a maplet request identifying a request region. The vehicle apparatus (a) is onboard a vehicle, (b) comprises (i) a communication interface configured to communicate via at least one network, (ii) at least one processor, and (iii) at least one memory, and (c) is in communication with a plurality of sensors onboard the vehicle. Responsive to determining that the vehicle is within the request region, the vehicle apparatus processes sensor data captured by two or more sensors of the plurality of sensors to generate a multi-sensor data stream corresponding to a segment of a road network. The vehicle apparatus identifies one or more observations corresponding to at least one traffic signal within the multi-sensor data stream. The vehicle apparatus generates a maplet based on the one or more observations and the maplet request. Generating the maplet comprises using a predetermined data model and a predetermined data format corresponding to a traffic signal observation class to encode road data corresponding to at least one of the one or more observations corresponding to that at least one traffic signal. The vehicle apparatus provides the maplet such that a network apparatus receives the maplet. The network apparatus is configured to validate or update map data of a digital map of the road network based at least in part on the maplet.

According to an aspect of the present invention, a method for providing a maplet corresponding to a traffic signal is provided. In an example embodiment, the method comprises receiving, by a vehicle apparatus, a maplet request identifying a request region. The vehicle apparatus (a) is onboard a vehicle, (b) comprises (i) a communication interface configured to communicate via at least one network, (ii) at least one processor, and (iii) at least one memory, and (c) is in communication with a plurality of sensors onboard the vehicle. The method further comprises, responsive to determining that the vehicle is within the request region, processing, by the vehicle apparatus, sensor data captured by two or more sensors of the plurality of sensors to generate a multi-sensor data stream corresponding to a segment of a road network. The method further comprises identifying, by the vehicle apparatus, one or more observations corresponding to at least one traffic signal within the multi-sensor data stream; and generating, by the vehicle apparatus, a maplet based on the one or more observations and the maplet request. Generating the maplet comprises using a predetermined data model and a predetermined data format corresponding to a traffic signal observation class to encode road data corresponding to at least one of the one or more observations corresponding to that at least one traffic signal. The method further comprises providing, by the vehicle apparatus, the maplet such that a network apparatus receives the maplet. The network apparatus is configured to validate or update map data of a digital map of the road network based at least in part on the maplet.

In an example embodiment, the maplet comprises a header comprising a traffic signal flag. In an example embodiment, the maplet comprises a plurality of vertex points defining a two dimensional bounding polygon, each vertex point of the plurality of vertex points located at a vertex of the bounding polygon that bounds the face of the traffic signal. In an example embodiment, the bounding polygon is a rectangle. In an example embodiment, the bounding polygon is a smallest possible polygon of a particular order that bounds the traffic signal. In an example embodiment, the maplet comprises a covariance matrix for the plurality of vertex points. In an example embodiment, the predetermined format comprises a field for at least one of (a) a horizontal tier count or (b) a vertical tier count for the at least one traffic signal. In an example embodiment, the predetermined format comprises a field for a number of lights in each tier of the traffic signal.

According to another aspect of the present invention, an apparatus is provided. In an example embodiment, the apparatus comprises at least one processor, a communication interface configured to communicate via at least one network, and at least one memory storing computer program code. The apparatus is onboard a vehicle and is in communication with a plurality of sensors onboard the vehicle. The at least one memory and the computer program code are configured to, with the processor, cause the apparatus to at least receive a maplet request identifying a request region. The at least one memory and the computer program code are further configured to, with the processor, cause the apparatus to at least, responsive to determining that the vehicle is within the request region, process sensor data captured by two or more sensors of the plurality of sensors to generate a multi-sensor data stream corresponding to a segment of a road network. The at least one memory and the computer program code are further configured to, with the processor, cause the apparatus to at least identify one or more observations corresponding to at least one traffic signal within the multi-sensor data stream. The at least one memory and the computer program code are further configured to, with the processor, cause the apparatus to at least generate a maplet based on the one or more observations and the maplet request. Generating the maplet comprises using a predetermined data model and a predetermined data format corresponding to a traffic signal observation class to encode road data corresponding to at least one of the one or more observations corresponding to that at least one traffic signal. The at least one memory and the computer program code are further configured to, with the processor, cause the apparatus to at least provide the maplet such that a network apparatus receives the maplet. The network apparatus is configured to validate or update map data of a digital map of the road network based at least in part on the maplet.

In an example embodiment, the maplet comprises a header comprising a traffic signal flag. In an example embodiment, the maplet comprises a plurality of vertex points defining a two dimensional bounding polygon, each vertex point of the plurality of vertex points located at a vertex of the bounding polygon that bounds the face of the traffic signal. In an example embodiment, the bounding polygon is a rectangle. In an example embodiment, the bounding polygon is a smallest possible polygon of a particular order that bounds the traffic signal. In an example embodiment, the maplet comprises a covariance matrix for the plurality of vertex points. In an example embodiment, the predetermined format comprises a field for at least one of (a) a horizontal tier count or (b) a vertical tier count for the at least one traffic signal. In an example embodiment, the predetermined format comprises a field for a number of lights in each tier of the traffic signal.

According to yet another aspect of the present invention, a computer program product is provided. In an example embodiment, the computer program product comprising at least one non-transitory computer-readable storage medium having computer-readable program code portions stored therein. The computer-readable program code portions comprise executable portions configured, when executed by a processor of a vehicle apparatus onboard a vehicle, to cause the vehicle apparatus to receive a maplet request identifying a request region. The computer-readable program code portions further comprise executable portions configured, when executed by the processor of the vehicle apparatus, to, responsive to determining that the vehicle is within the request region, process sensor data captured by two or more sensors of the plurality of sensors to generate a multi-sensor data stream corresponding to a segment of a road network. The computer-readable program code portions further comprise executable portions configured, when executed by the processor of the vehicle apparatus identify one or more observations corresponding to at least one traffic signal within the multi-sensor data stream. The computer-readable program code portions further comprise executable portions configured, when executed by the processor of the vehicle apparatus generate a maplet based on the one or more observations and the maplet request. Generating the maplet comprises using a predetermined data model and a predetermined data format corresponding to a traffic signal observation class to encode road data corresponding to at least one of the one or more observations corresponding to that at least one traffic signal. The computer-readable program code portions further comprise executable portions configured, when executed by the processor of the vehicle apparatus provide the maplet such that a network apparatus receives the maplet. The network apparatus is configured to validate or update map data of a digital map of the road network based at least in part on the maplet.

In an example embodiment, the maplet comprises a header comprising a traffic signal flag. In an example embodiment, the maplet comprises a plurality of vertex points defining a two dimensional bounding polygon, each vertex point of the plurality of vertex points located at a vertex of the bounding polygon that bounds the face of the traffic signal. In an example embodiment, the bounding polygon is a rectangle. In an example embodiment, the bounding polygon is a smallest possible polygon of a particular order that bounds the traffic signal. In an example embodiment, the maplet comprises a covariance matrix for the plurality of vertex points. In an example embodiment, the predetermined format comprises a field for at least one of (a) a horizontal tier count or (b) a vertical tier count for the at least one traffic signal. In an example embodiment, the predetermined format comprises a field for a number of lights in each tier of the traffic signal.

According to still another aspect of the present invention, an apparatus is provided. In an example embodiment, the apparatus comprises means for receiving a maplet request identifying a request region. The apparatus comprises means for, responsive to determining that the vehicle is within the request region, processing sensor data captured by two or more sensors of the plurality of sensors to generate a multi-sensor data stream corresponding to a segment of a road network. The apparatus comprises means for identifying one or more observations corresponding to at least one traffic signal within the multi-sensor data stream. The apparatus comprises means for generating a maplet based on the one or more observations and the maplet request. Generating the maplet comprises using a predetermined data model and a predetermined data format corresponding to a traffic signal observation class to encode road data corresponding to at least one of the one or more observations corresponding to that at least one traffic signal. The apparatus comprises providing the maplet such that a network apparatus receives the maplet. The network apparatus is configured to validate or update map data of a digital map of the road network based at least in part on the maplet.

