БПФ расчет для данных акселерометра - PullRequest
0 голосов
/ 14 апреля 2020

Я новичок в области обработки сигналов и пытаюсь найти образец по данным акселерометра. Следующий график (временная метка против нескольких трасс) представляет данные акселерометра вместе с меткой. enter image description here

Я нанес несколько кривых на оси Y. Как видно из графика, когда устройство выполняет какую-то операцию и на основании этого мы можем видеть всплески данных акселерометра. Для большей ясности я также делюсь развернутым видом (увеличенный вид, как показано ниже). enter image description here

Для большей ясности и поиска возможности машинного обучения я применил БПФ, используя следующий фрагмент кода:

import pandas as pd
from scipy.fftpack import fft
df1 = pd.read_csv('/home/accelerometer_data.csv',delimiter=",")
print(df1.shape) # Output: (3755771, 4)


sample_rate = 50 # Frequency of the signal i.e. 50 HZ. Number of samples per second.
N = len(df1['acc_z']) # Total number of readings i.e. 3755771
frequency = np.linspace (0.0, 25, int (N/2))
freq_data = fft(df1['acc_z']) # Selecting accelerometer z axis
y = 2/N * np.abs (freq_data [0:np.int (N/2)])

В приведенном выше коде len(frequency) и len(y) равны 1877885, что составляет половину от общего количества показаний. Тогда это может не обеспечить частоту для остальных точек данных. Это правильно?

Диаграмма БПФ для приведенного выше кода показана ниже: enter image description here

Правильно ли рассчитан БПФ? Диаграмма БПФ, по-видимому, не полезна для извлечения объектов.

Пожалуйста, поделитесь своими взглядами.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...