0
$\begingroup$

I want to count steps which are basically represented by peaks in the signal. the red part in the signal doesnt correspond to any walking activity, I want to ignore them. Any help on segmenting or croping out the green parts of the signal.

Red parts I want to ignore. Green parts I want to process and do some calculation on

$\endgroup$
0
$\begingroup$

Since I don't have access to your data, I found similar data online at https://archive.ics.uci.edu/ml/datasets/User+Identification+From+Walking+Activity#. It gives X-Y-Z accelerator readings. It is pretty clear that frequency content in the green and red sections are different. The green has significantly more high frequency components than the red. The frequency content changing over time had me think that short time Fourier analysis would be helpful.

So what I did was download the dataset and plot one of the signals to make sure we are looking at similar data. Here is a signal from the dataset I found online (pretty similar to yours!):

enter image description here

The next step would be to take a short time Fourier transform. MATLAB has already implemented this in the stft function. Using the defaults and plotting the result, I get this:

enter image description here

Now you can see, over time, how the frequency content of the signal changes. Just as we suspected, most of the signal has more energy in the higher frequency, and there are two spots where the high frequency content vanishes. Essentially, the problem becomes detecting the dark blue vertical lines in the image, or equivalently detecting the higher frequency components. Hope this helps!

| improve this answer | |
$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.