Для предыдущего проекта я пытался вычислить величину вектора ускорения и просто установить порог около 2g, и это довольно хорошо сработало при тестировании. Типичный (аппаратный) шагомер будет игнорировать одиночные толчки, которые происходят с интервалом более секунды, что кажется хорошим способом отфильтровать случайные движения, которые не являются «ходьбой».
Кроме того, вы можете автоматически регулировать порог, просматривая данные некоторое время.