Method, apparatus and system for wireless monitoring to ensure security
Patent Information
- Application Number
- JP2021163689
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2021-10-03
- Filing Date
- 2021-10-04
- Publication Date
- 2024-12-13
- Estimated Expiration
- Not applicable · inactive patent
AI Technical Summary
Existing systems for object motion detection, motion tracking, human recognition, and acoustic sensing suffer from inaccuracies, false alarms, and limitations such as requiring line-of-sight, sensitivity to environmental changes, and privacy concerns, particularly in wireless monitoring using wireless channel state information (CSI).
A system that utilizes wireless channel information (CI) processing to monitor micromotions of objects by calculating micromotion statistics based on the tracking of the position and trajectory of moving objects, incorporating antenna placement with physical barriers to expand coverage area, and employing wireless CI for human recognition based on gait features and voice detection.
Enhances security and accuracy in motion tracking and human recognition by providing robust coverage and reducing false alarms, while maintaining privacy, through the use of wireless CI processing and antenna placement strategies.
Smart Images

Figure 00000214_0000 
Figure 00000214_0001 
Figure 00000215_0000
Abstract
Description
[Technical Field]
[0001] The present disclosure generally relates to wireless monitoring, motion tracking, human recognition, and acoustic sensing. More specifically, the present disclosure relates to wireless motion monitoring for improved security through wireless channel information (CI) processing, wireless monitoring based on antenna placement with physical barriers to expand coverage areas, wireless monitoring of object tremors by calculating tremor statistics based on wireless CI, tracking the position and trajectory of moving objects within a location, human recognition based on one or more gait features detected wirelessly by processing the wireless CI, and acoustic sensing based on wireless signals by processing the wireless CI. [Background technology]
[0002] Nowadays, object movement detection is becoming more and more important. For example, for security and / or management purposes, a user may want to detect any object movement in the user's home, a supermarket manager may want to detect any object movement in the supermarket, and a hospital nurse may want to detect any movement of a patient in the hospital.
[0003] Existing systems and methods for detecting object motion lack sufficient accuracy and often result in false alarms. Existing approaches include passive infrared (PIR), active infrared (AIR), and ultrasonic-based approaches. PIR sensors are the most widely used motion sensors in home security systems, detecting human movement by detecting the difference between the heat emitted by a moving person and background heat. However, PIR sensor-based solutions are prone to false alarms due to their sensitivity to environmental changes such as hot / cold air currents and sunlight. These solutions are easily defeated by blocking body heat, such as wearing thermally insulating suits. Furthermore, these solutions have a limited detection range and require line-of-sight (LOS), thus necessitating the use of multiple devices. In AIR-based approaches, an infrared (IR) emitter sends out an IR beam, which is received by an IR receiver. When the beam is blocked, motion is detected. However, these approaches can easily be viewed as using a conventional camera or any infrared detection mechanism, and also have a limited range and therefore require LOS. Ultrasonic sensors detect human movement by sending out ultrasonic waves into space and measuring their return speed, detecting any frequency changes. However, this type of approach can be defeated by wearing an anechoic suit. In addition, ultrasonic waves cannot penetrate solid objects such as furniture or boxes, thus creating gaps in the detection field of view. Furthermore, slow movements by a thief may not trigger an alarm in an ultrasonic-based detection system.
[0004] Motion measurement is an essential input for a variety of applications, including robot navigation, indoor tracking, and mobile gaming, and has been widely used in robots, drones, automotive and unmanned vehicles, various home appliances, and almost anything that moves. The mainstream technology has been using inertial measurement units (IMUs) for motion tracking. With the increasing production of smart devices, the demand for accurate and robust motion tracking is increasing, driving the IMU market. Improvements in motion measurement have a profound impact on many systems and applications.
[0005] Accurate and robust motion measurement is not easy. Existing IMUs, implemented with sensors such as accelerometers that measure linear acceleration, are notoriously plagued by significant error and drift. For example, accelerometers are rarely able to measure distance traveled due to noisy readings. Therefore, existing methods for calculating distance traveled by integrating acceleration to get velocity and then velocity to get distance are unreliable due to noise. This hinders many applications requiring accurate motion processing, such as indoor tracking, virtual reality, and motion-sensing games.
[0006] Ubiquitous human recognition serves as an essential element for various applications in smart spaces, such as personalized environmental control, security management, automatic doors, and access control for Internet of Things (IoT) devices. Mainstream approaches rely on fingerprint, facial, or voice recognition, and typically require active cooperation from users within a certain proximity. Wireless biometrics based on the unique way the human body alters multipath channel propagation have been proposed, but they are highly sensitive to environmental changes and therefore require extensive training and calibration.
[0007] Recently, human gait has been proposed as an effective biometric for more passive person identification, i.e., identification during normal walking without any other active actions. To enable ubiquitous and reliable applications, gait recognition systems must be robust to environmental changes and easy to use without requiring excessive user cooperation and recalibration, while maintaining high accuracy—demands that are often not met by conventional approaches. Various gait recognition modalities, such as vision, acoustic sensing, wearable sensors, and pressure-sensitive pads, have been considered in the literature. Each of these approaches has several drawbacks with respect to the above criteria. For example, vision-based systems suffer from environmental changes and pose privacy concerns. Methods using inertial sensors require user cooperation and are therefore impractical.
[0008] Acoustic sensing, as the most natural method of human communication, is also becoming a ubiquitous modality for human-machine environmental interaction. Many applications are emerging in the Internet of Things (IoT), including voice interfaces, acoustic event monitoring in smart homes and buildings, and acoustic sensing for gestures and health. For example, smart speakers can now understand users' voices, control IoT devices, monitor the environment, and detect sounds of interest such as glass breaking or smoke detectors, all of which currently use microphones as their primary interface.
[0009] Although microphones are the most commonly used sensors for detecting acoustic events, they have certain limitations. Because they can only detect sounds at the destination (i.e., the microphone's location), a single microphone cannot separate and distinguish multiple sound sources, while a microphone array can only separate in the azimuth direction and requires a large aperture. By detecting every sound that arrives at the destination, microphones pose potential privacy issues when deployed as ubiquitous, continuous acoustic sensing interfaces in the home. In addition, because microphones only detect received sounds and nothing about the sound source, they are susceptible to inaudible voice attacks and reply attacks.
[0010] To overcome some of these limitations, various modalities have been utilized to sense acoustic signals, such as accelerometers, vibration motors, cameras, etc. These systems still sense the sound of the destination and therefore suffer from similar drawbacks as microphones, or require operation under line-of-sight (LOS) and lighting conditions. As a result, these modalities are not entirely satisfactory.
[0011] Wireless monitoring using wireless channel state information (CSI) has attracted much attention in the era of the Internet of Things. Environmental changes and human activities affect multipath propagation, which is embedded in the CSI fluctuations. By analyzing wireless CSI, the environment can be monitored. In existing systems, the transmit and receive antennas are located in different devices to provide comprehensive coverage for wireless monitoring. For example, when the transmit and receive antennas are collocated on the same device to reduce device costs, a strong and dominant line-of-sight (LOS) exists between the transmit and receive antennas. In the presence of environmental changes or human activities, their influence on multipath propagation may be overwhelmed by the strong LOS. In that case, only activities very close to the transmitter (TX) or receiver (RX) can be detected with a small chance. Therefore, it is desirable to design a special configuration of the transmit and receive antennas to ensure a reasonable coverage area for wireless monitoring.
[0012] Nowadays, object movement detection is becoming more and more important. For example, for security and / or management purposes, a user may want to detect any object movement in the user's home, a supermarket manager may want to detect any object movement in the supermarket, and a hospital nurse may want to detect any movement of a patient in the hospital.
[0013] Existing systems and methods for detecting object motion lack sufficient accuracy and often result in false alarms. Conventional approaches include passive infrared (PIR), active infrared (AIR), and ultrasonic-based approaches. PIR sensors are the most widely used motion sensors in home security systems, detecting human motion by detecting the difference between the background heat emitted by a moving person and the heat emitted by that person. However, PIR sensor-based solutions are prone to false alarms due to their sensitivity to environmental changes such as hot / cold air currents and sunlight. These solutions are easily counteracted by blocking body heat, such as wearing full-body insulating clothing. Furthermore, these solutions have a limited detection range and require line-of-sight (LOS), thus necessitating the use of multiple devices. In AIR-based approaches, an infrared (IR) emitter sends out an IR beam, which is received by an IR receiver. When the beam is blocked, motion is detected. However, these approaches can easily be viewed as using a conventional camera or any infrared detection mechanism, and also have a limited range and therefore require LOS. Ultrasonic sensors detect human movement by sending out ultrasonic waves into space and measuring their return speed, detecting any frequency changes. However, this type of approach can be defeated by wearing an anechoic suit. In addition, ultrasonic waves cannot penetrate solid objects such as furniture or boxes, thus creating gaps in the detection field. Furthermore, slow movements by a thief may not trigger an alarm in an ultrasound-based detection system.
[0014] Thus, existing systems and methods for wireless surveillance, motion tracking, human recognition, and / or acoustic sensing are not entirely satisfactory. Summary of the Invention
[0015] The present disclosure generally relates to wireless monitoring, motion tracking, human recognition, and acoustic sensing. More specifically, the present disclosure relates to wireless motion monitoring for improving security by processing wireless channel information (CI), wireless monitoring based on antenna placement with physical barriers to expand coverage areas, wireless monitoring of object tremors by calculating tremor statistics based on wireless CI, tracking the position and trajectory of moving objects within a location, human recognition based on one or more gait features detected wirelessly by processing wireless CI, and sound sensing based on wireless signals by processing wireless CI.
[0016] In one embodiment, a system for wireless motion monitoring is described. The system includes a transmitter configured to transmit a first wireless signal over a wireless multipath channel of a location, a receiver configured to receive a second wireless signal over the wireless multipath channel, and a processor. The second wireless signal differs from the first wireless signal due to the wireless multipath channel and movement of an object in the location. The processor is configured to obtain time-series channel information (TSCI) of the wireless multipath channel based on the second wireless signal, calculate spatio-temporal information (STI) based on the TSCI, monitor the movement of the object based on the TSCI and STI, perform a task based on the monitoring, and generate a response based on the task.
[0017] In another embodiment, a wireless device of a wireless monitoring system is described. The wireless device includes a processor, a memory communicatively coupled to the processor, and a receiver communicatively coupled to the processor. An additional wireless device of the wireless monitoring system is configured to transmit a first wireless signal over a wireless multipath channel of a location according to a current operating mode. The receiver is configured to receive a second wireless signal over the wireless multipath channel according to the current mode. The second wireless signal differs from the first wireless signal due to the wireless multipath channel and movement of an object in the location. The processor is configured to select a current operating mode from a plurality of supported operating modes associated with a task and the movement of the object, obtain time-series channel information (TSCI) of the wireless multipath channel based on the second wireless signal, calculate spatio-temporal information (STI) based on the TSCI, monitor the movement of the object based on the TSCI and the STI, perform a task based on the monitoring, and generate a response based on the task.
[0018] In yet another embodiment, a method of a wireless monitoring system is described, the method comprising: asynchronously transmitting a plurality of wireless signals over a wireless multipath channel of a location, each wireless signal being transmitted from a respective one of a plurality of first devices in the wireless monitoring system; receiving the plurality of wireless signals over the wireless multipath channel by a plurality of second devices in the wireless monitoring system, each received wireless signal being different from a respective transmitted wireless signal due to the wireless multipath channel and movement of an object within the location; and obtaining each of a plurality of time-series channel information (TSCI) of the wireless multipath channel based on the respective received wireless signals, each of the plurality of time-series channel information (TSCI), The method includes calculating a plurality of spatiotemporal information (STIs) based on each TSCI; monitoring the movement of the object in a first situation based on a first subset of the plurality of TSCIs and a first subset of the plurality of STIs; monitoring a second situation of the movement of the object based on a second subset of the plurality of TSCIs and a second subset of the plurality of STIs; performing a first task based on monitoring the first situation of the movement; performing a second task based on monitoring the second situation of the movement; generating a first response based on the first task; and generating a second response based on the second task.
[0019] In one embodiment, a system for motion tracking is described. The system includes at least one sensor configured to generate at least one sensed information (SI), a memory, a processor communicatively coupled to the memory and the at least one sensor, and a set of instructions stored in the memory. When executed by the processor, the set of instructions causes the processor to acquire at least one time-series SI (TSSI) from the at least one sensor, analyze the at least one TSSI, track movement of an object within a location based on the at least one TSSI, calculate an incremental distance associated with movement of the object in a first incremental time period based on the at least one TSSI, calculate a direction associated with movement of the object in a second incremental time period based on the at least one TSSI, and calculate a next position of the object at a next time based on at least one of a current position of the object at a current time, a current orientation of the object at the current time, the incremental distance, the direction, or a map of the location.
[0020] In another embodiment, a motion tracking system device is described. The device includes a processor, a memory communicatively coupled to the processor, and a sensor communicatively coupled to the processor. The sensor is configured to generate at least one sensing information (SI). The processor is configured to acquire at least one time-series SI (TSSI) from the sensor, analyze the at least one TSSI, track movement of an object within a location based on the at least one TSSI, calculate an incremental distance associated with movement of the object in a first incremental time period based on the at least one TSSI, calculate a direction associated with movement of the object in a second incremental time period based on the at least one TSSI, and calculate a next position of the object at a next time based on at least one of a current position of the object at a current time, a current orientation of the object at the current time, the incremental distance, the direction, or a map of the location.
[0021] In yet another embodiment, a method of a motion tracking system is described, the method including generating at least one sensing information (SI), obtaining at least one time-series SI (TSSI), analyzing the at least one TSSI, tracking movement of an object within a location based on the at least one TSSI, calculating an incremental distance associated with the object's movement within a first incremental time period based on the at least one TSSI, calculating a direction associated with the object's movement in a second incremental time period based on the at least one TSSI, and calculating a next position of the object at a next time based on at least one of a current position of the object at a current time, a current orientation of the object at a current time, the incremental distance, the direction, or a map of the location.
[0022] In one embodiment, a system for human recognition is described. The system includes: a transmitter configured to transmit a first wireless signal through a wireless channel of a location; a receiver configured to receive a second wireless signal through the wireless channel, the second wireless signal including a reflection of the first wireless signal by at least one object in the location; and a processor. The processor is configured to obtain a time series of channel information (CI) of the wireless channel based on the second wireless signal, determine a presence of a person moving within the location based on the time series of CI (TSCI), extract at least one gait feature of the person from the TSCI, and recognize the identity of the person based on the at least one gait feature.
[0023] In another embodiment, a wireless device of a human recognition system is described. The wireless device includes a processor, a memory communicatively coupled to the processor, and a receiver communicatively coupled to the processor. An additional wireless device of the human recognition system is configured to transmit a first wireless signal through a wireless channel of a location. The receiver is configured to receive a second wireless signal through the wireless channel. The second wireless signal includes a reflection of the first wireless signal by at least one object in the location. The processor is configured to obtain time-series channel information (CI) of the wireless channel based on the second wireless signal, determine the presence of a person moving within the location based on the time series of CI (TSCI), extract at least one gait feature of the person from the TSCI, and recognize the identity of the person based on the at least one gait feature.
[0024] In yet another embodiment, a method for a human recognition system is described, the method including: transmitting a first wireless signal through a wireless channel at a location; receiving a second wireless signal through the wireless channel, where the second wireless signal includes a reflection of the first wireless signal by at least one object in the location; obtaining time-series channel information (CI) of the wireless channel based on the second wireless signal; determining a presence of a person moving within the location based on the time series of CI (TSCI); extracting at least one gait feature of the person from the TSCI; and recognizing an identity of the person based on the at least one gait feature.
[0025] In one embodiment, a system for acoustic sensing is described. The system includes a transmitter configured to transmit a first wireless signal through a wireless channel at a location, a receiver configured to receive a second wireless signal through the wireless channel, the second wireless signal including a reflection of the first wireless signal by at least one object within the location, and a processor. The processor is configured to obtain time-series channel information (CI) of the wireless channel based on the second wireless signal, determine the presence of a vibrating object within the location based on a time series of CI (TSCI), extract a sound signal from the TSCI, and reconstruct at least one sound based on the acoustic signal.
[0026] In another embodiment, a wireless device of an acoustic sensing system is described. The wireless device includes a processor, a memory communicatively coupled to the processor, and a receiver communicatively coupled to the processor. An additional wireless device of the acoustic sensing system is configured to transmit a first wireless signal through a wireless channel of a location. The receiver is configured to receive a second wireless signal through the wireless channel. The second wireless signal includes a reflection of the first wireless signal by at least one object in the location. The processor is configured to obtain time-series channel information (CI) of the wireless channel based on the second wireless signal, determine the presence of a vibrating object in the location based on a time series of CI (TSCI), extract a sound signal from the TSCI, and reconstruct at least one sound based on the acoustic signal.
[0027] In yet another embodiment, a method for an acoustic sensing system is described, the method including: transmitting a first wireless signal through a wireless channel at a location; receiving a second wireless signal through the wireless channel, the second wireless signal including a reflection of the first wireless signal by at least one object in the location; obtaining time-series channel information (CI) for the wireless channel based on the second wireless signal; determining a presence of a vibrating object in the location based on the time series of CI (TSCI); extracting an acoustic signal from the TSCI; and reconstructing at least one sound based on the acoustic signal.
[0028] In one embodiment, a system for wireless motion monitoring is described. The system includes a transmitter configured to transmit a first wireless signal over a wireless multipath channel of a location, a receiver configured to receive a second wireless signal over the wireless multipath channel, and a processor. The second wireless signal differs from the first wireless signal due to the wireless multipath channel and movement of an object in the location. The processor is configured to: acquire time-series channel information (TSCI) of the wireless multipath channel based on the second wireless signal, each CI of the TSCI including N CI components, where N is an integer greater than 1; select N CI components from the N CI components based on a first analysis of the N CI components of the TSCI, where N is an integer less than or equal to N; calculate micro-motion (MM) statistics based on the N CI components of the TSCI and the first analysis; monitor the movement of the object based on a second analysis of the MM statistics; perform a task based on the first analysis and the second analysis; and generate a response based on the task, the first analysis, and the second analysis.
[0029] In another embodiment, a wireless device of a wireless monitoring system is described. The wireless device includes a processor, a memory communicatively coupled to the processor, and a receiver communicatively coupled to the processor. The additional wireless device of the wireless monitoring system is configured to transmit a first wireless signal over a wireless multipath channel of a location. The receiver is configured to receive a second wireless signal over the wireless multipath channel. The second wireless signal differs from the first wireless signal due to the wireless multipath channel and movement of an object in the location. The processor is configured to: acquire time-series channel information (TSCI) of the wireless multipath channel based on the second wireless signal, where each channel information (CI) of the TSCI includes N1 CI components, where N1 is an integer greater than 1; select N2 CI components from the N1 CI components based on a first analysis of the N1 CI components of the TSCI, where N2 is an integer less than or equal to N1; calculate microtremor (MM) statistics based on the N2 selected CI components of the TSCI and the first analysis; monitor the movement of the object based on a second analysis of the MM statistics; perform a task based on the first analysis and the second analysis; and generate a response based on the task, the first analysis, and the second analysis.
[0030] In yet another embodiment, a method for a wireless monitoring system is described, the method including: transmitting a first wireless signal from a first device in the wireless monitoring system through a wireless multipath channel of a location; receiving a second wireless signal through the wireless multipath channel by a second device in the wireless monitoring system, the second wireless signal being different from the first wireless signal due to the wireless multipath channel and movement of an object within the location; obtaining time-series channel information (TSCI) of the wireless multipath channel based on the second wireless signal, each CI of the TSCI including N1 CI components, where N1 is an integer greater than 1; and obtaining N2 time-series channel information (TSCI) of the wireless multipath channel based on a first analysis of the N1 CI components of the TSCI. The method includes selecting CI components, where N2 is an integer less than or equal to N1; calculating microtremor (MM) statistics based on the N2 selected CI components of the TSCI and a first analysis; monitoring the movement of the object based on a second analysis of the MM statistics; performing a task based on the first analysis and the second analysis; and generating a response based on the task, the first analysis, and the second analysis.
[0031] Other concepts relate to software for implementing the present disclosure for wireless monitoring, motion tracking, human recognition, and acoustic sensing. Additional novel features will be set forth in part in the description which follows, and in part will become apparent to those skilled in the art upon examination of the following drawings and accompanying drawings, or may be learned by the manufacture or operation of the embodiments. The novel features of the present disclosure may be realized and attained by practice or use of various aspects of the methods, instrumentalities, and combinations described in the detailed embodiments set forth below. [Brief explanation of the drawings]
[0032] The methods, systems, and / or devices described herein will be further explained with reference to exemplary embodiments. These exemplary embodiments will be described in detail with reference to the drawings. These embodiments are non-limiting exemplary embodiments, and like reference numerals represent like structure throughout the several views of the drawings.
[0033] [Figure 1] 1 illustrates the overall architecture of a motion tracking system according to some embodiments of the present disclosure.
[0034] [Figure 2] FIG. 1 illustrates operations performed by a motion tracking system using an IMU, according to some embodiments of the present disclosure.
[0035] [Figure 3] FIG. 1 illustrates a workflow for a sensor engine in a motion tracking system, according to some embodiments of the present disclosure.
[0036] [Figure 4] FIG. 2 illustrates exemplary atomic events extracted by a sensor engine in a motion tracking system, according to some embodiments of the present disclosure.
[0037] [Figure 5] 1 illustrates exemplary temporal constraints for extracted atomic events, according to some embodiments of the present disclosure.
[0038] [Figure 6] 1 is an example of a finite state machine (FSM) for staircase detection, according to some embodiments of the present disclosure.
[0039] [Figure 7] 10A-10C illustrate examples of step-based sensing information according to some embodiments of the present disclosure.
[0040] [Figure 8]1 illustrates a flowchart of an exemplary technique for motion tracking, according to some embodiments of the present disclosure.
[0041] [Figure 9] 1 illustrates an overview of a fine time measurement (FTM) protocol according to some embodiments of the present disclosure.
[0042] [Figure 10] 1 illustrates exemplary distance measurements as an initiating station (ISTA) begins to approach a responding station (RSTA) from different directions and initial distances, according to some embodiments of the present disclosure.
[0043] [Figure 11] 1 illustrates a flowchart of an example approach for driver arrival sensing based on fine time measurements (FTM), according to some embodiments of the present disclosure.
[0044] [Figure 12] 1 illustrates key steps of knee-point detection for driver reaching sensing according to some embodiments of the present disclosure.
[0045] [Figure 13] 10 shows a table relating to accuracy of time of arrival estimation according to some embodiments of the present disclosure.
[0046] [Figure 14] 1 shows a diagram of an exemplary human recognition system based on gait cube data using millimeter wave (mm wave) radio, according to some embodiments of the present disclosure.
[0047] [Figure 15] 1 illustrates performance results of an exemplary human recognition system according to some embodiments of the present disclosure.
[0048] [Figure 16]1 illustrates a flowchart of an exemplary approach for human recognition based on gait cube features using mmWave signals, according to some embodiments of the present disclosure.
[0049] [Figure 17] 1 illustrates an exemplary implementation environment for a sound sensing system using millimeter wave (mmWave) radio, according to some embodiments of the present disclosure.
[0050] [Figure 18A] ~ [Figure 18D] 1 illustrates various use cases of an acoustic sensing system according to some embodiments of the present disclosure.
[0051] [Figure 19] 1 shows a diagram illustrating operations performed by an acoustic sensing system based on millimeter-wave radio signals, according to some embodiments of the present disclosure.
[0052] [Figure 20] 1 shows a diagram of the structure of a neural network model according to some embodiments of the present disclosure.
[0053] [Figure 21] 1 illustrates a process flow for data augmentation, training, and evaluation of a neural network model, according to some embodiments of the present disclosure.
[0054] [Figure 22] 1 illustrates a flowchart of an example method for acoustic sensing using millimeter-wave wireless signals, according to some embodiments of the present disclosure.
[0055] [Figure 23] 1 illustrates an example network topology of four devices, according to some embodiments of the present disclosure.
[0056] [Figure 24]1 illustrates an example network topology of four devices, according to some embodiments of the present disclosure.
[0057] [Figure 25] 1 illustrates an example network topology of three devices, according to some embodiments of the present disclosure.
[0058] [Figure 26] 1 illustrates an example flowchart and components of a master origin device according to some embodiments of the present disclosure.
[0059] [Figure 27] 1 illustrates an example network topology of six devices, according to some embodiments of the present disclosure.
[0060] [Figure 28] 1 illustrates an example network topology of nine devices in a local area network, according to some embodiments of the present disclosure.
[0061] [Figure 29] 1 illustrates a flowchart of an example method for analyzing and improving a network topology, according to some embodiments of the present disclosure.
[0062] [Figure 30] 1 illustrates a flowchart of an exemplary approach for wireless motion monitoring, according to some embodiments of the present disclosure.
[0063] [Figure 31] FIG. 1 illustrates an approach for wireless monitoring based on a physical barrier placed between a transmitter and a receiver, in accordance with some embodiments of the present disclosure.
[0064] [Figure 32] 1 illustrates a wireless monitoring method based on at least one directional antenna, according to some embodiments of the present disclosure.
[0065] [Figure 33] 1 illustrates an exemplary device plugged into a wall outlet for fall detection, according to some embodiments of the present disclosure.
[0066] [Figure 34] FIG. 1 illustrates an approach for wireless monitoring based on a physical barrier placed between a transmitter and a receiver, in accordance with some embodiments of the present disclosure.
[0067] [Figure 35] 1 illustrates an example hardware configuration of a transmitter and receiver in a wireless monitoring system according to some embodiments of the present disclosure.
[0068] [Figure 36] 1A-1C illustrate examples of various situations of transmitters and receivers in a wireless monitoring system, according to some embodiments of the present disclosure.
[0069] [Figure 37] 1 illustrates an example scenario in which object motion is monitored, according to some embodiments of the present disclosure.
[0070] [Figure 38] 1 illustrates an exemplary floor plan and wireless device installation for wireless monitoring, according to some embodiments of the present disclosure.
[0071] [Figure 39] 1 illustrates an exemplary block diagram of a first wireless device of a wireless monitoring system, according to one embodiment of the present disclosure.
[0072] [Figure 40] 1 illustrates an exemplary block diagram of a second wireless device of a wireless monitoring system, according to one embodiment of the present disclosure.
[0073] [Figure 41] 1 illustrates a flowchart of an exemplary approach for wireless tremor monitoring, according to some embodiments of the present disclosure. DETAILED DESCRIPTION OF THE INVENTION
[0074] In the following detailed description, numerous specific details are set forth, by way of example, to provide a thorough understanding of the relevant disclosure. However, it should be apparent to those skilled in the art that the present disclosure may be practiced without such details. In other instances, well-known methods, procedures, components, and / or circuits have been described at a relatively high level, without detail, in order to avoid unnecessarily obscuring aspects of the present disclosure.
[0075] In one embodiment, the present disclosure discloses a method, apparatus, device, system, and / or software (method / apparatus / device / system / software) for a wireless monitoring system. Time-series channel information (CI) of a wireless multipath channel may be obtained (e.g., dynamically) using a processor, a memory communicatively coupled to the processor, and a set of instructions stored in the memory. A time series of CI (TSCI) may be extracted from wireless signals (signals) transmitted between a type 1 heterogeneous wireless device (e.g., a wireless transmitter, TX) and a type 2 heterogeneous wireless device (e.g., a wireless receiver, RX) at a venue over the channel. The channel may be affected by representations (e.g., motion, movement, representation, and / or position / pose / shape / representation changes) of objects at the venue. Properties and / or spatio-temporal information (STI, e.g., movement information) of objects and / or object motion may be monitored based on the TSCI. A task may be performed based on the properties and / or STI. A presentation associated with the task may be generated in a user interface (UI) on a user's device. The TSCI may be a wireless signal stream. The TSCI or each CI may be pre-processed. The device may be a station (STA). The symbol "A / B" means "A and / or B" in this disclosure.
[0076] Expressions can include placement, placement of movable parts, location, position, orientation, identifiable location, area, spatial coordinates, presentation, state, expression, static representation, size, length, width, height, angle, scale, shape, curve, surface, area, volume, pose, posture, sign, body representation, dynamic representation, dynamic noun, movement, movement sequence, gesture, stretch, contraction, distortion, deformation, body representation (e.g., head, face, eyes, mouth, tongue, hair, voice, neck, limbs, arms, hands, legs, feet, muscles, moving parts), surface representation (e.g., shape, texture, material, color, electromagnetic (EM) properties, visual pattern, humidity, reflectivity, translucency, flexibility), material properties (e.g., living tissue, hair, fabric, metal, wood, leather, plastic, metallic, artificial material, solid, liquid, gas, temperature), movement, activity, behavior, change in expression, and / or any combination.
[0077] Wireless signals include transmit / receive signals, EM radiation, RF signals / transmissions, signals in licensed / unlicensed / ISM bands, band-limited signals, baseband signals, wireless / mobile / cellular communication signals, wireless / mobile / cellular network signals, mesh signals, optical signals / communications, downlink / uplink signals, unicast / multicast / broadcast signals, standard (e.g. WLAN, WWAN, WPAN, WBAN, international, national, industry, de facto, IEEE, IEEE 802, 802.11 / 15 / 16, WiFi, 802.11n / ac / ax / be, 3G / 4G / LTE / 5G / 6G / 7G / 8G, 3GPP, blue tooth, BLE, Zigbee, RFID, UWB, WiMax) compliant signals, protocol signals, standard frames, beacon / pilot / search / inquiry / acknowledge / handshake / synchronization signals, management / control / data signals, standardized wireless / cellular communication protocols, reference signals, source signals, motion probe / detection / The CI may include a sensing signal and / or a series of signals. The wireless signal may include line-of-sight (LOS) and / or non-LOS components (or paths / links). Each CI may be extracted / generated / calculated / detected at a layer of the Type 2 device (e.g., the PHY / MAC layer of the OSI model) and obtained by an application (e.g., software, firmware, driver, app, wireless monitoring software / system).
[0078] A wireless multipath channel can include: a communication channel, an analog frequency channel (e.g., analog carrier frequencies around 700 / 800 / 900 MHz, 1.8 / 1.8 / 2.4 / 3 / 5 / 6 / 27 / 60 GHz), a coded channel (e.g., CDMA), and / or a channel of a wireless network / system (e.g., WLAN, WiFi, mesh, LTE, 4G / 5G, Bluetooth, Zigbee, UWB, RFID, microwave). It can include two or more channels. The channels can be contiguous (e.g., adjacent / overlapping bands) or non-contiguous (e.g., non-overlapping WiFi channels, one at 2.4 GHz and one at 5 GHz).
[0079] The TSCI can be extracted from a wireless signal at a layer of a Type-2 device (e.g., a layer of the OSI reference model, a physical layer, a data link layer, a logical link control layer, a media access control (MAC) layer, a network layer, a transport layer, a session layer, a presentation layer, an application layer, a TCP / IP layer, an Internet layer, or a link layer). The TSCI may also be extracted from a derived signal (e.g., a baseband signal, a motion detection signal, or a motion sensing signal) derived from a wireless signal (e.g., an RF signal). It may be a (wireless) measurement detected by a communication protocol (e.g., a standardized protocol) using an existing mechanism (e.g., a wireless / cellular communication standard / network, 3G / LTE / 4G / 5G / 6G / 7G / 8G, WiFi, IEEE 802.11 / 15 / 16). The derived signal may include a packet having at least one of a preamble, a header, and a payload (e.g., for data / control / management in a wireless link / network). The TSCI may be extracted from a probe signal in a packet (e.g., a training sequence, STF, LTF, L-STF, L-LTF, L-SIG, HE-STF, HE-LTF, HE-SIG-A, HE-SIG-B, or CEF). The motion detection / sensing signal may be recognized / identified based on the probe signal. The packet may be a standard-compliance protocol frame, a management frame, a control frame, a data frame, a sounding frame, an excitation frame, an illumination frame, a null data frame, a beacon frame, a pilot frame, a probe frame, a request frame, a response frame, an association frame, a reassociation frame, a disassociation frame, an authentication frame, an action frame, a report frame, a poll frame, an announcement frame, an extension frame, an inquiry frame, an acknowledgement frame, an RTS frame, a CTS frame, a QoS frame, a CF-Poll frame, a CF-Ack frame, a block acknowledgement frame, a reference frame, a training frame, and / or a synchronization frame.
[0080] The packet may include control data and / or motion detection probes. Data (e.g., Type 1 device ID / parameters / characteristics / settings / control signals / commands / instructions / notifications / broadcast-related information) can be obtained from the payload. The wireless signal can be transmitted by the Type 1 device and received by the Type 2 device. A database (e.g., in a local server, hub device, cloud server, or storage network) can be used to store TSCI, characteristics, STI, signatures, patterns, behaviors, trends, parameters, analysis, output responses, identification information, user information, device information, channel information, location (e.g., map, environment model, network, proximity device / network) information, task information, class / category information, presentation (e.g., UI) information, and / or other information.
[0081] A Type 1 / Type 2 device may include at least one of electronics, circuitry, transmitter (TX) / receiver (RX) / transceiver, RF interface, "origin satellite" / "tracker bot," unicast / multicast / broadcast device, wireless power device, power / destination device, wireless node, hub device, target device, motion detection device, sensor device, remote / wireless sensor device, wireless communication device, wireless enabled device, standard compliant device, and / or receiver. A Type 1 (or Type 2) device may be heterogeneous because, if multiple instances of a Type 1 (or Type 2) device exist, they may have different circuitry, enclosure, structure, purpose, sub-functionality, chip / IC, processor, memory, software, firmware, network connectivity, antenna, brand, model, appearance, form, shape, color, material, and / or specifications. A Type 1 / Type 2 device may include an access point, a router, a mesh router, an Internet of Things (IoT) device, a wireless terminal, one or more radio / RF subsystems / radio interfaces (e.g., 2.4 GHz radio, 5 GHz radio, fronthaul radio, backhaul radio), a modem, an RF front end, an RF / radio chip or integrated circuit (IC).
[0082] At least one of Type 1 devices, Type 2 devices, links between them, objects, characteristics, STI, motion monitoring, and tasks may be associated with an identification (ID) such as a UUID. Type 1, Type 2, or another device may acquire, store, retrieve, access, preprocess, condition, process, analyze, monitor, or apply TSCI. Type 1 and Type 2 devices may communicate network traffic on other channels (e.g., Ethernet, HDMI, USB, Bluetooth, BLE, WiFi, LTE, other networks, wireless multipath channels) in parallel with wireless signals. Type 2 devices may passively observe, monitor, or receive wireless signals from Type 1 devices on wireless multipath channels without establishing a connection (e.g., association / authentication) with or requesting service from the Type 1 device.
[0083] A transmitter (i.e., Type 1 device) can function (act as) a receiver (i.e., Type 2 device) temporarily, sporadically, continuously, repeatedly, interchangeably, alternately, simultaneously, in parallel, and / or simultaneously, and vice versa. A device may function as a Type 1 device (transmitter) and / or a Type 2 device (receiver) temporarily, sporadically, continuously, repeatedly, simultaneously, in parallel, and / or simultaneously. There may be multiple wireless nodes, each of which is a Type 1 (TX) and / or Type 2 (RX) device. TSCI may be obtained for each two nodes when exchanging / communicating wireless signals. An object's characteristics and / or STI may be monitored individually based on the TSCI or jointly based on two or more (e.g., all) TSCIs.
[0084] An object's movement may be monitored actively (in that its Type 1 device, Type 2 device, or both are wearable / associated with the object) and / or passively (in that both the Type 1 device and the Type 2 device are not wearable / associated with the object). It may be passive because the object may not be associated with a Type 1 device and / or a Type 2 device. The object (e.g., a user, an automated guided vehicle, or an AGV) may not need to carry / install any wearable / fixture (i.e., Type 1 devices and Type 2 devices are not wearable / attached equipment that the object needs to carry to perform a task). It may be active because the object may be associated with either a Type 1 device or a Type 2 device. The object may carry (or install) a wearable / attachment (e.g., a Type 1 device, a Type 2 device, or equipment communicatively coupled to either a Type 1 device or a Type 2 device).
[0085] The presentation may be visual, audio, image, video, animation, graphic presentation, text, etc. The computation of the task may be performed by a processor (or logic unit) of the Type 1 device, a processor (or logic unit) of the IC of the Type 1 device, a processor (or logic unit) of the Type 2 device, a processor of the IC of the Type 2 device, a local server, a cloud server, a data analysis subsystem, a signal analysis subsystem, and / or another processor. The task may be performed with or without a radio fingerprint or baseline (e.g., collection, processing, processing, transmission, and / or training phase / previous survey / latest survey / initial radio survey, passive indications), training, profile, trained profile, static profile, static profile, survey, initial radio survey, initial setup, installation, retraining, update, and reset).
[0086] A Type 1 device (TX device) may comprise at least one heterogeneous radio transmitter. A Type 2 device (RX device) may include at least one heterogeneous radio receiver. A Type 1 device and a Type 2 device may be co-located. A Type 1 device and a Type 2 device may be the same device. Any device may have a data processing unit / device, a computing unit / system, a network unit / system, a processor (e.g., a logic unit), a memory communicatively coupled to the processor, and a set of instructions stored in the memory to be executed by the processor. Some processors, memories, and sets of instructions may cooperate.
[0087] There may be multiple Type 1 devices interacting (e.g., communicating, exchanging signals / control / notifications / other data) with the same Type 2 device (or multiple Type 2 devices) and / or there may be multiple Type 2 devices interacting with the same Type 1 device. Multiple Type 1 / Type 2 devices may be synchronous and / or asynchronous, have the same / different window widths / sizes and / or time shifts, have the same / different synchronization start times, synchronization end times, etc. Wireless signals transmitted by multiple Type 1 devices may be sporadic, intermittent, continuous, repetitive, synchronous, simultaneous, and / or concurrent. Multiple Type 1 / Type 2 devices may operate independently and / or cooperatively. Type 1 and / or Type 2 devices may have / include heterogeneous hardware circuits (e.g., heterogeneous chips or ICs capable of generating / receiving wireless signals, extracting CI from received signals, or making CI available). They may be communicatively coupled to the same or different servers (e.g., cloud server, edge server, local server, hub device).
[0088] The operation of one device can be based on the operation, state, internal state, storage, processor, memory output, physical location, computational resources, or network of another device. Different devices may communicate directly and / or through another device / server / hub device / cloud server. A device can be associated with one or more users and have associated settings. Settings can be selected once, pre-programmed, and / or changed (e.g., adjusted, changed, modified) / varied over time. There may be additional steps in a method. Method steps and / or additional steps may be performed in the order shown or in a different order. Any steps may be performed in parallel, iteratively, or otherwise iteratively or otherwise. A user may be a human, adult, elderly adult, male, female, infant, child, baby, pet, animal, living being, machine, computer module / software, etc.
[0089] For one or more Type 1 devices interacting with one or more Type 2 devices, any processing (e.g., time domain, frequency domain) can be different for different devices. Processing can be based on location, orientation, direction, role, user-related characteristics, settings, configuration, available resources, available bandwidth, network connection, hardware, software, processor, co-processor, memory, battery life, available power, antenna, antenna type, antenna directional / unidirectional characteristics, power settings, and / or other parameters / characteristics of the device.
[0090] The wireless receiver (e.g., a Type 2 device) may receive a signal and / or another signal from the wireless transmitter (e.g., a Type 1 device). The wireless receiver may receive another signal from another wireless transmitter (e.g., a second Type 1 device). The wireless transmitter may transmit a signal and / or another signal to another wireless receiver (e.g., a second Type 2 device). The wireless transmitter, the wireless receiver, another wireless receiver, and / or another wireless transmitter may move with the object and / or another object. The other object may be tracked.
[0091] A Type 1 and / or Type 2 device may be capable of wirelessly coupling with at least two Type 2 and / or Type 1 devices. The Type 1 device may be triggered / controlled to switch / establish a wireless coupling (e.g., association, authentication) from the Type 2 device to a second Type 2 device at another location in the location. Similarly, the Type 2 device may be triggered / controlled to switch / establish a wireless coupling from the Type 1 device to a second Type 1 device at yet another location in the location. The switching may be controlled by a server (or hub device), a processor, the Type 1 device, the Type 2 device, and / or another device. The radios used before and after the switching may be different. A second wireless signal (second signal) may be transmitted through the channel between the Type 1 device and the second Type 2 device (or between the Type 2 device and the second Type 1 device). A second TSCI of the channel may be obtained from the second signal. The second signal may be the first signal. A characteristic, STI, and / or another quantity of the object may be monitored based on the second TSCI. The Type 1 and Type 2 devices may be the same. The characteristics, STIs, and / or other quantities with different timestamps may form a waveform. The waveform may be displayed in a presentation.
[0092] The wireless signal and / or another signal may have data embedded therein. The wireless signal may be a series of probe signals (e.g., repeated transmission of a probe signal, reuse of one or more probe signals). The probe signal may vary / change over time. The probe signal may be a standard-compliant signal, a protocol signal, a standardized wireless protocol signal, a control signal, a data signal, a wireless communication network signal, a cellular network signal, a WiFi signal, an LTE / 5G / 6G / 7G signal, a reference signal, a beacon signal, a motion detection signal, and / or a motion sensing signal. The probe signal may be formatted according to a wireless network standard (e.g., WiFi), a cellular network standard (e.g., LTE / 5G / 6G), or another standard. The probe signal may include a packet having a header and a payload. The probe signal may have data embedded therein. The payload may include data. The probe signal may replace a data signal. The probe signal may be embedded in a data signal. The wireless receiver, the wireless transmitter, the other wireless receiver and / or the other wireless transmitter may be associated with at least one processor, memory communicatively coupled to the respective processor, and / or a respective set of instructions stored in the memory that, when executed, cause the processor to perform any and / or all steps necessary to determine the object's STI (e.g., movement information), initial STI, initial time, direction, instantaneous position, instantaneous angle, and / or velocity.
[0093] The processor, memory, and / or set of instructions may be associated with a Type 1 device, at least one Type 2 device, an object, a device associated with the object, another device associated with the location, a cloud server, a hub device, and / or another server.
[0094] A Type 1 device can transmit a signal in a broadcast manner to at least one Type 2 device(s) over a location channel. The signal is transmitted without the Type 1 device establishing a wireless connection (e.g., association, authentication) with any Type 2 device and without the Type 2 device requesting service from the Type 1 device. A Type 1 device can transmit to a specific media access control (MAC) address common to multiple Type 2 devices. Each Type 2 device can tune its MAC address to a specific MAC address. The specific MAC address can be associated with a location. The association can be recorded in an association table in an association server (e.g., a hub device). A location can be identified by a Type 1 device, a Type 2 device, and / or another device based on the specific MAC address, a series of probe signals, and / or at least one TSCI extracted from the probe signals.
[0095] For example, a Type 2 device may be moved to a new location (e.g., from another location) at a location. A Type 1 device may be newly configured at a location such that the Type 1 and Type 2 devices are unaware of each other. During setup, the Type 1 device may be instructed / guided / triggered / controlled (e.g., using a dummy receiver, using a hardware pin configuration / connection, using a saved configuration, using a local configuration, using a remote configuration, using a downloaded configuration, using a hub device, or using a server) to send a series of probe signals to a specific MAC address. Upon powering up, the Type 2 device may scan for probe signals according to a table (e.g., stored in a designated source, server, hub device, cloud server) of MAC addresses that can be used to broadcast in different locations (e.g., different MAC addresses used for different locations such as a house, office, enclosure, floor, multi-story building, store, airport, mall, stadium, hall, station, subway, lot, region, area, district, province, city, country, continent, etc.). When the Type 2 device detects a probe signal sent to a specific MAC address, the Type 2 device may use the table to identify the location based on the MAC address.
[0096] The location of the location Type 2 device may be calculated based on the specific MAC address, the series of probe signals, and / or at least one TSCI obtained by the Type 2 device from the probe signals. The calculation may be performed by the Type 2 device.
[0097] The specific MAC address may change (e.g., be adjusted, changed, modified) over time. It may change according to timetables, rules, policies, modes, conditions, circumstances, and / or changes. The specific MAC address may be selected based on MAC address availability, preselected lists, collision patterns, traffic patterns, data traffic between the Type 1 device and other devices, available bandwidth, random selection, and / or a MAC address switching plan. The specific MAC address may be the MAC address of a second wireless device (e.g., a dummy receiver or a receiver acting as a dummy receiver).
[0098] The Type 1 device may transmit a probe signal on a channel selected from the set of channels, and at least one CI of the selected channel may be obtained by each Type 2 device from the probe signal transmitted on the selected channel.
[0099] The selected channel may be changed (e.g., adjusted, changed, modified) over time. The change may be according to a timetable, rule, policy, mode, condition, situation, and / or change. The selected channel may be selected based on channel availability, random selection, a preselected list, co-channel interference, inter-channel interference, channel traffic patterns, data traffic between the Type 1 device and another device, effective bandwidth associated with the channel, security criteria, channel switching plans, criteria, quality criteria, signal quality conditions, and / or considerations.
[0100] The specific MAC address and / or selected channel information can be communicated between a Type 1 device and a server (e.g., a hub device) over a network. The specific MAC address and / or selected channel information can also be communicated between a Type 2 device and a server (e.g., a hub device) over another network. A Type 2 device can communicate the specific MAC address and / or selected channel information to another Type 2 device (e.g., via a mesh network, Bluetooth, WiFi, NFC, ZigBee, etc.). The specific MAC address and / or selected channel can be selected by a server (e.g., a hub device). The specific MAC address and / or selected channel can be signaled in an announcement channel by a Type 1 device, a Type 2 device, and / or a server (e.g., a hub device). Any information can be preprocessed before being communicated.
[0101] A wireless connection (e.g., association, authentication) between a Type 1 device and another wireless device can be established (e.g., using a signal handshake). The Type 1 device can send a first handshake signal (e.g., a sounding frame, a probe signal, a request to send RTS) to the other device. The other device can respond by sending a second handshake signal (e.g., a command or a clear to send CTS) to the Type 1 device, triggering the Type 1 device to send a signal (e.g., a series of probe signals) in a broadcast manner to multiple Type 2 devices without establishing a connection with any Type 2 devices. The second handshake signal can be a response or acknowledgment (e.g., an ACK) to the first handshake signal. The second handshake signal can include data having location and / or Type 1 device information. The other device can be a dummy device with a purpose (e.g., primary purpose, secondary purpose) to establish a wireless connection with the Type 1 device, receive the first signal, and / or send the second signal. The other device can be physically attached to the Type 1 device.
[0102] In another example, another device can send a third handshake signal to a Type-1 device that triggers the Type-1 device to broadcast a signal (e.g., a series of probe signals) to multiple Type-2 devices without establishing a connection (e.g., association, authentication) with any of the Type-2 devices. The Type-1 device can respond to the third special signal by sending a fourth handshake signal to the other device. Another device can be used to trigger multiple Type-1 devices to broadcast. The triggering may be sequential, partially sequential, partially parallel, or fully parallel. The other device may have multiple radio circuits to trigger multiple transmitters in parallel. Parallel triggering can also be achieved by using at least one additional device to perform a trigger in parallel with another device (as the other device does). The other device cannot communicate (or suspend communication) with the Type-1 device after establishing a connection with it. The suspended communication may resume. The other device can enter an inactive mode, dormant mode, sleep mode, standby mode, low power mode, OFF mode, and / or power-down mode after establishing a connection with the Type-1 device. The other device may have a specific MAC address such that the Type 1 device sends signals to the specific MAC address. The Type 1 device and / or the other device may be controlled and / or coordinated by a first processor associated with the Type 1 device, a second processor associated with the other device, a third processor associated with the specified source, and / or a fourth processor associated with the other device. The first and second processors may coordinate with each other.
[0103] A first series of probe signals may be transmitted by a first antenna of the Type 1 device to at least one first Type 2 device through a first channel at a first location. A second series of probe signals may be transmitted by a second antenna of the Type 1 device to at least one second Type 2 device through a second channel at a second location. The first series of probe signals and the second series of probe signals may be different / not different. The at least one first Type 2 device may be different / not different from the at least one second Type 2 device. The first and / or second series of probe signals may be broadcast without an established connection (e.g., association, authentication) between the Type 1 device and any Type 2 device. The first and second antennas may be the same / different.
[0104] The two locations may have different sizes, shapes, and multipath characteristics. The first and second locations may overlap. The immediate areas near the first and second antennas may overlap. The first and second channels may be the same or different. For example, the first may be WiFi and the second may be LTE. Or, both may be WiFi, but the first may be 2.4 GHz WiFi and the second may be 5 GHz WiFi. Or, both may be 2.4 GHz WiFi, but with different channel numbers, SSID names, and / or WiFi settings.
[0105] Each Type 2 device can obtain at least one TSCI from each series of probe signals, where a CI is each channel between the Type 2 device and the Type 1 device. Some first Type 2 device(s) and some second Type 2 device(s) may be the same. The first and second series of probe signals may be synchronous / asynchronous. The probe signals may be transmitted with data or may be replaced by data signals. The first antenna and the second antenna may be the same.
[0106] A first series of probe signals may be transmitted at a first rate (e.g., 30 Hz). A second series of probe signals may be transmitted at a second rate (e.g., 200 Hz). The first and second rates can be the same or different. The first and / or second rates can be changed (e.g., adjusted, varied, modified) over time. The change can be according to a timetable, rule, policy, mode, condition, situation, and / or change. Any rate can be changed (e.g., adjusted, varied, modified) over time.
[0107] The first and / or second series of probe signals may be transmitted to a first MAC address and / or a second MAC address, respectively. The two MAC addresses may be the same or different. The first series of probe signals may be transmitted in a first channel. The second series of probe signals may be transmitted in a second channel. The two channels may be the same or different. The first or second MAC address and the first or second channel may change over time. Any change may be according to a timetable, rule, policy, mode, state, condition, and / or change.
[0108] A Type 1 device and another device may control and / or coordinate, be physically attached to, or be of / within a common device. They may be controlled by / connected to a common data processor or connected to a common bus interconnect / network / LAN / Bluetooth network / NFC network / BLE / wired network / wireless network / mesh network / mobile network / cloud. They may share common memory or be associated with a common user, user device, profile, account, identity (ID), identifier, home, residence, physical address, location, geographic coordinates, IP subnet, SSID, home device, office device, and / or manufacturing device.
[0109] Each Type 1 device may be a signal source for a respective set of Type 2 devices (i.e., it sends a respective signal (e.g., a respective series of probe signals) to a respective set of Type 2 devices). Each Type 2 device selects a Type 1 device from all Type 1 devices as its signal source. Each Type 2 device may be selected asynchronously. At least one TSCI may be obtained by each Type 2 device from a respective series of probe signals from the Type 1 device, and the TSCI is a channel between the Type 2 device and the Type 1 device.
[0110] Each Type 2 device selects a Type 1 device as its signal source from among all Type 1 devices based on identity (ID) or Type 1 / Type 2 device identifier, task to be performed, past signal sources, history (e.g., of past signal sources, the Type 1 device, another Type 1 device, each Type 2 receiver, and / or another Type 2 receiver), threshold for switching signal sources, and / or user information, account, access information, parameters, characteristics, and / or signal strength (e.g., associated with the Type 1 device and / or each Type 2 receiver).
[0111] Initially, a Type 1 device may be a signal source for each of the initial set of Type 2 devices (i.e., the Type 1 device sends a respective signal (series of probe signals) to each of the initial set of Type 2 devices). Each initial respective Type 2 device selects a Type 1 device from among all Type 1 devices as its signal source.
[0112] A signal source of a particular Type 2 device (Type 1 device) may be changed (e.g., adjusted, altered, modified) if: (1) the time interval between two adjacent probe signals (e.g., between the current probe signal and the immediately previous probe signal, or between the next probe signal and the current probe signal) received from the current signal source of the Type 2 device exceeds a first threshold; (2) the signal strength associated with the current signal source of the Type 2 device is less than a second threshold; (3) the processed signal strength associated with the current signal source of the Type 2 device is less than a third threshold, and the signal strength is processed with a low-pass filter, a band-pass filter, a median filter, a moving average filter, a weighted average filter, a linear filter, and / or a nonlinear filter; and / or (4) the signal strength (or processed signal strength) associated with the current signal source of the Type 2 device is below a fourth threshold for a significant percentage (e.g., 70%, 80%, 90%) of a recent time window. The percentage can exceed a fifth threshold. The first, second, third, fourth and / or fifth thresholds may be time-varying.
[0113] Condition (1) can occur when a Type 1 device and a Type 2 device gradually move farther away from each other, resulting in some probe signals from the Type 1 device becoming too weak to be received by the Type 2 device. Conditions (2) through (4) can occur when the two devices move far enough away from each other that the signal strength becomes very weak.
[0114] The signal source of a Type 2 device may not change if another Type 1 device has a signal strength weaker than the current signal source by a factor (eg, 1, 1.1, 1.2, or 1.5).
[0115] If the signal source is changed (adjusted, modified, modified, etc.), a new signal source may become effective in the near future (e.g., each next time). The new signal source may be the Type 1 device with the strongest signal strength and / or processed signal strength. The current signal source and the new signal source may be the same or different.
[0116] A list of available Type 1 devices may be initialized and maintained by each Type 2 device. The list may be updated by examining signal strengths and / or processed signal strengths associated with each set of Type 1 devices. A Type 2 device may select between a first series of probe signals from a first Type 1 device and a second series of probe signals from a second Type 1 device based on their respective probe signal rates, MAC addresses, channels, characteristics / properties / statuses, tasks to be performed by the Type 2 device, the first and second series of signal strengths, and / or other considerations.
[0117] The series of probe signals may be transmitted at a constant rate (e.g., 100 Hz). The series of probe signals may be scheduled at regular intervals (e.g., 0.01 seconds for 100 Hz), although each probe signal may experience small time perturbations, possibly due to timing requirements, timing control, network control, handshaking, message passing, collision avoidance, carrier sensing, congestion, resource availability, and / or other considerations.
[0118] The rate may be changed (e.g., adjusted, modified, or amended). The change may be according to a schedule (e.g., changed hourly), a rule, a policy, a mode, a condition, and / or a change (e.g., changed whenever an event occurs). For example, the rate may normally be 100 Hz, but may be changed to 1000 Hz in demanding situations, or to 1 Hz in low power / standby situations. The probe signal may be transmitted in bursts.
[0119] The probe signal rate may vary based on the task performed by the Type 1 or Type 2 device (e.g., a task may normally require 100 Hz, temporarily 1000 Hz for 20 seconds). In one example, transmitters (Type 1 devices), receivers (Type 2 devices), and associated tasks may be adaptively (and / or dynamically) associated with classes (e.g., classes that are low priority, high priority, emergency, critical, normal, privileged, non-subscribed, subscribed, paid, and / or unpaid). The (transmitter's) rate may be adjusted for some classes (e.g., high priority classes). If the needs of that class change, the rate can be changed (e.g., adjusted, modified, modified). If the receiver has critically low power, the rate may be reduced to reduce the receiver's power consumption for responding to the probe signal. In one example, the probe signal may be used to wirelessly transfer power to the receiver (Type 2 device), and the rate may be adjusted to control the amount of power transferred to the receiver.
[0120] The rate may be changed by (or based on): a server (e.g., a hub device), a Type 1 device, and / or a Type 2 device. Control signals may be communicated between them. The server may monitor, track, predict, and / or anticipate the needs of and / or tasks performed by the Type 2 device, and control the Type 1 device to change the rate. The server may make scheduled changes to the rate according to a timetable. The server may detect an emergency and immediately change the rate. The server may detect a developing condition and gradually adjust the rate.
[0121] Characteristics and / or STI (e.g., movement information) may be monitored individually based on TSCIs associated with a particular Type 1 device and a particular Type 2 device, and / or jointly based on any TSCIs associated with a particular Type 1 device and any Type 2 device, and / or jointly based on any TSCIs associated with a particular Type 2 device and any Type 1 device, and / or globally based on any TSCIs associated with any Type 1 device and any Type 2 device. Any joint monitoring may relate to: a user, a user account, a profile, a home, a map of the location, an environmental model of the location, and / or a user history, etc.
[0122] A first channel between a Type 1 device and a Type 2 device may be different from a second channel between another Type 1 device and another Type 2 device, and the two channels may be associated with different frequency bands, bandwidths, carrier frequencies, modulations, wireless standards, coding, encryption, payload characteristics, networks, network IDs, SSIDs, network characteristics, network settings, and / or network parameters, etc.
[0123] The two channels can relate to different types of wireless systems (e.g., two of the following: WiFi, LTE, LTE-A, LTE-U, 2.5G, 3G, 3.5G, 4G, Beyond 4G, 5G, 6G, 7G, cellular network standards, UMTS, 3GPP, GSM, EDGE, TDMA, FDMA, CDMA, WCDMA, TD-SCDMA, 802.11 systems, 802.15 systems, 802.16 systems, mesh networks, Zigbee, NFC, WiMax, Bluetooth, BLE, RFID, UWB, microwave systems, radar-like systems), for example, one channel being WiFi and the other being LTE.
[0124] The two channels may be associated with similar types of wireless systems, but different networks. For example, a first channel may be associated with a WiFi network named "Pizza and Pizza" in the 2.4 GHz band with a bandwidth of 20 MHz, while a second channel may be associated with a WiFi network with an SSID of "StarBud Hotspot" in the 5 GHz band with a bandwidth of 40 MHz. The two channels may be different channels within the same network (e.g., the "StarBud Hotspot" network).
[0125] In one embodiment, the wireless monitoring system can include training a classifier for multiple events at a location based on training TSCIs associated with the multiple events. The CIs or TSCIs associated with an event can take into account / include radio samples / characteristics / fingerprints associated with the event (and / or location, environment, object, object movement, state / emotional state / mental state / condition / stage / gesture / gait / action / movement / activity / daily activity / history / event of the object, etc.).
[0126] For each of a plurality of known events occurring at a location at a respective training (e.g., survey, wirelee survey, initial wireless survey) time associated with the known event, a respective training wireless signal (e.g., a respective series of training probe signals) may be transmitted to at least one first type 2 heterogeneous wireless device through a wireless multipath channel of the location at the respective training time by an antenna of the first type 1 heterogeneous wireless device using a processor, memory, and set of instructions of the first type 1 device.
[0127] At least one respective time series of training CIs (training TSCIs) may be asynchronously acquired by each of the at least one first Type 2 device from the (respective) training signal. The CIs may be CIs of a channel between the first Type 2 device and the first Type 1 device at a training time associated with a known event. The at least one training TSCI may be preprocessed. The training may be a wireless survey (e.g., during installation of the Type 1 device and / or the Type 2 device).
[0128] For a current event occurring within a location in a current period, a current wireless signal (e.g., a series of current probe signals) may be transmitted to at least one second Type 2 heterogeneous wireless device through a channel of the location in a current period related to the current event by an antenna of the second Type 1 heterogeneous wireless device using a processor, memory, and set of instructions of the second Type 1 device.
[0129] At least one time series of current CIs (current TSCIs) may be asynchronously acquired by each of the at least one second Type-2 device from a current signal (e.g., a series of current probe signals). The CIs may be CIs of a channel between the second Type-2 device and the second Type-1 device at a current time period associated with a current event. The at least one current TSCI may be preprocessed.
[0130] A classifier may be applied by at least one second Type 2 device to classify at least one current TSCI obtained from the series of current probe signals, to classify at least a portion of a particular current TSCI, and / or to classify a combination of at least a portion of a particular current TSCI with another portion of another TSCI. The classifier may divide the TSCIs (or features / STIs or other analysis or output responses) into clusters and associate the clusters with particular events / objects / subjects / locations / movements / activities. Labels / tags may be generated for the clusters. The clusters may be stored and searched. A classifier may be applied to associate the current TSCI (or perhaps a characteristic / STI or other analysis / output response related to the current event) with: a cluster, a known / specific event, a class / category / group / grouping / list / cluster, a set of known events / subject / location / movement / activity, an unknown event, a class / category / group / grouping / list / cluster, a set of unknown events / subject / location / movement / activity, and / or another event / subject / location / movement / activity / class / category / group / grouping / list / cluster. Each TSCI may include at least one CI, each associated with a respective timestamp. Two TSCIs associated with two Type 2 devices differ by different start times, durations, stop times, amount of CIs, sampling frequencies, and sampling periods. The CIs may have different characteristics. The first and second Type 1 devices may be at the same location. They may be the same device. At least one second Type 2 device (or their location) may be a replacement for at least one first Type 2 device (or their location). The particular second Type 2 device and the particular first Type 2 device may be the same device.
[0131] The subset of first Type 2 devices and the subset of second Type 2 devices may be the same. At least one second Type 2 device and / or at least one subset of second Type 2 devices may be a subset of at least one first Type 2 device. At least one first Type 2 device and / or at least one subset of first Type 2 devices may be a replacement for a subset of at least one second Type 2 device. At least one second Type 2 device and / or at least one subset of second Type 2 devices may be a replacement for a subset of at least one first Type 2 device. At least one second Type 2 device and / or at least one subset of second Type 2 devices may be in the same respective locations as the subset of at least one first Type 2 device. At least one first Type 2 device and / or at least one subset of first Type 2 devices may be in the same respective locations as the subset of at least one second Type 2 device.
[0132] The antenna of the Type 1 device and the antenna of the second Type 1 device may be in the same location. The antenna of the at least one second Type 2 device and / or the antenna of the subset of at least one second Type 2 device may be in the same respective location as each antenna of the subset of at least one first Type 2 device. The antenna of the at least one first Type 2 device and / or the antenna of the subset of at least one first Type 2 device may be in the same respective location as each antenna of the subset of at least one second Type 2 device.
[0133] A first section of a first duration of a first TSCI and a second section of a second duration of a second TSCI may be aligned. A map between items in the first section and items in the second section may be calculated. The first section may include a first segment (e.g., a subset) of the first TSCI having a first start / end time and / or another segment (e.g., a subset) of the processed first TSCI. The processed first TSCI may be the first TSCI processed by the first operation. The second section may include a second segment (e.g., a subset) of the second TSCI having a second start time and a second end time, and another segment (e.g., a subset) of the processed second TSCI. The processed second TSCI may be the second TSCI processed by the second operation. The first operation and / or the second operation may include subsampling, resampling, interpolation, filtering, transformation, feature extraction, preprocessing, and / or other operations.
[0134] A first item in a first section may be mapped to a second item in a second section. A first item in a first section may also be mapped to another item in a second section. Another item in a first section may also be mapped to a second item in a second section. The mapping may be one-to-one, one-to-many, many-to-one, or many-to-many. At least one function of at least one of the first item in a first section of a first TSCI, another item in a first TSCI, a timestamp of the first item, a time difference of the first item, a time difference of the first item, an adjacent timestamp of the first item, an adjacent timestamp of the first item, another timestamp related to the first item, a second item in a second section of a second TSCI, another item in a second TSCI, a timestamp of the second item, a time difference of the second item, a time difference of the second item, an adjacent timestamp of the second item, and another timestamp related to the second item may satisfy at least one constraint.
[0135] One constraint may be that the difference between the timestamp of the first item and the timestamp of the second item may be bounded upper by an adaptive (and / or dynamically adjusted) upper threshold and lower by an adaptive lower threshold.
[0136] The first section may be the entire first TSCI. The second section may be the entire second TSCI. The first time duration may be equal to the second time duration. The time duration sections of a TSCI may be determined adaptively (and / or dynamically). A provisional section of the TSCI may be calculated. A start time and an end time of a section (e.g., provisional section, section) may be determined. A section may be determined by removing the start and end portions of the provisional section. The start portion of the provisional section may be determined as follows: Iteratively, items in the provisional section with increasing timestamps may be considered as the current item, one item at a time.
[0137] At each iteration, at least one activity measure / index may be calculated and / or considered. The at least one activity measure may be associated with at least one of the following: a current item associated with the current timestamp, a past item in the provisional section with a timestamp not greater than the current timestamp, and / or a future item in the provisional section with a timestamp not less than the current timestamp. If at least one criterion (e.g., quality criterion, signal quality condition) associated with the at least one activity measure is met, the current item may be added to the beginning of the provisional section.
[0138] The at least one criterion associated with the activity measure may include at least one of the following: (a) the activity measure is less than an adaptive (dynamically adjusted) upper threshold, (b) the activity measure is greater than an adaptive lower threshold, (c) the activity measure is less than an adaptive upper threshold consecutively for at least a predetermined amount of consecutive timestamps, (d) the activity measure is greater than an adaptive lower threshold consecutively for at least another predetermined amount of consecutive timestamps, (e) the activity measure is less than an adaptive upper threshold consecutively for at least a predetermined percentage of a predetermined amount of consecutive timestamps, (f) the activity measure is greater than an adaptive lower threshold consecutively for at least another predetermined percentage of another predetermined amount of consecutive timestamps, (g) another activity measure associated with another timestamp related to the current timestamp is less than another adaptive upper threshold and greater than another adaptive lower threshold, or (h) at least one activity measure associated with at least one respective timestamp related to the current timestamp is less than a respective upper threshold and greater than a respective lower threshold. (i) the percentage of timestamps associated with the activity measures in a set of timestamps associated with the current timestamp that are less than their respective upper thresholds and greater than their respective lower thresholds exceeds a threshold; and (j) another criterion (e.g., quality criterion, signal quality condition).
[0139] The activity measure / index associated with the item at time T1 may include at least one of the following: (1) a first function of the item at time T1 and the item at time T1-D1, where D1 is a predetermined positive quantity (e.g., a fixed time offset); (2) a second function of the item at time T1 and the item at time T1+D1; (3) a third function of the item at time T1 and the item at time T2, where T2 is a predetermined quantity (e.g., a fixed initial reference time; T2 may change (e.g., adjust, vary, modify) over time; T2 may be updated periodically; T2 may be the start of a period and T1 may be a sliding time in the period); and (4) a fourth function of the item at time T1 and other items.
[0140] At least one of the first function, the second function, the third function, and / or the fourth function may be a function (e.g., F(X, Y, ...)) with at least two arguments X and Y. The two arguments may be scalars. The function (e.g., F) may be at least one of X, Y, (XY), (YX), abs(XY), X^a, Y^b, abs(X^aY^b), (XY)^a, (X / Y), (X+a) / (Y+b), (X^a / Y^b), and ((X / Y)^ab), where a and b may be certain predetermined quantities. For example, the function may be simply abs(XY), or (XY)^2, (XY)^4. The function may be a robust function. For example, the function is (XY)^2 when abs(XY) is less than a threshold T, and (XY)+a when abs(XY) is greater than T. Alternatively, the function may be a constant when abs(XY) is greater than T. Also, when abs(Xy) is greater than T, the function may be bounded by a slowly increasing function so that outliers cannot significantly affect the results. Another example of this function may be (abs(X / Y)-a) (where a=1). In this way, when X=Y (i.e., no change or activity), the function yields a value of 0. When X is greater than Y, (X / Y) is greater than 1 (assuming X and Y are positive), and the function is positive. When X is less than Y, (X / Y) is less than 1, and the function is negative. In another example, both arguments X and Y may be n-tuples, with X = (x_1, x_2, ..., x_n) and Y = (y_1, y_2, ..., y_n). The function may be at least one of x_i, y_i, (x_i - y_i), (y_ix_i), abs(x_i - y_i), x_i^a, y_i^b, abs(x_i^a - y_i^b), (x_i - y_i)^a, (x_i / y_i), (x_i + a) / (y_i + b), (x_i^a / y_i^b), and ((x_i / y_i)^ab), where i is a component index of the n-tuples X and Y, and 1 <= i <= n.For example, the component index of x_1 is i = 1, the component index of x_2 is i = 2, etc. The function can include a sum of another function per component of at least one of x_i, y_i, (x_i-y_i), (y_ix_i), abs(x_i-y_i), x_i^a, y_i^b, abs(x_i^a-y_i^b), (x_i-y_i)^a, (x_i / y_i), (x_i+a) / (y_i +b), (x_i^a / y_i^b), and ((x_i / y_i)^ab), where i is a component index of the n-tuples X and Y. For example, this function could be of the form sum_{i=1}^n(abs(x_i / y_i)-1) / n, or sum_{i=1}^nw_i*(abs(x_i / y_i)-1), where w_i is the weight of component i.
[0141] The map may be computed using dynamic time warping (DTW). The DTW may include constraints on at least one of the map, the items of the first TSCI, the items of the second TSCI, the first duration, the second duration, the first section, and / or the second section. Suppose the i^{th} domain item is mapped to the j^{th} range item in the map. The constraints may be on the allowable combinations of i and j (constraints on the relationship between i and j). A mismatch cost between the first section of the first duration of the first TSCI and the second section of the second duration of the second TSCI may be computed.
[0142] The first section and the second section may be aligned such that a map including a plurality of links may be established between a first item of the first TSCI and a second item of the second TSCI. Each link may associate one of the first items with a first timestamp and one of the second items with a second timestamp. A mismatch cost between the aligned first section and the aligned second section may be calculated. The mismatch cost may include a function of a cost for an item between the first item and the second item associated by a particular link of the map and a link-wise cost for a link associated with the particular link of the map.
[0143] The aligned first section and the aligned second section may be represented as a first vector and a second vector, respectively, of the same vector length. The mismatch cost may include at least one of a dot product, a dot product-like measure, a correlation-based measure, a correlation indicator, a covariance-based measure, a discrimination score, a distance, a Euclidean distance, an absolute distance, an Lk distance (e.g., L1, L2,...), a weighted distance, a distance-like measure, and / or another similarity value between the first vector and the second vector. The mismatch cost may be normalized by the respective vector lengths.
[0144] A parameter derived from the mismatch cost between a first section of a first duration of a first TSCI and a second section of a second duration of a second TSCI can be modeled with a statistical distribution, and at least one of a scale parameter, a location parameter, and / or another parameter of the statistical distribution can be estimated.
[0145] The first section of the first duration of the first TSCI may be a sliding section of the first TSCI, and the second section of the second duration of the second TSCI may be a sliding section of the second TSCI.
[0146] A first sliding window may be applied to a first TSCI, and a corresponding second sliding window may be applied to a second TSCI, and the first sliding window of the first TSCI and the corresponding second sliding window of the second TSCI may be aligned.
[0147] A mismatch cost between the aligned first sliding window of the first TSCI and the corresponding aligned second sliding window of the second TSCI can be calculated, and the current event may be associated with at least one of a known event, an unknown event, and / or another event based on the mismatch cost.
[0148] The classifier may be applied to at least one of each first section of a first duration of the first TSCI and / or each second section of a second duration of the second TSCI to obtain at least one provisional classification result, each provisional classification result being associated with a respective first section and a respective second section.
[0149] The current event can be associated with at least one of a known event, an unknown event, a class / category / group / grouping / list / set of unknown events, and / or another event based on the mismatch cost. The current event can be associated with at least one of a known event, an unknown event, and / or another event based on the most numerous provisional classification results in the multiple sections of the first TSCI and the multiple sections of the corresponding second TSCI. For example, if the mismatch cost points to a specific known event for N consecutive times (e.g., N=10), the current event can be associated with the specific known event. In another example, the current event can be associated with the specific known event if the percentage of mismatch costs within the immediately preceding N consecutive times that point to the specific known event exceeds a predetermined threshold (e.g., >80%).
[0150] In another example, the current event may be associated with a known event that achieves the smallest mismatch cost the most times in time. The current event may be associated with a known event that achieves the smallest overall mismatch cost, which is a weighted average of at least one mismatch cost associated with at least one first section. The current event may be associated with a particular known event that achieves another minimum overall cost. The current event may be associated with an "unknown event" if none of the known events achieves a mismatch cost below a first threshold T1 in a sufficient percentage of at least one first section. The current event may also be associated with an "unknown event" if none of the known events achieves an overall mismatch cost below a second threshold T2. The current event may be associated with at least one of a known event, an unknown event, and / or another event based on the mismatch cost and additional mismatch cost associated with at least one additional section of the first TSCI and at least one additional section of the second TSCI. The known events may include at least one of a door closed event, a door open event, a window closed event, a window open event, a multi-state event, an on state event, an off state event, an intermediate state event, a continuous state event, a discrete state event, a person present event, a person absent event, a life present event, and / or a life absent event.
[0151] A projection for each CI may be trained using a dimensionality reduction method based on the training TSCI. The dimensionality reduction method may include at least one of principal component analysis (PCA), PCA with different kernels, independent component analysis (ICA), Fisher's linear discriminant, vector quantization, supervised learning, unsupervised learning, self-organizing maps, autoencoders, neural networks, deep neural networks, and / or another method. The projection may be applied to at least one of the training TSCI associated with at least one event and / or the current TSCI for the classifier.
[0152] A classifier for at least one event may be trained based on a projection associated with the at least one event and associated training TSCI. At least one current TSCI may be classified / categorized based on the projection and the current TSCI. The projection may be retrained using at least one of a dimensionality reduction method and another dimensionality reduction method based on at least one of the training TSCI, the at least one current TSCI before retraining the projection, and / or additional training TSCI. The other dimensionality reduction methods may include at least one of principal component analysis (PCA), PCA with different kernels, independent component analysis (ICA), Fisher's linear discriminant, vector quantization, supervised learning, unsupervised learning, self-organizing maps, autoencoders, neural networks, deep neural networks, and / or yet another method. A classifier for at least one event may be retrained based on at least one of the retrained projection, the training TSCI associated with the at least one event, and / or the at least one current TSCI. At least one current TSCI may be classified based on the retrained projections, the retrained classifier, and / or the current TSCI.
[0153] Each CI may include a vector of complex values. Each complex value may be preprocessed to provide a magnitude of the complex value. Each CI may be preprocessed to provide a vector of non-negative real numbers containing the magnitude of the corresponding complex value. Each training TSCI may be weighted in training the projection. The projection may include multiple projection components. The projection may include at least one most significant projection component. The projection may include at least one projected component that may be useful to the classifier.
[0154] Channel / Channel information / Venue / Spatia-temporal information / Motion / Object
[0155] Channel information (CI) may include signal strength, signal amplitude, signal phase, spectral power measures, modem parameters (e.g., used in connection with modulation / demodulation in digital communication systems such as WiFi, 4G / LTE, etc.), dynamic beamforming information (including feedback or steering matrices generated by wireless communication devices according to standardization processes such as IEEE 802.11 or other standards), transfer function components, radio conditions (e.g., used in digital communication systems to decode digital data, baseband processing conditions, RF processing conditions, etc.), measurable variables, sensing data, coarse-grained / fine-grained information for layers (e.g., physical layer, data link layer, MAC layer, etc.), digital settings, gain settings, RF filter settings, RF front-end switch settings, DC offset settings, DC correction settings, IQ correction settings, effects of the environment (e.g., location) on the radio signal during propagation, input signal (radio signal transmitted by a Type 1 device) and output signal (radio signal transmitted by a Type 2 device) The CI may be associated with or include a transformation of a CI into a wireless signal (e.g., wireless signal received by the wireless communication device), steady state behavior of the environment, a condition profile, wireless channel measurements, a received signal strength indicator (RSSI), channel state information (CSI), beamforming dynamic information (including feedback or steering matrices generated by the wireless communication device according to a standardization process such as IEEE 802.11 or other standards), a channel impulse response (CIR), a channel frequency response (CFR), characteristics of frequency components (e.g., subcarriers) in a bandwidth, channel characteristics, a channel response, a timestamp, aiding information, data, metadata, user data, account data, access data, security data, session data, status data, supervisory data, home data, identification (ID), identifier, device data, network data, proximity data, environmental data, real-time data, sensor data, stored data, encrypted data, compressed data, protected data, and / or other channel information. Each CI may be associated with a timestamp and / or a time of arrival.The CSI is used to equalize / restore / minimize / reduce the effects of a multipath channel (transmission channel) and demodulate a signal similar to that transmitted by a transmitter through the multipath channel. The CI may be associated with information related to the frequency band, frequency signature, frequency phase, frequency amplitude, frequency trend, frequency characteristics, frequency-like characteristics, time domain elements, frequency domain elements, time-frequency domain elements, orthogonal decomposition characteristics, and / or non-orthogonal decomposition characteristics of the signal passing through the channel. The TSCI may be a stream of wireless signals (e.g., CI).
[0156] The CI may be pre-processed, processed, post-processed, stored (e.g., in a local memory, portable / mobile memory, removable memory, storage network, cloud memory, in a volatile manner, in a non-volatile manner), retrieved, transmitted, and / or received. One or more modem parameters and / or radio condition parameters may be kept constant. The modem parameters may be applied to a radio subsystem. The modem parameters may represent radio conditions. A motion detection signal (e.g., a baseband signal and / or packets decoded / demodulated from the baseband signal, etc.) may be obtained by processing (e.g., downconverting) a first radio signal (e.g., an RF / WiFi / LTE / 5G signal) by the radio subsystem using the radio conditions represented by the stored modem parameters. The modem parameters / radio conditions may be updated (e.g., using previous modem parameters or previous radio conditions). Both the previous and updated modem parameters / radio conditions may be applied to a radio subsystem of a digital communication system. Both the previous and updated modem parameters / radio conditions may be compared / analyzed / processed / monitored in a task.
[0157] The channel information may also be modem parameters (e.g., stored or newly calculated) used to process the wireless signal. The wireless signal may include multiple probe signals. The same modem parameters can be used to process multiple probe signals. The same modem parameters can also be used to process multiple wireless signals. The modem parameters may include parameters indicating settings or overall configurations for operation of the radio subsystem or baseband subsystem (or both) of the wireless sensor device. The modem parameters may include one or more of gain settings, RF filter settings, RF front-end switch settings, DC offset settings, or IQ compensation settings for the radio subsystem, or digital DC correction settings, digital gain settings, and / or digital filtering settings (e.g., for the baseband subsystem). CI may also relate to information related to time, time signature, timestamp, time amplitude, time phase, time trend, and / or time characteristics of a signal. CI may be associated with information related to the time-frequency division, signature, amplitude, phase, trend, and / or characteristics of a signal. CI may relate to signal decomposition. A CI may relate to information related to direction, angle of arrival (AoA), angle of a directional antenna, and / or phase of a signal passing through a channel. A CI may relate to the attenuation pattern of a signal passing through a channel. Each CI may be associated with a Type 1 device and a Type 2 device. Each CI may be associated with an antenna of a Type 1 device and an antenna of a Type 2 device.
[0158] The CI can be obtained from communication hardware (e.g., a Type 2 device or a Type 1 device) capable of providing the CI. The communication hardware can be a WiFi-enabled chip / IC (integrated circuit), a chip compliant with 802.11 or 802.16 or other wireless / wireless standards, a next-generation WiFi-enabled chip, an LTE-enabled chip, a 5G-enabled chip, a 6G / 7G / 8G-enabled chip, a Bluetooth-enabled chip, an NFC (near field communication)-enabled chip, a BLE (Bluetooth low energy)-enabled chip, a UWB chip, or other communication chips (e.g., Zigbee, WiMax, mesh networks). The communication hardware calculates the CI and stores the CI in a buffer memory so that the CI is available for extraction. The CI can include data related to channel state information (CSI) and / or at least one matrix. The at least one matrix can be used for channel equalization, beamforming, etc. The channel can be associated with a location. Attenuation can be due to signal propagation at the location, signal propagation through / at / near the air (e.g., the air at the location), reflection, refraction, diffraction, refractive media / reflective surfaces such as walls, doors, furniture, obstacles, and / or barriers, etc. Attenuation can be due to reflections off surfaces and obstacles (e.g., reflective surfaces, obstacles) such as floors, ceilings, furniture, fixtures, objects, people, pets, etc. Each CI can be associated with a timestamp. Each CI can include N components (e.g., N frequency-domain components in CFR, N time-domain components in CIR, or N decomposed components). Each component can be associated with a component index. Each component can be a real, imaginary, or complex quantity, magnitude, phase, flag, and / or set. Each CI can include a vector or matrix of complex numbers, a set of mixed quantities, and / or a multidimensional collection of at least one complex number.
[0159] Components of the TSCI associated with a particular component index may form respective component time series associated with the respective index. The TSCI may be divided into N component time series. Each individual component time series is associated with a respective component index. Object motion characteristics / STI may be monitored based on the component time series. In one example, one or more ranges of CI components (e.g., one range from component 11 to component 23, a second range from component 44 to component 50, and a third range having only one component) may be selected based on a criterion / cost function / signal quality metric (e.g., based on signal-to-noise ratio and / or interference level) for further processing.
[0160] Component-wise characteristics of the TSCI component-feature time series may be calculated. The component-wise characteristics may be scalars (e.g., energy) or functions with domains and ranges (e.g., autocorrelation functions, transforms, inverse transforms). Object motion characteristics / STIs may be monitored based on the component-wise characteristics. Overall characteristics (e.g., aggregate characteristics) of the TSCI may be calculated based on the component-wise characteristics of each TSCI component time series. The overall characteristics may be a weighted average of the component-wise characteristics. Object motion characteristics / STIs may be monitored based on the overall characteristics. The total amount may be a weighted average of the individual amounts.
[0161] Type 1 devices and Type 2 devices may support WiFi, WiMax, 3G / 3G Beyond, 4G / 4G Beyond, LTE, LTE-A, 5G, 6G, 7G, Bluetooth, NFC, BLE, Zigbee, UWB, UMTS, 3GPP, GSM, EDGE, TDMA, FDMA, CDMA, WCDMA, TD-SCDMA, mesh networks, proprietary wireless systems, IEEE 802.11 standards, 802.15 standards, 802.16 standards, 3GPP standards, and / or other wireless systems.
[0162] A common wireless system and / or a common wireless channel may be shared by a Type 1 transceiver and / or at least one Type 2 transceiver. The at least one Type 2 transceiver may transmit respective signals simultaneously (or: asynchronously, synchronously, sporadically, continuously, repeatedly, in parallel, simultaneously, and / or at one time) using the common wireless system and / or the common wireless channel. The Type 1 transceiver may transmit signals to the at least one Type 2 transceiver using the common wireless system and / or the common wireless channel.
[0163] Each Type 1 device and Type 2 device may have at least one transmit and receive antenna. Each CI may be associated with one of the transmit antennas of the Type 1 device and one of the receive antennas of the Type 2 device. Each pair of transmit and receive antennas may be associated with a link, path, communication path, signal hardware path, etc. For example, if the Type 1 device has M (e.g., 3) transmit antennas and the Type 2 device has N (e.g., 2) receive antennas, there may be M×N (e.g., 3×2=6) links or paths. Each link or path may be associated with a TSCI.
[0164] At least one TSCI may correspond to various antenna pairs between a Type 1 device and a Type 2 device. The Type 1 device may have at least one antenna. The Type 2 device may also have at least one antenna. Each TSCI may be associated with an antenna of the Type 1 device and an antenna of the Type 2 device. Averaging or weighted averaging across antenna links may be performed. The averaging or weighted averaging may be across at least one TSCI. The averaging may optionally be performed over a subset of the at least one TSCI corresponding to a subset of the antenna pairs.
[0165] The timestamps of some CIs of a TSCI may be irregular and may be corrected so that the corrected timestamps of the time-corrected CIs are evenly spaced in time. In the case of multiple Type 1 devices and / or multiple Type 2 devices, the corrected timestamps may be related to the same clock or different clocks. An original timestamp associated with each of the CIs may be determined. The original timestamps may not be evenly spaced in time. The original timestamps of all CIs of a particular portion of a particular TSCI in the current sliding time window may be corrected so that the corrected timestamps of the time-corrected CIs are evenly spaced in time.
[0166] Characteristics and / or STI (e.g., motion information) may include location, location coordinates, change in location, location (e.g., initial location, new location), location on map, height, horizontal position, vertical position, distance, displacement, speed, acceleration, rotational speed, rotational acceleration, direction, movement angle, orientation, direction of movement, rotation, path, deformation, translation, contraction, extension, gait, gait cycle, head movement, repetitive movement, periodic movement, pseudo-periodic movement, impulse movement, sudden movement, falling movement, transient movement, behavior, transient behavior, movement cycle, movement frequency, time trend, temporal profile, temporal characteristics, occurrence, change, temporal change, change in CI, change in frequency, change in timing, change in gait cycle, timing, start time, start time, end time, duration, movement history, movement type, movement classification, frequency, frequency spectrum, frequency characteristics, presence, absence, proximity, proximity , retreat, object identification / identifier, object composition, head movement velocity, head movement direction, mouth-related rate, eye-related rate, breathing rate, heart rate, tidal volume, breathing depth, inhalation time, exhalation time, inhalation to sweep time ratio, airflow rate, heart rate interval, heart rate variability, hand movement rate, hand movement direction, leg movement, body movement, walking speed, hand movement velocity, position characteristics, object movement-related characteristics (e.g., change in position / location), tool movement, machine movement, compound movement, and / or combination of multiple movements, event, signal statistics, signal dynamics, anomaly, movement statistics, movement parameters, motion detection indication, motion magnitude, motion phase, similarity score, distance score, Euclidean distance, weighted distance, L_1 norm, L_2 norm, L_k norm for k>2, statistical distance, correlation, correlation indicator,Autocorrelation, covariance, autocovariance, cross-covariance, inner product, Cartesian product, motion signal transformation, motion features, motion presence, motion absence, motion localization, motion discrimination, motion recognition, object presence, object absence, object entrance, object exit, object change, movement cycle, movement count, gait cycle, movement rhythm, movement deformation, gesture, handwriting, head movement, mouth movement, cardiac movement, visceral movement, motion trend, size, length, area, volume, volume, shape, morphology, tag, start / start position, end position, start / start amount, end amount, event, fall event, security The information may include security events, accident events, home events, office events, factory events, warehouse events, manufacturing events, assembly line events, maintenance events, car-related events, navigation events, tracking events, door events, door open events, door close events, window events, window open events, window closed events, repeatable events, one-time events, consumption, non-consumption, status, physical status, health status, comfort status, emotional status, mental status, other events, analysis, output response, and / or other information. Characteristics and / or STIs may be calculated / monitored based on features calculated from the CI or TSCI (e.g., feature calculation / extraction). Static segments or profiles (and / or dynamic segments / profiles) may be identified / calculated / analyzed / monitored / extracted / acquired / marked / presented / indicated / highlighted / stored / communicated based on feature analysis. Analysis may include motion detection / motion assessment / presence detection. Computational workloads may be shared among Type 1 devices, Type 2 devices, and other processors.
[0167] The Type 1 device and / or the Type 2 device may be a local device, which may be a smartphone, a smart device, a TV, a sound bar, a set-top box, an access point, a router, a repeater, a wireless signal repeater / extender, a remote control, a speaker, a fan, a refrigerator, a microwave oven, a coffee machine, a hot water pot, an appliance, a table, a chair, a light, a lamp, a door lock, a camera, a microphone, a motion sensor, a security device, a fire hydrant, a garage door switch, a power adapter, a computer, a dongle, a computer peripheral, an electronic pad, a sofa, a tile, an accessory, a home device, a vehicle device, an office device, a building equipment, a manufacturing equipment, a watch, a glass, a clock, a television, an oven, an air conditioner, an accessory, a utility, an appliance, a smart machine, a smart vehicle, an Internet of Things (IoT), a smart house, a smart office, a smart building, a smart parking lot, a smart system, and other devices.
[0168] Each Type 1 device may be associated with a respective identifier (e.g., ID). Each Type 2 device may also be associated with a respective identification (ID). The ID may include numbers, a combination of text and numbers, a name, a password, an account, an account ID, a web link, a web address, an index to some information, and / or another ID. The ID may be assigned by hardware (e.g., hardwired, via a dongle, and / or other hardware), software, and / or firmware. The ID may be stored (e.g., in a database, in memory, in a server (e.g., a hub device), in the cloud, locally stored, remotely stored, permanently stored, or temporarily stored) and searchable. The ID may be associated with at least one record, account, user, household, address, phone number, social security number, customer number, another ID, another identifier, timestamp, and / or collection of data. The ID and / or a portion of the ID of the Type 1 device may be made available to the Type 2 device. The ID may be used by Type 1 devices and / or Type 2 devices for registration, initialization, communication, identification, verification, detection, recognition, authentication, access control, cloud access, networking, social networking, logging, recording, cataloging, classification, tagging, association, pairing, transactions, electronic transactions, and / or intellectual property control.
[0169] The object may be a person, user, subject, passenger, child, elderly, infant, sleeping infant, infant in a vehicle, patient, worker, high value worker, expert, medical specialist, waiter, customer in a mall, traveller at an airport / train station / bus terminal / shipping terminal, staff / laborer / customer service person in a factory / mall / supermarket / office / workplace, service person in a sewer / air ventilation system / lift well, lift in a lift well, elevator, inmate, person to be tracked / monitored, animal, plant, living thing, pet, dog, cat, smartphone, phone accessory, computer, tablet, portable computer, dongle, computer accessory equipment, network equipment, WiFi equipment, IoT device, smart watch, smart glasses, smart device, speaker, key, smart key, wallet, wallet, handbag, backpack, goods, cargo, luggage, equipment, motor, machine, air conditioner, fan, air conditioning equipment, lighting fixture, movable light, television, camera, audio and / or video equipment, It can be stationery, surveillance equipment, parts, signs, tools, carts, tickets, parking passes, passes, plane tickets, credit cards, plastic cards, access cards, food packaging, utensils, tables, chairs, cleaning equipment / tools, vehicles, automobiles, cars in parking facilities, goods in a warehouse / store / supermarket / distribution center, boats, bicycles, airplanes, drones, remote controlled cars / planes / boats, robots, manufacturing equipment, assembly lines, materials / unfinished parts / robots / trolleys / transports on a factory floor, tracked objects in an airport / shopping mart / supermarket, non-objects, absence of objects, presence of objects, objects with shape, objects changing shape, shapeless objects, mass of a fluid, mass of a liquid, mass of a gas / smoke, fire, flames, electromagnetic (EM) sources, EM media, and / or other objects.
[0170] The object itself may be communicatively coupled to several networks, such as WiFi, MiFi, 3G / 4G / LTE / 5G / 6G / 7G, Bluetooth, NFC, BLE, WiMax, Zigbee, UMTS, 3GPP, GSM, EDGE, TDMA, FDMA, CDMA, WCDMA, TD-SCDMA, mesh networks, ad-hoc networks, and / or other networks. The object itself may be AC-powered and bulky, and may be moved during installation, cleaning, maintenance, renovation, etc. The object may also be placed on a mobile platform, such as a lift, pad, mobile platform, elevator, conveyor belt, robot, drone, forklift, car, boat, or vehicle. The object may have multiple parts, each with a different motion (e.g., change of location / position). For example, the object may be a person walking in front. While walking, his left and right hands may move in different directions with different instantaneous speeds, accelerations, and motions.
[0171] The wireless transmitter (e.g., a Type 1 device), the wireless receiver (e.g., a Type 2 device), another wireless transmitter, and / or another wireless receiver may travel with the object and / or another object (e.g., in a previous trip, a current trip, and / or a future trip). They may be communicatively coupled to one or more nearby devices. They may transmit TSCIs and / or information related to the TSCIs to nearby devices and / or to each other. They may be associated with nearby devices. The wireless transmitter and / or wireless receiver may be part of a small (e.g., coin-sized, cigarette-pack-sized, or even smaller) lightweight portable device. The portable device may be wirelessly coupled to the nearby device.
[0172] The nearby device may be a smartphone, an iPhone, an Android phone, a smart device, a smart appliance, a smart vehicle, a smart gadget, a smart TV, a smart refrigerator, a smart speaker, a smart watch, smart glasses, a smart pad, an iPad, a computer, a wearable computer, a notebook computer, a gateway. The nearby device may be connected to a cloud server, a local server (e.g., a hub device), and / or other servers via the Internet, a wired Internet connection, and / or a wireless Internet connection. The nearby device may be portable. The portable device, nearby devices, local server (e.g., hub device), and / or cloud server can share tasks (e.g., acquiring TSCI, determining object characteristics / STI related to object movement (e.g., position / change in position), calculating time series of power (e.g., signal strength) information, determining / calculating specific functions, searching for local extrema, classification, identifying specific values of offset time, denoising, processing, simplification, cleaning, wireless smart sensing tasks, extracting CIs from signals, switching, segmenting, estimating trajectory / path / track, processing maps, processing trajectory / path / track based on environmental models / constraints / limits, correction, correction adjustment, tuning, map-based (or model-based) correction, error detection, checking for boundary hits, thresholding) and calculation and / or storage of information (e.g., TSCI). Nearby devices may move / not move with the object. Nearby devices can be portable / non-portable / mobile / non-mobile. Nearby devices can use battery power, solar, AC power, and / or other power sources. The nearby device may have replaceable / non-replaceable and / or rechargeable / non-rechargeable batteries. The nearby device may resemble the object. The nearby device may have the same (and / or similar) hardware and / or software as the object.The nearby devices may be smart devices, network-enabled devices, devices with connections to WiFi / 3G / 4G / 5G / 6G / Zigbee / Bluetooth / NFC / UMTS / 3GPP / GSM / EDGE / TDMA / FDMA / CDMA / WCDMA / TD-SCDMA / ad hoc networks / other networks, smart speakers, smart watches, smart clocks, smart appliances, smart machines, smart appliances, smart tools, smart vehicles, Internet of Things (IoT) devices, Internet-enabled devices, computers, portable computers, tablets, and other devices. Nearby devices and / or at least one processor associated with a wireless receiver, a wireless transmitter, another wireless receiver, another wireless transmitter, and / or a cloud server (in the cloud) may determine an initial STI for an object. Two or more of them may jointly determine initial spatio-temporal information. Two or more of them may share intermediate information in determining the initial STI (e.g., initial location).
[0173] In one example, a wireless transmitter (e.g., a Type 1 device or a tracker bot) moves with an object. The wireless transmitter can send a signal to a wireless receiver (e.g., a Type 2 device or an Origin Register) or determine the object's initial STI (e.g., initial location). The wireless transmitter can also send a signal and / or another signal to another wireless receiver (e.g., another Type 2 device or another Origin Register) to monitor the object's movement (spatio-temporal information). The wireless receiver can also receive a signal and / or another signal from the wireless transmitter and / or another wireless transmitter to monitor the object's movement. The location of the wireless receiver and / or another wireless receiver can be known. In another example, a wireless receiver (e.g., a Type 2 device or a tracker bot) can move with the object. The wireless receiver can receive a signal transmitted from the wireless transmitter (e.g., a Type 1 device or an Origin Register) to determine the object's initial spatio-temporal information (e.g., initial location). The wireless receiver may also receive a signal and / or another signal from another wireless transmitter (e.g., another Type 1 device or another origin register) for monitoring the current movement (e.g., space-time information) of the object. The wireless transmitter may also transmit a signal and / or another signal to the wireless receiver and / or another wireless receiver (e.g., another Type 2 device or another tracker bot) for monitoring the movement of the object. The location of the wireless transmitter and / or another wireless transmitter may be known.
[0174] Locations include sensing areas, rooms, houses, offices, property, workspaces, corridors, lifts, lift wells, escalators, elevators, sewers, ventilation systems, stairs, assembly areas, ducts, air ducts, pipes, enclosed spaces, enclosed structures, semi-enclosed structures, enclosed areas with at least one wall, plants, machines, engines, structures, structures with wood, structures with glass, structures with metal, structures with walls, structures with doors, structures with gaps, structures with reflective surfaces, structures with liquids, buildings, rooftops, stores, factories, assembly lines, homes, etc. Hotel rooms, museums, classrooms, schools, universities, government buildings, warehouses, garages, malls, airports, train stations, bus terminals, hubs, transportation hubs, cargo terminals, government buildings, public facilities, schools, universities, entertainment venues, recreational facilities, hospitals, pediatric / neonatal wards, nursing homes, elderly care facilities, community centers, stadiums, playgrounds, fields, basketball courts, tennis courts, soccer stadiums, baseball fields, gymnasiums, garages, shopping marts, knolls, supermarkets, manufacturing facilities, parking facilities Facilities, construction sites, mining facilities, transportation facilities, highways, roads, valleys, forests, trees, terrain, landscapes, caves, patios, land, roads, amusement parks, urban areas, rural areas, suburban areas, metropolitan areas, gardens, squares, plazas, music halls, downtown facilities, open facilities, semi-open facilities, closed areas, train platforms, train stations, distribution centers, warehouses, shops, distribution centers, storage facilities, underground spaces, spatial (e.g. above ground, space) facilities, floating facilities, caves, tunnel facilities, indoor facilities, outdoor facilities, outdoor facilities with some walls / doors / reflective barriers Areas such as facilities, open facilities, semi-open facilities, automobiles, trucks, buses, vans, containers, ships / boats, submarines, trains, trams, airplanes, vehicles, mobile platforms, caves, tunnels, pipes, channels, metropolitan areas, downtown areas with relatively tall buildings, valleys, wells, ducts, pathways, gas lines, oil pipes, water pipes, interconnecting pathways / arrays / roads / tubes / cavities / caves / pipe-like structures / voids / fluid spaces, human bodies, animal bodies, body cavities, organs, bones, teeth, soft tissue, hard tissue, rigid tissue, non-hard tissue, blood / body fluid ducts, wind ducts, air ducts, burrows, etc. The location may be an indoor space, an outdoor space, and the location may include both inside and outside spaces.For example, a location can include both inside and outside a building. For example, a location can be a building with one or more floors, and part of the building can be underground. The shape of the building can be, for example, round, square, rectangular, triangular, or irregular. These are merely examples. The present disclosure can be used to detect events in other types of locations or spaces.
[0175] The wireless transmitter (e.g., a Type 1 device) and / or wireless receiver (e.g., a Type 2 device) may be embedded in a portable device (e.g., a module or a device having a module) that may travel with the object (e.g., in a previous travel and / or a current travel). The portable device may be communicatively coupled to the object using a wired connection (e.g., via USB, micro USB, Firewire, HDMI, serial port, parallel port, and other connectors) and / or a connection (e.g., Bluetooth, Bluetooth Low Energy (BLE), WiFi, LTE, NFC, ZigBee). The portable device may be a lightweight device. The portable device may be powered by batteries, rechargeable batteries, and / or AC power. The portable device may be very small (e.g., on the sub-millimeter and / or sub-centimeter scale) and / or small (e.g., coin-sized, card-sized, pocket-sized, or larger). The portable device may be large, bulky, and / or heavy installed machinery. Portable devices include WiFi hotspots, access points, Mobile WiFi (MiFi), dongles with USB / micro USB / Firewire / other connectors, smartphones, portable computers, computers, tablets, smart devices, Internet of Things (IoT) devices, WiFi enabled devices, LTE enabled devices, smart watches, smart glass, smart mirrors, smart antennas, smart batteries, smart lights, smart pens, smart rings, smart doors, smart windows, smart clocks, smart batteries, smart wallets, smart belts, smart handbags, smart cloth / garments, smart ornaments, smart packaging, smart paper / books / magazines / posters / printed materials / signage / displays / illuminated systems / lighting systems, smart keys / tools, smart bracelets / chains / necklaces / clothes / accessories, smart pads / cushions, smart tiles / blocks / bricks / building materials / other materials,Smart trash can / waste container, smart food carriage / storage, smart ball / racket, smart chair / sofa / bed, smart shoes / footwear / carpet / mat / shoe rack, smart gloves / handwear / ring / handwear, smart hat / cap / cosmetics / sticker / tattoo, smart mirror, smart toy, smart pill, smart cookware, smart bottle / food container, smart tool, smart device, IoT device, WiFi enabled device, network enabled device, 3G / 4G / 5G / 6G enabled device, UMTS device, 3GPP device, GSM device, EDGE device, TDMA device, FDMA device, CDMA device, WCDMA device, TD-SCDMA device, embedded device, embeddable device, air conditioner, refrigerator, heater, furnace, furniture, oven, cooking device , TV / Set Top Box (STB) / DVD Player / Audio Player / Video Player / Remote Control, Hi-Fi, Audio Device, Speaker, Lamp / Light, Wall, Door, Window, Roof, Tile / Roofing Shingle / Structure / Attic Structure / Device / Feature / Installation / Fixture, Lawn Mower / Garden Equipment / Tools / Machine Tools / Garage Tools, Garbage Can / Container, 20ft / 40ft Container, Storage Container, Factory / Production / Manufacturing Equipment, Repair Tool, Fluid Container, Machine, Installed Machine, Vehicle, Cart, Wagon, Warehouse Vehicle, Automobile, Bicycle, Motorcycle, Boat, Watercraft, Airplane, Basket / Box / Bag / Bucket / Container, Smart Plate / Cup / Bowl / Pot / Mat / Utensil / Kitchenware / Kitchen Accessories / Cabinet / Table / Chair / Tile / Light / Water Pipe / Faucet / Gas Range / Oven / Dishwasher / , etc. Portable devices may have batteries that may be replaceable, non-replaceable, rechargeable, and / or non-rechargeable. Portable devices may be charged wirelessly. The portable device may be a smart payment card. The portable device may be a payment card used in parking lots, highways, entertainment parks, or other locations / facilities requiring payment. The portable device may have an identity (ID) / identifier, as described above.
[0176] Events can be monitored based on the TSCI. Events can be object-related events such as an object (e.g., a person and / or a patient) falling, rolling, hesitating, resting, impact (e.g., a person hitting a punching bag, door, window, bed, chair, table, desk, cabinet, box, another person, animal, bird, flying, table, chair, ball, bowling ball, tennis ball, football, soccer ball, baseball, basketball, volleyball), two-body action (e.g., leaving a balloon, catching a fish, molding clay, writing a paper, person typing into a computer), moving a car in a garage, a person carrying a smartphone and walking around an airport / mall / government office / office / etc, autonomous mobile objects / machines moving around (e.g., vacuum cleaner, utility vehicle, car, drone, self-driving car), etc.
[0177] The tasks or wireless smart sensing tasks are object detection, presence detection, proximity detection, object recognition, activity recognition, object verification, object counting, daily activity monitoring, health monitor, vital signs monitoring, health condition monitoring, baby monitoring, elderly monitoring, sleep monitoring, sleep stage monitoring, gait monitoring, motion monitoring, tool detection, tool recognition, tool verification, patient detection, patient monitoring, patient verification, machine detection, machine verification, human detection, human recognition, human verification, baby detection, baby recognition, baby verification, human breathing detection, human breathing recognition, human breathing estimation, human breathing verification, human heart rate detection, human heart rate recognition, human heart rate estimation, human heart rate verification, fall detection, fall recognition, fall estimation, fall verification, emotion detection, emotion recognition, emotion estimation, emotion verification, motion detection, motion degree estimation, Motion recognition, motion estimation, motion verification, cyclic motion detection, cyclic motion estimation, cyclic motion verification, repetitive motion detection, cyclic motion recognition, repetitive motion estimation, repetitive motion verification, static motion recognition, static motion detection, static motion estimation, static motion verification, cyclostationary motion detection, cyclostationary motion recognition, cyclostationary motion estimation, cyclostationary motion verification, transient motion detection, transient motion recognition, transient motion estimation, transient motion verification, trend detection, trend recognition, trend estimation, trend verification, breathing detection, breathing recognition, breathing estimation, human biometric detection, human biometric recognition, human biometric estimation, human biometric verification, environmental informatics detection, environmental informatics recognition, environmental informatics estimation, environmental informatics verification, gait detection, gait recognition, gait estimation, gait verification, gesture detection, gesture recognition, gesture estimation, gesture verification, machine learning, supervised learning, unsupervised learning, semi-supervised learning, clustering, feature extraction, feature training, principal component analysis, eigenvalue decomposition, frequency decomposition, time decomposition,Time-Frequency Decomposition, Function Decomposition, Other Decompositions, Training, Discriminative Training, Supervised Training, Unsupervised Training, Semi-Supervised Training, Neural Networks, Sudden Motion Detection, Fall Detection, Hazard Detection, Life-Threat Detection, Regular Motion Detection, Stationary Motion Detection, Cyclostationary Motion Detection, Intrusion Detection, Suspicious Motion Detection, Security, Safety Monitoring, Navigation, Guidance, Map-Based Processing, Map-Based Correction, Model-Based Processing / Correction, Irregularity Detection, Localization, Room Sensing, Tracking, Multiple Object Tracking, Indoor Tracking, Indoor Positioning, Indoor Navigation, Energy Management, Power Transfer, Wireless Power Transfer, Object Counting, Car Tracking in Parking Garages, Device / System Activation (e.g., Security Systems, Access Systems, Alarms, Sirens, Speakers, Televisions, Entertainment Systems, Cameras, Heating / Air Conditioning (HVAC) Systems, Ventilation Systems, Lighting Systems, Gaming Systems, Coffee Machines, Cooking Appliances, Cleaning Equipment, Housekeeping Equipment), Geometric Estimation , augmented reality, wireless communication, data communication, signal broadcasting, networking, coordination, management, encryption, protection, cloud computing, other processing, and / or other tasks, which may be performed by a Type 1 device, a Type 2 device, another Type 1 device, another Type 2 device, a nearby device, a local server (such as a hub device), an edge server, a cloud server, and / or another device.This task can be based on TSCI between any pair of Type 1 and Type 2 devices. A Type 2 device can also be a Type 1 device, and vice versa. A Type 2 device can fulfill the role (e.g., functionality) of a Type 1 device temporarily, continuously, sporadically, simultaneously, and / or concurrently, and / or vice versa. The first portion of tasks may include at least one of pre-processing, processing, signal conditioning, signal processing, post-processing, sporadic / continuous / concurrent / simultaneous / dynamic / adaptive / on-demand / as needed processing, calibration, noise removal, feature extraction, coding, encryption, transformation, mapping, motion detection, motion estimation, motion change detection, motion pattern detection, motion pattern estimation, motion pattern recognition, vital sign detection, vital sign estimation, vital sign recognition, periodic motion detection, periodic motion estimation, repetitive motion detection / estimation, breathing rate detection, breathing rate estimation, breathing pattern detection, breathing pattern estimation, breathing pattern recognition, heart rate detection, heart rate estimation, cardiac pattern detection, cardiac pattern estimation, cardiac pattern recognition, gesture detection, gesture estimation, gesture recognition, velocity detection, velocity estimation, object location, object tracking, navigation, acceleration estimation, acceleration detection, fall detection, change detection, intruder (and / or tampering) detection, baby detection, baby monitoring, patient monitoring, object recognition, wireless power transfer, and / or wireless charging.
[0178] The second part of the task may be a smart home task, a smart office task, a smart building task, a smart factory task (e.g., manufacturing with a machine or assembly line), a smart Internet of Things (IoT) task, a smart system task, a smart home operation, a smart office operation, a smart building operation, a smart manufacturing operation (e.g., movement of supplies / parts / raw materials to a machine / assembly line), an IoT operation, a smart system operation, turning on lights, turning off lights, controlling light in at least one of a room, area, and / or location, playing a sound clip, playing a sound clip in at least one of a room, area, and / or location, playing at least one sound clip of welcome, greeting, farewell, a first message, and / or a second message related to the first part of the task, turning on an appliance, turning off an appliance, The control may include at least one of controlling appliances in at least one of the rooms, areas, and / or locations; turning on an electrical system; turning off an electrical system; controlling an electrical system in at least one of the rooms, areas, and / or locations; turning on a security system; turning off a security system; controlling a security system in at least one of the rooms, areas, and / or locations; turning on a mechanical system; turning off a mechanical system; controlling a mechanical system in at least one of the rooms, areas, and / or locations; and / or controlling at least one of an air conditioning system, a heating system, a ventilation system, a lighting system, a heater, a stove, an entertainment system, a door, a fence, a window, a garage, a computer system, a networked device, a networked system, a home appliance, an office appliance, a lighting device, a robot (e.g., a robotic arm), a smart vehicle, a smart machine, an assembly line, a smart device, an Internet of Things (IoT) device, a smart home device, and / or a smart office device.
[0179] The tasks are to detect when the user comes home, detect when the user leaves, detect when the user moves from one room to another, detect when a window / door / garage door / blinds / curtains / panels / solar panels / sunshades are controlled / locked / unlocked / opened / closed / partially opened, detect pets, detect / monitor when the user is doing something (e.g. sleeping on the sofa, sleeping in the bedroom, running on the treadmill, cooking, sitting on the sofa, watching TV, eating in the kitchen, eating in the dining room, going up and down stairs, going out / coming back, in the bathroom), monitor / detect the location of the user / pet and do something automatically when detected (e.g. sending a message, notifying / reporting), do something to the user when a user is detected, turn on / off / dim the lights, turn on / off the music / radio / home entertainment system, turn on / off the TV / may include turning on / off / adjusting / controlling hi-fi / set-top box (STB) / home entertainment system / smart speaker / smart device, turning on / off / adjusting air conditioning system, turning on / off / adjusting ventilation system, turning on / off / adjusting heating system, adjusting / controlling curtains / light shades, turning on / off / starting computer, turning on / off / preheating / controlling coffee machine / hot water kettle, turning on / off / preheating / controlling cooker / oven / microwave / other cooking appliance, checking / adjusting temperature, checking weather forecast, checking phone message box, checking email, checking system, controlling / adjusting system, checking / controlling / arming / disarming security system / baby monitor, checking / controlling refrigerator, reporting (e.g. through speaker such as Google Home, Amazon Echo, via web page / email / messaging system / notification system).
[0180] For example, if a user arrives at home in their vehicle, the tasks may automatically detect that the user or their vehicle is approaching, open the garage door upon detection, turn on the driveway / garage lights as the user approaches the garage, turn on the air conditioner / heater / fan, etc. As the user enters the house, the tasks may automatically turn on the entrance lights, turn off the driveway / garage lights, play a greeting message to welcome the user, turn on music, turn on the radio and tune it to the user's favorite radio news channel, open the curtains / blinds, monitor the user's mood, adjust the lighting and sound environment according to the user's mood or current / impending events on the user's daily calendar (e.g., romantic lighting and music because the user is going to have dinner with his / her girlfriend in an hour), microwave the food the user prepared that morning, perform a diagnostic check of all systems in the house, check the weather forecast for tomorrow's tasks, check news of interest to the user, and update the user's calendar, to-do list, etc. Check reminders, check phone answering systems, messaging systems, email, communicate verbal reports using dialogue systems / speech synthesis, remind the user of their mother's birthday (e.g., using audible tools such as speakers, hi-fi, speech synthesis, sound, voice, music, song, sound field, background sound field, dialogue system, etc.; using visual tools such as TV / entertainment system / computer / notebook / smartpad / display / light / color / brightness / pattern, using tactile tools / virtual reality tools / gestures / tools, using smart devices / appliances / materials / furniture / fixtures, using web tools / servers / hub devices / cloud servers / fog servers / edge servers / home networks / mesh networks, using messaging tools / notification tools / communication tools / scheduling tools / email, using user interfaces / GUIs, using scents / smells / aromas / tastes, using neural tools / neural system tools, or a combination), generate reports, provide reports (e.g., using reminding tools as described above).A task may be to proactively start an air conditioner / heater / ventilation system or proactively adjust a smart thermostat temperature setting. When a user moves from the front door to the living room, the tasks may be to turn on the living room lights, open the living room curtains, open the windows, turn off the front door light behind the user, turn on the TV and set-top box, turn on the set-top box, set the TV to the user's preferred channel, adjust the appliances according to the user's preferences and conditions / states (e.g., adjust the lighting, select / play music to create a romantic atmosphere), etc.
[0181] Another example could be: When a user wakes up in the morning, the task could be to detect the user moving around in the bedroom, open the blinds / curtains, open the windows, turn off the alarm clock, adjust the room temperature profile from a night temperature profile to a day temperature profile, turn on the bedroom lights, turn on the toilet light as the user approaches the bathroom, check the radio or streaming channels, play the morning news, turn on the coffee machine, preheat water, turn off the security system, etc. When the user walks from the bedroom to the kitchen, the task could be to turn on the kitchen and hallway lights, turn off the bedroom and toilet lights, move music / messages / reminders from the bedroom to the kitchen, turn on the kitchen TV, change the TV to the morning news channel, lower the kitchen blinds, open the kitchen window to let in fresh air, unlock the back door so the user can check the back yard, adjust the kitchen temperature setting, etc. Another example could be: When the user leaves home for work, the tasks may be to detect the user's departure, say goodbye and / or have a nice day, open / close the garage door, turn on / off the garage and driveway lights, turn off / dim to save energy (only if the user fails), close / lock all windows / doors (only if the user fails), turn off appliances (especially the stove, oven, microwave), turn on / arm the home security system to protect the home against intruders, adjust the air conditioning / heating / ventilation system to an "away from home" profile to save energy, send alerts / reports / updates to the user's smartphone, etc.
[0182] The motions are classified as no motion, rest motion, motionless motion, motion, change of location / position, deterministic motion, transient motion, falling motion, repetitive motion, periodic motion, pseudo-periodic motion, periodic / repetitive motion related to breathing, periodic / repetitive motion related to heartbeat, periodic / repetitive motion related to living organisms, periodic / repetitive motion related to machines, periodic / repetitive motion related to man-made objects, periodic / repetitive motion related to nature, complex motion related to transient and periodic elements, repetitive motion, non-deterministic motion, stochastic motion, chaotic motion, random motion, complex motion with non-deterministic and deterministic elements, stationary random motion, pseudo-stationary random motion, cyclostationary random motion, non-stationary random motion, non-stationary random motion with a periodic autocorrelation function (ACF), random motion with a periodic ACF over time. motion, pseudo-stationary random motion over time, random motion where the instantaneous ACF has a pseudo-periodic / repetitive component over time, machine motion, mechanical motion, vehicle motion, drone motion, air-related motion, wind-related motion, weather-related motion, water-related motion, fluid-related motion, ground-related motion, change in magnetic properties, subsurface motion, earthquake motion, plant motion, animal motion, animal motion, human motion, normal motion, abnormal motion, dangerous motion, warning motion, suspicious motion, rain, fire, flood, tsunami, explosion, collision, imminent collision, human motion, head motion, face motion, eye motion, oral motion, tongue motion, neck motion, finger motion, hand motion, arm motion, shoulder motion, body motion, chest motion, abdominal motion, hip motion, leg motion, foot motion, body joint motion, knee motion, elbow motion, upper body motion, lower body motion, skin motion, subcutaneous motion, subcutaneous tissue motion. The motion may include at least one of blood vessel movement, venous movement, organ movement, heart movement, lung movement, stomach movement, intestinal movement, bowel movement, eating movement, breathing movement, facial expression, eye expression, mouth expression, vocal movement, singing movement, eating movement, gesture, hand gesture, arm gesture, keystroke, typing stroke, user interface gesture, man-machine interaction, gait, dance movement, coordinated movement, and / or coordinated body movement.
[0183] The heterogeneous ICs of the Type 1 device and / or any Type 2 receiver may include a low noise amplifier (LNA), a power amplifier, a transmit-receive switch, a media access controller, a baseband radio, a 2.4 GHz radio, a 3.65 GHz radio, a 4.9 GHz radio, a 5 GHz radio, a 5.9 GHz radio, a sub-6 GHz radio, a 60 GHz radio, a sub-60 GHz radio, and / or another radio. The heterogeneous IC may include a processor, a memory communicatively coupled to the processor, and a set of instructions stored in the memory for execution by the processor. The IC and / or any processor may include at least one of a general purpose processor, a special purpose processor, a microprocessor, a multiprocessor, a multi-core processor, a parallel processor, a CISC processor, a RISC processor, a microcontroller, a central processing unit (CPU), a graphical processor unit (GPU), a digital signal processor (DSP), an application specific integrated circuit (ASIC), a field programmable gate array (FPGA), an embedded processor (e.g., ARM), a logic circuit, another programmable logic device, discrete logic, and / or a combination. Heterogeneous ICs are used in broadband networks, wireless networks, mobile networks, mesh networks, cellular networks, wireless local area networks (WLANs), wide area networks (WANs), metropolitan area networks (MANs), WLAN standards, WiFi, LTE, LTE-A, LTE-U, 802.11 standards, 802.11a, 802.11b, 802.11g, 802.11n, 802.11ac, 802.11af, 802.11ah, 802.11ax, 802.11ay, mesh networking standards 802.16, 3G, 3.5G, 4G, Beyond 4G, 4.5G, 6G, 7G, 8G, 9G, UMTS, 3GPP, GSM, EDGE, TDMA, FDMA, CDMA, WCDMA, TD-SCDMA, Bluetooth, Bluetooth Low-Energy It may support Bluetooth Low Energy (BLE), NFC, Zigbee, WiMax, and other wireless network protocols.
[0184] The processor may include a general-purpose processor, a special-purpose processor, a microprocessor, a microcontroller, an embedded processor, a digital signal processor, a central processing unit, a graphical processing unit (GPU), a multiprocessor, a multi-core processor, and / or a processor with graphics capabilities, and / or a combination thereof. The memory may be volatile, non-volatile, random-access memory (RAM), read-only memory (ROM), programmable ROM (EPROM), electrically erasable programmable ROM (EEPROM), a hard disk, flash memory, CD-ROM, DVD-ROM, magnetic storage, optical storage, organic storage, a storage system, a storage network, network storage, cloud storage, edge storage, local storage, external storage, internal storage, or any other form of non-transitory storage medium known in the art. The set of instructions (machine-executable code) corresponding to the method steps may be directly embodied in hardware, software, firmware, or a combination thereof. The set of instructions may be embedded, pre-loaded, loaded at boot time, loaded on-the-fly, loaded on-demand, pre-installed, installed, and / or downloaded.
[0185] The presentation may be visual (e.g., using a combination of sights, graphics, text, symbols, color, shade, video, animation, sound, voice, audio, etc.), graphical (e.g., using GUI, animation, video), textual (e.g., web page with text, messages, animated text), symbolic (e.g., emojis, signs, hand gestures), or mechanical (e.g., vibration, actuator movement, haptics, etc.) presentation.
[0186] Basic calculation
[0187] The computational workload associated with this method is shared among the processor, the type 1 heterogeneous wireless device, the type 2 heterogeneous wireless device, a local server (eg, a hub device), a cloud server, and other processors.
[0188] Operations, pre-processing, processing, and / or post-processing may be applied to the data (e.g., TSCI, autocorrelation, TSCI features). Operations may include pre-processing, processing, and / or post-processing. Pre-processing, processing, and / or post-processing may be operations. Operations may include pre-processing, processing, post-processing, scaling, calculating confidence coefficients, calculating line-of-sight (LOS) quantities, non-LOS calculations, and the like. Computing non-linear (NLOS) quantities, computing quantities including line-of-sight and non-linear (NLOS), computing quantities for a single link (e.g., path, communication path, link between a transmit antenna and a receive antenna), computing quantities including multiple links, computing functions of operands, filtering, linear filtering, nonlinear filtering, folding, grouping, energy computation, low-pass filtering, band-pass filtering, high-pass filtering, median filtering, rank filtering, quartile filtering, percentile filtering, finite impulse response (FIR) filtering, infinite impulse response (IIR) filtering, moving average (MA) filtering, autoregressive (AR) filtering, autoregressive moving average (ARMA) filtering, selective filtering, adaptive filtering, interpolation, decimation, subsampling, upsampling, resampling, time correction, time-based correction, phase correction, magnitude correction, phase cleaning, amplitude cleaning, matched filtering, enhancement, restoration, noise removal, smoothing, signal conditioning, enhancement, restoration, linear transform, nonlinear transform, inverse transform, frequency transformation, inverse frequency transformation, Fourier transform (FT), discrete-time FT (DTFT), Discrete FT (DFT), Fast FT (FFT), Wavelet Transform, Laplace Transform, Hilbert Transform, Hadamard Transform, Trigonometric Transform, Sine Transform, Cosine Transform, DCT, Power of 2 Transform, Sparse Transform, Graph Based Transform, Graph Signal Processing, Fast Transform, Transform Combined with Zero Padding, Cyclic Padding, Padding, Zero Padding, Feature Extraction, Decomposition, Projection, Orthogonal Projection, Non-Orthogonal Projection, Overprojection (oecomlee)ojecion), eigendecomposition, singular value decomposition (SVD), principle component analysis (ICA), independent component analysis (ICA), grouping, sorting, thresholding, soft thresholding, hard thresholding, clipping, soft clipping, first derivative, second derivative, higher derivative, convolution, multiplication, division, addition, subtraction, integration, maximization, minimization, least squared error, recursive least squares, constrained least squares, batch least squares, least absolute deviation, least mean squared deviation, least absolute deviation, local maximization, local minimization, cost function optimization, neural networks, recognition, labeling, training, class filtering, machine learning, supervised learning, unsupervised learning, semi-supervised learning, comparison with other TSCI, similarity score calculation, quantization, vector quantization, matching pursuit, compression, encryption, encoding, storage, transmission, normalization, time normalization, frequency domain normalization, classification, clustering, labeling, tagging, learning, detection, estimation, learning network, mapping, remapping, expansion, storage, search, transmission, reception, representation, combining, merging, splitting, tracking, monitoring, matched filtering, Kalman filtering, particle filtering, interpolation, extrapolation, histogram estimation The operations may include importance sampling, Monte Carlo sampling, compressed sensing, representation, merging, combining, dividing, scrambling, error protection, forward error correction, do nothing, time-varying processing, adjusted averaging, weighted averaging, arithmetic mean, geometric mean, harmonic mean, averaging over selected frequencies, averaging over antenna links, logical operations, permutation, combination, sorting, AND, OR, XOR, union, intersection, vector addition, vector subtraction, vector multiplication, vector division, inverse, norm, distance, and / or another operation. The operations may be pre-processing, processing, and / or post-processing. Operations may be applied jointly on multiple time series or functions.
[0189] Functions (e.g., functions of operands) can be scalar functions, vector functions, discrete functions, continuous functions, polynomial functions, properties, characteristics, magnitude, phase, exponential functions, logarithmic functions, trigonometric functions, transcendental functions, boolean functions, linear functions, algebraic functions, nonlinear functions, piecewise functions, real functions, complex functions, vector-valued functions, inverse functions, derivative functions, integral functions, circular functions, functions of other functions, one-to-one functions, one-to-many functions, many-to-one functions, many-to-many functions, zero crossings, absolute functions, index functions, mean, mode, median, range, statistics, histogram, variance, standard deviation, measure of variation, expansion, dispersion, deviation, divergence, range, interquartile range, total deviation, absolute deviation, arithmetic mean, geometric mean, harmonic mean, trimmed mean, percentile, square, cube, square root, power, sine, cosine, tangent, cotangent , elliptic functions, parabolic functions, hyperbolic functions, game functions, zeta functions, absolute value, threshold, limit functions, floor functions, rounding functions, sign functions, quantization, piecewise constant functions, composite functions, functions of functions, time functions processed by operations (e.g. filtering), probabilistic functions, stochastic functions, deterministic functions, periodic functions, iterative functions, transformations, frequency transformations, inverse frequency transformations, discrete time transformations, Laplace transforms, Hilbert transforms, sine transforms, cosine transforms, trigonometric transforms, wavelet transforms, integer transforms, power of two transforms, sparse transforms, projections, decompositions, principal component analysis (PCA), neural networks, feature extraction, moving functions, functions for moving windows of adjacent items in a time series, filtering functions, convolutions, mean functions, histograms, variance / standard deviation functions, statistical functions, short-time transforms, discrete transforms, Discrete Fourier Transform, Discrete Cosine Transform, Discrete Sine Transform, Hadamard Transform, Eigenvalue Decomposition, Eigenvalue, Singular Value Decomposition (SVD), Singular Value, Orthogonal Decomposition, Matching Pursuit, Sparse Transform, Arbitrary Decomposition, Graph Based Processing, Graph Based Transform, Graph Signal Processing, Classification, Class / Group / Category Identification, Labeling, Learning, Machine Learning, Detection, Estimation, Feature Extraction, Learning Networks, Feature Extraction, Noise Reduction, Signal Enhancement, Coding, Encryption, Mapping, Remapping, Vector Quantization, Low-Pass Filtering, High-Pass Filtering, Band-Pass Filtering, Matched Filtering, Kalman Filtering, Pre-Processing, Post-Processing, Particle Filtering, FIR Filtering, IIR Filtering, Autoregressive (AR) Filtering, Adaptive Filtering, First Derivative, Higher-Order Derivative, Integration, Zero Crossing, Smoothing, Median Filtering, Mode Filtering, Sampling, Random Sampling, Resampling Function, Downsampling, Downconverting, Upsampling, Upconverting, Interpolation, Extrapolation, Importance Sampling, Monte Carlo Sampling, Compressed Sensing, Statistics, These may include short-term statistics, long-term statistics, autocorrelation functions, cross-correlation functions, moment-generating functions, time averages, weighted averages, special functions, Bessel functions, error functions, complementary error functions, beta functions, gamma functions, integral functions, Gaussian functions, Poisson functions, and the like.
[0190] The steps (or each step) of this disclosure may employ machine learning, training, discriminative training, deep learning, neural networks, continuous time processing, distributed computing, distributed storage, and acceleration using GPUs / DSPs / coprocessors / multi-cores / multi-processing.
[0191] The frequency transform may include a Fourier transform, a Laplace transform, a Hadamard transform, a Hilbert transform, a sine transform, a cosine transform, a trigonometric transform, a wavelet transform, an integer transform, a power of two transform, zero-padding and combinations of transforms, a power Fourier transform with zero-padding, and / or another transform. Fast and / or approximate versions of the transforms may be performed. The transforms may be performed using floating-point and / or fixed-point arithmetic.
[0192] The inverse frequency transform may include an inverse Fourier transform, an inverse Laplace transform, an inverse Hadamard transform, an inverse Hilbert transform, an inverse sine transform, an inverse cosine transform, an inverse trigonometric transform, an inverse wavelet transform, an inverse integer transform, an inverse power of two transform, a combination of zero padding and transforms, an inverse Fourier transform with zero padding, and / or another transform. Fast and / or approximate versions of the transform may be performed. The transform may be performed using floating-point and / or fixed-point arithmetic.
[0193] Quantities / features can be calculated from TSCI. Quantities include: movement, location, map coordinates, height, speed, acceleration, movement angle, rotation, dimension, volume, time trend, one-time pattern, recurring pattern, evolving pattern, time pattern, mutually exclusive pattern, associated / correlated pattern, cause-effect, short-term / long-term correlation, tendency, slope, preference, statistics, typical behavior, atypical behavior, time trend, time profile, periodic movement, repetitive movement, repetition, tendency, change, sudden change, gradual change, frequency, transient, breathing, gait, behavior, event, suspicious event, dangerous event, warning event, warning, belief, proximity, collision, power, signal, signal power, signal strength, signal volume, received signal strength indicator (RSSI), signal amplitude, signal phase, signal frequency component, signal frequency band component, channel state information (CSI), map, time, frequency, time-period The statistics may include at least one of wavenumber, decomposition, orthogonal decomposition, non-orthogonal decomposition, tracking, respiration, palpitations, statistical parameters, cardiopulmonary statistics / analysis (e.g., output response), daily activity statistics / analysis, chronic disease statistics / analysis, medical statistics / analysis, early (or instantaneous or simultaneous or delayed) indicator / suggestion / sign / marker / verifier / detection / symptom / condition / state, biometric, baby, patient, machine, device, temperature, vehicle, parking lot, location, lift, elevator, space, road, fluid flow, home, room, office, house, building, warehouse, storage, system, ventilation, fan, pipe, duct, people, human, car, boat, truck, plane, drone, downtown, crowd, impulse event, cyclostationary, environment, vibration, material, surface, 3D, 2D, local, global, presence, and / or other measurable quantity / variable.
[0194] Sliding Window Algorithm
[0195] The sliding time window may have a time-varying window width. It may be smaller initially to allow for rapid acquisition and may increase over time to a steady-state size. The steady-state size may be related to the monitored frequency, repetitive motion, transient motion, and / or STI. Even in the steady state, the window size may be adaptively (and / or dynamically) changed (e.g., adjusted, varied, modified) based on battery life, power consumption, available computing power, changes in the volume of interest, the nature of the monitored motion, etc.
[0196] The time shift between two sliding time windows at adjacent time instances can be constant / variable / locally adaptive / dynamically adjusted over time. If a shorter time shift is used, any monitoring updates can be more frequent, which can be used for rapidly changing conditions, object movements, and / or objects. A longer time shift can be used for slower conditions, object movements, and / or objects.
[0197] The window width / size and / or time shift may be changed (e.g., adjusted, altered, modified) according to user requests / selections. The time shift may be changed automatically (e.g., as controlled by a processor / computer / server / hub device / cloud server) and / or adaptively (and / or dynamically).
[0198] At least one characteristic (e.g., a feature value or a feature point) of the function (e.g., an autocorrelation function, an autocovariance function, a cross-correlation function, a cross-covariance function, a power spectral density, a time function, a frequency domain function, a frequency transform) may be determined (e.g., by the object tracking server, a processor, a Type 1 heterogeneous device, a Type 2 heterogeneous device, and / or another device). At least one characteristic of the function may include a maximum, a minimum, an extremum, a local maximum, a local minimum, a local extremum, a local extremum with a positive time offset, a first local extremum with a positive time offset, an nth local extremum with a positive time offset, a first local extremum with a negative time offset, a bounded maximum, a bounded minimum, a bounded extremum, a significant maximum, a significant minimum, a significant extremum, a gradient, a derivative, a higher order derivative, a maximum gradient, a minimum gradient, a local maximum gradient, a local maximum gradient with a positive time offset, a local minimum gradient, a bounded maximum gradient, a bounded minimum gradient, a maximum higher order derivative, a minimum higher order derivative, a bounded higher order derivative, a zero crossing, a zero crossing with a positive time offset, an nth zero crossing with a positive time offset, a zero crossing with a negative time offset, an nth zero crossing with a negative time offset, a bounded zero crossing, a zero crossing of a gradient, a zero crossing of a gradient of a higher order derivative, and / or other characteristics. At least one argument of the function associated with at least one characteristic of the function may be identified. A quantity (eg, spatial-temporal information of an object) may be determined based on at least one argument of the function.
[0199] Characteristics (e.g., characteristics of an object's movement at a location) can include instantaneous characteristics, short-term characteristics, recurring characteristics, recursive characteristics, history, incremental characteristics, change characteristics, deviation characteristics, phase, amplitude, degree, time characteristics, frequency characteristics, time-frequency characteristics, decomposition characteristics, orthogonal decomposition characteristics, non-orthogonal decomposition characteristics, deterministic characteristics, probability characteristics, stochastic characteristics, autocorrelation function (ACF), mean, variance, standard deviation, measure of change, spread, variance, deviation, divergence, range, interquartile range, total variation, absolute deviation, total deviation, statistics, duration, timing, trend, periodic characteristics, recurring characteristics, long-term characteristics, historical characteristics, average characteristics, recent characteristics, past characteristics, future characteristics, predicted characteristics, position, distance, height, speed, direction, velocity, acceleration, change in acceleration, angle, angular speed, change in angular velocity, of an object The change in angular acceleration includes at least one of: angular acceleration, change in angular acceleration, orientation of the object, angle of rotation, deformation of the object, shape of the object, change in shape of the object, change in size of the object, change in structure of the object, and / or change in properties of the object.
[0200] At least one local maximum and at least one local minimum of the function may be identified. At least one local signal-to-noise ratio-like (SNR-like) parameter may be calculated for each pair of adjacent local maximums and minima. The SNR-like parameter may be a function (e.g., linear, logarithmic, exponential, monotonic) of the fraction of the amount (e.g., power, magnitude) of the local maximum over the same amount of the local minimum. It may also be a function of the difference between the amount of the local maximum and the same amount of the local minimum. Significant local peaks may be identified or selected. Each significant local peak may be a local maximum with an SNR-like parameter greater than a threshold T1 and / or a local maximum with an amplitude greater than a threshold T2. At least one local minimum and at least one local minimum in the frequency domain may be identified / calculated using a persistence-based approach.
[0201] A set of selected significant local peaks may be selected from the set of identified significant local peaks based on a selection criterion (e.g., quality criteria, signal quality state). An object characteristic / STI may be calculated based on the set of selected significant local peaks and frequency values associated with the set of selected significant local peaks. In one example, the selection criterion may always correspond to selecting the strongest peak in the range. The strongest peak may be selected, but non-selected peaks may still be significant (or even strong).
[0202] Unselected significant peaks may be saved and / or monitored as "reserved" peaks for use in future selections in future sliding time windows. As an example, there may be a particular peak (at a particular frequency) that appears consistently over time. Initially, even though it is significant, it may not be selected (because other peaks may become stronger). However, at a later time, the peak may become stronger and more dominant and may be selected. If it is "selected," it may be back-traced in time and deemed "selected" at an earlier time that was significant but not selected. In such a case, the back-traced peak may replace a previously selected peak at an earlier time. The replaced peak may be a relatively weak peak or a peak that appears isolated in time (i.e., appears for only a short time in time).
[0203] In other instances, the selection criteria may not correspond to selecting the strongest peak in the range, but instead may consider not only the "strength" of the peak, but also the "trace" of peaks that may have occurred in the past, especially peaks that have been identified for a long time.
[0204] For example, if a finite state machine (FSM) is used, it may select the peak based on the state of the FSM. The decision threshold may be adaptively (and / or dynamically) calculated based on the state of the FSM.
[0205] The similarity score and / or component similarity score may be calculated (e.g., by a server (e.g., a hub device), a processor, a Type 1 device, a Type 2 device, a local server, a cloud server, and / or another device) based on a pair of temporally adjacent CIs of a TSCI. The pairs may be obtained from the same sliding window or two different sliding windows. The similarity score may also be based on a pair of temporally adjacent or less-adjacent CIs from two different TSCIs. The similarity score and / or component similarity score may be / include time reversal resonating strength (TRRS), correlation, cross-correlation, autocorrelation, correlation indicator, covariance, cross-covariance, autocovariance, dot product of two vectors, distance score, norm, metric, quality metric, signal quality condition, statistical property, discrimination score, neural network, deep learning network, machine learning, training, discrimination, weighted average, preprocessing, denoising, signal conditioning, filtering, time correction, time alignment, phase offset compensation, transform, component-wise operation, feature extraction, finite state machine, and / or another score. Property and / or STI may be determined / calculated based on the similarity score.
[0206] Any threshold may be predetermined, adaptively (and / or dynamically) determined, and / or determined by a finite state machine. Adaptive determination may be based on time, space, location, antenna, path, link, condition, battery life, remaining battery capacity, available power, available computational resources, available network bandwidth, etc.
[0207] A threshold to be applied to a test statistic to distinguish between two events (or two conditions, or two situations, or two states), A and B, may be determined. Data (e.g., CI, channel state information (CSI), power parameters) may be collected under A and / or under B in a training scenario. The trial statistic may be calculated based on the data. The distribution of the trial statistic under A may be compared to the distribution of the trial statistic under B (a reference distribution), and the threshold may be selected according to some criteria. The criteria may include maximum likelihood estimation (ML), maximum a posteriori probability (MAP), discriminative training, minimum type-1 error for a given type-2 error, minimum type-2 error for a given type-1 error, and / or other criteria (e.g., quality metric, signal quality condition). The threshold may be adjusted to achieve different sensitivities to A, B, and / or other events / conditions / situations / states. The threshold adjustment may be automatic, semi-automatic, and / or manual. Threshold adjustments may be applied once, occasionally, frequently, periodically, repeatedly, occasionally, sporadically, and / or on-demand. Threshold adjustments may be adaptive (and / or dynamically adjusted). Threshold adjustments may depend on objects, object movement / location / orientation / motion, object characteristics / STI / size / characteristics / traits / habits / behavior, location, at / at / of location, features / fixtures / furniture / barriers / materials / machines / creatures / objects / boundaries / surfaces / media, map, map constraints (or environmental model), events / states / scenes / conditions, time, timing, duration, current state, past history, user, and / or personal preference, etc.
[0208] The stopping criterion (or skip or bypass or blocking or pausing or passing or rejecting criterion) of an iterative algorithm may be that the change in the current parameter (e.g., offset value) in the update in the iteration is less than a threshold. The threshold may be 0.5, 1, 1.5, 2, or another number. The threshold may be adaptive (and / or dynamically adjusted). It may change as the iteration progresses. With respect to the offset value, the adaptive threshold may be determined based on the task, the initial specific value, the current time offset value, the regression window, the regression analysis, the regression function, the regression error, the convexity of the regression function, and / or the number of iterations.
[0209] The local extrema may be determined as a corresponding extremum of the regression function in the regression window. The local extrema may be determined based on a set of time offset values and a set of associated regression function values within the regression window. Each of the set of associated regression function values associated with the set of time offset values may be within a range from the corresponding extremum of the regression function in the regression window.
[0210] Searching for local extrema, robust search, minimization, optimization, statistical optimization, dual optimization, constraint optimization, convex optimization, global optimization, local optimization, energy minimization, linear regression, quadratic regression, higher order regression, linear programming, nonlinear programming, stochastic programming, combinatorial optimization, constraint programming, constraint satisfaction, computation of variations, optimal control, dynamic programming, mathematical programming, multiobjective optimization, multimodal optimization, disjunctive programming, space mapping, infinite dimensional optimization, heuristics, metaheuristics, convex programming, semidefinite programming, cone programming, second order cone programming, integer programming, quadratic programming, fractional programming, numerical analysis, simplex algorithm, iterative methods, gradient descent, subgradient methods, coordinate gradient methods, conjugate gradient methods, Newton's algorithm, sequential quadratic programming, interior point methods, elliptic methods, reduced gradient methods, quasi-Newton methods, simultaneous perturbation stochastic approximation, interpolation, pattern search methods, line search, non-differential optimization, genetic algorithms, evolutionary algorithms, dynamic relaxation The search for local extrema may involve an objective function, a loss function, a cost function, a utility function, a fitness function, an energy function, and / or an energy function.
[0211] The regression may be performed using a regression function to fit the sampled data (e.g., CIs, CI features, components of CIs) or another function (e.g., an autocorrelation function) in a regression window. The length of the regression window and / or the position of the regression window may be varied in at least one iteration. The regression function may be a linear function, a quadratic function, a cubic function, a polynomial function, and / or another function.
[0212] The regression analysis may minimize at least one of the following: error, aggregate error, component error, error in a projected domain, error in a selected axis, error in a selected orthogonal axis, absolute error, squared error, absolute deviation, squared deviation, higher-order error (e.g., third-order, fourth-order), robust error (e.g., squared error versus absolute error for smaller magnitude errors and for larger errors, or a first type of error for smaller magnitude errors and a second type of error for larger magnitude errors), another error, a weighted sum (or weighted average) of absolute / squared errors (e.g., in the case of a wireless transmitter with multiple antennas and a wireless receiver with multiple antennas, each pair of transmitter antenna and receiver antenna forms a link), mean absolute error, mean squared error, mean absolute deviation, and / or mean squared deviation. Errors associated with different links may have different weights. One possibility is that some links and / or some components with greater noise or lower signal quality metrics may have smaller or larger weights. (weighted sum of squared errors, weighted sum of higher-order errors, weighted sum of robust errors, weighted sum of alternative errors, absolute cost, squared cost, higher-order cost, robust cost, alternative cost, weighted sum of absolute costs, weighted sum of squared costs, weighted sum of higher-order costs, weighted sum of robust costs, and / or weighted sum of alternative costs).
[0213] The determined regression error may be an absolute error, a squared error, a higher order error, a robust error, a further error, a weighted sum of absolute errors, a weighted sum of squared errors, a weighted sum of higher order errors, a weighted sum of robust errors, and / or a weighted sum of further errors.
[0214] The time offset associated with the maximum regression error (or minimum regression error) of the regression function for a particular function within the regression window may be the updated current time offset for the iteration.
[0215] The local extrema can be searched for based on a quantity including the difference between two different errors (e.g., the difference between an absolute error and a squared error), each of which can include an absolute error, a squared error, a higher-order error, a robust error, another error, a weighted sum of absolute errors, a weighted sum of squared errors, a weighted sum of higher-order errors, a weighted sum of robust errors, and / or a weighted sum of another error.
[0216] The quantity may be compared to reference data or a reference distribution, such as an F-distribution, a central F-distribution, another statistical distribution, a threshold, a threshold associated with a probability / histogram, a threshold associated with a probability / histogram of finding a false peak, a threshold associated with an F-distribution, a threshold associated with a central F-distribution, and / or a threshold associated with another statistical distribution.
[0217] The regression window may be determined based on at least one of: a movement of the object (e.g., a change in location / position), a quantity related to the object, at least one characteristic and / or STI of the object related to the movement of the object, an estimated location of a local extremum, a noise characteristic, an estimated noise characteristic, a signal quality metric, an F-distribution, a central F-distribution, another statistical distribution, a threshold, a preset threshold, a threshold related to a probability / histogram, a threshold related to a desired probability, a threshold related to the probability of finding a false peak, a threshold related to an F-distribution, a threshold related to a central F-distribution, a threshold related to another statistical distribution, a condition that the quantity at the window center is a maximum within the regression window, a condition that only one of the local extrema of a particular function for a particular value exists for the first time within the regression window, another regression window, and / or other conditions.
[0218] The width of the regression window can be determined based on the particular local extrema being searched for, including a first local maximum, a second local maximum, a higher-order local maximum, a first local maximum with a positive time offset, a second local maximum with a positive time offset, a higher-order local maximum with a positive time offset, a first local maximum with a negative time offset, a second local maximum with a negative time offset, a second local maximum with a negative time offset, a higher-order local maximum with a negative time offset, a first local minimum, a second local minimum, a higher-order local minimum, a first local minimum with a positive time offset, The local minimum may include a second local minimum with a positive time offset, a higher-order local minimum with a positive time offset, a first local minimum with a negative time offset, a second local minimum with a negative time offset, a higher-order local minimum with a negative time offset, a first local extremum, a second local extremum, a higher-order local extremum, a first local extremum with a positive time offset, a second local extremum with a positive time offset, a first local extremum with a negative time offset, a second local extremum with a negative time offset, and a higher-order extremum with a negative and / or negative time offset.
[0219] The current parameters (e.g., time offset value) may be initialized based on a target value, a target profile, a trend, a past trend, a current trend, a target velocity, a velocity profile, a target velocity profile, a past velocity trend, an object's motion or movement (e.g., a change in location / position), at least one characteristic and / or STI of the object associated with the object's motion, a position quantity of the object, an initial velocity of the object associated with the object's motion, a predefined value, an initial width and duration of the regression window, a value based on the signal's carrier frequency, a value based on the signal's subcarrier frequency, a signal's bandwidth, an antenna's aggregate value associated with the channel, noise characteristics, a signal h metric, and / or an adaptive (and / or dynamically adjusted) value. The current time offset may be at the center, left, right, and / or another fixed relative position of the regression window.
[0220] In the presentation, the information may be displayed together with a map (or environmental model) of the location. The information may include location, zone, area, region, coverage area, corrected location, approximate location, location wrt a map of the location, location wrt a segmented location, direction, route, route wrt a map and / or segmentation, trace (e.g., location within a time window such as the last 5 seconds, or the last 10 seconds, the time window duration may be adjusted adaptively (and / or dynamically), and the time window duration may be adjusted adaptively (and / or dynamically) with respect to speed, acceleration), route history, approximate area / zone along the route, history / summary of past locations, history of past locations of interest, frequently visited areas, customer traffic, flock fabric, flock behavior, flock control information, speed, acceleration, movement statistics, breathing rate, heart rate, presence / absence of movement, presence or absence of people or pets or objects, presence or absence of vital signs, gesture control (controlling a device using gestures), location-based gesture control, information for location-based operations, objects of interest (e.g., pets, people, self-guided machines / devices, vehicles, drones, cars, boats, bicycles, etc.). Identity (ID) or identifier of a vehicle (e.g., car, unmanned vehicle, machine with fan, air conditioner, TV, machine with moving parts), user identification (e.g., person), user information, position / speed / acceleration / direction / movement / gesture / gesture control / movement trace, user ID or identifier, user activity, user status, user sleep / rest characteristics, user emotional state, user vital signs, location environment information, location weather information, earthquake, explosion, storm, rain, fire, temperature, collision, impact, vibration, event, door opening event, door closing event, window opening The events may include a window closing event, a fall event, a burning event, an icy event, a water-related event, a wind-related event, an air movement event, an accident event, a quasi-periodic event (e.g., running on a treadmill, hopping, skipping rope, somersaults, etc.), a repeating event, a swarming event, a vehicle event, a user gesture (e.g., hand gestures, arm gestures, foot gestures, leg gestures, body gestures, head gestures, face gestures, mouth gestures, eye gestures, etc.).
[0221] Location may be two-dimensional (e.g., using two-dimensional coordinates), three-dimensional (e.g., using three-dimensional coordinates). Location may be relative (e.g., with respect to a map or environmental model) or relational (e.g., halfway between point A and point B, around a corner, upstairs, on a table, on the ceiling, on the floor, on a couch, close to point A, a distance R from point A, within a radius of R from point A, etc.). Location may be expressed in Cartesian coordinates, polar coordinates, and / or another representation.
[0222] Information (e.g., location) may be marked with at least one symbol. The symbol may change over time. The symbol may flash and / or pulsate with or without changing color / intensity. The size may change over time. The orientation of the symbol may change over time. The symbol may be a number reflecting an instantaneous quantity (e.g., user's vital signs / respiratory rate / heart rate / gesture / status / condition / action / movement, temperature, network traffic, network connectivity, device / machine status, remaining device power, device state, etc.). The rate of change, size, orientation, color, intensity, and / or symbol may reflect the respective movement. Information may be presented visually and / or verbally explained (e.g., using pre-recorded audio or speech synthesis). Information may be written in text. Information may also be presented in a mechanical manner (e.g., animated gadgets, moving parts).
[0223] The user interface (UI) device may be a smartphone (e.g., iPhone, Android phone), a tablet (e.g., iPad), a laptop (e.g., notebook computer), a personal computer (PC), a device with a graphic user interface (GUI), a smart speaker, a device with voice / sound / speaker capabilities, a virtual reality (VR) device, an augmented reality (AR) device, a smart car, an in-car display, a voice assistant, an in-car voice assistant, etc.
[0224] A map (or environmental model) may be two-dimensional, three-dimensional, and / or higher dimensional. (e.g., a time-varying 2D / 3D map / environment model). Walls, windows, doors, entrances, exits, and restricted areas may be marked on the map or model. A map may include a floor plan of a facility. A map or model may have one or more layers (overlays). A map / model may be a maintenance map / model including water pipes, gas pipes, wiring, cable runs, air ducts, crawl spaces, ceiling layouts, and / or basement layouts. A location may be segmented / subdivided / regionalized / grouped into multiple zones / areas / geographical regions / sectors / sections / territories / districts / administrative areas / sites / neighborhoods / areas / stretches / open spaces, such as bedrooms, living rooms, storage rooms, walkways, kitchens, dining rooms, foyers, garages, first floors, second floors, restrooms, offices, conference rooms, reception areas, various office areas, various warehouse areas, various facility areas, etc. The segments / areas / regions may be presented on the map / model. Different regions may be color coded. Different regions may be presented with characteristics (e.g., color, brightness, color intensity, texture, animation, blinking, blink rate, etc.) Logical segmentation of locations may be performed using at least one heterogeneous Type 2 device, or server (e.g., hub device), or cloud server, etc.
[0225] Here is an example of the disclosed system, device, and method. Stephan and his family want to install the disclosed wireless motion detection system to detect movement in their 2,000-square-foot, two-story townhouse in Seattle, Washington. Because his house is two stories, Stephan decides to use one Type 2 device (named A) and two Type 1 devices (named B and C) on the first floor. The first floor is centered around three rooms: the kitchen, dining room, and living room, with the dining room in the middle and arranged in a straight line. The kitchen and living room are on opposite sides of the house. He places a Type 2 device (A) in the dining room, one Type 1 device (B) in the kitchen, and another Type 1 device (C) in the living room. With this device installation, he specifically uses the motion detection system to partition the first floor into three zones: the dining room, the living room, and the kitchen. When motion is detected by the AB pair and the AC pair, the system analyzes the motion information and associates the motion with one of three zones.
[0226] When Stefan and his family go away for the weekend (e.g., going camping for a long weekend), Stefan turns on the motion detection system using a mobile phone app (e.g., Android phone app or iPhone app). When the system detects motion, an alert signal is sent to Stefan (e.g., SMS text message, email, push message to the mobile phone app, etc.). If Stefan pays a monthly fee (e.g., $10 / month), a service company (e.g., a security company) receives the alert signal through a wired network (e.g., broadband) or wireless network (e.g., home WiFi, LTE, 3G, 2.5G, etc.) and performs security procedures for Stefan (e.g., calling him to check the problem, sending someone to check the house, contacting the police on Stefan's behalf, etc.). Stefan loves his elderly mother and is concerned about her well-being when he is home alone. When his mother is home alone while the rest of the family is out (e.g., going to work, shopping, or on vacation), Stephan uses his mobile app to turn on the motion detection system to ensure his mother is okay. He then uses the mobile app to monitor his mother's movements around the house. When Stephan uses the mobile app to see his mother moving around the house between three areas, according to her daily routine, Stephan knows that his mother is okay. Stephan is grateful that the motion detection system can help him monitor his mother's well-being while he is away from home.
[0227] On a typical day, his mother wakes up around 7:00 AM. She plans to make breakfast in the kitchen for about 20 minutes. She then eats breakfast in the dining room for about 30 minutes. Then, she does her daily exercise in the living room before sitting on the sofa and watching her favorite TV show. The motion detection system allows Stephan to see the timing of movements in each of three areas of the house. When the movements fit into her daily routine, Stephan knows roughly that his mother should be doing well. However, if the movement pattern seems abnormal (e.g., no movement until 10:00 AM, staying in the kitchen too long, remaining motionless for long periods of time, etc.), Stephan suspects something is wrong and calls his mother to check on her. Stephan may even ask someone (e.g., family member, neighbor, paid staff member, friend, social worker, service provider) to check on his mother.
[0228] Occasionally, Stephen feels the need to reposition his Type 2 device. He simply unplugs the device from its original AC power plug and plugs it into another AC power plug. He is pleased that the wireless motion detection system is plug-and-play, and repositioning does not affect the system's operation. Once powered on, it works immediately.
[0229] On another occasion, Stephan is so convinced that our wireless motion detection system can indeed detect motion with very high accuracy and very low alerts that he can actually use the mobile app to monitor motion on the first floor. He decides to install a similar configuration (i.e., one Type 2 device and two Type 1 devices) on the second floor to monitor the bedrooms on the second floor. Again, he finds that system setup is extremely easy, as he simply needs to plug the Type 2 and Type 1 devices into AC power plugs on the second floor. No special installation is required. He can then use the same mobile app to monitor motion on the first and second floors. Each Type 2 device on the first / second floors can interact with all Type 1 devices on both the first and second floors. Stephan is happy to see that as he doubles his investment in Type 1 and Type 2 devices, he has more than double the capacity of his combined system.
[0230] According to various embodiments, each CI (CI) may include at least one of channel state information (CSI), frequency-domain CSI, a frequency representation of CSI, frequency-domain CSI associated with at least one subband, time-domain CSI, intra-domain CSI, a channel response, a channel response estimate, a channel impulse response (CIR), a channel frequency response (CFR), channel characteristics, a channel filter response, CSI of a wireless multipath channel, information of a wireless multipath channel, a timestamp, aiding information, data, metadata, user data, account data, access data, security data, session data, status data, management data, family data, identity (ID), identifier, device data, network data, proximity data, environmental data, real-time data, sensor data, stored data, encrypted data, compressed data, protected data, and / or another CI. In one embodiment, the disclosed system includes hardware components (e.g., a wireless transmitter / receiver with an antenna, analog circuitry, a power supply, a processor, a memory) and corresponding software components. According to various embodiments of the present disclosure, the disclosed system includes a Bot (referred to as a Type 1 device) and an Origin (referred to as a Type 2 device) for vital signs detection and monitoring, each device comprising a transceiver, a processor, and a memory.
[0231] The disclosed system can be applied in many ways. In one example, a Type 1 device (transmitter) may be a small WiFi-enabled device placed on a table. It may also be a WiFi-enabled television (TV), set-top box (STB), smart speaker (e.g., Amazon Echo), smart refrigerator, smart microwave, mesh network router, mesh network satellite, smartphone, computer, tablet, smart plug, etc. In one example, a Type 2 (receiver) may be a WiFi-enabled device placed on a table. It may also be a WiFi-enabled television (TV), set-top box (STB), smart speaker (e.g., Amazon Echo), smart refrigerator, smart microwave, mesh network router, mesh network satellite, smartphone, computer, tablet, smart plug, etc. Type 1 and Type 2 devices may be placed in / near a conference room to count people. Type 1 and Type 2 devices may be a health monitoring system for the elderly to monitor daily activities and any signs of symptoms (e.g., dementia, Alzheimer's disease). Type 1 and Type 2 devices may be used in an infant monitor to monitor the vital signs (breathing) of living infants. Type 1 and Type 2 devices can be placed in bedrooms to monitor sleep quality and any sleep apnea. Type 1 and Type 2 devices can be placed in automobiles to monitor passenger and driver health, detect driver sleep, and detect any babies left in the car. Type 1 and Type 2 devices can be used in logistics to prevent human trafficking by monitoring people hidden in trucks and containers. Type 1 and Type 2 devices can be deployed by emergency services in disaster areas to search for victims trapped in rubble. Type 1 and Type 2 devices can be placed in an area to detect the breathing of any intruders. Non-wearable wireless respiratory monitoring has many applications.
[0232] The hardware modules may be configured to include Type 1 transceivers and / or Type 2 transceivers. The hardware modules may be sold / used under variable brands to design, build, and sell final commercial products. The products using the disclosed systems and / or methods may be home / office security products, sleep monitoring products, WiFi products, mesh products, TVs, STBs, entertainment systems, HiFi, speakers, home appliances, lamps, stoves, ovens, microwaves, tables, chairs, beds, shelves, tools, appliances, torches, vacuum cleaners, smoke detectors, sofas, pianos, fans, doors, windows, door / window handles, locks, smoke detection equipment, car accessories, computing devices, office supplies, air conditioners, heaters, pipes, connectors, surveillance cameras, access points, computer equipment, mobile devices, LTE devices, 3G / 4G / 5G / 6G devices, UMTS devices, 3GPP devices, GSM devices, EDGE devices, TDMA devices, FDMA devices, CDMA devices, WCDMA devices, TD-SCDMA devices, gaming devices, eyeglasses, glass panels, VR goggles, necklaces, watches, waistbands, belts, wallets, pens, hats, clothing, implantable devices, tags, parking tickets, smartphones, etc.
[0233] The summarization may include: analysis, output response, selected time window, sub-sampling, transformation, and / or projection. The presentation may include presenting at least one of a month / week / day view, simplified / detailed view, cross-sectional view, small / large form factor view, color-coded view, comparison view, summary view, video, web view, audio announcement, and another presentation related to the cyclical / repetitive nature of the recurring motion.
[0234] A Type 1 / Type 2 device is any device that includes an antenna, a device with an antenna, a device with a housing (e.g., for a radio, antenna, data / signal processing unit, radio IC, circuitry), a device that is interfaced / attached / connected / linked to another device / system / computer / phone / network / data aggregator, a device with a user interface (UI) / graphical UI / display, a device with a wireless transceiver, a device with a wireless transmitter, a device with a wireless receiver, an Internet of Things (IoT) device, a device with a wireless network, a device with both wired and wireless network capabilities, a device with a wireless integrated circuit (IC), a Wi-Fi device, a device with a Wi-Fi chip (e.g., compliant with 802.11a / b / g / n / ac / ax standards), a Wi-Fi access point (AP), a Wi-Fi client, a WiFi router, a Wi-Fi repeater, a WiFi hub, a WiFi mesh network router / hub / AP, a wireless mesh network router, an ad-hoc network device, a wireless mesh network device, a mobile device (e.g., 2G / 2.5G / 3G / 3G).5G / 4G / LTE / 5G / 6G / 7G, UMTS, 3GPP, GSM, EDGE, TDMA, FDMA, CDMA, WCDMA, TD-SCDMA), cellular device, base station, mobile network base station, mobile network hub, mobile network compatible device, LTE device, device with LTE module, mobile module (e.g., circuit board with mobile-enabling chip (IC) such as Wi-Fi chip, LTE chip, BLE chip), device with mobile module, smartphone, companion device for smartphone (e.g., dongle, attachment, plug-in), dedicated device, plug-in device, AC-powered device, battery-powered device, device with processor / memory / instruction set, smart device / gadget / Item: A watch, stationery, pen, user interface, paper, mat, camera, television (TV), set-top box, microphone, speaker, refrigerator, oven, machine, phone, wallet, furniture, door, window, ceiling, floor, wall, table, chair, bed, nightstand, air conditioner, heater, pipe, duct, cable, carpet, decoration, gadget, USB device, plug, dongle, lamp / light, tile, ornament, bottle, vehicle, automobile, AGV, drone, robot, laptop, tablet, computer, hard disk, network card, equipment, racket, ball, shoe, wearable device, clothing, eyeglasses, hat, necklace, food, pill, small device that moves within a living being's body (e.g., blood vessels, lymphatic system, digestive system), and / or another device. The Type 1 device and / or Type 2 device may be communicatively coupled to the Internet, another device that accesses the Internet (e.g., a smartphone), a cloud server (e.g., a hub device), an edge server, a local server, and / or storage. Type 1 and / or Type 2 devices may operate under local control, may be controlled by another device via a wired or wireless connection, may operate automatically, or may be controlled by a central system located remotely (e.g., away from the home).
[0235] In one embodiment, a Type-B device may be a transceiver that may perform as both an origin (Type-2 device, Rx device) and a bot (Type-1 device, Tx device), i.e., a Type-B device may be both a Type-1 (Tx) device and a Type-2 (Rx) device (e.g., simultaneously or alternately), such as a mesh device, mesh router, etc. In one embodiment, a Type-A device may be a transceiver that may function only as a bot (Tx device), i.e., it may be only a Type-1 device or only a Tx, such as a simple IoT device. It may have the functionality of an origin (Type-2 device, Rx device), but in some embodiment, it functions only as a bot. All Type-A and Type-B devices form a tree structure. The root may be a Type-B device that has access to a network (e.g., the Internet). For example, it may be connected to broadband service via a wired connection (e.g., Ethernet, cable modem, ADSL / HDSL modem) or a wireless connection (e.g., LTE, 3G / 4G / 5G, WiFi, Bluetooth, microwave link, satellite link, etc.). In one embodiment, all Type A devices are leaf nodes. Each Type B device may be a root node, a non-leaf node, or a leaf node.
[0236] The Type 1 device (transmitter, or Tx) and Type 2 device (receiver, or Rx) may be on the same device (e.g., RF chip / IC), or simply on the same device. The device may operate in high frequency bands such as 28 GHz, 60 GHz, 77 GHz, etc. The RF chip may have dedicated Tx antennas (e.g., 32 antennas) and dedicated Rx antennas (e.g., another 32 antennas).
[0237] One Tx antenna can transmit a radio signal (e.g., a series of probe signals, perhaps at 100 Hz). Alternatively, all Tx antennas can be used to transmit radio signals with beamforming (at Tx), so that the radio signals are focused in a particular direction (e.g., for energy efficiency, or to boost the signal-to-noise ratio in that direction, or low-power operation when "scanning" in that direction, or low-power operation when an object is known to be in that direction).
[0238] The radio signal hits an object (e.g., a living human lying on a bed 4 feet away from the Tx / Rx antennas, breathing and heartbeat) within a location (e.g., a room). Object movement (e.g., lung movement according to breathing rate, or blood vessel movement according to heartbeat) can affect / modulate the radio signal. All Rx antennas can be used to receive the radio signal.
[0239] Beamforming (at the Rx and / or Tx) may be applied (digitally) to "scan" different directions. Many directions may be scanned or monitored simultaneously. Along with beamforming, a "sector" (e.g., direction, orientation, azimuth, bearing, zone, region, segment) may be defined relative to the Type 2 device (e.g., relative to the center position of the antenna array). For each probing signal (e.g., pulse, ACK, control packet, etc.), channel information or CI (e.g., channel impulse response / CIR, CSI, CFR) is obtained / calculated (e.g., from the RF chip) for each sector. For respiration detection, CIR can be collected over a sliding window (e.g., 30 seconds; a 100 Hz ringing / probing rate could have 3000 CIRs over 30 seconds).
[0240] A CIR can have many taps (e.g., N1 components / tap). Each tap may be associated with a time lag, or time-of-fright (e.g., the time it takes to hit and back a person 4 feet away). When breathing in a certain direction at a certain distance (e.g., 4 feet), one can find the CIR in the "certain direction" and then find the tap corresponding to the "certain distance." Respiration rate and heart rate can then be calculated from that tap of that CIR.
[0241] Each tap within a sliding window (e.g., a 30-second window of "component time series") can be considered a time function (e.g., a "tap function," "component time series"). Each tap function can be examined in search of strong periodic behavior (e.g., corresponding perhaps to breathing in the range 10 bpm to 40 bpm).
[0242] A Type 1 device and / or a Type 2 device can have external connections / links and / or internal connections / links. An external connection (e.g., connection 1110) can be associated with 2G / 2.5G / 3G / 3.5G / 4G / LTE / 5G / 6G / 7G / NBIoT, UWB, WiMax, Zigbee, 802.16, etc. The internal connections (e.g., 1114A and 1114B, 1116, 1118, 1120) can be associated with WiFi, IEEE802.11 standards, 802.11a / b / g / n / ac / ad / af / ag / ah / ai / aj / aq / ax / ay, Bluetooth 1.0 / 1.1 / 1.2 / 2.0 / 2.1 / 3.0 / 4.0 / 4.1 / 4.2 / 5, BLE, mesh networking, and IEEE802.16 / 1 / 1a / 1b / 2 / 2a / a / b / c / d / e / f / g / h / i / j / k / l / m / n / o / p / standards.
[0243] Type 1 devices and / or Type 2 devices are powered by batteries (e.g., AA batteries, AAA batteries, coin cell batteries, button cell batteries, small batteries, battery banks, power banks, car batteries, hybrid batteries, vehicle batteries, container batteries, non-rechargeable batteries, rechargeable batteries, NiCd batteries, NiMH batteries, lithium ion batteries, zinc carbon batteries, zinc chloride batteries, lead acid batteries, alkaline batteries, batteries with wireless chargers, smart batteries, solar batteries, boat batteries, plain batteries, other batteries, temporary energy storage devices, capacitors, flywheels).
[0244] Any device may be powered by DC or direct current (e.g., from batteries, generators, power converters, solar panels, rectifiers, DC-DC converters as described above, at various voltages such as 1.2V, 1.5V, 3V, 5V, 6V, 9V, 12V, 24V, 40V, 42V, 48V, 110V, 220V, 380V, etc.) and therefore may have a DC connector or connectors with at least one pin for DC power.
[0245] Any device may be powered by AC or alternating current (e.g., from a domestic wall outlet, a transformer, an inverter, shore power, or various voltages such as 100V, 110V, 120V, 100-127V, 200V, 220V, 230V, 240V, 220-240V, 100-240V, 250V, 380V, 50Hz, 60Hz, etc.) and therefore may have an AC connector or connectors with at least one pin for AC power. Type 1 devices and / or Type 2 devices may be located (e.g., installed, positioned, moved) within or outside a location.
[0246] For example, in a vehicle (e.g., an automobile, truck, lorry, bus, specialty vehicle, tractor, excavator, drilling machine, teleporter, bulldozer, crane, forklift, electric vehicle, AGV, emergency vehicle, cargo, freight car, trailer, container, boat, ferry, ship, submarine, aircraft, airship, lift, monorail, train, electric railcar, rail car, rail car, etc.), the Type 1 device and / or Type 2 device may be an embedded device embedded in the vehicle or an add-on device (e.g., an aftermarket device) plugged into a port within the vehicle (e.g., an OBD port / socket, a USB port / socket, an accessory port / socket, a 12V auxiliary power outlet, and / or a 12V cigarette lighter port / socket).
[0247] For example, one device (e.g., a Type 2 device) may be plugged into a 12V cigarette lighter / accessory port or an OBD port or a USB port (e.g., of a car / truck / vehicle), and the other device (e.g., a Type 1 device) may be plugged into a 12V cigarette lighter / accessory port or an OBD port or a USB port (e.g., of a car / truck / vehicle). The OBD port and / or USB port may provide power, signaling, and / or networking (of the car / truck / vehicle). The two devices may jointly monitor passengers, including children / babies, in the vehicle. They may be used to count passengers, recognize the driver, and detect the presence of passengers in specific seats / positions within the vehicle.
[0248] In another embodiment, one device may be plugged into a 12V cigarette lighter / accessory port or OBD port or USB port of a car / truck / vehicle, while the other device may be plugged into a 12V cigarette lighter / accessory port or OBD port or USB port of another car / truck / vehicle.
[0249] In another example, many devices of the same Type A (e.g., Type 1 or Type 2) may exist in many heterogeneous vehicles / portable devices / smart gadgets (e.g., automated guided vehicles / AGVs, shopping / luggage / mobile carts, parking tickets, golf carts, bicycles, smartphones, tablets, cameras, recording devices, smartwatches, roller skates, shoes, jackets, goggles, hats, eyewear, wearables, Segways, scooters, baggage tags, cleaning machines, vacuum cleaners, pet tags / collars / wearables / implants), each of which may be plugged into the vehicle's 12V accessory port / OBD port / USB port or embedded in the vehicle. There may also be one or more other Type B devices (e.g., if A is Type 2, then B is Type 1, and if A is Type 1, then B is Type 2) installed in locations such as gas stations, streetlights, street corners, tunnels, multi-story parking lots, and scattered locations covering a large area such as factories, stadiums, train stations, shopping malls, and construction sites. Type A devices can be located, tracked, or monitored based on TSCI.
[0250] The area / location may not have local connectivity such as broadband service, WiFi, etc. Type 1 and / or Type 2 devices may be portable. Type 1 and / or Type 2 devices may support plug and play.
[0251] Pairwise wireless links can be established between many pairs of devices, forming a tree structure. In each pair (and associated link), a device (the second device) may be a non-leaf (Type B). The other device (the first device) may be a leaf (Type A or Type B) or a non-leaf (Type B). In the link, the first device acts as a bot (Type 1 device or transmitting device) to transmit a wireless signal (e.g., a probe signal) to the second device over a wireless multipath channel. The second device can act as an origin (Type 2 device or Rx device) to receive the wireless signal, obtain TSCI, and calculate a "link analysis" based on the TSCI.
[0252] The present disclosure discloses a motion tracking system that finds the position or location or trajectory of a moving object without the use of satellites. In some embodiments, the disclosed system uses sensors, which may be an Integral Measurement Unit (IMU), accelerometer, gyroscope, magnetometer, barometer, etc., combined with a map engine (e.g., particle filter) to track motion. This can be easily implemented on existing smart phones (which all have IMUs) or many tablet or notebook computers with a simple software upgrade, without requiring additional hardware infrastructure.
[0253] In some embodiments, the system uses data obtained from the sensors to calculate the distance and direction of movement, and then uses a map engine to improve tracking accuracy or correct tracking error based on a particle filter.
[0254] During the training phase, the user may be asked to walk a known distance (e.g., 10 m) for the system to capture acceleration information. During walking, one stride has two steps: a left step with the left foot and a right step with the right foot. Thus, there should be two "oscillations" or "cycles" of acceleration. In some embodiments, the system can analyze the user's acceleration to recognize or identify steps or strides. The system can then calculate stride length or step length as a known distance, step and / or stride count.
[0255] During the movement phase, the system can analyze real-time acceleration to recognize / identify each stride or step within the measurement time window. The system can calculate distance by multiplying the known stride length (or step) by the number of strides within the measurement time window. The system can then apply dead reckoning to calculate a new position based on the old position, heading and distance from the gyro sensor.
[0256] 1 shows the overall architecture of a tracking system 100 that tracks object motion based on inertial sensors (e.g., IMUs) built into a mobile device. In some embodiments, the system first calculates the distance and direction of movement from the IMU. Then, in combination with an indoor map, it fuses the two types of estimation for continuous tracking.
[0257]
[0003] Figure 1 illustrates an overview of the architecture of a tracking system according to some embodiments of the present disclosure. As shown in Figure 1, in an exemplary usage scenario, a client, which may be a mobile object, a wearable, a robot, an automated guided vehicle (AGV), or any other device equipped with an inertial sensor (IMU), may be moved within a location, for example, by a moving user or a vehicle carrying the client. The client reads its built-in inertial sensor to obtain measurements or other sensing information. A core engine of the system running on the client can infer distance traveled and orientation from the measurements and incorporate them together to track the client's continuous location.
[0258] The right portion of Figure 1 shows the system's workflow on a mobile client. After the system performs distance and direction estimation, it fuses the estimated distance and direction of movement in a map-augmented tracking module. In some embodiments, the system takes an indoor map as input and converts it into a weighted graph. The output graph is then fed into a novel graph-based particle filter (GPF), which leverages the geometric constraints imposed by the map to jointly learn the target's accurate 2D position and orientation as it moves. The location estimate is then displayed to the user along with the map. Because the disclosed GPF uses only a regular indoor map (e.g., a floor plan image), it can easily scale to large buildings at little cost.
[0259] 2 is a diagram illustrating operations performed by a motion tracking system using an IMU, according to some embodiments of the present disclosure. As shown in FIG. 2, the system includes a sensor block 210, a sensor engine 220, a map engine 230, and a UI 240. The sensor block 210 may include an IMU sub-block and a barometer (for altitude estimation). The IMU can measure any one of acceleration, Gyr—gyroscope reading, Mag—magnetometer reading, Grv—gravity reading, and Ori—orientation reading.
[0260] In some embodiments, there may be several functions between the IMU and the sensor engine 220. For example, SensorAcquisition() may be performed by the system to acquire sensor readings into the sensor engine 220, and SensorAnalysis() may be performed by the system to analyze the sensor readings.
[0261] In some embodiments, the sensor engine 220 may perform several functions to estimate parameters related to movement. For example, the sensor engine 220 may perform a sensor filter() function to filter out noisy readings, and may perform sensor angle(), sensor distance(), and sensor altitude() functions based on the sensor readings to estimate the distance traveled, the angle traveled, and the altitude, respectively.
[0262] In some embodiments, the map engine 230 can correct any position errors based on particle filtering. For example, the map engine 230 can execute a mapanalysis() function to analyze map data uploaded to the cloud, a mapgraph() function to turn the map into a graph, and a mapfilter() function to build the map-based graph particle filtering.
[0263] The UI block 240 may be used to display the real-time location of the moving object being monitored.
[0264] Figure 3 illustrates a workflow for a sensor engine in a motion tracking system, such as sensor engine 220 of Figure 2, according to some embodiments of the present disclosure. As shown in Figure 3, after the sensor engine acquires acceleration time series from the IMU, it may perform data pre-processing 310 and atomic event extraction 320 to convert the pre-processed accelerations into atomic events.
[0265] 4 illustrates exemplary atomic events extracted by a sensor engine in a motion tracking system in accordance with some embodiments of the present disclosure. As shown in FIG. 4, three basic atomic events can be defined as peaks, valleys, and zero-crossings, respectively. Peak events 410 occur at local maxima in the processed acceleration data. Valley events 420 occur at local minima in the processed acceleration data. Zero-crossing events 430 occur at zero points crossing the processed acceleration data from negative to positive or from positive to negative.
[0266] In some embodiments, three extended atomic events are further defined by considering time constraints: far_peak, far_valley, and time_out. Figure 5 shows example time constraints for extracted atomic events according to some embodiments of the present disclosure.
[0267] Referring back to FIG. 3 , the sensor engine can use a finite state machine (FSM) 330 to characterize acceleration transitions during a step cycle. A typical human gait cycle varies by individual and speed, but follows a typical template seen from inertial data. A step cycle includes two phases: a stance phase and a swing phase, which can be further decomposed into seven stages. The stance phase begins with the initial heel contact of one foot and ends when the toe of the same foot leaves the ground. The swing phase immediately follows the forward swing of the leg and continues until the next heel contact. Intuitively, a stride cycle includes two steps, and the stride length is defined accordingly. In one embodiment, no distinction is made between two consecutive steps; therefore, the step length is calculated as the stride length, which is generally half the commonly defined stride length. Ideally, during walking, the acceleration induced by the walking movement first increases to a large value, then decreases to a negative value, and finally returns to approximately zero.
[0268] 6 illustrates a finite state machine (FSM) for step detection, according to some embodiments of the present disclosure. As shown in FIG. 6, the FSM includes five different states: S_ZC: Initial and default state when a zero crossing is detected. S_PK: State when acceleration exceeds the peak. S_P2V: State when a zero crossing occurs when acceleration decreases from the peak to the potential valley. S_VL: State during acceleration valley. S_DT: State when a step is requested.
[0269] To determine state transitions, six basic events can be defined, all of which can be identified from the inertial sensor data: E_PK: A peak is detected. E_VL: A valley is detected. E_ZC: A zero crossing is observed. E_FPK: A distant peak is detected after an E_PK event with no previous intermediate event but with a large time difference above a threshold. E_FVL: A valley defined similarly to E_FPK. E_TIMEOUT: A timeout event is triggered if the FSM stays in one state for too long.
[0270] The first three events characterize key properties of acceleration patterns during walking, and the latter three are derived from the first three combined with temporal information to combat noise and non-walking motion interference.
[0271] In some embodiments, the default is to remain in the current state until an event occurs, transitioning to another state or remaining unchanged. Each state transitions based on a specific event, as marked in Figure 6. All states except the default S_ZC are associated with a timeout event. State S_DT returns to S_ZC when new data arrives. E_FPK and E_FVL are introduced to handle the case of two consecutive peaks or valleys caused by noisy sensor readings and user motion interference. For example, if a subsequent peak is too close to the previous one, the algorithm treats it as a walking distortion and remains in the same state; otherwise, it is more like random movement and the state is reset to S_ZC. This algorithm design achieves many strong aspects. For each detected step, the algorithm outputs the timing information of the detected step: the time point in the corresponding S_ZC state is the start time, while the time entering S_DT state indicates the end time. Figure 7 shows a step on a processed acceleration data curve, including the start and end times of the step based on step detection using an FSM.
[0272] The algorithm is efficient and has a small number of states. It decomposes relatively noisy sensor readings into a few essential events that can be identified without relying on many subject-dependent parameters, such as being largely independent of absolute acceleration.
[0273] In some embodiments, raw sensor data is processed into a series of events of interest as input to the FSM described above. However, a key challenge here is that the ideal acceleration pattern for walking varies greatly depending on gait pattern and device position (e.g., handheld, in pocket, backpack, etc.). Furthermore, sensor data can be noisy and drift over time. To handle various sensor patterns, a series of pre-processing steps can be performed. The accelerometer measures the accelerations along the x, y, and z axes for each sample, a = (a x ,ay ,a z ). The reported acceleration is in the device frame (not the Earth's frame) and contains both motion-induced and gravity components. You may need to compensate for gravity and transform the acceleration into the Earth's reference frame. Fortunately, modern IMUs provide a gravity vector g = (g x ,g y ,g z ) based on an accelerometer and a gyroscope or magnetometer that report the gravitational component, a fused sensor (usually named a gravity sensor) has been done an excellent job of extracting the gravitational component. Therefore, the magnitude of the projected acceleration without the sensor orientation can be expressed as The time series of the acceleration magnitude can be easily obtained as A = [a(t1), a(t2), ..., a(t M )], where a(t i ) is the time t i The readings are from the gravity and potential sensors. Drift in the gravity and potential sensors can be further removed by removing the moving average trend. Because no online data processing is required for stride length estimation, a relatively long window of 2 seconds can be used to calculate the moving average. The detrended data can then be further smoothed using a 0.25 second window.
[0274] Zero-crossing and peak detection can then be performed to identify all events of interest from the data series (valley detection is done in the same way as peak detection by multiplying the data by -1). This process results in a time t i So, E=[e(t1),e(t2),...e(t Q )], where e(t i)∈{E_PK,E_VL,E_ZC}. The events are sparse across the time series, as there are typically three E_ZC, one E_PK, and one E_VL within a standard step. This event series is then fed into the FSM for step detection. The other three events, namely E_FPK, E_FVL, and E_TIMEOUT, are detected within the FSM by examining the timestamps of two consecutive E_PK, E_VL, respectively, and the duration of the state itself. For example, E_FPK is detected by examining the timestamps of two consecutive E_PK, E_VL, and the duration of the state itself, as shown in Figure 1. i-1 )=e(t i )=E_PK and |t i -t i-1 |>th max_gap , where th max_gap denotes a threshold that can be determined by human walking behavior. By including events (i.e., distinctive relative patterns in the acceleration sequence) rather than absolute acceleration thresholds, the disclosed FSM is more generalized and robust to different walking patterns and sensor positions.
[0275] 3, after step detection using the FSM, the sensor engine further performs step verification 340. In some embodiments, additional constraints are applied to verify true steps. For example, from step detection, the system checks whether a step start time t s , end time t e , a time series of acceleration data A, and corresponding peak and valley information. The system calculates the step energy as TIFF2024021088000002.tif2059 step residuals, TIFF2024021088000003.tif2055. The validation result may be expressed as a step likelihood l with k=0 for a false step. The step length Δd=Δd0*l, where Δd0 is the default value.
[0276] After step verification 340, the system can generate a step detection result, a step likelihood, and a step length. In some embodiments, walking detection may be performed, for example, after step verification. In some embodiments, if a continuous step is observed, the user status is detected as walking. Otherwise, the user status is switched to a non-walking state. Steps are considered continuous if the time point of one step and the time point of the previous step are within the maximum pause gap. Walking status may be enabled when there are multiple continuous steps. When walking status is deactivated, the number of continuous steps is reset to 0. Walking status is enabled when the first step is detected.
[0277] As shown in Figure 3, the sensor engine further performs parameter adaptation 350 after step validation. The parameters used for step counting and step length estimation may be dynamically adapted and personalized to individual users. As more data is accumulated for a user, the model becomes more accurate and reliable. In some embodiments, the parameters are adapted in an online manner using real-time streaming data. In some embodiments, n is expressed as the number of steps observed, and the average step time is The average values of peak height (peak_height), valley height (valley_height), step energy (step_energy), and step residual (step_residual) can also be updated. The variance of the step time is The parameters can be updated based on TIFF2024021088000005.tif15138. The variance values of peak_height, valley_height, step_energy, and step_residual can be updated similarly. To adapt to the latest user behavior, the algorithm only needs to consider the most recent N steps, i.e., n=1 if n>N. To further track the latest object movements, new atomic events can be extracted based on the updated parameters.
[0278] In some embodiments, the system can estimate the direction of travel based on a given initial direction θ(0) and calculate the change in direction from the gyroscope data. In some embodiments, the gyroscope readings are first projected onto the Earth reference frame, and then only changes in orientation in the XY plane are considered. Thus, the direction at time t is given by TIFF2024021088000006.tif2071. Errors accumulate over time but are later mitigated in the map engine 230.
[0279] In some embodiments, the system can also perform altitude estimation. Changes in altitude can be detected to infer floor changes. In some embodiments, the system can estimate altitude information from barometer data. A barometer is a scientific instrument used to measure atmospheric pressure in an environment. As an example, at low altitudes above sea level, air pressure decreases by approximately 1.2 kPa for every 100 meters. Barometers are available as low-cost sensors in modern smartphones. While barometers may be inadequate for estimating absolute altitude, they are sufficient for height change detection, such as estimating floor transitions for moving objects.
[0280] Referring back to FIG. 2 , map engine 230 can compare the distance traveled within a window estimated by map engine 230 with the distance traveled estimated by the raw output of sensor engine 220. If the two distances differ too much, map engine 230 may become stuck at some point. If such a condition is detected, map engine 230 can iteratively increase the search area of potential particles with each movement step until the search area reaches a predetermined maximum value. By doing so, map engine 230 is more likely to survive under various scenarios.
[0281] FIG. 8 shows a flowchart of an example method 800 for sensor-based motion tracking according to some embodiments of the present disclosure. In various embodiments, method 800 may be performed by the systems disclosed above. In operation 802, at least one sensing information (S1) is generated, e.g., by a sensor. In operation 804, at least one time-series SI (TSSI) is obtained, e.g., from the sensor and analyzed by a processor. The processor may be communicatively and / or physically coupled to the sensor. In operation 806, movement of an object within a location is tracked based on the at least one TSSI. In some embodiments, the sensor may be physically coupled to the object. In operation 808, an incremental distance associated with the object's movement in a first incremental time period is calculated based on the at least one TSSI. In operation 810, a direction associated with the object's movement in a second incremental time period is calculated based on the at least one TSSI. In operation 812, a next position of the object at a next time is calculated based on the object's current position at the current time, the object's current direction at the current time, the incremental distance, the orientation, and the location map. The order of the operations in FIG. 8 may be varied according to various embodiments of the present disclosure.
[0282] The following numbered sections provide examples for motion tracking.
[0283] Item 1. A tracking system / method / device / software comprising: at least one sensor capable of generating at least one sensing information (S1); a processor communicatively coupled to a memory and the at least one sensor; the memory; and a set of instructions stored in the memory that, when executed by the processor, cause the processor to: obtain at least one time-series of signal intensity (TSSI) from the at least one sensor; analyze the at least one TSSI; track movement of an object within a location based on the at least one TSSI; calculate, based on the at least one TSSI, an incremental distance associated with movement of the object in an incremental time period and a direction associated with movement of the object in another incremental time period; and calculate a next position of the object at a next time based on at least one of a current position of the object at a current time, a current orientation of the object at the current time, the incremental distance, the orientation, or a map of the location.
[0284] In some embodiments, the object may be a human or a smart device with a sensor (e.g., an IMU). The object's movement may be a human walking or running. The sensor may be an initial measurement unit (IMU), an accelerometer, a gyroscope, a magnetometer, or a barometer. The accelerometer may provide acceleration that can be analyzed to generate "steps" or "strides." The gyroscope may provide orientation / direction. The magnetometer may be used to improve the accuracy of the direction. The barometer may be used to determine if the user is moving up or down stairs.
[0285] Clause 2. The tracking system / method / device / software of clause 1, wherein the at least one sensor includes at least one of an inertial measurement unit (IMU), an accelerometer, a gyroscope, a magnetometer, or a barometer, and the at least one SI includes at least one of a force, an acceleration, an acceleration force, an acceleration in an instantaneous rest frame, a direction, an angle, an angular velocity, an angle, a magnetic field direction, a magnetic field strength, a magnetic field change, or air pressure.
[0286] Clause 3. The tracking system / method / device / software of clause 1, wherein the motion direction associated with the object's motion in another incremental period is calculated based on at least one of: an SI from the gyroscope, an SI from the magnetometer, at least one orientation in the another incremental period, an orientation before the another incremental period, an orientation after the another incremental period, an orientation associated with the start of the other incremental period, an orientation associated with the end of the other incremental period, an orientation of motion at the current time, an orientation of motion at the next time, an orientation of motion at the other time, a weighted average of two or more orientations associated with the other incremental period, or a median of two or more orientations associated with the other incremental period.
[0287] Clause 4. The tracking system / method / device / software of clause 1, further comprising a set of instructions that cause a processor to determine an underlying rhythmic movement associated with the object movement, identify at least one TSSI rhythmic movement associated with the underlying rhythmic movement, track the object movement based on the TSSI rhythmic movement, and calculate incremental distance based on the TSSI rhythmic movement.
[0288] Clause 5. The tracking system / method / device / software of clause 4, further comprising: calculating a time series of intermediate quantities (IQ) based on at least one TSSI; identifying a separate rhythmic movement of the time series of IQ (TSIQ) associated with the basic rhythmic movement; tracking the object movement based on the separate rhythmic movement of the TSIQ; and calculating an incremental distance based on the separate rhythmic movement of the TSIQ.
[0289] Clause 6. The tracking system / method / device / software of clause 5, further comprising a set of instructions that cause a processor to identify a time window of stable rhythmic movement of at least one TSSI or TSIQ associated with a stable underlying rhythmic movement associated with the object's movement, and add a timestamp to the time window if at least one of the following is met: a weighted average of IQ in a sliding window around the timestamp is greater than a first threshold, a characteristic of an autocorrelation function of IQ around the timestamp is greater than a second threshold, and another criterion associated with the timestamp.
[0290] Clause 7. The tracking system / method / device / software of clause 5, further including a set of instructions that cause a processor to identify at least one local characteristic point of IQ within the time window, the local characteristic point including at least one of a local maximum, a local minimum, a positive-to-negative IQ zero crossing, or a negative-to-positive IQ zero crossing; divide the time window into at least one segment based on a timestamp associated with the at least one local characteristic point, each segment spanning from one local characteristic point to another local characteristic point; and identify at least one of a full cycle, a rhythmic cycle, a combined cycle, an extended cycle, a double cycle, a quad cycle, a partial cycle, a half cycle, a quarter cycle, a gait cycle, a stride cycle, a step cycle, or a handcycle.
[0291] Clause 8. The tracking system / method / device / software of clause 5, further comprising: having a processor calculate a time series of Mean-Subtracted IQ (MSIQ) by subtracting a time series of local averages from the TSIQ, where the local average is obtained by applying a moving average filter to the TSIQ; dividing the time series of MSIQ within the time window (TSMSIQ) into at least one preliminary segment containing MSIQs with the same polarity; and identifying at least one local characteristic point of the MSIQ for each preliminary segment, where the local characteristic point may be a local maximum, minimum, reflection point, or a point of change from positive to negative. and further including a set of instructions to: identify, based on at least one of the local characteristic points, a TSMSIQ zero crossing, a negative to positive MSIQ zero crossing, a preliminary segment centroid, a median, a first quartile, a third quartile, a percentile, or a mode; divide the TSMSIQ into at least one segment based on at least the local characteristic points; and identify at least one of a full cycle, a rhythmic cycle, a combined cycle, an extended cycle, a double cycle, a quad cycle, a partial cycle, a half cycle, a quarter cycle, a gait cycle, a stride cycle, a step cycle, or a handcycle.
[0292] Item 9. The tracking system / method / device / software according to item 7 or 8, further comprising a processor configured to calculate a first period from a first maximum of TSIQ (or TSMSIQ or TSSI) to a second maximum of TSIQ (or TSMSIQ or TSSI), a first period from a first maximum of TSIQ (or TSMSIQ or TSSI) to a minimum of TSIQ (or TSMSIQ or TSSI), a second period from a first maximum of TSIQ (or TSMSIQ or TSSI) to a minimum of TSIQ (or TSMSIQ or TSSI), a zero crossing of TSIQ (or TSMSIQ or TSSI), a time period from a first maximum of TSIQ (or TSMSIQ or TSSI) to a minimum of TSIQ (or TSMSIQ or TSSI), a time period from a first maximum of TSIQ (or TSMSIQ or TSSI) to ... a third period from the first minimum of TSIQ (or TSMSIQ or TSSI) to the second minimum of TSIQ (or TSMSIQ or TSSI); a fourth period from the first minimum of TSIQ (or TSMSIQ or TSSI) to the maximum of TSIQ (or TSMSIQ or TSSI); a fifth period from the first minimum of TSIQ (or TSMSIQ or TSSI) to the second minimum of TSIQ (or TSMSIQ or TSSI); a sixth period from the first minimum of TSIQ (or TSMSIQ or TSSI) to the zero crossing of TSIQ (or TSMSIQ or TSSI) to the second minimum of TSIQ (or TSMSIQ or TSSI); a seventh period from the first zero crossing of TSIQ (or TSMSIQ or TSSII) to a maximum of TSIQ (or TSMSIQ or TSSII), a second zero crossing of TSIQ (or TSMSIQ or TSSII), a minimum of TSIQ (or TSMSIQ or TSSII), a third zero crossing of TSIQ (or TSMSIQ or TSSII), an eighth period from the first zero crossing to the minimum, second zero crossing, maximum, or third zero crossing, a ninth period from the first negative-to-positive zero crossing to a positive-to-negative zero crossing, a ninth period from the second negative-to-positive zero crossing, a tenth period from the first positive-to-negative zero crossing to a negative-to-positive zero crossing, or a cycle of oscillatory motion.
[0293] Clause 10. The tracking system / method / device / software of clause 9, further comprising a set of instructions that causes the processor to recognize a complete cycle based on a finite state machine (FSM) with local characteristic points as inputs for state transitions.
[0294] Clause 11. The tracking system / method / device / software of clause 9, further comprising a set of instructions that cause a processor to perform at least one of identifying a rhythmic cycle as a complete cycle, identifying a compound cycle as two or more complete cycles, identifying an extended cycle as two or more complete cycles, identifying a double cycle as two consecutive cycles, identifying a quad cycle as four consecutive cycles, identifying a partial cycle as identifying at least two local characteristic points that match at least one of the first period, the second period, the third period, the fourth period, the fifth period, the sixth period, the seventh period, the eighth period, the ninth period, the tenth period, or the oscillatory motion cycle, identifying a step cycle as a complete cycle, identifying a stride cycle as a double cycle, identifying a gait cycle as either a step cycle or a stride cycle, and recognizing a handcycle as either a complete cycle or a double cycle. Clause 12. The tracking system / method / device / software of clause 7 or 8, further comprising a set of instructions that cause the processor to calculate at least one cycle feature based on at least one of the IQ within the time window, at least one local characteristic point of the IQ, at least one segment, or at least one cycle.
[0295] Clause 13. The tracking system / method / device / software according to clause 12, wherein the at least one cycle feature includes at least one of the following gait-speed related features, wherein the gait speed is pre-processed: at least one gait speed each associated with a timestamp within the time window; at least one average speed each associated with a timestamp within the time window and being at least one of an average, weighted average, and trimmed average of the gait speed within a subwindow around the timestamp; at least one maximum speed each associated with a timestamp within the time window and being a maximum of the gait speed within the subwindow around the timestamp; at least one minimum speed each associated with a timestamp within the time window and being a minimum of the gait speed within the subwindow around the timestamp; at least one speed variance each associated with a timestamp within the time window and being a variance of the gait speed within the subwindow around the timestamp; at least one speed deviation, each associated with a timestamp, which is the Xth percentile of a sample distribution of the average subtracted speed in a subwindow of the time window around the timestamp, where the average subtracted speed is the gait speed minus the average speed, and X is a number between 0 and 100; at least one positive maximum speed deviation, each associated with a timestamp, which is the maximum value of the average subtracted speed in a subwindow of the time window around the timestamp; and at least one negative maximum speed deviation, each associated with a timestamp, which is the maximum negative value of the average subtracted speed in a subwindow of the time window around the timestamp; at least one speed peak variance, each associated with a timestamp, which is the variance of at least one local peak (maximum) of the gait speed in the subwindow of the time window around the timestamp; and at least one speed valley variance, each associated with a timestamp, which is the variance of at least one local valley (minimum) of the gait speed within the subwindow of the time window around the timestamp;at least one speed ACF k-th peak, which is a k-th local peak of an autocorrelation function (ACF) of gait velocity at a timestamp, where k is a positive integer; at least one average speed ACF k-th peak, which is each associated with a timestamp and is at least one of an average, weighted average, and trimmed average of the speed ACF k-th peak in a sub-window of the time window around the timestamp; at least one speed ACF k-th peak variance, which is each associated with a timestamp and is a variance value of the speed ACF k-th peak in a sub-window of the time window around the timestamp; at least one speed ACF k-th peak variance, which is each associated with a timestamp and is a difference between the k-th local peak of gait velocity and the (k-1)-th local peak of the ACF at the timestamp, where k is a positive integer; and at least one average speed ACF k-th peak-difference, which is each associated with a timestamp and is at least one of an average, weighted average, and trimmed average of the speed ACF k-th peak-difference in a sub-window of the time window around the timestamp. at least one speed ACF kth peak-difference variance, each associated with a timestamp and being a variance value of the speed ACF kth peak-difference, which is a variance value of the speed ACF kth peak-difference in a sub-window of the time window around the timestamp; at least one speed ACF kth peak-difference variance, each associated with a timestamp and being a count of the speed ACF significant peaks at the timestamp; at least one speed ACF peak count, each associated with a timestamp and being at least one of an average, a weighted average, and a trimmed average of the speed ACF peak count in a sub-window of the time window around the timestamp; at least one speed ACF kth peak-difference variance, each associated with a timestamp and being a variance value of the speed ACF peak count in a sub-window of the time window around the timestamp;at least one speed ACF peak-count-pdf, where the sample probability of the speed ACF peak-count is k within a subwindow of the time window around the timestamp, where k is a non-negative integer; and at least one recurrent plot (RP), each associated with a timestamp and being a two-dimensional plot of R(i,j), where both i and j are running time indices in the subwindow of the time window around the timestamp, where R(i,j) is a scalar similarity function between a first feature vector at time i and a second feature vector at time j, each of the first feature vector and the second feature vector being a feature vector at time t that includes at least one gait feature in a sliding subwindow of the time window around time t .... and at least one recurrent plot (RP) feature including at least one of a diagonal line, and another RP feature; and at least one scaled speed-peak ACF, each of which is a speed ACF associated with a timestamp of a local peak (maximum) of gait velocity in a subwindow of the time window, the speed ACF being scaled so that its first peak occurs at a selected time lag. The at least one scaled speed-peak ACF and the at least one scaled peak ACF feature each include at least one scaled speed-peak ACF. at least one scaled peak ACF feature, wherein the sub-window is at least one of an entire time window, a sliding window, at least one gait cycle, at least one step segment, and another sub-window; and at least one harmonic ratio, each associated with a gait cycle, the harmonic ratio being the ratio of the sum of the amplitudes of the even harmonics of the Fourier transform of the gait velocity in the gait cycle to the sum of the amplitudes of the odd harmonics of the Fourier transform of the gait velocity in the gait cycle;at least one harmonic feature calculated based on a function of even terms of a frequency transformation of gait velocity in a gait cycle and a function of odd terms of the frequency transformation; at least one generalized harmonic feature associated with a gait cycle and calculated based on a first function of even terms of a transformation of gait features in a gait cycle and a second function of odd terms of the transformation of gait features; and at least one function of the above features and a function of another feature.
[0296] Clause 14. The tracking system / method / device / software of clause 12, wherein the at least one cycle feature includes at least one of the following gait-acceleration related features: at least one gait acceleration, each associated with a timestamp within the time window, which is a derivative of gait velocity; at least one gait velocity, each associated with a timestamp within the time window, which is at least one of an average, a weighted average, and a trimmed average of gait acceleration in a sub-window of the time window around the timestamp; at least one average acceleration, each associated with a timestamp within the time window, which is a maximum value of gait acceleration in a sub-window of the time window around the timestamp; at least one maximum acceleration, each associated with a timestamp within the time window, which is a minimum value of gait acceleration in a sub-window of the time window around the timestamp. at least one minimum acceleration, each associated with a timestamp in the time window and representing the variance of gait acceleration in a sub-window of the time window around the timestamp; at least one acceleration variance, each associated with a timestamp in the time window and representing the X percentile of a sample distribution of average subtracted acceleration in a sub-window of the time window around the timestamp, where the average subtracted acceleration is gait acceleration minus the average acceleration, where X is a number between 0 and 100; at least one acceleration deviation, each associated with a timestamp and representing the maximum value of average subtracted acceleration in a sub-window of the time window around the timestamp; at least one maximum acceleration deviation, each associated with a timestamp and representing the maximum negative value of average subtracted acceleration in a sub-window of the time window around the timestamp; at least one maximum negative acceleration deviation, each associated with a timestamp and representing the variance of at least one local peak (local maximum) of gait acceleration in a sub-window of the time window around the timestamp;at least one acceleration valley variance, each associated with a timestamp, which is a variance value of at least one local valley (local minimum) of gait acceleration in a sub-window of the time window around the timestamp; at least one acceleration ACF k-th peak, each associated with a timestamp, which is a k-th local peak of the autocorrelation function (ACF) of gait acceleration in the sub-window of the time window around the timestamp; at least one acceleration ACF k-th peak, each associated with a timestamp, which is at least one of an average, a weighted average, and a trimmed average of the acceleration ACF k-th peak in the sub-window of the time window around the timestamp; at least one acceleration ACF k-th peak variance, each associated with a timestamp, which is a variance value of the acceleration ACF k-th peak in the sub-window of the time window around the timestamp; at least one acceleration ACF k-th peak variance, each associated with a timestamp, which is a difference between the k-th local peak and the (k-1)-th local peak of the ACF of gait acceleration in the sub-window of the time window around the timestamp; at least one acceleration ACF k-th peak-difference, each associated with a timestamp, which is a difference between the k-th local peak and the (k-1)-th local peak of the ACF of gait acceleration in the sub-window of the time window around the timestamp; at least one average acceleration ACF kth peak-difference, each associated with a timestamp and being at least one of an average, weighted average, and trimmed average of the kth peak-difference; at least one acceleration ACF kth peak-difference variance, each associated with a timestamp and being a count of significant peaks of the acceleration ACF at the timestamp; at least one acceleration ACF peak count, each associated with a timestamp and being at least one of an average, weighted average, and trimmed average of the acceleration ACF peak count in a subwindow of the time window around the timestamp;at least one acceleration ACF kth peak-difference variance, each associated with a timestamp, which is a variance value of acceleration ACF peak counts in a sub-window of the time window around the timestamp; a sample probability of k for the acceleration ACF peak-counts in the sub-window of the time window around the timestamp, where k is a non-negative integer; at least one acceleration ACF peak-count pdf, each associated with a timestamp; at least one recurrent plot (RP), which is a two-dimensional plot of R(i,j), where both i and j are running time indices in the sub-window of the time window around the timestamp; R(i,j) is a scalar similarity function between a first feature vector at time i and a second feature vector at time j, each of the first feature vector and the second feature vector being a feature vector at time t including at least one gait feature in a sliding sub-window of the time window around time t; at least one recurrent plot (RP), each associated with a timestamp; a recurrence rate, determinism, entropy, mean value, and the like. at least one recurrent plot (RP) feature including at least one of a diagonal line, and another RP feature, each an acceleration ACF associated with a timestamp of a local peak (maximum) of gait acceleration in a subwindow of the time window, the acceleration ACF scaled so that its first peak occurs at a selected time lag; at least one scaled acceleration peak ACF feature, each of which is at least one scaled acceleration peak ACF feature, where the subwindow is at least one of the entire time window, a sliding window, at least one gait cycle, at least one step segment, and another subwindow; at least one scaled peak ACF feature, each associated with a gait cycle and which is the ratio of the sum of the amplitudes of the even harmonics of the Fourier transform of the gait acceleration in the gait cycle to the sum of the amplitudes of the odd harmonics of the Fourier transform;at least one harmonic ratio, at least one harmonic feature each associated with a gait cycle and calculated based on a function of an even term of a frequency transformation of gait acceleration in the gait cycle and a function of an odd term of the frequency transformation; at least one generalized harmonic feature each associated with a gait cycle and calculated based on a first function of an even term of a transformation of a gait feature in the gait cycle and a second function of an odd term of the transformation of the gait feature; at least one function of the above features and a function of another feature;
[0297] Clause 15. The tracking system / method / device / software of clause 12, wherein the at least one gait feature comprises at least one of the following step-related features: at least one gait velocity, each associated with a timestamp within the time window; at least one step length, each associated with a timestamp within the time window and being an integral of the gait velocity over a respective step segment around the timestamp; at least one step period, each associated with a timestamp within the time window and being a duration of a respective step segment around the timestamp; at least one step frequency, each associated with a timestamp within the time window and being inversely proportional to a respective step period around the timestamp; at least one step frequency, each associated with a timestamp within the time window and being at least one of an average, weighted average, and trimmed average of the gait velocity in a respective step segment around the timestamp; at least one stepwise maximum velocity, each associated with a timestamp within the time window and being a maximum gait velocity in a respective step segment around the timestamp; at least one stepwise minimum velocity, each associated with a timestamp within the time window and being the variance of gait velocity within each step segment around the timestamp; at least one stepwise velocity variance, each associated with a timestamp within the time window and being the X-th percentile of the sample distribution of average subtracted velocity in each step segment around the timestamp, where average subtracted velocity is gait velocity minus stepwise average velocity, where X is a number between 0 and 100; at least one stepwise velocity deviation, each associated with a timestamp within the time window and being the average, weighted average, of gait acceleration in each step segment around the timestamp;and trimmed mean, where gait acceleration is a derivative of gait velocity; at least one stepwise average acceleration, each associated with a timestamp within the time window and being the maximum gait acceleration in a respective step segment around the timestamp; at least one stepwise maximum acceleration, each associated with a timestamp within the time window and being the minimum gait acceleration in a respective step segment around the timestamp; and at least one stepwise minimum acceleration, each associated with a timestamp within the time window and being the variance of gait acceleration in a respective step segment around the timestamp. at least one stepwise acceleration variance, each associated with a timestamp within the time window and representing the X percentile of the sample distribution of mean subtracted acceleration in each step segment around the timestamp, where mean subtracted acceleration is gait acceleration minus stepwise average acceleration, and X is a number between 0 and 100; at least one stepwise acceleration deviation, each associated with a timestamp within the time window and representing the step length, step period, step frequency, stepwise average velocity, stepwise maximum velocity, stepwise minimum velocity, stepwise velocity variance, stepwise velocity deviation, stepwise average acceleration, stepwise maximum acceleration, stepwise minimum acceleration, stepwise acceleration variance, stepwise acceleration deviation, stepwise velocity peak variance, stepwise velocity valley variance, stepwise velocity ACF k-th peak, stepwise average velocity ACF k-th peak, stepwise velocity ACF k-th peak variance, stepwise velocity ACF k-th peak-difference, stepwise average velocity ACF k-th peak-difference, and stepwise velocity ACF kth peak-difference variance, stepwise velocity ACF peak count, stepwise average velocity ACF kth peak-difference, stepwise velocity ACF kth peak-difference variance, stepwise velocity ACF peak-count-pdf, stepwise recurrent plot (RP), stepwise recurrent plot (RP) features,a stepwise scaled rate-peak ACF, a stepwise scaled peak ACF feature, a stepwise harmonic ratio, a stepwise harmonic feature, a stepwise generalized harmonic feature, a stepwise symmetry measure, at least one step statistic that is at least one of a function of at least one of the above statistics, a function of another statistic, and a function of another step statistic, each associated with a timestamp within the time window and that is at least one of an average, a weighted average, and a trimmed average of the step statistics within a subwindow of the time window around the timestamp, each associated with a timestamp within the time window and that is at least one of an average, a weighted average, and a trimmed average of the step statistics within a subwindow of the time window around the timestamp, at least one odd average step statistic, which is at least one of an average, weighted average, and trimmed average of step statistics of even step segments within a sub-window of the time window around the timestamp; at least one even average step statistic, which is at least one of an average, weighted average, and trimmed average of step statistics of even step segments within a sub-window of the time window around the timestamp; at least one maximum step statistic, which is at least one of an average, weighted average, and trimmed average of step statistics of even step segments within a sub-window of the time window around the timestamp; at least one odd maximum step statistic, which is at least one of an average, weighted average, and trimmed average of step statistics of even step segments within a sub-window of the time window around the timestamp; at least one even maximum step statistic, which is at least one of an average, weighted average, and trimmed average of step statistics of even step segments within a sub-window of the time window around the timestamp; at least one minimum step statistic, which is at least one of an average, weighted average, and trimmed average of step statistics of even step segments within a sub-window of the time window around the timestamp;at least one odd minimum step statistic, each associated with a timestamp within the time window and being the minimum of the step statistics of the even step segments within a sub-window of the time window around the timestamp; at least one even minimum step statistic, each associated with a timestamp within the time window and being the minimum of the step statistics of the even step segments within a sub-window of the time window around the timestamp; at least one step statistic variance, each associated with a timestamp within the time window and being the variance of the step statistics of the odd step segments within a sub-window of the time window around the timestamp; at least one odd step statistic variance, each associated with a timestamp within the time window and being the variance of the step statistics of the odd step segments within a sub-window of the time window around the timestamp; at least one even step statistic variance, each associated with a timestamp within the time window and being the variance of the step statistics of the even step segments within a sub-window of the time window around the timestamp; X is the X-percentile of the sample distribution of the average subtraction step statistic for an odd step segment in a sub-window of the time window around a time stamp, the average subtraction step statistic for an odd step segment being the step statistic for the odd step segment minus the odd average step statistic, and X is at least one step statistic deviation, a number between 0 and 100, each associated with a time stamp within the time window, the X-percentile of the sample distribution of the average subtraction step statistic for an odd step segment in a sub-window of the time window around the time stamp, the average subtraction step statistic for an odd step segment being the step statistic for the odd step segment minus the odd average step statistic, and X is at least one odd step statistic deviation, a number between 0 and 100, each associated with a time stamp within the time window, the X-percentile of the sample distribution of the average subtraction step statistic for an even step segment in a sub-window of the time window around the time stamp,the average subtracted step statistic for the even step segment is the step statistic for the even step segment minus the even average step statistic, where X is a number between 0 and 100; at least one even step statistic deviation, each associated with a timestamp within the time window, at least one statistic of the step statistic being at least one of the average step statistic, the maximum step statistic, the minimum step statistic, the step statistic variance, the step statistic deviation, and another statistic of the step statistic, each associated with a timestamp within the time window; at least one odd statistic of the step statistic being at least one of the odd average step statistic, the odd maximum step statistic, the odd minimum step statistic, the odd step statistic variance, the odd step statistic deviation, and another odd statistic of the step statistic, each associated with a timestamp within the time window, At least one even statistic of the step statistics, which is at least one of a step statistic, an even step statistic variance, an even step statistic deviation, and another even statistic of the step statistics; a left step statistic, a right step statistic, a front left step statistic, a front right step statistic, a rear left step statistic, a rear right step statistic, a wavefront step statistic, an odd wavefront step statistic, an even wavefront step statistic, a ratio of an even statistic of the step statistics to an odd statistic of the step statistics; a difference between an even statistic of the step statistics and an odd statistic of the step statistics; a similarity between an even statistic of the step statistics and an odd statistic of the step statistics; a statistic of the step statistics, an odd statistic of the step statistics, and at least one function of an even statistic of the step statistics; a ratio between a function of an even statistic of the step statistics and a function of a function of an odd statistic of the step statistics; a first function of a second function of an even statistic of the step statistics and a third function of an odd statistic of the step statistics; another statistic of the step statistics.
[0298] Clause 16. The tracking system / method / device / software of clause 12, wherein the at least one gait feature comprises at least one of the following stride-related features: at least one gait velocity, each associated with a timestamp within the time window; at least one stride length, each associated with a timestamp within the time window and being the integral of the gait velocity over a respective gait cycle around the timestamp; at least one stride duration, each associated with a timestamp within the time window and being the duration of a respective gait cycle around the timestamp; at least one stride frequency, each associated with a timestamp within the time window and being inversely proportional to a respective stride duration around the timestamp; stridewise average velocity, each associated with a timestamp within the time window and being at least one of the mean, weighted average, and trimmed average of the gait velocity in a respective gait cycle around the timestamp; and at least one stride frequency, each associated with a timestamp within the time window and being the maximum gait velocity in a respective gait cycle around the timestamp. at least one stridewise maximum velocity, each associated with a timestamp within the time window, and at least one stridewise minimum velocity, which is the minimum gait velocity within each gait cycle around the timestamp; at least one stridewise velocity variance, which is the variance of gait velocity within each gait cycle around the timestamp; at least one stridewise velocity variance, each associated with a timestamp within the time window, and which is the X-percentile of the sample distribution of mean subtraction velocity in each gait cycle around the timestamp, where mean subtraction velocity is gait velocity minus stridewise mean velocity, and X is a number between 0 and 100; at least one stridewise velocity deviation, each associated with a timestamp within the time window, and which is at least one of the mean, weighted mean, and trimmed mean of gait acceleration in each gait cycle around the timestamp;at least one stridewise mean acceleration, where gait acceleration is a derivative of gait velocity; at least one stridewise maximum acceleration, where each stridewise maximum acceleration is associated with a timestamp within the time window and is the maximum gait acceleration in each gait cycle around the timestamp; at least one stridewise minimum acceleration, where each stridewise maximum acceleration is associated with a timestamp within the time window and is the minimum gait acceleration in each gait cycle around the timestamp; and at least one stridewise minimum acceleration, where each stridewise minimum acceleration is associated with a timestamp in the time window and is the variance of gait acceleration in each gait cycle around the timestamp. at least one stridewise acceleration variance, each associated with a timestamp within the time window and representing an X percentile of a sample distribution of mean subtracted acceleration in each gait cycle around the timestamp, the mean subtracted acceleration being gait acceleration minus stridewise mean acceleration, where X is a number between 0 and 100; at least one stridewise acceleration deviation, each associated with a timestamp within the time window and representing a stride length, stride duration, stride frequency, stridewise mean velocity, stridewise maximum velocity, stridewise minimum velocity, stridewise velocity variance, stridewise velocity deviation, stridewise mean acceleration, stridewise maximum acceleration, stridewise minimum acceleration, stridewise acceleration variance, stridewise acceleration deviation, stridewise velocity peak variance, stridewise velocity valley variance, stridewise velocity ACF k-th peak, stridewise mean velocity ACF k-th peak, stridewise velocity ACF k-th peak variance, stridewise velocity ACF kth peak-difference, stridewise mean velocity ACF kth peak-difference, stridewise velocity ACF kth peak-difference variance, stridewise velocity ACF peak count, stridewise mean velocity ACF kth peak-difference, stridewise velocity ACF kth peak-difference variance, stridewise velocity ACF peak-count-pdf, stridewise recurrent plot (RP), stridewise recurrent plot (RP) features,a stridewise scaled velocity-peak ACF, a stridewise scaled peak ACF feature, a stridewise harmonic ratio, a stridewise harmonic feature, a stridewise generalized harmonic feature, a stridewise symmetry measure, at least one stride statistic that is at least one of a function of at least one of the above statistics, a function of another statistic, and a function of another stride statistic, each associated with a timestamp within the time window and at least one average stride statistic that is at least one of an average, a weighted average, and a trimmed average of the stride statistic within a sub-window of the time window around the timestamp, each associated with a timestamp within the time window and at least one stride statistic of an odd gait cycle within a sub-window of the time window around the timestamp. at least one odd average stride statistic, which is at least one of an average, a weighted average, and a trimmed average of the stride statistics, each associated with a timestamp within the time window and which is at least one of an average, a weighted average, and a trimmed average of the stride statistics of even gait cycles within a sub-window of the time window around the timestamp; at least one maximum stride statistic, each associated with a timestamp within the time window and which is a maximum value of the stride statistics of odd gait cycles within a sub-window of the time window around the timestamp; at least one odd maximum stride statistic, each associated with a timestamp within the time window and being the maximum value of the stride statistics of an even gait cycle within a sub-window of the time window around the timestamp; at least one even maximum stride statistic, each associated with a timestamp within the time window and being the minimum value of the stride statistics within a sub-window of the time window around the timestamp;at least one odd minimum stride statistic, each associated with a timestamp within the time window and being the minimum of the stride statistics of the odd gait cycles within a sub-window of the time window around the timestamp; at least one even stride statistic, each associated with a timestamp within the time window and being the minimum of the stride statistics of the even gait cycles within a sub-window of the time window around the timestamp; at least one stride statistic variance, each associated with a timestamp within the time window and being the variance of the stride statistics of the odd gait cycles within a sub-window of the time window around the timestamp; at least one odd stride statistic variance, each associated with a timestamp within the time window and being the variance of the stride statistics of the odd gait cycles within a sub-window of the time window around the timestamp; and X percentile of the sample distribution of the average subtraction stride statistic in a sub-window of the time window around the timestamp, wherein the average subtraction stride statistic for odd gait cycles is the stride statistic for odd gait cycles minus the odd mean stride statistic, and X is at least one stride statistic deviation, a number between 0 and 100, each associated with a timestamp within the time window, which is the X percentile of the sample distribution of the average subtraction stride statistic for odd gait cycles in a sub-window of the time window around the timestamp, wherein the average subtraction stride statistic for odd gait cycles is the stride statistic for odd gait cycles minus the odd mean stride statistic, and X is at least one odd stride statistic deviation, a number between 0 and 100, each associated with a timestamp within the time window, which is the X percentile of the sample distribution of the average subtraction stride statistic for even gait cycles in a sub-window of the time window around the timestamp,the average subtracted stride statistic for an even gait cycle is the stride statistic for an even gait cycle minus the even average stride statistic, where X is a number between 0 and 100; at least one even stride statistic deviation, each associated with a timestamp within the time window, at least one statistical value of the stride statistic being at least one of an average stride statistic, a maximum stride statistic, a minimum stride statistic, a stride statistic variance, a stride statistic deviation, and another statistical value of the stride statistic, each associated with a timestamp within the time window; and at least one odd statistical value of the stride statistic being at least one of an odd average stride statistic, an odd maximum stride statistic, an odd minimum stride statistic, an odd stride statistic variance, an odd stride statistic deviation, and another odd statistical value of the stride statistic, each associated with a timestamp within the time window, , at least one even statistic of a stride statistic that is at least one of the even stride statistic variance, the even stride statistic deviation, and another even statistic of a stride statistic, a left stride statistic, a right stride statistic, an anterior left stride statistic, an anterior right stride statistic, a posterior left stride statistic, a posterior right stride statistic, a wavefront stride statistic, an odd wavefront stride statistic, an even wavefront stride statistic, a ratio of an even statistic of a stride statistic to an odd statistic of a stride statistic, a stride statistic of a stride statistic a difference between an even stride statistic and an odd stride statistic; a similarity between an even stride statistic and an odd stride statistic; a function of at least one of a stride statistic, an odd stride statistic, and an even stride statistic; a ratio between a function of an even stride statistic and a function of an odd stride statistic; a first function of a second function of an even stride statistic and a third function of an odd stride statistic; or another stride statistic.
[0299] Clause 17. The tracking system / method / device / software of clause 12, wherein the at least one gait feature comprises at least one of the following stride sequence-related features: at least one gait velocity, each associated with a timestamp within the time window; at least one stride sequence length, each associated with a timestamp within the time window and being the integral of the gait velocity over a respective extended gait cycle around the timestamp; at least one stride sequence duration, each associated with a timestamp within the time window and being the duration of a respective extended gait cycle around the timestamp; at least one stride sequence frequency, each associated with a timestamp within the time window and being inversely proportional to a respective stride sequence duration around the timestamp; at least one stride sequence-wise average velocity, each associated with a timestamp within the time window and being at least one of the average, weighted average, and trimmed average of the gait velocity in a respective extended gait cycle around the timestamp; and at least one stride sequence-wise average velocity, each associated with a timestamp within the time window and being the maximum gait velocity in a respective extended gait cycle around the timestamp. at least one stride sequence-wise maximum velocity, each associated with a timestamp within the time window and which is the minimum gait velocity within a respective extended gait cycle around the timestamp; at least one stride sequence-wise minimum velocity, each associated with a timestamp within the time window and which is the variance of gait velocities within a respective extended gait cycle around the timestamp; at least one stride sequence-wise velocity variance, each associated with a timestamp within the time window and which is the X percentile of the sample distribution of mean subtraction velocity in a respective extended gait cycle around the timestamp, where the mean subtraction velocity is the gait velocity minus the stride sequence-wise mean velocity, and X is a number between 0 and 100;at least one stride sequence-wise average acceleration, each associated with a timestamp within the time window and being at least one of an average, a weighted average, and a trimmed average of gait acceleration in a respective extended gait cycle around the timestamp, where the gait acceleration is a derivative of gait velocity; at least one stride sequence-wise maximum acceleration, each associated with a timestamp within the time window and being a maximum gait acceleration in a respective extended gait cycle around the timestamp; at least one stride sequence-wise minimum acceleration, each associated with a timestamp in the time window and being a variance value of gait acceleration in a respective extended gait cycle around the timestamp; at least one stride sequence-wise acceleration variance, each associated with a timestamp in the time window and being an X-percentile of a sample distribution of mean subtracted acceleration in a respective extended gait cycle around the timestamp, the mean subtracted acceleration being gait acceleration minus the stride sequence-wise mean acceleration, where X is a number between 0 and 100; associated with the timestamp in the block, and stride sequence length, stride sequence period, stride sequence frequency, stride sequence wise average velocity, stride sequence wise maximum velocity, stride sequence wise minimum velocity, stride sequence wise velocity variance, stride sequence wise velocity deviation, stride sequence wise average acceleration, stride sequence wise maximum acceleration, stride sequence wise minimum acceleration, stride sequence wise acceleration variance, stride sequence wise acceleration deviation, stride sequence wise velocity peak variance, stride sequence wise velocity valley variance, stride sequence wise velocity ACF kth peak, stride sequence wise average velocity ACF kth peak, stride sequence wise velocity ACF kth peak variance,stride sequence wise velocity ACF kth peak-difference, stride sequence wise average velocity ACF kth peak-difference, stride sequence wise velocity ACF kth peak-difference variance, stride sequence wise velocity ACF peak count, stride sequence wise average velocity ACF kth peak-difference, stride sequence wise velocity ACF kth peak-difference variance, stride sequence wise velocity ACF peak-count-pdf, stride sequence wise recurrent plot, stride sequence wise recurrent plot (RP) feature, stride sequence wise scaled velocity-peak ACF, stride sequence wise scaled peak ACF feature, stride sequence wise harmonic ratio, stride sequence wise harmonic feature, stride sequence wise generalized harmonic feature, stride sequence wise symmetry measure, at least one stride sequence statistic that is at least one of a function of at least one of the above statistics, a function of another statistic, and a function of another stride sequence statistic, each associated with a timestamp in the time window and a stride in a subwindow of the time window around the timestamp. at least one average stride sequence statistic, the average, weighted average, and trimmed average of the sequence statistics, each associated with a time stamp within the time window; at least one odd average stride sequence statistic, the average, weighted average, and trimmed average of the stride sequence statistics of odd extended gait cycles within a sub-window of the time window around the time stamp, each associated with a time stamp within the time window; and at least one even average stride sequence statistic, the average, weighted average, and trimmed average of the stride sequence statistics of even extended gait cycles within a sub-window of the time window around the time stamp, each associated with a time stamp within the time window;at least one maximum stride sequence statistic, each associated with a timestamp within the time window and being the maximum value of the stride sequence statistics of an odd extended gait cycle within a sub-window of the time window around the timestamp; at least one odd maximum stride sequence statistic, each associated with a timestamp within the time window and being the maximum value of the stride sequence statistics of an even extended gait cycle within a sub-window of the time window around the timestamp; at least one even maximum stride sequence statistic, each associated with a timestamp within the time window and being the maximum value of the stride sequence statistics of an even extended gait cycle within a sub-window of the time window around the timestamp; at least one minimum stride sequence statistic, each associated with a timestamp within the time window and being the minimum value of the stride sequence statistics of an odd extended gait cycle within a sub-window of the time window around the timestamp; at least one even minimum stride sequence statistic value, which is the minimum of the stride sequence statistics of even extended gait cycles within a sub-window of the time window; at least one stride sequence statistic variance value, each associated with a time stamp within the time window and which is the variance of the stride sequence statistics within a sub-window of the time window around the time stamp; at least one odd stride sequence statistic variance value, each associated with a time stamp within the time window and which is the variance of the stride sequence statistics of odd extended gait cycles within a sub-window of the time window around the time stamp; at least one even stride sequence statistic variance value, each associated with a time stamp within the time window and which is the variance of the stride sequence statistics of even extended gait cycles within a sub-window of the time window around the time stamp;at least one stride sequence statistic deviation, each associated with a timestamp within the time window and being an X percentile of the sample distribution of the average subtraction stride sequence statistic in a sub-window of the time window around the timestamp, the average subtraction stride sequence statistic for odd extended gait cycles being the stride sequence statistic for odd extended gait cycles minus the odd mean stride sequence statistic, X being a number between 0 and 100; at least one stride sequence statistic deviation, each associated with a timestamp within the time window and being an X percentile of the sample distribution of the average subtraction stride sequence statistic for odd extended gait cycles in a sub-window of the time window around the timestamp, the average subtraction stride sequence statistic for odd extended gait cycles being the stride sequence statistic for odd extended gait cycles minus the odd mean stride sequence statistic, X being a number between 0 and 100; the X percentile of the sample distribution of the average subtracted stride sequence statistic for an even extended gait cycle in a subwindow of the time window around the time stamp, the average subtracted stride sequence statistic for an even extended gait cycle being the stride sequence statistic for an even extended gait cycle minus the even average stride sequence statistic, where X is a number between 0 and 100; at least one even stride sequence statistic deviation, each associated with a time stamp within the time window, the average stride sequence statistic, the maximum stride sequence statistic, the minimum stride sequence statistic, the stride sequence statistic variance, the stride sequence statistic deviation, and at least one other statistical value of the stride sequence statistic, each associated with a time stamp within the time window, the odd average stride sequence statistic, the odd maximum stride sequence statistic, the odd minimum stride sequence statistic, the odd stride sequence statistic variance, the odd stride sequence statistic deviation;and at least one odd statistic of stride sequence statistics, each associated with a timestamp within the time window, the odd statistic being at least one of an even average stride sequence statistic, an even maximum stride sequence statistic, an even minimum stride sequence statistic, an even stride sequence statistic variance, an even stride sequence statistic deviation, and another even statistic of stride sequence statistics, an overall stride sequence statistic, a posterior stride sequence statistic, a wavefront stride sequence statistic, a wavefront stride sequence statistic of phase 1, a wavefront stride sequence statistic for phase 1, a wavefront stride sequence statistic for phase 2, a wavefront stride sequence statistic for phase 3, a wavefront stride sequence statistic for phase 4, a wavefront stride sequence statistic for the nth phase, a ratio between an even statistic of stride sequence statistics and an odd statistic of stride sequence statistics, a difference between an even statistic of stride sequence statistics and an odd statistic of stride sequence statistics, a similarity between an even statistic of stride sequence statistics and an odd statistic of stride sequence statistics, and at least one even statistic of stride sequence statistics that is at least one of a function of the stride sequence statistic, the odd statistic of stride sequence statistics, and the even statistic of stride sequence statistics, a ratio between a function of the even statistic of stride sequence statistics and a function of the odd statistic of stride sequence statistics, a first function of a second function of the even statistic of stride sequence statistics, a third function of the odd statistic of stride sequence statistics, and another statistic of stride sequence statistics.
[0300] Clause 18. The tracking system / method / device / software of clause 12, wherein the tracking system / method / device / software communicates one of the at least one cycle characteristic to a server.
[0301] Clause 19. The tracking system / method / device / software of clause 12, comprising communicating the cycle characteristics to a user device and generating a representation of the cycle characteristics or a history of the cycle characteristics to a user of the user device.
[0302] Item 20. The tracking system / method / device / software of Item 1, which communicates to the server the next location of the object at the next time.
[0303] Clause 21. The tracking system / method / device / software of clause 1, comprising communicating a next position of the object to a user device, generating a representation of at least one of the next position, a movement trajectory, or a track of a user of the user device.
[0304] Clause 22. The tracking system / method / device / software of clauses 7 or 8 or 9, comprising calculating the amount of cycles in incremental periods and calculating the incremental distance as the product of the amount of cycles multiplied by the distance of the cycle.
[0305] In some embodiments, the cycle distance can be determined by some training. For example, in a calibration or training process, an object (e.g., a human user) walks while a reference distance may be obtained using another location system, which may include, for example, GPS plus triangulation or trilateration when the object is walking outdoors, CSI-based localization if available, next-generation localization using WiFi signals (e.g., based on 802.11ay), UWB-based localization, radar-based localization, or mmWave-based localization, etc. To calculate the cycle distance, the system can analyze the rhythmic behavior of the TSIQ or TSSI, count the number of cycles (quantity) within a time window, and then calculate the cycle distance by dividing the reference distance within the time window by the number of cycles within the time window.
[0306] Clause 23. The tracking system / method / device / software of clause 22, comprising calculating cycle distance based on at least one of user input, training values obtained during a training phase, a calibration or training process using "reference distances" from other localization modalities, and adaptively calculated values based on recent periods of stable rhythmic movement.
[0307] Clause 24. The tracking system / method / device / software of clause 1, wherein the next position of the object at the next time is calculated using a particle filter.
[0308] Clause 25. The tracking system / method / device / software of clause 1, wherein calculating a next position of the object at a next time includes initializing an initial value (N_0) of a first candidate position of the object at a beginning (t=0), iteratively calculating a first dynamic number (N_(i+1)) of a first candidate position of the object at a next time (t=(i+1)) based on a second dynamic number (N_i) of a second candidate position of the object at a current time (t=i), and calculating a next position of the object at the next time based on at least one of the first dynamic number of the first candidate position at the next time and the second dynamic number of the second candidate position at the current time.
[0309] Item 26. A region tracking system / method / device / software according to item 25, wherein an object moves within a region represented by a map, the map is a multi-dimensional map represented as a multi-dimensional array A, the reachability of each position of the region is represented by a corresponding array element a which is a logical value between 0 and 1, when the corresponding array element satisfies a = 0, the position of the region is unreachable and prohibited, when the corresponding array element satisfies a = 1, the position of the region is fully reachable, when the corresponding array element satisfies 0 < a < 1, the position of the region is partially reachable, each of the next position, the current position, the first dynamic number of the first candidate position, and the second dynamic number of the second candidate position is a point within the region, and is represented as a corresponding array element a having a > 0, and the direction of movement of the object at any position is locally represented as one of several allowable directions.
[0310] In some embodiments, map constraints (e.g., based on matrix A) can be used to reject or eliminate unreachable candidate positions. For example, assume there are Ni legitimate candidate positions at time t = i. The system can calculate Ni predicted positions for time t = (i + 1). Each predicted position is checked against matrix A. If it is unreachable, it is rejected or eliminated. The remaining predicted positions can then become legitimate candidate positions. If the number of remaining legitimate candidate positions is too small, new legitimate candidate positions can be generated based on some probabilistic models and rules. As a result, the number of candidate positions can be different in different iterations, i.e., in different dynamic numbers. However, their total number never falls below a certain minimum number.
[0311] In some embodiments, the system may generate a predicted candidate position as the sum of a displacement vector (magnitude = "incremental distance" in "direction") and the "current candidate position." Alternatively, this sum may be used as a parameter of a probability distribution, such as a Gaussian distribution with a mean as the computed sum and a variance related to a measure of the "goodness" of the current candidate position. For example, the variance may be a function of the reachability values in matrix A. High reachability (e.g., A = 1) may correspond to a larger variance, while low reachability (e.g., A = 0.1) may correspond to a smaller variance. The next position may be calculated by combining the remaining legitimate (reachable) candidate positions at time t = (i + 1), for example, using a weighted average with associated weights, mean, median, maximum likelihood, centroid, or MAP.
[0312] Clause 27. The tracking system / method / device / software of clause 26, wherein calculating the next position of the object at the next time includes calculating first dynamic numbers of weights respectively associated with first candidate positions, each weight being a function of at least one of the current position, the first candidate position, a corresponding second candidate position associated with the first candidate position, a direction of movement, and a distance in the direction between the first candidate position and the first unreachable array element a; and calculating the next position of the object based on the first dynamic numbers of the first candidate positions and the associated first dynamic numbers of weights.
[0313] Clause 28. The tracking system / method / device / software of clause 27, wherein each weight is a monotonically non-decreasing function of the distance between the first candidate location and the first unreachable array element a in said direction.
[0314] Clause 29. The tracking system / method / device / software of clause 27, wherein each weight is a bounded function of the distance between the first candidate location and the first unreachable array element a in said direction.
[0315] Clause 30. The tracking system / method / device / software of clause 27, wherein the next position of the object at the next time is calculated as a weighted average of the first dynamic number of first candidate positions.
[0316] Clause 31. The tracking system / method / device / software of clause 27, wherein a next position of the object at a next time is calculated as one of the first candidate positions.
[0317] Clause 32. The tracking system / method / device / software of clause 27, wherein calculating a next position of the object at a next time further comprises normalizing the weights to generate normalized weights.
[0318] Clause 33. The tracking system / method / device / software of clause 32, further comprising calculating a next position of the object at a next time, the next time including calculating a weighted cost of each first candidate position relative to a remainder of the first dynamic number of first candidate positions based on the normalized weights, the weighted cost being a weighted sum of pairwise distances between the first candidate position and each of the remainder of the first candidate positions, and selecting the first candidate position with the minimum weighted cost as the next time position of the object.
[0319] Item 34. The tracking system / method / device / software according to Item 6, wherein calculating the next position of the object at the next time includes: when the predicted value of the second candidate position is fully reachable with the associated array element a = 1, calculating a predicted value for each of the second candidate positions of the object based on at least one of the second candidate position, the incremental distance, and the incremental period; when the predicted value of the second candidate position has the associated array element a = 0 and is prohibited, creating the first candidate position of the object based on the predicted value of the second candidate position; when the predicted value of the second candidate position has an associated array element satisfying 0 < a < 1 and is partially reachable, labeling the second candidate position as "rejected" without generating the first candidate position; generating a random number between 0 and 1; and when the random number is less than a, creating the first candidate position of the object based on the predicted value of the second candidate position.
[0320] Item 35. The tracking system / method / device / software according to Item 14, wherein calculating the next position of the object at the next time further includes: when the number of the first candidate positions is less than the threshold, probabilistically taking the predicted value of the non-rejected second candidate position according to a probability distribution based on at least one of the weight associated with the predicted value, the weight associated with the second candidate position, the array element of the multi-dimensional array A associated with the predicted value, and the array element of the multi-dimensional array A associated with the second candidate position, to generate a new first candidate position of the object.
[0321] Item 36. The tracking system / method / device / software according to Item 14, wherein calculating the next position of the object at the next time further includes: when the number of the first candidate positions is less than the threshold, probabilistically taking the non-rejected second candidate position, and generating a new first candidate position of the object with a probability based on the weight associated with the predicted value of the non-rejected second candidate position.
[0322] Clause 37. The tracking system / method / device / software of clause 14, wherein calculating a next position of the object at a next time further includes, if the quantity of first candidate positions is less than a threshold, calculating a tentative next position based on the first candidate positions, and probabilistically generating a new first candidate position of the object in the vicinity of the tentative next position based on a probability distribution.
[0323] Clause 38. The tracking system / method / device / software of clause 14, wherein calculating a next position of the object at a next time further includes, if the quantity of first candidate positions is less than a threshold, generating a new first candidate position of the object probabilistically based on a prediction of positions sampled in the vicinity of the current position based on a probability distribution.
[0324] Clause 39. The tracking system / method / device / software of clause 18, wherein the vicinity includes at least one of the second candidate locations that is not rejected.
[0325] Clause 40. The tracking system / method / device / software of clause 18, wherein the probability distribution is a weighted sum of a set of probability density functions, each centered on one of the non-rejected second candidate locations.
[0326] Clause 41. The tracking system / method / device / software of clause 20, wherein the weight of each pdf associated with the second candidate location in the weighted sum is a function of the array element associated with the second candidate location.
[0327] Clause 42. The tracking system / method / device / software of clause 1, further comprising: maintaining a dynamic number of candidate locations at any time; modifying the dynamic number of candidate locations by at least one of initializing at least one candidate location, updating at least one candidate location, adding at least one candidate location, pausing at least one candidate location, stopping at least one candidate location, resuming at least one paused candidate location, reinitializing at least one stopped candidate location; removing at least one candidate location; and calculating a next location of the object for a next time based on at least one of the dynamic number of candidate locations for a next time and the dynamic number of candidate locations at another time.
[0328] Clause 43. The tracking system / method / device / software of clause 22, wherein the dynamic number of candidate locations is limited by at least one of an upper bound and a lower bound.
[0329] Clause 44. The tracking system / method / device / software of clause 22, further comprising adding at least one candidate location if the dynamic number of candidate locations is below a lower limit.
[0330] Clause 45. The method / apparatus / system of clause 7 or 8 or 9 of the wireless monitoring system, further comprising validating a complete cycle as the target type of cycle.
[0331] Clause 46. The method / apparatus / system of clause 45, further comprising: calculating a likelihood score associated with a complete cycle based on at least one of the TSIQ, the TSMSIQ, or the TSSI; and validating the complete cycle as a target cycle based on the likelihood score.
[0332] Clause 47. The method / apparatus / system of clause 46, further comprising validating the complete cycle as a target cycle if the likelihood score satisfies a validation condition associated with the target cycle.
[0333] Clause 48. The method / apparatus / system of clause 47, further comprising validating the complete cycle as a target cycle if the likelihood score is greater than a threshold.
[0334] Clause 49. The method / apparatus / system of a wireless monitoring system of clause 46, further comprising: calculating a period associated with a complete cycle having a corresponding start time and a corresponding end time of the period; calculating at least one feature of the following: sum, weighted sum, sum of magnitudes, weighted sum of magnitudes, maximum, zero crossing, minimum, maximum derivative, minimum derivative, and zero derivative of the TSIQ and TSMSIQ within...
Claims
1. 1. A wireless motion monitoring system comprising: a transmitter configured to transmit a first wireless signal over a wireless multipath channel of the location; a receiver configured to receive a second wireless signal over the wireless multipath channel, the second wireless signal differing from the first wireless signal due to the wireless multipath channel and motion of objects at the location; and 1. A processor comprising: obtaining a time sequence channel indicator (TSCI) of the wireless multipath channel based on the second wireless signal; calculating spatio-temporal information (STI) based on the TSCI; monitoring the movement of the object based on the TSCI and the STI; performing a task based on said monitoring; and and generating a response based on the task.
2. 2. The system of claim 1, wherein the processor further comprises: selecting an operational mode from a plurality of supported operational modes associated with the task to become a current operational mode of the task; and monitoring at least one status of the object based on the TSCI and the current operating mode, wherein the response is generated based on the current operating mode of the task.
3. 3. The system of claim 2, the current mode of operation is a user-absent mode for monitoring the location when a user of the system is not present at the location; The processor further comprises: In the user-absent mode, the object is an intruder. setting a sensitivity setting for said motion monitoring of said object; enabling or disabling at least one of the transmitters or at least one other receiver of the system; configuring the timetable for the user-unattended mode with respective settings associated with respective periods of the timetable; setting parameters, thresholds and timing for the user-absent mode; Setting the method and mode of notification to said user; or setting up the monitoring of the at least one status of the object associated with the user-unattended mode; and performing at least one of monitoring the TSCI and the STI for patterns indicative of the presence of the intruder; The response, Sending notifications to designated users; generating an alarm; Generate alarm animations; Playing a warning message; interacting with said intruder; Requiring the intruder to demonstrate identity of an authorized user; sounding a siren of said system; Protecting said location; and configuring the system to include at least one of:
4. 3. The system of claim 2, the current operating mode is a user present mode for monitoring the location when a user of the system is present at the location; The processor further comprises: Under the user presence mode, the object is the user, setting a sensitivity setting for said motion monitoring of said object; enabling or disabling at least one of the transmitters or at least one other receiver of the system; setting the timetable for the user at home mode with respective settings associated with respective periods of the timetable; setting parameters, thresholds and timing for the user at home mode; Setting the method and mode of notification to said user; configuring the monitoring of the at least one status of the object associated with the user at-home mode; and performing at least one of monitoring the user's activity in the location based on the TSCI and the STI; and The response, determining a location of the user; monitoring the movements of the user; monitoring at least one of the user's daily routines, habits, or behaviors; monitoring deviations of the user from at least one of the routine, the habits, or the behavior; Detecting additional users; monitoring the movements of said additional users; monitoring the activity of said additional users; monitoring interactions between said user and said additional user; detecting a dangerous movement of the user; Detecting a falling motion of the user; monitoring vital signs of said user; monitoring at least one of the user's breathing or heart rate; monitoring the sleep of said user; monitoring at least one of the user's movement sequence, dance, movement, cadence, pauses, or rests; detecting a gesture of the user; Engage in dialogue, exchanges or communications with said users; Informing, reporting or reminding said users; instructing at least one user device to interact, communicate, interact, notify, report or remind; generating at least one presentation or user interface on said at least one user device during said interaction, exchange, communication, notification, reporting or reminding; Verifying a hazard, fall, event, situation, condition, gesture, command, exchange or interaction of the user based on the interaction; or Communicating information of the user's behavior to at least one of other users, other user devices of the other users, a server, a cloud server, a local server, storage, network storage, distributed storage, a blockchain, a database, or an analysis module; and configuring the system to include at least one of:
5. 3. The system of claim 2, when a user of the system is absent from the location and the user does not desire a siren, the current mode of operation is a vigilant mode for monitoring the location; The processor further comprises: Regarding the object being an intruder, under the vigilant mode, setting a sensitivity setting for monitoring the movement of the object; enabling or disabling at least one of the transmitters or at least one other receiver of the system; configuring the timetable for the vigilant mode with respective settings associated with respective periods of the timetable; setting parameters, thresholds and timing for the vigilant mode; Setting the method and mode of notification to said user; or setting up the monitoring of the at least one condition of the object associated with the vigilant mode; and performing at least one of monitoring the TSCI and the STI for patterns indicative of the presence of the intruder, the response comprising: Sending notifications to designated users; Raising an alarm; Generate alarm animations; Playing a warning message; interacting with the intruder; Requiring the intruder to demonstrate identity of an authorized user; sounding a siren of said system; Protecting said location; monitoring, the monitoring including at least one of: The response, Raising an alarm; Generate alarm animations; Playing a warning message; interacting with the intruder; Requiring the intruder to demonstrate identity of an authorized user; sounding a siren of said system; Protecting said location; to exclude at least one of the 4. A system configured to:
6. 3. The system of claim 2, when a user of the system is absent from the location and the user wishes to be notified of detected object movements, the current operating mode being a guard mode for monitoring the location; The processor further comprises: Regarding the object being an intruder, under the guard mode, setting a sensitivity setting for monitoring the movement of the object; enabling or disabling at least one of the transmitters or at least one other receiver of the system; configuring the timetable for the guard mode with respective settings associated with respective periods of the timetable; setting parameters, thresholds and timings for said guard mode; Setting the method and mode of notification to said user; setting up the monitoring of the at least one condition of the object related to the guard mode; and performing at least one of monitoring the TSCI and the STI for patterns indicative of the presence of the intruder; The response, sending a notification to said user; taking further action based on confirmation from the user; and switching to another mode of operation. A system configured to:
7. 3. The system of claim 2, the current operating mode is a power saving mode for monitoring the location; The processor further comprises: said transmitting said first wireless signal from said transmitter; said receiving said second radio signal by said receiver; the obtaining of the TSCI based on the second wireless signal; the calculation of the STI based on the TSCI; the monitoring of the movement of the object based on the TSCI and the STI; said execution of said task; or said generating said response based on said task; The system is configured to pause or stop at least one of the following:
8. 3. The system of claim 2, the current mode of operation is (a) a user challenge mode for monitoring the location when movement of the object is detected at the location and the object is unidentified, or (b) a user interactive mode for monitoring the location when the object is a user; The processor further comprises: the response in the user challenge mode; Sending notifications to designated users; generating an alarm; Generate alarm animations; Playing a warning message; To communicate with the intruder, requiring said object to indicate an identity of an authorized user; Protecting said location; Switching to a different operating mode, and setting the number of the first and second parameters to include at least one of the following: said response in said user interaction mode; Engage in dialogue, exchanges or communications with said users; notify, inform or remind said users; instructing at least one user device to interact, communicate, interact, notify, report or remind; generating at least one presentation or user interface on said at least one user device during said interaction, exchange, communication, notification, reporting or reminding; Verifying at least one of a danger, a fall, an event, a situation, a condition, a sleep-related condition, an action, a dance, an exercise, a gait, a rest, and a deviation from at least one of a daily routine, habit or behavior, a movement, a gesture, a command, an exchange or a communication of the user based on the interaction; or Communicating information of the user's behavior to at least one of other users, other user devices of the other users, a server, a cloud server, a local server, storage, network storage, distributed storage, a blockchain, a database, or an analysis module; and setting the number of the first and second parameters to include at least one of the following: and monitoring the movement of the object in response to the response; A system that is configured to:
9. 3. The system of claim 2, wherein the processor: A selection of a user of the system; the user's preferences, an input by the user to a user device; a selection by the user in a user interface (UI); the user pressing a button on the UI; a verbal selection by said user; a presentation to said user; Presentation in said UI, any conversations, exchanges or interactions with said users; a dialogue, exchange or interaction based on said user device; finite state machines (FSMs) each including at least one state associated with a respective supported mode of operation; a finite state machine (FSM) containing states associated with sequences of supported operating modes; At least one state of the object being monitored; a timetable associated with at least one of the task, the user, the object, or the location; the presence or absence of the user at the location; Communication with other systems, Power on, power off, system reset, or the power saving needs of said system; the current operational mode of the task from the operational mode to a different operational mode among the supported operational modes based on at least one of:
10. 10. The system of claim 9, wherein the processor further comprises: associating at least one registered wireless detectable item with the system; generating at least one of a query, a presentation, a notification, a dialogue, an exchange or a response in a user present mode when no motion is detected for a period of time and at least one registered wirelessly detectable item is not detected, the query being communicated to the user device to ask whether the user intends to switch to a user absent mode; changing the current operation mode of the task from a user present mode to a user absent mode after the user confirms the switch or after the user does not reject the switch within a timeout period; A system that is configured to:
11. 10. The system of claim 9, wherein the processor further comprises: A system configured to change the current operating mode of the task from a user present mode to a user absent mode after no motion is detected for a period of time in the user present mode.
12. 10. The system of claim 9, wherein the processor further comprises: associating at least one registered wireless detectable item with the system; generating, in a user-absent mode, a notification, greeting, interaction, exchange, or presentation to greet a user when any of the at least one registered wireless detectable item is detected; and if any of the at least one registered wireless detectable item is detected, changing the current operating mode of the task from the user absent mode to a user present mode.
13. 10. The system of claim 9, wherein the processor further comprises: if motion is detected in user absent mode, waiting a predetermined period before generating an alarm; if the user selects to switch the current operating mode from a user present mode to a user absent mode, waiting a predetermined period of time before changing the current mode to the user absent mode; If the user selects to switch the current operating mode from a user-at-home mode to a user-absent mode but does not leave the location within a predetermined period of time, waiting an additional predetermined period of time before changing the current operating mode to the user-absent mode.
14. 2. The system of claim 1, wherein the processor further comprises: Receiving an emergency message; Based on the emergency message, interacting, engaging or communicating with users of the system; Informing, reporting or reminding said users; instructing at least one user device of said user to perform said interaction, exchange, communication, notification, report or reminder; generating at least one presentation or user interface on said at least one user device during said interaction, exchange, communication, notification, reporting or reminding; verifying an emergency situation associated with said emergency message, danger, fall, event, situation, condition, gesture, command, exchange or interaction of said user based on said dialogue; Initiate evacuation, Activating emergency alert systems; Activating emergency response systems; Turn on the emergency lights, Activating the emergency broadcast system; Initiating an emergency messaging system; Activating the priority notification system; Sounding the siren, Sounding an alarm, Displaying a visual alert; Moving animated alarms, generating notifications or personalized alarms to at least one of a user of the system and one or more designated contact persons; Request emergency services; or requesting dispatch of at least one first responder to at least one of the location, a designated location, the user's home address, or the user's current location; and performing at least one emergency action among the above.
15. 2. The system of claim 1, the transmitter is located in a first device; The receiver is located in a second device; At least one of the first device or the second device is a device having one role in the system; the processor is further configured to modify one of the first device and the second device of the system based on at least one of a software update, a firmware update, a software upgrade, or an over-the-air software upgrade; At least one of the first device or the second device is communicatively connected to at least one of a wired network or a wireless network; at least one of the first device or the second device includes at least one of an audible alert generator, a dialogue generator, a conversation engine, a siren, a bell, a speaker, a status indicator, a path audio indicator, a location audio indicator, a light, a safety pathway light, a colored light, an alarm light, a warning light, or a time light; The processor controls the first device and the second device. Configuring the second device before the first device; Configuring the first device before the second device; configuring the first device and the second device simultaneously; and further configured to set in one of the following ways: The processor, the first device, a location associated with the first device, an area associated with the first device; the second device, a location associated with the second device, an area associated with the second device; a pair of the first device and the second device; A location associated with said pair; A region associated with the pair, and further configured to generate a label for at least one of The label comprises: input of a user of the system during a set-up phase of the system; the TSCI, the STI, the task, or the response after the configuration phase; is generated based on at least one of The location is: Multi-floor structure floor, a plurality of floors of said multi-floor structure; The interior space of a structure, or an exterior space immediately adjacent to said structure; At least one of The processor, generating a presentation related to said monitoring for a user interface (UI) of a user device of a user of said system; and obtaining user input from the user via the UI; The system further configured to:
16. 2. The system of claim 1, The task is: generating at least one of a presentation, a reminder, a notification, a report, a dialogue, an exchange, or a response based on at least one of a scheduled event, an unread message, an unread news item, a schedule, a timetable, news of a subscribed channel, a user setting, an event, an alarm clock, or a status; or changing a mode of the system based on at least one of the movement of the object, the STI, a plan, a timetable, a state, a detected event, a recognized situation, or a trigger event; At least one of At least one of the presentation, the reminder, the notification, the report, the dialogue, the exchange, the interaction, or the mode is communicated to at least one of a user device of the user, the user's smartphone, the user's tablet, the user's computer, a smart speaker, a smart device with a display, a smart device with a speaker, a key fob, a smart watch, a smart wearable, a smart display, a smart appliance, a smart device, a smart smoke detector, a smart doorbell, a smart television, or a small security camera; At least one of the reminder, the notification, the report, the dialogue, the exchange, the interaction, or the mode is determined based on at least one of the time of day, day of the week, date of the month, date of the year, location of the user device, the state of the system, predictions based on machine learning, or analysis of a historical record of at least one of the TSCI, the STI, or an analysis calculated based on the STI.
17. 2. The system of claim 1, wherein the processor: filtering at least one of the TSCI, the STI, or an analysis calculated based on the TSCI or the STI based on at least one of a threshold or a parameter; Recognizing a pattern based on the TSCI or the STI; creating a super user (SU) account for a SU to control and manage the system with the highest authority level and rights; creating a plurality of Regular User (RU) accounts for respective RUs to control and manage the system; By the SU, entering information about the RU associated with the RU account; assigning to the RU account a respective authority level and right for monitoring the movement of the object based on the TSCI and the STI, the respective authority level and right being less than or equal to the highest authority level and right of the SU; or assigning access to said task or a subtask of said task to said RU account; and configuring each RU account based on at least one of:
18. 10. The system of claim 1, wherein the system is interoperable with third party systems; The processor, sharing at least one of the STI, the monitoring of the movement of the object, the task information, or the response with the third party system; The system further configured to: enable or configure a device of the third party system as an additional transmitter in the system to transmit an additional wireless signal to the receiver.
19. 2. The system of claim 1, wherein the processor: calculating a location of the movement of the object based on the TSCI and the STI; determining whether there is object motion in real time based on the TSCI and the STI; The system is further configured to generate a presentation of a history, trend or temporal overview of at least one of the STI, the task or the response, the monitoring of the movement, the location of the movement, or an analysis of the movement calculated based on the STI or the TSCI, associated with a period of time.
20. 1. A method for a wireless monitoring system, comprising: asynchronously transmitting a plurality of wireless signals over a wireless multipath channel of a location, each wireless signal being transmitted from a respective one of a plurality of first devices of the wireless monitoring system; receiving, by a plurality of second devices of the wireless monitoring system, the plurality of wireless signals over the wireless multipath channel, each received wireless signal being different from a respective transmitted wireless signal due to the wireless multipath channel and movement of objects at the location; obtaining a plurality of time series channel information (TSCI) for the wireless multipath channel based on the respective received wireless signals; calculating a plurality of spatio-temporal information (STI) based on each TSCI; monitoring a first condition of the movement of the object based on a first subset of the plurality of TSCIs and a first subset of the plurality of STIs; monitoring a second aspect of the movement of the object based on a second subset of the plurality of TSCIs and a second subset of the plurality of STIs; performing a first task based on monitoring the first aspect of the movement; and performing a second task based on monitoring the second aspect of the movement; and generating a first response based on the first task; generating a second response based on the second task.
