누적 상승은 왜 앱마다 다를까
같은 코스인데 앱마다 누적 상승이 다르게 나오는 걸 보신 적이 있을 겁니다. 어떤 앱은 460 m라 하고 다른 앱은 120 m라 합니다. 둘 중 하나가 고장 난 게 아니라, 누적 상승은 재는 방법에 따라 답이 달라지는 값이기 때문입니다.
이 글은 그 이유를 설명하고, 이 사이트가 어떤 방법을 쓰는지 그대로 공개합니다.
누적 상승이 무엇인가
경로를 따라가며 올라간 구간만 전부 더한 값입니다. 100 m 올랐다 100 m 내려오고 다시 100 m 오르면 누적 상승은 200 m입니다. 최고점(고도)과는 다른 값이고, 실제로 힘든 정도에 훨씬 가깝습니다.
계산 자체는 단순합니다. 경로 위의 점들을 순서대로 훑으면서 앞 점보다 높아진 만큼만 더하면 됩니다. 문제는 어떤 점들을 훑느냐입니다.
점 간격이 답을 바꿉니다
GPX 파일마다 점이 찍힌 간격이 다릅니다. 이 사이트에 올라온 서해랑길 파일만 봐도 그렇습니다.
- 45코스 — 점이 약 1.3 m 간격
- 44코스 — 점이 약 29 m 간격
같은 언덕을 지나가도, 점이 촘촘한 파일은 오르내림을 훨씬 자주 기록합니다. 그리고 GPS 고도에는 항상 잔떨림이 섞여 있습니다. 실제로는 평지인데 파일에는 +0.2 m, −0.3 m, +0.1 m 같은 계단이 수천 개 찍혀 있는 겁니다.
그 계단을 전부 더하면 어떻게 되는지, 실제 사례가 있습니다.
서해랑길 45코스는 해발 41 m를 넘지 않습니다. 그런데 단순 합산으로는 463 m를 올라간 것으로 나왔습니다. 그 중 3분의 2가 0.3 m 미만짜리 계단이었습니다.
41 m짜리 언덕뿐인 길이 463 m를 올랐다고 말하는 겁니다. 앱마다 답이 다른 첫 번째 이유가 이것입니다 — 각자 다른 방식으로 이 잔떨림을 걸러내거나, 걸러내지 않습니다.
이 사이트가 쓰는 기준: 5 m
이 사이트는 한 번에 5 m 넘게 오른 것만 상승으로 셉니다. 그보다 작은 오르내림은 무시합니다.
5 m라는 숫자는 감으로 고른 게 아닙니다. 실제 트랙들을 5 m · 10 m · 25 m · 50 m 간격으로 다시 샘플링해 보고, 어떤 기준값이 간격이 바뀌어도 답을 가장 안 흔들리게 지키는지 확인해서 정했습니다.
| 방식 | 샘플링 간격을 바꿨을 때 값의 흔들림 |
|---|---|
| 잔떨림을 그냥 다 더함 | 약 30% |
| 5 m 기준으로 거름 | 5–14% |
10 m를 기준으로 잡으면 더 안정적이지만, 이번엔 5~9 m짜리 진짜 오르막이 통째로 사라집니다. 거친 지형에서는 그게 실제로 다리에 부담이 되는 구간입니다. 5 m는 잔떨림(1 m 미만)보다는 확실히 크고, 진짜 언덕은 놓치지 않는 자리입니다.
이 값 하나가 화면의 숫자만 바꾸는 게 아닙니다. 뒤에서 예상 소요 시간과 난이도 등급까지 끌고 갑니다. 부풀려진 상승은 걷는 시간에 조용히 수십 분을 더하고, 난이도 배지를 한 칸 올려버립니다.
고도 데이터가 아예 없는 파일도 있습니다
더 까다로운 경우가 있습니다. 고도 칸이 채워져 있는데 값이 가짜인 파일입니다.
- 서해랑길 87·88코스 — 파일 안의 모든 고도가 0.0입니다. 각각 757개, 1188개 점 전부가요. 이건 "데이터 없음"을 뜻하는 자리표시자인데, 그냥 더하는 함수한테는 완벽한 평지로 보입니다. 그래서 88코스는 19 km를 걷는 동안 상승 0 m라고 올라와 있었습니다.
- 제주올레 파일 15개 — 고도가 끝에서 끝까지 0과 −1을 번갈아 갑니다. 값이 변하긴 하고, 그럴듯하게 오르내리고, 15 km 동안 1 m를 오갑니다.
그래서 이 사이트는 "고도가 0이다"와 "고도를 모른다"를 구분합니다. 진짜 코스 데이터는 저렇게 생기지 않습니다 — 가장 평평한 서해랑길 파일도 고도 폭이 12.1 m는 됩니다. 폭이 기준값보다도 작은 파일은 측정으로 취급하지 않고, 고도 데이터가 없는 것으로 표시한 뒤 나중에 고도 서비스에 다시 물어봅니다.
상승 0 m로 표시된 코스를 보면 한 번 의심해 보세요. 정말 평지일 수도 있지만, 파일에 고도가 안 들어 있는 것일 수도 있습니다.
그래서 실제로 어떻게 읽어야 하나
- 다른 앱과 숫자가 다르다고 어느 쪽이 틀린 건 아닙니다. 기준이 다를 뿐입니다. 비교하려면 같은 앱 안에서 코스끼리 비교하세요.
- 코스 사이의 상대적 크기를 보세요. "이 코스가 저 코스보다 두 배 오른다"는 신뢰할 수 있지만, "정확히 몇 m"는 방법에 딸린 값입니다.
- 상승 0 m는 의심하세요. 위에서 본 자리표시자일 수 있습니다.
- 아주 촘촘한 GPX일수록 다른 앱에서 부풀 수 있습니다. 걸러내지 않는 앱에서 유난히 큰 수가 나오면 잔떨림일 가능성이 큽니다.
이 사이트의 숫자는 어디서 오나
경로에 고도 데이터가 함께 들어 있으면 그것을 씁니다. 없으면 공개 고도 서비스에 물어봅니다. 어느 쪽이든 5 m 기준으로 거른 뒤 화면의 ↑ 값과 고도 그래프, 예상 시간, 난이도 배지에 반영됩니다.
지도에서 경로를 그리면 그 자리에서 고도 그래프가 그려지고, 커뮤니티 경로에도 같은 방식으로 계산된 값이 붙어 있습니다.
