Как уже было сказано, акселерометр очень неточен, и вам потребуется очень хорошая точность для такого рода задач, особенно если вы пытаетесь измерить такие короткие расстояния. Кроме того, акселерометры различаются от устройства к устройству, вы получите разные результаты для одних и тех же движений на разных устройствах. Плюс очень большая случайная ошибка.
Я предполагаю, что вы можете избавиться от огромной части случайности/ошибки, откалибровав устройство и сделав «движение измерения» пару раз, например, 10 раз. После этого у вас будет достаточно данных, чтобы получить среднее значение, которое может быть близко к реальному значению.
Калибровка является ключевой частью здесь, вы должны придумать умный способ калибровки, например, позволить пользователю перемещать устройство на разные расстояния с разной скоростью.
Но все это только теория. Мне бы очень хотелось увидеть ваши результаты, но я сомневаюсь, что они работают достаточно хорошо, даже используя наилучшие возможные фильтры/алгоритмы, поскольку слишком много шума.
Это хороший вопрос, но было бы здорово увидеть ваш сопровождающий код...
person
jimpic
schedule
20.12.2012