Четверолапые против двуногих: адаптируем алгоритм шагомера

22 июля 2016, 15:23

Носимыми девайсами для измерения собственной физической активности сейчас вряд ли кого-то можно удивить. Однако, мир не стоит на месте и продвигает технологии во все новые ниши. Еще недавно мы писали о носимом продукте, созданном белорусскими программистами, целевой аудиторией для которого являются женщины-модницы, а теперь на очереди наш самый «няшный» проект – создание смарт-ошейника для собак.

Если кто-то и знает, как помочь вашему четверолапому другу всегда оставаться в форме, так это Дмитрий Емельянов, инженер-программист низкоуровневого ПО в команде Softeq Embedded Department, и по совместительству один из родоначальников бэнда "Молокодоение". В рамках проекта по разработке умного ошейника для собак, Дима помогал перенастроить алгоритм шагомера, созданного для людей, чтобы его можно было использовать в устройстве для подсчета шагов хвостатых питомцев. Ольга Бабик, ведущий маркетолог, выясняла подробности.

О.: Дима, почему вы решили переделать человеческий шагомер в устройство подсчета шагов животных?

Д.:  У нас уже была собственная разработка функционала шагомера, который создавался для «умного» браслета. Наш клиент, заказавший создание ошейника, позволяющего следить за месторасположением питомца, хотел, чтобы устройство также собирало информацию о степени его активности, поэтому мы решили попробовать применить уже имеющееся решение.

О: Неужели шаг человека равен четверолапому шагу?!

Д.: К сожалению, нет. Нам пришлось потратить какое-то количество времени, чтобы подогнать алгоритм подсчета шагов под четыре лапы вместо двух ног. Еще один нюанс в том, что в отличие от человека собака не передвигается равномерно. Она может бежать трусцой, может припустить рысью, внезапно затормозить всеми четырьмя лапами или двигаться скачкообразно.

О.: Каким образом проходила отладка?

Д.: Во-первых, мы нашли подходящего представителя четвероногих – овчарку Вану немецких кровей (её хозяин – программист нашего веб-департамента Алексей Митар) – и протестировали устройство в действии. Затем мы проанализировали полученную информацию, наложив алгоритм обработки данных активности движения собаки, собираемых со встроенного трехкомпонентного акселерометра, на видео прогулки питомца с использованием хронометража. Таким образом мы смогли сопоставить пики движения на графике с видеорядом и скорректировать алгоритм соответствующим образом. Если сравнить график движения человека с графиком движения собаки, то можно обнаружить схожесть. Однако есть и заметные различия. Собака делает более разнообразные движения, чем человек, имеет большую амплитуду движения и большую частоту шагов (в среднем 0,39 cекунды между шагами у собаки и 0,64 секунды у человека). Это было учтено при фильтрации шагов от шума. Из-за произвольной смены скорости движения, подсчет шагов реализованного алгоритма прерывался. Однако, мы смогли добиться, чтобы правильный подсчет шагов возобновлялся, начиная со следующего равномерного движения собаки.

Видео с наложением графика движения собаки

Читать дальше

О.: Что будет представлять собой конечный продукт?

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

 

Дмитрий и проектная команда благодарят Алексея и Вану за помощь в тестировании устройства. В ходе полевых испытаний ни одна собака не пострадала :)

Обсуждение