Как стать автором
Обновить

Комментарии 14

Проверил на своем — два раза разные значения. Идентификация не прошла.
А Symbian ^3 просто не дает доступ к акселерометру на JS, значит можно не бояться Большого Брата хотя бы в этом случае)
Вот этом соревновании нашли кучу ликов в данных связанных с частотой семплирования в акселерометре, несмотря на все попытки орагнизаторов убрать эти структуры: www.kaggle.com/c/accelerometer-biometric-competition
Там даже есть чувак, который дал точность больше 90%. Используя только поле timestamp.

Я думаю причин много:
1) Акселерометры — аппаратные устройства, каждый производитель их делает посвоему
2) Они работают на апаратной платформе телефона, каждый производитель их делает посвоему
3) В Андройде есть только 3 значения частоты (типа: мало, средне, много), каждый производитель их понимает посвоему.
4) Наконец программное API сенсоров работает в многозадачной среде, как правило с планировщиком нагрузки с вытеснением задач, а значит даже заданная частота семплирования не может гарантироваться. Профайл бекграунд процессов у каждого телефона может быть достаточно уникален (зависит от настроек и установленных приложений).

В итоге уже только сравнивая timestamp акселерометра получаем довольно уникальные признаки
О чем вы, что это за график?

В покое акселерометр показывает угол к ускорению свободного падения, так с помощью одного смартфона можно получить «отпечаток» стола, тк они все расположены под каким-то углом к горизонтали.

При воспроизведении тестовой дорожки с динамика микрофон даст тысячу вариаций в зависимости от поверхности, окружающей среды, материала вещей вокруг.
Видимо, мысль в том, что техника несовершенна, причем несовершенности уникальны. Положив все телефоны на стол и получив показания их акселерометров, по их отличиям друг от друга мы сможем определить, где какой телефон
Допустим, но на другом столе или сменив их расположения мы не сможем сказать какой был каким на первом столе.
Идея как раз в том, что индивидуальный характер отличий не зависит от стола. И именно поэтому мы можем сказать. Например, что первый телефон всегда прибавляет 1 см/с, а второй — уменьшает угол на 1 градус, и тд
Давно уже хотел спросить, а тут как раз топик по теме. Какая фактическая погрешность у акселерометров и гироскопов в современных телефонах? Скажем, если я равномерно поношу телефон по квартире пару минут, насколько точно можно будет восстановить 3d-траекторию?
Пишут, что ужасная. Любой шум или неточность измерения после двойного интегрирования становятся значительными.

stackoverflow.com/questions/7829097/android-accelerometer-accuracy-inertial-navigation

www.youtube.com/watch?v=C7JQ7Rpwn2k&feature=youtu.be&t=23m21s

В видео (Google Tech Talk 2010: Sensor Fusion on Android Devices: A Revolution in Motion Processing, «Double Integration») есть пример для неподвижного смартфона. Из-за шума он «двигался» со скоростью порядка 20 см/с, из-за неточного определения угла (1 градус) при учете ускорения свободного падения «перемещение» достигало 8,5 м/с.
Помимо погрешности у них есть разрешение в 12-16 бит, а вообще энерциальные системы делают же.
Ведь еще ускорение свободного падения изменяется от широты, долготы, высоты, угловой скорости. Это тоже нужно учитывать. Распознали один смартфон в Сан-Франциско, а в Ванкувере будут другие показания датчиков.
НЛО прилетело и опубликовало эту надпись здесь
Эти «отпечатки» крайне нестабильны, для идентификации одного устройства среди тысяч подобных это неприменимо. Работая с недорогими акселерометрами я давно замечал что у них есть небольшой «эффект памяти»: после воздействия некоторой перегрузки ноль немного смещается. Упал телефон — и всё уехало далеко. При этом свою задачу (определение положения смартфона в пространстве с точностью, достаточной для его работы) датчики выполняют исправно.
Зарегистрируйтесь на Хабре, чтобы оставить комментарий