Bonjour a tous,
j'utilise la fonction detrend afin de transformer un signal pas beau en un truc peu plus correct, pour pouvoir estimer des dsp.
Pour ceux qui ne la connaissent pas, la fonction detrend permet d'enlever la composant econtinue d'un signal ainsi que de passer outre d'éventuels sauts de continuité, afin de pouvoir correctement faire des FFT.
Cette fonction a trois entrées :
Y = detrend(signal,'linear' ou 'constant','breakpoints');
et la c'est le drame : quand au cours de mon script je fais appel à detrend, je reçoit l'erreur suivante :
pourtant mes breakpoints sont ok :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 Subscript indices must either be real positive integers or logicals.
et pire ! la fonction detrend ne marche plus du tout en fait.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21>> breakpoints breakpoints = Columns 1 through 7 658 659 1426 1427 2194 2195 2962 Columns 8 through 14 2963 3730 3731 4498 4499 5266 5267 ... Columns 43 through 49 16786 16787 17554 17555 18322 18323 19090 Columns 50 through 52 19091 19858 19859
si je fais
Du coup je comprends pas trop... Si quelqu'un a une idée?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23 >> a = rand(1,120); >> detrend(a,'linear') Subscript indices must either be real positive integers or logicals. >> clear all >> a = rand(1,120); >> detrend(a,'linear') ans = Columns 1 through 8 -0.1246 -0.1222 0.0393 -0.3103 0.1166 0.1504 0.0908 0.2737 Columns 9 through 16 -0.0604 -0.0934 0.3794 -0.3461 -0.0111 -0.2669 0.3187 0.0446 ... Columns 113 through 120 0.1691 0.4122 0.0462 -0.3963 0.3164 0.1733 -0.2485 0.4514
PS : je ne peux pas transmettre les données sur lesquelles je bosse
Partager