METHOD AND SYSTEM FOR THE PERCEPTION OF PHYSICAL BODY WITH OPTIMIZED SAMPLING
Patent Information
- Application Number
- DE602023008815
- Authority / Receiving Office
- DE · DE
- Patent Type
- Patents
- Current Assignee / Owner
- Priority Date
- 2022-05-17
- Filing Date
- 2023-05-15
- Publication Date
- 2025-11-19
- Estimated Expiration
- 2043-05-15
AI Technical Summary
Existing probabilistic occupancy grid-based perception methods for robots and autonomous vehicles require significant computing power and struggle to optimize spatiotemporal resolution and resource usage in dynamic environments.
Adaptive control of a steerable distance sensor's detection region, dynamically adjusting its width and orientation to focus on 'regions of interest' with higher spatial and temporal resolution, using Bayesian fusion and integer calculations for efficient resource utilization.
Enhances environmental perception by optimizing resource use and improving spatiotemporal resolution, particularly in dynamic environments, while maintaining accurate obstacle detection and navigation.
Description
[0001] The invention relates to a method and system for perceiving and estimating the position - and optionally the speed - of material bodies in an environment, using one or more distance sensors such as, for example, radars, lidars or sonars.
[0002] The term "material body" refers to any substance or material object possessing individuality and capable of being detected and identified by an appropriate sensor. Thus, material bodies include inanimate objects, whether natural or artificial, plants, animals, human beings, as well as liquid or solid particles suspended in the air, such as clouds, and even liquid or gaseous masses.
[0003] The invention applies in particular to the field of navigation of robots, drones, autonomous vehicles, etc. and more generally to that of perception.
[0004] With the explosion of computing power that can be integrated into robots, robotics applications have multiplied in recent years, from industrial production to home automation, from space and underwater exploration to consumer toy drones. The tasks performed in robotic applications have become progressively more complex, increasingly requiring robots to operate in unfamiliar environments. This has made the development of perception tools and techniques—that is, those enabling the discovery and interpretation of the surrounding space—increasingly important. A key application that utilizes perception in robotics is navigation. This involves setting a destination for a robot and letting it travel there, taking care to avoid unknown and potentially moving obstacles; the robot is then responsible for planning its own trajectory.A typical example, which is the subject of intense research, is the autonomous car.
[0005] There are two main families of perception techniques: geometric methods, which aim to identify the geometry of objects in the surrounding space, and occupancy grid-based methods, which aim to determine whether a given location is occupied by an obstacle (more generally, by a physical object). The invention falls under the category of occupancy grid-based techniques.
[0006] The theoretical foundations of perception methods based on probabilistic occupancy grids are described in the article by A. Elfes, "Occupancy grids: a stochastic spatial representation for active robot perception" (Sixth Conference on Uncertainty in AI, 1990). ).
[0007] A probabilistic occupancy grid consists of a regular arrangement—generally two-dimensional but also three-dimensional—of cells ci, each representing a small region of space and characterized by an occupancy probability P(o(ci)), where P(.) represents the probability of an event and o(ci) the event "cell ci is occupied by a material body." Occupancy probabilities are calculated from the results z of distance measurements, which requires knowledge of an "inverse model" of the distance sensor, P(o(ci)|z), where P(a|b) is the probability of event a conditioned on the occurrence of event b.In general, several distance measurements, taken by a single sensor or by several sensors of the same or different types, contribute to determining the occupancy probabilities of cells ci using an operation known as "Bayesian fusion," because it exploits Bayes' theorem. Let z₁ and z₂ be two distance measurements; the occupancy probability of cell ci is therefore equal to . P o i z 1 z 2 = 1 − P o i P o i z 1 P o i z 2 1 − P o i P o i z 1 P o i z 2 + P o i P v i z 1 P v i z 2 Where "oi" is a shorthand notation for o(ci), "vi" is the event "cell ci is not occupied," and P(oi) is the prior occupancy probability—that is, before any measurement—of said cell. Often, P(oi) is taken to be 0.5 for all cells in the grid, but this is not always the case: for example, EP 3 364 213 describes a process in which prior occupancy probabilities are chosen based on context.
[0008] A direct application of the method described by A. Elfes requires numerous moving-point calculations and therefore demands significant computing power, which is difficult to reconcile with the constraints inherent to embedded systems. WO2017 / 050890 describes a method for perceiving physical bodies with an occupancy grid that can be implemented using only integer calculations, and is therefore particularly well-suited to real-time embedded applications.
[0009] Determining the inverse model of a distance sensor is generally a difficult problem. Often, for the sake of simplification, this is done using the "single-target" approximation, in which it is assumed that, at any given time, the sensor detects only one physical body at most. This approximation is usually reasonable for sensors with a narrow detection region (typically a few degrees). EP 3 594 719 describes an approach that goes beyond this approximation and calculates the inverse model of a wide-angle sensor.
[0010] To implement one of the methods mentioned above, it is necessary to have a set of sensors whose detection areas cover the entire environment in which the physical objects are to be perceived, or—more commonly—one or more sensors with a more or less wide detection area, scanning the environment according to an acquisition sequence. The simplest solution is to perform a uniform scan, for example, using a sensor mounted on a rotating turret. However, this solution is not optimal because it requires a compromise between the spatiotemporal resolution of the detection and the resources used. More complex acquisition schemes partially overcome this drawback by sampling more finely or more frequently regions of space considered more "interesting" than others.
[0011] For example, US10598788 describes a detection system using a Lidar with a controllable viewing angle, for example, by means of a micromirror array. Additional laser shots are interspersed within a pre-established shot list to increase sampling density in certain regions of interest. The system also allows for control of the shot power to ensure uniform laser power delivery across each region of space and potentially to protect certain targets vulnerable to laser power.
[0012] WO2019216937 describes a detection system using a Lidar with a controllable viewing angle, for example, by means of a micromirror array. The system also includes a camera integrated into the Lidar's receiving optics and having the same parallax-free field of view. The camera detects a threat or anomaly and notifies a motion planning system, which then inserts additional shots into the pre-established firing list with very low latency, thereby rapidly improving the perception of areas identified as threats.
[0013] These approaches—which are not specific to probabilistic grid-based occupancy detection—improve the spatiotemporal resolution of material body detection for given resources, or reduce the need for resources (energy, computing power, etc.), but not optimally. The invention aims to provide an additional improvement within the specific context of probabilistic grid-based occupancy detection methods.
[0014] According to the invention, this goal is achieved through dynamic adaptation of the detection region width of a steerable distance sensor. The sensor is driven such that a narrow detection region is used to finely sample "regions of interest" in the environment, while a wider detection region is used to coarserly, but more quickly, sample other regions of the environment. The regions of interest are extracted from the occupancy grid constructed from older measurements. Optionally, the orientation of the sensor's detection region is also adaptively adjusted, for example, to revisit regions of interest more frequently or, more simply, to account for variations in the width of the sensor's detection region, so as to avoid "gaps" in the environmental scan.
[0015] Thus, an object of the invention is a method for perceiving material bodies in an environment comprising the following steps, implemented iteratively by a computer or a dedicated digital electronic circuit: a) Controlling, according to an acquisition sequence, a sensor having a steerable detection region in the environment to acquire a plurality of distance measurements of said material bodies; b) Application, to each said distance measurement, of an inverse model of the corresponding sensor on an occupancy grid providing a discretized spatial representation of an environment of said sensor, to determine a probability of occupation by a material body of a set of cells of said occupancy grid; and c) Construction of a consolidated occupancy grid in which each cell has an occupancy probability calculated by Bayesian fusion of the occupancy probabilities estimated during step b); characterized in that the sensor's detection region has a variable angular width and in that the method also comprises the following steps: d) Identification, from said occupancy grid, of at least one region of interest in the environment; and e) Determination of said acquisition sequence defining, for each distance measurement, at least the orientation and angular width of the sensor detection region, at least the angular widths being determined from the region(s) of interest identified in step d), said acquisition sequence being used in step a) of a subsequent iteration of the process in which the acquisition sequence determined in step e) is adapted to sample the region(s) of interest or their contours, either with a higher spatial and / or temporal resolution than the rest of the environment, or with a lower spatial and / or temporal resolution than the rest of the environment.
[0016] According to specific embodiments of such a process: In step e), the orientations of the sensor's detection region can also be determined from the region(s) of interest identified in step d). Step c) can also include constructing a motion grid from a time evolution of the occupancy probabilities of the grid cells, and step d) can include identifying at least one region of interest in the environment, also from the motion grid. The sensor can be adapted to also provide velocity measurements of material bodies, these velocity measurements being used in step d) for identifying at least one region of interest in the environment. The acquisition sequence determined in step e) can be adapted to sample the region(s) of interest or their boundaries with a higher spatial and / or temporal resolution than the rest of the environment.Each said inverse sensor model can be a discrete model, associating with each cell of the corresponding occupancy grid, and for each distance measurement, a probability class chosen within the same set of finite cardinality, each said probability class being identified by an integer index; and in which, at said step c), the occupancy probability of each cell of the consolidated occupancy grid is determined by means of integer calculations performed on the indices of the probability classes determined at said step b).The inverse model of the sensor can be stored in memory as a data structure representing a plurality of grids, called model grids, associated with respective possible distance measurements and respective possible angular widths of the detection region. At least some cells of a model grid correspond to a plurality of contiguous cells of the occupancy grid belonging to the same angular sector among a plurality of angular sectors into which the sensor's detection region is subdivided, and associate the same occupancy probability to each of these cells. Step c) may include the construction of the consolidated occupancy grid also from distance measurements from one or more auxiliary sensors.
[0017] Another object of the invention is a system for perceiving material bodies comprising: at least one input port to receive a plurality of signals representative of distance measurements of said material bodies from one or more sensors; a data processing module configured to receive said signals as input and use them to construct a consolidated occupancy grid and determine an acquisition sequence by applying a process such as above; a first output port for a signal representative of the occupancy grid or of the region(s) of interest; and a second output port for a signal representative of the acquisition sequence.
[0018] Such a system may also include one or more distance sensors adapted to receive from said second output port said signal representative of the acquisition sequence and to provide to said input ports or to said input ports signals representative of a plurality of distance measurements of material bodies.
[0019] The or at least one distance sensor may be of radar, lidar or sonar type and include a beamforming system to control the orientation and angular width of an electromagnetic or acoustic radiation beam defining the detection region.
[0020] Other features, details and advantages of the invention will become apparent from the description provided with reference to the accompanying drawings given by way of example, which represent, respectively: [ Fig.1 ], reproduced from WO2017 / 050890 with modifications, an illustration of the concept of an occupancy grid; [ Fig. 2 ], also reproduced from WO2017 / 050890, an illustration of the concept of a "direct" model of a distance sensor; [ Fig. 3 ], also reproduced from WO2017 / 050890, an illustration of the concept of an "inverse" model of a distance sensor; [ Fig. 4 ], also reproduced from WO2017 / 050890, an illustration of the concept of spatial discretization of an inverse model on an occupation grid; [ Fig. 5 ], also reproduced from WO2017 / 050890, an illustration of two methods for quantifying an inverse model of a sensor on an occupancy grid [ Fig. 6 ] And [ Fig. 7 ], reproduced from EP 3 594 719, illustrations of the concept of "sector decomposition" used to calculate the inverse model of a wide-angle detection sensor; [ Fig. 8 ], a schematic diagram of a process and a system according to an embodiment of the invention; and [ fig. 9 ], an illustration of the dynamic adaptation of the detection width of a distance sensor.
[0021] There [ Fig.1 ] schematically illustrates a configuration in which a distance sensor CD, having a narrow detection region RD, which can be modeled by a cone with a half-angle of opening -5° centered around a sighting axis AV, is used to measure the distance of a material body CM located along the sighting axis.
[0022] Let d be the actual distance between the material body and the distance sensor CD, and z the output of the sensor. Due to the inevitable measurement uncertainty, for a given value of d, the value of z will be a random variable characterized by the conditional probability density function p(z|d) which models the relationship between the actual position of a target and its estimate seen by the sensor ("direct model").
[0023] There [ Fig. 2 This presents an example of a direct model of a distance sensor; consider a linear space 50 m long and assume that a target is located at d = 25 m from the sensor. For a sensor with an error modelable by a Gaussian function, the most probable response z will be close to 25 m, but other values are possible, with a probability density defined by the curve. In the case of an ideal sensor, p(z|d) = δ(zd), where δ is a Dirac delta function, and the measurement would always be equal to the true distance. The direct model of a sensor can be determined experimentally; typically, it can be constructed from data provided by the manufacturer (in the Gaussian case, the standard deviation is sufficient to characterize the model).
[0024] A GO occupation grid is a partition of a continuous and bounded region of space into a number N of parts, called cells and designated by an index i ∈[0, N- 1]. The cell with index i is indicated by ci. Only to illustrate the concepts of direct and inverse models, this discussion will be limited to the case of a one-dimensional occupancy grid observed by a single distance sensor CD (or a plurality of co-located sensors), with the index i increasing as the sensors move further apart (c0 being the cell closest to the sensor and cN-1 the furthest), which corresponds to the configuration illustrated by the [ Fig. 1 ].
[0025] A measurement z from a sensor allows us to determine the occupancy probability P(oi |z) of a cell ci. For a given measurement z, the set of probabilities P(oi |z) ∀ i ∈ [0, N- 1] constitutes the inverse model of the sensor on the grid. While the direct model of the sensor provides information on the sensor's response as a function of the physical world, the inverse model expresses the impact of the measurement on the occupancy grid, which is the model of the physical world that we adopt, thus justifying the name inverse model.
[0026] There [ Fig. 3 This presents a typical example of an inverse model for a distance sensor, in a case where z=25m. We can verify that the occupancy probability is almost zero for cells located less than 24.25 m from the sensor and reaches a peak at a distance of 25 m (corresponding to the measurement provided by the sensor). Beyond 25 m, the occupancy probability decreases until it stabilizes at a value of 0.5, indicating a complete lack of knowledge regarding the occupancy status of cells that, being located beyond the obstacle, are masked by it and therefore inaccessible to the sensor.
[0027] There [ Fig. 3 [ ] represents the inverse model using a smoothed curve, but a more accurate representation would be to display only the points corresponding to the boundaries of the grid cells: indeed, it is impossible to distinguish a "partially" occupied cell from one that is "fully" occupied; in all cases, the distance to the obstacle will be estimated as the distance to the corresponding cell. This is the spatial error introduced by the grid.
[0028] A fairer version of the inverse model of the [ Fig. 3 ], taking into account this spatial discretization induced by the grid, is presented on the [ Fig. 4 ].
[0029] The inverse model of the [ Fig. 4 The data is spatially discretized, but the probability of occupancy for each cell can take any real value within the interval [0,1]. In practice, in a numerical implementation, the probability values must also be quantized, using either a uniform or non-uniform quantization scheme. As explained in detail in WO2017 / 050890, certain specific, non-uniform quantization schemes allow for a drastic simplification of the calculations needed to "merge"—that is, combine—the information provided by multiple distance measurements from the same sensor or from different sensors.
[0030] Quantifying occupancy probabilities involves representing the interval [0; 1] in a discretized manner, using "probability classes" identified by integer indices. More precisely, this is called a "system of probability classes". ≫ S = p n , n ∈ ℤ a countable subset of [0; 1], whose elements pn can therefore be characterized by a relative integer index "n". If we call "F" the data merging function expressed by equation (1) above, we can write, in the case P(oi) = 0.5: F p 1 , p 2 = p 1 p 2 p 1 p 2 + 1 − p 1 1 − p 2 The generation in the case where P(oi) is not necessarily equal to 0.5 does not pose any difficulty in principle and is studied in detail in EP3364213 .
[0031] A particularly interesting case is that of a class system such that the result of merging two probability classes from the system also belongs to the system; formally: ∀p i , p j ∈ S, F ( p 1 , p 2) ∈ SThis is referred to as an "error-free" class system, because the merging introduces no error or approximation. It is therefore possible to identify probability values by the indices of the corresponding classes, and the result of a merging is also identified by an index. The Bayesian merging problem then becomes one of determining a suitable function Fd that associates two integer indices with another integer index. Formally: ∀ k l ∈ ℤ 2 , ∃ i ∈ ℤ : F p k p l = p i and we note F d (k, 1) = i.
[0032] Calculating Fd(k,l) requires only knowledge of the indices k and l and integer index arithmetic; no floating-point calculation is necessary for the merging of the pk and pl information. Furthermore, if the class system is considered, the index obtained using Fd(k,l) denotes a probability value strictly identical to that obtained—using floating-point numbers—by applying equation (1). The method thus allows the merging of probability classes without error compared to a floating-point calculation.
[0033] A first example of an error-free class system can be defined recursively.
[0034] Let p be an occupancy probability strictly between 0.5 and 1: 0.5 <p<1. On définit alors par récurrence la suite p n de la façon suivante : p 0 = 0 , 5 ; p 1 = p ; p 2 = F p p ; p 3 = F p 2 p ; ... p n + 1 = F p n p
[0035] We then extend the definition of pn to negative integer values of n as follows: p 0 =0.5; p − 1 = 1 − p ; p − 2 = F p − 1 , p − 1 ; p − 3 = F p − 2 , p − 1 ; ... p n − 1 = F p n , p − 1
[0036] In the definitions of the pi classes, the function F is defined by equation (2).
[0037] We then define the following two class systems, with parameter p∈ ]0,5, 1[: G p + = p n , n ≥ 0 G p − = p n , n ≤ 0
[0038] By construction, class systems G p − And G p + are error-free. Furthermore, G p = G p − ∪ G p + defines a new class system that can be directly used to perform a Bayesian fusion, and that can be proven without error over its entire set of definition.
[0039] Another possible discretization scheme for performing Bayesian fusion with only integer calculations involves using the class system S k = S k + ∪ S k − , où Or S k − = 1 2 − k ⋅ n , n ≤ 0 S k + = k ⋅ n + 1 k ⋅ n + 2 , n ≥ 0 where k is a positive integer k ∈ ℕ * The drawback of this approach is that if S k + And S k − are indeed "error-free", this is not the case for S k.
[0040] To quantify an inverse model that has already been spatially discretized, it is possible to replace the values of the inverse model - represented by the MI curve - on the [ Fig. 5 ] - by the nearest elements of the discrete system of probability classes S, so as to minimize the quantization error. The result, in the case where the system of probability classes is S 1 (S k with k=1) is represented by the MQP curve on this same [ Fig. 5 ]. We see that this approach can lead to underestimating the probability of cell occupancy, which may not be acceptable in an obstacle detection application. An alternative is to approximate the values of the theoretical inverse model by the smallest upper bound of the S-class system (MQE curve on the [ Fig. 5 [ ], still in the case of system S 1 ). Thus, the probability of occupancy is never underestimated, which can be an advantage for obstacle detection. In other applications, such as people counting, this type of approximation can, however, lead to the generation of false positives.
[0041] So far, only the case of a narrow-area distance sensor has been considered, for which the probability of several material bodies being simultaneously within the detection region, at the same distance from the sensor, is negligible. In the case of a sensor with a detection region wider than a few degrees, this assumption is generally no longer satisfied. Taking into account the possibility of having several material bodies at the same distance from the sensor (with a tolerance lower than the spatial resolution of the occupancy grid) complicates the determination of the inverse model. Indeed, it can be shown that this determination requires calculating a sum of terms, each corresponding to a possible configuration of the occupancy grid; in the case of a two-dimensional occupancy grid (unlike the one-dimensional case of the [ Fig. 1 ]), this number quickly becomes very large.
[0042] As explained in EP 3 594 719 , and illustrated on the [ Fig. 6 It is advantageous to decompose a "large" detection region RD into a plurality of angular sectors AS-2, AS-1, AS0, AS1, AS2 - preferably of the same angular width and in odd number. As illustrated in the [ Fig. 7 ], a polar geometry MG “model grid” is defined on the detection region; this grid corresponds to the angular decomposition of the [ Fig. 7 ] to which is added a relatively coarse radial decomposition compared to the spatial resolution of the GO occupation grid; also, in general, several cells of the occupation grid correspond to the same cell of the model grid.
[0043] The inverse model of the sensor consists of a plurality of model grids of the type of the [ Fig. 7 ], associated with respective distance measures. A conditioned occupancy probability P(o|z) is associated with each cell of each model grid. These probabilities are calculated by considering as equivalent all configurations of the occupancy grid containing at least one occupied cell belonging to the same cell of the model grid.
[0044] In itself, an occupancy grid contains only positional information for one or more material bodies at a given instant. By comparing occupancy grids at different times, however, it is also possible to estimate the displacements of these material bodies, which can be represented by a "displacement grid," or "dynamic grid," where each cell occupied by a material body contains velocity information for that material body. Velocity sensors can also be used to construct such a displacement grid, or contribute to its construction.
[0045] As mentioned above, the invention improves upon these environmental perception techniques by dynamically adapting the width of the sensor's detection region while varying the orientation of its aiming axis, thereby achieving non-uniform sampling of the environment. The distance measurements acquired by the sensor are used to construct an environmental model based on an occupancy grid; this model, in turn, is used to plan subsequent measurements, particularly by identifying regions that require more or less detailed sampling.
[0046] An embodiment of the invention will now be described in detail, with reference to the [ Fig. 8 ].
[0047] A system according to the invention essentially comprises a distance sensor CD and a processor PR. The term "processor" will be used here to define a data processing system, comprising, for example, one or more microprocessors and / or digital electronic circuits programmed or configured appropriately and interconnected to cooperate with each other and with the sensor. The processor PR may, for example, be integrated into the sensor, be separate from it, or include components integrated into the sensor, intended to control the sensor and / or perform initial operations on the measurement data, and one or more external components, intended to perform higher-level operations. The term "computer" will be used to refer to any programmable processor, and does not necessarily refer to a generic computer.
[0048] The CD distance sensor comprises a ME transmitting module and an MR receiving module. The ME transmitting module generates a radiation beam FR whose polar angle θ (or colatitude, or zenithal angle) and / or azimuthal angle (or longitude) φ, as well as the beamwidth α, can be controlled by the PR processor. The radiation beam thus defines a steerable detection region RD with adjustable width. The MR receiving module detects a portion of the radiation scattered by a material body CM located within the detection region RD. In the [ Fig. 8 The transmitting and receiving modules are located on either side of the physical body; in reality, in most embodiments, they will be co-located.
[0049] For example, the CD sensor can be a time-of-flight sensor, such as a lidar. More specifically, it can be a frequency-modulated continuous-wave (FMCW) lidar. In this case, the transmitting module can include a laser emitter and the associated beam-generating optics, and the receiving module a photodetector with the associated optical system and electronic circuits. To allow for agile reconfiguration of the beam, and therefore of the detection region, the beam-generating optics of the transmitting module can preferably include an optical phased array (OPA), which allows for electronic / optical control of the beam's orientation and width, without any moving parts—or without any macroscopic parts, in the case of a micro-opto-electro-mechanical OPA.Optionally, the beam energy can also be controlled. Alternatively, the sensor can be radar or sonar type. Using a rotating turret to orient the detection area is possible but not optimal because it lacks agility (the azimuth angle changes continuously and therefore cannot be freely controlled; moreover, to avoid "gaps" in the scan, it would be necessary to dynamically adapt the rotation speed to the beam width, which is very difficult).
[0050] In step a) of the process of the [ Fig. 8 The CD sensor is driven by the PR processor to acquire distance measurements. When a new distance measurement MD i (where i is an integer index used to identify a specific measurement within a series of N>1 distance measurements) is acquired by the sensor, the measurement data and beam configuration information θ, φ, α) are processed by the PR processor to construct an occupancy grid GO i (step b)). For this, the processor uses an inverse MIN model of the sensor that takes into account the beam angular width FR, for example, of the type described in EP3594719. The GO i occupancy grid is then merged (Bayesian fusion) with a consolidated GO occupancy grid, constructed from the previously acquired measurements and modeling the environment, for example, using the algorithm described in detail in WO2017 / 050890 and EP3364213, which was mentioned above (step c)).In addition, measurement data can be used to construct one or more dynamic grids.
[0051] Data from one or more auxiliary AC sensors can also contribute to the construction of the consolidated occupancy grid, also through Bayesian fusion. Auxiliary sensors can be distance or velocity sensors such as lidars, sonars, radars, stereo cameras, etc.
[0052] Advantageously, the Bayesian fusion of measurement data is complemented by a "forgetting factor": before fusion with the GO occupancy grid i, the consolidated GO occupancy grid, derived from the MD measurements jj = 0 ... i-1, undergoes a process that brings the occupancy probability of each cell closer to the value 0.5, which corresponds to a completely unknown state. Thus, more weight is given to the most recent information. This is particularly important when the physical objects and / or the sensor are moving.
[0053] Next, in step d), the processor analyzes the consolidated occupancy grid GO and, if applicable, the dynamic grid(s) to identify one or more "regions of interest" (ROI) in the environment. A region of interest is an area of the environment that is of particular interest and should therefore be sampled more finely and / or more frequently than other regions—or, conversely, a region that is predefined as "empty" or "of lesser interest" can be sampled more coarsely and / or less frequently. The criteria for identifying a region of interest can vary and depend on the specific application.For example, the identification of regions of interest can be based on measured distance gradients, velocity gradients of detected physical bodies (if a dynamic grid is used in addition to occupancy grids), the spatial density of these bodies, temporal variation of occupancy probabilities, and so on. It is also possible to consider the time elapsed since an area of the environment was last visited and / or to consider as "regions of interest" those areas where the probability of cell occupancy is close to 0.5 (meaning their state is unknown). In some embodiments, it is also possible to apply artificial intelligence methods to identify objects—for example, vehicles—and consider the regions occupied by these objects as regions of interest.
[0054] Regions of Interest (ROIs) can be represented in different ways. One possibility ("pixel format") is to create a grid with the same format as the land use grid, but where the cell values represent a level of interest. For example, cells corresponding to a region of interest could be assigned a value of "1" and the others a value of "0". Alternatively, several different levels of interest can be used, for example: "0" for cells that do not belong to an ROI, "1" for cells in a first-category ROI, "2" for cells in a second-category ROI, and so on. A second possibility ("object format") is to define an ROI by its position (for example, its center), its shape and orientation, its size, and optionally its level of interest.
[0055] In step e), the PR processor determines, from the identified ROIs, a measurement acquisition sequence in the form of a list of commands defining, for each measurement, the polar angle (colatitude) θ and / or the azimuthal angle (longitude) φ, as well as the beamwidth α, and optionally its energy. Different criteria can be used to construct the acquisition sequence. In particular, the beamwidth α differs for regions of interest and the rest of the environment—typically, it is smaller in regions of interest to ensure finer spatial sampling. If there are several categories of regions of interest, there may be different values for the beamwidth α—typically, α will be smaller the higher the ROI's level of interest.Furthermore, the measurement frequency may differ between regions of interest (ROIs) and the rest of the environment. Typically, ROIs will be measured more frequently than the rest of the environment to ensure finer temporal sampling. For example, one could imagine uniform temporal sampling of the environment (every region is measured every "T" seconds) supplemented by additional measurements targeting only the regions of interest. If there are several categories of regions of interest, ROIs with a higher level of interest may be measured more frequently than those with a lower level of interest.
[0056] The commands constituting the acquisition sequence are used by the processor to control the CD sensor, and in particular its transmitting module (step a), again, the process being iterative. They are also used to select the appropriate inverse sensor model, which will be used to construct the occupancy grid GO i corresponding to each measurement. In this regard, it should be noted that the sensor modeling can be continuous or discrete. In continuous modeling, the beam angle value can be chosen arbitrarily and is modeled as such. This requires recalculating the model on the fly for each new beam angle. This option requires more computing resources but is more accurate. In discrete modeling, a predefined number of inverse models corresponding to given beam angle values are calculated beforehand and stored in processor memory.This option is faster in computation time, but is either less accurate or allows fewer beam openings.
[0057] Several data points produced at different times during the process can be provided as output from the system. These may include, for example, the consolidated occupancy grid (GO), a point cloud-type environmental model built from GO, a list of ROIs, raw measurement data from sensors, etc.
[0058] In a particular embodiment of the invention, the distance sensor CD is an FMCW lidar whose angular aperture and beam direction are controllable by means of an optical phase shifter (OPS) by adjusting the phase shift of each of its channels. More specifically, the OPS varies the azimuthal angle φ in discrete steps, taking into account the variations in beam width from one "shot" to the next, to achieve a scan of the environment without gaps or overlap of detection regions corresponding to successive "shots." According to a first embodiment, the polar angle (or colatitude) θ is kept constant, resulting in a two-dimensional scan. Alternatively, the OPS can be used to vary the polar angle θ to achieve a three-dimensional scan.It is also possible to vary θ by mounting the OPA on a vibrating beam type support, or to use several stacked OPAs to perform two-dimensional scans in parallel planes at different heights.
[0059] For the sake of simplicity, we consider the case where the OPA can be controlled to achieve two different angular openings of the lidar beam: α 0 and 2α 0, but a generalization to a larger number of angular openings does not pose any difficulties.
[0060] The sensor acquires a series of distance measurements corresponding to different aiming directions (φ, θ) in order to scan said layer of the environment. If the adaptive approach of the invention is not implemented, the system user has a choice between two alternatives. Either they use the smallest angular aperture to maximize resolution, but this leads to a number of acquisitions equal to 2π / α₀ (assumed to be an integer) for each scan. This may necessitate limiting the firing rate to avoid exceeding the processor's computing power, thus limiting temporal resolution, or using a more powerful, and therefore more expensive and energy-intensive, processor. Or they use the largest angular aperture, but at the cost of reduced spatial resolution, which may lead to the loss of important details. There is therefore a trade-off between spatial and temporal resolution.
[0061] The invention makes it possible to use the highest spatial resolution (angular aperture α 0) only where it is really necessary, i.e. in correspondence with regions of interest identified by means of an appropriate criterion, and the lowest spatial resolution (angular aperture 2α 0) in order to reduce the number of acquisitions and thus increase their rate.
[0062] According to one embodiment of the invention, a criterion for identifying regions of interest is based on the differences between two successive distance measurements, corresponding to adjacent regions of the environment. If this difference, designated by "d", exceeds a threshold "ds", the sensor can be considered to be scanning the contour of an object, or an object whose surface forms a significant angle with the line of sight. In both cases, it is advisable to use the angular aperture α₀ to observe the contours accurately. In other cases, the loss of accuracy is considered acceptable if two consecutive "shots" with an angular aperture α₀ are replaced by a single shot with an angular aperture 2α₀, the line of sight of which coincides with the bisector of the directions of the two replaced shots.
[0063] This is illustrated by the [ Fig. 9[] where one can see a first pair of shots—represented by the AV1 and AV2 aiming axes of the corresponding lidar beams—measuring the distance from the rear of a car (material body CM) to the sensor CD, and a second pair of shots—also represented by the AV3 and AV4 aiming axes of the corresponding lidar beams—sampling the edge of said rear, i.e., the transition between the rear edge and the side of the vehicle. The difference d between the two distance measurements taken along the AV1 and AV2 directions is small, much lower than the threshold dS. Therefore, during successive acquisitions, the corresponding region of the environment will be sampled relatively coarsely, using lidar beams with an angular aperture of 2α0. Conversely, the difference d between the two distance measurements taken along the AV3 and AV4 directions is significant, exceeding the threshold dS.Therefore, during successive acquisitions, the corresponding region of the environment will be considered a region of interest and will be finely sampled, using lidar beams with an angular aperture of α0.
[0064] In this example, the choice of regions of interest dictating the targeting policy is based solely on the distance differences between successive shots, but, as explained above, the module for selecting regions of interest can take much more complex forms, based for example on semantic data of the scene, or by prioritizing regions of space where knowledge of the environment is most uncertain thanks to the approach of occupancy grids.
[0065] In this example, the sensor's azimuthal angle (AAO) was used to vary the azimuthal angle φ monotonically (albeit non-uniformly, as the variation step of φ depends on the beamwidth corresponding to each shot), so that all points in the environment are sampled at the same rate. It is also possible to use AAO to vary the orientation of the detection region in an "agile" manner, sampling different regions of space at the most opportune time.
[0066] As mentioned above, mechanical scanning using a rotating turret is feasible but has significant drawbacks compared to using an OPA (Optical Panoramic Area). A hybrid embodiment, combining mechanical orientation and the use of an OPA, is also possible to achieve a 360° field of view, which is not achievable with an OPA alone.
Claims
1. A method for perceiving physical bodies (CM) in an environment, comprising the following steps, iteratively implemented by a computer or a dedicated digital electronic circuit (PR): a) controlling a sensor (CD) in an acquisition sequence, with said sensor having a detection region (RD) that can be oriented in the environment in order to acquire a plurality of distance measurements (MDi) of said physical bodies; b) applying, to each of said distance measurements, an inverse model (MIN) of the corresponding sensor on an occupancy grid (GOi) providing a discretized spatial representation of an environment of said sensor, in order to determine a probability of occupancy of a set of cells of said occupancy grid by a physical body; and c) constructing a consolidated occupancy grid (GO), each cell of which has a probability of occupancy computed by Bayesian fusion of the probabilities of occupancy estimated during step b); characterized in that the detection region of the sensor has a variable angular width (α) and in that the method also comprises the following steps: d) identifying, based on said occupancy grid, at least one region of interest (ROI) of the environment; and e) determining one of said acquisition sequences defining, for each distance measurement, at least the orientation (0, φ) and the angular width (α) of the detection region of the sensor, with at least the angular widths being determined based on the one or more regions of interest identified during step d), with said acquisition sequence being used during step a) of a subsequent iteration of the method; wherein the acquisition sequence determined during step e) is adapted to sample the one or more regions of interest (ROI) or their contours, either with a higher spatial and / or temporal resolution than the rest of the environment, or with a lower spatial and / or temporal resolution than the rest of the environment.
2. The method as claimed in claim 1, wherein, during step e), the orientations of the detection region (RD) of the sensor (CD) are also determined based on the one or more regions of interest (ROI) identified during step d).
3. The method as claimed in either of the preceding claims, wherein step c) also comprises constructing a movement grid based on a time evolution of the probabilities of occupancy of the cells of the occupancy grid, and step d) comprises identifying at least one region of interest (ROI) of the environment also based on the movement grid.
4. The method as claimed in either of claims 1 or 2, wherein the sensor is adapted to also provide speed measurements of the physical bodies, with said speed measurements being used by the step d) of identifying at least one region of interest (ROI) of the environment.
5. The method as claimed in any of the preceding claims, wherein each of said inverse sensor models (MIN) is a discrete model (MQP, MQE), associating each cell of the corresponding occupancy grid (GOi), and for each distance measurement (MDi), with a probability class selected within the same set of finite cardinality, with each of said probability classes being identified by an integer index, and wherein, during said step c), the probability of occupancy of each cell of the consolidated occupancy grid (GO) is determined by means of integer computations carried out on the indices of the probability classes determined during said step b).
6. The method as claimed in any of the preceding claims, wherein the inverse model of the sensor (MIN) is stored in a memory in the form of a data structure representing a plurality of grids, called model grids, associated with respective possible distance measurements and respective possible angular widths of the detection region, with at least some cells of a model grid corresponding to a plurality of contiguous cells of the occupancy grid belonging to the same angular sector from among a plurality of angular sectors (AS1-AS4) into which the detection region (RD) of the sensor (CD) is subdivided, and associating the same probability of occupancy with each of these cells.
7. The method as claimed in any of the preceding claims, wherein step c) comprises constructing the consolidated occupancy grid also based on distance measurements originating from one or more auxiliary sensors (CA).
8. A system for perceiving physical bodies (CM) comprising: - at least one input port for receiving a plurality of signals representing distance measurements (MDi) of said physical bodies originating from one or more sensors; - a data processing module (PR) configured to receive said signals as input and to use them to construct a consolidated occupancy grid (GO) and to determine an acquisition sequence by applying a method as claimed in any of claims 1 to 7; - a first output port for a signal representing the occupancy grid (GO) or the one or more regions of interest (ROI); and - a second output port for a signal representing the acquisition sequence (α, θ, φ).
9. The system as claimed in claim 8, further comprising one or more distance sensors (CD) adapted to receive said signal representing the acquisition sequence from said second output port and to provide said one or more input ports with signals representing a plurality of distance measurements of physical bodies.
10. The system as claimed in claim 9, wherein the or at least one distance sensor is of the radar, Lidar, or sonar type and comprises a beamforming system for controlling the orientation and the angular width of an electromagnetic or acoustic radiation beam defining the detection region.