Method, apparatus, and system for wireless sensing based on channel information
Methods, apparatus and systems for wireless sensing based on channel information are described. In one example, a described system comprises: a transmitter configured to transmit a wireless signal through a wireless multipath channel of a venue, wherein the wireless multipath channel is impacted by a motion of an object in the venue; a receiver configured to receive the wireless signal through the wireless multipath channel, wherein the received wireless signal differs from the transmitted wireless signal due to the wireless multipath channel and the motion of the object; and a processor. The processor is configured for: obtaining N1 time series of channel information (TSCI) of the wireless multipath channel based on the received wireless signal, computing N4 selected projections based on the N1 TSCI, and performing a sensing task associated with the motion of the object based on the N4 selected projections. N4 is a positive integer. N1=N2*N3. N2 is a quantity of transmit antennas on the transmitter. N3 is a quantity of receive antennas on the receiver. Each TSCI is associated with a respective transmit antenna of the transmitter and a respective receive antenna of the receiver.
1 . A system for wireless sensing, comprising:
a transmitter configured to transmit a wireless signal through a wireless multipath channel of a venue, wherein the wireless multipath channel is impacted by a motion of an object in the venue;
a receiver configured to receive the wireless signal through the wireless multipath channel, wherein the received wireless signal differs from the transmitted wireless signal due to the wireless multipath channel and the motion of the object; and
a processor configured for:
obtaining N1 time series of channel information (TSCI) of the wireless multipath channel based on the received wireless signal, wherein N1=N2*N3, wherein N2 is a quantity of transmit antennas on the transmitter, wherein N3 is a quantity of receive antennas on the receiver, wherein each TSCI is associated with a respective transmit antenna of the transmitter and a respective receive antenna of the receiver, wherein each channel information (CI) comprises N7 components,
determining N8 time stamps such that there are N1*N7*N8 components among the N1*N8 CI among the N1 TSCI at the N8 time stamps,
constructing N1 first feature vectors each of size N7*N8 based on the N1*N7*N8 components, each of the N1 first feature vectors constructed by concatenating the N7 components of N8 respective CI among the N1*N8 CI,
computing N1 projection operations based on the N1 first feature vectors each being a (N7*N8)-tuple vector, wherein each respective projection operation is computed based on a respective (N7*N8)-tuple first feature vector, wherein:
the respective projection operation is associated with a respective linear transformation of the respective (N7*N8)-tuple first feature vector associated with a respective projection matrix,
the respective projection matrix is associated with respective N complete or over-complete spanning basis vectors each being a (N7*N8)-tuple vector,
N is equal to N7*N8,
the linear transformation comprises at least one of: Fourier Transform, Sine Transform, Cosine Transform, Hadamard Transform, Slant Transform, any trigonometric transform, non-orthogonal transform, over-complete projection, or singular value decomposition (SVD),
computing N1 projection vectors each comprising N components, the N components of each respective projection vector being respective N projected scalar values based on the respective projection operations based on the respective (N7*N8)-tuple first feature vector, each of the respective N projected scalar values being a projected scalar value of the respective (N7*N8)-tuple first feature vector under the respective projection operation,
selecting N4 selected projected scalar values from all the N1*N projected scalar values based on: a selection criterion, all of the first feature vectors, all of the projection operations and the N1 TSCI, wherein:
N4 is a positive integer less than or equal to N1*N,
the N4 selected projected scalar values are computed based on the projection vectors,
constructing a second feature vector based on the N4 selected projected scalar values, and
performing a sensing task associated with the motion of the object based on the second feature vector.
2 . The system of claim 1 , wherein the processor is further configured for:
training a classifier based on the N4 selected projected scalar values computed based on the N1 TSCI obtained in a training phase.
3 . The system of claim 2 , wherein the processor is further configured for:
classifying the motion of the object based on the classifier in an operating phase based on the N4 selected projected scalar values.
4 . The system of claim 3 , wherein the processor is further configured for:
detecting a presence of the object based on the classifier in the operating phase based on the N4 selected projected scalar values.
5 . The system of claim 4 , wherein the processor is further configured for:
performing a number of presence detection procedures sequentially in the operating phase; and
skipping all subsequent presence detection procedures when the presence of the object is detected in any presence detection procedure.
6 . The system of claim 5 , wherein the processor is further configured for:
in a first one of the presence detection procedures, detecting the presence of the object by detecting a transitional motion of the object based on the classifier and the N4 selected projected scalar values;
in a second one of the presence detection procedures, detecting the presence of the object by detecting a motion of the object based on a first motion statistics computed based on a pair of CI from the N1 TSCI; and
in a third one of the presence detection procedures, detecting the presence of the object by detecting a periodic motion of the object for a sustained period of time based on a second motion statistics computed based on an auto-correlation function (ACF) of the N1 TSCI.
7 . The system of claim 1 , wherein each of the N4 selected projected scalar values is one of:
an eigenvalue obtained from an eigen-decomposition of one of the first feature vectors;
a singular value obtained from a singular value decomposition (SVD) of one of the first feature vectors;
a principal component value obtained from a principal component analysis (PCA) of one of the first feature vectors;
an independent component value obtained from an independent component analysis of one of the first feature vectors; or
a value obtained from another decomposition of one of the first feature vectors.
8 . The system of claim 7 , wherein the processor is further configured for:
selecting one of the N4 selected projected scalar values from the N projected scalar values of a particular first feature vector based on a statistical distribution of the N projected scalar values.
9 . The system of claim 8 , wherein:
the selected one of the N4 selected projected scalar values is selected based on a magnitude of each of the N projected scalar values of the particular first feature vector.
10 . The system of claim 9 , wherein:
the N4 selected projected scalar values are N4 selected projected scalar values having the largest magnitudes among the N1*N projected scalar values of the N1 projection vectors.
11 . The system of claim 7 , wherein the processor is further configured for:
computing the projection matrix for a particular first feature vector based on a covariance matrix of the particular first feature vector.
12 . The system of claim 11 , wherein:
the covariance matrix is computed based on a sliding time window of the N1 TSCI.
13 . The system of claim 11 , wherein:
each of the N8 time stamps associated with the first feature vector is a common time stamp to all of the N1 TSCI.
14 . The system of claim 1 , wherein the processor is further configured for:
determining N1 first feature vectors, each of which is a concatenation of N8 channel information (CI) at the N8 time stamps from a respective one of the N1 TSCI;
computing N1 projection matrices, each of which is computed based on a respective one of the N1 first feature vectors and the respective TSCI;
computing a respective plurality of projected scalar values based on the respective first feature vector, the respective projection matrix and the respective TSCI; and
selecting the N4 selected projected scalar values from all the project scalar values.
15 . The system of claim 14 , wherein:
each of the N1 projection matrices is computed based on a respective covariance matrix of the respective first feature vector and a sliding time window of the respective TSCI.
16 . The system of claim 14 , wherein:
each first feature vector has N7*N8 components; and
each projection matrix is of size (N7*N8)×(N7*N8).
17 . The system of claim 14 , wherein:
the N4 selected projected scalar values are selected as the N4 projected scalar values with largest magnitudes.
18 . The system of claim 13 , wherein:
the N8 common time stamps are equally spaced in time.
19 . The system of claim 1 , wherein the processor is further configured for:
determining N8 first feature vectors each associated with a respective one of the N8 time stamps, each first feature vector of size N1*N7 being a concatenation of N1 CI at the respective time stamp, each CI being from a respective one of the N1 TSCI;
computing N8 projection matrices of size (N1*N7)×(N1*N7) based on the N1 TSCI, wherein each of the N8 matrices is associated with a respective first feature vector and a respective time stamp and comprises at least one of: a covariance matrix, a correlation matrix, a Hermitian matrix, a symmetric matrix, a positive semi-definite matrix, a matrix of matrices, or an augmented matrix; and
performing the sensing task based on the N8 projection matrices, wherein N8 is an integer larger than one.
20 . The system of claim 19 , wherein the processor is further configured for:
computing a plurality of projected scalar values based on each of the N8 projection matrices; and
selecting the N4 selected projected scalar values from all projected scalar values.
21 . The system of claim 20 , wherein:
the N4 selected projected scalar values are selected based on a magnitude of each projected scalar value.
22 . The system of claim 21 , wherein:
the N4 selected projected scalar values are N4 projected scalar values having the largest magnitudes among all projected scalar values of all of the N8 projection matrices.
23 . The system of claim 21 , wherein:
the N4 selected projected scalar values comprise N9 largest projected scalar values of each of the N8 projection matrices, wherein N9 is a positive integer; and
N4=N8*N9.
24 . The system of claim 19 , wherein:
the N8 time stamps associated with the N8 matrices are evenly spaced in time.
25 . A wireless device of a system for wireless sensing, comprising:
a processor;
a memory communicatively coupled to the processor; and
a receiver communicatively coupled to the processor, wherein:
an additional wireless device of the system is configured to transmit a wireless signal through a wireless multipath channel of a venue,
the wireless multipath channel is impacted by a motion of an object in the venue,
the receiver is configured to receive the wireless signal through the wireless multipath channel,
the received wireless signal differs from the transmitted wireless signal due to the wireless multipath channel and the motion of the object, and
the processor is configured for:
obtaining N1 time series of channel information (TSCI) of the wireless multipath channel based on the received wireless signal, wherein N1=N2*N3, wherein N2 is a quantity of transmit antennas on the transmitter, wherein N3 is a quantity of receive antennas on the receiver, wherein each TSCI is associated with a respective transmit antenna of the transmitter and a respective receive antenna of the receiver, wherein each channel information (CI) comprises N7 components,
determining N8 time stamps such that there are N1*N7*N8 components among the N1*N8 CI among the N1 TSCI at the N8 time stamps,
constructing N1 first feature vectors each of size N7*N8 based on the N1*N7*N8 components, each of the N1 first feature vectors constructed by concatenating the N7 components of N8 respective CI among the N1*N8 CI,
computing N1 projection operations based on the N1 first feature vectors each being a (N7*N8)-tuple vector, wherein each respective projection operation is computed based on a respective (N7*N8)-tuple first feature vector, wherein:
the respective projection operation is associated with a respective linear transformation of the respective (N7*N8)-tuple first feature vector associated with a respective projection matrix,
the respective projection matrix is associated with respective N complete or over-complete spanning basis vectors each being a (N7*N8)-tuple vector,
N is equal to N7*N8,
the linear transformation comprises at least one of: Fourier Transform, Sine Transform, Cosine Transform, Hadamard Transform, Slant Transform, any trigonometric transform, non-orthogonal transform, over-complete projection, or singular value decomposition (SVD),
computing N1 projection vectors each comprising N components, the N components of each respective projection vector being respective N projected scalar values based on the respective projection operations based on the respective (N7*N8)-tuple first feature vector, each of the respective N projected scalar values being a projected scalar value of the respective (N7*N8)-tuple first feature vector under the respective projection operation,
selecting N4 selected projected scalar values from all the N1*N projected scalar values based on: a selection criterion, all of the first feature vectors, all of the projection operations and the N1 TSCI, wherein:
N4 is a positive integer less than or equal to N1*N,
the N4 selected projected scalar values are computed based on the projection vectors,
constructing a second feature vector based on the N4 selected projected scalar values, and
performing a sensing task associated with the motion of the object based on the second feature vector.
26 . The wireless device of claim 25 , wherein the processor is further configured for:
training a classifier based on the N4 selected projected scalar values computed based on the N1 TSCI obtained in a training phase;
classifying the motion of the object based on the classifier in an operating phase based on the N4 selected projected scalar values; and
detecting a presence of the object based on the classifier in the operating phase based on the N4 selected projected scalar values.
27 . The wireless device of claim 26 , wherein the processor is further configured for:
performing a number of presence detection procedures sequentially in the operating phase;
skipping all subsequent presence detection procedures when the presence of the object is detected in any presence detection procedure;
in a first one of the presence detection procedures, detecting the presence of the object by detecting a transitional motion of the object based on the classifier and the N4 selected projected scalar values;
in a second one of the presence detection procedures, detecting the presence of the object by detecting a motion of the object based on a first motion statistics computed based on a pair of CI from the N1 TSCI; and
in a third one of the presence detection procedures, detecting the presence of the object by detecting a periodic motion of the object for a sustained period of time based on a second motion statistics computed based on an auto-correlation function (ACF) of the N1 TSCI.
28 . A method for wireless sensing, comprising:
transmitting a wireless signal from a transmitter through a wireless multipath channel of a venue, wherein the wireless multipath channel is impacted by a motion of an object in the venue;
receiving the wireless signal by a receiver through the wireless multipath channel, wherein the received wireless signal differs from the transmitted wireless signal due to the wireless multipath channel and the motion of the object;
obtaining N1 time series of channel information (TSCI) of the wireless multipath channel based on the received wireless signal, wherein N1=N2*N3, wherein N2 is a quantity of transmit antennas on the transmitter, wherein N3 is a quantity of receive antennas on the receiver, wherein each TSCI is associated with a respective transmit antenna of the transmitter and a respective receive antenna of the receiver, wherein each channel information (CI) comprises N7 components;
determining N8 time stamps such that there are N1*N7*N8 components among the N1*N8 CI among the N1 TSCI at the N8 time stamps;
constructing N1 first feature vectors each of size N6*N7N7*N8 based on the N1*N7*N8 components, each of the N1 first feature vectors constructed by concatenating the N7 components of N8 respective CI among the N1*N8 CI;
computing N1 projection operations based on the N1 first feature vectors each being a (N7*N8)-tuple vector, wherein each respective projection operation is computed based on a respective (N7*N8)-tuple first feature vector, wherein:
the respective projection operation is associated with a respective linear transformation of the respective (N7*N8)-tuple first feature vector associated with a respective projection matrix,
the respective projection matrix is associated with respective N complete or over-complete spanning basis vectors each being a (N7*N8)-tuple vector,
N is equal to N7*N8,
the linear transformation comprises at least one of: Fourier Transform, Sine Transform, Cosine Transform, Hadamard Transform, Slant Transform, any trigonometric transform, non-orthogonal transform, over-complete projection, or singular value decomposition (SVD);
computing N1 projection vectors each comprising N components, the N components of each respective projection vector being respective N projected scalar values based on the respective projection operations based on the respective (N7*N8)-tuple first feature vector, each of the respective N projected scalar values being a projected scalar value of the respective (N7*N8)-tuple first feature vector under the respective projection operation;
selecting N4 selected projected scalar values from all the N1*N projected scalar values based on: a selection criterion, all of the first feature vectors, all of the projection operations and the N1 TSCI, wherein:
N4 is a positive integer less than or equal to N1*N,
the N4 selected projected scalar values are computed based on the projection vectors;
constructing a second feature vector based on the N4 selected projected scalar values; and
performing a sensing task associated with the motion of the object based on the second feature vector.
29 . The method claim 28 , further comprising:
training a classifier based on the N4 selected projected scalar values computed based on the N1 TSCI obtained in a training phase;
classifying the motion of the object based on the classifier in an operating phase based on the N4 selected projected scalar values; and
detecting a presence of the object based on the classifier in the operating phase based on the N4 selected projected scalar values.