| Literature DB >> 32325712 |
Ahsen Tahir1,2, Gordon Morison1, Dawn A Skelton3, Ryan M Gibson1.
Abstract
Falls are a leading cause of death in older adults and result in high levels of mortality, morbidity and immobility. Fall Detection Systems (FDS) are imperative for timely medical aid and have been known to reduce death rate by 80%. We propose a novel wearable sensor FDS which exploits fractal dynamics of fall accelerometer signals. Fractal dynamics can be used as an irregularity measure of signals and our work shows that it is a key discriminant for classification of falls from other activities of life. We design, implement and evaluate a hardware feature accelerator for computation of fractal features through multi-level wavelet transform on a reconfigurable embedded System on Chip, Zynq device for evaluating wearable accelerometer sensors. The proposed FDS utilises a hardware/software co-design approach with hardware accelerator for fractal features and software implementation of Linear Discriminant Analysis on an embedded ARM core for high accuracy and energy efficiency. The proposed system achieves 99.38% fall detection accuracy, 7.3× speed-up and 6.53× improvements in power consumption, compared to the software only execution with an overall performance per Watt advantage of 47.6×, while consuming low reconfigurable resources at 28.67%.Entities:
Keywords: FPGA; classification; embedded system on chip; fall detection; fractal features; hardware software co-design; machine learning; reconfigurable design; wearable sensors
Year: 2020 PMID: 32325712 PMCID: PMC7219672 DOI: 10.3390/s20082322
Source DB: PubMed Journal: Sensors (Basel) ISSN: 1424-8220 Impact factor: 3.576
Figure 1Wearable fall detection system overview.
Figure 2Three axes accelerometer signals , and for falls.
Figure 3Original and first difference signals.
ARFIMA model for falls, walking and picking up objects.
| Activity | ARFIMA | AR(1) | MA(1)/MA(4) | Likelihood | AIC |
|
|
|
|---|---|---|---|---|---|---|---|---|
| Falling | (1,d,1) | 0.64 | 0.46 | 1144.5 | −3.94 | 0.49 | 1.49 | 0.99 |
| Walking | (1,d,4) | 0.86 | 2.1, 2.3, 1.9, 0.8 | 2785 | −9.27 | −0.48 | 0.52 | 0.02 |
| Picking up | (1,d,4) | 0.9 | 1.5, 1.6, 1.2, 0.4 | 2353 | −10.13 | −0.32 | 0.68 | 0.18 |
Hurst exponent from ARFIMA analysis.
| Activity |
|
|
|
| |
|---|---|---|---|---|---|
| Mean | SD | Mean | Mean | Mean | |
| Falls | 1.490 | 0.003 | 1.49 | 0.99 | 1.01 |
| Walking | 0.518 | 0.002 | 0.518 | 0.018 | 1.982 |
| Kneeling down | 0.554 | 0.258 | 0.554 | 0.054 | 1.946 |
| Sitting down | 0.999 | 0.000 | 0.999 | 0.499 | 1.501 |
| Standing up | 0.99 | 0.007 | 0.990 | 0.490 | 1.51 |
| Picking up objects | 0.699 | 0.091 | 0.699 | 0.199 | 1.801 |
| Lying | 0.225 | 0.347 | - | - | - |
Figure 4Flow chart of the proposed scheme.
Classification accuracy for features.
| Features | LDA Classifier |
|---|---|
| Accuracy (%) | |
| Wavelet Transform Lvl 2 | 79.77 (±0.08) |
| Wavelet Transform Lvl 3 | 83.09 (±0.08) |
| Wavelet Transform Lvl 4 | 85.76 (±0.09) |
| Fractal Features | 91.84 (±0.21) |
| Fractal, Wavelet Lvl 4 | 95.61 (±0.09) |
| Fractal, Wavelet Lvl 4, Mean, SD | 99.38 (±0.19) |
Classification Performance Comparison.
| Authors | KSE’18 [ | IEEE Sensors’18 [ | PEIS’19 [ | IEEE Access’19 [ | IEEE Sensors’19 [ | Proposed FDS |
|---|---|---|---|---|---|---|
| Dataset | Self-simulated | SisFall Data [ | Fall Data [ | Public Datasets | SisFall Data [ | Fall Data [ |
| Sensor | Tri-axes Acc., | Tri-axes Acc. | Tri-axes Acc. | Tri-axes Acc., | Tri-axes Acc., | Tri-axes Acc. |
| Sensor Location | Gyro. | Gyro. | Gyro. | Pelvis | ||
| Hip | Waist, Chest, | Waist | Thigh, Chest | Waist | ||
| Features | Mean, SD, | Mean, SD, | Mean, Maxima, | Mean, Maxima, | ||
| Energy, Entropy, | Maxima, Minima, | x, y, z Axes | Minima, Auto | Minima, SD, | Fractal and | |
| Hjorth Mobility | Kurtosis, | Acceleration | Cross Correlation | Sum Vector, | Wavelet Lvl | |
| and Complexity, | Skewness, Corr. | Peak PSD etc. | Kurtosis, | 4 Features, | ||
| Sum Vector etc. | Coefficients etc. | Skewness etc. | Mean, SD | |||
| Classifier | SVM, RF | SVM, KNN, DT, | Deep Hybrid | ANN, KNN, | KNN, SVM, | LDA |
| Naive Bayes | RNN | EBT, QSVM | RF | |||
| Sensitivity | 94.37% | 98.30% | - | - | 80.07% | 99.10% |
| Specificity | - | - | - | - | 98.27% | 99.90% |
| Accuracy | - | 97.60% | 92.23% | 97.70% | 96.82% | 99.38% |
Figure 5Run time analysis of the proposed algorithm.
Figure 6Zynq SoC design for a fall detection system.
Figure 7Hardware arithmetic pipeline of wavelet transform.
Figure 8Logic circuit for mean, variance and fractal dimension computations.
Hardware designs resource utilization and latency.
| Hardware Resources | Design I | Design II | Design III | Design IV | Final Design | |||||
|---|---|---|---|---|---|---|---|---|---|---|
| Used | % | Used | % | Used | % | Used | % | Used | % | |
| LUT Logic | 2516 | 4.73 | 2775 | 5.22 | 4394 | 8.26 | 5403 | 10.16 | 7222 | 13.58 |
| CARRY4 | 141 | 1.06 | 141 | 1.06 | 139 | 1.05 | 139 | 1.05 | 139 | 1.05 |
| Register | 3328 | 3.13 | 3637 | 3.42 | 7370 | 6.93 | 10,161 | 9.55 | 12,853 | 12.08 |
| LUT Shift Reg. | 112 | 0.64 | 121 | 0.7 | 1419 | 8.16 | 132 | 0.76 | 147 | 0.84 |
| LUT Dist. RAM | 160 | 0.92 | 160 | 0.92 | 224 | 1.29 | 288 | 1.66 | 192 | 1.1 |
| Muxes | 10 | 0.02 | 10 | 0.02 | 15 | 0.03 | 10 | 0.02 | 10 | 0.02 |
| Total | 6902 | 10.5 | 7459 | 11.34 | 14,265 | 25.72 | 17,353 | 23.2 | 21,649 | 28.67 |
| Block RAM | 7 | 5 | 7 | 5 | 8.5 | 6.07 | 10 | 7.14 | 12 | 7.14 |
| DSP48E | 10 | 4.55 | 10 | 4.55 | 10 | 4.55 | 10 | 4.55 | 10 | 4.55 |
| I/O | 119 | 59.5 | 119 | 59.5 | 119 | 59.5 | 119 | 59.5 | 119 | 59.5 |
| Latency cycles at 100 MHz | 17381 | 9070 | 3841 | 5423 | 1629 | |||||
Hardware designs power consumption.
| Hardware Resources | Design I | Design II | Design III | Design IV | Final Design |
|---|---|---|---|---|---|
| (Watts) | (Watts) | (Watts) | (Watts) | (Watts) | |
| Clocks | 0.029 | 0.029 | 0.044 | 0.056 | 0.047 |
| LUT Logic | 0.013 | 0.014 | 0.019 | 0.025 | 0.015 |
| CARRY4 | 0.001 | 0.001 | 0.001 | 0.001 | <0.001 |
| Register | 0.001 | 0.001 | 0.002 | 0.003 | 0.001 |
| LUT Shift Reg. | <0.001 | <0.001 | <0.001 | <0.001 | <0.001 |
| LUT Dist. RAM | <0.001 | <0.001 | <0.001 | <0.001 | <0.001 |
| Muxes | <0.001 | <0.001 | <0.001 | <0.001 | <0.001 |
| Total | 0.016 | 0.016 | 0.022 | 0.03 | 0.017 |
| Signals | 0.022 | 0.022 | 0.037 | 0.052 | 0.029 |
| Block RAM | 0.02 | 0.013 | 0.018 | 0.026 | 0.016 |
| DSP48E | 0.006 | 0.006 | 0.006 | 0.005 | 0.002 |
| I/O | 0.019 | 0.011 | 0.012 | 0.02 | 0.012 |
| Static Power | 0.107 | 0.107 | 0.107 | 0.108 | 0.107 |
| Total Power | 0.218 | 0.202 | 0.246 | 0.297 | 0.23 |
Figure 9Power and performance results of hardware designs.
Figure 10Hardware speed-up relative to software execution.
Proposed algorithm system comparison with current comparable work.
| AICCSA’14 [ | SAI’16 [ | AICCSA’16 [ | IDT’16 [ | BHI’17 [ | TBioCAS’19 [ | Proposed System | |
|---|---|---|---|---|---|---|---|
| Sensor | Tri-axes Acc. | ECG + Acc. | Tri-axes Acc. | Tri-axes Acc. | Tri-axes Acc. | Tri-axes Acc. | Tri-axes Acc. |
| Method | PCA + DT | K-NN | Thresholding and SVM | Thresholding and SVM | Thresholding | Thresholding | Fractal Features |
| Processor | Zynq | Zynq Z-7000 | Zynq Z-7010 | Zynq Z-7010 | FPGA | Virtex5 | Zynq Z-7020 |
| Frequency | 121–298 MHz | 100 MHz | - | - | - | 1 KHz | 100 MHz |
| Latency | 97.86–2 | - | 0.86 | 6.34 | 1 s | 1 s | 0.1 |
| LUT | 3381–27465 | 40955 | 4314 | 2470 | - | 39190 | 2516–7222 |
| Flip Flops | 1352–10129 | 24015 | 3815 | 2539 | - | 21750 | 3328–12853 |
| BRAM | 4–0 | 2 | 1 | 2 | - | - | 12 |
| DSP48E | 5–70 | 28 | - | 12 | - | - | 10 |
| Validation | Self-simulated | Self-simulated | Self-simulated | Self-simulated | Self-simulated | Self-simulated | Fall Dataset [ |
| Reproducibility | x | x | x | x | x | x | |
| Sensitivity | - | - | 89.50% | 89.50% | 98.10% | 98.60% | 99.10% |
| Specificity | - | - | 97.00% | 97.00% | 99.20% | 99.10% | 99.90% |
| Accuracy | 88.40% | 82.14% | - | - | - | - | 99.38% |