Latest dataset & Tensorflow code for IEEE Communication Magazine.
Title: A Survey on Behaviour Recognition Using WiFi Channel State Information
Work by Siamak Yousefi, Hirokazu Narui, Sankalp Dayal, Stefano Ermon, Shahrokh Valaee
Tensorflow-gpu = 1.14.0 (or 1.x)
numpy
pandas
matplotlib
scikit-learn
tensorflow consists of many library, so please make sure all the used library is under v1.14.0
If you use anaconda, the default python version may be different from we need. So, create a new environment by "conda create -n myenv python=3.7 anaconda" .Then swich to new environment and install tensorflow by "conda install tensorflow==1.14.0"
-
Download dataset from here
-> Notice: Dataset size is 3.6GB -
"git clone" this repository.
-
Run the cross_vali_data_convert_merge.py
-> This script makes csv files(input features & label) of each activity in "input_files" folder. -
Run the cross_vali_recurrent_network_wifi_activity.py -> This script makes learning curve images & confusion matrix in a new folder.
We collect dataset using Linux 802.11n CSI Tool.
The files with "input_" prefix are WiFi Channel State Information data.
-> 1st column shows timestamp.
-> 2nd - 91st column shows (30 subcarrier * 3 antenna) amplitude.
-> 92nd - 181st column shows (30 subcarrier * 3 antenna) phase.
The files with "annotation_" prefix are annotation data.
PCA_STFT file visualize the data from .csv file. This code refers to CARM.