Method for obtaining a data grid containing data representing a dynamically rendered scene, and corresponding apparatus and program

By combining grid-based and particle-based models for dynamic scene tracking, the method enhances the accuracy and reliability of environment modeling in autonomous systems, addressing computational inefficiencies and information loss in occupancy grids.

JP2025538796APending Publication Date: 2025-11-28INST NAT DE RECHERCHE & INFORMATIC & ON OTOMATIC
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
JP2025533456
Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Priority Date
2022-12-09
Filing Date
2023-11-10
Publication Date
2025-11-28

AI Technical Summary

Technical Problem

Existing methods for environment modeling in autonomous agents, such as robots and autonomous vehicles, fail to accurately and efficiently track dynamic scenes due to high computational costs and issues with preserving dynamic elements in occupancy grids, leading to information loss and reduced accuracy.

Method used

A method that combines grid-based and particle-based models to separately predict and fuse static and dynamic states and velocities, using a state grid tracker to maintain dynamic object tracking even without new sensor data, allowing asynchronous updates and higher update frequencies.

Benefits of technology

Improves the accuracy and duration of forecasts by decoupling sensor update frequency and maintaining dynamic object tracking, ensuring smoother filtering and more reliable data integration, even in the absence of sensor data.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2025538796000001_ABST
    Figure 2025538796000001_ABST
Patent Text Reader

Abstract

[Solution] A method for obtaining a grid of data representative of a dynamically represented scene, called a state grid, wherein the state grid is divided into a plurality of cells, the method being implemented by a computer module for processing data from at least one sensor, the method comprising at least one iteration of: - updating a probability distribution of a static characterization grid characterizing the scene as a function of at least one static state associated with at least one cell of the static grid according to a static model (A10); - updating a probability distribution of a dynamic characterization grid characterizing the scene as a function of at least one particle associated with at least one cell of the dynamic grid according to a dynamic model (A20); - fusing the probability distribution of the static grid and the probability distribution of the dynamic grid in the resulting state grid to provide a state prediction and a velocity prediction for each cell (A30); and - for at least one cell of the resulting state grid, evaluating the probability of a final state and associated velocity as a function of the state prediction and the velocity prediction and any data received from the at least one sensor (A40).
Need to check novelty before this filing date? Find Prior Art

Description

[Technical Field]

[0001] The present invention relates to the field of computer vision devices and autonomous machines in general that interact with their environment, such as robots and autonomous vehicles. For these machines, the ability to accurately perceive and model their environment in an appropriate format is an essential task. Whether it's navigation, collision recognition, intention planning, or mapping, this perception stage poses challenges in terms of accuracy, complexity, and uncertainty management.

[0002] More specifically, the present invention relates to a general-purpose dynamic state grid tracker and corresponding method for filtering cell states and inferring the dynamics of a scene captured by one or more sensors through the interaction of a static grid-based model and a dynamic particle-based model. [Background technology]

[0003] Despite the remarkable development of onboard intelligence in mobile machines and their ever-improving performance, the ability of autonomous agents to accurately, robustly, and efficiently perceive their environment remains a major challenge in robotics. The quality of the environment modeling depends not only on sensors but also on interpretation schemas that deal with sensor errors, occlusions, data inconsistencies, highly complex parameters, etc. Probabilistic methods have been developed to formally model the uncertainty and prior knowledge in these interpretation schemas.

[0004] Such interpretation schemes present further challenges when faced with multiple moving objects. The classic approach to this problem is to employ object-based representations, which involve tracking multiple objects. Another popular approach is the field of occupancy grids, which handle spatial occupancy without higher-level segmentation. This approach has significant advantages, including the ability to correctly represent free space, a key data type in mobile robotics, and to generate spatially dense models. Furthermore, it avoids the crucial steps of data segmentation and data recognition required by object-based representations. When applied to dynamic environments, it is generally necessary to deepen this representation by estimating velocity information.

[0005] Techniques designed specifically for specific sensors can derive velocity from sensor measurements. However, a more general approach is often required. The Bayesian Occupancy Filter (BOF) is a general Bayesian framework that updates a dynamic occupancy grid by filtering the occupancy and velocity of each cell in parallel. The observation model is incorporated in the form of an instantaneous occupancy grid, which is generated by mapping sensor data onto the grid using a probabilistic sensor model. A Bayesian filtering technique based on a prediction-correction loop is used to filter the distribution of each cell using a neighborhood transition histogram. This specialized design for motion discretization is practical for modeling cell evolution, but it suffers from high computational cost and aliasing issues.

[0006] To reduce the dimensionality of the motion field, it is possible to use existing mapping data, or more generally, motion distribution sampling methods where the histogram for each cell is mostly empty. Adaptive sampling methods can significantly reduce the dimensionality of the motion representation, since most cells, such as empty or static cells, do not require elaborate representation. Some processes use a variable number of samples per cell as a function of the estimated occupancy. The scene is represented by a collection of moving (fictitious) particles with non-discretized positions and values, which corrects most aliasing problems.

[0007] Hybrid approaches also exist, thus making it possible to implement an interplay between grid-based and object-based representations. More recently, systems designed to accurately solve the problem of tracking multiple objects in occupancy grids have been proposed using different mathematical frameworks, approaches using random finite sets and filters for confidence functions.

[0008] As disclosed in French Patent Application Publication FR3022049A1, the hybrid sampling Bayesian occupancy filter modifies the BOF structure and analyzes the scene according to a static-dynamic duality. The static part is the occupancy grid, while the dynamic field is transmitted by (fictitious) particles moving within the occupancy grid. These two sections are jointly generated and evaluated, and the distribution over the cells is adjusted. This filter enables more efficient computation by concentrating velocity calculations on the dynamic elements, providing a more compact model and dramatically improving the accuracy of the system. Furthermore, based on the approach disclosed in French Patent Application Publication FR3022049A1, it is proposed to introduce formal states into the filtering process, representing static occupancy, dynamic occupancy, empty regions, and unknown regions. These formal states clarify the overall representation of the algorithm (transitions, initialization, etc.), while the unknown states allow for specific processing and particle concentration on the relevant dynamic regions. The filtered low-level representation can be used directly for mapping, but a simplified analysis is possible because a rapid dynamic occupancy clustering method, short-term risk assessment, is directly integrated into the process.

[0009] However, this development, like the previous approach of French Patent Application Publication No. FR3022049A1, has the drawback of not preserving grid-managed elements, especially dynamic elements. More specifically, in the stochastic calculations performed, each premise contribution (contribution from the occupancy grid and contribution from the particles) is integrated independently, so that the "dynamic" occupancy predicted by the particles is systematically reduced by the grid-based prediction of free or undefined space. In other words, the free space of the occupancy grid is systematically incorporated into the prediction, especially the particle-based prediction, reducing the weight of the "particle" prediction.

[0010] Therefore, there is a need to provide a solution that can solve this problem. Summary of the Invention [Problem to be solved by the invention]

[0011] The present invention has been developed with these problems of the prior art in mind. More particularly, the present invention relates to a method for obtaining a grid of data representative of a dynamically represented scene, called a state grid, said state grid being divided into a plurality of cells, said method being implemented by a computer module for processing data from at least one sensor, said method comprising: - updating a probability distribution of a static characterization grid characterizing said scene as a function of at least one static state associated with at least one cell of the static grid according to a static model; - updating a probability distribution of a dynamic characterization grid characterizing said scene as a function of at least one particle associated with at least one cell of the dynamic grid according to a dynamic model; - fusing the probability distributions of the static grid and the dynamic grid in the resulting state grid to provide state and speed predictions for each cell; - for at least one cell of the resulting state grid, evaluating a probability of a final state and associated velocity as a function of the state prediction and the velocity prediction and any data received from the at least one sensor; The nucleotide sequence includes at least one repeat of

[0012] According to a particular feature, the step of fusing the probability distributions comprises, for a given cell of the resulting state grid, integrating a probability P(S p V p |S g p V g p S p p V p p ), where: -S p : the predicted state of the given cell at the current time step; -V p: the predicted velocity of the given cell at the current time step; -S g p : the predicted state of the given cell at the current time step as predicted by the static model; -V g p : the predicted velocity of the given cell at the current time step as predicted by the static model; -S p p : the predicted state of the given cell at the current time step as predicted by the dynamic model; -V p p : The predicted velocity of the given cell at the current time step as predicted by the dynamic model.

[0013] According to a particular feature, the step of evaluating the probability of the final state and the associated velocity comprises, for a given cell of the resulting state grid, evaluating a probability P(SV|S p V p S o V o ), where: - S: the state of the given cell at the current time step; - V: velocity of the given cell at the current time step; -S p : the predicted state of the given cell at the current time step; -V p : the predicted velocity of the given cell at the current time step; -S o : the observed state of the given cell at the current time step; -V o : The observed velocity of the given cell at the current time step.

[0014] According to a particular feature, the updating step comprises: - dynamically projecting particles as a function of velocity; - applying a state correction to the static model; - state transition steps as a function of each model; - the step to move as a function of the reference frame shift Includes.

[0015] According to a particular feature, the step of evaluating is followed by a step of resampling the particles in the dynamic model.

[0016] According to a particular feature, the step of resampling the particles comprises: - repositioning the particles as a function of the dynamic probability of each grid cell; a particle generation step that generates particles as a function of the previous assignments of particles and the contributions of these previously assigned particles to the dynamic model; Includes.

[0017] According to a particular feature, the evaluation step uses an observation grid, said observation grid comprising data from said at least one sensor.

[0018] According to another aspect, the invention also relates to a module for obtaining a grid of data representative of a dynamically represented scene, called a state grid, said state grid being divided into a plurality of cells, said module being implemented by a computer module for processing data from at least one sensor, said module comprising: - updating a probability distribution of a static characterization grid characterizing said scene as a function of at least one static state associated with at least one cell of the static grid according to a static model; - updating a probability distribution of a dynamic characterization grid characterizing said scene as a function of at least one particle associated with at least one cell of the dynamic grid according to a dynamic model; - fusing the probability distributions of the static grid and the dynamic grid in the resulting state grid to provide state and speed predictions for each cell; - for at least one cell of the resulting state grid, evaluating a probability of a final state and associated velocity as a function of the state prediction and the velocity prediction and any data received from the at least one sensor; It includes an iterative calculation means for performing

[0019] According to a preferred embodiment, the different steps of the method according to the present disclosure are implemented by one or more software programs or computer programs intended to be executed by a data processor of an apparatus for processing an occupancy grid according to the present invention and comprising software instructions designed to control the execution of the different steps of the method implemented at the level of the processing device, remote server and / or distributed system, within the framework of the distribution of the processing operations to be performed, determined by scripted source code or compiled code.

[0020] Consequently, the invention also relates to programs executable by a computer or data processor, these programs comprising instructions for controlling the execution of the steps of the method as described above.

[0021] The program may use any programming language and may be in the form of source code, object code, or an intermediate code between source code and object code, such as a partially compiled form, or any other desired form.

[0022] The invention also relates to an information carrier readable by a data processor and containing the instructions of a program such as the one described above.

[0023] The information carrier may be any entity or terminal capable of storing a program. For example, this carrier may include a storage medium, such as a ROM, for example a CD ROM or a microelectronic circuit ROM, or a magnetic recording medium, for example a mobile carrier (memory card) or a hard disk or SSD.

[0024] Furthermore, the information carrier may be a transmissible carrier such as an electrical or optical signal, which may be transmitted via electrical or optical cable, by radio or by other means. In particular, the program according to the invention may be downloaded from an Internet-type network.

[0025] Alternatively, the information carrier may be an integrated circuit in which the program is embedded, the circuit being adapted to perform, or to be used in the performance of, the method in question.

[0026] According to one embodiment, the invention is implemented by means of software and / or hardware elements, and in this sense the term "module" as used herein can correspond to a software element as well as to a hardware element or a combination of hardware and software elements.

[0027] A software element corresponds to one or more computer programs, one or more subprograms of a program, or more generally, any element of a program or software program that can implement a function or a set of functions, in accordance with the description below of the module in question. Such a software element is executed by a data processor of a physical entity (terminal, server, gateway, set-top box, router, etc.) and likely has access to the hardware resources of this physical entity (memory, storage media, communication buses, electronic input / output cards, user interfaces, etc.). This makes it possible to distribute a set of calculations, to execute them in parallel, or to exchange calculations or parameters between different devices (e.g., different media that execute the calculations with each other).

[0028] Similarly, a hardware element corresponds to any element of a hardware set capable of implementing a function or a set of functions in accordance with the description below of the module in question, this being a programmable hardware element or a hardware element incorporating a processor for executing software, such as an integrated circuit, a chip card, a memory card, an electronic card for executing firmware, etc.

[0029] Each element of the aforementioned system naturally implements its own software module.

[0030] The various embodiments described above can be combined with each other to implement the present invention.

[0031] Other objects, features and advantages of the present invention will become more apparent from a reading of the following description taken in conjunction with the drawings, which are given by way of example only and are not limiting. [Brief explanation of the drawings]

[0032] [Figure 1] This shows a Bayesian network that represents the dependency of variables. The occupancy rate O can be inferred from the state S. [Figure 2] 1 shows the steps of the occupancy grid and particle prediction model. [Figure 3] 1 shows an overview of the steps performed in a method according to the invention; [Figure 4] 1 shows a simplified physical architecture of an occupied grid processing unit. DETAILED DESCRIPTION OF THE INVENTION

[0033] (1. Review of the principles) It should be noted that the goal of the technique known as the "Bayesian occupancy filter," to which the proposed invention pertains, is to estimate the spatial occupancy and dynamics of an environment observed using different types of sensors. To this end, the space is divided into spatial cells, each associated with a random variable. The probability distribution of these random variables is recursively estimated and used as a basis for interpreting the scene. For example, the formal probabilistic model used in French patent application FR3022049A1, incorporating its formalism, can be considered similar: despite differences in the decomposition of the joint distribution and the parametric representation, the main improvements lie not in the model equations, but in the static / dynamic distinction, differential representation, and equation solution method. Later work introduced changes to the model and calculation: instead of directly filtering the occupancy, a hidden state representing what is present in the cell (s = "occupied by static objects," d = "occupied by dynamic objects," e = "empty," and u = "unknown") was added (a variable with four possible states, although other states are also possible). The cell occupancy distribution can then be inferred from these hidden states. In addition to providing a clearer distinction between static and dynamic parts, the main point of this modification was to introduce a specific treatment for regions with no data, excluding them from the rate estimation and disabling their temporal persistence. However, as explained, this model is suboptimal in that it is unable to preserve the evolution of predictions from the dynamic model over time, resulting in a large information loss, especially for cells known as empty cells.

[0034] For this reason in particular, we determined a new model that combines (on completion) the predictions of the static and dynamic models, preserving the cell occupancy dynamics over time and allowing a better memory of the cell dynamics.

[0035] In this model, as explained below, grid-based (static) and particle-based (dynamic) predictions are kept separate and combined to manage different cases for the final prediction (associated with the cell). In this way, the ability to track dynamic objects over time is maintained even when no new observations are available for that object. The grid on which iterations are performed and to which the application is relevant is a "semantic" occupancy grid, which includes states that are considered broader than simple (binary) occupancies. This is also called a state grid.

[0036] Therefore, in this new model, and in the implementations of the same model that are the subject of this application, as well as in the versions of the equations associated with the same model, intermediate variables are added for the predicted state, the predicted velocity, the observed state, and the observed velocity. Specific variables are defined for the predicted state and predicted velocity of each model (variables for the grid-only based prediction, variables for the particle model based prediction), and the predicted state and predicted velocity variables are, according to the invention, the result of the fusion of these two predictions that are generated independently of each other.

[0037] These two models are configured to represent different parts of the captured scene and optimize particle allocation only to the relevant regions, whose predictions are fused with those relevant to the (static) grid.The use of hidden variables in the filtering process makes it possible, for example, to manage inconsistent state predictions or asynchronous sensors (e.g., when sensors send data at a lower frequency than the frequency of the filtering module).

[0038] The formalism used in this description comes from the Bayesian programming framework. Given a set of random variables, a representation of their joint probability decomposition, the desired distribution, can be expressed as follows: Specific variables are defined for each model (grid-based predictors, particle-based predictors), and the predicted states and velocities are the result of fusing these fused predictions with the observed states. While only state occupancy and dynamics data are discussed below, each considered state variable can contain various semantic information about the cell (e.g., type of obstacle, type of navigable space, etc.).

[0039] (1.1 Definition of variables) In relation to the implementation of the present invention, the variables implemented in the model are as follows: - C 0 : an index that identifies each 2D cell; - C g -1 : an index to identify each predecessor cell, used for "static" grid-based models; - C p -1 : an index to identify each preceding cell, used for "dynamic" particle-based models; - S: the state of the cell at the current time step. Possible states include, for example, "s" occupied by a static object, "d" occupied by a dynamic object, "e" empty, and "u" undefined; - V: Cell velocity at the current time step, in R units 2 ; -S g -1 : the state of the preceding cell at the previous moment according to a "static" (grid-based) model; -V g -1 : the velocity of the preceding cell at the previous moment according to the "static" model; -S p -1 : the state of the preceding cell at the previous moment according to a "dynamic" (i.e. particle-based) model; -V p-1 : the velocity of the preceding cell at the previous moment according to a "dynamic" model; -S g p : The predicted state of the cell at the current time step, as predicted by the "static" model. Possible states include, for example, "'s' occupied by a static object," "'d' occupied by a dynamic object," "empty 'e'," and "undefined 'u'"; -V g p : predicted velocity of the cell at the current time step, as predicted by the "static" model, in units of R 2 ; -S p p : The predicted state of the cell at the current time step, as predicted by the "dynamic" model. Possible states include, for example, "'s' occupied by a static object," "'d' occupied by a dynamic object," "empty 'e'," and "undefined 'u'"; -V p p : predicted velocity of the cell at the current time step, as predicted by the "dynamic" model, in units of R 2 ; -S p : The predicted state of the cell at the current time step. Possible states include, for example, "'s' occupied by a static object", "'d' occupied by a dynamic object", "'empty' 'e'", and "'undefined' 'u'"; -V p : predicted speed of the cell at the current time step, in units of R 2 ; -S o : The observed state of the cell at the current time step. Possible states include, for example, occupied 'o', empty 'e', ​​and undefined 'u'; -V o : The observed velocity of the cell at the current time step, in units of R 2 ; - Z: sensor measurement; - O: Cell occupancy at the current time step. Possible values ​​are {occ,emp}. Not used directly in inference, but defined later for application and comparison with other methods.

[0040] The possible states are not limited to those shown here. For example, it is possible to implement more precise and more numerous states, such as "occupied by cooperative pedestrians," "occupied by uncooperative pedestrians," "recognizing / not recognizing the presence of autonomous entities (vehicles, robots)," etc.

[0041] (1.2 Joint Probability Distribution) A Bayesian network illustrating the dependencies of these variables is shown in Figure 1. As can be seen, unlike prior art (especially HBOF), the scene dynamics (p, dynamic) and statics (g, static) are evaluated separately and in different ways for a given cell C in a given iteration. Thus, the static and dynamic evaluations are considered separately from previous iterations before being combined and blended with probabilistic information from one or more sensors.

[0042] Overall, the probability distribution can be expressed as:

number

[0043] Each expression can be interpreted as follows: - P(C g -1 ) is the distribution over all possible antecedents of a (grid, static) cell. It is chosen uniformly, since a cell is considered to be accessible with equal probability from all possible antecedents; - P(S g -1 V g -1 |C g -1 ) is a conditional joint distribution over the states and rates of the antecedents. This distribution is updated at each time step (each iteration); - P(S g p V g p |S g -1 V g -1 ) is a predictive model based on a "static" grid-based model. State and velocity are two sides of the same coin, as the definition of state is directly linked to velocity. The static part has zero velocity, while the free, undefined part has no associated velocity;

[0044] - P(C p -1 ) is the distribution over all possible antecedents of a (particle, dynamic) cell. It is chosen uniformly, since a cell is considered to be accessible with equal probability from all possible antecedents; - P(S p -1 V p -1 |C p -1 ) is a conditional joint distribution on the rates of the states and antecedents. This distribution is updated at each time step;

[0045] - P(S p p V p p |S p -1 V p -1 ) is a "dynamic" particle-based model of prediction. State and velocity are two sides of the same coin, since the definition of state is directly linked to velocity. Static parts have zero velocity, and free, undefined parts have no associated velocity; - P(C|C g -1 V g p C p -1 V p p ) is the cell c's antecedent [C g -1 ] to velocity [V g p =v g p], precedent C p -1 to velocity [Vp p =v p p ] is a distribution that indicates whether a point is reachable by g -1 x+v g p δt∈c and c d -1 x+v d p Only if δt∈c does it become a product of two Dirac distributions, one of which has a value equal to 1. This allows the method to focus only on the data projected by the two models of cell c, reducing the computational load;

[0046] - P(S p V p |S g p V g p S p p V p p ) is a predictive fusion model. State and velocity are two sides of the same coin, since the definition of state is directly linked to velocity. Static parts have zero velocity, and free, undefined parts have no associated velocity; - P(Z) is the probability of a given observation Z. In this model, Z is the same coefficient for each supplied potential S and V, so its value is not necessarily important.

[0047] - P(S o V o |ZC) is the inverse distribution of the sensor model, which is a distribution calculated by other modules and given directly; - P(SV|S p V p S o V o ) is the probability of the SV (state / velocity) pair given the predicted and observed states, allowing for interaction between predictions and observations. A generator matrix or a more complex formula can be used.

[0048] (1.3 Symbolic representation of the solved problem) The goal of Bayesian filtering is to estimate the state and velocity of each cell relative to the current observation: P(SV|ZC). In the system, filtering is applied to the hidden state, and this state is inferred. Let O be the set of all variables:

number

number

number

number

[0049] (2. Explanation of the model answer example) Based on this model and its characteristics, the solution method according to the present invention is implemented, which mainly includes three steps (prediction, fusion evaluation, and particle resampling) and is described below.

[0050] (2.1 Model Implementation) As explained in the variable definition, the system consists of two interconnected models: a "static" (grid-based) model and a "dynamic" (particle-based) model. In addition to semantic data, the potential state can be, for example: - "Occupied by static objects" state(s), which means non-moving occupation, and includes not only strictly static objects but also background data (e.g. buildings). - "Occupied by a dynamic object" state (d), which means dynamic occupation. - "Empty" state (e), which corresponds to free space. - "Undefined" state (u), which is a state used to mean the lack of information and the lack of confidence in other states.

[0051] Of course, other states can also be defined (e.g., "occupied by pedestrians," "occupied by vehicles," "occupied by bicycles," etc.), particularly as a function of the data provided by the sensors.

[0052] The static model includes a state grid (occupancy grid), where each cell encodes its state distribution. Elements estimated by the filter as static are represented in this cell grid. The dynamic model consists of a collection of moving particles, each with its actual position and velocity and a "weight" corresponding to the probability that the cell to which it (this particle) is estimated is occupied by a dynamic object with this state and these dynamics. Since only the occupancy and dynamic parts of the state are described in detail here, all particles have the same (dynamic) state, but more generally, they can also have associated semantic states (e.g., cars, pedestrians). More specifically, at each iteration of the filter (e.g., each time step), the two models are used independently for prediction, then fused, jointly evaluated, and finally segmented again. Different types of states are considered, some corresponding to occupied cells (e.g., pedestrians, cars, buildings), others to empty cells (e.g., roads, sidewalks), each of which can have a specific motion model.

[0053] Thus, in the dynamic model, each particle has a real position, a real velocity, and a "weight". This weight represents the probability that the cell (to which the particle is estimated to belong) is occupied by a dynamic object with this state and this dynamics. The elements estimated by the filter as dynamic are represented by the dynamic model (moving objects). The particles are distributed on a cell grid, the dimensions of which are identical to the grid of the static model. At each iteration, the two grids (two models) are updated independently of each other and then merged to provide the "final" grid.

[0054] Figure 2 shows the general method implemented in the device to process the occupancy grid. Based on the current occupancy grid, the method includes: - a step (A10) of updating the static model, comprising determining a prediction of the state and speed of at least one cell of the current occupancy grid as a function of the probability of the static model determined in the previous iteration, providing a prediction of the static model at [time step t+1]; - a step (A20) of updating the dynamic model, comprising determining a prediction of the state and velocity of at least one fictitious particle of the current occupancy grid as a function of the probabilities of the dynamic model determined in the previous iteration, providing a prediction of the dynamic model at [time step t+1]; - fusing the predicted values ​​of the static model and the predicted values ​​of the dynamic model according to a predetermined fusion pattern (A30); - Evaluating the fused prediction as a function of any observation data from at least one sensor, for example a probabilistic sensor (A40).

[0055] The advantage of this solution is that the final prediction can be updated without data from the sensors: the grid processing can be performed independently of the receipt of data from the sensors. For example, the module implementing the method of the present invention can perform "asynchronous" updates at a frequency of 100 Hz; the sensors can send data at a frequency of 20 Hz, and multiple iterations of the proposed method can be performed without "observations" (instead of data from one or more sensors, a complete state grid with the state "unknown" is used); the filtered state is based solely on predictions made based on previous states, as explained above, by separating the particle prediction from the "grid" prediction.

[0056] (2.2 Conjecture) As mentioned above, the two models are predicted separately, and the final prediction is the result of fusing these predictions. In other words, two predictions (static model update and dynamic model update) are performed, which are predicted separately and then fused. For each model, the update steps leading to the prediction are as follows: - Dynamic projection: As a function of the time elapsed since the previous iteration, particles are projected as a function of their velocity and a Gaussian position-velocity noise. The occupancy grid is defined here as static. - State transitions: Each (static, dynamic) model has associated transition matrices that allow state transitions. In practice, these matrices consist mainly of slow transitions to "undefined" states, which represent a loss of reliability of the estimated data over time. Occupied states (static, dynamic) are defined to be more consistent in time than free states. - Reference frame translation: Since the system is intended to be mounted on a moving vehicle (i.e., a mobile vehicle), the model needs to translate as a function of its speed. The representation of the model simplifies what is a fairly complex operation, which involves transforming particle vectors (translating and rotating for position, rotating for velocity) and interpolating the grid. Grid regions corresponding to newly discovered regions are initialized with an undefined state (u), while deleted regions are either forgotten (in many mobile robot applications, this data storage is irrelevant) or used to generate a map based on the static part.

[0057] Figure 3 shows the forecasting process diagrammatically: - (i) The model from the previous time step. The two models (grid and particle) are shown superimposed. - (ii) Dynamic projection (for grids and particles, via a motion model) and state transition (via a state transition model). - (iii) Representing the data in a new reference frame by interpolating the grid and translating and rotating the particles. - (iv) Model predicted at the current time step (two grids are shown overlaid).

[0058] The potential values ​​of these predictions are pre-computed (and pre-sampled) and their values ​​are: P(C g -1 ) P(S g -1 V g -1 |C g -1 ) P(S g p V g p |S g -1 V g -1 ) and P(C p -1 ) P(S p -1 V p -1|C p -1 ) P(S p p V p p |S p -1 V p -1 ) are calculated independently (and these values ​​are directly associated with the relevant grid cells and particles).

[0059] (2.3 Combining prediction and evaluation) The updated distribution for the state is evaluated in parallel in each cell of the current grid. All prediction particles are reorganized as a function of their position in the grid, and only the particles and data of the relevant cells are sent for calculations related to the current grid cell (P(C|C g -1 V g p C p -1 V p p ). In other words, P(C|C g -1 V g p C p -1 V p p ) above a certain threshold are transmitted for fusion and evaluation. a. Fusion of predicted values: P(S p V p |S g p V g p S p p V p pEach static and dynamic prediction sample generates a final prediction according to the fusion model defined in (f). Fusion models can be elaborated (or even learned), but the main goal is to define them so that if a model predicts a dynamic state, the fusion results in a dynamic state. Alternatively, if a model predicts a static state, the fusion results in a static state. Alternatively, if a model predicts a free state, the fusion results in a free state. The undefined state (u) is only generated if both (static and dynamic models) predict an undefined state, respectively. In this way, for example, predictions of mobiles that previously arrived in a free (f) or undefined (u) cell are not weakened, ensuring the durability of the information (in time), and thus solving the encountered problems. b. Evaluation: Given "c", these final predictions are consistent with the observations P(S o V o The observation model used is based on classical probabilistic sensor models and takes into account the relevance of sensor data (sensor reliability, impact location, impact height, vertical distribution, etc.). This observation model can be defined for any type of sensor, and distributions can be fused using probabilistic fusion rules, allowing for the integration and general processing of heterogeneous data. The state definition used in this model can be different from the filtered definition.

[0060] For example, the observation model can be based on a classical probabilistic sensor model, with an estimate of the undefined state (u) that correlates with the relevance of the sensor data. For example, in the case of laser data, the undefined model will obtain low values ​​before and around the impact, and high values ​​beyond (where information is available even in the absence of it).

[0061] To generate an estimate of the final state, we define a generating distribution P(SV|S p V p S o V o) is used, given in the form of a generator matrix for the states (whose parameters can or must be learned as a function of the operating conditions of the implementation), to allow, for example, the rapid appearance of objects in cells previously seen as free while ensuring the slow disappearance of objects in cells now seen as free or undefined, or to avoid the influence of undefined observations on the estimate of the final state (outside of the natural behavior of predictions over time).

[0062] The predictions and evaluations taking into account the data provided by the sensors are fused to provide, for this time step, a current grid giving, for each (relevant) cell, the probability of the final state and velocity as a function of the predictions and observations.

[0063] (2.4 Particle resampling) Once the state distribution on the cell has been correctly estimated (calculated), the next task consists in one embodiment of resampling the particles, which includes, for example, the following two steps: a. Particle relocation: As a function of the dynamic probability of each grid cell and other criteria (position, difference between predicted and observed states, velocity distribution, etc.), the total number of particles is relocated to the relevant cell. b. Particle generation: During the evaluation of the state distribution, the weight of each existing particle is updated and normalized as a function of its relative contribution in the dynamic part. Then, for each cell to which a particle is associated, the particle is drawn from the existing particle distribution and the initialization distribution according to the proportion of "dynamic emergence" (difference between predicted and observed states, velocity distribution, etc.). Finally, the cellular dynamic coefficients (i.e., the dynamic coefficients of the cell) are uniformly distributed among the particles (of this cell).

[0064] A unique marker is associated with each particle drawn from the initialization distribution and propagated to particles extracted from already existing distributions. This allows for fast and lightweight pre-segmentation of objects (or at least coherent clusters in occupancy and dynamic space). This resampling can be performed by other means and is not limited to this method.

[0065] (3. Other features, improvements, and advantages) Thus, the present invention can significantly improve the quality of forecasts generated by conventional systems by ensuring that the forecasts last longer in time. Further, the present invention has the following advantages: - Specifiable sensitivity of the filter: The first major difference between the present invention and the filters cited above is the use of an intermediate state variable (S) to estimate the state of the model, instead of a direct evaluation based on the data. o V o ) These "observed states" can have a different dimensionality than the estimated states, allowing us to engineer the relationship between each observed state and the estimated latent state, and explicitly define the filtering sensitivity to specific data inputs without affecting the temporal consistency of the filtered state. Decoupling these two components of the filter solves the practical problems of previous approaches, where the appearance and disappearance rates of states were directly linked. - Independent update frequency: As already mentioned, this frequency, in combination with the use of specific representations for "data deficiency" observation states, also allows for decoupling the filter update frequency from the sensor update frequency. Also, in correlation with GPU implementations, it is possible to achieve an update frequency higher than the sensor update frequency, allowing dynamic estimation of the scene even when sensor data is not being received. - Adaptable forecast templates: Another big difference is that the forecast can now be made using grid-based forecasting (S g p V g p ) and particle-based prediction (Sp p V p p ) are propagated independently at each iteration, but the fusion (S p V p ) and regenerated based on the state estimate. This strict separation and configurable fusion (compared to previous conditional sampling) solves another important problem of conventional methods: the inability to adapt the persistence of states within a cell as a function of other predictions. A typical case of such a problem is when a dynamic sample moves through a free region and, in the absence of new observations, the persistence of previously observed free cells reduces and eventually disappears the occupancy probability of the moving object, even without a defined temporal state transition (dynamic transition model). Thanks to our method, when a cell predicts "free" cells based on one model and "dynamic" cells based on a second model (based on particle projection), the predicted state is correctly defined as "dynamic."

[0066] Thus, the implementation of the proposed method allows for a filter update frequency of 100 Hz, higher than the sensor frequency. This higher update frequency allows for smoother filtering, more accurate data integration, and a clear reduction in temporal reliability, while simultaneously improving the operational reliability of the method (clear model propagation continues even in the event of a sensor failure). The distinction between the two models and their combined prediction ultimately resolves key issues, such as the undesirable rapid decay of dynamic occupancy in regions previously considered free or undefined. Adding additional observation states increases responsiveness in detecting specific states. While these results are compelling, further exploration may focus on quantitative validation of the approach, a major challenge in the field of dynamic occupancy grid filtering, which lacks clear shared evaluation criteria, metrics, and reference databases.

[0067] (4. Processing equipment) 4 shows a simplified architecture of a processing device for processing an occupancy grid that implements all or part of the method described above. Such an occupancy grid processing device comprises a memory 41 and a processing unit 42, for example equipped with a microprocessor, controlled by a computer program 43 that implements the method according to the invention. In at least one embodiment, the invention is implemented in the form of an application installed on a device installed in a vehicle or a (robotic) autonomous agent. Such an occupancy grid processing device comprises, for example, all or part of the following means: - updating means for updating the probability distribution of the static scene characterization grid as a function of at least one static state associated with at least one cell of the static grid according to the static model; - updating means for updating a probability distribution of the dynamic scene characterization grid as a function of at least one particle associated with at least one cell of the dynamic grid according to the dynamic model; - a fusion means for fusing the probability distributions of the static and dynamic grids in the resulting occupancy grid and providing state and speed predictions for each cell; - Evaluation means for assessing the probability of the final state and associated speeds as a function of the forecasts and observations for at least one cell in the resulting occupancy grid.

[0068] These means may take the form of specific software applications, or may take the form of dedicated hardware components designed to perform these functions, such as ASICs.

Claims

1. 1. A method for obtaining a grid of data representing a dynamically rendered scene, called a state grid, said state grid being divided into a plurality of cells, said method being implemented by a computer module for processing data from at least one sensor, - updating (A10) a probability distribution of a static characterization grid characterizing said scene as a function of at least one static state associated with at least one cell of the static grid according to a static model; - updating (A20) a probability distribution of a dynamic characterization grid characterizing said scene as a function of at least one particle associated with at least one cell of the dynamic grid according to a dynamic model; - A step (A30) of fusing the probability distributions of the static grid and the probability distributions of the dynamic grid in the resulting state grid to provide state and speed predictions for each cell; - for at least one cell of said resulting state grid, evaluating (A40) the probability of a final state and associated velocity as a function of said state prediction and said velocity prediction and any data received from said at least one sensor; Contains at least one repetition of method.

2. The step of fusing the probability distributions may be performed by combining a probability P(S p V p |S g p V g p S p p V p p ) - S p : predicted state of said cell at the current time step; -V p : predicted speed of said cell at the current time step; - S g p : the predicted state of the cell at the current time step as predicted by the static model; -V g p : the predicted speed of the cell at the current time step as predicted by the static model; - S p p : the predicted state of the cell at the current time step as predicted by the dynamic model; -V p p : the predicted speed of the cell at the current time step as predicted by the dynamic model The method of claim 1.

3. The step of evaluating the probability of the final state and associated velocity may be performed by calculating, for a given cell of the resulting state grid, a probability P(SV|S p V p S o V o ) - S: the state of said given cell at the current time step; V: the velocity of the given cell at the current time step; - S p : the predicted state of the given cell at the current time step; -V p : predicted speed of said given cell at the current time step; - S o : the observed state of the given cell at the current time step; -V o : is the observed velocity of the given cell at the current time step The method of claim 1.

4. The updating steps (A10, A20) - dynamically projecting the particles as a function of velocity; - applying state modifications to said static model; - transitioning states as a function of each model; - the step of movement as a function of the shift of the reference frame 10. The method of claim 1, comprising:

5. After said evaluating step (A40), a step of resampling particles in said dynamic model.

10. The method of claim 1, comprising:

6. The step of resampling the particles comprises: - repositioning said particles as a function of the dynamic probability of each grid cell; a particle generation step, generating particles as a function of the previous assignments of said particles and the contribution of these previously assigned particles to the dynamic model; 6. The method of claim 5, comprising:

7. The evaluating step (A40) performs an observation grid, the observation grid including data from the at least one sensor. The method of claim 1.

8. a module for obtaining a grid of data representing a dynamically rendered scene, called a state grid, said state grid being divided into a plurality of cells, said module being implemented by a computer module for processing data from at least one sensor; - updating (A10) a probability distribution of a static characterization grid characterizing said scene as a function of at least one static state associated with at least one cell of the static grid according to a static model; - updating (A20) a probability distribution of a dynamic characterization grid characterizing said scene as a function of at least one particle associated with at least one cell of the dynamic grid according to a dynamic model; - In the resulting state grid, fusing the probability distributions of the static grid and the probability distributions of the dynamic grid to provide a state prediction and a speed prediction for each cell (A30); - for at least one cell of said resulting state grid, evaluating (A40) the probability of a final state and associated velocity as a function of said state prediction and said velocity prediction and any data received from said at least one sensor; It includes an iterative computational means for performing Module.

9. A computer program comprising program code instructions for carrying out the steps of the method according to any one of claims 1 to 7, when the program is run on a processor.