A passive indoor occupancy detection method based on Wi-Fi channel status information

Through the passive indoor number detection method based on Wi-Fi channel state information, the number detection model is established using the improved BP neural network, and the problem of unstable positioning performance and insufficient detection accuracy of indoor number detection in the prior art is solved, and efficient and robust number recognition in complex indoor environments is achieved.

CN115002703BActive Publication Date: 2025-03-21XIAN UNIV OF TECH
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
CN202210834030.7
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-07-14
Publication Date
2025-03-21
Estimated Expiration
2042-07-14

AI Technical Summary

Technical Problem

The prior art has problems such as unstable positioning performance, insufficient detection accuracy and reliability in indoor people detection, especially in complex indoor environments, which are difficult to provide sufficient recognition capabilities and robustness.

Method used

Using a passive indoor number detection method based on Wi-Fi channel state information, a Wi-Fi detection environment with a single transmitter-single receiver is built, and the original CSI signals of volunteers who are slow to move in different positions are collected, data preprocessing, feature extraction and PCA dimensionality reduction are performed, and the number detection model is finally established using the improved BP neural network.

Benefits of technology

It realizes robust identification of people's activities in different indoor locations when the number of indoor people is small. It is low in cost, easy to deploy, and does not require special equipment, and has strong scalability.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115002703B_ABST
    Figure CN115002703B_ABST
Patent Text Reader

Abstract

The present invention discloses a passive indoor number detection method based on Wi-Fi channel state information, comprising: step 1, collecting CSI original signals of volunteers of different numbers walking slowly in different positions; step 2, performing data preprocessing on the CSI signals collected in step 1; step 3, performing minimum-maximum normalization processing on the amplitude obtained in step 2 to obtain standardized data; step 4, performing feature extraction and PCA dimension reduction on the obtained standardized data based on the time window method, thereby constructing a feature vector and formulating corresponding labels to construct a data set; step 5, randomly dividing the obtained feature vector data set into a training set and a test set in proportion, using a method based on probability density function to improve the BP neural network to train the training set, and verifying it with a test set, so as to establish a number detection model that can accurately detect the number of people indoors. The present invention is low in cost, easy to deploy, and has strong scalability.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention belongs to the technical field of realizing perception by using common wireless equipment, and relates to a passive indoor number detection method based on Wi-Fi channel status information. Background Art

[0002] With the development of science and technology, people have more and more ways to perceive and explore the world. Various wireless sensing technologies emerge in an endless stream. Wireless signals can not only transmit data, but also infer changes in the surrounding environment. Wi-Fi signals are ubiquitous and have advantages such as wide coverage, insensitivity to light and obstructions, and privacy protection, which in turn promotes the rapid development of human perception technology. Research in the fields of smart home, smart Internet of Things, and smart buildings is being carried out around the world. Among them, indoor crowd counting is a key step in multi-target perception, and has broad application prospects in the fields of guided tourism and crowd control.

[0003] Traditional methods of crowd detection are mostly based on computer vision technology, using cameras or special hardware devices to count people. At present, it has been widely used in many real-life scenarios such as hospitals and schools. Although camera-based visual perception technology has made great achievements, camera perception technology has shortcomings such as limited monitoring range, great influence of light conditions, and easy to be blocked. At the same time, ultra-wideband (UWB) bio-radar technology is also used in the research of crowd sensing technology, but in these studies, additional equipment is required to run the system, and there are problems such as privacy leakage. Special hardware systems such as WiTrack use FMCW to calculate TOF (Time-of-Flight), providing coarse tracking of body parts but requiring users to stay within the direct line of sight of the device. Some researchers infer the number of people in conversation based on smartphone platforms, but in indoor environments, it is not convenient for the elderly and children to choose to equip FMCW signal generators and mobile devices. Wi-Fi, as a wireless network based on the IEEE802.11 protocol, has been widely deployed in homes and public places. Traditional wireless sensing uses received signal strength (RSS) to identify the number of people in the detected area. Since RSSI is coarse-grained information, it has multipath effects and is affected by the refraction, reflection and diffraction of the indoor environment. This results in unstable positioning performance and is only applicable to message-level MAC layer information. It has problems such as insufficient detection accuracy, reliability and stability. At the same time, it cannot provide sufficient recognition capability and robustness in complex indoor environments, so there are counting errors. As a Wi-Fi physical layer signal, channel state information (CSI) consists of the amplitude and phase of subcarriers. It provides richer data than the RSSI of the Wi-Fi link layer. It is a high-quality Wi-Fi signal perception source that can obtain the amplitude-frequency response of multiple subcarriers. It is essential for Wi-Fi and other multi-channel wireless communication systems to achieve reliable and high data rates. Multiple-input multiple-output (MIMO) technology (such as IEEE 802.11n, 3GPP LTE and mobile WiMAX systems) can suppress the obvious fading caused by CSI obtained from different subcarriers, and can improve data throughput and transmission distance without increasing bandwidth and transmission power, thereby improving communication quality. Therefore, CSI has both the frequency diversity provided by OFDM and the spatial diversity provided by MIMO, and can provide more environmental information about people's presence and movement, making it more suitable for people detection than RSSI data.

[0004] The present invention aims to perform fine-grained indoor number recognition, and has good robustness for the activities of people at different positions indoors when the number of people indoors is small. Summary of the invention

[0005] The present invention provides a passive indoor number detection method based on Wi-Fi channel state information, which is characterized by comprising the following steps:

[0006] Step 1: Build a single-transmitter-single-receiver Wi-Fi detection environment and collect CSI raw signals from different numbers of volunteers walking slowly at different locations.

[0007] Step 2, performing data preprocessing on the CSI signal collected in step 1;

[0008] Step 3, performing minimum-maximum normalization processing on the amplitude obtained in step 2 to obtain standardized data;

[0009] Step 4: Based on the time window method, feature extraction and PCA dimension reduction are performed on the standardized data obtained in step 3, so as to construct feature vectors and formulate corresponding labels to construct a data set;

[0010] Step 5, randomly divide the feature vector data set obtained in step 4 into a training set and a test set in proportion, use the BP neural network improved by the probability density function method to train the training set, and verify it with the test set, so as to establish a number detection model that can accurately detect the number of people indoors.

[0011] Furthermore, in step 1, the CSI original amplitude signal is obtained specifically according to the following steps:

[0012] Step 1.1, select Atheros AR9580 wireless network card to collect CSI signals, use two routers that can support the installation of OpenWRT firmware that can receive CSI signals, one as the transmitter and the other as the receiver.

[0013] Furthermore, the two routers belong to the same local area network, and the two routers are controlled by the terminal to realize data sending and receiving. The model of the router is TL-WDR4900, OpenWRT 15.05.1 is installed, and the router packet sending frequency is set to 100Hz.

[0014] Furthermore, the method specifically includes detecting and deleting abnormal points of the amplitude signal, and filtering out amplitude noise in the original CSI observation value;

[0015] Furthermore, in step 2, the preprocessed amplitude information is obtained specifically according to the following steps:

[0016] Step 2.1, using the CSI raw signals of different numbers of volunteers in step 1, read the CSI raw signals using the read_log_file function based on the Matlab software platform, wherein the CSI data is a two-dimensional matrix of N rows, where N is the number of data packets.

[0017] In the experiment, the transmitter has three transmitting antennas, the receiver has three receiving antennas, each receiving antenna has 56 subcarriers, and each signal sample contains 3*3*56=504 subcarrier CSI data. Therefore, the obtained CSI data is a two-dimensional matrix of N×540.

[0018] The frequency response of the channel can be expressed as follows:

[0019] i=[1,N s ]

[0020] Among them, ∠H(f i ) represents the phase; H(f i ) is the center frequency f i The channel state information of the subcarrier, namely CSI; N s is the number of subcarriers for a single antenna, which is 56 on the Atheros AR9580 wireless network card. Assume that the number of antennas at the transmitting end is N tx , the number of antennas at the receiving end is N rx , then the CSI data can be expressed as:

[0021]

[0022] H ij The CSI data from the i-th antenna of the transmitting antenna (TX) to the j-th antenna of the receiving antenna (RX) contains N s subcarriers, then H ij , which can be specifically expressed as:

[0023]

[0024] Each signal sample contains N tx ×N rx ×N s Subcarrier CSI data;

[0025] Step 2.2, detecting and removing abnormal points on the CSI original signal read in step 2.1;

[0026] Step 2.3, for the CSI signal with amplitude outliers removed in step 2.2, the amplitude noise in the original CSI observation value is filtered out using the discrete wavelet transform method.

[0027] Furthermore, in step 3, the standardized amplitude information is obtained specifically according to the following steps:

[0028] Step 3.1, analyzing the CSI signals of different numbers of volunteers walking slowly at different positions after the amplitude data preprocessing in step 2.3;

[0029] Step 3.2, perform minimum-maximum normalization on the amplitude values ​​preprocessed in step 2, and map the data values ​​to [0,1]. The specific formula is as follows:

[0030]

[0031] The amplitude signal x after CSI noise reduction is normalized to x′ through the maximum and minimum formula: where A represents the amplitude of the current subcarrier, minA and maxA are the minimum and maximum values ​​of the current subcarrier amplitude, respectively.

[0032] Furthermore, in step 4, the characteristic vector of the amplitude is obtained and the corresponding category label is formulated according to the following steps to construct a data set:

[0033] Step 4.1, select the appropriate time window size to provide a basis for constructing the feature vector in the next step;

[0034] Step 4.2, according to the time window size selected in step 4.1, the mean, range, standard deviation, and root mean square of the amplitude are used as features to represent the fluctuation to form a feature vector;

[0035] feature=[m,v,d,rs]

[0036] Among them, m is the mean, v is the range, d is the standard deviation, and rs is the root mean square value. Then the feature vector is constructed;

[0037] Step 4.3, perform PCA dimensionality reduction on the feature vector constructed in step 4.2, select columns with obvious features and formulate corresponding category labels, and construct a data set for the people detection system.

[0038] Furthermore, in step 5, the training set is trained using a back propagation neural network improved by a method based on a probability density function, and a number detection model is established to accurately detect the number of people in the room.

[0039] The present invention aims at the problem that there is no further research on the activity state of people in different positions in the prior art, and uses the acceptable subcarrier amplitude information to construct the characteristics of its fluctuation state. The innovation is to improve the back propagation (BP) neural network for fine-grained indoor number recognition by using the probability density function method. The advantage is that no special equipment, such as sensors, cameras, etc., is required, and only wireless signals that can be seen everywhere can be realized. The method proposed by the present invention is low-cost and easy to deploy, so it has strong scalability, and can have good robustness for the activities of people in different positions indoors when the number of people indoors is small. BRIEF DESCRIPTION OF THE DRAWINGS

[0040] Figure 1 It is a system framework diagram of an implementation method of a passive indoor person detection method based on Wi-Fi channel status information of the present invention.

[0041] Figure 2 This is a scene diagram of the indoor crowd counting experiment.

[0042] Figure 3 It is a readable storage medium structure diagram of the present disclosure that can implement the passive indoor person detection method based on Wi-Fi channel status information. DETAILED DESCRIPTION

[0043] The following describes the embodiments of the present disclosure through specific examples, and those skilled in the art can easily understand other advantages and effects of the present disclosure from the contents disclosed in this specification. Obviously, the described embodiments are only a part of the embodiments of the present disclosure, rather than all of the embodiments. The present disclosure can also be implemented or applied through other different specific embodiments, and the details in this specification can also be modified or changed in various ways based on different viewpoints and applications without departing from the spirit of the present disclosure. It should be noted that the following embodiments and features in the embodiments can be combined with each other without conflict. Based on the embodiments in the present disclosure, all other embodiments obtained by ordinary technicians in the field without making creative work are within the scope of protection of the present disclosure.

[0044] It should be noted that various aspects of the embodiments within the scope of the appended claims are described below. It should be apparent that the aspects described herein may be embodied in a wide variety of forms, and any specific structure and / or function described herein is merely illustrative. Based on the present disclosure, it should be understood by those skilled in the art that an aspect described herein may be implemented independently of any other aspect, and two or more of these aspects may be combined in various ways. For example, any number of aspects described herein may be used to implement the device and / or practice the method. In addition, other structures and / or functionalities other than one or more of the aspects described herein may be used to implement this device and / or practice this method.

[0045] It should also be noted that the illustrations provided in the following embodiments are only schematic illustrations of the basic concept of the present disclosure. The drawings only show components related to the present disclosure rather than being drawn according to the number, shape and size of components in actual implementation. In actual implementation, the type, quantity and proportion of each component may be changed arbitrarily, and the component layout may also be more complicated.

[0046] Additionally, in the following description, specific details are provided to facilitate a thorough understanding of the examples. However, it will be understood by those skilled in the art that the aspects described may be practiced without these specific details.

[0047] The present invention is described in detail below with reference to the accompanying drawings and specific embodiments.

[0048] Figure 1 This is the overall framework diagram of the experiment, and describes in detail the overall operation process of the patent.

[0049] as follows Figure 1 As shown, the present invention is a passive indoor number detection method based on Wi-Fi channel status information, which specifically includes the following steps:

[0050] Step 1: Build a single-transmitter-single-receiver Wi-Fi detection environment and collect CSI raw signals from different numbers of volunteers walking slowly at different locations.

[0051] The transmitter and receiver in the Wi-Fi detection environment are respectively a commercial standard 2.4GHz Wi-Fi b / g / n router, wherein the transmitter has three transmitting antennas and the receiver has three receiving antennas, each receiving antenna has 56 subcarriers, and the open source driver Atheros-CSI-Tool developed by Yaxiong Xie et al. is used, and the router packet transmission frequency is set to 100Hz; the transmitter and receiver are placed in non-line-of-sight, and the CSI raw signals of different numbers of volunteers (0, 1, 2, 3, 4, 5 people) walking slowly in different positions are collected from the experimental equipment.

[0052] In step 1, the CSI original amplitude signal is obtained specifically according to the following steps:

[0053] Step 1.1, select Atheros AR9580 wireless network card to collect CSI signals, use two routers that can support the installation of OpenWRT firmware that can receive CSI signals (OpenWRT is a highly modular, highly automated embedded Linux system with powerful network components and scalability), one as the transmitter (Access Point, AP), and the other as the receiver (Monitoring Point, MP);

[0054] The two routers belong to the same local area network. The two routers are controlled by a terminal (PC) to send and receive data. The routers are installed with OpenWRT 15.05.1 firmware, and the router packet sending frequency is set to 100Hz.

[0055] Compared with using a PC to pull out an antenna, this method is more flexible for the router and there is no need to reconfigure another environment for the PC.

[0056] Step 2: perform data preprocessing on the CSI signal collected in step 1.

[0057] The amplitude signal is detected and outliers are deleted, and the amplitude noise in the original CSI observation value is filtered out.

[0058] Due to the interference of outliers and random noise in the detection environment, the CSI raw signals of different numbers of volunteers collected in step 1 were preprocessed based on the Matlab software platform to improve the accuracy of feature extraction and the accuracy of the classifier, effectively reducing the counting errors caused by noise and outliers.

[0059] In step 2, the preprocessed amplitude information is obtained specifically according to the following steps:

[0060] Step 2 specifically includes:

[0061] Step 2.1, using the CSI raw signals of different numbers of volunteers in step 1, read the CSI raw signals using the read_log_file function based on the Matlab software platform, wherein the CSI data is a two-dimensional matrix of N rows, where N is the number of data packets.

[0062] In the experiment, the transmitter has three transmitting antennas, the receiver has three receiving antennas, each receiving antenna has 56 subcarriers, and each signal sample contains 3*3*56=504 subcarrier CSI data. Therefore, the acquired CSI data is a two-dimensional matrix of N×540.

[0063] In a certain embodiment, since the transmitter has 3 transmitting antennas and the receiver has 3 receiving antennas in the experiment, each receiving antenna has 56 subcarriers, and each signal sample contains 3*3*56=504 subcarrier CSI data, the acquired CSI data is a two-dimensional matrix of N×540 (3*3*56), where N is the number of data packets.

[0064] CSI data description: The frequency response of the channel can be expressed as follows:

[0065] i=[1,N s ]

[0066] Among them, ∠H(f i ) represents the phase; H(f i ) is the channel state information of the subcarrier with center frequency fi, namely CSI. s is the number of subcarriers for a single antenna, which is 56 on the Atheros AR9580 wireless network card. Assume that the number of antennas at the transmitting end is N tx , the number of antennas at the receiving end is N rx , then the CSI data can be expressed as:

[0067]

[0068] H ij The CSI data from the i-th antenna of the transmitting antenna (TX) to the j-th antenna of the receiving antenna (RX) contains N s subcarriers, then H ij , which can be specifically expressed as:

[0069]

[0070] Each signal sample contains N tx ×N rx ×N s subcarrier CSI data.

[0071] Step 2.2: Detect and remove outliers on the original CSI signal read in step 2.1.

[0072] After reading the original CSI signal, the Hampel filter is used to detect the amplitude signal and delete abnormal points.

[0073] Step 2.3, for the CSI signal with amplitude abnormal points removed in step 2.2, the amplitude noise in the original CSI observation value is filtered out by using the discrete wavelet transform method. The db3 wavelet function is used for 5-layer decomposition to obtain the fluctuation relationship between the amplitude signal and the number of people.

[0074] After filtering the above signal, the graph curve becomes smoother and frequent random fluctuations are filtered out.

[0075] Step 3, analyzing the fluctuation relationship between the amplitude signal after data preprocessing in step 2 and the number of people and standardizing the preprocessed amplitude.

[0076] Step 3 specifically includes:

[0077] Step 3.1, analyzing the CSI signals of different numbers of volunteers (0, 1, 2, 3, 4, 5 people) walking slowly at different positions after the amplitude data preprocessing in step 2.3;

[0078] As the number of people increases, the CSI amplitude fluctuation range becomes larger and larger, and the change effect becomes more and more significant, which well confirms the working principle of using CSI amplitude fluctuation to identify people.

[0079] Step 3.2, perform minimum-maximum normalization on the amplitude values ​​preprocessed in step 2, which is equivalent to a linear transformation of the data, mapping the data values ​​to between [0,1]. The specific formula is as follows:

[0080]

[0081] The amplitude signal x after CSI noise reduction is normalized to x′ through the maximum and minimum formula: (A represents the amplitude of the current subcarrier, maxA and maxA are the minimum and maximum values ​​of the current subcarrier amplitude respectively).

[0082] Step 4: Based on the time window method, the amplitude of the data preprocessed in step 3 is subjected to feature extraction, PCA dimension reduction, feature vector construction and corresponding label formulation.

[0083] The mean, range, standard deviation, root mean square, etc. of the amplitude are used as features to characterize the fluctuation and form feature vectors, and corresponding category labels are formulated. The number of packets received every 5s in a fixed time window is used to calculate the statistical characteristics of the data. The amplitude feature information of different numbers of volunteers (0, 1, 2, 3, 4, 5 people) walking slowly at different locations is extracted, and corresponding category labels are formulated to construct a data set.

[0084] Step 4 is specifically divided into:

[0085] Step 4.1, select the appropriate time window size to provide a basis for the next step of constructing the feature vector.

[0086] For people's indoor activities, the pace is generally not too fast. If the time window is too small, the selected data is not enough to represent the overall characteristics; if the time window is too large, the system may not be sensitive to changes in the number of people, and a large amount of training data will be required. Finally, according to the amplitude fluctuation effect, the time window is selected as 5s, that is, 500 data packets are one sample (each sample can be regarded as a 1×504 row vector);

[0087] Step 4.2, according to the time window size selected in step 4.1, the mean, range, standard deviation, and root mean square of the amplitude are used as features to characterize the fluctuation and form a feature vector.

[0088] feature=[m,v,d,rs]

[0089] Among them, m is the mean, v is the range, d is the standard deviation, and rs is the root mean square value, and then the feature vector is constructed.

[0090] For example, the data features are calculated based on the number of packets received every fixed time window of 5s, and the amplitude features of different numbers of volunteers (0, 1, 2, 3, 4, 5 people) walking slowly at different positions constitute a feature vector.

[0091] Step 4.3, perform PCA dimensionality reduction on the feature vector constructed in step 4.2, select columns with obvious features and formulate corresponding category labels, and construct a data set for the people detection system.

[0092] Step 5: Establish a crowd counting detection model based on the machine learning algorithm.

[0093] Specifically include:

[0094] Step 5.1, according to the conventional method of dividing data sets for machine learning, randomly divide the data set constructed in step 4.3 into a training set and a test set in a ratio of 7:3;

[0095] Step 5.2, using the probability density function-based method to improve the back propagation (BP) neural network, and train the training set;

[0096] In the process of forward propagation, the BPNN model calculates the predicted output mapped by the current input based on the current input and the weight w and offset b values ​​updated after the last back propagation; in the process of back propagation, the w and b values ​​are continuously updated from back to front according to the error of the current layer. The specific process of updating w and b in back propagation is as follows:

[0097]

[0098]

[0099]

[0100]

[0101]

[0102]

[0103]

[0104]

[0105]

[0106] The BPNN model has an input layer, two hidden layers and an output layer, where the parameter y represents the input vector of the input layer, specifically the statistical characteristic values ​​of the subcarriers after the dimensionality reduction process in step 4.3, such as mean, range, standard deviation, root mean square, etc.; is the output vector of the output layer, specifically the predicted number of people classification category; among them, represents the linear result acting on the jth neuron in the kth layer; the parameter represents the output of the activation function of the jth neuron in the kth layer, with parameters represents the connection weight between the i-th neuron in the k-1th layer and the j-th neuron in the k-th layer, Represents the bias of the jth neuron in the kth layer. The prediction error E is obtained by the least squares method. totalAccording to the output of the number of people classification results, the BPNN model is continuously optimized, and the parameter σ k,j Represents the error of the jth neuron in the kth layer. (i,j,k=1,2,3,4)

[0107] The activation functions of neurons in the same layer of the traditional BPNN model are the same and use common activation functions such as linear function, ReLU function and sigmoid function. However, the activation functions of neurons in the same layer of the improved BPNN model are different. There are four neurons in the same layer using four different probability density functions as activation functions (exponential distribution, logarithmic distribution, normal distribution, gamma function) acting on each neuron, realizing different activation functions of neurons in the same layer. The specific four probability density functions are as follows:

[0108]

[0109]

[0110]

[0111]

[0112] f1 is exponential distribution, f2 is normal distribution, f3 is log-normal distribution, f4 is gamma function, f1, f2, f3, f4 are activation functions. as a parameter. is the lower incomplete gamma function, is the gamma function, and the gradient descent method is used for parameter setting to calculate E total Relative to the partial differential of each parameter, as shown in the following formula, the trained BPNN model can be obtained after the update is completed.

[0113]

[0114]

[0115]

[0116]

[0117]

[0118]

[0119]

[0120] In step 5.3, the test set is used for verification to establish a people detection model that can accurately detect the number of people indoors.

[0121] For example, in an embodiment, a test set is then used for verification, and a good number detection model is obtained that can accurately detect the number of people in a room when there are no more than 4 people.

[0122] Figure 2 The following is a design diagram of the experimental scenario. The terminal (PC) controls the wired connection of the main router to enable the main router to send CSI signal data and receive CSI signal data from the slave router. The corresponding IP address is 192.168.1.180; the master and slave routers are equipped with Atheros AR9580 wireless network cards for collecting CSI signals. Both are configured with OpenWRT 15.05.1 firmware. The main router is used as the transmitter, with an IP address of 192.168.1.1 and a MAC address of 9C:21:6A:F4:C1:6E. The slave router is used as the receiver, with an IP address of 192.168.1.233 and a MAC address of D8:15:0D:FE:30:01. The master and slave routers are wirelessly connected to the same local area network. The main router remotely controls the slave router to receive CSI data through the Secure Shell (ssh) protocol. Using a router to receive CSI signals is more flexible than using a PC to pull out an antenna, and there is no need to configure another environment for the PC from scratch.

[0123] Figure 3 is a schematic diagram of a computer-readable storage medium according to an embodiment of the present disclosure. Figure 3 As shown, the computer-readable storage medium 40 according to the embodiment of the present disclosure stores non-transitory computer-readable instructions 41. When the non-transitory computer-readable instructions 41 are executed by the processor, all or part of the steps of the access control method for the removable storage device of each embodiment of the present disclosure are executed.

[0124] It should be noted that the computer-readable medium disclosed above may be a computer-readable signal medium or a computer-readable storage medium or any combination of the above two. The computer-readable storage medium may be, for example, but not limited to, an electrical, magnetic, optical, electromagnetic, infrared, or semiconductor system, device or device, or any combination of the above. More specific examples of computer-readable storage media may include, but are not limited to: an electrical connection with one or more wires, a portable computer disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the above. In the present disclosure, a computer-readable storage medium may be any tangible medium containing or storing a program that may be used by or in combination with an instruction execution system, device or device. In the present disclosure, a computer-readable signal medium may include a data signal propagated in a baseband or as part of a carrier wave, in which a computer-readable program code is carried. This propagated data signal may take a variety of forms, including but not limited to an electromagnetic signal, an optical signal, or any suitable combination of the above. The computer readable signal medium may also be any computer readable medium other than a computer readable storage medium, which may send, propagate or transmit a program for use by or in conjunction with an instruction execution system, apparatus or device. The program code contained on the computer readable medium may be transmitted using any suitable medium, including but not limited to: wires, optical cables, RF (radio frequency), etc., or any suitable combination of the above.

[0125] The computer-readable medium may be included in the electronic device, or may exist independently without being incorporated into the electronic device.

[0126] Computer program code for performing the operations of the present disclosure may be written in one or more programming languages, or a combination thereof, including object-oriented programming languages, such as Java, Smalltalk, C++, and conventional procedural programming languages, such as "C" or similar programming languages. The program code may be executed entirely on the user's computer, partially on the user's computer, as a separate software package, partially on the user's computer and partially on a remote computer, or entirely on a remote computer or server. In cases involving a remote computer, the remote computer may be connected to the user's computer through any type of network, including a local area network (LAN) or a wide area network (WAN), or may be connected to an external computer (e.g., through the Internet using an Internet service provider).

[0127] The flow chart and block diagram in the accompanying drawings illustrate the possible architecture, function and operation of the system, method and computer program product according to various embodiments of the present disclosure. In this regard, each square box in the flow chart or block diagram can represent a module, a program segment or a part of a code, and the module, the program segment or a part of the code contains one or more executable instructions for realizing the specified logical function. It should also be noted that in some implementations as replacements, the functions marked in the square box can also occur in a sequence different from that marked in the accompanying drawings. For example, two square boxes represented in succession can actually be executed substantially in parallel, and they can sometimes be executed in the opposite order, depending on the functions involved. It should also be noted that each square box in the block diagram and / or flow chart, and the combination of the square boxes in the block diagram and / or flow chart can be implemented with a dedicated hardware-based system that performs a specified function or operation, or can be implemented with a combination of dedicated hardware and computer instructions.

[0128] The units involved in the embodiments described in the present disclosure may be implemented by software or hardware. The name of a unit does not limit the unit itself in some cases. For example, the first acquisition unit may also be described as a "unit for acquiring at least two Internet Protocol addresses".

[0129] The above description is only a preferred embodiment of the present disclosure and an explanation of the technical principles used. Those skilled in the art should understand that the scope of disclosure involved in the present disclosure is not limited to the technical solutions formed by a specific combination of the above technical features, but should also cover other technical solutions formed by any combination of the above technical features or their equivalent features without departing from the above disclosed concept. For example, the above features are replaced with the technical features with similar functions disclosed in the present disclosure (but not limited to) by each other to form a technical solution.

Claims

1. A passive indoor number detection method based on Wi-Fi channel status information, characterized in that: The steps include: Step 1: Build a single-transmitter-single-receiver Wi-Fi detection environment and collect CSI raw signals from different numbers of volunteers walking slowly at different locations. In step 1, the CSI original amplitude signal is obtained specifically according to the following steps: Step 1.1, select Atheros AR9580 wireless network card to collect CSI signals, use two routers that can support the installation of OpenWRT firmware that can receive CSI signals, one as the transmitter and the other as the receiver; The two routers belong to the same LAN. The two routers are controlled by the terminal to send and receive data. The model of the router is TL-WDR4900, and OpenWRT is installed. 15.05.1, and set the router packet sending frequency to 100Hz; Step 2, performing data preprocessing on the CSI signal collected in step 1; Step 3, performing minimum-maximum normalization processing on the amplitude obtained in step 2 to obtain standardized data; In step 3, the standardized amplitude information is obtained specifically according to the following steps: Step 3.1, analyzing the CSI signals of different numbers of volunteers walking slowly at different positions after the amplitude data preprocessing in step 2.3; Step 3.2, perform minimum-maximum normalization on the amplitude values ​​preprocessed in step 2, and map the data values ​​to [0,1]. The specific formula is as follows: The amplitude signal x after CSI noise reduction is normalized to x′ through the maximum and minimum formula: where A represents the amplitude of the current subcarrier, minA and maxA are the minimum and maximum values ​​of the current subcarrier amplitude respectively; Step 4: Based on the time window method, feature extraction and PCA dimension reduction are performed on the standardized data obtained in step 3, so as to construct feature vectors and formulate corresponding labels to construct a data set; In step 4, the characteristic vector of the amplitude is obtained and the corresponding category label is formulated according to the following steps to construct a data set: Step 4.1, select the appropriate time window size to provide a basis for constructing the feature vector in the next step; Step 4.2, according to the time window size selected in step 4.1, the mean, range, standard deviation, and root mean square of the amplitude are used as features to represent the fluctuation to form a feature vector; feature=[m,v,d,rs] Among them, m is the mean, v is the range, d is the standard deviation, and rs is the root mean square value. Then the feature vector is constructed; Step 4.3, perform PCA dimensionality reduction on the feature vector constructed in step 4.2, select columns with obvious features and formulate corresponding category labels, and construct a data set for the people detection system; Step 5, randomly divide the feature vector data set obtained in step 4 into a training set and a test set according to a certain proportion, train the training set by improving the BP neural network based on the probability density function, and verify it with the test set, so as to establish a number detection model that can accurately detect the number of people in the room; Specifically include: Step 5.1, according to the conventional method of dividing data sets for machine learning, randomly divide the data set constructed in step 4.3 into a training set and a test set in a ratio of 7:3; Step 5.2, using the probability density function-based method to improve the back propagation BP neural network, and training the training set; In the process of forward propagation, the BPNN model calculates the predicted output mapped by the current input based on the current input and the weight w and offset b values ​​updated after the last back propagation; in the process of back propagation, the w and b values ​​are continuously updated from back to front according to the error of the current layer. The specific process of updating w and b in back propagation is as follows: The BPNN model has an input layer, two hidden layers and an output layer, where the parameter y represents the input vector of the input layer, specifically the statistical characteristic values ​​of the subcarriers after the dimensionality reduction process in step 4.3, such as mean, range, standard deviation, root mean square, etc.; is the output vector of the output layer, specifically the predicted number of people classification category; among them, represents the linear result acting on the jth neuron in the kth layer; the parameter represents the output of the activation function of the jth neuron in the kth layer, and the parameter w k,i,j represents the connection weight between the i-th neuron in the k-1th layer and the j-th neuron in the k-th layer, Represents the bias of the jth neuron in the kth layer, and the prediction error E is obtained using the least squares method. total According to the output of the number of people classification results, the BPNN model is continuously optimized, and the parameter σ k,j represents the error of the jth neuron in the kth layer, where (i,j,k=1,2,3,4); The activation functions of neurons in the same layer of the improved BPNN model are different. There are four neurons in the same layer. Four different probability density functions, namely exponential distribution, logarithmic distribution, normal distribution and gamma function, are used as activation functions to act on each neuron, so that different activation functions of neurons in the same layer are realized. The specific four probability density functions are as follows: f1=1-e -λx f1 is exponential distribution, f2 is normal distribution, f3 is lognormal distribution, f4 is gamma function, f1, f2, f3, f4 are activation functions, λ, μ1, s1, μ2, s2, α, β are parameters, γ(α, β, x) is the lower incomplete gamma function, Γ(α) is the gamma function, and the gradient descent method is used for parameter setting to calculate E total The partial differential relative to each parameter is shown in the following formula. After the update is completed, the trained BPNN model can be obtained; In step 5.3, the test set is used for verification to establish a people detection model that can accurately detect the number of people indoors.

2. According to claim 1, a passive indoor number detection method based on Wi-Fi channel status information is characterized in that: The step 2 specifically includes detecting and deleting abnormal points of the amplitude signal, and filtering out the amplitude noise in the original CSI observation value.

3. According to claim 2, a passive indoor number detection method based on Wi-Fi channel status information is characterized in that: In step 2, the preprocessed amplitude information is obtained by specifically following the steps below: Step 2.1, using the CSI raw signals of different numbers of volunteers in step 1, read the CSI raw signals using the read_log_file function based on the Matlab software platform, wherein the CSI data is a two-dimensional matrix of N rows, where N is the number of data packets; In the experiment, the transmitter has three transmitting antennas, the receiver has three receiving antennas, each receiving antenna has 56 subcarriers, and each signal sample contains 3*3*56=504 subcarrier CSI data. Therefore, the obtained CSI data is a two-dimensional matrix of N×540. The frequency response of the channel can be expressed as follows: Among them, ∠H(f i ) represents the phase; H(f i ) is the center frequency f i The channel state information of the subcarrier, namely CSI; N s is the number of subcarriers for a single antenna, which is 56 on the Atheros AR9580 wireless network card; assuming the number of antennas at the transmitting end is N tx , the number of antennas at the receiving end is N rx , then the CSI data can be expressed as: H ij is the CSI data from the i-th antenna of the transmitting antenna (TX) to the j-th antenna of the receiving antenna (RX). Each antenna pair data contains Ns subcarriers, then H ij , which can be specifically expressed as: Each signal sample contains N tx ×N rx ×N s Subcarrier CSI data; Step 2.2, detecting and removing abnormal points on the CSI original signal read in step 2.1; Step 2.3, for the CSI signal with amplitude outliers removed in step 2.2, the amplitude noise in the original CSI observation value is filtered out using the discrete wavelet transform method.

4. According to claim 1, a passive indoor number detection method based on Wi-Fi channel status information is characterized in that: In step 5, the training set is trained using a back propagation neural network improved by a method based on a probability density function, and a number detection model is established to accurately detect the number of people in the room.

Citation Information

Patent Citations

  • Image classification model training method for suppressing label noise, classification method and system

    CN111832627A