Ciao a tutti ho appena realizzato un semplice servizio per ottimizzare tracce GPX riducendo il numero di punti senza perdere qualita della traccia. Utilizza questo algoritmo che mi sembra buono:
http://en.wikipedia.org/wiki/Ramer%E2%80%93Douglas%E2%80%93Peucker_algorithm anche se probabilmente la scrollbar per regolare la precisione potrebbe essere migliore con scala logaritmica o esponenziale.
Funziona offline senza bisogno di upload o download.. semplice javascript e Leaflet. L'ho fatto in pochi minuti senza fare troppi test.. se qualcuno vuole partecipare a breve pubblico la repo su github.. saluti Stefano Cudini
_______________________________________________ [hidden email] http://lists.gfoss.it/cgi-bin/mailman/listinfo/gfoss Questa e' una lista di discussione pubblica aperta a tutti. I messaggi di questa lista non hanno relazione diretta con le posizioni dell'Associazione GFOSS.it. 666 iscritti al 22.7.2013 |
Il giorno Sat, 24 May 2014 02:19:04 +0200
Stefano Cudini <[hidden email]> ha scritto: > Ciao a tutti ciao Stefano, > ho appena realizzato un semplice servizio per ottimizzare tracce GPX > riducendo il numero di punti senza perdere qualita della traccia. ottimo, spero quanto prima di poter provare il tuo plugin :-) > Utilizza questo algoritmo che mi sembra buono: > http://en.wikipedia.org/wiki/Ramer%E2%80%93Douglas%E2%80%93Peucker_algorithm > ...... ti segnalo una curiosità, ininfuente per i tuoi obiettivi, ma un particolare forse interessante da conoscere: in una occasione del tutto fortuita mi sono accorto che l'algoritmo RDP non è ottimo, cioè lascia dei vertici della polilinea non necessari; avevo segnalato la circostanza anche sulla lista dev, ma poi la cosa non aveva avuto seguito (probabilmente per la mia scarsa comprensione dell'inglese e forse perchè la lista non era il posto più adatto per l'argomento); si può pensare ad un algoritmo diverso che sembrerebbe migliore; niente, una piccola inezia nello splendido lavoro che hai fatto: usala a tua discrezione :-) > saluti > Stefano Cudini ciao, giuliano _______________________________________________ [hidden email] http://lists.gfoss.it/cgi-bin/mailman/listinfo/gfoss Questa e' una lista di discussione pubblica aperta a tutti. I messaggi di questa lista non hanno relazione diretta con le posizioni dell'Associazione GFOSS.it. 666 iscritti al 22.7.2013 |
Il giorno 24 maggio 2014 16:50, giulianc51 <[hidden email]> ha scritto:
Be non è proprio un plugin... è una web app che utilizza svariati plugins Leaflet e altro. Io in pratica ho solo messo insieme i pezzi...
Questa cosa l'avevo notata anche su JOSM quindi suppongo che utilizzi lo stesso identico algoritmo.
avevo segnalato la Ho appena aperto tutto il codice: https://github.com/stefanocudini/gpx-simplify-optimizer
Anche per cercare ti ottimizzare quell'algoritmo o vedere se ce ne sono altri. In effetti ho notato che a volte lascia dei nodi strani... ma in generale mi sembra che funzioni molto bene su tracce molto ridondanti.
Lo scopo dell'app piu che altro è allegerire i file GPX poi per migliorare la precisione stavo pensando di aggiungere anche la possibilita di editare il percorso dopo l'ottimizzazione automatica.
_______________________________________________ [hidden email] http://lists.gfoss.it/cgi-bin/mailman/listinfo/gfoss Questa e' una lista di discussione pubblica aperta a tutti. I messaggi di questa lista non hanno relazione diretta con le posizioni dell'Associazione GFOSS.it. 666 iscritti al 22.7.2013 |
Il giorno Sat, 24 May 2014 22:54:56 +0200
Stefano Cudini <[hidden email]> ha scritto: > Il giorno 24 maggio 2014 16:50, giulianc51 <[hidden email]> ha > scritto: > > > ..... > > Be non è proprio un plugin... è una web app che utilizza svariati > plugins Leaflet e altro. > Io in pratica ho solo messo insieme i pezzi... sì, scusa, avevo letto male :-( > > ...... > Questa cosa l'avevo notata anche su JOSM > <https://josm.openstreetmap.de/>quindi suppongo che utilizzi lo stesso > identico algoritmo. > ....... > In effetti ho notato che a volte lascia dei nodi strani... ma in > generale mi sembra che funzioni molto bene su tracce molto ridondanti. > Lo scopo dell'app piu che altro è allegerire i file GPX ...... beh, come avevo anticipato, la cosa è inessenziale rispetto al tuo obiettivo: RDP fa un egregio lavoro di semplificazione, però, proprio per l'approccio binomiale che adotta, va in crisi in alcune situazioni, ad es. il percorso: 1 5 | | 2---------3-----------4 rimarrà tale, mentre potrebbe essere semplificato ulteriormente in 1 5 | | 2---------------------4 comunque probabilmente sto andando OT in questa lista, quindi chiudo; se volessi però provare un altro algoritmo qualche idea ce l'avrei :-) ciao, giuliano (matematico per diporto :-) _______________________________________________ [hidden email] http://lists.gfoss.it/cgi-bin/mailman/listinfo/gfoss Questa e' una lista di discussione pubblica aperta a tutti. I messaggi di questa lista non hanno relazione diretta con le posizioni dell'Associazione GFOSS.it. 666 iscritti al 22.7.2013 |
Il giorno 24 maggio 2014 23:51, giulianc51 <[hidden email]> ha scritto:
Ma tanto non sta partecipando nessun altro quindi direi che non è un gran danno :) ; se Allora prima di tutto vorrei sottolineare che la vera utilità della mia app sta nel fatto che tramite lo slider si puo regolare molto finemente il fattore di approssimazione dell'algoritmo, cosa che attualmente non si può fare neanche su JSOM... che non ho ancora capito che valore utilizza..
Poi devo dire che in realtà io l'algoritmo specifico prima di metterni a fare questa app non lo conoscevo... ma ora la cosa mi sta molto interessando. Soprattutto ho notato una cosa, giocherellando con questa app.. che magari è una banalità, questo algoritmo è impreciso xke si occupa soltanto di TOGLIERE nodi e non fa nessuna altra operazione.. se invece di togliere soltanto potesse anche spostare i nodi rimanenti in posizioni piu "strategiche" credo che si avrebbe un netto miglioramento della qualità! mantenendo la stessa identica quantita di dati finali.
Questo non so se sia possibile aggiungerlo a livello di algoritmo matematico.. ora non ho dato una occhiata precisa al codice che lo implementa, ma a livello di programmazione non mi sembra una cosa poi cosi complessa.. probabilmente anzi ci ha gia pensato qualcuno.
L'implementazionde dell'RDP usato si trova qui:
_______________________________________________ [hidden email] http://lists.gfoss.it/cgi-bin/mailman/listinfo/gfoss Questa e' una lista di discussione pubblica aperta a tutti. I messaggi di questa lista non hanno relazione diretta con le posizioni dell'Associazione GFOSS.it. 666 iscritti al 22.7.2013 |
Il giorno Mon, 26 May 2014 18:59:43 +0200
Stefano Cudini <[hidden email]> ha scritto: ciao Stefano, > Il giorno 24 maggio 2014 23:51, giulianc51 <[hidden email]> ha > scritto: > > > ..... > > comunque probabilmente sto andando OT in questa lista, quindi chiudo > > > Ma tanto non sta partecipando nessun altro quindi direi che non è un > gran danno :) sì, però mi conosco, quindi è meglio sempre stare all'erta :-) > > .... > Allora prima di tutto vorrei sottolineare che la vera utilità della > mia app sta nel fatto che tramite lo slider si puo regolare ..... > > Poi devo dire che in realtà io l'algoritmo specifico prima di > metterni a fare questa app non lo conoscevo... ma ora la cosa mi sta > molto interessando. beh, io avevo un pò forzato e mescolato due argomenti non proprio sovrapposti, però, avendone l'occasione, e sempre con la pazienza degli altri, mi piaceva scambiare qualche parola :-) > ...... questo algoritmo è impreciso xke si occupa > soltanto di TOGLIERE nodi e non fa nessuna altra operazione.. se > invece di togliere soltanto potesse anche spostare i nodi rimanenti > in posizioni piu "strategiche" tema delicato: credo che gli Autori si sono preoccupati, riuscendoci, a semplificare notevolmente una polilinea _eliminando_ i vertici superflui; cosa alquanto diversa è quella che proponi: sostituire una primitiva con altra; > ....... Questo non so se sia possibile aggiungerlo a livello > di algoritmo matematico.. ora non ho dato una occhiata precisa al > codice che lo implementa, ma a livello di programmazione non mi > sembra una cosa poi cosi complessa.. probabilmente anzi ci ha gia > pensato qualcuno. su _miglioramenti_ non saprei, ma sulla loro possibilità direi di sì, rispettando le precedenze: prima costruisci l'algoritmo logico-matematico, poi quello informatico (anche se può sembrare la storia dell'uovo e la gallina :-) se fai sapere in lista i tuoi progressi, sicuramente qualcuno interessato ci sarà (ad es. io :-) ciao, giuliano _______________________________________________ [hidden email] http://lists.gfoss.it/cgi-bin/mailman/listinfo/gfoss Questa e' una lista di discussione pubblica aperta a tutti. I messaggi di questa lista non hanno relazione diretta con le posizioni dell'Associazione GFOSS.it. 666 iscritti al 22.7.2013 |
Free forum by Nabble | Edit this page |