Soyez le premier à donner votre avis sur cette source.
Snippet vu 11 658 fois - Téléchargée 32 fois
bool CxImage::DFT(int dir,long m,double *x1,double *y1,double *x2,double *y2) { long i,k; double arg; double cosarg,sinarg; for (i=0;i<m;i++) { x2[i] = 0; y2[i] = 0; arg = - dir * 2.0 * 3.14159265358f * i / (double)m; for (k=0;k<m;k++) { cosarg = cos(k * arg); sinarg = sin(k * arg); x2[i] += (x1[k] * cosarg - y1[k] * sinarg); y2[i] += (x1[k] * sinarg + y1[k] * cosarg); } } /* Copy the data back */ if (dir == 1) { for (i=0;i<m;i++) { x1[i] = x2[i] / m; y1[i] = y2[i] / m; } } else { for (i=0;i<m;i++) { x1[i] = x2[i]; y1[i] = y2[i]; } } return true; }
7 juin 2004 à 07:37
dir c'est pour faire l'inverse ifft
c'est bien ca?
6 juin 2004 à 11:43
pour le prototype,
"bool CxImage::DFT(int dir,long m,double *x1,double *y1,double *x2,double *y2)"
m c'est le nb d'échantillons
x1 c'est le tab des x
y1 le tab des y
mais
C’est quoi dir ?
Et a quoi correspond x2 et y2 a la fin du prog?
30 mars 2004 à 09:29
29 mars 2004 à 18:37
Vous n'êtes pas encore membre ?
inscrivez-vous, c'est gratuit et ça prend moins d'une minute !
Les membres obtiennent plus de réponses que les utilisateurs anonymes.
Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.
Le fait d'être membre vous permet d'avoir des options supplémentaires.