Map creation device, control method, program, and storage medium

The map creation device addresses occlusion issues by assigning weighting values based on travel path and object presence, enhancing map data accuracy and reliability.

JP2026095528APending Publication Date: 2026-06-11PIONEER IP

Patent Information

Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
PIONEER IP
Filing Date
2026-03-30
Publication Date
2026-06-11

Smart Images

  • Figure 2026095528000001_ABST
    Figure 2026095528000001_ABST
Patent Text Reader

Abstract

The present invention provides a map-making device capable of creating maps while appropriately considering the possibility of occlusion occurring. [Solution] The server device 200 is a map creation device that assigns a first weighting value related to the presence of stationary and moving objects to each voxel in the voxel data of the map DB 20, which is divided into multiple voxels. The server device 200 then acquires upload information Iu, which includes position information regarding the travel route of the measurement vehicle when measuring point cloud data necessary for generating or updating voxel data. The server device 200 then determines the first weighting value for each voxel based on the travel route of the measurement vehicle identified based on the upload information Iu.
Need to check novelty before this filing date? Find Prior Art

Description

[Technical Field]

[0001] This invention relates to a technique for generating maps. [Background technology]

[0002] Conventionally, there is a known technology for updating map data based on the output of sensors installed in vehicles. For example, Patent Document 1 discloses a system in which, when each vehicle detects a change point in the map data using its sensors, it transmits data about that change point to a map management server to update the map data, and in this system, the map data is updated taking into account the reliability of the sensor used to detect the change point. [Prior art documents] [Patent Documents]

[0003] [Patent Document 1] Japanese Patent Publication No. 2016-156973 [Overview of the project] [Problems that the invention aims to solve]

[0004] When measuring the area around a road using a measurement vehicle for map generation, stationary structures that should be measured may be obscured by moving objects such as pedestrians or other vehicles, resulting in occlusion and inaccurate measurement. Patent Document 1 does not address such cases of occlusion.

[0005] The present invention was made to solve the above-mentioned problems, and its main objective is to provide a mapmaking device that can create maps while suitably taking into account the possibility of occlusion occurring. [Means for solving the problem]

[0006] The invention described in claim 1 is, In a map creation device that assigns weighting values ​​related to the presence of stationary and moving objects to map data divided into multiple regions, An acquisition unit that acquires the driving route when measuring the data necessary for generating or updating the aforementioned map data, A determination unit that determines the weighting values ​​for each of the plurality of regions based on the aforementioned travel path, Equipped with, The determination unit is a map creation device that, when the lane on the driving route is on the left side, increases the weighting value of the area to the left of that lane, and when the lane on the driving route is on the right side, increases the weighting value of the area to the right of that lane.

[0007] The invention described in claim 6 is, A map data structure used in a computer comprising a control unit and a storage unit, Location information of geographic features, which indicates the location of geographic features measured by a measuring device, Measurement position information indicating the position of the measuring device when the aforementioned geological feature was measured, Includes, When the control unit stores the feature location information in the storage unit as information for each region into which space has been divided according to a predetermined rule, a process is used to weight each of the regions based on the positional relationship between the location of the region based on the feature location information and the measurement location information. This is a map data structure.

[0008] The invention described in claim 7 is, A control method performed by a map creation device that assigns weighting values ​​related to the presence of stationary and moving objects to map data divided into multiple regions, for each of the multiple regions, An acquisition step to acquire the driving route when measuring the data necessary for generating or updating the aforementioned map data, A determination step in which the weighting values ​​for each of the multiple regions are determined based on the aforementioned travel path, It has, In the determination step, when the lane on the travel route is a lane on the left side, the weighting value of the area existing on the left side of the lane is increased, and when the lane on the travel route is a lane on the right side, the weighting value of the area existing on the right side of the lane is increased. The invention according to claim 8 is A control method executed by a map creation device that assigns a weighting value related to the presence of stationary objects and moving objects to each of the plurality of regions in map data divided into a plurality of regions, comprising: An acquisition step of acquiring a travel route when measuring data necessary for generating or updating the map data; A determination step of determining the weighting value for each of the plurality of regions based on the travel route; and In the determination step, in a section determined to travel while avoiding an obstacle on the travel route, the weighting value of the area existing on the side opposite to the avoided direction is decreased.

[0009] The invention according to claim 9 is A program executed by a computer of a map creation device that assigns a weighting value related to the presence of stationary objects and moving objects to each of the plurality of regions in map data divided into a plurality of regions, comprising: An acquisition unit that acquires a travel route when measuring data necessary for generating or updating the map data; A determination unit that determines the weighting value for each of the plurality of regions based on the travel route causing the computer to function as, In the determination unit, when the lane on the travel route is a lane on the left side, the weighting value of the area existing on the left side of the lane is increased, and when the lane on the travel route is a lane on the right side, the weighting value of the area existing on the right side of the lane is increased. The invention according to claim 10 is A program executed by a computer of a map creation device that assigns a weighting value related to the presence of stationary objects and moving objects to each of the plurality of regions in map data divided into a plurality of regions, comprising: An acquisition unit that acquires the driving route when measuring the data necessary for generating or updating the aforementioned map data, A determination unit that determines the weighting values ​​for each of the plurality of regions based on the aforementioned travel path. The computer is made to function as follows: The determination unit is a program that, in sections of the travel path where it is determined that the vehicle has avoided an obstacle, reduces the weighting value of the region located on the opposite side of the direction in which the obstacle was avoided. [Brief explanation of the drawing]

[0010] [Figure 1] This is a schematic configuration of the map generation system. [Figure 2] This shows the block configuration of the in-vehicle equipment and server device. [Figure 3] An example of a general data structure for voxel data is shown. [Figure 4] This is a schematic overhead view showing the surrounding conditions of a measurement vehicle traveling on a two-lane road. [Figure 5] This is a schematic overview of the surrounding conditions of a measurement vehicle traveling through a section of road where parked vehicles are present. [Figure 6] This is a schematic overhead view showing the surrounding conditions of a measurement vehicle when a three-dimensional median strip suitable for measurement by a RIDA is present. [Figure 7] This diagram shows an example of the positional relationship between a measurement vehicle equipped with a lidar and an object located within the measurement range to the left of the vehicle. [Figure 8] This diagram illustrates a specific example of NDT scan matching. [Figure 9] This diagram illustrates a specific example of weighted NDT scan matching. [Modes for carrying out the invention]

[0011] According to a preferred embodiment of the present invention, a map creation device is a map creation device that assigns weighting values ​​related to the presence of stationary and moving objects to map data divided into a plurality of regions, for each of the plurality of regions, and comprises: an acquisition unit that acquires a travel route when measuring data necessary for generating or updating the map data; and a determination unit that determines the weighting values ​​for each of the plurality of regions based on the travel route. In this embodiment, the map creation device can suitably determine weighting values ​​related to the presence of stationary and moving objects for each region and assign them to the map data.

[0012] In one embodiment of the map creation device described above, the determination unit determines the weighting value for each of the plurality of regions based on the position of the lanes on the driving route. In a preferred example, the determination unit increases the weighting value for the region to the left of the lane when the lane on the driving route is located on the left side, and increases the weighting value for the region to the right of the lane when the lane on the driving route is located on the right side. In this embodiment, the map creation device can increase the weighting value for regions where the possibility of occlusion by vehicles traveling in other lanes on the same road is low, and decrease the weighting value for regions where the possibility of occlusion by vehicles traveling in other lanes on the same road is high.

[0013] In another embodiment of the map creation device described above, the determination unit reduces the weighting value of the area located on the opposite side of the avoidance direction in sections of the travel path where it is determined that the vehicle has avoided an obstacle. In sections of the travel path where it is determined that the vehicle has avoided an obstacle, there is a high probability that occlusion caused by the obstacle will occur in the opposite direction of the avoidance. Therefore, in this embodiment, the presence of such obstacles can be accurately considered when determining the weighting value.

[0014] In another embodiment of the map creation device described above, the determination unit determines the weighting value for each of the multiple regions based on the height of each of the multiple regions. The possibility of occlusion due to moving objects, etc., tends to be lower in regions with higher altitudes at the same latitude and longitude. Therefore, in this embodiment, the map creation device can accurately determine the weighting value for each region.

[0015] In another embodiment of the map creation device described above, the determination unit adds accuracy information to the map data for the measured area, indicating the accuracy of the measurement data within that area. This embodiment allows for the appropriate addition of information regarding the reliability of the map data to the map data. In a preferred example, the determination unit may determine the accuracy information based on the position estimation accuracy at the time of measurement and the distance from the measurement position to the area to be measured.

[0016] According to another preferred embodiment of the present invention, a map data structure for displaying a map includes, for each region obtained by dividing space according to a predetermined rule, at least one of weighting values ​​related to the presence of stationary and moving objects, or accuracy information indicating the accuracy of the data within that region. A map having the above map data structure includes at least one of the weighting values ​​or accuracy information, and a device referencing the map can suitably use this information as data reliability information when updating or using the map.

[0017] According to another preferred embodiment of the present invention, a control method executed by a map creation device that assigns weighting values ​​related to the presence of stationary and moving objects to map data divided into a plurality of regions, the control method comprising: an acquisition step of acquiring a travel route when measuring data necessary for generating or updating the map data; and a determination step of determining the weighting values ​​for each of the plurality of regions based on the travel route. By executing this control method, the map creation device can suitably determine weighting values ​​related to the presence of stationary and moving objects for each region and assign them to the map data.

[0018] According to another preferred embodiment of the present invention, a program executed by a computer of a map creation device that assigns weighting values ​​related to the presence of stationary and moving objects to map data divided into multiple regions, wherein the computer functions as an acquisition unit that acquires a travel route when measuring data necessary for generating or updating the map data, and a determination unit that determines the weighting values ​​for each of the multiple regions based on the travel route. By executing this program, the computer can suitably determine the weighting values ​​related to the presence of stationary and moving objects for each region and assign them to the map data. Preferably, the program is stored in a storage medium. [Examples]

[0019] Hereinafter, preferred embodiments of the present invention will be described with reference to the drawings.

[0020] [System Overview] Figure 1 is a schematic diagram of the map generation system according to this embodiment. The map generation system shown in Figure 1 is a system for generating location information of features around roads necessary for autonomous driving, etc., and mainly consists of a measurement unit 100 mounted on a measurement vehicle and a server device 200.

[0021] The measurement unit 100 is a system that generates high-precision 3D point cloud data and mainly comprises an in-vehicle unit 1, a Lidar (Light Detection and Ranging, or Laser Illuminated Detection and Ranging) 2, an RTK-GPS 3, and an IMU (Inertial Measurement Unit) 4.

[0022] LIDA 2 discretely measures the distance to an object in the external environment by emitting pulsed lasers within a predetermined angular range in the horizontal and vertical directions, and generates three-dimensional point cloud information indicating the position of the object. In this case, LIDA 2 has an irradiation unit that irradiates laser light while changing the irradiation direction, a light receiving unit that receives reflected light (scattered light) of the irradiated laser light, and an output unit that outputs scan data based on the received signal output by the light receiving unit. The scan data is generated based on the irradiation direction corresponding to the laser light received by the light receiving unit and the response delay time of the laser light, which is determined based on the received signal mentioned above. Generally, the accuracy of the LIDA's distance measurement is higher the closer the distance to the object, and lower the accuracy the further the distance.

[0023] The RTK-GPS3 generates highly accurate positional information indicating the absolute position of the measurement vehicle (e.g., a three-dimensional position of latitude, longitude, and altitude) based on the RTK positioning method (i.e., interferometric positioning). The RTK-GPS3 outputs the generated positional information and information regarding the accuracy of said positional information (also called "positional accuracy information") to the on-board unit 1. The IMU (Inertial Measurement Unit) 4 outputs the acceleration and angular velocity (or angle) of the measurement vehicle in three axes to the on-board unit 1.

[0024] The on-board unit 1 determines the absolute position and orientation of the measurement vehicle based on the output supplied from the RTK-GPS3, and calculates the absolute 3D position information for each point in the point cloud detected by the lidar 2 from the relative 3D position information that depends on the position and orientation of the measurement vehicle. The absolute position and orientation of the measurement vehicle may be determined based on the output of the IMU4 in addition to the output from the RTK-GPS3. The on-board unit 1 then supplies the calculated 3D point cloud data, along with the position information and position accuracy information of the measurement vehicle at the time of measurement output by the RTK-GPS3, to the server device 200 as upload information "Iu". In this case, the on-board unit 1 may immediately transmit the upload information Iu to the server device 200 via wireless communication, or the server device 200 may store it in a storage medium that can be read later.

[0025] The server device 200 stores the upload information Iu acquired from the in-vehicle unit 1 and updates the map DB (DB: Database) 20 based on the stored upload information Iu. Here, the map DB 20 contains voxel data, which is data that records the position information of stationary structures for each region (also called a "voxel") when the three-dimensional space is divided into multiple regions. The voxel data includes data that represents the measured point cloud data of stationary structures within each voxel using a normal distribution, and is used for scan matching using NDT (Normal Distributions Transform), as described later. As described later, the server device 200 updates (including generation) the voxel data corresponding to the voxels within the measurement range of the measurement vehicle based on the upload information Iu. The server device 200 is an example of a "map creation device" in the present invention, and the voxel data is an example of "map data" in the present invention.

[0026] Figure 2(A) is a block diagram showing the functional configuration of the in-vehicle unit 1. The in-vehicle unit 1 mainly consists of an interface 11, a storage unit 12, an input unit 14, a control unit 15, and an information output unit 16. Each of these elements is interconnected via a bus line.

[0027] Interface 11 acquires output data from sensors such as LiDAR 2, RTK-GPS 3, and IMU 4, and supplies it to the control unit 15. The memory unit 12 stores programs executed by the control unit 15 and information necessary for the control unit 15 to perform predetermined processing. The input unit 14 includes buttons, a touch panel, a remote controller, an audio input device, etc., for user operation. The information output unit 16 includes, for example, a display or speaker that outputs based on the control of the control unit 15. The control unit 15 includes a CPU that executes programs and controls the entire in-vehicle unit 1.

[0028] Figure 2(B) is a block diagram showing the functional configuration of the server device 200. The server device 200 includes an interface 21, a storage unit 22, and a control unit 25.

[0029] Interface 21 acquires the upload information Iu generated by the in-vehicle device 1 based on the control of the control unit 25. Interface 21 may be a wireless interface for wireless communication with the in-vehicle device 1, or it may be a hardware interface for reading the upload information Iu from a storage medium or the like that stores the upload information Iu.

[0030] The storage unit 22 stores a program for the control unit 25 to execute a predetermined process and information necessary for the control unit 25's processing. In this embodiment, the storage unit 22 stores the upload information Iu acquired by the interface 21 based on the control of the control unit 25. The storage unit 22 also stores a map DB 20 containing voxel data that is updated by the upload information Iu. In addition to voxel data, the map DB 20 also includes road data necessary to identify the driving lane of the measurement vehicle based on its location information.

[0031] The control unit 25 executes programs stored in the memory unit 22 and other units, and controls the entire server device 200. In this embodiment, the control unit 25 acquires upload information Iu via the interface 21 and stores it in the memory unit 22. Subsequently, the control unit 25 updates the voxel data of the map DB 20 based on the upload information Iu stored in the memory unit 22. The control unit 25 is an example of the "acquisition unit," "determination unit," and "computer" that executes programs in this invention.

[0032] [Data structure of voxel data] Next, we will describe the voxel data used in scan matching based on NDT. Figure 3 shows an example of a schematic data structure for voxel data.

[0033] The voxel data includes parameter information for representing the point cloud within a voxel using a normal distribution. In this embodiment, as shown in Figure 3, it includes voxel ID, voxel coordinates, mean vector, covariance matrix, and confidence information. Here, "voxel coordinates" represent the absolute three-dimensional coordinates of a reference position, such as the center position of each voxel. Each voxel is a cube that divides space into a grid, and its shape and size are predetermined, so the space of each voxel can be identified by its voxel coordinates. The voxel coordinates may also be used as the voxel ID.

[0034] The "mean vector" and "covariance matrix" represent the mean vector and covariance matrix, which correspond to the parameters when representing the point cloud within the target voxel using a normal distribution, and the coordinates of any point "i" within any voxel "k" are

[0035]

number

[0036]

number

[0037]

number

[0038] The "reliability information" includes a first weighting value, which is a weighting value based on the possibility of occlusion (obstruction by obstacles), and a second weighting value, which is a weighting value based on the accuracy of the voxel data (particularly the mean vector and covariance matrix) of the target voxel. The second weighting value is set based on the positional accuracy of the measurement vehicle during measurement and the measurement accuracy of Lider 2, as will be described later. In this embodiment, the first weighting value is set to a larger value for voxels that are less likely to be occluded, and the second weighting value is set to a larger value for voxels with higher data accuracy. The specific method for setting the first and second weighting values ​​will be described later. The first weighting value is an example of the "weighting value" in the present invention. The second weighting value is an example of the "accuracy information" in the present invention. Furthermore, the data structure of the voxel data shown in Figure 3 is an example of the "map data structure" in the present invention.

[0039] [Voxel data update] Next, we will explain the process of updating the voxel data of map DB20 based on the uploaded information Iu.

[0040] The server device 200 divides the point cloud data contained in the uploaded information Iu supplied from the in-vehicle unit 1 into voxels and generates NDT data (i.e., mean vector, covariance matrix, etc.) for each voxel. Furthermore, in this embodiment, the server device 200 determines, for each voxel, a first weighting value and a second weighting value to be registered in the map DB 20, along with the NDT data. The methods for determining the first weighting value and the second weighting value will be described below.

[0041] (1) Method for determining the first weight value The server device 200 identifies the vehicle's travel path based on the vehicle's location information included in the uploaded information Iu, and sets a first weighting value according to the identified travel path. Hereafter, the leftmost lane will simply be referred to as the "left lane," and the rightmost lane as the "right lane."

[0042] Figure 4 is a schematic overhead view showing the surrounding conditions of a measurement vehicle traveling on a two-lane road 50. In the example in Figure 4, the measurement vehicle is traveling in the left lane of road 50, following the arrow "Lt". Also, structures 40 and 41 are located to the left (shoulder) of road 50, and the opposite lane, road 51, is located to the right of road 50.

[0043] As shown in Figure 4, when the measurement vehicle is traveling on a road with multiple lanes, it will, in principle, travel in the left lane. This allows the rider 2 to measure features (features 40 and 41 in Figure 4) along the road being traveled (road 50 in Figure 4) without causing occlusion by other vehicles traveling on road 50.

[0044] During the period when the measurement vehicle travels along the arrow Lt, the in-vehicle device 1 generates upload information Iu, which includes position information indicating the vehicle's position on the left lane of road 50 and point cloud data of features 40, 41, etc., measured by the lidar 2. When the server device 200 obtains the upload information Iu generated by the in-vehicle device 1, it identifies the travel route of the measurement vehicle indicated by the arrow Lt based on the position information contained in the upload information Iu and the road data contained in the map DB 20. The server device 200 then determines that the point cloud data included in the upload information Iu, along with the position information used to identify the travel route, is data measured while the vehicle was traveling in the left lane.

[0045] Therefore, in this case, the server device 200 identifies voxels located to the left of the movement trajectory indicated by the location information of the uploaded information Iu (i.e., the left lane), and determines that the identified voxels are likely to contain point cloud data of static structures that are not occluded. Therefore, in this case, the server device 200 sets the first weighting value corresponding to the left voxels (e.g., voxels overlapping with features 40 and 41) to a relatively large value (e.g., a value larger than the initial value). On the other hand, the server device 200 determines that voxels located to the right of the movement trajectory indicated by the location information of the uploaded information Iu are likely to be occluded due to the presence of other vehicles traveling on the road 50, etc. Therefore, in this case, the server device 200 sets the first weighting value corresponding to the right voxels to a relatively small value (e.g., a value smaller than the initial value).

[0046] Furthermore, even if the server device 200 determines that the measurement vehicle is traveling in the left lane, if it detects an action to avoid an obstacle such as a parked vehicle on the left shoulder of the road, it may reduce the first weighting value of the voxel that constitutes the left measurement range of the rider 2 when the action is performed.

[0047] Figure 5 is a schematic overhead view showing the surrounding conditions of a measurement vehicle traveling along a section of road 50 where a parked vehicle is present. In the example in Figure 5, the measurement vehicle is traveling along road 50 along arrow "Lt1". As indicated by arrow Lt1, the measurement vehicle detects a parked vehicle while traveling in the left lane of road 50 and temporarily shifts to the right lane to avoid the parked vehicle.

[0048] In this case, the in-vehicle unit 1 generates upload information Iu, which includes location information indicating the position on the road 50 and point cloud data of features 43, etc., from the lidar 2, during the period when the measurement vehicle travels along the arrow Lt1. When the server device 200 obtains the upload information Iu generated by the in-vehicle unit 1, it identifies the travel route of the measurement vehicle indicated by the arrow Lt1 based on the location information contained in the upload information Iu and the road data contained in the map DB 20.

[0049] In this case, the server device 200 recognizes the action of the measurement vehicle, which temporarily shifts its driving position towards the right lane while driving in the left lane, as an action to avoid an obstacle. Then, in the driving section where the server device 200 recognizes that an obstacle avoidance action has occurred (see arrow 60), even if the driving path is in the left lane, it sets the first weighting value for voxels located to the left of the movement trajectory indicated by the position information of the uploaded information Iu to a relatively small value (for example, a value smaller than the initial value). In the example of Figure 5, even if the feature 43 is within the measurement range of the lidar 2 when driving in the section indicated by arrow 60, there is a high possibility of occlusion occurring due to parked vehicles on the road, so the reliability of the point cloud data representing the feature 43 acquired in the section indicated by arrow 60 is estimated to be relatively low. Therefore, in the example of Figure 5, the server device 200 reduces the first weighting value for voxels to the left of the measurement vehicle (including voxels overlapping with the feature 43) in the section indicated by arrow 60. Thus, as shown in the example in Figure 5, the first weighting value of voxels measured in intervals where occlusion may occur can be accurately set.

[0050] The measurement vehicle is not limited to traveling in the left lane when traveling on a multi-lane road; it may also travel in the right lane if there are features such as a median strip suitable for measurement by Lidar 2 on the right lane side. In this case, the server device 200 sets the first weighting value of the right voxel of the measurement vehicle to be greater than the first weighting value of the left voxel of the measurement vehicle.

[0051] Figure 6 is a schematic overhead view showing the surrounding conditions of a measurement vehicle when a three-dimensional median strip 45 suitable for measurement by the lidar 2 exists between road 52 and road 53. In the example in Figure 6, the measurement vehicle is traveling in the right lane along the arrow "Lt2" in order to measure the median strip 45 with the lidar 2. Also, there is a geographical feature 44 on the left side (shoulder side) of road 52.

[0052] In this case, the in-vehicle unit 1 generates upload information Iu, which includes position information indicating the vehicle's position on the right lane of road 52 and point cloud data measured by the lidar 2, during the period when the measurement vehicle travels along arrow Lt2. When the server device 200 receives the upload information Iu generated by the in-vehicle unit 1, it identifies the travel route of the measurement vehicle indicated by arrow Lt2 based on the position information contained in the upload information Iu and the road data contained in the map DB 20. Based on the identified travel route, the server device 200 determines that the point cloud data contained in the upload information Iu was measured while the vehicle was traveling on the right lane of road 52.

[0053] Therefore, in this case, the server device 200 identifies voxels located to the right of the movement trajectory indicated by the location information of the uploaded information Iu, and determines that the identified voxels are highly likely to contain point cloud data of static structures that are not occluded. Therefore, in this case, the server device 200 sets the first weighting value corresponding to the voxels to the right of the measurement vehicle, including the voxels that overlap with the median strip 45, to a relatively large value. On the other hand, the server device 200 determines that voxels located to the left of the movement trajectory indicated by the location information of the uploaded information Iu are highly likely to be occluded by vehicles traveling in the left lane, etc. Therefore, in this case, the server device 200 sets the first weighting value corresponding to the voxels to the left of the measurement vehicle, including the voxels that overlap with the feature 44, to a relatively small value.

[0054] In Figures 4 to 6, an example is shown of a road with left-hand traffic, but it is not limited to this, and the same first weighting values ​​can be set for roads with right-hand traffic. Even in this case, the server device 200 sets the first weighting value of the right voxel to be greater than the first weighting value of the left voxel for voxels being measured while driving in the right lane, and sets the first weighting value of the left voxel to be greater than the first weighting value of the right voxel for voxels being measured while driving in the left lane.

[0055] Furthermore, the server device 200 may set a first weighting value based on the height (i.e., altitude) at which each voxel is located, in addition to the travel path of the measurement vehicle.

[0056] Figure 7 shows an example of the positional relationship between a measurement vehicle equipped with a lidar and objects located within the measurement range to the left of the vehicle. In the example in Figure 7, a low-rise building 26, which is a stationary structure, is located to the left of the road the vehicle is traveling on, and a high-rise building 27 is located behind the low-rise building 26. In addition, a pedestrian 28 riding a motorcycle is located in front of the low-rise building 26. Here, the measurement vehicle is assumed to acquire point cloud data representing the position within frames 30-32 using the lidar 2.

[0057] In this case, the portion of the low-rise building 26 enclosed by frame 30 is located at a relatively low position, making it prone to occlusion by moving objects such as pedestrians 28. The portion of the low-rise building 26 enclosed by frame 31 is located slightly higher than the measuring vehicle, but still has the potential for occlusion by taller vehicles such as trucks. On the other hand, the portion of the high-rise building 27 enclosed by frame 32 is located at a relatively high position, making it less prone to occlusion by moving objects such as pedestrians 28 and other vehicles.

[0058] Therefore, in this case, preferably, the first weighting value of the voxel data at a position overlapping with frame 30 is set to a small value, the first weighting value of the voxel data at a position overlapping with frame 31 is set to a medium value, and the first weighting value of the voxel data at a position overlapping with frame 32 is set to a large value. In this way, the server device 200 may set different first weighting values ​​for each voxel depending on the height at which each voxel is located, for voxels that are on the same side with respect to the lane in which the measurement vehicle is traveling. This allows the server device 200 to set first weighting values ​​for each voxel that accurately reflect the possibility of occlusion.

[0059] (2) Method for determining the second weight value The second weighting value is set based on the positional accuracy of the measurement vehicle during measurement and the measurement accuracy of Rider 2. Here, the uploaded information Iu includes point cloud data used to generate voxel data, as well as positional information and positional accuracy information based on RTK-GPS3. The server device 200 calculates the positional accuracy used to calculate the second weighting value of each voxel based on the positional accuracy information contained in the uploaded information Iu.

[0060] Furthermore, generally speaking, the closer the distance to the object, the higher the accuracy of the distance measurement by the lidar 2, and the farther the distance, the lower the accuracy. Therefore, the server device 200 calculates the measurement accuracy of the lidar 2 based, for example, on the distance between the position indicated by the position information of the measurement vehicle included in the uploaded information Iu and the position indicated by the voxel coordinates of each voxel.

[0061] The server device 200 then calculates the accuracy of each voxel from, for example, the square root of the sum of the squares of the position accuracy of the measurement vehicle and the measurement accuracy of the rider 2, and sets the reciprocal of the square of that accuracy as the second weighting value.

[0062] Here, we will explain the relationship between the measurement accuracy and measurement distance of the Rider 2, again referring to Figure 7.

[0063] In Figure 7, the portion of the low-rise building 26 enclosed by frame 30 is located closer to the measurement vehicle than the portion of the low-rise building 26 enclosed by frame 31 and the portion of the high-rise building 27 enclosed by frame 32. Therefore, the second weighting value of the voxel data at the location overlapping with frame 30 is set to a larger value (i.e., a value indicating higher accuracy) than the second weighting value of the voxel data at the location overlapping with frame 31 or frame 32. On the other hand, the portion of the high-rise building 27 enclosed by frame 32 is located relatively far from the measurement vehicle, so the accuracy of the measurement data acquired by lidar 2 is expected to be lower. Therefore, the second weighting value of the voxel data at the location overlapping with frame 32 is set to a smaller value (i.e., a value indicating lower accuracy) than the second weighting value of the voxel data at the location overlapping with frame 30 or frame 31. Then, the second weighting value for the voxel data at positions overlapping with frame 31 is set to be smaller than the second weighting value for the voxel data at positions overlapping with frame 30, and larger than the second weighting value for the voxel data at positions overlapping with frame 32.

[0064] Next, we will provide a supplementary explanation of a specific method for updating voxels for which the first weighting value, second weighting value, mean vector, covariance matrix, etc., have been determined based on the uploaded information Iu, when voxel data already exists that is recorded in the map DB20.

[0065] In the first example, the server device 200 compares the first weighting value of the voxel data already recorded in the map DB 20 with the first weighting value of the newly generated voxel data, and determines that the voxel data with the larger first weighting value should be newly registered in the map DB 20.

[0066] In the second example, the server device 200 determines which voxel data should be newly registered in the map DB 20 by averaging the voxel data already recorded in the map DB 20 and the newly generated voxel data based on a first weighting value. In this case, the server device 200 calculates which mean vector and covariance matrix to be registered in the map DB 20 by averaging the mean vector and covariance matrix of the voxel data recorded in the map DB 20 and the mean vector and covariance matrix of the newly generated voxel data based on their respective first weighting values. The first weighting value, second weighting value, etc. to be registered in the map DB 20 are, for example, determined by the average of the respective first weighting value and second weighting value.

[0067] In the third example, the server device 200 further considers a second weighting value in addition to the first weighting value to determine the voxel data to be registered in the map DB 20, similar to the first or second example. In this case, for example, the server device 200 calculates a predetermined index value based on an expression or table or case distinction that uses the first weighting value and the second weighting value as parameters, and by comparing these index values, determines the voxel data to be registered in the map DB 20, similar to the first example. In other examples, the server device 200 calculates the voxel data to be registered in the map DB 20, similar to the second example, by weighting the voxel data already recorded in the map DB 20 and the newly generated voxel data based on the index value described above.

[0068] [Example of scan matching using voxel data] Next, we will explain scan matching using NDT with voxel data containing confidence information. Here, we will describe an example in which a vehicle equipped with positioning devices such as a gyro sensor and GPS receiver, and a lid (also simply called a "general vehicle"), refers to map data distributed from the server device 200 to estimate its own position.

[0069] NDT-based scan matching assuming a vehicle estimates the following estimation parameter "P" with elements of the amount of movement in the road plane (here, xy coordinates) and the orientation of the vehicle.

[0070]

Number

[0071] Using the above estimation parameter P, the coordinates [x k (i), y k (i), z k (i)] T of an arbitrary point in the point cloud data obtained by the lidar 2 are coordinate-transformed, and the transformed coordinate "x' k (i)" is expressed by the following equation (3).

[0072]

Number

[0073] And in this embodiment, a general vehicle uses the coordinate-transformed point cloud, the mean vector μ k included in the voxel data, and the covariance matrix V k to calculate the evaluation function "E k " of the voxel k shown by the following equation (4) and the comprehensive evaluation function "E" (also referred to as the "overall evaluation function") for all voxels to be matched shown by the equation (5).

[0074]

Number

[0075]

Number

[0076] On the other hand, the evaluation function E used in conventional NDT matching is for voxel k. k This is shown by the following equation (6).

[0077]

number

[0078] As is clear from comparing equations (4) and (6), in this embodiment, a general vehicle has a first weighting value w k and the second weighted value 1 / σ k 2 By using this method, each voxel is weighted according to the confidence level of its respective voxel data (mean vector, covariance matrix). As a result, for general vehicles, the evaluation function E of voxels with low confidence levels is used. kThe weighting of this factor is relatively reduced, thereby optimally improving the accuracy of position estimation by NDT matching.

[0079] Subsequently, the vehicle calculates the estimated parameters P that maximize the overall evaluation function E using an arbitrary root-finding algorithm such as Newton's method. Then, the vehicle applies the estimated parameters P to its own position, which is predicted from the output of the GPS receiver, etc., to estimate its own position with high accuracy.

[0080] Next, we will explain a specific example of NDT scan matching. For the sake of explanation, we will use a two-dimensional plane as an example below.

[0081] Figure 8(A) shows the point cloud measured by the measurement vehicle in four adjacent voxels "B1" to "B4" as circles, and the two-dimensional normal distribution created from equations (1) and (2) based on these point clouds is shown as a gradient. The mean and variance of the normal distribution shown in Figure 8(A) correspond to the mean vector and covariance matrix in the voxel data, respectively.

[0082] Figure 8(B) shows the point cloud acquired by RIDER 2 while a regular vehicle was in motion, indicated by stars, as shown in Figure 8(A). The positions of the RIDER point clouds, indicated by stars, are aligned with each voxel B1 to B4 based on the estimated position from the output of GPS receiver 5, etc. In the example in Figure 8(B), there is a discrepancy between the point cloud measured by the measurement vehicle (circles) and the point cloud acquired by the regular vehicle (stars).

[0083] Figure 8(C) shows the state after moving the point cloud (stars) acquired by a general vehicle based on the matching results of NDT scan matching. In Figure 8(C), the parameter P that maximizes the evaluation function E shown in equations (4) and (5) is calculated based on the mean and variance of the normal distribution shown in Figures 8(A) and (B), and the calculated parameter P is applied to the point cloud of stars shown in Figure 8(B). In this case, the discrepancy between the point cloud (circles) measured by the measurement vehicle and the point cloud (stars) acquired by the general vehicle is suitably reduced.

[0084] Here, if we calculate the evaluation functions "E1" to "E4" and the overall evaluation function E corresponding to voxels B1 to B4 using the conventionally used general formula (6), these values ​​will be as follows. E1 = 1.3290 E2 = 1.1365 E3 = 1.1100 E4 = 0.9686 E = 4.5441 In this example, there is no significant difference between the evaluation functions E1 to E4 for each voxel, although there are slight differences due to the number of points in the voxel's data pool.

[0085] In this embodiment, a first weighting value and a second weighting value are assigned to each voxel. Therefore, by increasing the weight of a voxel with high confidence, it is possible to improve the degree of matching for that voxel. Below, as an example, a specific example of setting the first weighting value for each voxel will be explained with reference to Figure 6.

[0086] Figure 9(A) shows the matching results when the first weighting values ​​for voxels B1 to B4 are all equal (i.e., the same figure as Figure 8(C)). Figure 9(B) shows the matching results when the first weighting value for voxel B1 is 10 times the weighting value of the other voxels. Figure 9(C) shows the matching results when the first weighting value for voxel B3 is 10 times the weighting value of the other voxels. In all examples, the second weighting values ​​are assumed to be set to equal values.

[0087] In the example in Figure 9(B), the values ​​of the evaluation functions E1 to E4 and the overall evaluation function E corresponding to voxels B1 to B4 are as follows: E1 = 0.3720 E2 = 0.0350 E3 = 0.0379 E4 = 0.0373 E = 0.4823

[0088] Thus, in the example shown in Figure 9(B), matching is performed in such a way that the value of the evaluation function E1 corresponding to voxel B1 is increased, thereby improving the degree of matching in voxel B1. As a result, the discrepancy between the circles and stars in voxel B1 is reduced. Furthermore, although the value of the evaluation function has decreased due to normalization by the number of points in the point cloud, each evaluation function value is in a proportion similar to that of the weighted values.

[0089] Furthermore, in the example in Figure 9(C), the values ​​of the evaluation functions E1 to E4 and the overall evaluation function E corresponding to voxels B1 to B4 are as follows. E1 = 0.0368 E2 = 0.0341 E3 = 0.3822 E4 = 0.0365 E = 0.4896

[0090] In the example in Figure 9(C), matching is performed so that the value of the evaluation function E3 corresponding to voxel B3 is high, thereby increasing the degree of matching for voxel B3. As a result, the discrepancy between the circle and star marks for voxel B3 is reduced. In this way, by appropriately setting the first weighting value, the degree of matching for voxels with a low probability of occlusion can be suitably increased, or in other words, the degree of matching for voxels with a high probability of occlusion can be suitably decreased. Similarly, for the second weighting value, by appropriately setting the second weighting value, the degree of matching for voxels with relatively high measurement accuracy can be increased, and the degree of matching for voxels with relatively low measurement accuracy can be decreased.

[0091] As described above, the server device 200 according to this embodiment functions as a map creation device that assigns a first weighting value related to the presence of stationary and moving objects to each voxel in the voxel data of the map DB 20, which is divided into multiple voxels. The server device 200 then acquires upload information Iu, which includes location information regarding the travel route of the measurement vehicle when measuring the point cloud data necessary for generating or updating the voxel data. The server device 200 then determines the first weighting value for each voxel based on the travel route of the measurement vehicle, which is identified based on the location information contained in the upload information Iu. As a result, the server device 200 can suitably assign a first weighting value related to the presence of stationary and moving objects to the generated voxel data based on the upload information Iu generated by the on-board unit 1 of the measurement vehicle.

[0092] [Differentiation] The following describes suitable modifications for the examples. The following modifications may be applied in combination to the examples.

[0093] (Variation 1) As shown in Figure 3, the voxel data included in the map DB20 recorded a first weighting value and a second weighting value as confidence information. Alternatively, the voxel data may record only one of the first or second weighting values. In this case, the server device 200 determines only one of the first or second weighting values ​​for each voxel based on the uploaded information Iu.

[0094] (Modification 2) Voxel data is not limited to a data structure that includes a mean vector and a covariance matrix, as shown in Figure 3. For example, voxel data may include point cloud data measured by the measurement vehicle used to calculate the mean vector and covariance matrix. Furthermore, the voxel data generated or updated by the server device 200 is not limited to scan matching by NDT only, but may also be voxel data for use in other scan matching methods such as ICP (Iterative Closest Point). [Explanation of Symbols]

[0095] 1 On-vehicle device 20 Map Database 11 Interfaces 12 Storage section 14 Input section 15 Control Unit 16. Information Output Unit 200 Server Devices

Claims

[Claim 1] In a map creation device that assigns weighting values ​​related to the presence of stationary and moving objects to map data divided into multiple regions, An acquisition unit that acquires the driving route when measuring the data necessary for generating or updating the aforementioned map data, A determination unit that determines the weighting values ​​for each of the plurality of regions based on the aforementioned travel path, A map-making device equipped with the following features.