Radar detection methods and systems for identifying moving objects
11041947 · 2021-06-22
Assignee
Inventors
Cpc classification
G01S13/536
PHYSICS
G01S13/72
PHYSICS
G01S13/538
PHYSICS
International classification
G01S13/538
PHYSICS
G01S13/536
PHYSICS
Abstract
A method and system for identifying an object in one space monitored by at least one radar transceiver. The method comprises storing intervals of critical distance values (10) associated with the position of a fixed object upon which a time-varying radio signal shadow may be generated, which may be confused with a moving object. Through successive radar detections, the signals are processed and generate a measurement range profile (40), from which a background range profile (41) is extracted to obtain an object range profile (50). The distance of a possible detected object (60) is determined from the analysis of the object range profile. If the distance of the object (4) is external to the critical intervals (51), the object is classified as valid (55). If the distance is internal to the intervals, the detected object may be a shadow and unless further checks are performed, its presence is not indicated.
Claims
1. A method for identifying a moving object inside a space monitored by at least one radar transceiver configured for transmitting and receiving continuous wave radio signals, at least one fixed object which reflects the radio signals being present in the monitored space, the method comprising: storing one or more critical intervals of distance values from the transceiver, the critical intervals being associated with a position of the at least one fixed object in the monitored space; performing a plurality of radar detections which comprises a current radar detection at a current detection instant t.sub.k and at least one previous radar detection performed at a detection instant t.sub.k-i preceding the current detection instant t.sub.k, every radar detection comprising: a) transmitting a continuous wave radio signal by the at least one transceiver; b) receiving by the at least one transceiver a return radio signal reflected by at least one object located inside the monitored space; c) processing the transmitted radio signal and the return radio signal for producing a measurement range profile, wherein the measurement range profile is a profile of amplitude as a function of a distance from the transceiver; and d) subtracting from the measurement range profile a background range profile, representative of the monitored space in an absence of moving objects, so as to obtain an object range profile; analyzing the object range profile relative to the current radar detection by searching for amplitude peaks and respective associated distance values, identifying an amplitude peak that represents a current object detected, and selecting an object distance value d.sub.k corresponding with the identified amplitude peak; storing an object position p.sub.k which comprises the object distance value d.sub.k and the current detection instant t.sub.k; assessing validity of the current object, wherein assessing the validity comprises: determining whether the object distance value d.sub.k of the current object is internal or external to the one or more critical intervals of distance values; if the object distance value d.sub.k of the current object is external to the one or more critical intervals of distance values, classifying the current object as valid so as to identify the current object as a moving object in the monitored space; and if the object distance value d.sub.k of the current object is internal to the one or more critical intervals of distance values, classifying at least temporarily the current object as not valid so as to identify the current object as a fixed object in the monitored space; wherein the method further comprises, before performing the current radar detection: analyzing the object range profile relative to the at least one previous radar detection by selecting an object distance value d.sub.k-i corresponding with a respective amplitude peak in the object range profile that represents a previously detected object; and storing at least one object position p.sub.k-i, which is relative to the at least one previous radar detection and which comprises the object distance value d.sub.k-i and the detection instant t.sub.k-i; wherein the method further comprises, during the current radar detection: assessing whether the current object corresponds to the previously detected object; and wherein assessing the validity of the current object further comprises: if the current object was classified at least temporarily as not valid, calculating at least one observation time interval defined by a difference between the current detection instant t.sub.k and the at least one previous detection instant t.sub.k-i, determining whether the at least one observation time interval s greater than a predetermined threshold value for time of permanence in the one or more critical intervals of distance values, if the at least one observation time interval is greater than the predetermined threshold value, changing the classification of the current object from not valid to valid, and if the at least one observation time interval is less than the predetermined threshold value, keeping at least temporarily the classification of the current object as not valid.
2. The method according to claim 1, wherein assessing the validity of the current object further comprises: if the current object was classified at least temporarily as not valid, determining whether the object distance value d.sub.k-i of the object detected at the at least one previous detection instant t.sub.k-i is internal or external to the one or more critical intervals of distance values; if the object distance value d.sub.k-i of the previously detected object is external to the one or more critical intervals of distance values, changing the classification of the current object from not valid to valid; and if the object distance value d.sub.k-i of the previously detected object is internal to the one or more critical intervals of distance values, keeping at least temporarily the classification of the current object as not valid.
3. The method according to claim 1, further comprising, after storing an object position p.sub.k and prior to assessing the validity of the current object: sending the object position p.sub.k to an automatic trajectory generator configured for modeling a plurality of trajectories of a respective plurality of tracked objects, wherein each trajectory consists of at least one object position, for identifying each trajectory by assigning a respective trajectory code that represents a detected object, and for storing each trajectory in association with its respective trajectory code; and assigning, by the automatic trajectory generator, a trajectory code IDj to the object position p.sub.k of the current object and outputting the trajectory code IDj; wherein assessing the validity of the current object comprises receiving the object position p.sub.k associated with the trajectory code IDj.
4. The method according to claim 3, wherein assessing the validity of the current object further comprises: if the current object was classified at least temporarily as not valid, assessing whether the trajectory identified by the trajectory code IDj has been classified as valid in the at least one previous radar detection; if the trajectory code IDj relative to the current object is associated with a trajectory already classified as valid, changing the classification of the current object from not valid to valid; and if the trajectory code IDj relative to the current object is associated with a trajectory classified at least temporarily as not valid, keeping the classification of the current object as not valid.
5. The method according to claim 3, wherein assessing the validity of the current object further comprises: providing a first database configured for storing object positions and associated trajectory codes, wherein a classification as valid or an at least temporarily classification as not valid is associated with every trajectory code IDj; if the current object was classified at least temporarily as not valid, querying the first database to check whether a classification as valid was associated in the at least one previous radar detection with the trajectory having the trajectory code IDj relative to the current object; if a classification as valid is associated with the trajectory code IDj relative to the current object, changing the classification of the current object from not valid to valid; and if an at least temporarily classification as not valid is associated with the trajectory code IDj relative to the current object, keeping the classification of the current object as not valid; wherein validating the current object comprises assigning a validity code to the trajectory IDj, the method comprising, after validating the current object, transmitting the object position p.sub.k of the current object in association with the trajectory code IDj and with the classification as valid to the first database.
6. The method according to claim 3, wherein assigning by the automatic trajectory generator, a trajectory code IDj to the object position p.sub.k comprises: assessing whether at least one first trajectory identified by a first trajectory code is stored in the automatic trajectory generator; if at least one first trajectory is stored, calculating a radar tracking time metric on a basis of a time interval between the current detection instant t.sub.k and detection instants of corresponding object positions of the at least one first trajectory to assess whether the current object position is compatible in time with the at least one first trajectory; if the current object position is compatible in time with the at least one first trajectory, calculating a distance metric between the current object distance d.sub.k and object distances of the object positions of the at least one first trajectory to assess a compatibility in distance between the current object position p.sub.k and the object positions of the at least one first trajectory; if the compatibility in distance of the current object position is established, assigning the first trajectory code to the object position of the current object; and if the compatibility in distance or the compatibility in time of the current object position is not established, assigning a second trajectory code different from the first trajectory code to the current object position.
7. The method according to claim 1, further comprising, before storing one or more critical intervals of distance values: transmitting and receiving by the at least one radar transceiver a continuous wave radio signal that covers the monitored space in the absence of moving objects; processing the trans ted radio signal and the return radio signal for producing a reference range profile; in the reference range profile, selecting amplitude values greater than one or more predetermined amplitude threshold values and selecting respective and corresponding critical distance values; and defining one or more critical intervals of distance values, every critical interval being formed of a continuous sequence of distance values that represent a position and extension of a respective fixed object.
8. The method according to claim 1, further comprising, after validating the current object, generating a presence signal.
9. The method according to claim 1, wherein the transmitted radio signal is a frequency modulated continuous wave (FMCW) signal or a stepped frequency continuous wave (SFCW) signal.
10. The method according to claim 1, wherein the at least one radar transceiver is a plurality of radar transceivers configured for transmitting and receiving continuous wave radio signals that cover a respective visual field and that have a respective main transmission direction, the visual fields of adjacent transceivers of the plurality of transceivers being partially overlapped to each other, the combination of the visual fields forming the monitored space, and wherein the transceivers are arranged in such a way that the main transmission directions of adjacent transceivers are distinct from each other, each transceiver of the plurality of radar transceivers performing a plurality of radar detections which comprise a respective current radar detection and at least one previous radar detection, wherein analyzing the object range profile relative to the current radar detection comprises analyzing the object range profiles relative to their respective current radar detections performed by every transceiver by searching for amplitude peaks and their respective corresponding distances, identifying an amplitude peak in at least one object range profile that represents a current object by selecting an object distance value d.sub.k, wherein analyzing further comprises calculating a respective signal amplitude value for every object range profile, determining a signal vector for each transceiver, wherein each signal vector is defined by a transmission direction and by a modulus, the transmission direction of the signal vector being coincident with the main transmission direction of the corresponding transceiver and the modulus being equal to the signal amplitude value calculated for the corresponding transceiver; and determining a direction θ.sub.k of the current object by calculating an average signal vector of the plurality of signal vectors, wherein the direction θ.sub.k of the current object is defined by the direction of the average signal vector; wherein storing an object position p.sub.k comprises storing an object position for each transceiver, each object position being defined by the object distance value d.sub.k, the direction θ.sub.k, and the detection instant t.sub.k.
Description
BRIEF DESCRIPTION OF THE DRAWINGS
(1) The characteristics and advantages of the present invention will result from the following detailed description of a possible practical embodiment, illustrated as a non-limiting example in the set of drawings, in which:
(2)
(3)
(4)
(5)
(6)
(7)
(8)
(9)
(10)
DETAILED DESCRIPTION
(11) The present invention may be implemented in a radar system that comprises at least one radar transceiver. Referring to
(12) The method and the system particularly find application in intrusion prevention monitoring when at least one radio signal-reflecting fixed object 5 is present in the monitored space 3. It shall be understood that more than one fixed object may be present in the visual field. These fixed objects are permanently present in the monitored space, e.g. for an entire monitoring period consisting of a sequence of radar detections. The monitored space may be also delimited by one or more fixed objects, represented for example by walls, furniture or other fixtures.
(13) The transceiver 1 transmits a radio signal 2 that is reflected by a moving object 4 in the field of view. The term moving object 4 is not necessarily intended to designate an object that moves at each instant, but also an object that remains temporarily still and changes position relative to the transceiver 1 between two successive detections separated by a time interval.
(14) The fixed object 5 also reflects the radio signals transmitted by the transceiver, both in case of intrusion of moving objects, and when no foreign object is present. As is known per se, a transceiver that uses a SFDW or FMCW signal transmission technique distinguishes the signal that comes from the moving objects 4 from the signal reflected only by fixed objects 5, by measuring a return signal from the fixed objects only and processing the return signal to produce a background signal. As more clearly explained below, the method of the invention may use various prior art methods to distinguish the contribution originated from moving objects 4 in the received signal from the background contribution, i.e. to remove the background signal.
(15) As schematically shown in
(16) In the embodiment of
(17) In a different embodiment, the radar system comprises a plurality of transceivers, preferably of monostatic or pseudo-monostatic type.
(18) Preferably, the continuous wave radio signals transmitted by the radar are frequency-modulated continuous wave (FMCW) signals or stepped-frequency continuous wave (SFCW) signals.
(19) In the present invention, the control unit 7 stores one or more intervals of critical distance values from the transceiver 1 in the monitored space (where the distance is from the receiving antenna of the transceiver), the one or more critical distance intervals being associated with the presence of at least one fixed object, whose extent in space is represented by a distributed amplitude above the threshold which generally spans a plurality of distance values in a range profile. Therefore, the position and extent of the fixed object are represented by an interval of critical distance values. Preferably, each interval of critical distance values comprises a continuous sequence of critical distance values.
(20) Upon the passage of a moving object 4 that casts a shadow on a fixed object 5, the signal change associated with the shadow on the fixed object 5 will be detected by the radar at the fixed object 5, i.e. within an interval of critical distance values.
(21)
(22) The method comprises performing a plurality of radar signal detections, which are preferably repeated in a time sequence. The plurality of radar signal detections up to a given time instant, referred to herein as current detection instant, comprises a last detection, or current detection, and one or more detections preceding the current detection. After each radar detection, the control unit stores the data resulting from the processing of transmission and reception signals.
(23) It shall be noted that the designation of a radar signal detection as “current” or “preceding” depends on the instant in which the plurality of radar detections is being considered. An object detected in the current detection will be designated as current object.
(24) Still referring to
(25) Such signal processing is known per se and
(26) As is known per se, the FMCW return signal 7 has substantially the same waveform as the transmitted signal 4, but it is picked up by a transceiver with a smaller signal amplitude as compared with the transmitted signal 4 and with a time delay given by the time that the signal takes to travel from a transceiver to the target 6 and from the target 6 to the same transceiver. The time delay generates a frequency difference Δf between the transmitted signal 4 and the return signal 7, which is indicative of the distance d of the target 6. If the transmitted signal 4 is modulated according to a frequency ramp having a duration T, increasing from a minimum value to a maximum value within a frequency range having a bandwidth BW, the distance d of a stationary target may be expressed as:
(27)
where v is the signal speed in the medium. For air applications, v corresponds to the speed of light c. The step 45 may use Eq. (1) to convert the signal frequency-difference values in the DFT domain (amplitude-frequency) into respective distance values to thereby obtain an amplitude-distance range profile.
(28) In a further embodiment, the transceiver 1 is an SMCW transceiver configured to transmit a continuous-wave stepped-frequency modulated waveform transmission signal. As is generally known, the stepped-frequency transmission signal is composed of a sequence of spectral components having a constant frequency and duration Tone, in which the frequency of the components varies discreetly and with a constant pitch from a minimum frequency, f.sub.min to a maximum frequency f.sub.max, in a frequency bandwidth BW. The SFCW transceiver receives a return signal and performs a phase demodulation by beating the received signal with a copy of the transmission signal and preferably by applying a low-pass filter to the select the component of interest. The received tones are thus converted into an analog baseband signal whose information is contained in the continuous zero-frequency component, because beat occurs between two signals having the same frequency, but different amplitudes and phases. For this purpose, each transceiver comprises a TX module, a RX module, a signal sweep generator for generating a continuous wave with a desired sequence of spectral components, a radio signal mixer and a low-pass analog filter. The steps of producing a measurement range profile are similar to those that are schematically shown in
(29) In the present description and claims the term range profile is generally intended to mean an amplitude profile of a signal as a function of a distance from a receiving antenna of one or more transceivers.
(30) Referring to
(31) In one embodiment, determining a background range profile 41 comprises performing an initial radar signal detection with no moving objects in the monitored space, to thereby obtain a background measurement range profile, which will be referred to hereinafter as background range profile. In this embodiment, the background range profile is determined according to steps 42 to 45 described with reference to
(32) In another embodiment, determining a background range profile 41 comprises performing first and second radar signal detections, thereby calculating respective first and second measurement range profiles, calculating an average range profile of the first and second measurement range profiles as a background range profile to be subtracted from the second measurement range profile. After each additional radar detection, the background range profile is calculated as the average range profile of the plurality of measurement range profiles corresponding to a respective plurality of preceding distinct radar detections. The iterative calculation of background range profile as an average of preceding measurement range profiles may be performed on a sub-plurality of measurement range profiles, e.g. on the N measurement range profiles corresponding to the N last radar detections. After performance of the radar detection (N+1), the background range profile defined by the average profile of the last N detections is subtracted from the measurement range profile (N+1) to obtain an object range profile associated with the radar detection (N+1).
(33) A further background removal technique is range-Doppler separation. This technique is based on the fact that, if an object is moving, the frequency difference between the transmitted signal and the return signal, which is equal to the frequency of the baseband signal, is not only caused by the time delay between the signals, but also by the Doppler effect. The amount of the Doppler effect may be assessed using well-known techniques, e.g. by modulating the transmitted signal according to a triangular-wave frequency variation cycle. In this embodiment, determining the background range profile 41 comprises detecting the presence of a Doppler effect for each component of the measurement range profile, by comparing a measurement range profile obtained during the increasing ramp and a measurement range profile obtained during the decreasing ramp. Assuming that the detected object is moving and the background is only composed of stationary objects, the method comprises determining the background range profile as a component of the measurement range profile without Doppler effect, and subtracting this component from the measurement range profile to obtain the object range profile as a component of the measurement range profile subject to Doppler effect.
(34) Referring again to
(35) In one embodiment, the amplitude threshold values are represented by a predetermined constant threshold value, which means that the amplitude values of the reference range profile are compared with a single amplitude threshold value.
(36) Preferably, the threshold values are defined by a curve of threshold values versus the distance, the curve exponentially decreasing as the distance from the transceiver increases. An exponential decrease of the amplitude threshold values accounts for the fact that free-field propagating electromagnetic waves have an amplitude that exponentially decays with distance. Accordingly, the curve of amplitude threshold values allows distance value intervals to be classified as critical according to the size of the objects, substantially irrespective of the distance of the fixed objects.
(37) It shall be noted an object range profile determined in a given radar detection does not necessarily have only one amplitude peak: there may be no amplitude peak, or the object range profile may comprise a plurality of amplitude peaks (above the threshold) and corresponding distances. The discussion hereinbelow assumes that the radar detection leads to the identification of at least one amplitude peak in the object range profile and hence that at least one moving object is detected.
(38) In step 60 amplitude peaks (above the amplitude threshold value), as well as respective object distances associated with the peak values are identified, without distinction as to the origin of such amplitude peaks, i.e. as to whether they are moving objects foreign to the environment or if they are caused by shadow casting.
(39) The position of the detected object is referred to hereinafter as object position and is defined by at least two values: an object distance value and an associated detection instant.
(40) Preferably, the detection instant is defined by a time reference, i.e. a timestamp, e.g. a numeric code with a date and a time with a millisecond resolution or a numeric code that represents the number of milliseconds elapsed from an arbitrary time reference, e.g. the instant in which the transceiver is turned on.
(41) The embodiment of
(42) Once at least one object distance value associated with a possible moving object has been determined (step 60), the method comprises, after each radar detection, assessing the validity of the detected object (step 70a). In the embodiment of
(43) If the object distance value is external to the one or more intervals of critical of distance values, then the object associated with the object distance value is determined to be valid, i.e. is validated (55). Since a signal change in a position in which there is no fixed object 5 cannot be caused by a shadow cast on a fixed object, amplitude peaks, external to the critical intervals are associated with “real” movable objects. After validation of the current object, the object position is stored in the control unit. Preferably, a validity code is associated with the object position and the object position is stored in association with the validity code.
(44) In certain embodiments, if the current object is determined as being valid (55), the control unit is configured to emit a visual and/or acoustic alarm and/or is configured to transmit a signal indicative of the presence of an object in the monitored space to a remote system, e.g. an alarm panel, or a telecommunications network, as is known per se. In general, the control unit is configured to generate a presence signal, possibly after further checks.
(45) If the object distance value is internal to one of the one or more critical intervals, the corresponding object might be either a shadow or a real moving object 4 very close to the fixed object 5 that falls within the interval of critical distance values. Then, the object is determined as “to be validated”, i.e. it is classified at least temporarily as not valid, and its object position is stored. In this case, no validity code is associated with the object position, or otherwise a non-validity code is associated therewith.
(46) If the current object has not been validated by the step 51, the control unit is preferably configured not to indicate the presence of the current object, i.e. to avoid detection of false positives.
(47) In certain embodiments, if the object is classified as “to be validated” and the transceiver operates in a single target detection mode, for detecting a single target within the visual field, after the step 51, the control unit performs a check (step 52) to determine whether the current object has already been detected and if, based on the detections preceding the current detection, the current object can be validated.
(48) The step 52 comprises a step 53 for checking whether there is at least one object position relative to a preceding detection performed at a detection instant t.sub.k-i<t.sub.k, i=1, 2, . . . (k−1), whose object distance value d.sub.k-i is external to all the critical intervals of distance values stored. If it is, the current object is determined as being valid because it has already been detected in a position that is not affected by possible shadows cast by fixed objects. Therefore, the object classification is changed from not valid to valid.
(49) In one embodiment, prior to the step 53 or 54 (described below), the step 52 comprises selecting the object positions for the preceding measurements that can be associated with a significant probability with the current object, by selecting the object positions for respective time instants preceding the time instant of the current detection and separated from the latter by a time interval of less than or equal to a predetermined extinction time.
(50) In a different embodiment, the control unit is configured to automatically delete from the memory the object positions whose detection times are separated from the current detection by a time interval greater than the extinction time. In this second embodiment, any object positions for preceding measurements stored in the memory are assumed to be always associated with the current object.
(51) In one embodiment, which includes associating a validity code with the object position of a validated object and automatically deleting from the memory the object positions whose detection times are separated from the current detection time by a time interval greater than the extinction time, the step of verifying 53 comprises determining whether there exists in memory at least one object position previously detected by the current object position in association with the validity code. If there is, the current object is validated and the associated object position is stored in association with the validity code.
(52) If the result of the checking step 53 is negative, the control unit is preferably configured to carry out a further check (step 54), by calculating the time of permanence of the current object in the interval of critical distance values. The check of step 54 is designed to determine whether the detected object, although placed at a critical distance, is a real object as it remains in the critical range for a given interval of time. The step 54 comprises analyzing the detection instants in which the object positions for the preceding measurements have been detected by determining the longest time interval between the current detection instant t.sub.k and the detection instant t.sub.k-i<t.sub.k of a preceding object position. If the calculated observation time interval Δt.sub.i is greater than a predetermined threshold time value, indicated as the threshold value for the time of permanence, the current object is determined as being a valid target (55). The method proceeds with the validation of the object position of the current object and, preferably with the generation of a presence signal.
(53) If the time interval is less than or equal to the threshold value for the time of permanence, then the detected object is classified “to be validated” and the checking program 70a ends (56). In one embodiment, the predetermined threshold time interval ranges from 200 ms to 5 s, more preferably from 300 ms to 2 s.
(54) The steps (53) and (54) may be exchanged in order. The control unit may be configured to only execute one of the steps 53 and 54.
(55) The step 10 of storing the critical intervals is preferably carried out only once, or anyway not cyclically at each radar detection. For example, the intervals of critical distance values may be provided as input data to the transceiver by an operator to be stored in the control unit of the radar system.
(56) In a preferred embodiment, the method comprises a step of determining critical intervals of distance values, prior to the step 10.
(57) The method 9 of determining the critical intervals of distance values comprises performing a radar detection, with no moving targets, to produce a reference range profile (step 11). The step 11 comprises the steps 40 and 50 described with reference to
(58) After the step 13 of analyzing the reference range profile that comprises selecting the critical distance values, the method 9 comprises determining critical distance intervals, each interval comprising a continuous sequence of critical distance values, representative of the position and extent of a fixed object.
(59) It shall be noted that in the embodiment in which the background range profile 41 is determined by an initial radar detection with no moving targets, the reference range profile 11 may substantially coincide with the background range profile.
(60) The Applicant found that, while the validation of a moving object associated with a position external to the critical distance intervals allows selection of detection data that is certainly representative of moving targets, thereby eliminating or at least substantially reducing the problem of false positives, the classification of each detected object at a distance that falls in an interval of critical distance values of the monitored space as invalid may generate false negatives. In a preferred embodiment, the method comprises identifying and tracking each object detected in the object range profile.
(61) The term tracking of a moving object is intended to designate the detection of the spatial position of an object in time as a sequence of spatial positions in time to define a trajectory. Each trajectory comprises a sequence consisting of at least one object position defined by at least two values: an object distance value d.sub.k and an associated detection instant t.sub.k. In one embodiment, the object position p.sub.k is defined by the pair of values p.sub.k=(d.sub.k, t.sub.k) and the spatial position in the observation space of the radar system coincides with the object distance value d.sub.k. This is for example the case of the use of a single transceiver or a plurality of transceivers that are distant from one another (i.e. no or no significant overlap of the visual fields of the transceivers of the plurality).
(62) In a different embodiment, as described in further detail hereinbelow, in which the radar system comprises a plurality of transceivers, with at least two adjacent transceivers having overlapping observation fields, the object position is defined by an object distance value, a detection angle value (e.g. azimuth angle) θ.sub.k and a detection instant, p.sub.k=(d.sub.k, θ.sub.k, t.sub.k). In a further embodiment the object position is also defined by an angle of elevation.
(63) If the spatial position is only defined by the distance, the trajectory is “one-dimensional” (moving away/toward), whereas in case of the object position p.sub.k=(d.sub.k, θ.sub.k, t.sub.k), the trajectory is two-dimensional as it also comprises the angular movement.
(64) Each trajectory is associated with a trajectory code IDj representative of a j-th detected moving object, which is unique for that object.
(65) By modeling the moving objects into trajectories, information concerning the same object during subsequent detections may be compared, with the possibility of determining with greater accuracy whether an object detected at an interval of critical distance values is a “real” object or a shadow. Further details about a method of tracking moving objects, according to one embodiment, are given hereinbelow with reference to
(66)
(67) In this description of the figure, reference will be made to a spatial position that is defined either by the distance only or in two-dimensions (e.g. distance and detection angle). The method of
(68) The method of
(69) The tracker 80 outputs the object position p.sub.k and an associated trajectory code IDj identifying the trajectory associated with the current j-th object and transmits the data (IDj, p.sub.k) to the validity check algorithm 70 that checks the validity of the j-th object, which comprises at least one validity check step.
(70) After reception of the data IDj and p.sub.k, the method comprises a step 76 of checking whether the object position p.sub.k is external to or falls within an interval of critical distance values. If the result of step 76 is that the distance of the object is external to all the intervals of critical distance values stored in the memory during a previous step, e.g. step 10, the current object is validated (step 79) and the method proceeds with the assignment of a validity code, V, to the trajectory IDj and with the transmission of the data (IDj, p.sub.k, V) to a first database 75 for storing the trajectories, with each stored trajectory being associated with the information about the validity status of the trajectory, i.e. as to whether the trajectory represents a valid object or not. Particularly, each trajectory is associated with a validity code V (step 79) if the object has been validated in a radar detection, or a “non validity” code, NV, if the detected object is still under observation because there was no way of establishing whether it is a real object or a shadow. It shall be understood that other implementations may be provided to indicate that a trajectory is validated. For example, a validation tag is assigned if a checking step has yielded a positive result, whereas the absence of a validation may be indicated by the absence of a tag associated with the trajectory.
(71) The first database 75 is preferably a data structure, for example a lookup table formed by vectors associated with respective trajectories identified by a respective trajectory code ID and described by one or more object positions (p.sub.1, . . . , p.sub.k), in which the positions are for example defined by respective object distance values and timestamps. Each vector represents a trajectory and it may be given a validity code or, if admitted, a non-validity code.
(72) If the result of the checking step 76 is that the distance of the object falls within an interval of critical distance values, the method proceeds with a checking step 77 if the current object is an object that has been already validated in at least one radar detection preceding the current detection. If an object that at the current detection instant is at a distance that falls within a critical interval, is nevertheless associated with a previously stored trajectory that has already been classified as valid, then the object is not a shadow, but a real moving object, at least with a high probability that generally depends on the accuracy of the tracking algorithm 80.
(73) In one embodiment, the step 77 comprises querying the first database 75 to check whether the trajectory code IDj is present in the first database, i.e. identifies an existing trajectory, and if it does, such trajectory code identifies a valid trajectory, e.g. the trajectory code is assigned a validity code V.
(74) If the result of step 77 is that IDj identifies an existing valid trajectory, the current object is determined as being valid (79) and the data (IDj, p.sub.k, V) is transmitted and stored in the first database 75.
(75) The steps (76) and (77) may be exchanged in order. After the step 60 and the association of the trajectory code, a check may be made as to whether the relevant trajectory has been classified as valid in at least one preceding detection (step 77), and only if it has not been classified as such the object position can be compared with the one or more critical intervals (step 76). In this embodiment, not shown, the data (IDj, p.sub.k) output by the tracker 80 is transmitted to the first database 75. The method proceeds by querying the first database 75 to check whether the trajectory code IDj identifies a valid trajectory. If it doesn't, the method proceeds to check whether the object position p.sub.k is external to or falls within an interval of critical distance values.
(76) It will be appreciated that the execution of step 76 does not necessarily require the knowledge of the identification code of the current object position.
(77) If the result of step 77 is that there was no way of associating the current object with an existing trajectory or the object is associated with an existing and not (yet) validated trajectory, the process 70 of checking the validity of the detected object preferably comprises a step 78 of checking whether the detected object is present within an interval of critical distance values for a time that is longer than a predetermined threshold value for the time of permanence. Step 78 comprises storing the object position at the instant t.sub.k and check, by querying the first database 75, whether the trajectory IDj is an existing trajectory that comprises at least one object position p.sub.k-i in the critical range and was detected at an instant t.sub.k-i (i=1, 2, . . . (k−1) preceding the current detection instant t.sub.k and, if it was, calculating an observation time interval between the two instants and comparing the observation time interval with the predetermined threshold value, and if the observation time interval is greater than the threshold value for the time of permanence, the current object is validated (79).
(78) In practice, in one embodiment, when a new trajectory code is assigned to an object position by the tracker 80, a timer is initialized which will indicate, in the subsequent detections that can be associated with the same trajectory code, how long the detected object falls within a critical interval of distance values. In one embodiment, successive proximate detections are temporally spaced by a time interval of time Δt and the observation time is a multiple of Δt, nΔt, with n being an integer. Each time the Δt timer is increased, a radar detection is performed to determine an object position.
(79) After validation of the current object, a validity code is assigned to the trajectory IDj and the data (IDj, p.sub.k, V) is stored in the first database 75. It shall be noted that the validity code is assigned to the trajectory and hence to all the object positions of the trajectory, including any object positions detected at instants preceding t.sub.k.
(80) If the observation time interval is shorter than or equal to the threshold value for the time of permanence, the current object is classified “to be validated” and the validity check program 70 ends (74) and proceeds with the storage of data (IDj, p.sub.k) in the first database 75 without assigning a validity code to this data (or assigning a code NV that indicates that the object is yet to be validated). The validity of the object may be assessed in case of subsequent radar detections that can be associated with the same trajectory code.
(81) The threshold value for the time of permanence preferably ranges from 200 ms to 5 s, more preferably from 300 ms to 2 s.
(82) The observation of the detected object for one observation time interval before validation of an object in a critical interval can prevent a considerable number of false alarms derived from shadows that remain for a short time on a fixed object represented by a critical interval of distance values. In certain embodiments, the step 78 can classify as valid a “new” object detected as a real moving object even though it falls within a critical interval, although with a time delay that is equal to the predetermined threshold value for the time of permanence. This will afford detection of an intruder who passes through the monitored space and moves at the critical intervals (furniture, etc.) to avoid radar control by being mistaken for a shadow.
(83) In certain embodiments, the order of execution of the steps 76, 77 and 78 may be different from the one as shown in
(84) In one embodiment, the method comprises, after step 79, the generation of a presence signal, possibly after the execution of one or more automatic checks for classifying the movement (human, measurement error, a window, etc.) or to understand whether the detected object is in the permitted zone of the environment being monitored.
(85)
(86) The tracker 80 receives an input with an object position p.sub.k associated with the object detected at a current detection instant t.sub.k (step 60 in
(87) A trajectory is the path that a moving object follows in space in a time-dependent manner and is a set of time-sorted object positions. The trajectory code is uniquely associated with a detected object, i.e. there are no two distinctly detected objects simultaneously associated with the same ID. For example, objects detected in the same detection are associated with different trajectories and are then associated with different identification codes and interpreted as distinct objects.
(88) The tracking method implemented by the tracker 80 comprises, after reception of the object position p.sub.k, a step 82 of checking whether the DB 85 stores at least one trajectory (ID, object position/s). If no trajectory is stored, for instance upon power-on of the radar system, the method proceeds with the assignment of a new trajectory code to the current object position by generating a new trajectory (83).
(89) Any existing trajectories consist of object positions for detections preceding the current detection. The existing object trajectories are generated with the same method for the current detection (e.g. steps 10 to 60), at an instant in which the respective trajectory origin detections were considered the current detection.
(90) If the second database 85 stores at least one trajectory identified by a trajectory code, the method proceeds to a step 84 of checking whether the object position p.sub.k, received as an input, belongs to one of the at least one stored trajectory or not.
(91) Step 84 comprises a first step 84a of calculating a metric for the tracking time between of the object position p.sub.k and the object positions stored in the second database 85. In one embodiment, the tracking time metric checks whether the time interval between the detection instant t.sub.k, e.g. the timestamp, of the current object position and the timestamps of the object positions for each stored trajectory is shorter than a predetermined extinction time value. Preferably, the checking step 84a comprises comparing the timestamp of the current object position with the maximum timestamps (T.sub.max).sub.m, i.e. for the last detection in order of time for each trajectory ID.sub.M, m=1, 2, . . . , M (M number of stored trajectories). If the time interval between the current timestamp and the (t.sub.max).sub.m is greater than the extinction time value for the respective maximum timestamps of the object positions for the last detection for each trajectory ID.sub.m, then the object is deemed not to belong to any of the trajectories stored in the database (DB) 85.
(92) For example, if the time interval after the last detection instant is longer than the predetermined value for the extinction time, the stored trajectories are “broken”, and are preferably deleted from the memory. This is the case, for example, in which the target associated with that trajectory is no longer visible, and may be thus deemed to be “extinct”.
(93) In one embodiment, the extinction time value ranges from 1 to 10 seconds.
(94) If the result of step 84a is that the object does not belong to any of the trajectories stored in DB 85, then the method associates a new trajectory code to the object position of the current detected object (step 83). The new trajectory code and the associated object position are transmitted and stored in the DB 85.
(95) If the result of step 84a is that the current object position is compatible in time with at least one of the trajectories stored in DB 85, the checking step 84 proceeds to a step 84b of calculating a metric for the distance between the current object position and the object positions of the at least one trajectory. The checking step 84b comprises selecting the at least one trajectory ID.sub.m that comprises of the object position with the timestamp (T.sub.max).sub.m that is closest to t.sub.k and comparing the object distance value of the current object position with the object distance value of the object position at (T.sub.max).sub.m. If the difference between the object distance value and the distance value associated with (T.sub.max).sub.m is greater than a predetermined distance threshold value, then the detected object is deemed to be too far away to the last position of the at least one selected trajectory and thus cannot be associated with the trajectory ID.sub.m. In this case, a new trajectory is generated (step 83), which is defined by a new trajectory code.
(96) Conversely, if the detected object is determined as being sufficiently close to the at least one selected trajectory, for instance at a distance less than 1 meter, the current object position is assigned the trajectory code of the selected trajectory (step 86).
(97) The distance checking step (84b) can distinguish and track the movements of a plurality of objects that are simultaneously present in the monitored space. A plurality of trajectories may be stored in the memory, and each object detected in the current detection is later compared with distinct stored trajectories up until a compatible trajectory, if any, is found.
(98) The position of the current object is stored in DB 85 to update an existing trajectory or to generate a new trajectory.
(99) The above discussed method of tracking the detected objects may be effective when the object position is only represented by an object distance, or by an object distance, a detection angle, and optionally an angle of elevation. In the former case, the position is a scalar quantity in space (i.e. distance d.sub.k), while in the latter case the position is a vector quantity. In one embodiment, the two-dimensional position in the detection plane (x,y) is defined by (x.sub.k, Y.sub.k) with x.sub.k=d.sub.k.Math.cos(0.sub.k) and y=d.sub.k.Math.sin(0.sub.k) and of the object position p.sub.k=(d.sub.k.Math.cos(0.sub.k), d.sub.k.Math.sin(0.sub.k), T.sub.k).
(100) The tracking method 80 outputs a trajectory code IDj of the trajectory of the detected current object (steps 83 or 86) associated with the object position p.sub.k as determined in object range profile. The output data (IDj, p.sub.k) is input for carrying out the step 70 of validating the detected object (
(101)
(102) The object validating processor 102 is logically connected to a first database 75 for entering and storing the trajectories identified by a respective trajectory code, which is assigned a validity code or a different code that indicates that the trajectory is yet to be validated.
(103)
(104) Preferably, the main transmission direction 2a, 2b, 2c of each transceiver is the maximum radiation direction and the respective maximum radiation directions of each transceiver substantially lie on a common plane, i.e. the detection plane. The term “substantially”, in the context of the common plane for the plurality of transceivers, is intended to indicate that the maximum radiation directions of can may on coincident or at least incident planes, that form such a small angle as to have a very small gain difference between the transmitting antennas of the transceivers.
(105) The main transmission directions 2a, 2b, 2c of the distinct transceivers 1a, 1b, 1c are different from and particularly incident on each other. In a preferred embodiment, as shown in
(106) The main transmission directions 2a, 2b, 2c of the plurality of radar transceivers 2a, 2b, 2c are incident on each other and cross at a single point P, behind the radar transceivers 1a, 1b, 1c.
(107) In a preferred embodiment, the detection plane is the azimuthal plane of the respective transmitting (or transmitting/receiving) antenna of the transceivers.
(108) Each transceiver transmits radio signals that cover a visual field 3a, 3b, 3c with a main transmission direction 2a, 2b, 2c, the visual fields of adjacent transceivers of the plurality of transceivers being in a partially overlapped relationship. The visual fields form together the space monitored by the radar system.
(109) The control unit 100 stores respective intervals of critical distance values (step 10) for each transceiver. In the example of
(110) Preferably, the visual field of each transceiver, for instance the visual field 3a of the transceiver 1a, angularly extends at least to the main transmission direction 2b of an adjacent transceiver 1b. Thus, at least half of the visual field 3a of a transceiver 1a overlaps at least half of the visual field 3b of a transceiver 1b adjacent thereto.
(111) Preferably, the coverage angle of the radar system is greater than or equal to 90°, more preferably greater than or equal to 120°, even more preferably ranging from 140° to 360°, the coverage value at least partially depending on the number of transceivers of the radar system. In a particularly preferred embodiment, the coverage angle ranges from 120° to 180°.
(112) Preferably, each transceiver 1a, 1b, 1c has a visual field 3a, 3b, 3c with an aperture angle of at least 60°, in one embodiment ranging from 60° to 180°.
(113) Preferably, the transceivers of the plurality of transceivers are arranged close to each other such that the distances of an object detected in the space monitored by two adjacent transceivers are substantially equal. In the embodiment of
(114) Preferably, each transceiver is configured to have a standby mode and an operating mode (or detection mode) and is configured to switch between the two modes. In the stand-by mode, the transceiver is not used to transmit and receive signals for detecting a target (e.g the transceiver is OFF or is configured to generate low-power signals). In the operating mode, the transceiver transmits a radio signal at such a power as to allow detection of an object in its visual field. Preferably, the control unit 100 is configured to sequentially actuate the transceivers. Once a sequence of actuation of all the radar transceivers has been completed, the direction of an object 4 is calculated as described below, and the control unit is configured to move to a new sequence.
(115) The direction of the object 4 in the detection plane relative to the radar system 1 is obtained through a combination of vectors representative of the return signals received from the respective radar transceivers. Namely, the direction of the target 4 is determined, as the direction of a vector represented by a direction angle θ in the detection plane in which the main transmission directions of the transceivers 1a, 1b, 1c lie. The direction angle is the angle formed by the direction of the vector relative to a reference direction.
(116) A preferred method 90 of determining a detection angle is schematically illustrated in
(117) The baseband signals from each transceiver 1a, 1b, 1c are processed to obtain a respective object range profile (steps 91a, 91b, 91c), for instance according to a method of processing the signals as described with reference to
(118) In one embodiment, the distance associated with the current object is calculated as an average value of the distances associated with the transceivers that have detected the current object (i.e. excluding the transceivers that do not see the object) and this average value is associated with the object distance d.sub.k of the current object (step 95). If the target is detected by more than one transceiver, the calculation of the average value reduces measurement errors.
(119) In a further embodiment, the distance d.sub.k associated with the current object is the distance as determined by analyzing the object range profile of a single transceiver that has detected the object. For example, the control unit is configured to select the shortest object distance, i.e. is the transceiver that sees the closest object.
(120) The control unit (in the calculator unit 105) is configured to analyze each object range profile (step 92) to determine a respective scalar amplitude value s.sub.1, s.sub.2, s.sub.3 of the object range profile associated with each of the transceivers (step 93), indicated by a signal amplitude value. If one object 4 only has been detected in the space monitored by the radar system, a single signal amplitude value is calculated for each transceiver that sees the target, e.g. the amplitude of the peak that is closest to each transceiver. If two or more transceivers detect a plurality of targets at distinct distances, respective scalar signal amplitude values are determined for each target.
(121) In one embodiment, the signal amplitude value s.sub.1, s.sub.2, s.sub.3 is calculated as the area subtended by the signal in an interval of distances (which preferably comprises the object distance d.sub.k) selected by windowing, i.e. as the integral of the amplitude values in a window of amplitude values of the object range profile. If the distance interval is a sufficiently narrow interval, the signal amplitude is determined as the integral of a single peak of object range profile, e.g. the main component representative of the current object.
(122) In the multi-target case, for each object detected by each transceiver, the signal amplitude value s.sub.1, s.sub.2, s.sub.3 is calculated by selecting a respective identical interval of distances for each transceiver in the respective object range profile and by calculating the signal amplitude value to thereby obtain three values (s.sub.1, s.sub.2, s.sub.3) for each moving object.
(123) In the preferred embodiments, a signal vector of the signal is defined in the detection plane along the main transmission direction of the signals for each transceiver of the system, with the vector having the respective signal amplitude s.sub.1, s.sub.2, s.sub.3 as its modulus and the main transmission direction as its direction.
(124) Preferably, the control unit 100 is configured to receive and store a transmission direction unit vector {right arrow over (n.sub.i)}, i=1, . . . , N (N being the number of transceivers), i.e. a two-dimensional vector having a unit modulus associated with each transceiver of the plurality of radar transceivers. The direction of transmission direction unit vector in the detection plane coincides with the main transmission direction 2a, 2b, 2c of its respective transceiver. Preferably, the main transmission direction of each transceiver is the maximum radiation direction of the transmitting antenna of the respective transceiver and each unit vector is defined by the maximum radiation direction, e.g. the direction perpendicular to the plane of the antennas in case of transceivers with planar antennas. The signal vector of the i-th transceiver is defined by {right arrow over (V.sub.i)}={right arrow over (n.sub.i)}.Math.s.sub.i.
(125) The N transmission unit vectors are stored prior to step 94.
(126) The direction of a moving object is estimated based on a vector combination of the signal vectors associated with the transceivers, each transceiver contributing to the direction according to the modulus of its vector (step 94). After the step 93 of calculating the signal amplitude value for every transceiver and after storage of a transmission unit vector {right arrow over (n.sub.i)} associated with each transceiver, the method comprises calculating the direction of an average signal vector {right arrow over (V.sub.m)} calculated as the average of the signal vectors {right arrow over (V.sub.i)}, i.e.
(127)
(step 94).
(128) Preferably, the direction of the target is defined by a direction angle θ.sub.k relative to a reference direction, with the direction angle being estimated by calculating the phase of the mean vector obtained by the vector combination of vectors {right arrow over (V.sub.i)} according to the following equation:
(129)
(130) Equation (2) provides an estimate of the angle θ.sub.k if the target is simultaneously observed by at least two radar transceivers.
(131) In this embodiment, the k-th object position p.sub.k of an object in the detection plane at a detection instant t.sub.k, is defined by the direction angle θ.sub.k, calculated by means of Eq. (2), and by the distance d.sub.k of the object from the radar system (step 95).
(132) Preferably, a transmission unit vector associated with a transceiver of the plurality of transceivers defines a reference direction of the radar system. The reference direction extends along an axis of an arbitrary Cartesian reference system, i.e. is at 0° in such reference system. Therefore, the transmission unit vector that defines the reference direction is {right arrow over (n.sub.1)}={right arrow over (n.sub.r)}=(0.1) or (1.0).
(133) In the example of
(134)
and the unit vector associated with the transceiver 1c is
(135)
(136) In
(137) It shall be noted that even when a plurality of transceivers 1a, 1b, 1c are employed, the tracking algorithm may be implemented (step 80), and generates trajectories in which the object positions are only represented by object distances. In other words, here the signals picked up by distinct transceivers 1a, 1b, 1c are processed separately from each other and distinct trajectories are generated relative to distinct transceivers 1a, 1b, 1c.
(138) A skilled person may obviously envisage a number of changes to the above described embodiments, without departure from the scope of the appended claims.