Passare al contenuto principale

Pubblicato il 13 agosto 2024

Profilo altimetrico - La trappola del "effetto frattale della linea costiera"

Tornare alla pagina principale di aiuto

Il profilo e i valori che ne derivano

Supponiamo di caricare sul visualizzatore di mappe un file KML o GPX con l'ultima escursione in montagna. Questo file KML o GPX è una linea o un poligono composto da diversi punti collegati e contiene valori come la posizione GPS, l'altitudine, l'ora di creazione, ecc. Il nostro sistema consente di creare automaticamente un profilo altimetrico fornito da un servizio di backend. A seconda del numero di punti, il profilo corrisponde più o meno fedelmente alle caratteristiche del paesaggio "reale".

Coarse point distribution di un profilo altimetrico
Dense point distribution di un profilo altimetrico

Da questo profilo e dalle coordinate sottostanti si ricava una serie di parametri diversi:

  • Punto più alto
  • Punto più basso
  • Salita totale
  • Discesa totale
  • Distanza totale

I punti più alti e più bassi sono banali, in quanto rappresentano i valori massimi e minimi di tutti i valori di altitudine.

Per la salita totale (e anche per la discesa totale) si sommano tutte le differenze di altezza positive (e anche negative per la discesa) tra i punti vicini.

Ascent calculation di un profilo altimetrico

Anche da questo schizzo molto semplice si può notare che il valore dell'innalzamento totale dipende dalla densità dei punti, nella distribuzione approssimativa di cui sopra manca il piccolo fosso a sinistra, cioè l'innalzamento totale sarebbe superiore al solo Δh1 + Δh2.

Il vecchio visualizzatore utilizzava una distribuzione relativamente grossolana dei punti lungo il percorso, con una distanza tra i punti di ~100-200m. In alcuni casi questo comportava dei problemi, in quanto venivano trascurate importanti caratteristiche del paesaggio (ad esempio, nel grafico precedente il punto più alto non è stato misurato con precisione). Con l'introduzione del nuovo visualizzatore, abbiamo voluto migliorare questo aspetto e abbiamo aumentato la densità di punti consentita. Ora ogni singolo punto viene preso in considerazione (i punti della traccia GPX hanno una distanza media di pochi metri a seconda del dispositivo).

Esempio di calcolo altimetrico di un profilo GPX

Il paradosso "effetto frattale della linea costiera"

Questo significa che più punti ha il percorso, migliori saranno i risultati che otterrete? Purtroppo non è così. Immagini che la densità di punti sia così alta, e quindi i valori altimetrici così precisi, che anche l'attraversamento di un sasso comporti un aumento di circa 50cm sul tracciato. Ciò si tradurrebbe in una salita molto ripida, anche se il percorso è prevalentemente orizzontale.

Questo problema è noto anche come «paradosso frattale della linea costiera », ossia l'osservazione controintuitiva che la linea di costa di una massa terrestre non ha una lunghezza chiaramente definita.

Torniamo a un esempio reale di traccia GPX e analizziamo la differenza di altitudine tra i punti vicini:

Differenze nel calcolo del profilo altimetrico

Notiamo che la differenza di altezza tra punti vicini in una distribuzione densa di punti è piccola rispetto a una distribuzione grossolana. Tuttavia, se sommiamo tutte le differenze di altezza, il contrasto diventa molto evidente.

Somma nel calcolo del profilo altimetrico

Precisione dei dati

I dati altimetrici sottostanti hanno una risoluzione di 2m e una precisione verticale inferiore a 1m (sotto i 2000m) o inferiore a 5m (sopra i 2000m). I punti GPS hanno una precisione orizzontale e verticale di ~5m (a seconda del dispositivo, degli oggetti circostanti e della posizione nel paesaggio). Osservando tutti questi valori di accuratezza, è chiaro che piccole differenze di altezza tra punti strettamente distanziati (cioè pochi metri) rientrano nei limiti di errore e non devono essere prese in considerazione.

Il caso più sfavorevole è quello di una traversata orizzontale lungo un pendio ripido: anche un percorso perfettamente pianeggiante porterebbe a una grande ascesa totale se i valori e le differenze altimetriche esatte sono ricavati da posizioni GPS relativamente imprecise.

La figura seguente illustra la situazione in cui il percorso segue una traiettoria quasi orizzontale lungo una pietra, ma questa è leggermente fuori dal sentiero

Profilo altimetrico di un percorso orizzontale

Il profilo ha origine dalla linea retta che corre più o meno perpendicolare al tracciato. Se il punto fosse stato inserito solo 0,8m più a destra, nel punto indicato, l'altezza sarebbe già di 2m inferiore.

Possibile soluzione

Sia il vecchio che il nuovo visualizzatore di mappe servono per un'ampia gamma di applicazioni e non sono ottimizzati principalmente per l'elaborazione di percorsi GPS. Il calcolo dei valori derivati da un profilo, come descritto sopra, è quindi finora abbastanza semplice.

Percorsi GPX

Poiché i percorsi GPS vengono solitamente convertiti in file GPX, ci concentreremo su questi ultimi, per i quali abbiamo a disposizione 2 soluzioni:

  • Semplificazione dei dati di risposta
    Questo può essere fatto prendendo in considerazione solo i dislivelli superiori a un certo valore di soglia (ad esempio, 1 m).
  • Semplificazione percorso scaricato
    Applicando il comune algoritmo di Douglas-Peucker (Algoritmo Ramer-Douglas-Peucker - Wikipedia) per ridurre il numero di punti nel percorso di un fattore di circa 50-100 (ad esempio, un percorso con 25.000 punti verrebbe ridotto a ~ 350 punti).

Come primo passo, abbiamo optato per quest'ultima soluzione, i cui risultati fornirebbero una distribuzione approssimativa dei punti simile alla linea verde del grafico precedente. La differenza di altitudine risultante dovrebbe essere più plausibile per i percorsi GPX e servire a riconoscere meglio la misura dell'altitudine dei percorsi escursionistici tipici. Tuttavia, non si può evitare che questa semplificazione porti a risultati indesiderati in casi molto specifici, che dovranno essere affrontati internamente a tempo debito.