An obstacle motion state estimation method, device and electronic equipment

CN115375725BActive Publication Date: 2026-08-18深圳魔视智能科技有限公司
View PDF 3 Cites 0 Cited by

Patent Information

Application Number
CN202211014379.2
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-08-23
Publication Date
2026-08-18
Estimated Expiration
2042-08-23

AI Technical Summary

Technical Problem

由于这些方法是基于神经网络的深度估计,会受到训练数据的约束以及平台算力的影响,感知效果不稳定,障碍物运动状态的估计精度较低,使得自动驾驶车辆无法准确估计周围障碍物的运动状态,从而出现交通事故

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115375725B_ABST
    Figure CN115375725B_ABST
Patent Text Reader

Abstract

The application discloses an obstacle motion state estimation method, device and electronic equipment. The obstacle motion state estimation method comprises the following steps: generating particles in a grid map representing the environment around a target vehicle, the particles having a speed and a weight, the weight being proportional to the accuracy of the motion of the particles; propagating the particles in the grid map according to the speed of the particles, and calculating the occupancy probability of a grid in the grid map being occupied by the particles; updating the weight of the particles in the grid according to the occupancy probability of the grid, and determining the speed of the grid based on the speed and the updated weight of the particles in the grid; and clustering adjacent grids with a speed difference within a preset difference range, wherein the position and speed of each class of adjacent grids limit the position and speed of an obstacle. The safety of an autonomous vehicle during driving can be improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of autonomous driving technology, and more specifically to a method, apparatus, and electronic device for estimating the motion state of obstacles. Background Technology

[0002] In vision-based autonomous driving, perceiving the motion state of objects around the vehicle is a core component for achieving safe driving. Some methods rely on object detection based on deep learning, combining detected key points on the vehicle with depth estimation based on binoculars or neural networks to obtain the motion state of objects around the vehicle. However, because these methods are based on neural network depth estimation, they are constrained by training data and affected by platform computing power, resulting in unstable perception and low accuracy in estimating obstacle motion states. This can lead to autonomous vehicles failing to accurately estimate the motion state of surrounding obstacles, resulting in traffic accidents. Summary of the Invention

[0003] In view of this, embodiments of the present invention provide a method for estimating the motion state of an obstacle, an obstacle estimation device, an electronic device, and a computer-readable storage medium, which can improve the safety of autonomous vehicles during operation.

[0004] This invention provides a method for estimating the motion state of an obstacle, the method comprising:

[0005] Particles are generated in a grid map representing the environment around the target vehicle. The particles have velocity and weight, and the weight is proportional to the accuracy of the particle's motion.

[0006] According to the speed of the particle, the particle propagates in the grid map, and the occupancy probability of the grid in the grid map being occupied by the particle is calculated;

[0007] The weights of particles in the grid are updated based on the occupancy probability of the grid, and the velocity of the grid is determined based on the velocity of the particles in the grid and the updated weights; and

[0008] Cluster adjacent grids whose speed differences are within a preset range, where the position and speed of each adjacent grid in a cluster define the position and speed of an obstacle.

[0009] In another aspect, the present invention provides an obstacle estimation device, the device comprising:

[0010] A particle generation module is used to generate particles in a grid map representing the environment around a vehicle. The particles have velocity and weight, and the weight is proportional to the accuracy of the particle's motion.

[0011] The particle propagation module is used to propagate the particles in the grid map according to the speed of the particles, and to calculate the occupancy probability of the grid in the grid map being occupied by the particles.

[0012] A weight update module is used to update the weights of particles in the grid according to the occupancy probability of the grid, and to determine the velocity of the grid based on the velocity of the particles in the grid and the updated weights; and

[0013] The obstacle estimation module is used to cluster adjacent grids whose velocity differences are within a threshold range, wherein the position and velocity of each adjacent grid in each cluster define the position and velocity of an obstacle.

[0014] In another aspect, the present invention provides a computer-readable storage medium for storing a computer program that, when executed by a processor, implements the method described above.

[0015] In another aspect, the present invention provides an electronic device comprising a processor and a memory, the memory being used to store a computer program which, when executed by the processor, implements the method described above.

[0016] In some embodiments of this application, particles are generated in a grid map, assigned velocity and weight, and allowed to propagate through the grid map. The particle weights are updated based on the occupancy probability of a grid cell, and the grid cells are clustered to determine obstacles in the environment surrounding the target vehicle. This method detects obstacles through particle propagation, eliminating the need for depth estimation based on neural networks. Therefore, it is unaffected by training data constraints and platform computing power, resulting in more stable detection performance and higher accuracy in estimating obstacle motion states. This allows autonomous vehicles to accurately estimate the motion states of surrounding obstacles, better plan their movement, improve autonomous driving safety, and reduce traffic accidents. Attached Figure Description

[0017] The features and advantages of the invention will be more clearly understood by referring to the accompanying drawings, which are schematic and should not be construed as limiting the invention in any way. In the drawings:

[0018] Figure 1 A flowchart illustrating an obstacle motion state estimation method provided in one embodiment of this application is shown.

[0019] Figure 2 This illustration shows a schematic diagram of particle distribution in a grid map at time k+1, provided in one embodiment of this application.

[0020] Figure 3 A flowchart illustrating a grid occupancy probability determination method provided in one embodiment of this application is shown.

[0021] Figure 4 A schematic diagram of an obstacle estimation device provided in one embodiment of this application is shown.

[0022] Figure 5 A schematic diagram of an electronic device provided in one embodiment of this application is shown. Detailed Implementation

[0023] To make the objectives, technical solutions, and advantages of the embodiments of the present invention clearer, the technical solutions of the embodiments of the present invention will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only a part of the embodiments of the present invention, and not all of them. Based on the embodiments of the present invention, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of the present invention.

[0024] The obstacle motion state estimation method provided in this application can be applied to electronic devices. Electronic devices include, but are not limited to, in-vehicle control devices, computers, and remote servers connected to in-vehicle control devices. Please refer to... Figure 1 This is a flowchart illustrating an obstacle motion state estimation method provided in one embodiment of this application. Figure 1 In this process, at least some steps can be repeated cyclically. Methods for estimating the motion state of an obstacle may include the following steps:

[0025] Step S11: Generate particles in a grid map representing the environment around the target vehicle. The particles have velocity and weight, and the weight is proportional to the accuracy of the particle motion.

[0026] In some embodiments, the grid map is a 2D environment map (without height) representing the environment surrounding the target vehicle. The target vehicle is a vehicle for which obstacle detection needs to be performed in the surrounding environment. The target vehicle may be equipped with a vision device to acquire images of the environment surrounding the target vehicle. The grid map is built in a vehicle coordinate system and centered on the target vehicle. The origin of the vehicle coordinate system is the center of the vehicle's rear axle, the z-axis is perpendicular to the ground and pointing upwards, the x-axis points to the right of the vehicle's direction of travel, and the y-axis points directly forward in the direction of travel. Grid mapping is a conventional technique in the art and will not be described in detail here.

[0027] In some embodiments, particles can be pre-hypothetical obstacles in the environment surrounding the target vehicle. One or more particles represent an obstacle. These obstacles may be real obstacles in the environment surrounding the vehicle, or they may not actually exist in the environment surrounding the vehicle. For example, suppose particles are generated in the upper right corner of the grid map, but there are no obstacles in the upper right corner region of the target vehicle in the actual environment surrounding the vehicle. Then these particles can be considered invalid particles and can be deleted in subsequent steps (i.e., steps S12 to S14). As another example, suppose particles are generated in the upper left corner of the grid map. Correspondingly, there are obstacles in the upper left corner region of the target vehicle in the actual environment surrounding the vehicle, and the particle velocity is the same as the obstacle velocity. Then these particles can be considered valid particles and can be retained in the grid map. These retained particles can be used to determine obstacles in the environment surrounding the vehicle, as described later.

[0028] Based on the above description, it can be understood that only particles generated in obstacle areas of the raster map are likely to be effective particles, while particles generated in non-obstacle areas of the raster map are usually ineffective particles. To generate particles in the correct positions on the raster map as much as possible and reduce the number of generated particles and computational load, obstacle areas in the raster map can be determined first, and particles can be randomly generated mainly in obstacle areas of the raster map to avoid generating particles in non-obstacle areas, which would result in an excessive number of particles and excessive computational load. Specifically, images of the vehicle's surrounding environment can be acquired, and semantic segmentation can be performed on the images to determine obstacle areas in the images. Then, according to the correspondence between the image and the raster map, obstacle areas can be determined in the raster map, and particles can be generated in the obstacle areas of the raster map. Those skilled in the art will know that each grid in the raster map can be projected as a point in the image, that is, there is a correspondence between points in the image and grids in the raster map. In view of this, after determining the obstacle areas in the image through semantic segmentation, the obstacle areas can be determined in the raster map according to this correspondence.

[0029] In some embodiments, considering that obstacles around the target vehicle are in motion, meaning that the obstacle area may differ in images acquired at different times, images of the area around the vehicle can be acquired simultaneously with particle generation in the raster map. Then, based on the acquired images, the obstacle area in the raster map can be determined. This ensures that the time for particle generation in the raster map is synchronized with the time for image acquisition, resulting in high accuracy in determining the obstacle area in the raster map.

[0030] In some embodiments, after particles are generated in the grid map, their velocities can be randomly initialized within a preset velocity range. At least some different particles can have different initial velocities. This velocity range can be the velocity range of obstacles that may appear in the vehicle's surrounding environment. For example, assuming that people and other vehicles may appear in the surrounding environment, the particle velocity range can include the velocity range of a person walking and the velocity range of a vehicle moving. It is understood that for a stationary obstacle, the velocity is 0, so the particle velocity can also include 0. The particle velocity can be a vector, including both magnitude and direction.

[0031] In some embodiments, particle weights can be used to reflect the accuracy of particle motion. Specifically, particle weights can reflect the accuracy of the position reached by the particle during its motion. If a particle moves to a specific position at a specific time point, and simultaneously, in the actual environment surrounding the target vehicle, there is also an obstacle moving to that specific position at that specific time point, then it means that the particle, as an obstacle, is relatively accurate in moving to that specific position at that specific time point; that is, the particle's motion accuracy is high, and the particle can have a high weight. Conversely, if in the actual environment surrounding the target vehicle, there is no obstacle moving to that specific position at that specific time point, then it means that the particle, as an obstacle, is inaccurate in moving to that specific position at that specific time point; that is, the particle's motion accuracy is low, and the particle can have a low weight. For example, a particle moves to position A in a grid map at time k according to its speed. Simultaneously, if there is an obstacle at position A in the actual environment surrounding the target vehicle at time k, then the particle, as an obstacle, is relatively accurate in moving to position A at time k, and the particle can have a high weight. Conversely, if there are no obstacles at position A in the actual environment surrounding the target vehicle at time k, then the particle moving to position A at time k as an obstacle is inaccurate, and the particle can have a lower weight.

[0032] In some embodiments, the weights of the particles can be initialized after the particles are generated. The initial weights of the particles can be... Where, N s This represents the total number of particles in the grid map. In subsequent steps (i.e., steps S12 to S14), the particle weights can be updated based on the particle's motion; details can be found in the subsequent descriptions, which will not be repeated here. It is understood that methods for initializing particle weights, including but not limited to the methods described above, and any method that generates an initial weight for a particle, should be within the scope of protection of this application.

[0033] In some embodiments, after generating particles in a raster map, a raster set G and a particle set S in the raster map can be constructed.

[0034] The raster set G can be represented as follows:

[0035] G={g j |g j =(c j ,r j ,m j MVC j mvr j ),j=1,…,N g}

[0036] Among them, g j This represents the j-th cell;

[0037] c j This represents the coordinates of the j-th grid cell in the first direction of the grid map;

[0038] r j This represents the coordinates of the j-th grid cell in the second direction of the grid map;

[0039] m j This represents the state of the j-th grid cell. The grid state can include occupied, unoccupied, and unknown states. Different grid states can be represented by different state values; for example, 1 indicates the grid is occupied, 0.5 indicates the grid is unknown, and 0 indicates the grid is unoccupied.

[0040] MVC j This represents the velocity of the j-th grid cell in the first direction of the grid map;

[0041] mvr j This represents the velocity of the j-th grid cell in the second direction of the grid map;

[0042] N g This indicates the number of grid cells in a raster map.

[0043] The raster set S can be represented as follows:

[0044] S={s i |s i =(c i ,r i ,vc i VR i ,w i ), i = 1, ..., N s}

[0045] Among them, s i Represents the i-th particle;

[0046] c i This represents the coordinates of the grid cell containing the i-th particle in the first direction of the grid map;

[0047] r i This represents the coordinates of the grid cell containing the i-th particle in the second direction of the grid map;

[0048] vc i This represents the velocity of the i-th particle in the first direction of the grid map;

[0049] VR i This represents the velocity of the i-th particle in the second direction of the grid map;

[0050] w i This represents the weight of the i-th particle;

[0051] N s This indicates the number of particles in the raster map.

[0052] In some embodiments, after the above operations are completed, steps S12 to S14 can be executed repeatedly. Each execution of steps S12, S13, and S14 in sequence constitutes one iteration.

[0053] Step S12: Propagate the particles in the grid map according to their speed, and calculate the occupancy probability of the grid in the grid map being occupied by the particles.

[0054] In some embodiments, if it is the first iteration, the particle is propagated in the grid map starting from its initial position according to its initial velocity; if it is an iteration after the first iteration, the particle can be propagated in the grid map according to the velocity and position of the particle when the previous iteration was completed.

[0055] In some embodiments, particles can be propagated in a grid map according to expressions (1) and (2):

[0056]

[0057]

[0058] Where T represents the transformation matrix of camera movement;

[0059] This represents the transformation matrix of the particle from time k to time k+1, where time k can be the starting point of an iteration and time k+1 can be the ending point of an iteration.

[0060] c′ and r′ can represent the coordinates of the particle in the grid map at time k;

[0061] c″ and r″ can represent the coordinates of the particle in the grid map at time k+1;

[0062] The above expressions (1) and (2) indicate that the particle moved from coordinate position (c′,r′) to coordinate position (c″,r″).

[0063] It is understandable that particles will be present in at least some of the grid cells of the raster map when particle propagation is complete. (See also...) Figure 2 This is a schematic diagram of particle distribution in a grid map at time k+1, provided as an embodiment of this application. Figure 2 Taking a particle in a gray grid as an example. The particle's weight represents the accuracy with which the particle moves to the gray grid at time k+1. A higher particle weight indicates a greater probability that an obstacle exists at the location of the gray grid at time k+1 in the actual environment surrounding the target vehicle, and a greater probability that the gray grid is occupied at time k+1. Conversely, a lower particle weight indicates a lower probability that an obstacle exists at the location of the gray grid at time k+1 in the actual environment surrounding the target vehicle, and a lower probability that the gray grid is occupied at time k+1. However, since the particle weight is initialized at the very beginning of the iteration according to a preset rule (i.e., ... The initial weights do not accurately reflect the accuracy of particle motion.

[0064] Therefore, the particle weights can be adjusted by combining the image around the target vehicle at time k+1. Specifically, at time k+1, an image around the target vehicle can be acquired, and obstacle and non-obstacle regions can be identified in the image. Then, based on the correspondence between the image and the grid map, obstacle and non-obstacle regions in the grid map can be determined, and the weights of each particle can be adjusted according to the region where each particle is located. Figure 2 Taking a gray grid as an example. If the gray grid is located in an obstacle region, the particle weights in the gray grid can be adjusted to higher weights, indicating a greater probability that the gray grid will be occupied at time k. Conversely, if the gray grid is located in a non-obstacle region, the particle weights in the gray grid can be adjusted to lower weights, indicating a lower probability that the gray grid will be occupied at time k. However, it is understandable that conventional techniques typically use methods such as semantic segmentation to identify obstacle and non-obstacle regions in an image. This estimation method itself has errors; that is, the obstacle and non-obstacle regions identified in the image may not be accurate, and consequently, the obstacle and non-obstacle regions determined in the grid map may also not be accurate. Furthermore, the adjusted particle weights cannot accurately reflect the accuracy of particle motion.

[0065] Therefore, this application proposes a method that combines particle weights in a raster with the image to calculate the occupancy probability of a raster in a raster map being occupied by particles. (See also...) Figure 3This is a flowchart illustrating a method for determining grid occupancy probability according to an embodiment of this application. The method for determining grid occupancy probability includes the following steps:

[0066] Step S31: Determine the target particle in the grid at time k, and based on the weight of the target particle at time k, predict the occupancy probability of the grid at time k.

[0067] In some embodiments, for each grid cell containing particles, step S31 can be performed separately to determine the predicted occupancy probability of each grid cell. Specifically, the weights of the target particles at time k can be summed, and the sum can be used as the predicted occupancy probability of the grid cell at time k, as shown in expression (3).

[0068]

[0069] in, This represents the predicted occupancy probability of the j-th grid at time k. Other relevant parameters can be found in the parameter descriptions of the grid set G and particle set S above, and will not be repeated here.

[0070] In some embodiments, summing the weights of the target particles at time k includes:

[0071] If the sum of the weights of the target particles at time k is greater than 1, the weights of the target particles at time k are normalized, and the normalized weights are summed.

[0072] If the sum of the weights of the target particles at time k is not greater than 1, then the weights of the target particles at time k are summed directly.

[0073] By normalizing the process, the impact of target particles with abnormal weights in the grid on the predicted occupancy probability can be reduced, resulting in a more accurate predicted occupancy probability.

[0074] Step S32: Collect images of the vehicle's surrounding environment at time k+1, and determine the observation occupancy probability of a grid cell in the grid map at time k+1 according to the correspondence between the image's pixels and the grid cells.

[0075] In some embodiments, determining the observation occupancy probability of a grid cell in a grid map at time k+1 includes:

[0076] Semantic segmentation is performed on the image to obtain the semantic segmentation value of each pixel. The semantic segmentation value represents the region type of the area where the pixel is located. The region type includes obstacle region and passable region.

[0077] Based on the correspondence between pixels and graticles, the target pixel corresponding to the graticle is determined, and the semantic segmentation value of the target pixel at time k+1 is used as the observation occupancy probability of the graticle.

[0078] In some embodiments, the intersection of the obstacle region and the passable region is defined as the edge of the obstacle region. For areas within a certain distance from the edge of the obstacle region, these areas may or may not be occupied by obstacles. To reduce data processing volume, areas within a certain distance from the edge of the obstacle region can be considered unknown regions. When generating particles in the obstacle region, particles can be generated in areas outside the unknown regions. This narrows the range of particle generation in the obstacle region, reduces the number of particles generated, and lowers the data processing volume. Specifically, when performing semantic segmentation on the image, the semantic segmentation value for non-unknown areas in the obstacle region can be set to 1, the semantic segmentation value for unknown areas can be set to 0.5, and the semantic segmentation value for the passable region can be set to 0. When generating particles, particles are generated in areas with a semantic segmentation value greater than 0.5.

[0079] Step S33: The predicted occupancy probability and the observed occupancy probability of the grid are fused to obtain the occupancy probability of the grid at time k+1.

[0080] In some embodiments, for each grid cell, the predicted occupancy probability and the observed occupancy probability of the grid cell can be fused based on expression (4) to obtain the occupancy probability of each grid cell.

[0081]

[0082] in, This represents the probability of the j-th grid cell being occupied at time k+1;

[0083] This represents the observation occupancy probability of the j-th grid at time k+1;

[0084] This represents the probability that the j-th grid cell is not occupied at time k+1;

[0085] This represents the predicted occupancy probability of the j-th grid cell at time k;

[0086] This represents the probability that the j-th grid cell is not occupied at time k;

[0087] Other parameters in expression (4) can be found in the parameter descriptions of the grid set G and particle set S above, and will not be repeated here.

[0088] Based on the above description, it is understandable that fusing the predicted occupancy probability and the observed occupancy probability of a grid results in a higher accuracy of the occupancy probability. For example, if the weights of particles in the grid are inaccurate, the observed occupancy probability can be used to correct the grid's occupancy probability; conversely, if the observed occupancy probability is not accurate enough, the predicted occupancy probability can be used to correct it, thereby improving the accuracy of the grid's occupancy probability.

[0089] Step S13: Update the weights of particles in the grid according to the grid occupancy probability, and determine the grid velocity based on the velocity of the particles in the grid and the updated weights.

[0090] In some embodiments, as described in step S12, since the grid occupancy probability integrates the observed occupancy probability and the predicted occupancy probability, the impact of inaccurate particle weights in the grid is reduced. Therefore, the particle weights in the grid can be corrected based on the more accurate grid occupancy probability, so that the particle weights are positively correlated with the grid occupancy probability. Specifically, the higher the grid occupancy probability, the greater the particle weights in the grid should be; conversely, the lower the grid occupancy probability, the smaller the particle weights should be. It is understood that for particles in the same grid, the motion state of all particles in that grid should be the same, i.e., they all move to the same position at the same time. Therefore, the weights of these particles should also be the same.

[0091] Specifically, the weights of particles in the grid can be updated based on expression (5):

[0092]

[0093] in, This represents the weight of the i-th particle at time k+1. This represents the probability of the j-th grid cell containing the i-th particle being occupied at time k+1. Let represent the probability of the j-th grid cell containing the i-th particle being occupied at time k. This represents the weight of the i-th particle at time k.

[0094] In some embodiments, the grid velocity is used to reflect the overall velocity of all particles in the grid. Specifically, the grid velocity can be determined based on expression (6):

[0095]

[0096] The relevant parameters can be found in the parameter descriptions of the grid set G and particle set S mentioned above, and will not be repeated here.

[0097] Step S14: Cluster adjacent grids whose speed differences are within a preset range, wherein the position and speed of each adjacent grid in each cluster define the position and speed of an obstacle.

[0098] In some embodiments, if the velocity between any two grids is within a preset difference range and the distance between the two grids is within a distance threshold range, then these two grids can be called adjacent grids. These two grids can be classified into the same type of grid. Adjacent grids can be clustered using conventional clustering methods, which will not be elaborated here.

[0099] It's understandable that for any class of adjacent grid cells, if the cells within that class have similar velocities and are geographically close, then these cells can be considered to be occupied by the same obstacle. The location of these cells corresponds to the location of the same obstacle. The velocities of these cells can define the velocity of an obstacle. For example, the average of the velocities of these cells can be used as the velocity of the obstacle. (See also...) Figure 2 If adjacent grid cells within the dashed box are of the same type, then it can be indicated that there is an obstacle at the location of the dashed box, and the speed of the obstacle can be obtained based on the speeds of these grid cells.

[0100] In some embodiments, based on the occupancy probability of a grid at time k+1, the weights of particles in the grid can be updated to obtain the particle weights at time k+1. Then, based on the velocity of the particles in the grid and their weights at time k+1, the velocity of the grid at time k+1 can be determined. Furthermore, the grid can be clustered based on its velocity at time k+1 to identify obstacles in the grid map at time k+1. This completes one iteration. Then, using time k+1 as the starting time for the next iteration, steps S12 to S14 are executed to calculate the next iteration and determine the obstacles in the grid map at time k+2.

[0101] In some embodiments, before proceeding to the next iteration, particles with weights below a weight threshold can be deleted from the current particles in the raster map, and new particles can be generated in the raster map. Then, the new particles and the remaining particles are propagated in the raster map according to their velocity. Particles with weights below the weight threshold can represent particles whose motion is inaccurate; that is, the positions these particles reach at various times may not reflect the actual locations of obstacles in the environment surrounding the target vehicle. These particles cannot accurately reflect the obstacles in the actual environment surrounding the target vehicle and can therefore be deleted. Newly generated particles in the raster map can represent newly entered obstacles in the environment surrounding the target vehicle.

[0102] In some embodiments, generating new particles in a grid map may include: randomly generating new particles in obstacle regions of the grid map. For any new particle generated in a grid, the weights of these new particles can be initialized according to the weights of existing particles in that grid to ensure that particles in the same grid have the same weights. If a grid contains only new particles (i.e., no undeleted particles left over from the previous iteration), the weights of these new particles can be initialized to... (N s (This represents the current total number of particles in the raster map).

[0103] Understandably, in the method of this application, as the number of iterations increases, the particle weights in the grid map, after multiple corrections, can gradually become more accurate. This means it can accurately reflect the actual obstacle positions and speeds in the environment surrounding the target vehicle.

[0104] In some embodiments of this application, particles are generated in a grid map, assigned velocity and weight, and allowed to propagate through the grid map. The particle weights are updated based on the occupancy probability of a grid cell, and the grid cells are clustered to determine obstacles in the environment surrounding the target vehicle. This method detects obstacles through particle propagation, eliminating the need for depth estimation based on neural networks. This avoids the constraints of training data and platform computing power, resulting in more stable detection performance and higher accuracy in estimating obstacle motion states. Consequently, autonomous vehicles can accurately estimate the motion states of surrounding obstacles, better plan their movement, improve autonomous driving safety, and reduce traffic accidents.

[0105] Please see Figure 4 This is a schematic diagram of an obstacle estimation device provided in one embodiment of this application. The obstacle estimation device includes:

[0106] The particle generation module is used to generate particles in a grid map representing the environment around the vehicle. The particles have velocity and weight, and the weight is proportional to the accuracy of the particle motion.

[0107] The particle propagation module is used to propagate particles in the grid map according to their speed and calculate the occupancy probability of a grid cell in the grid map being occupied by a particle.

[0108] The weight update module updates the weights of particles in a grid based on the grid's occupancy probability, and determines the grid's velocity based on the particles' velocities and the updated weights; and

[0109] The obstacle estimation module is used to cluster adjacent grids whose velocity differences are within a threshold range, wherein the position and velocity of each adjacent grid in each cluster define the position and velocity of an obstacle.

[0110] Please see Figure 5 The diagram below illustrates an electronic device according to an embodiment of this application. The electronic device includes a processor and a memory, the memory storing a computer program that, when executed by the processor, implements the aforementioned method for estimating the motion state of obstacles.

[0111] The processor can be a central processing unit (CPU). It can also be other general-purpose processors, digital signal processors (DSPs), application-specific integrated circuits (ASICs), field-programmable gate arrays (FPGAs), or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, or combinations thereof.

[0112] Memory, as a non-transitory computer-readable storage medium, can be used to store non-transitory software programs, non-transitory computer-executable programs, and modules, such as the program instructions / modules corresponding to the methods in the embodiments of this invention. The processor executes various functional applications and data processing by running the non-transitory software programs, instructions, and modules stored in the memory, thereby implementing the methods described in the above embodiments.

[0113] The memory may include a program storage area and a data storage area. The program storage area may store the operating system and applications required for at least one function; the data storage area may store data created by the processor, etc. Furthermore, the memory may include high-speed random access memory and non-transitory memory, such as at least one disk storage device, flash memory device, or other non-transitory solid-state storage device. In some embodiments, the memory may optionally include memory remotely located relative to the processor, which can be connected to the processor via a network. Examples of such networks include, but are not limited to, the Internet, corporate intranets, local area networks, mobile communication networks, and combinations thereof.

[0114] One embodiment of this application also provides a computer-readable storage medium for storing a computer program that, when executed by a processor, implements the above-described method for estimating the motion state of obstacles.

[0115] Although embodiments of the invention have been described in conjunction with the accompanying drawings, those skilled in the art can make various modifications and variations without departing from the spirit and scope of the invention, and such modifications and variations all fall within the scope defined by the appended claims.

Claims

1. A method for estimating the motion state of an obstacle, characterized in that, The method includes: Particles are generated in a grid map representing the environment around the target vehicle. The particles have velocity and weight, and the weight is used to reflect the accuracy of the particle's motion and is proportional to the accuracy of the particle's motion. According to the speed of the particle, the particle propagates in the grid map, and the occupancy probability of the grid in the grid map being occupied by the particle is calculated; The weights of particles in the grid are updated based on the occupancy probability of the grid, and the velocity of the grid is determined based on the velocity of the particles in the grid and the updated weights; and Cluster adjacent grids whose speed differences are within a preset range, where the position and speed of each adjacent grid in each cluster define the position and speed of an obstacle. The calculation of the occupancy probability of a grid cell in the grid map being occupied by the particle includes: Identify the target particle in the grid at time k, and based on the weight of the target particle at time k, predict the predicted occupancy probability of the grid at time k. The image of the environment surrounding the target vehicle at time k+1 is acquired, and the observation occupancy probability of the grid in the grid map at time k+1 is determined according to the correspondence between the pixels of the image and the grid. The predicted occupancy probability and the observed occupancy probability of the grid are fused to obtain the occupancy probability of the grid at time k+1; The step of determining the observation occupancy probability of a grid cell in the grid map at time k+1 based on the correspondence between the pixels of the image and the grid cells includes: The image is semantically segmented to obtain semantic segmentation values ​​for each pixel. The semantic segmentation values ​​represent the region type of the area where the pixel is located, and the region type includes obstacle areas and passable areas. Based on the correspondence between the pixels and the grid, the target pixel corresponding to the grid is determined, and the semantic segmentation value of the target pixel at time k+1 is used as the observation occupancy probability of the grid.

2. The method as described in claim 1, characterized in that, The step of predicting the occupancy probability of the grid at time k based on the weight of the target particle at time k includes: The weights of the target particles at time k are summed, and the sum is used as the predicted occupancy probability of the grid at time k.

3. The method as described in claim 2, characterized in that, The step of summing the weights of the target particles at time k includes: If the sum of the weights of the target particles at time k is greater than 1, the weights of the target particles at time k are normalized, and the normalized weights are summed. If the sum of the weights of the target particles at time k is not greater than 1, then the weights of the target particles at time k are summed directly.

4. The method as described in claim 1, characterized in that, The weights of the particles in the grid are updated based on the following expression: in, This represents the weight of the i-th particle at time k+1. This represents the probability of the j-th grid cell containing the i-th particle being occupied at time k+1. Let represent the probability of the j-th grid cell containing the i-th particle being occupied at time k. This represents the weight of the i-th particle at time k.

5. The method as described in claim 1, characterized in that, The speed of the grid is determined based on the following expression: in, This represents the velocity of the i-th particle in the first direction of the grid map. This represents the velocity of the i-th particle in the second direction of the grid map. Represents a set of particles. This represents the coordinates of the grid cell containing the i-th particle along the first direction of the grid map. This represents the coordinates of the j-th cell in the first direction of the raster map. This represents the coordinates of the grid cell containing the i-th particle in the second direction of the grid map. This represents the coordinates of the j-th cell in the second direction of the raster map. Let m represent the velocity of the j-th grid cell in the first direction of the grid map. This represents the velocity of the j-th grid cell in the second direction of the grid map. This represents the weight of the i-th particle.

6. The method as described in claim 1, characterized in that, The propagation of the particles in the grid map according to the particle's velocity includes: In the current particles of the grid map, delete particles with weights lower than the weight threshold, and generate new particles in the grid map; The new particles and the undeleted particles are propagated in the grid map according to the speed of the particles.

7. The method as described in claim 1, characterized in that, The generation of particles in a grid map characterizing the environment surrounding the target vehicle includes: Images of the environment surrounding the target vehicle are acquired, and semantic segmentation is performed on the images to determine the obstacle regions in the images; Based on the correspondence between the image and the grid map, obstacle regions are determined in the grid map, and the particles are generated in the obstacle regions of the grid map.

8. An obstacle estimation device, characterized in that, The device includes: A particle generation module is used to generate particles in a grid map representing the environment around a target vehicle. The particles have velocity and weight, and the weight is used to determine the accuracy of the particle motion and is proportional to the accuracy of the particle motion. A particle propagation module is used to propagate the particles in the grid map according to their velocity, and calculate the occupancy probability of a grid cell in the grid map being occupied by the particles. Specifically, it identifies the target particle in the grid cell at time k, and predicts the predicted occupancy probability of the grid cell at time k based on the weight of the target particle at time k; it acquires an image of the environment surrounding the target vehicle at time k+1, and determines the observed occupancy probability of the grid cell in the grid map at time k+1 according to the correspondence between the pixels of the image and the grid cell; and it performs a cross-sectional analysis on the predicted occupancy probability and the observed occupancy probability of the grid cell. The fusion process yields the occupancy probability of the grid at time k+1; wherein, determining the observation occupancy probability of the grid in the grid map at time k+1 according to the correspondence between the pixels of the image and the grid includes: performing semantic segmentation on the image to obtain semantic segmentation values ​​for each pixel, the semantic segmentation values ​​representing the region type of the area where the pixel is located, the region type including obstacle areas and passage areas; determining the target pixel corresponding to the grid according to the correspondence between the pixels and the grid, and using the semantic segmentation value of the target pixel at time k+1 as the observation occupancy probability of the grid; A weight update module is used to update the weights of particles in the grid according to the occupancy probability of the grid, and to determine the velocity of the grid based on the velocity of the particles in the grid and the updated weights; and The obstacle estimation module is used to cluster adjacent grids whose velocity differences are within a threshold range, wherein the position and velocity of each adjacent grid in each cluster define the position and velocity of an obstacle.

9. A computer-readable storage medium, characterized in that, The computer-readable storage medium is used to store a computer program that, when executed by a processor, implements the method as described in any one of claims 1 to 7.

10. An electronic device, characterized in that, The electronic device includes a processor and a memory, the memory being used to store a computer program that, when executed by the processor, implements the method as described in any one of claims 1 to 7.

Citation Information

Patent Citations

  • Obstacle detection method and system based on motion grid, and intelligent terminal

    CN113657205A

  • Dynamic occupancy grid estimation method and device

    CN114419573A

  • Device, system, and method for generating occupancy grid map

    US20220215673A1