Bonjour, je souhaiterais modifier la fréquence (rééchantillonner) d'un vecteur par la méthode spline, or je ne sais pas du tout comment faire. Pouvez-vous m'aider ?
Merci d'avance pour votre aide.
Cordialement
Bonjour, je souhaiterais modifier la fréquence (rééchantillonner) d'un vecteur par la méthode spline, or je ne sais pas du tout comment faire. Pouvez-vous m'aider ?
Merci d'avance pour votre aide.
Cordialement
Utilise la fonction INTERP1
Ingénieur indépendant en mécatronique - Conseil, conception et formation
- Conception mécanique (Autodesk Fusion 360)
- Impression 3D (Ultimaker)
- Développement informatique (Python, MATLAB, C)
- Programmation de microcontrôleur (Microchip PIC, ESP32, Raspberry Pi, Arduino…)
« J'étais le meilleur ami que le vieux Jim avait au monde. Il fallait choisir. J'ai réfléchi un moment, puis je me suis dit : "Tant pis ! J'irai en enfer" » (Saint Huck)
J'ai essayé mais ça n'a pas marché. Voici mon code :
Le vecteur vitesse après essai est devenu un chiffre bizarre
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 Vitesse=interp1(Temps,Vitesse,Freq_vitesse,'spline');
Un exemple simple pour doubler la fréquence d’échantillonnage :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 x = ...; y = ...; xi = linspace(min(x),max(x),2*numel(x)); yi = interp1(x,y,xi,'spline');
Ingénieur indépendant en mécatronique - Conseil, conception et formation
- Conception mécanique (Autodesk Fusion 360)
- Impression 3D (Ultimaker)
- Développement informatique (Python, MATLAB, C)
- Programmation de microcontrôleur (Microchip PIC, ESP32, Raspberry Pi, Arduino…)
« J'étais le meilleur ami que le vieux Jim avait au monde. Il fallait choisir. J'ai réfléchi un moment, puis je me suis dit : "Tant pis ! J'irai en enfer" » (Saint Huck)
Je n'arrive pas bien à comprendre votre exemple.
Je peux apporter des compléments sur les vecteurs qui composent mon exemple :
- le vecteur Vitesse (avant modification) a une fréquence d'échantillonnage de 100 Hz et se composent de 1233 points (sa base est le temps).
- la valeur Freq_vitesse est égale à 72.9116 Hz
-le vecteur Vitesse (après modification) a une fréquence d'échantillonnage égale à Freq_vitesse (c'est-à-dire 72.9116 Hz) et se composent de 899 points (sa base reste inchangé : le temps).
A partir de ces précisions, pouvez-vous m'aider à modifier la fréquence de ce vecteur en utilisant la méthode 'spline' svp ?
C'est si compliqué que ça ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 F(1) = 100; F(2) = 72.9116; t = 0:1/F(1):12.32; Vitesse = sin(t); ti = linspace(min(t),max(t),numel(t)*F(2)/F(1)); Vitessei = interp1(t,Vitesse,ti,'spline');
Ingénieur indépendant en mécatronique - Conseil, conception et formation
- Conception mécanique (Autodesk Fusion 360)
- Impression 3D (Ultimaker)
- Développement informatique (Python, MATLAB, C)
- Programmation de microcontrôleur (Microchip PIC, ESP32, Raspberry Pi, Arduino…)
« J'étais le meilleur ami que le vieux Jim avait au monde. Il fallait choisir. J'ai réfléchi un moment, puis je me suis dit : "Tant pis ! J'irai en enfer" » (Saint Huck)
Bah avec la solution, c'est forcément toujours plus facile mais étant donné que je ne connaissais ni la fonction linspace ni la fonction numel, ça devenait un tout petit peu plus compliqué
En tout cas, un grand merci pour votre aide
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager