Spatially thin out trajectory of 3D points

2 vues (au cours des 30 derniers jours)
thord
thord le 24 Nov 2018
Hello everyone,
I have a trajectory of 3D positions on the earth (geodetic coordinates latitude, longitude and ellipsoidal height).
It consists of standstill, low-dynamic and high-dynamic parts.
For plotting, memory and performance reasons I would like to spatially thin out my list of points in the trajectory (like for example keeping only points that are >0.5 m apart).
So I would like to ask if there is already a built-in function for this in MATLAB (or maybe the Mapping Toolbox) that I missed, or if I will have to write my own function?
Greetings

Réponses (1)

Rob Comer
Rob Comer le 28 Jan 2020
You'll have to write your own function, but the ecefOffset function in Mapping Toolbox can help. Try something like this (assuming h is ellipsoidal height in meters):
[deltaX,deltaY,deltaZ] = ecefOffset(wgs84Ellipsoid,...
lat(1:end-1),lon(1:end-1),h(1:end-1),lat(2:end),lon(2:end),h(2:end));
delta = hypot(hypot(deltaX,deltaY),deltaZ);
Then look for elements of delta that are less than 0.5.

Catégories

En savoir plus sur Geodesy and Mapping dans Help Center et File Exchange

Produits


Version

R2018a

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by