Подтвердить что ты не робот

Как работает knocktounlock?

Я пытаюсь понять, как knocktounlock.com способен обнаруживать "стуки" на iPhone. Я уверен, что они используют акселерометр для достижения этого, однако все мои попытки придумывают фальшивые флаги (если пользователь движется, прыгает и т.д. Он иногда срабатывает)

В принципе, я хочу, чтобы иметь возможность обнаруживать, когда пользователь стучит/нажимает/ударяет по телефону (и сможет отличить это от вещей, которые могут также привести к акселерометру). Поэтому я ищу острые высокие взгляды. Устройство будет в кармане, поэтому движение устройства будет не очень большим.

Я пробовал такие вещи, как high/low pass (не уверен, будет ли лучший вариант)

Это дубликат: Обнаружение жестких кранов в любом месте на iPhone с помощью акселерометра Однако ответа не получено.

Любая помощь/предложения были бы замечательными! Спасибо.

EDIT: Ищите больше мыслей, прежде чем я приму ответ. Я услышал от Knocktounlock, и они используют четвертую производную (jounce), чтобы получить более качественные значения для анализа. Что интересно.

4b9b3361

Ответ 1

Я бы подумал, что стук на iPhone будет таким же, как на двух телефонах друг с другом. Проверьте это Github Repo,

https://github.com/joejcon1/iOS-Accelerometer-visualiser

Создайте и запустите приложение на iPhone и проверьте шипы на зеленой линии. Вы можете ясно видеть значение пика,

Стук iPhone:

enter image description here

Как вы можете видеть, время фактического всплеска очень короткое, когда вы стучите по телефону. Однако шаблоны всплесков немного отличаются в Hard Knock и Soft knock, но их можно различить программно.

Теперь давайте увидим шаблон акселерометра, когда iPhone свободно перемещается в пространстве,

enter image description here

Как вы можете видеть, Шипы имеют колоколообразную форму, что означает, что для получения значения спайка требуется немного времени, чтобы вернуться к 0.

По этой схеме легче будет определить шаблон детонации. Удачи.

Кроме того, это вытолкнет вашу батарею, поскольку датчик всегда будет работать, и iPhone должен продолжать соединение с Mac через Bluetooth.

P.S.: Также проверьте этот ответ, fooobar.com/questions/202090/...

Ответ 2

Я думаю, что здесь можно использовать распознавание образов с данными акселерометра. Вы можете (написать и) обучить классификатор (например, ближайший соседей K) данными, которые вы собрали, и которые были классифицированы вручную. Нейронные сети также являются опцией. Тем не менее, будет много разных способов решения этой проблемы. Но, вероятно, нет простого способа достичь этого.

Некоторые документы, показывающие подходы к распознаванию образов для похожих тем (активность, движение), например http://www.math.unipd.it/~cpalazzi/papers/Palazzi-Accelerometer.pdf (еще несколько, но мне не разрешено публиковать их с учетом моей репутации). Вы можете найти "данные акселерометра распознавания образов" )

Существует также главный тезис о распознавании жестов на iPhone: http://klingmann.ch/msc_thesis_marco_klingmann_iphone_gestures.pdf

В целом вы не достигнете 100% правильной классификации. В зависимости от времени/знаний, полученных, результат будет варьироваться в зависимости от того, насколько хороша и удобна для использования - случайная классификация.

Ответ 3

Просто, хотя, но может быть полезно добавить в микс выход микрофона для прослушивания действительно коротких громких шумов в то же время, когда обнаружено возможное движение "стук".

Ответ 4

Я удивляюсь, что нужен 4-й производный, интуитивно чувствует, что мне нужно 3-го ( "рывок", производная от ускорения). Это большой намек на то, что следует следить.

Мне кажется довольно простым: собирайте данные акселерометра с высокой скоростью, график на графике, наблюдайте. Вычислите из этой первой производной график и наблюдайте. Затем промыть и повторить, производную от последней. Делать выводы. Я очень сомневаюсь, что вам нужно будет делать распознавание образов как таковое, кластеризацию/классификаторы/что-иметь-вы - я думаю, что вы увидите очень отчетливый пик на одном из ваших графиков, может потребоваться только настроить скорость сбора и сглаживание.

Мне интереснее, почему вам не нужно запускать приложение KnockToUnlock для этого? И если он работает в фоновом режиме, кто оставил его там без ограничений. Я не думаю, что ускорится. подходит для неограниченного фонового запуска. И после некоторого размышления, я угадываю, причина в том, что приложение использует Bluetooth для подключения Mac в качестве аксессуара - и как таковой получает пропуск от iOS для работы в фоновом режиме (и сосать аккумулятор, shhht)

Ответ 5

  • Чтобы решить эту проблему, вам нужно выбрать частоту. Нажмите (постучите) имеет очень высокую частоту, поэтому вы должны выбрать частоту акселерометр не ниже 50 Гц (возможно, даже 100 Гц) для качество обнаружения отвода в случае шума от других движений.
  • Необходимо использовать классификаторы, но для того, чтобы сэкономить заряд батареи, вы не должны вызывать классификатор очень часто. Он должен написать простой алгоритм, который найдет только краны и ситуацию, похожие на knoks, и сообщит, что вам нужно вызвать программу классификатор.
  • Обратите внимание на сигнал гироскопа, он также реагирует на удары, кроме сигнал гироскопа не требуется отделить от постоянного компонента и сигнал гироскопа содержит меньше шума.
  • Это хорошее видео об основах работы с сенсорами смартфонов: http://talkminer.com/viewtalk.jsp?videoid=C7JQ7Rpwn2k#.UaTTYUC-2Sp.