Як ми знаходимо кожен підйом у світі
Від 201 мільйонів дорожніх сегментів до мільйонів перевірених велосипедних підйомів. Ось як ми будуємо найповнішу базу даних підйомів у світі.
1. Починаємо з карти світу
OpenStreetMap - це спільний проект, у якому добровольці з усього світу наносять на карту кожну дорогу, стежку та шлях. Це як Вікіпедія для карт. Це дає нам основу: 201 мільйонів дорожніх сегментів з точними координатами.
Ми імпортуємо всю дорожню мережу планети з OpenStreetMap, обробляючи мільярди точок даних для вилучення кожної дороги, якою велосипедисти потенційно можуть піднятися.
2. Додаємо третій вимір
Дані карти плоскі - в них є лише положення, але немає висоти. Ми додаємо дані про висоту, щоб зрозуміти, які дороги йдуть вгору. Це перетворює 2D-лінії на 3D-рельєф, який можна аналізувати для підйомів.
Кожна точка вздовж кожного дорожнього сегмента отримує значення висоти. Ми обчислюємо ухил між точками, що дає нам повну картину того, як дорога піднімається та опускається.
3. Знаходимо підйоми
Наш алгоритм слідує за дорожніми сегментами вгору, відстежуючи маршрути від долини до вершини. Він шукає стійкі ухили та зберігає найкращі маршрути для підйому.
Ми визначаємо підйоми, шукаючи дороги, що постійно йдуть вгору. Підйом повинен відповідати двом ключовим критеріям:
Як ми знаходимо підйоми
- 1Перевіряємо кожну дорогу: Ми дивимося на кожен дорожній сегмент і питаємо: чи йде він вгору?
- 2Слідуємо дорогою вгору: На кожному перехресті ми перевіряємо, які дороги продовжують підніматися, і слідуємо за всіма ними.
- 3Будуємо повні маршрути: Ми продовжуємо слідувати кожним шляхом, поки він не перестане підніматися, відстежуючи повний маршрут від долини до вершини - включаючи серпантини та альтернативні дороги.
- 4Зберігаємо хороші: Кожен підйом оцінюється за набором висоти, крутизною та довжиною. Ми зберігаємо ті, які варто проїхати.
Цей процес перевіряє кожну дорогу у світі, слідуючи за кожним можливим шляхом вгору, щоб знайти підйоми, які інші могли пропустити.
4. Створюємо проїзні маршрути
Знайти підйом - це одне, а знати, як його фактично проїхати - інше. Ми пропускаємо кожен маршрут через BRouter, інструмент маршрутизації для велосипедистів, щоб переконатися в його практичності.
BRouter перевіряє кожен маршрут за важливими для велосипедистів критеріями:
- Якість покриття
- Рівень трафіку
- Складність поворотів
- Велосипедні обмеження
5. Називаємо кожен підйом
Кожен підйом отримує осмислену назву. Ми шукаємо найближчі вершини, перевали та назви доріг. Підйом, що закінчується біля "Col du Tourmalet", отримує цю назву; той, що на безіменній дорозі біля Шамоні, стає "Підйом біля Шамоні".
Назви присвоюються за системою пріоритетів:
- 1Гірська вершина на вершині
- 2Гірський перевал (col, перевал, сідловина)
- 3Назва дороги з маршруту
- 4Найближче місце (місто, село)
6. Контроль якості
Кожен підйом класифікується за складністю з використанням тієї ж системи, що й у професійному велоспорті. Ми також відстежуємо тип покриття, щоб ви знали, чого очікувати.
Підйоми оцінюються від HC (найскладніші) до категорії 5 (найлегші):
Категорії розраховуються за формулою, що враховує як ухил, так і набір висоти, подібно до системи, що використовується в Тур де Франс.
7. Джерела даних і подяки
Цей проект був би неможливий без цих відкритих джерел даних та інструментів.
OpenStreetMap
Карта світу, створена спільнотою. Усі дорожні дані отримані від учасників OSM.
geoBoundaries
Відкриті дані політичних кордонів. Використовуються для розміщення підйомів у країнах і регіонах.
GeoNames
База даних 67 000+ міст по всьому світу. Використовується для присвоєння назв на основі місцезнаходження.
BRouter
Двигун велосипедної маршрутизації. Оптимізує маршрути та надає інформацію про покриття.
Дані карт © учасники OpenStreetMap. Ліцензія ODbL.
Готові досліджувати?
Знайдіть свій наступний підйом у нашій базі даних мільйонів маршрутів.