Storage medium of data update program and movement control program, and data update device

CN122597688APending Publication Date: 2026-08-18HONDA MOTOR CO LTD
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
CN202610200227.3
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Priority Date
2025-02-18
Filing Date
2026-02-11
Publication Date
2026-08-18

AI Technical Summary

Technical Problem

[0003]但是,如上述专利文献1记载的装置那样,仅加工NDT地图数据中包含的数据,难以充分降低存储器消耗量

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN122597688A_ABST
    Figure CN122597688A_ABST
Patent Text Reader

Abstract

This invention provides a data update program that causes a computer to perform the following steps: an acquisition step, in which point cloud data of the surface of objects surrounding a moving body, obtained by a sensor mounted on the moving body, is acquired at a predetermined period; a transformation step, in which the point cloud data acquired in the acquisition step is transformed into a predetermined data format to generate control data for movement control of the moving body; a storage step, in which the control data generated in the transformation step is stored in a storage unit; and an update step, in which the control data stored in the storage unit is updated based on new point cloud data acquired in the acquisition step. In the update step, the new point cloud data is transformed into a predetermined data format to generate new control data, and the control data stored in the storage unit is updated based on the new control data.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to a storage medium for a data update program and a motion control program for updating map data, as well as a data update device. Background Technology

[0002] Previously, there was a known apparatus that generates an NDT (Normal Distribution Transform) map by modeling a 3D point cloud collected by sensors such as lidar using a normal distribution set (see, for example, Patent Document 1). In the apparatus described in Patent Document 1, the data contained in the NDT map data is further processed to reduce the data size of the NDT map.

[0003] However, as described in Patent Document 1 above, processing only the data contained in NDT map data makes it difficult to sufficiently reduce memory consumption.

[0004] Existing technical documents

[0005] Patent documents Patent Document 1: Japanese Patent Application Publication No. 2021-176052 (JP2021-176052A) Summary of the Invention One technical solution of the present invention uses a computer-readable storage medium storing a data update program. The data update program causes the computer to perform the following steps: an acquisition step, in which point cloud data of the surface of objects surrounding the moving body, obtained by sensors mounted on the moving body, is acquired at predetermined intervals; a transformation step, in which the point cloud data acquired in the acquisition step is transformed into a predetermined data format to generate control data for moving the moving body; a storage step, in which the control data generated in the transformation step is stored in a storage unit; and an update step, in which the control data stored in the storage unit is updated based on new point cloud data acquired in the acquisition step. The update step transforms the new point cloud data into a predetermined data format to generate new control data, and updates the control data stored in the storage unit based on the new control data.

[0006] The storage medium also stores a movement control program containing the aforementioned data update procedure. The movement control program causes the computer to execute movement control steps for controlling the movement of a moving body. In these movement control steps, when the control data is updated via the update step, movement control is performed based on the updated control data.

[0007] Another data updating apparatus according to the present invention comprises: an acquisition unit that acquires point cloud data of the surface of an object surrounding a moving body obtained by a sensor mounted on the moving body at a predetermined period; a transformation unit that transforms the point cloud data acquired by the acquisition unit into a predetermined data format to generate control data for movement control of the moving body; a storage unit that stores the control data generated by the transformation unit; and an updating unit that updates the control data stored in the storage unit based on new point cloud data acquired by the acquisition unit. The updating unit transforms the new point cloud data into a predetermined data format, generates new control data, and updates the control data stored in the storage unit based on the new control data. Attached Figure Description

[0008] The objectives, features, and advantages of the present invention are further illustrated by the following description of embodiments in conjunction with the accompanying drawings.

[0009] Figure 1 This is a block diagram that schematically illustrates the overall structure of a vehicle control system according to an embodiment of the present invention; Figure 2 This is a diagram used to illustrate NDT; Figure 3 This is a block diagram illustrating the main structural components of a vehicle control device according to an embodiment of the present invention; Figure 4 It is shown by Figure 3 A flowchart illustrating an example of the processing performed by the CPU of the controller; Figure 5 It is shown by Figure 3 The flowchart shows another example of the processing performed by the CPU of the controller. Detailed Implementation

[0010] The embodiments of the invention will now be described with reference to the accompanying drawings. The data update device of the present invention can be applied to vehicles with autonomous driving capabilities, i.e., autonomous vehicles. It should be noted that sometimes the vehicle using the data update device of this embodiment is distinguished from other vehicles and referred to as "this vehicle." This vehicle can be any of the following: an engine vehicle with an internal combustion engine as the driving source, an electric vehicle with a drive motor as the driving source, or a hybrid vehicle with both an engine and a drive motor as driving sources. This vehicle can operate not only in an autonomous driving mode where no driver intervention is required, but also in a manual driving mode based on driver intervention.

[0011] First, a general description of the vehicle's structure in relation to autonomous driving will be given. Figure 1 This is a block diagram that schematically illustrates the overall structure of the vehicle control system 100 of this vehicle having the data update device of this embodiment. (As shown...) Figure 1As shown, the vehicle control system 100 mainly includes a controller 10, an external sensor group 1 and an internal sensor group 2 that are communicatively connected to the controller 10, an input / output device 3, a positioning unit 4, a map database 5, a navigation device 6, a communication unit 7, and a driving actuator AC.

[0012] External sensor group 1 is a collective term for multiple sensors (external sensors) that detect external conditions as information about the vehicle's surroundings. For example, external sensor group 1 includes: a lidar that measures the distance from the vehicle to surrounding obstacles by measuring the reflected light from the vehicle's omnidirectional illumination; a radar that detects other vehicles or obstacles around the vehicle by illuminating electromagnetic waves and detecting the reflected waves; and a camera mounted on the vehicle and equipped with an image sensor such as a CCD (charge-coupled device) or CMOS (complementary metal-oxide-semiconductor) to capture images of the vehicle's surroundings (front, rear, and sides).

[0013] Internal sensor group 2 is a collective term for multiple sensors (internal sensors) that detect the driving status of the vehicle. For example, internal sensor group 2 includes an inertial measurement unit (IMU) that detects the rotational angular velocity and acceleration of the vehicle's center of gravity along three axes: vertical, longitudinal (travel direction), and lateral (vehicle width direction). Sensors that detect driver actions in manual driving mode, such as operation of the accelerator pedal, brake pedal, and steering wheel, are also included in internal sensor group 2.

[0014] Input / output device 3 is a general term for devices used to input commands from the driver or output information to the driver. For example, input / output device 3 includes various switches for the driver to input various commands by operating the control components, microphones for the driver to input commands by voice, displays that provide information to the driver by displaying images, speakers that provide information to the driver by sound, etc.

[0015] The positioning unit (GNSS (Global Navigation Satellite System) unit) 4 has a positioning sensor that receives positioning signals transmitted from positioning satellites. Positioning satellites are artificial satellites such as GPS (Global Positioning System) satellites and quasi-zenith satellites. The positioning unit 4 uses the positioning information received by the positioning sensor to determine the vehicle's current position (latitude, longitude, and altitude).

[0016] Map database 5 is a device that stores general map information used by navigation device 6, and is composed of, for example, hard disks and semiconductor components. The map information includes road location information, road shape (curvature, etc.) information, and the location information of intersections or forks in the road. It should be noted that the map information stored in map database 5 is different from the high-precision map information stored in storage unit 12 of controller 10.

[0017] The navigation device 6 is a device that searches for a target path on the road up to the destination input by the driver and guides the driver along the target path. The input of the destination and the guidance along the target path are performed via the input / output device 3. The target path is calculated based on the current position of the vehicle determined by the positioning unit 4 and map information stored in the map database 5. Alternatively, the current position of the vehicle can be determined using the detection values ​​of the external sensor group 1, and the target path can be calculated based on the current position and high-precision map information stored in the storage unit 12.

[0018] Communication unit 7 communicates with various servers (not shown) via wireless communication networks, including the Internet and mobile phone networks, to periodically or at any time obtain map information, driving history information, and traffic information from the servers. In addition to obtaining driving history information, communication unit 7 can also send the vehicle's driving history information to the servers. The network includes not only public wireless communication networks but also closed communication networks set up for each designated management area, such as wireless LAN, Wi-Fi (registered trademark), and Bluetooth (registered trademark). The obtained map information is output to map database 5 and storage unit 12 to update the map information.

[0019] An actuator (AC) is a driving actuator used to control the movement of the vehicle. When the driving source is an engine, the actuator AC includes a throttle actuator for adjusting the opening of the engine's throttle valve (throttle opening). When the driving source is a drive motor, the drive motor is included in the actuator AC. Braking actuators that operate the vehicle's braking system and steering actuators that drive the steering mechanism are also included in the actuator AC.

[0020] The controller 10 is composed of an electronic control unit (ECU). More specifically, the controller 10 is configured as a computer having an arithmetic unit 11 such as a CPU (microprocessor), a storage unit 12 such as ROM (read-only memory) and RAM (random access memory), and other peripheral circuits (not shown) such as I / O interfaces. It should be noted that although multiple ECUs with different functions, such as an engine control ECU, a drive motor control ECU, and a braking device ECU, can be separately configured, Figure 1 For convenience, controller 10 will be referred to as a set of these ECUs.

[0021] The storage unit 12 stores high-precision detailed map information (referred to as high-precision map information). This high-precision map information includes road location information, road shape (curvature, etc.) information, road slope information, location information of intersections or forks in the road, the type or location information of road markings such as white lines, information on the number of lanes, lane width and the location information of each lane (the center position of the lane, information on the lane's boundary lines), location information of landmarks (buildings, traffic lights, signs, etc.) used as markers on the map, and information on the road surface contours such as road surface undulations. In this embodiment, the center line, lane boundary lines, and lane outer lines are collectively referred to as road markings. The high-precision map information stored in the storage unit 12 includes map information obtained from outside the vehicle via the communication unit 7 (referred to as external map information) and maps generated by the vehicle itself using the detection values ​​of the external sensor group 1 or the detection values ​​of the external sensor group 1 and the internal sensor group 2 (referred to as internal map information).

[0022] External map information refers to information such as maps obtained through a cloud server (called cloud maps), while internal map information refers to information such as maps (called environment maps) composed of 3D point cloud data generated through mapping using technologies such as SLAM (Simultaneous Localization and Mapping). External map information is shared by this vehicle and other vehicles, while internal map information is map information unique to this vehicle (e.g., map information unique to this vehicle). In areas where this vehicle has not traveled, such as newly constructed roads, the vehicle creates its own environment map. It should be noted that internal map information can also be provided to a server device or other vehicles via communication unit 7. In addition to the aforementioned high-precision map information, storage unit 12 also stores information such as the vehicle's driving trajectory, various control programs, and thresholds used in the programs.

[0023] The computing unit 11 includes a vehicle position recognition unit 13, an external recognition unit 14, an action plan generation unit 15, a driving control unit 16, and a map generation unit 17 as its functional structure.

[0024] The vehicle position recognition unit 13 identifies (or estimates) the vehicle's position on the map based on the vehicle's position information obtained from the positioning unit 4 and the map information from the map database 5. It can also identify (estimate) the vehicle's position using high-precision map information stored in the storage unit 12 and surrounding information detected by the external sensor group 1, thereby enabling high-precision position recognition. The vehicle's movement information (direction of movement, distance of movement) is calculated based on the detection values ​​from the internal sensor group 2, thereby also enabling position recognition. It should be noted that when the vehicle's position can be determined using external sensors installed on or beside the road, the position can also be identified by communicating with these sensors via the communication unit 7.

[0025] The external identification unit 14 identifies the external conditions surrounding the vehicle based on signals from the external sensor group 1, such as lidar, radar, and cameras. For example, it identifies the position, speed, or acceleration of surrounding vehicles (vehicles in front and behind) traveling around the vehicle, the position of surrounding vehicles parked or stationary around the vehicle, and the position and state of other objects. Other objects include signs, traffic lights, road markings or stop lines, buildings, guardrails, utility poles, signs, pedestrians, bicycles, etc. The state of other objects includes the color of traffic lights (red, green, yellow), the speed and direction of pedestrians or bicycles, etc. Some stationary objects among these other objects constitute landmarks that serve as indicators of the vehicle's location on a map; the external identification unit 14 also identifies the location and category of these landmarks.

[0026] The action plan generation unit 15 generates, for example, the vehicle's driving trajectory (target trajectory) from the current time up to a predetermined time, based on the target path calculated by the navigation device 6, the high-precision map information stored in the storage unit 12, the vehicle's position identified by the vehicle position recognition unit 13, and the external conditions identified by the external environment recognition unit 14. When multiple candidate trajectories exist on the target path, the action plan generation unit 15 selects the optimal trajectory that complies with laws and meets criteria such as efficient and safe driving, and uses the selected trajectory as the target trajectory. Then, the action plan generation unit 15 generates an action plan corresponding to the generated target trajectory. The action plan generation unit 15 generates various action plans corresponding to overtaking, lane changing, following, maintaining lane position without deviating from the lane, deceleration, or acceleration. When generating the target trajectory, the action plan generation unit 15 first determines the driving mode and generates the target trajectory based on the driving mode.

[0027] In autonomous driving mode, the driving control unit 16 controls each actuator AC to make the vehicle travel along the target trajectory generated by the action plan generation unit 15. More specifically, the driving control unit 16 considers the driving resistance determined by road gradient and other factors in autonomous driving mode, and calculates the required driving force to obtain the target acceleration per unit time calculated by the action plan generation unit 15. Then, for example, feedback control is performed on the actuator AC in such a way that the actual acceleration detected by the internal sensor group 2 becomes the target acceleration. That is, the actuator AC is controlled to make the vehicle travel at the target speed and target acceleration. It should be noted that in manual driving mode, the driving control unit 16 controls each actuator AC according to driving commands (steering operations, etc.) obtained from the driver by the internal sensor group 2.

[0028] While driving in manual driving mode, the map generation unit 17 uses detection values ​​from the external sensor group 1 to generate an environmental map of the surrounding roads traversed by the vehicle as internal map information. For example, from multiple frames of camera images acquired by the camera, it extracts edges and feature regions (spots) representing the contours of objects based on the brightness and color information of each pixel, and uses this edge and spot information to extract feature points. Feature points are, for example, the intersection of edges, corresponding to the corners of buildings, road signs, etc. The map generation unit 17 estimates the position and pose of the camera according to the SLAM algorithm, so that the same feature point converges to one point across multiple frames of camera images, and calculates the three-dimensional position of the feature point. By performing this calculation process on multiple feature points separately, an environmental map composed of three-dimensional point cloud data is generated. It should be noted that, instead of the camera, data acquired by radar or lidar can also be used to extract feature points of objects around the vehicle to generate an environmental map.

[0029] The vehicle position recognition unit 13 can also perform vehicle position recognition processing based on the environment map generated by the map generation unit 17 and feature points extracted from camera images. Furthermore, the vehicle position recognition unit 13 can perform vehicle position recognition processing in parallel with the map creation processing of the map generation unit 17. Map creation processing and position recognition (estimation) processing are performed simultaneously using SLAM technology algorithms. The map generation unit 17 can generate environment maps not only when driving in manual driving mode but also when driving in automatic driving mode. If an environment map has already been generated and stored in the storage unit 12, the map generation unit 17 can also update the environment map based on newly extracted feature points from newly acquired camera images.

[0030] However, as one method to reduce the data size of environmental maps (point cloud data), there is the method of performing a normal distribution transformation (NDT) on the environmental map, that is, transforming the environmental map into an NDT map. An NDT map divides the environmental map composed of 3D point cloud data into a grid of specified size, and uses a normal distribution (mean vector and covariance matrix) to approximate the distribution of the point cloud in each grid.

[0031] Figure 2 This is a diagram used to illustrate NDT. In Figure 2 On the left, a point cloud PC is schematically shown as part of the environment map. Figure 2 The right side schematically shows the NDT map NM obtained by performing a normal distribution transformation on the point cloud PC. It should be noted that, for ease of explanation, the point cloud PC, serving as the transformation source, is overlaid on the NDT map NM. The rectangular region GR divided by squares represents the grid in the NDT map, and the centers of ellipses C1 and C2 within the grid represent the center (average value) of the point cloud distribution within that grid. Ellipse C1 schematically represents the vicinity of the center of the point cloud distribution, and ellipse C2 schematically represents the extension of the point cloud distribution.

[0032] like Figure 2 As shown, transforming the environment map into an NDT map can reduce the map's data size. On the other hand, when updating the NDT map with newly acquired point cloud data, a normal distribution transformation is applied to the point cloud data obtained by combining the newly acquired point cloud data with the point cloud data used to generate the NDT map, thus generating the updated NDT map. In other words, updating the NDT map requires the point cloud data used to generate it.

[0033] Therefore, when transforming an environmental map into an NDT map, it is necessary to maintain the environmental map (point cloud data) that serves as the source of the NDT map transformation in advance for subsequent map updates. Therefore, simply transforming the environmental map into an NDT map is insufficient to significantly reduce memory consumption. Therefore, to address this problem, the data update apparatus (hereinafter also referred to as the map update apparatus) of this embodiment is configured as follows.

[0034] Figure 3 This is a block diagram showing the main structural components of the vehicle control device 50 according to this embodiment. The vehicle control device 50 comprises... Figure 1 It is part of the vehicle control system 100. For example... Figure 3 As shown, the vehicle control unit 50 includes a controller 10, a camera 1a, a lidar 1b, and a radar 1c. Additionally, the vehicle control unit 50 includes a map updating device 60, which forms part of the vehicle control unit 50. The map updating device 60 updates the map data used for driving control of the vehicle based on the detection data (camera image) from the camera 1a.

[0035] Camera 1a is a single-lens reflex camera equipped with imaging elements (image sensors) such as CCD and CMOS, constituting... Figure 1 It is part of the external sensor group 1. Camera 1a detects the surrounding conditions of the vehicle. For example, camera 1a is mounted at a predetermined position at the front of the vehicle, and continuously captures images of the space in front of the vehicle at a predetermined frame rate, and outputs the frame image data (camera images) as detection information to controller 10 in sequence. It should be noted that camera 1a can also be a stereo camera.

[0036] LiDAR 1b is mounted on the vehicle to measure the scattered light from the omnidirectional illumination of the vehicle and detect the distance from the vehicle to surrounding obstacles. LiDAR 1b outputs the detected values ​​(detection data) to controller 10. Radar 1c is mounted on the vehicle to detect other vehicles, obstacles, etc., in the surrounding area by illuminating electromagnetic waves and detecting the reflected waves. Radar 1c outputs the detected values ​​(detection data) to controller 10.

[0037] The controller 10 includes an arithmetic unit 11 and a storage unit 12. The arithmetic unit 11 has an acquisition unit 111, a conversion unit 112, an update unit 113, and a driving control unit 16 as its functional structure.

[0038] It should be noted that the acquisition unit 111, the transformation unit 112, and the update unit 113 are, for example, made by... Figure 1 The map generation unit 17 is configured. In addition, the acquisition unit 111, the transformation unit 112, the update unit 113, the camera 1a, the lidar 1b, the radar 1c, and the storage unit 12 are included in the map update device 60.

[0039] During the vehicle's operation, the acquisition unit 111 acquires camera images from the camera 1a at predetermined intervals. The acquisition unit 111 extracts feature points from the acquired camera images. As a result, point cloud data of the surfaces of objects surrounding the vehicle is acquired.

[0040] The transformation unit 112 transforms the point cloud data acquired by the acquisition unit 111 into a prescribed data format. More specifically, the transformation unit 112 applies a process approximating a normal distribution function, known as NDT, to the point cloud data, transforming the point cloud data into an NDT map. The transformation unit 112 stores the NDT map in the storage unit 12. In this way, an NDT map corresponding to the vehicle's driving position is generated and stored in the storage unit 12. By performing this process of the transformation unit 112 at prescribed intervals during the vehicle's travel, an NDT map corresponding to the roads traveled by the vehicle is generated and stored in the storage unit 12.

[0041] When new point cloud data is acquired by the acquisition unit 111, the update unit 113 updates the NDT map stored in the storage unit 12 based on the new point cloud data. Specifically, the update unit 113 first applies NDT to the new point cloud data acquired by the acquisition unit 111 to generate a new NDT map (hereinafter referred to as the new NDT map) corresponding to the current driving position of the vehicle. Next, the update unit 113 updates the information of the area (hereinafter referred to as the object area) corresponding to the current driving position in the NDT map (hereinafter referred to as the existing NDT map) stored in the storage unit 12 based on the new NDT map. The object area corresponds to the current shooting range of the camera 1a.

[0042] Here, the updating of the existing NDT map is explained. The updating unit 113 updates the information of the object area of ​​the existing NDT map on a grid-by-grid basis. First, the updating unit 113 updates the average vector of the grid that is the object of the update (hereinafter referred to as the object grid). The following formula (i) is the update formula for the x-component of the average vector.

[0043]

[0044] In equation (i), n is the number of times the NDT map is updated. xn is the x-component of the average vector of the grid corresponding to the object grid in the new NDT map (hereinafter referred to as the corresponding grid). xn- represents the current value of the x-component of the average vector of the object grid in the existing NDT map, that is, the value after the nth map update. xn-1- represents the previous value of the x-component of the average vector of the object grid in the existing NDT map, that is, the value after the (n-1)th map update.

[0045] As shown in equation (i) above, the update unit 113 calculates the current value of the x-component of the average vector of the object grid by weighting the previous value of the x-component of the average vector of the object grid and the x-component of the average vector of the corresponding grid based on the update count. Similarly, the update unit 113 calculates the current values ​​of the y-component and z-component of the average vector of the object grid. Thus, the xyz components of the average vector of the object grid are updated respectively. In this way, the update unit 113 updates the average vector of the object grid in the existing NDT map based on the update count, the previous value of the average vector of the object grid, and the average vector of the corresponding grid in the new NDT map. Therefore, updates can be performed only based on the update count, the previous value of the average vector, and the value of the average vector, without needing to use point cloud data up to the last update, thus reducing the required storage.

[0046] Next, update unit 113 updates the covariance matrix of the object mesh. Equation (ii) below is a formula representing the covariance matrix of the object mesh. Equation (iii) below is an update formula for the xy components of the covariance matrix in the object mesh.

[0047]

[0048]

[0049] In equations (ii) and (iii), n is the number of updates. xn and yn are the x and y components of the average vector of the corresponding grid in the new NDT map. Sxy, Sxz, and Syz represent the covariances of the xy, xz, and yz components, respectively. Sxx, Syy, and Szz represent the variances of the x, y, and z components, respectively. Sn represents the current value, i.e., the value after the nth map update. Sn-1 represents the previous value, i.e., the value after the (n-1)th map update.

[0050] The update unit 113 calculates the current values ​​of the xy components of the covariance matrix of the object grid using equation (iii) above. Similarly, the update unit 113 calculates the current values ​​of the other components (components other than the xy components) of the covariance matrix. Thus, the covariance matrix of the object grid is updated. In this way, the update unit 113 updates the covariance matrix of the object grid within the existing NDT map based on the update count, the previous value of the object grid's average vector, the previous value of the covariance matrix, and the average vector of the corresponding grid within the new NDT map. Therefore, point cloud data up to the last update is not required, thus reducing the required storage.

[0051] The update unit 113 performs update processing on each grid within the object area of ​​the existing NDT map using the average vector of equation (i) and the covariance matrix of equation (iii).

[0052] It should be noted that when performing the above update process, the update unit 113 calculates the deviation degree between the new NDT map and each grid within the object area of ​​the existing NDT map. Furthermore, the update unit 113 adjusts the coefficients (update number n) used in equations (i) and (iii) above for grids with a deviation degree exceeding a predetermined level, thereby increasing the influence of the new NDT map on the updated existing NDT map. Specifically, a value smaller than the actual value is substituted into the update number n. It should also be noted that the predetermined level, which serves as the criterion for determining whether there is a deviation from the new NDT map, can also be determined based on the variance of equation (iv).

[0053]

[0054] In equation (iv), Σ is the covariance matrix of the object grid in the existing NDT map. μ is the mean vector of the object grid in the existing NDT map. v is the mean vector of the corresponding grid in the new NDT map. It should be noted that the likelihood calculation method using equation (iv) above is just one example; other methods can also be used to calculate the likelihood.

[0055] Figure 4 It shows that according to a predetermined procedure, by Figure 3 A flowchart of an example of map update processing performed by the CPU of controller 10.

[0056] The process shown in the flowchart begins when the vehicle control system 100 is started and repeats at a predetermined cycle during the start-up period. Specifically, it repeats at time intervals specified by the frame rate of camera 1a whenever a camera image is input from camera 1a. It should be noted that the predetermined cycle may be variable, taking into account factors such as traffic safety requirements and computational load.

[0057] First, in step S101, when a camera image is input from camera 1a, controller 10 extracts feature points (point cloud data) from the camera image. In step S102, controller 10 applies NDT to the point cloud data obtained in step S101. This generates an NDT map corresponding to the point cloud data obtained in step S101. In step S103, controller 10 determines whether the deviation between the NDT map stored in storage unit 12 (existing NDT map) and the NDT map generated in step S102 (new NDT map) is above a predetermined level.

[0058] When step S103 is negative (S103: No), in step S104, controller 10 uses equations (i) and (iii) above to update the existing NDT map according to the new NDT map. In step S105, controller 10 increments the update count n by 1.

[0059] On the other hand, when step S103 is affirmative (S103: Yes), in step S106, the controller 10 substitutes a value smaller than the actual value into the update count n used in equations (i) and (iii) above, and proceeds to step S104. Thus, a map update is performed that gives the new NDT map a greater weight.

[0060] It should be noted that the processing in steps S103 to S106 is performed on a grid basis, targeting the area (object area) in the existing NDT map (the NDT map stored in the storage unit 12) that corresponds to the shooting range of the camera image input in step S101. Additionally, update information representing the update count n is stored on a grid basis in the existing NDT map.

[0061] By adopting the implementation methods described above, the following effects can be obtained.

[0062] (1) The map updating device 60 includes: an acquisition unit 111, which acquires point cloud data of the surfaces of objects surrounding the vehicle obtained by a camera 1a mounted on the vehicle, which is a moving body, at a predetermined period; a transformation unit 112, which transforms the point cloud data acquired by the acquisition unit 111 into a predetermined data format and generates map data as control data for the movement control of the vehicle; a storage unit 12, which stores the map data generated by the transformation unit 112; and an updating unit 113, which updates the map data stored in the storage unit 12 based on new point cloud data acquired by the acquisition unit 111. The updating unit 113 transforms the new point cloud data into a predetermined data format, generates new map data (new NDT map), and updates the map data (existing NDT map) stored in the storage unit 12 based on the new map data. The transformation performed by the transformation unit 112 is a normal distribution transformation (NDT) that makes the point cloud data approximate a normal distribution function.

[0063] This reduces memory consumption by maintaining the map used for vehicle driving control as an NDT map. Furthermore, with this structure, the NDT map can be updated without using point cloud data as a transformation source. Consequently, memory consumption is further reduced by eliminating the need to maintain point cloud data as a transformation source.

[0064] (2) The updating unit 113 counts the number of times the map data stored in the storage unit 12 has been updated, and updates the map data stored in the storage unit 12 with new map data weighted according to the number of updates. More specifically, the updating unit 113 counts the number of times the map data stored in the storage unit 12 has been updated, and updates the map data stored in the storage unit 12 with a weighted average of the new map data and the map data stored in the storage unit 12 based on the number of updates. As a result, the accuracy of the map data is improved each time it is updated.

[0065] (3) When the updating unit 113 weights the new map data and the map data stored in the storage unit 12 according to the number of updates, if the deviation between the new map data and the map stored in the storage unit 12 is greater than a predetermined level, the weighting of the new map data is increased. As a result, the information of the new map data is used preferentially for map updates, and the map data can be updated appropriately to cope with the latest road conditions when there are significant changes in the road or the surrounding environment due to road construction or other reasons.

[0066] (4) When the map data is updated by the updating unit 113, the driving control unit 16 performs movement control (driving control) of the vehicle based on the updated map data. More specifically, when the map data is updated by the updating unit 113, the action plan generation unit 15 generates a target trajectory based on the updated map data, and the driving control unit 16 controls each actuator AC to make the vehicle travel along the target trajectory.

[0067] The above-described embodiments can be modified in various ways. Hereinafter, modifications will be described. In the above-described embodiments, the acquisition unit 111 acquires the detection data (camera image) of the camera 1a, which is a vehicle-mounted sensor. However, the vehicle-mounted sensor may also be a device other than the camera 1a, and the acquisition unit may acquire the detection data of the lidar 1b or the radar 1c at a predetermined period and extract feature points from the detection data.

[0068] Furthermore, in the above embodiment, when updating by weighted averaging of the existing NDT map and the new NDT map, the weight of the new NDT map is increased when the deviation between the existing NDT map and the new NDT map is greater than a predetermined level. More specifically, a value smaller than the actual value is substituted into the update number n used in equations (i) and (iii) above (S106).

[0069] However, the methods for updating NDT maps are not limited to this. Figure 5 It shows that according to a predetermined procedure, by Figure 3 The flowchart shows another example of map update processing performed by the CPU of controller 10. (See also...) Figure 5 As shown, when the deviation between the existing NDT map and the new NDT map exceeds a predetermined level, in step S206, the controller 10 can also replace the existing NDT map with the new NDT map. That is, the existing NDT map can also be overwritten with the new NDT map. Then, in step S207, the controller 10 can also reset the update count n to 0 and end the process. It should be noted that... Figure 5 Steps S201 to S205 and Figure 4 Steps S101 to S105 are the same, so the explanation is omitted.

[0070] Furthermore, in the above embodiment, the vehicle control device 50 and the map update device 60 are applied to autonomous vehicles, but the vehicle control device 50 and the map update device 60 can also be applied to vehicles other than autonomous vehicles. For example, the vehicle control device 50 and the map update device 60 can also be applied to manually driven vehicles equipped with ADAS (Advanced Driver-Assistance Systems).

[0071] Furthermore, in the above embodiments, with Figure 3 Controller 10 executes Figure 4 and Figure 5 The following is an example of the processing described. However, Figure 4 and Figure 5 The processing shown can also be performed by communication terminals such as smartphones, or by external server devices. Specifically, the execution... Figure 4 and Figure 5 The processing program shown is provided to communication terminals such as smartphones and external server devices, and executed by the controller of the smartphone or similar device. That is, the controller of the smartphone or similar device may also have... Figure 3 Functional structure.

[0072] The above description is merely an example. As long as it does not impair the characteristics of the invention, the invention is not limited to the above embodiments and modifications. One or more of the above embodiments and modifications can be combined arbitrarily, and modifications can also be combined with each other.

[0073] By using this invention, the increase in memory consumption as the map is updated can be suppressed.

[0074] The present invention has been described above in conjunction with preferred embodiments, but those skilled in the art should understand that various modifications and changes can be made without departing from the scope of the claims.

Claims

1. A storage medium, which is a computer-readable storage medium storing a data update program, characterized in that, The data update procedure causes the computer to perform the following steps: The acquisition step involves acquiring point cloud data of the surface of objects surrounding the moving body, obtained by sensors mounted on the moving body, at a predetermined period. The transformation step involves transforming the point cloud data obtained through the acquisition step into a specified data format to generate control data for the movement control of the moving body. A storage step, in which the control data generated through the transformation step is stored in a storage unit; as well as In the update step, the control data stored in the storage unit is updated based on the new point cloud data obtained through the acquisition step. In the update step, the new point cloud data is transformed into the specified data format to generate new control data, and the control data stored in the storage unit is updated according to the new control data.

2. The storage medium according to claim 1, characterized in that, In the update step, the number of times the control data stored in the storage unit has been updated is counted, and the control data stored in the storage unit is updated using the new control data weighted according to the number of updates.

3. The storage medium according to claim 1, characterized in that, In the update step, the number of times the control data stored in the storage unit is updated is counted, and a weighted average is calculated based on the number of times the new control data and the control data stored in the storage unit, and the control data stored in the storage unit is updated.

4. The storage medium according to claim 1, characterized in that, In the update step, the new control data and the control data stored in the storage unit are weighted, and the control data stored in the storage unit is updated. If the deviation between the new control data and the control data stored in the storage unit is greater than a predetermined level, the weighting of the new control data is increased, and the control data is updated.

5. The storage medium according to claim 1, characterized in that, In the update step, if the deviation between the new control data and the control data stored in the storage unit is greater than a predetermined level, the control data stored in the storage unit is replaced with the new control data.

6. The storage medium according to any one of claims 1 to 5, characterized in that, The transformation step involves approximating the point cloud data as a normal distribution function.

7. The storage medium according to claim 1, characterized in that, It also stores a mobile control program containing the data update program. The movement control program causes the computer to execute movement control steps based on the control data to control the movement of the moving body. In the motion control step, when the control data is updated through the update step, the motion control is performed based on the updated control data.

8. A data update device, characterized in that, have: The acquisition unit (111) acquires point cloud data of the surface of objects around the moving body obtained by the sensors mounted on the moving body at a predetermined period; The transformation unit (112) transforms the point cloud data obtained by the acquisition unit (111) into a specified data format and generates control data for the movement control of the moving body. Storage unit (12), which stores the control data generated by the transformation unit (112); and The updating unit (113) updates the control data stored in the storage unit (12) based on the new point cloud data obtained by the acquisition unit (111). The updating unit (113) transforms the new point cloud data into the prescribed data format, generates new control data, and updates the control data stored in the storage unit according to the new control data.

Citation Information

Patent Citations

  • Self-position estimating device

    JP2021176052A