Skip to content

YasminFathy/Adaptive-Filtering-Based-ChangeDetection

Repository files navigation

Adaptive Filtering Based Change Detection:

We propose:

-An Online, adaptive Filtering-based Change Detection (OFCD) algorithm in "OFCD" ("singleChannel_detection_fixed.m" and "singleChannel_detection_increasing.m")

-An extension of our method (OFCD) based on a Cooperative scheme between multiple sensors (COFCD) in "COFCD" (multiChannels_detection_increasing_coop.m" and "multiChannels_detection_fixed_coop.m")

We compare our algorithm to the following:

-baseline1: CUSUM with recursive form p. 6 (it is implemented it in a sub-optimal form from p.11 in same reference) Reference: Granjon, P. (2012). The cusum algorithm a small review. Gipsa-Lab, Grenoble, France, Team SAIGA. The implementaion is based on calaulating instantaneous log-likelihood: s(n) using equ 1.19 in p.10 in the same reference.

-baseline2: It is Algorithm 5: CUSUM Two-sided with recursive form p. 17 Version. The algorithm was implemented for a fixed/increasing window size in "baseline2_alg5_CUSUM17_fixed.m" and "baseline2_alg5_CUSUM17_increasing.m" scripts, respectively Reference: Granjon, P. (2012). The cusum algorithm a small review. Gipsa-Lab, Grenoble, France, Team SAIGA.

-Baseline 3: RuLSIF (a change-point detection by relativedensity ratio estimation) Reference: Liu, S., Yamada, M., Collier, N., & Sugiyama, M. (2013). Change-point detection in time-series data by relative density-ratio estimation. Neural Networks, 43, 72-83.

Note:

-We implemented baseline 1 and 2 and baseline 3 (baseline3/change_detection) is available by the authors of the ref mentioned above. In (baseline3/change_detection),I added only "demo_yasmin.m" and "demo_yasmin_db1.m" to provide a fair comparison by using the authors' implemetation on my generated data ("demo_yasmin.m") and real-word-data ("demo_yasmin_db1.m")

The algorithm is tested on:

-Synthetic data generated by the script in "generatedata" directory

-Real-world data in "real-world-dataset" directory

Folder description:

-utility has a SplitVec script, that we used to split vector in real-world data (the script license is also included)

-addpath_files.m : it is the file to add the path of all directories/sub-directories into matlab path

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages