Wifi_Activity_Recognition using LSTM
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
Prerequisite
Tensorflow >= 1.0
numpy
pandas
matplotlib
scikit-learn
How to run
-
Download dataset from here
-> Notice: Dataset size is ~4GB -
"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.ใใ
Dataset
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.
Jupyter notebook
PCA_STFT file visualize the data from .csv file. This code refers to CARM.