## 3 State-of-the-Art in Warning Systems Based on Radio Frequency Technologies
Given the limited conditions of this test (i.e., few people, perhaps of the same age and thus with a similar walking profile, walking alone, etc. ), it would be necessary to verify the results with more random groups of people, in higher numbers, etc. This is because, for instance, the probability of blocking the LoS was obtained by applying the previously defined motion model. Results were very robust with an estimated error of less than two people (out of 9) with directional antennas. With omnidirectional antennas results were worse, although still good compared with other proposals. Another interesting proposal was suggested in [43]. The method was based on CSI measurements. The authors attempted to obtain a relationship between CSI and the number of moving people. A new metric was introduced, namely percentage of non-zero element (PEM), which represents the number of non-zero elements of the dilated CSI matrix. This metric is directly proportional to the crowd size, giving a saturation value for a specific number of people. Its performance is more accurate than [40]. Similarly, a novel system was proposed in [44], also based on CSI measurements, which did not need to be trained in the same environment where the tool was to be used. The proposal was based on analyzing the Doppler spectrum obtained via the CSI in a WiFi network, but without employing a reference signal (i.e., it cannot be classified as a radar-like approach). The idea lies in the fact that the Doppler spectrum varies according to the number of people in an indoor environment. More particularly, the authors observed the time variations of the channel frequency response (CFR) represented in the Doppler. The selected feature for people estimation was the spectral kurtosis of the Doppler spectrum. They used a device as processing equipment. This device sends a ping to the WiFi AP and the WiFi AP replies. The response is then used to obtain the CSI and CFR. Experiments in different rooms and with the same number of freely moving people (limited to seven) were carried out. Good accuracy of more than 92% was obtained in the performed tests. In [45], the performance of CSI-based and RSS-based crowd-counting systems in the same indoor scenarios was compared. In addition to the relatively good accuracy in counting people that both approaches offered, the authors discovered two interesting facts. First, the RSS-based proposal presented good results when blocking the LoS was the main signal impairment. Second, the CSI-based solution was less dependent on the indoor scenario (e.g., room size) compared to the RSS-based solution. From a totally different perspective, Wi-Counter was introduced in [46]. This method used RSS as the physical layer input data, but the proposal falls into a device-based category, that is, using data that are generated by people's own wireless devices (e.g., smartphones). The proposal operated as follows. There was a preprocessing step to eliminate noise and disturbances; specifically, using the Wiener filter and Newton interpolation. Then, there was a learning/training phase employing neural networks to learn the relationship between WiFi signals and number of people. There were also two sub-phases. One offline sub-phase to assess the eigenvalues relating RSS and people from captured data. Then, eigenvalues were introduced into the model and trained using a sigmoid activation function. Afterward, another online sub-phase, where real WiFi signals were captured, the eigenvalues were calculated and used as input to the already trained model to obtain the estimated number of people. A notable accuracy of 93% was achieved, but tests were only carried out in indoor environments. More importantly, the method required user cooperation for data gathering, which was later used in offline training. Another crowd-counting device-based system that also used the WiFi-enabled signals from the users' mobile phones was presented in [47]. Unlike [46], that proposal was not anonymous.