Pull to refresh
0
Wolfram Research
Wolfram Language, Mathematica, Wolfram Alpha и др.

В погоне за самим собой, или отличный способ начать свой день

Reading time 3 min
Views 19K
Original author: Mariusz Jankowski

Перевод поста Mariusz Jankowski "A Rat Race, or a Great Way to Start the Day".
Код, приведенный в статье, можно скачать здесь.
Выражаю огромную благодарность Кириллу Гузенко KirillGuzenko за помощь в переводе.

Не так давно, когда бушевала зима, расчищая подъезд к дому от завалов снега, я решил вспомнить о хорошей погоде, рассмотрев с использованием Wolfram Language свой велосипедный маршрут на работу.

В прошлом году я решил заняться такой весьма распространённой деятельностью, как запись данных своей активности. Я отметил, что за последние несколько лет мои поездки становились все быстрее и давались мне проще по мере того, как сезон приближался к концу, так что мне стало интересно удостовериться в наличии подобных улучшений своей физической формы. Используя лишь смартфон и соответствующее приложение, я записал 27 поездок между домом и работой, а затем использовал Wolfram Language для чтения, анализа и визуализации результатов.

Вот изображение с Google Earth, показывающее мой утренний велосипедный маршрут, имеющий расстояние чуть меньше 18 км, пролегающий с востока на запад.



Для передачи данных из смартфона я использовал GPX (GPS Exchange Format) — формат файла, поддерживаемый крупнейшими производителями GPS-устройств и доступный в большинстве приложений. Обычный файл GPX включает в себя данные о местоположении и высоте с отметками времени, и Wolfram Language возвращает эти данные в виде списка правил с говорящими названиями Geometry, PointElevation и PointTimestamp.

Вот фрагмент одного из файлов формата GPX:



Воспользовавшись новыми функциями в сфере работы с геоданными в Wolfram Language и доступными данными о времени и положении, я смог легко и быстро создать анимацию дневной поездки (больше деталей доступно в разделе Initialization в прилагаемом CDF).




Ещё немного усилий, и вот кое-что интересное: я совместил все утренние поездки за сезон в рамках одной анимированной гонки — вот такие вот получились «крысиные бега» на работу! Лидер сезона показан жёлтым, конечно же!




Вот результаты этого «забега»:



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



И пусть предыдущие расчеты и визуализации достаточно хороши, но мы можем сделать нечто большее. Файлы GPX содержат данные о высоте с привязкой ко времени, однако не только это позволит легко визуализировать общий профиль дороги, но и кое-что ещё: обнаружение участков подъёма и спуска посредством нового функционала из сферы обработки сигналов — обнаружение пиков.

Начнём со стандартного профиля дороги:



Чтобы определить подъёмы и спады, я сгладил данные по подъёмам чтобы фиксировать в сигнале только наиболее крупные локальные максимумы и минимумы. Для этого я сначала построил линейную интерполяцию всей функции чтобы избавиться от слишком нестабильных интервалов в записанных данных, а затем сгладил её посредством GaussianFilter.



Операция сглаживания убирает «паразитные» пики и спады в данных по высотам. Я определил оставшиеся крупные пики с помощью FindPeaks и разделил маршрут на восходящие и нисходящие участки.



Визуализируем участки подъёмов и спусков утренней поездки на графике высот:



А вот несколько более полезная визуализация — участки подъёмов и спусков маршрута на карте:




Примерные расстояния участков подъёма и спуска доступны из списков подъёмов и спусков, вычисленных ранее. Следующий результат подтверждает простую истину о том, что отправляться на работу всегда тяжелее (т. е. в гору), и, следовательно, менее приятно, чем возвращаться с неё.



Я уже с нетерпением жду следующего сезона и всяких интересных фактов в анализе своих данных с помощью Wolfram Language.
Tags:
Hubs:
If this publication inspired you and you want to support the author, do not hesitate to click on the button
+9
Comments 13
Comments Comments 13

Articles

Information

Website
www.wolfram.com
Registered
Founded
1987
Employees
1,001–5,000 employees
Location
США