Systems and methods for updating highly automated driving maps

Embodiments of the disclosure provide methods and systems for updating a HAD map using a plurality of terminals. The system may include a communication interface configured to communicate with the plurality of terminals via a network. The system may further include a storage configured to store the HAD map. The system may also include at least one processor. The at least one processor may be configured to identify a target region including at least one changing object. The at least one processor may be further configured to instruct the plurality of terminals to acquire data of the target region at varying view positions, and receive the acquired data from the plurality of terminals. The at least one processor may be further configured to construct a three-dimensional model for the at least one changing object from the acquired data, and update the HAD map based on the three-dimensional model.

TECHNICAL FIELD

The present disclosure relates to the systems and methods for updating Highly Automated Driving (HAD) maps, and more particularly to, the systems and methods for crowdsourcing from multiple data acquisition terminals for updating HAD maps.

BACKGROUND

Autonomous driving technology relies heavily on the accurate map. For example, the accuracy of navigation map is critical to functions of autonomous driving vehicles, such as positioning, ambience recognition, decision making and control. In practice, the HAD maps can be generated from the aggregating images and information acquired by various sensors, detectors, and other devices on vehicles as they drive around. For example, a survey vehicle may be equipped with one or more sensors such as a Light Detection and Ranging (LiDAR) radar, a high-resolution camera, a Global Positioning System (GPS), or an Inertial Measurement Unit (IMU), to capture the features of road or surrounding objects. Data captured may include, e.g., center line or border line coordinates of a lane, coordinates and pattern of an object, such as a building, another vehicle, a landmark, a pedestrian, or a traffic sign.

Due to re-planning, new developments, constructions, and other infrastructure changes, HAD maps need to be updated routinely to accurately reflect the road information. For example, a single-lane road may be expanded to a two-lane road, and accordingly, the road marks, traffic signs, traffic lights, and the surrounding objects, such as trees and buildings, may change or move. The HAD update maps typically requires re-surveying the portion of the road that has been changed by a survey vehicle. However, dispatching the million-dollar worth survey vehicle to acquire data for minor changes of maps leads to maintain a large number of survey vehicles, that may amount to a significant cost and thus not economically viable. It may also require considerable human interventions, which translate to an even higher cost. On the other hand, updating the map with low-resolution data acquired by low-cost equipment impairs the quality of the map. Therefore, an improved system and method for updating a high-resolution map is needed.

Embodiments of the disclosure address the above problems by methods and systems for updating a high-resolution map based on crowdsourcing from multiple data acquisition terminals.

SUMMARY

Embodiments of the disclosure provide a system for updating a HAD map using a plurality of terminals. The system may include a communication interface configured to communicate with the plurality of terminals via a network. The system may further include a storage configured to store the HAD map. The system may also include at least one processor. The at least one processor may be configured to identify a target region including at least one changing object. The at least one processor may be further configured to instruct the plurality of terminals to acquire data of the target region at varying view positions, and receive the acquired data from the plurality of terminals. The at least one processor may also be configured to construct a three-dimensional model for the at least one changing object from the acquired data, and update the HAD map based on the three-dimensional model.

Embodiments of the disclosure further disclose a method for updating a HAD map using a plurality of terminals. The method may include identifying, by at least one processor, a target region including at least one changing object. The method may further include instructing, by the at least one processor, the plurality of terminals to acquire data of the target region at varying view positions, and receiving the acquired data from the plurality of terminals. The method may also include constructing, by the at least one processor, a three-dimensional model for the at least one changing object from the acquired data, and updating, by the at least one processor, the HAD map based on the three-dimensional model.

Embodiments of the disclosure further disclose a non-transitory computer-readable medium having a computer program stored thereon. The computer program, when executed by at least one processor, may perform a method for updating a HAD map using a plurality of terminals. The method may include identifying a target region including at least one changing object. The method may further include instructing the plurality of terminals to acquire data of the target region at varying view positions, and receiving the acquired data from the plurality of terminals. The method may also include constructing a three-dimensional model for the at least one changing object from the acquired data, and updating the HAD map based on the three-dimensional model.

DETAILED DESCRIPTION

FIG. 1illustrates a schematic diagram of an exemplary system100for updating a HAD map, according to embodiments of the disclosure. Consistent with some embodiments, system100may include a server140communicatively connected with a plurality of terminals, including terminals131,132,133, and134. In some embodiments, server140may be a local physical server, a cloud server (as illustrated inFIG. 1), a virtual server, a distributed server, or any other suitable computing device. Consistent with the present disclosure, server140may store a HAD map. In some embodiments, the HAD map may be originally constructed using point cloud data acquired by a LiDAR. LiDAR measures distance to a target by illuminating the target with pulsed laser light and measuring the reflected pulses with a sensor. Differences of the time for laser light sending and returning, and wavelengths can then be used to make digital three-dimensional (3-D) representations of the target. The light used for LiDAR scan may be ultraviolet, visible, or near infrared. Due to the high accuracy and efficiency of objects reconstruction, LiDAR is particularly suitable for spatial data acquisition for constructing HAD.

Consistent with the present disclosure, server140may be also responsible for updating the HAD map from time to time to reflect changes at certain portions of the map. Instead of re-surveying the area with a LiDAR, server140may crowdsource data captured of the changing objects by multiple terminals at varying view positions, and integrate such data to update the HAD map. For example, server140may crowdsource data from terminals131-134. Server140may communicate with terminals131-134via a network, such as a Wireless Local Area Network (WLAN), a Wide Area Network (WAN), wireless networks such as radio waves, a nationwide cellular network, a satellite communication network, and/or a local wireless network (e.g., Bluetooth™ or WiFi). Server140may transmit to or receive data from terminals131-134. It is contemplated that server140may crowdsource from more or less terminals than those illustrated inFIG. 1.

In some embodiments, terminals131-134may be mobile terminals configured to capture images. For example, terminals131-134may be cameras or other cost-effective imaging devices. In some embodiments, terminals131-134may be equipped, mounted, or otherwise attached to a vehicle, such that the terminals may be carried around by the vehicle. The vehicle may be configured to be operated by an operator occupying the vehicle, remotely controlled, and/or autonomous. In some embodiments, some of terminals131-134may be static, such as surveillance cameras installed on a traffic light, a building, a tree, etc.

When terminals131-134are mobile terminals, they may be positioned using a combination of the position information obtained from different sources. For example, a terminal may use the GPS signal and IMU signal provided by the vehicle carrying the terminal, images captured by the terminal, as well as a HAD map provided by server140, to position itself. In some embodiments, a Simultaneous Localization and Mapping (SLAM) method may be performed to position each terminal. GPS/IMU signals and the HAD map may provide additional information to the SLAM algorithm, thus enhancing its positioning accuracy and reliability.

Terminals131-134may acquire images of a road110from different view positions. Based on the acquired images, terminals131-134may detect changes in at least one object within the scene. For example, road110used to be a two-lane road with a lane marking111dividing the two lanes. Recently, road110went under construction and expanded to a three-lane road with lane markings111and112dividing road110. From the acquired images, terminals131-134may detect the changes in road110, e.g., the addition of lane marking112and modified pedestrian crossing line marking113(i.e., the zebra line). The detected changes, along with the captured images may be provided to server140.

Upon learning that changes have occurred, server140may initiate a map updating process. In some embodiments, server140may identify a target region that includes the changing objects. For example, if terminal131reports the change, server140may determine the target region based on the position of terminal131and the changing objects, e.g., markings112and113as detected by terminal131. Server140may then send data acquisition instructions to terminals131-134that are located near the changing objects. In some embodiments, the instructions may specify the target region and instruct terminals131-134to acquire images of the target region. For example, the target region may be the portion of road110illustrated inFIG. 1.

Because terminals131-134are positioned at different angles and/or distances relative to the target area, they may acquire images of a same scene from different view positions. Accordingly, the varying view positions enable terminals131-134to obtain unique information about road110. Such information, when integrated, can help server140reconstruct a 3-D model of road110. Server140may further match the reconstructed 3-D model with the HAD map and update the corresponding portion of the map.

AlthoughFIG. 1illustrates an area of road110as containing exemplary changing objects such as markings112and113, it is contemplated that the disclosed systems and methods may apply to update the HAD map to reflect other changing objects. For example, changing objects may include new or modified traffic signs, construction or demolition of a building on the side of road110, changing landscaping along road110, etc.

FIG. 2illustrates a block diagram of an exemplary system for updating a HAD map, according to embodiments of the disclosure. Consistent with the present disclosure, server140may collect data through terminal131-134and integrate the data from multiple sources to update a HAD map.

In some embodiments, as shown inFIG. 2, server140may include a communication interface202, a processor204, a memory212, and a storage214. In some embodiments, server140may have different modules in a single device, such as a standalone computing device, or separated devices with dedicated functions. In some embodiments, one or more components of server140may be located in a cloud, or may be alternatively in a single location or distributed locations. Components of server140may be in an integrated device, or distributed at different locations but communicate with each other through a network (not shown).

Although omitted byFIG. 2, it is contemplated that each of terminals131-134may also include hardware components similar to those shown in server140, such as a processor230, a communication interface (not shown), a memory (not shown) and a storage (not shown).

Communication interface202may send data to and receive data from terminals131-134or other system or device the terminals are attached to (e.g., a vehicle) via communication cables, a Wireless Local Area Network (WLAN), a Wide Area Network (WAN), wireless networks such as radio waves, a nationwide cellular network, and/or a local wireless network (e.g., Bluetooth™ or WiFi), or other communication methods. In some embodiments, communication interface202can be an integrated services digital network (ISDN) card, cable modem, satellite modem, or a modem to provide a data communication connection. As another example, communication interface202can be a local area network (LAN) card to provide a data communication connection to a compatible LAN. Wireless links can also be implemented by communication interface202. In such an implementation, communication interface202can send and receive electrical, electromagnetic or optical signals that carry digital data streams representing various types of information via a network.

Consistent with some embodiments of the present disclosure, communication interface202may receive images captured by terminals131-134, and provide the received data to storage214for storage or to processor204for processing. Communication interface202may also receive information or signals generated by processor204, and provide them to terminals131-134to coordinate their image acquisitions.

Processor204and processor230may include any appropriate type of general-purpose or special-purpose microprocessor, digital signal processor, or microcontroller. In some embodiments, processor204may be configured as a separate processor module dedicated to updating a HAD map. Processor230may be configured as a separate processor module dedicated to acquiring images for updating the HAD map. Alternatively, processor204and processor230may be configured as a shared processor module for performing other functions unrelated to map updates.

As shown inFIG. 2, processor230may include multiple modules, such as a positioning unit231, an image acquisition unit232, a change detection unit233, and the like. These modules (and any corresponding sub-modules or sub-units) can be hardware units (e.g., portions of an integrated circuit) of processor230designed for use with other components or to execute a part of a program. The program may be stored on a computer-readable medium, and when executed by processor230, it may perform one or more functions. AlthoughFIG. 2shows units231-233all within one processor230, it is contemplated that these units may be distributed among multiple processors located near or remotely with each other.

Positioning unit231may be configured to position terminal131. In some embodiments, positioning unit231may perform a SLAM method to determine the position. However, SLAM method applied to monocular images alone typically cannot provide accurate positioning information, and positioning errors may accumulate. Consistent with the present disclosure, positioning unit231may integrate GPS and IMU data into the SLAM method as guidance. In some embodiments, positioning unit231may further integrate information provided by the existing HAD map, especially when GPS signal is lost or disturbed by blocking objects such as tall buildings. Both GPS/IMU data and the HAD map may provide absolute positioning information that may be used as constraints or a priori information to improve the SLAM method. Therefore, the improved SLAM method positions terminal131more accurately and reliably.

Image acquisition unit232may be configured to capture images of surrounding objects. In some embodiments, image acquisition unit232may include a controller controlling the setting and operation of a monocular camera. For example, image acquisition unit232may control and adjust the focus, aperture, shutter speed, white balance, metering, filters, and other settings of the camera. In some embodiments, image acquisition unit232may control and adjust the orientation and position of the camera so that the camera captures an image at a predetermined view angle and position. In some embodiments, the camera may be set to capture images upon triggers, continuously, or periodically, and each image captured at a time point is called a frame.

Change detection unit233may be configured to detect at least one changing object based on the captured images. Image segmentation and machine learning techniques may be applied for detecting the changing object. In some embodiments, change detection unit233may compare the image with the corresponding information in the existing HAD map to determine the change. For example, change detection unit233may detect that markings112and113on road110have been changed.

Upon detecting a changing object, terminal131may provide the captured images, the detected changing object, and its positioning information to server140. Communication interface202may receive the data and send the data to processor204. As shown inFIG. 2, processor204may include multiple modules, such as a target region identification unit241, an instruction unit242, a crowdsourcing unit243, a model reconstruction unit244, a map updating unit245, and the like. These modules (and any corresponding sub-modules or sub-units) can be hardware units (e.g., portions of an integrated circuit) of processor204designed for use with other components or to execute a part of a program. The program may be stored on a computer-readable medium, and when executed by processor204, it may perform one or more functions. Again, althoughFIG. 2shows units241-245all within one processor204, it is contemplated that these units may be distributed among multiple processors located near or remotely with each other.

Target region identification unit241may identify a target region based on the data provided by terminal131. The target region may include the detected changing object(s). For example, in the example illustrated byFIG. 1, the target region may be the portion of road110that includes the changed markings112and113. Instruction unit242may then determine an instruction for acquiring image of the target region. Instruction unit242may further identify multiple terminals, such as terminals131-134, to send the image acquisition instruction. In identifying the terminals, instruction unit242may consider the terminal's location (e.g., whether within imaging range to the target region), the terminal's view position relative to the target region, etc. In some embodiments, instruction unit242may select terminals that can capture images of the target region from varying view positions.

The image acquisition instructions may be sent to terminals131-134via communication interface202. The respective image acquisition units of terminals131-134may acquire images of the target region according to the instructions, and send images back to server140. The images may be collected and organized by crowdsourcing unit243before passing along to model reconstruction unit244.

Model reconstruction unit244may be configured to reconstruct a 3-D model of the at least one changing object. In some embodiments, model reconstruction unit244may adopt the detection results of the at least one changing object as provided by terminal131. In some other embodiments, model reconstruction unit244may verify the results or re-detect the at least one object itself based on the images provided by terminal131. Similar techniques may perform the similar image segmentation and machine learning techniques to detect and extract the at least one changing object.

Since images are captured by terminals131-134from varying view positions, model reconstruction unit244may extract different views of the object from those images. The extracted objects are two dimensional (2-D). To construct a 3-D model, model reconstruction unit244may combine the different views of the object according to the positions and poses of the respective images from which the different views of the changing object are extracted. In some embodiments, model reconstruction unit244may use a Structure from Motion (SfM) method to reconstruct the position and pose of each image. In some embodiments, model reconstruction unit244may determine that the images available are not sufficient for a good reconstruction. For example, images captured at certain view positions are missing. It may instruct terminals131-134and/or additional terminals (not shown) to acquire more images to supplement.

Map updating unit245may match the 3-D model of the changing object with the existing HAD map, and replace the part in the map corresponding to the object with the 3-D model as matched to the map. In some embodiments, the 3-D model reconstructed by model reconstruction unit244may be a point cloud representing the at least one changing object. Accordingly, map updating unit245may match the point cloud of the changing object with the point cloud of the HAD map. In some embodiments, as part of the matching process, map updating unit245may perform a coordinate transformation on data of the reconstructed 3-D model to the coordinate of the HAD map.

It is contemplated that server140may perform map updates when any change occurs, when a major change occurs, periodically at a predetermined frequency, or any suitable combination of the above.

Memory212and storage214may include any appropriate type of mass storage provided to store any type of information that processor204may need to operate. Memory212and storage214may be a volatile or non-volatile, magnetic, semiconductor, tape, optical, removable, non-removable, or other type of storage device or tangible (i.e., non-transitory) computer-readable medium including, but not limited to, a ROM, a flash memory, a dynamic RAM, and a static RAM. Memory212and/or storage214may be configured to store one or more computer programs that may be executed by processor204to perform map update functions disclosed in this application. For example, memory212and/or storage214may be configured to store program(s) that may be executed by processor204to communicate with terminals131-134for image acquisitions, and update a HAD map using the images.

Memory212and/or storage214may be further configured to store information and data used by processor204. For instance, memory212and/or storage214may be configured to store the HAD map, including its point cloud data, and images captured by terminals131-134, the machine learning models (e.g., the model parameters) and the feature maps, and other intermediate data created during the processing. These data may be stored permanently, removed periodically, or disregarded immediately after each frame of data is processed.

FIG. 3is a flowchart of an exemplary method300performed by a terminal for acquiring data to update a HAD map, according to embodiments of the disclosure. For example, method300may be implemented by processor230of terminal131. Method300may include steps S302-S314as described below.

In step S302, terminal131may be configured to position itself. For example, positioning unit231may be configured to perform a SLAM method to determine the position of terminal131. SLAM algorithm attempts to constructs a map of an unknown environment while simultaneously keeping track of a vehicle or device's location within it. Therefore, SLAM algorithm may accumulate positioning errors when performed without absolute position information as guidance. Consistent with the present disclosure, positioning231may use GPS/IMU data and/or the HAD map to guide and improve the SLAM method. GPS/IMU data and the HAD map may provide absolute positioning information as constraints or a priori information to the SLAM method. The use of HAD map may help ensure positioning accuracy and reliability even when GPS signal is weak or entirely lost.

In step S304, terminal131may be configured to capture scene images. For example, image acquisition unit232may control a monocular camera to capture images of a scene. In some embodiments, image acquisition unit232may control the way in which the images are captured. For example, image acquisition unit232may control and adjust the orientation and position of the camera so that the camera captures an image at a predetermined view angle and position. In some embodiments, images may be captured upon triggers, continuously or periodically.

In step S306, terminal131may detect at least one changing object based on the captured images. For example, change detection unit233may be configured to detect the at least one changing object using image segmentation and machine learning techniques. The at least one changing object may include a traffic sign such as a stop or yield sign, and a highway sign, etc. The at least one changing object may also include road markings such as lane markings, direction/turn markings, and pedestrian crossing line markings. In some embodiments, an image may be compared with the corresponding information in the existing HAD map to determine the change.

For example,FIG. 4illustrates detecting a changing object from an image400, according to embodiments of the disclosure. Change detection unit233may first identify various objects captured by image400, such as traffic signs411-413, a vehicle420, and a road marking430. The objects may be extracted with binding boxes. Change detection unit233may identify moving objects, such as vehicle420, and remove such objects since they should not be included as a part of the map. In some embodiments, the object areas may be compared with the corresponding areas on the HAD map to determine if any object has changed. For example, change detection unit233may determine that traffic sign411is new, or that the texts on traffic sign412have changed. In some embodiments, machine learning methods may be used to recognize the texts and semantic meaning of the texts on the traffic signs.

Returning toFIG. 3, in step S308, upon detecting a changing object, terminal131may report the changing object to server140. In addition, terminal131may also send the captured images from which the change was detected to server140for server140to verify or re-detect. Because server140may have much higher computing power than terminal131, server140may use more accurate but complicated methods to detect the changing objects. Terminal131may also send its positioning information to server140.

In step S310, terminal131may receive an instruction from server140to acquire image data of a target region. In some embodiments, the instruction may further include the view position at which server140would like terminal131to capture the images. In step S312, terminal131may capture the images of the target region at the view position, as instructed. For example, image acquisition unit232may adjust the monocular camera to the view position. In step S314, the captured image data may be transferred back to server140.

In S316, terminal131may receive another instruction from server140to acquire supplemental data of the target region. In some embodiments, the supplemental data may be acquired from the same view position as before, or from a different view position. If an instruction for supplemental data is received in S316, method300may return to step S310to acquire the supplemental data. Otherwise, method300may return to step S302to continue capturing images and detecting changes.

FIG. 5is a flowchart of an exemplary method500for updating a HAD map, according to embodiments of the disclosure. For example, method500may be implemented by processor204of server140. Method500may include steps S502-S518as described below.

In step S502, server140may receive a report from one or more terminals such that at least one changing object has been detected. In some embodiments, server140may also receive the images captured by the terminal(s). In the optional step S504, server140may verify or re-detect the at least one changing object based on the images. Because server140may have higher computing power than the terminals, its detection may be more accurate. For example, server140may receive images from multiple terminals that all capture the same object, and thus have more data to detect the changing object.

In step S506, server140may identify a target region based on the data provided by the terminal(s). For example, target region identification unit241may determine a target region that includes the detected changing object(s).

In step S508, sever140may instruct terminals to acquire image data of the target region at varying view positions. For example, instruction unit242may identify multiple terminals, such as terminals131-134, that should be instructed to acquire the images. The identification may be based on the terminal's location (e.g., whether within imaging range to the target region), the terminal's view position relative to the target region, etc. In some embodiments, instruction unit242may select terminals that can capture images of the target region from varying view positions.

In step S510, as terminals131-134send acquired images back to server140, crowdsourcing unit243may receive the images and organize them in a certain order before passing along for model reconstruction. For example, crowdsourcing unit243may organize the images according to view positions, resolutions, and coverages of the changing object(s), etc.

In step S512, server140may reconstruct a 3-D model of the at least one changing object. In some embodiments, the 3-D model reconstructed in step S512may be a point cloud representing the at least one changing object. In some embodiments, model reconstruction unit244may extract different views of the object from the images captured from varying view positions. To construct a 3-D model, model reconstruction unit may combine the extracted 2-D object images according to the positions and poses of the respective images from which the 2-D object images are extracted.

In some embodiments, model reconstruction unit244may use a SfM method to reconstruct the position and pose of each image. For example,FIG. 6is a flowchart of an exemplary method512for 3D reconstruction of a changing object using a SfM method, according to embodiments of the disclosure. For example, method512may be implemented by processor204of server140. Method512may include steps S602-S618as described below.

Steps S602-S608are performed to compute the correspondences among the captured images. In step S602, server140may detect features in each image captured by the terminals. In some embodiments, image features detected may be semantic, such as pixel intensity, contrast, gradient, patches, or non-semantic, which is a piece of information related to the image. In step S604, key points may be matched between each pair of images. In some embodiments, key points matching may be performed by machine learning methods based on the features detected in step S602. In step S606, an F-matrix may be estimated for each pair of images to refine the matches of step S604. In step S608, the matched points in each pair is organized and stacked into tracks.

Steps S610-S616are part of the SfM method to reconstruct the 3-D model. In step S610, server140may select a pair of initial images to seed the reconstruction. In some embodiments, the pair of initial images may have best coverage of the changing object. Server140may consider various factors in selecting the pair of initial images, such as image quality, resolution, view positions at which the images are captured, overall level of correspondence between the images, etc. In step S612, additional images may be added to refine the reconstruction. For example, pairs of images as determined in S602-S608may be added. Additional images provide additional information from varying view points and thus may improve the 3-D model reconstruction. In step S614, bundle adjustment may be performed to make the entire 3-D model more realistic. In S616, server140may determine if more images are available from the tracks to be added to the reconstruction. If so, method512may return to step S612to continue reconstructing. Otherwise, method512may provide the reconstructed 3-D model in Step S618.

Returning toFIG. 5, in step S514, server140may determine, based on the 3-D model, construction result whether supplemental data of the target region is needed. If so, model reconstruction unit244may determine view positions at which supplemental images should be captured by the terminals. For example, if received images are captured from 0-180 degrees view angles but nothing is from 180-360 degrees view angles, model reconstruction unit244may request supplemental data captured at 180-360 degrees view angles. If supplemental data is needed, Method500may return to step S508where instruction unit242may instruct the terminals to acquire more images at the desired view positions.

In step S516, server140may match the 3-D model of the changing object with the existing HAD map. In some embodiments, map updating unit245may match the point cloud of the changing object with the point cloud of the HAD map. In some embodiments, map updating unit245may transform data of the reconstructed 3-D model from its original coordinate to the coordinate of the HAD map. A coordinate transformation essentially maps data from one coordinate system to another coordinate system by rotation and translation transformations.

In some embodiments, step S516may contain two sub-steps. First, the point cloud of the reconstructed 3-D model may be mapped to the coordinate system of the HAD map, based on the positioning information provided by the terminals. Second, map updating unit245may construct a cost function using the corresponding points from the point cloud of the 3-D model and the point cloud of the HAD map. For example, an exemplary cost function ƒ may be constructed as Eq. 1:

f⁡(R,T)=1Np⁢∑i=1Np⁢⁢pti-R·psi-T2Eq.⁢1
where psand ptare a pair of corresponding points from the point cloud of the 3-D model and the point cloud of the HAD map, and Npis the total number of pairs of points. R and T are rotation matrix and translation matrix, respectively. In some embodiments, optimal R and T matrices may be obtained by minimizing the cost function ƒ. For example, the optimization may be solved using an Iterative Closest Points (ICP) method or its variations.

In step S518, server140may update the HAD map. In some embodiments, map updating unit245may replace the part in the map that is corresponding to the object with the 3-D model transformed into the map coordinate system. For example, map updating unit245may use the optimized R and T matrices for the coordinate transformation. Alternatively, map updating unit245may modify the corresponding map based on the 3-D model.

It will be apparent to those skilled in the art that various modifications and variations can be made to the disclosed system and related methods. Other embodiments will be apparent to those skilled in the art from consideration of the specification and practice of the disclosed system and related methods.

It is intended that the specification and examples be considered as exemplary only, with a true scope being indicated by the following claims and their equivalents.