Bonsoir tout le monde,
Je voulais juste me renseigner sur comment faire un lissage d'une courbe sous Matlab en implémentant un filtre à fenetre glissante:
Voila je vous explique ce que je veux faire par ceci:
J'ai deux vecteurs X et Y, notons les éléments de cesd vecteurs x1,x2....xn et y1,y2,....yn.
j'ai représenté Y en fonction de X, ça c'est fait. Maintenant, je veux créer un autre vecteur Z dont les éléments z1,z2,....zn qui sont définis mathématiquement comme ceci: pour tout k=1:n zk= somme[les M voisins de yk] {c-a-d: les (M-1)/2 avant et (M-1)/2 après et yk aussi}[avec M est impair ].
De ma part, j'ai essayé comme m'a dit Dut d'utiliser la fonction filter et la combiner avec ones mais je sens que la courbe est un peu décalée...
voila le code que j'ai fait (enfin le code, la ligne que j'ai fait):
Code : Sélectionner tout - Visualiser dans une fenêtre à part
Z=filter(ones(1,M)/M,1,Y);
Merci et j'espere que j'étais clair sur ceci...
N.B: à chaque fois, j'essaie de modéliser le problème de façon simple car mon cahier de charge est un peu dur comme meme
bahja29