Radar based range determination and validation
Radar-based range determination and validation. A reflected FMCW radar signal is received from a subject and sampled to generate sample vectors including signal samples for each frame of reflected radar signal. An FFT is applied to sample vectors to generate a range-time map (RTM) data matrix. An initial range estimate of subject is determined by: calculating a range score signal (RSS) by either: cross-multiplying a mean power per RTM range bin with a corresponding variance per range bin, or dividing variance per range bin with a zero-crossing per range bin to second exponent; identifying a maximum value index range bin having a maximum RSS value; and multiplying identified maximum value index range bin with a range bin spacing of range spectrum RSS. At least one physiological parameter is detected to verify that subject is a living entity. Range estimate is validated by determining if predetermined number of validity criteria met.
1 . A method for determining the range of a subject, the method comprising:
receiving a frequency-modulated continuous-wave (FMCW) radar signal reflected from at least one subject;
sampling the received reflected radar signal to generate a plurality of sample vectors over a selected duration, each sample vector comprising a plurality of signal samples for each frame of the reflected radar signal;
applying a fast Fourier transform (FFT) to a plurality of sample vectors over a selected duration to generate a range-time map (RTM) data matrix;
determining an initial range estimate of the subject by:
(i) calculating a range score signal (RSS) using an equation selected from the group consisting of: a) cross-multiplying a mean power per range bin of the RTM with a corresponding variance per range bin (RSS=Mean Power×rng_var); and b) dividing the variance per range bin of the RTM with a zero-crossing per range bin to the second exponent
(
RSS
=
rng_var
ZC
2
)
;
(ii) identifying a maximum value index range bin having a maximum RSS value; and
(iii) calculating a range estimate by multiplying the identified maximum value index range bin with a range bin spacing of the range spectrum RSS;
validating the determined range estimate by:
determining if the range estimate meets a first validity criterion based on a max/min dynamic ratio (mxmn);
determining if the range estimate meets a second validity criterion based on an inter-quartile range (IQR) outlier metric;
determining if the range estimate meets a third validity criterion based on a modified z-score; and
determining if the range estimate meets a fourth validity criterion based on the number of signal peaks of the standardized z-score;
establishing a final range of the subject according to the range estimate if the range estimate is determined to meet at least a predetermined number of the validity criteria; and
detecting at least one physiological parameter of the subject to verify that the subject is a living entity.
2 . The method of claim 1 , wherein determining if the range estimate meets a first validity criterion comprises:
calculating a max/min dynamic ratio (mxmn) value according to the formula: mxmn=max(RSS)/min(RSS); and
checking if the calculated max/min dynamic ratio (mxmn) exceeds a predetermined threshold value: valid 1 =positive if mxmn>V.
3 . The method of claim 1 , wherein determining if the range estimate meets a second validity criterion comprises:
calculating a lower quartile value (q 0.25 ) and an upper quartile value (q 0.75 );
calculating an inter-quartile range (IQR) value based on a difference between the lower quartile value (q 0.25 ) and the upper quartile value (q 0.75 );
calculating an inter-quartile range outlier (IQR-outlier) value by multiplying the IQR value by a factor of 1.5: iqr_outlier=(q 0.25 −q 0.75 )*1.5; and
checking if the calculated inter-quartile range outlier (IQR-outlier) value exceeds a maximum range score signal value: valid 2 =positive if max(RSS)>iqr_outlier.
4 . The method of claim 1 , wherein determining if the range estimate meets a third validity criterion comprises:
calculating a modified z-score value according to the formula:
zscore
=
(
RSS
-
(
μ
+
k
·
σ
)
)
/
σ
;
applying a sign operator to the calculated modified z-score: sign_zc=sign(zscore);
appending −1 at beginning and end of resulting vector;
applying a difference operator followed by absolute operator on the result: diff_sign_zc=abs(diff(sign_zc));
identifying indices where zc_idx=diff_sign_zc>0; and
checking if the following two conditions are met:
(i) length(zc_idx)=2; and
(ii) zc_idx[0]<rng_bin<zc_idx[1].
5 . The method of claim 1 , wherein determining if the range estimate meets a fourth validity criterion comprises:
calculating a modified z-score value according to the formula:
zscore
=
(
RSS
-
(
μ
+
k
·
σ
)
)
/
σ
;
and
checking if the number of signal peaks of the calculated z-score is equal to 1: valid 4 =positive if n_peaks==1.
6 . The method of claim 1 , further comprising the procedure of zero-padding the sample vectors to extend vector length in accordance with a desired range accuracy.
7 . The method of claim 1 , wherein the determined range estimate is replaced with a default range value if at least one auxiliary criterion is met, the auxiliary criterion selected from the group consisting of:
the subject is positioned in a non-standing posture and the reflected radar signal is received from back of the subject; and
the determined range estimate is below a predefined minimum threshold range.
8 . A system for determining the range of a subject, the system comprising:
a radar detector, configured to receive a frequency-modulated continuous-wave (FMCW) radar signal reflected from at least one subject, and to sample the received reflected radar signal to generate a plurality of sample vectors over a selected duration, each sample vector comprising a plurality of signal samples for each frame of the reflected radar signal; and
a processor, configured to:
apply a fast Fourier transform (FFT) to a plurality of sample vectors over a selected duration to generate a range-time map (RTM) data matrix,
determine an initial range estimate of the subject by: (i) calculating a range score signal (RSS) using an equation selected from the group consisting of: a) cross-multiplying a mean power per range bin of the RTM and the corresponding variance per range bin (RSS=Mean Power×rng_var); and b) dividing the variance per range bin of the RTM with a zero-crossing per range bin to the second exponent
(
RSS
=
rng_var
ZC
2
)
;
(ii) identifying a maximum value index range bin having a maximum RSS value; and (iii) calculating a range estimate by multiplying the identified maximum value index range bin with a range bin spacing of the range spectrum RSS,
validate the determined range estimate by: determining if the range estimate meets a first validity criterion based on a max/min dynamic ratio (mxmn); determining if the range estimate meets a second validity criterion based on an inter-quartile range (IQR) outlier metric; determining if the range estimate meets a third validity criterion based on a modified z-score; and determining if the range estimate meets a fourth validity criterion based on the number of signal peaks of the standardized z-score,
establish a final range of the subject according to the range estimate if the range estimate is determined to meet at least a predetermined number of the validity criteria, and
detect at least one physiological parameter of the subject to verify that the subject is a living entity.
9 . The system of claim 8 , wherein determining if the range estimate meets a first validity criterion comprises:
calculating a max/min dynamic ratio (mxmn) value according to the formula: mxmn=max(RSS)/min(RSS); and
checking if the calculated max/min dynamic ratio (mxmn) exceeds a predetermined threshold value: valid 1 =positive if mxmn>V.
10 . The system of claim 8 , wherein determining if the range estimate meets a second validity criterion comprises:
calculating a lower quartile value (q 0.25 ) and an upper quartile value (q 0.75 );
calculating an inter-quartile range (IQR) value based on a difference between the lower quartile value (q 0.25 ) and the upper quartile value (q 0.75 );
calculating an inter-quartile range outlier (IQR-outlier) value by multiplying the IQR value by a factor of 1.5: iqr_outlier=(q 0.25 −q 0.75 )*1.5; and
checking if the calculated inter-quartile range outlier (IQR-outlier) value exceeds a maximum range score signal value: valid 2 =positive if max(RSS)>iqr_outlier.
11 . The system of claim 8 , wherein determining if the range estimate meets a third validity criterion comprises:
calculating a modified z-score value according to the formula:
zscore
=
(
RSS
-
(
μ
+
K
·
σ
)
)
/
σ
;
applying a sign operator to the calculated modified z-score: sign_zc=sign(zscore);
appending −1 at beginning and end of resulting vector;
applying a difference operator followed by absolute operator on the result: diff_sign_zc=abs(diff(sign_zc));
identifying indices where zc_idx=diff_sign_zc>0; and
checking if the following two conditions are met:
(iii) length(zc_idx)=2; and
(iv) zc_idx[0]<rng_bin<zc_idx[1].
12 . The system of claim 8 , wherein determining if the range estimate meets a fourth validity criterion comprises:
calculating a modified z-score value according to the formula:
zscore
=
(
RSS
-
(
μ
+
K
·
σ
)
)
/
σ
;
and
checking if the number of signal peaks of the calculated z-score is equal to 1: valid 4 =positive if n_peaks==1.
13 . The system of claim 8 , wherein the determined range estimate is replaced with a default range value if at least one auxiliary criterion is met, the auxiliary criterion selected from the group consisting of:
the subject is positioned in a non-standing posture and the reflected radar signal is received from back of the subject; and
the determined range estimate is below a predefined minimum threshold range.