Rannock
09-10-2012, 10:29
Spero di aver scritto nella sezione giusta..
Vi espongo il mio problema:
Ho fatto l'acquisizione della traiettoria nello spazio di un marker. Mi trovo ad avere un file .txt in cui ho una serie di coordinate 3d.
Questa è una porzione del file (sono coordinate in mm)
-9.72742 -141.224 401.578
-9.51058 -142.775 401.518
-9.45633 -143.178 401.485
-6.35867 -143.593 400.581
-4.83707 -143.675 400.053
-5.00037 -144.15 398.159
Quello che vorrei fare è analizzare la velocità della traiettoria lungo gli assi x,y,z.
per ricavare la velocità dovrei fare le derivate lungo le tre direzioni. Ho dunque messo la prima colonna in un vettore x e ho applicato semplicemente la formula di derivazione numerica df = [f(x+h)-f(x)]/h
con h = intervallo che uso per campionare (nel mio caso 0.02 sec).
In Matlab:
dx = diff(x); %dx contiene differenze tra un punto e il successivo
vx = dx./0.02;
plot(vx);
seguendo questo procedimento viene fuori un grafico molto irregolare.
c'è un metodo migliore per ricavare la velocità da una serie di coordinate?
grazie
Vi espongo il mio problema:
Ho fatto l'acquisizione della traiettoria nello spazio di un marker. Mi trovo ad avere un file .txt in cui ho una serie di coordinate 3d.
Questa è una porzione del file (sono coordinate in mm)
-9.72742 -141.224 401.578
-9.51058 -142.775 401.518
-9.45633 -143.178 401.485
-6.35867 -143.593 400.581
-4.83707 -143.675 400.053
-5.00037 -144.15 398.159
Quello che vorrei fare è analizzare la velocità della traiettoria lungo gli assi x,y,z.
per ricavare la velocità dovrei fare le derivate lungo le tre direzioni. Ho dunque messo la prima colonna in un vettore x e ho applicato semplicemente la formula di derivazione numerica df = [f(x+h)-f(x)]/h
con h = intervallo che uso per campionare (nel mio caso 0.02 sec).
In Matlab:
dx = diff(x); %dx contiene differenze tra un punto e il successivo
vx = dx./0.02;
plot(vx);
seguendo questo procedimento viene fuori un grafico molto irregolare.
c'è un metodo migliore per ricavare la velocità da una serie di coordinate?
grazie