WICHTIG: Der Betrieb von goMatlab.de wird privat finanziert fortgesetzt. - Mehr Infos...

Mein MATLAB Forum - goMatlab.de

Mein MATLAB Forum

 
Gast > Registrieren       Autologin?   

Partner:




Forum
      Option
[Erweitert]
  • Diese Seite per Mail weiterempfehlen
     


Gehe zu:  
Neues Thema eröffnen Neue Antwort erstellen

gpx-Datei einlesen!

 

paul87
Forum-Anfänger

Forum-Anfänger


Beiträge: 21
Anmeldedatum: 02.01.11
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 16.01.2011, 15:25     Titel: gpx-Datei einlesen!
  Antworten mit Zitat      
Ich bin es nochmal.

Nachdem ich es nicht hinbekommen habe, die Daten direkt aus Google Earth oder Maps in MATLAB zu importieren, möchte ich das nochmal auf diesen Weg versuchen.

Also ich habe die gpx-Datei. (siehe Anhang). Diese möchte ich einlesen. Die beinhaltet jetzt auch die Höhenkoordinaten.

Mein Ziel ist es am Ende x, y und z Koordinaten zu erhalten. Die z-Koordinaten sind wie gesagt schon vorhanden und die x und y Koordinaten müssen aus den lat und lon Werten errechnet werden.

Dazu müssen die erstmal alle herausgefiltert werden.

Ich habe schon versucht die "loadgpx" Funktion zu verwenden. Aber es klappt nicht.

Für Eure Hilfe bin ich sehr Dankbar!!!!

Leider kann ich keine gpx-Datei hier anhängen.

Liebe Grüße

Hier sind die Links dazu:

http://www.gpsvisualizer.com/displa.....02-03906-78.50.88.120.gpx

http://www.gpsvisualizer.com/displa.....45-05690-78.50.88.120.txt
Private Nachricht senden Benutzer-Profile anzeigen


Sco
Forum-Meister

Forum-Meister


Beiträge: 699
Anmeldedatum: 15.08.10
Wohnort: Dundee
Version: 2008a, 2010a
     Beitrag Verfasst am: 16.01.2011, 19:05     Titel:
  Antworten mit Zitat      
Hallo,

habe mal ein wenig rumgespielt.

Zuerst habe ich die URL für die Strecke von München nach Dortmund mit Hilfe des hier vorgestelltem Code ( http://www.gomatlab.de/viewtopic.php?p=59688#59688 ) erzeugt und auf der GPS-Visualizer Homepage eingetragen. Die so erhaltene gpx Datei habe ich als test.gpx abgespeichert.

Das Einlesen und Extrahieren der Koordinaten habe ich mit folgendem Code bewerkstelligt:
Code:

fid = fopen('test.gpx');
data = textscan(fid,'%s');
fclose(fid);

string = data{:};
string = cat(2,string{:});
start = regexp(string,'<trkseg>');
finish = regexp(string,'</trkseg>');
string = string(start(1):finish(end));

coordinates(:,1) = regexp(string,'lat="(\d*.\d*)"','tokens'); % lat
coordinates(:,2) = regexp(string,'lon="(\d*.\d*)"','tokens'); % lon
coordinates(:,3) = regexp(string,'<ele>(\d*.\d*)</ele>','tokens'); % alt

coordinates = reshape([coordinates{:}], size(coordinates));
coordinates = str2double(coordinates);
 


Ich hoffe ich war richtig in der Annahme, dass lat, lon und die Werte zwischen <ele> </ele> die gesuchten Koordinaten sind? Da sich die Werte in dem "Header" der Datei (da wo noch viel Text steht) wiederholen, habe ich diesen Teil der Datei bei der Auswertung nicht mit beachtet. Das heisst ich habe an der Stelle in der Datei angefangen die Koordinaten einzulesen, wo sie "Tabellenartig" wird, also ab hier:

<trkseg>
<trkpt lat="48.13913" lon="11.58019">
<ele>523.5</ele>
</trkpt>
<trkpt lat="48.14111" lon="11.58102">
<ele>516.7</ele>
</trkpt>
<trkpt lat="48.1415" lon="11.58123">
<ele>518.0</ele>
.
.
.

Verwende meinen Code und schau ob die Daten genau das sind was du möchtest und sei so lieb und gib ein Feedback. Danke

MFG

Sco
Private Nachricht senden Benutzer-Profile anzeigen
 
paul87
Themenstarter

Forum-Anfänger

Forum-Anfänger


Beiträge: 21
Anmeldedatum: 02.01.11
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 16.01.2011, 19:29     Titel:
  Antworten mit Zitat      
Echt spitze von dir! Das sind genau die Daten die ich brauche. Die lat und lon Koordinaten müssen dann halt nur noch in x und y Koordinaten umgerechnet werden. Aber soweit ist das echt super.

Nachdem du in dem anderen Thema mir den Code mit der URL gezeigt hast, habe ich erstmal die Funktion regexp ausprobiert. Damit wollte ich das jetzt auch machen. Aber du warst schneller Smile Danke dafür.

Nun habe ich mich gewundert, wo du die Distanz und Zeit her hattest. Aber ich habe gesehen, dass man das aus dem Quelltext rauslesen kann. Das hast du ja dann auch gemacht. Ich hätte die 3 Werte nie da rausfiltern können.

Daraufhin habe ich auch gleich mal auf der GPSVisualizer Seite nachgeschaut im Quelltext. Die Seite muss ja auch irgendwoher dann die Koordinaten bekommen und die Höhen. Kann man das nicht vllt auch durch den Quelltext und der URL rausbekommen und auslesen?

Echt super von dir, dass du mir hilfst! Allein würde ich das nie hinbekommen.

LG
Private Nachricht senden Benutzer-Profile anzeigen
 
Neues Thema eröffnen Neue Antwort erstellen



Einstellungen und Berechtigungen
Beiträge der letzten Zeit anzeigen:

Du kannst Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.
Du kannst Dateien in diesem Forum posten
Du kannst Dateien in diesem Forum herunterladen
.





 Impressum  | Nutzungsbedingungen  | Datenschutz | FAQ | goMatlab RSS Button RSS

Hosted by:


Copyright © 2007 - 2025 goMatlab.de | Dies ist keine offizielle Website der Firma The Mathworks

MATLAB, Simulink, Stateflow, Handle Graphics, Real-Time Workshop, SimBiology, SimHydraulics, SimEvents, and xPC TargetBox are registered trademarks and The MathWorks, the L-shaped membrane logo, and Embedded MATLAB are trademarks of The MathWorks, Inc.