IEEE Computational Intelligence Magazine - November 2019 - 36

significantly between the motion and stationary state, and
design an automatic segmentation algorithm with computational intelligence, as shown in Alg. 1. The key steps of this
algorithm are as follows:
❏ Variance calculating. Calculate the variance of the waveform with the window size 1/20  s and step size 1/ fs s,
where fs is the rate of packet sending. This calculation will
convert the original waveform into a waveform of variance.
When the original waveform is relatively calm, the amplitude of variance waveform is close to 0, and when the original waveform fluctuates greatly, the amplitude of variance
waveform is much larger than 0. Compared with the original waveform, this variance waveform retains the fluctuation
characteristics and is not affected by the change of the
amplitude. We use nor1 to represent this variance of the
waveform, as shown in Fig. 4(b);

Algorithm 1 Automatic segmentation algorithm.

Input: CSI f
Output: Gesture Waveform
1 begin
windows = 1/ 20 s;
2
step = 1/ fs s;
3
nor1= variance (CSI f , windows, step);
4
nor2 = 100 ) variance(sum(nor1), windows, step);
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32

36

while t 1 length(nor2) do
set = 4;
for se = 0.1: 0.1: 5 do
for i = t : length(nor2) do
se = se + nor1(i ) - nor2(i );
if se 1 0 then
set = [set; i ];
end
end
end
for j = 1: length(set ) do
if max (set ( j : j + 5) - min(set ( j : j + 5)) 1 10/ fs s
then
start - point = set ( j );
e = nor2(set ( j ));
for x = set ( j ) : length(nor2); do
if nor 2(x) 1= e then
end - point = x;
end
end
t = end - point; end
end
end
forall the w in waveform segmented do
if max (w) - min(w) 1 threshold then
remove it;
end
end

IEEE COMPUTATIONAL INTELLIGENCE MAGAZINE | NOVEMBER 2019

❏ Data smoothing. For nor1, small fluctuations exist in the

stationary state due to noise interference. To denoise these
fluctuations, we first perform a sum operation on nor1 with
the same window size 1/20 s and step size 1/ fs s. Then similar to step 1 (i.e., variance calculating), we calculate the variance of the waveform obtained after the sum operation.
After such operation, we multiply the newly generated
waveform by 100 and then obtain nor2, as shown in Fig. 4(c);
❏ Star-point marking. We compare nor1 to nor2, as shown
in Fig. 4(d), and observe that the denoising is effective and
that the difference between nor1 and nor2 of no gesture
states is very small. But when the gesture occurs, the difference between nor1 and nor2 is very large, as shown in
Fig.  4(d), and we find the start-point of gesture based on
this character. Specifically, set an initial value se and set sp as
the start point of the motion detection. If se 2 0, then
se = se - (nor2(sp) - nor1(sp)), sp = sp + 1; otherwise, record
the sp as a segment point. se increases from 0.1 to 5 with a
step of 0.1 in our experiments; thus, we can obtain 50 segment points. Since when the gesture occurs, the value difference between nor1 and nor2 is very large. Thus, at the
start-point of gesture, increasing se will not make the segment point move back too much, as shown in Fig. 4(d). We
select one particular segment point as the start-point; the
difference between this point and its five following consecutive segment points is smaller than a threshold (10/fs s in
the experiments).
❏ End-point marking. Given that the value of the endpoint of each motion is almost the same as its start-point in
terms of nor2, we find a point en after spt (spt represents
the start-point of motion in step 3 (i.e., start-point marking)). If nor2(en) 1= nor2(spt ), set en as the endpoint of this
motion. Go to step 3.
❏ Data validating. We omit the segmentation results with
amplitude differences less than a certain value. The results
obtained by using our segment algorithm for the original
waveform in Fig. 4(a) are shown in Fig. 5. There are 17 subfigures, and each subfigure is a waveform of a typing; the
17 subfigures are for the 17 gestures of Fig. 4(a).
C. Understanding Layer

Micro-gesture Recognition. We use a traditional classifier
(such as SVM, KNN and Random Forest) to determine
whether the micro-gesture is typing or mouse moving. The
feature selection plays a central role, and the features used by
the classifier are as follows.
The directions of the two types of micro-gestures are basically orthogonal (one horizontal to the desktop and one perpendicular to the desktop). If we type or move at almost the
same speed; however, the signal propagation path length
change speed of these two gestures is very different. The
intensity of the waveform fluctuations can reflect the speed at
which the signal propagation path changes; thus, we use the
variance of gesture waveform as the first feature of the classifier. The typing gesture is symmetrical (press the keyboard



IEEE Computational Intelligence Magazine - November 2019

Table of Contents for the Digital Edition of IEEE Computational Intelligence Magazine - November 2019

Contents
IEEE Computational Intelligence Magazine - November 2019 - Cover1
IEEE Computational Intelligence Magazine - November 2019 - Cover2
IEEE Computational Intelligence Magazine - November 2019 - Contents
IEEE Computational Intelligence Magazine - November 2019 - 2
IEEE Computational Intelligence Magazine - November 2019 - 3
IEEE Computational Intelligence Magazine - November 2019 - 4
IEEE Computational Intelligence Magazine - November 2019 - 5
IEEE Computational Intelligence Magazine - November 2019 - 6
IEEE Computational Intelligence Magazine - November 2019 - 7
IEEE Computational Intelligence Magazine - November 2019 - 8
IEEE Computational Intelligence Magazine - November 2019 - 9
IEEE Computational Intelligence Magazine - November 2019 - 10
IEEE Computational Intelligence Magazine - November 2019 - 11
IEEE Computational Intelligence Magazine - November 2019 - 12
IEEE Computational Intelligence Magazine - November 2019 - 13
IEEE Computational Intelligence Magazine - November 2019 - 14
IEEE Computational Intelligence Magazine - November 2019 - 15
IEEE Computational Intelligence Magazine - November 2019 - 16
IEEE Computational Intelligence Magazine - November 2019 - 17
IEEE Computational Intelligence Magazine - November 2019 - 18
IEEE Computational Intelligence Magazine - November 2019 - 19
IEEE Computational Intelligence Magazine - November 2019 - 20
IEEE Computational Intelligence Magazine - November 2019 - 21
IEEE Computational Intelligence Magazine - November 2019 - 22
IEEE Computational Intelligence Magazine - November 2019 - 23
IEEE Computational Intelligence Magazine - November 2019 - 24
IEEE Computational Intelligence Magazine - November 2019 - 25
IEEE Computational Intelligence Magazine - November 2019 - 26
IEEE Computational Intelligence Magazine - November 2019 - 27
IEEE Computational Intelligence Magazine - November 2019 - 28
IEEE Computational Intelligence Magazine - November 2019 - 29
IEEE Computational Intelligence Magazine - November 2019 - 30
IEEE Computational Intelligence Magazine - November 2019 - 31
IEEE Computational Intelligence Magazine - November 2019 - 32
IEEE Computational Intelligence Magazine - November 2019 - 33
IEEE Computational Intelligence Magazine - November 2019 - 34
IEEE Computational Intelligence Magazine - November 2019 - 35
IEEE Computational Intelligence Magazine - November 2019 - 36
IEEE Computational Intelligence Magazine - November 2019 - 37
IEEE Computational Intelligence Magazine - November 2019 - 38
IEEE Computational Intelligence Magazine - November 2019 - 39
IEEE Computational Intelligence Magazine - November 2019 - 40
IEEE Computational Intelligence Magazine - November 2019 - 41
IEEE Computational Intelligence Magazine - November 2019 - 42
IEEE Computational Intelligence Magazine - November 2019 - 43
IEEE Computational Intelligence Magazine - November 2019 - 44
IEEE Computational Intelligence Magazine - November 2019 - 45
IEEE Computational Intelligence Magazine - November 2019 - 46
IEEE Computational Intelligence Magazine - November 2019 - 47
IEEE Computational Intelligence Magazine - November 2019 - 48
IEEE Computational Intelligence Magazine - November 2019 - 49
IEEE Computational Intelligence Magazine - November 2019 - 50
IEEE Computational Intelligence Magazine - November 2019 - 51
IEEE Computational Intelligence Magazine - November 2019 - 52
IEEE Computational Intelligence Magazine - November 2019 - 53
IEEE Computational Intelligence Magazine - November 2019 - 54
IEEE Computational Intelligence Magazine - November 2019 - 55
IEEE Computational Intelligence Magazine - November 2019 - 56
IEEE Computational Intelligence Magazine - November 2019 - 57
IEEE Computational Intelligence Magazine - November 2019 - 58
IEEE Computational Intelligence Magazine - November 2019 - 59
IEEE Computational Intelligence Magazine - November 2019 - 60
IEEE Computational Intelligence Magazine - November 2019 - 61
IEEE Computational Intelligence Magazine - November 2019 - 62
IEEE Computational Intelligence Magazine - November 2019 - 63
IEEE Computational Intelligence Magazine - November 2019 - 64
IEEE Computational Intelligence Magazine - November 2019 - 65
IEEE Computational Intelligence Magazine - November 2019 - 66
IEEE Computational Intelligence Magazine - November 2019 - 67
IEEE Computational Intelligence Magazine - November 2019 - 68
IEEE Computational Intelligence Magazine - November 2019 - 69
IEEE Computational Intelligence Magazine - November 2019 - 70
IEEE Computational Intelligence Magazine - November 2019 - 71
IEEE Computational Intelligence Magazine - November 2019 - 72
IEEE Computational Intelligence Magazine - November 2019 - 73
IEEE Computational Intelligence Magazine - November 2019 - 74
IEEE Computational Intelligence Magazine - November 2019 - 75
IEEE Computational Intelligence Magazine - November 2019 - 76
IEEE Computational Intelligence Magazine - November 2019 - 77
IEEE Computational Intelligence Magazine - November 2019 - 78
IEEE Computational Intelligence Magazine - November 2019 - 79
IEEE Computational Intelligence Magazine - November 2019 - 80
IEEE Computational Intelligence Magazine - November 2019 - 81
IEEE Computational Intelligence Magazine - November 2019 - 82
IEEE Computational Intelligence Magazine - November 2019 - 83
IEEE Computational Intelligence Magazine - November 2019 - 84
IEEE Computational Intelligence Magazine - November 2019 - 85
IEEE Computational Intelligence Magazine - November 2019 - 86
IEEE Computational Intelligence Magazine - November 2019 - 87
IEEE Computational Intelligence Magazine - November 2019 - 88
IEEE Computational Intelligence Magazine - November 2019 - 89
IEEE Computational Intelligence Magazine - November 2019 - 90
IEEE Computational Intelligence Magazine - November 2019 - 91
IEEE Computational Intelligence Magazine - November 2019 - 92
IEEE Computational Intelligence Magazine - November 2019 - Cover3
IEEE Computational Intelligence Magazine - November 2019 - Cover4
https://www.nxtbook.com/nxtbooks/ieee/computationalintelligence_202311
https://www.nxtbook.com/nxtbooks/ieee/computationalintelligence_202308
https://www.nxtbook.com/nxtbooks/ieee/computationalintelligence_202305
https://www.nxtbook.com/nxtbooks/ieee/computationalintelligence_202302
https://www.nxtbook.com/nxtbooks/ieee/computationalintelligence_202211
https://www.nxtbook.com/nxtbooks/ieee/computationalintelligence_202208
https://www.nxtbook.com/nxtbooks/ieee/computationalintelligence_202205
https://www.nxtbook.com/nxtbooks/ieee/computationalintelligence_202202
https://www.nxtbook.com/nxtbooks/ieee/computationalintelligence_202111
https://www.nxtbook.com/nxtbooks/ieee/computationalintelligence_202108
https://www.nxtbook.com/nxtbooks/ieee/computationalintelligence_202105
https://www.nxtbook.com/nxtbooks/ieee/computationalintelligence_202102
https://www.nxtbook.com/nxtbooks/ieee/computationalintelligence_202011
https://www.nxtbook.com/nxtbooks/ieee/computationalintelligence_202008
https://www.nxtbook.com/nxtbooks/ieee/computationalintelligence_202005
https://www.nxtbook.com/nxtbooks/ieee/computationalintelligence_202002
https://www.nxtbook.com/nxtbooks/ieee/computationalintelligence_201911
https://www.nxtbook.com/nxtbooks/ieee/computationalintelligence_201908
https://www.nxtbook.com/nxtbooks/ieee/computationalintelligence_201905
https://www.nxtbook.com/nxtbooks/ieee/computationalintelligence_201902
https://www.nxtbook.com/nxtbooks/ieee/computationalintelligence_201811
https://www.nxtbook.com/nxtbooks/ieee/computationalintelligence_201808
https://www.nxtbook.com/nxtbooks/ieee/computationalintelligence_201805
https://www.nxtbook.com/nxtbooks/ieee/computationalintelligence_201802
https://www.nxtbook.com/nxtbooks/ieee/computational_intelligence_winter17
https://www.nxtbook.com/nxtbooks/ieee/computational_intelligence_fall17
https://www.nxtbook.com/nxtbooks/ieee/computational_intelligence_summer17
https://www.nxtbook.com/nxtbooks/ieee/computational_intelligence_spring17
https://www.nxtbook.com/nxtbooks/ieee/computational_intelligence_winter16
https://www.nxtbook.com/nxtbooks/ieee/computational_intelligence_fall16
https://www.nxtbook.com/nxtbooks/ieee/computational_intelligence_summer16
https://www.nxtbook.com/nxtbooks/ieee/computational_intelligence_spring16
https://www.nxtbook.com/nxtbooks/ieee/computational_intelligence_winter15
https://www.nxtbook.com/nxtbooks/ieee/computational_intelligence_fall15
https://www.nxtbook.com/nxtbooks/ieee/computational_intelligence_summer15
https://www.nxtbook.com/nxtbooks/ieee/computational_intelligence_spring15
https://www.nxtbook.com/nxtbooks/ieee/computational_intelligence_winter14
https://www.nxtbook.com/nxtbooks/ieee/computational_intelligence_fall14
https://www.nxtbook.com/nxtbooks/ieee/computational_intelligence_summer14
https://www.nxtbook.com/nxtbooks/ieee/computational_intelligence_spring14
https://www.nxtbook.com/nxtbooks/ieee/computational_intelligence_winter13
https://www.nxtbook.com/nxtbooks/ieee/computational_intelligence_fall13
https://www.nxtbook.com/nxtbooks/ieee/computational_intelligence_summer13
https://www.nxtbook.com/nxtbooks/ieee/computational_intelligence_spring13
https://www.nxtbook.com/nxtbooks/ieee/computational_intelligence_winter12
https://www.nxtbook.com/nxtbooks/ieee/computational_intelligence_fall12
https://www.nxtbookmedia.com