я бы делал такЪ во первых определить условности и допущения.
шаги вещь ритмичная, детектируемые события появляются с неким регулярным периодом. Можно предсказывать появления и отсеивать ложные срабатывания.
По логу интервал шагов примерно 37 тиков, длительность шага примерно 8-10 тиков.
Положим шаги будут в диапазоне 20-70 тиков.
алгоритм
Во первых считаем диси биас. Среднее за примерно 10 шагов, примерно 500 тиков. Назовем bias
на каждом тике считаем среднюю амплитуду за примерно пол шага - 10 прошлых тиков, среднее значение модуля отклонения от bias. Назовем amp
Если текущее отклонение от диси биас больше чем 5 *amp, то это шаг.
Если зарегистрирован шаг, то последующие 10 тиков шаг не регистрируем.