Master en 192/24 d'un WAV en 44.1/16
- 113 réponses
- 21 participants
- 11 967 vues
- 20 followers

Anonyme

Petite question technique, est-ce qu'il y auras repliement de spectre ou autres problème sur un Master analogique fait à partir d'un fichier 44.1/16 et réenregistré en 192/24 ?
Je me tâte à repasser mes enregistrement 44/16 dans une console haut de game pour chatouillé un peut les preamps et EQs et en faire des fichiers HD 192/24.
Bonne idée, ou fausse bonne idée ?
Bon après si on peut éviter le débat "ça sert à rien de monter plus haut que du 44.1/16 " ce serais cool ! D'ailleurs je n'y crois pas vraiment, mais comme j'aime bien l'idée de repasser mes enregistrement un peut "lofi" dans une console, j'me dit qu'exporter le résultat en 44/16 et en 192/24 ne mange pas de pain, et ça feras des heureux côtés consommateurs de HDaudio...
Merci !

EraTom



Danguit

Réflexion de la nuit : ce que l'on appelle bruit de quantification n'est pas vraiment un bruit dans la mesure où il est corrélé au signal.
Donc pour une fréquence du signal de 1kHz, sous-multiple de Fe, on échantillonne au même moment de la sinusoïde toutes les 10 périodes soit 10ms ; par conséquent on retrouve la même forme que précédemment. Ceci donne des raies à 100Hz et harmoniques.
AMHA ce genre de discussion ne sert pas à grand chose mais malheureusement quand quelqu'un fait une affirmation contestable il faut passer du temps à la réfuter si l'on ne veut pas que cela devienne une vérité, et parfois on tombe en plus comme ici sur des phénomènes imprévus qui font dévier la discussion.
[ Dernière édition du message le 18/04/2015 à 07:59:49 ]

EraTom

Le sinus n'est pas à 1Khz mais 1345.83
C'est pour ne pas avoir de Fe multiple de cette unique fréquence afin d'éviter les erreurs systématiques et de pouvoir considérer la quantification comme un bruit additif.
Comme je le disais dans un post précédent, lancer un signal test qui produit des erreurs systématiques n'est pas représentatif de la réalité car le contenu audio est suffisamment riche pour que ça n'arrive pas, ou on applique un dithering pour gérer les (rares mais audibles) moments où le signal n'est plus suffisant.
Ceci donne des raies à 100Hz et harmoniques.
Je remets la mesure :

Ça ressemble à une distorsion causée par des non linéarités (ce qui m'avait laissé croire que le signal était d'origine analogique).
Mais je ne sais plus que penser du SNR affiché de 112dB. Pourtant impossible de se tromper en mode post process, le logiciel se cale automatiquement en 16 bits et sur la fréquence d'échantillonnage du fichier.

Il faut se rendre à l'évidence : Il est tout à fait possible de se tromper et d'obtenir une mauvaise estimation même en mode post process.
Ceci dit on avance car tu vois qu'il est possible de générer une sinusoïde quantifiée sans production d'harmonique.
Il n'y a rien d'exceptionnel puisque c'est la quantification directe, sans dithering mais en faisant attention à ne pas provoquer d'erreur systématique, d'une sinusoïde calculée avec une fonction informatique standard.
Pour le SNR quelque chose biaise la mesure. Je vois au moins 3 causes cumulées.
Ce que l'on chercher à estimer pour calculer un SNR est la puissance du signal :
lim (1/2T)*∫x²(t).dt de -T à T
T-->+oo
Si le signal est périodique, tu peux te limiter à une période :
1/T*∫x²(t).dt pour t allant de to à to+T
Moi j'ai fait la "moyenne" sur toute la durée (10s) de mon signal. C'est mal : J'aurais dû m'arrêter à 10s moins quelques ms pour tomber sur la fin d'une période. Donc j'ai un biais d'au pire une demie période sur la durée totale du signal, si le signal est long on s'en moque.
J'ai aussi un biais dû à la numérisation : 64bits float @ 44kHz on s'en fout.
Si le signal est un bruit, la puissance correspond à l'estimateur empirique biaisé de sa variance ; c'est aussi ce que j'ai utilisé.
Ce n'est pas ce que tu fais :
Il est effectivement possible d'estimer la puissance par la densité spectrale :
lim (1/2F)*∫X²(f).df de -F à F
F-->+oo
Si le signal est échantillonné, l'intégrale devient une somme et la puissance de l'erreur de quantif est répartie sur
[ Dernière édition du message le 18/04/2015 à 15:00:24 ]

marc34.o

Si tu limites la bande à 20Hz-20kHz, tu obtiens la puissance "dans la bande audible" mais pas la puissance totale du signal : Premier "biais" par rapport à la moyenne temporelle et écart par rapport au calcul théorique qui conduit à sous-estimer la puissance totale bruit.
Enfin je mets biais entre parenthèses parce que pour moi c'est une application erronée des standards de mesure audio : Il suffit de ne pas le faire.
Ensuite, pour estimer la puissance du bruit de fond il faut retirer le signal du spectre. Regarde dans la doc comment s'y prend ton outil mais il y a fort à parier que pour retirer la sinusoïde il réalise une opération similaire à l'application d'un filtre réjecteur de bande.
Signal to Noise Ratio (SNR)
This utility window can be resized as required by the user and its contents
will update anytime a new spectrum is computed. If the analyzer is
configured to display the spectrum of both the left and right channels, this
utility window will also show the value for both channels. The left
channel value will appear above the right channel value.
Notes:
Hanning or Blackman smoothing window is recommended
because of its low noise quality.
An FFT size of 2048 or greater is recommended in order to
provide adequate spectral resolution.
Dernier point, non des moindres : L'estimation du périodogramme (la FFT) est biaisée. Il existe plusieurs techniques pour réduire ce biais (méthode de Welch, Blackman-Tukey, etc.) mais aucune n'est parfaite.
Certaines présentent toujours un biais asymptotique, d'autres non (et j'espère que c'est ce que tu as dans ton outil) mais il faut "intégrer" sur un temps assez long.
En sur-estimant la puissance du signal et en sous-estimant le puissance du bruit on arrive à un SNR qui dépasse la limite théorique.
Ce qui revient à reposer la question: Faut-il mesurer le SNR dans la totalité du signal de la bande passante ou juste dans la bande passante audible? Je le réécris, la norme AES17 a fixé arbitrairement une norme, norme qui manifestement ne satisfait pas les théoriciens qui suivent ce post. L'Audio Engineering Society qui a publié la norme est constituée d’ingénieurs chevronnés et reconnus, et avant toute publication, il y a bien évidemment de longs débats. Ce n’est pas le fruit d'un seul homme mais celui d'une équipe qui a réfléchit à la question et sous tous ses aspects avant d'en arriver à une conclusion.
Après peut importe qu'on soit d'accord ou pas avec cette norme, le tout est de comparer ce qui est comparable, là est le fonds du débat.

Reno-Theplankton

Je saurais quel lien donner au gens qui me disent que sur AF, il n'y a que des discussions de "débutants" ... Je vais prendre un Doliprane![]()
D'ailleurs, vous qui avez l'air de clairement être calé dans tout se labyrinthe de Bits et de Fréquences, vous auriez pas quelques liens intéressants permettant d'y voir plus clair ? je suis resté à la base du concept de la conversion moi, et sur le net, je trouve ou des articles qui m'expliquent ce que je sais déjà, ou des articles d'un niveau grandement supérieur au mien, dans le type de votre conversation, auxquels je comprend .... (presque) rien ...
"Tu connais pas Sheraf ? C'est un groupe, à l'époque, ils étaient number one ! "
Antres 808 : Bandcamp - Facebook
Escape From Work EP en téléchargement libre sur bandcamp.
[ Dernière édition du message le 18/04/2015 à 17:09:14 ]

Reno-Theplankton


Anonyme


EraTom

On aura pour chacun de ces deux cas des chiffres qui divergent (d’où ce débat)
Tes chiffres sont bizarres, les harmoniques de 1000kHz aussi. On peut faire preuve d'esprit critique.
Tu choisis d'appliquer systématiquement l'AES17 pour la mesure du bruit, mais je ne crois pas que tu l'aies fait pour le choix de le fréquence du signal de test.
Danguit

Pour le SNR, on peut se faire une idée de ce que l'on devrait mesurer quand-même (rien de sorcier) :
- La largueur de bande @44.1Hz sur laquelle la puissance du bruit de quantif est étalée : 22050Hz
- La largueur de bande AES17 : 20000-20 = 19980Hz
- La puissance du bruit de quantif pris en compte : ( Ptotal / 22050 )*19980.
- 10*log10(19980/22050) = -0.4 dB.
==> Il en manque encore pour arriver à expliquer les 6dB en trop.
Il y a des règles simples en enregistrement numérique: [...] toujours utiliser une fréquence d’échantillonnage multiple de la destination. Par exemple, si le master final doit être à 44.1Khz, on peut utiliser 44.1Khz ou 88.2 Khz. Si on choisit 48Khz et qu'on fait une conversion à 44.1Khz, on engendre forcément une certaine dégradation/approximation.
J'ai montré une perte de 0.1 dB de SNR avec un algo bas de gamme et un moyen d'estimation fiable de la puissance du bruit pour passer de 24bits@48kHz à 16bits@44.1kHz
Sur un exercice du même style, tu montres une perte de 5dB alors que tes mesures semblent entachées d'une erreur de 6dB (dont on ne sait pas si c'est une erreur systématique, un biais, ou une erreur aléatoire).
Comment conclure ?
L'Audio Engineering Society qui a publié la norme est constituée d’ingénieurs chevronnés et reconnus
Quand bien même, ce n'est pas parce que ça sort de l'AES ou de l'IEEE qu'il faut dire amen.

EraTom

Citation :Pose tes questions sur ce forum où il y a des gens compétents. Je peux aussi faire des réponses intelligibles, quand je fais attention...je suis resté à la base du concept de la conversion moi, et sur le net, je trouve ou des articles qui m'expliquent ce que je sais déjà, ou des articles d'un niveau grandement supérieur au mien

marc34.o

Pfff c'est pénible. Faut arrêter de se réfugier derrière cette soit-disant opposition théoricien vs praticien.
C’est pourtant là ou est le fonds du probléme et l'incompréhension. Tu veux mesurer ce qui est hors bande audible ok. Seulement le probléme est que tes oreilles n'entendront jamais ce qui est hors bande. Donc quel intérêt de mesurer ce qui est hors bande si ta mesure doit refléter ce que tes oreilles vont entendre?
Pour le SNR, on peut se faire une idée de ce que l'on devrait mesurer quand-même (rien de sorcier) :
- La largueur de bande @44.1Hz sur laquelle la puissance du bruit de quantif est étalée : 22050Hz
- La largueur de bande AES17 : 20000-20 = 19980Hz
- La puissance du bruit de quantif pris en compte : ( Ptotal / 22050 )*19980.
- 10*log10(19980/22050) = -0.4 dB.
==> Il en manque encore pour arriver à expliquer les 6dB en trop.e
Je suis bien d'accord que sur certaines mesures, la FFT peut démontrer certaines limites. Mais tu sais, ce n’est pas moi qui ait écrit ce logiciel, il est parfaitement paramétré. Il est sorti fin des années 90 au tarif de 4000 dollars, il était utilisé par pas mal de petits labos, et il a évolué depuis. Tu télécharges la démo et tu fais les tests toi même pour voir si tu arrives à mieux. Il faut prendre la version SpectraPLUS-SC (Sound Card edition) https://spectraplus.com/Downloads.htm
Quand bien même, ce n'est pas parce que ça sort de l'AES ou de l'IEEE qu'il faut dire amen.

Anonyme


Juste lâcher un mot de temps en temps au milieu de toussa.
Donc quel intérêt de mesurer ce qui est hors bande si ta mesure doit refléter ce que tes oreilles vont entendre?
Interopérabilité

Rickton


rroland


Anonyme

Par contre, concernant un peu plus le sujet du topic, passer de 48kHz à 44,1, de 44,1 à 192kHz, en ayant une étape de conversion analogique, ça ne pose pas de problème. Si on accepte l'étape CNA/CAN, on peut rééchantillonner en ce qu'on veut...
Oui, mais comme dit plus tôt, ca ne sert strictement à rien. Le seul intérêt a un éventuel oversampling serait pour anticiper et facilite une utilisation abusive de timestreching ou de pitch shifting sur les prises (genre melodyne ou autre joyeuseté de la sorte)

EraTom

Par contre, concernant un peu plus le sujet du topic, passer de 48kHz à 44,1, de 44,1 à 192kHz, en ayant une étape de conversion analogique, ça ne pose pas de problème. Si on accepte l'étape CNA/CAN, on peut rééchantillonner en ce qu'on veut...
Il n'y a même moins de problème à le faire uniquement en numérique en évitant des problèmes de non-linéarité, par exemple, et c'est bien ce que j'ai (partiellement) montré...
C’est pourtant là ou est le fonds du probléme et l'incompréhension.
Donc quel intérêt de mesurer ce qui est hors bande si ta mesure doit refléter ce que tes oreilles vont entendre?
Tu ramènes à chaque fois le problème au choix de la bande, 0-20Hz et 20Hz-22kHz en plus, en y voyant une opposition théorique / pratique : Ça ne représente que 0.4dB du SNR d'un post d'erreur de 6dB : On s'en moque complètement.
Si tu veux je t'annonce tous les SNR théoriques avec 0.4 dB en plus, la belle affaire !
D'accord, donc selon toi, chacun fait ce qu'il veut dans son coin. Ben non désolé, si chacun a sa propre méthode de mesure, les résultats deviennent incomparables entre eux. Tu peux le tourner dans tous les sens que tu veux, ça n'y changera rien. Ya bien un moment donné où il faut s'entendre sur une norme. Et si personne ne suit la norme, elle ne sert strictement à rien. Pas la peine d'en faire à ce moment là.
Évidement qu'il faut standardiser un protocole de test et de mesures pour pouvoir comparer des produits et des systèmes, mais ça n'empêche pas de faire preuve de discernement quant à la couverture de ses tests :
Les normes ne couvrent pas tous les aspects et ne te permettent pas d'assurer à elles seules la pertinence des mesures.
http://www.aes.org/standards/meetings/archive/meeting-archive-2009/aes126-sc-02-01-report.cfm
"[...]There was some discussion about how to agree about some technical issues, for example, defining full scale. We stated that we work by consensus, consensus means lack of sustained objection. So if anyone disagrees, they must provide alternative text. For example, we could specify that if the digital audio signal is available then Full Scale should be defined by digital FS. If the digital audio is not available, then use 1% distortion point as FS. In any case, the FS definition method should be indicated by anyone claiming an AES17 compliant measurement."
Des normes, de 1980 à 2015, il y en a eu des tonnes. Certains matériels renvoient à la norme appliquée sans préciser comme est fixé les grandeurs non couverte.
D'autres, sans suivre une norme, précisent exactement ce qui est fait.
Il est possible de faire n'importe quoi en restant dans les clous d'une norme.
Exemple : Comment as-tu fixé la fréquence de ton signal de test ?
Suit-elle la recommandation de l'AES ?
Il est possible d'être rigoureux en explicitant de manière détaillée son protocole.
Je t'invite à prendre du matériel audio de 1980 à 2015 est à regarder comment les mesures de SNR étaient ou son pratiquées : Combien sont AES17 compliant ?

EraTom

Je suis bien d'accord que sur certaines mesures, la FFT peut démontrer certaines limites.
Je termine un truc et je reviens avec des données en détaillant très précisément les méthodes d'estimation.
La première chose à faire pour mesurer quelque chose c'est de vérifier que l'on a l'outil qui permet de le faire. Avec une erreur sur le SNR de 6dB (~ 1bit effectif) ce n'est pas possible.
Je ne sais pas si un norme le précise et il me semble que c'est plus pratique que théorique comme considération...
[ Dernière édition du message le 18/04/2015 à 20:59:10 ]

Anonyme

Le seul intérêt a un éventuel oversampling serait pour anticiper et facilite une utilisation abusive de timestreching ou de pitch shifting sur les prises (genre melodyne ou autre joyeuseté de la sorte)
Non, c'est l' entièreté des traitements qui pâtissent d'un changement de fréquence, pas uniquement une utilisation abusive de timestreching ou de pitch shifting.
Tu peux travailler avec des fichier en 44 dans un projet en 96, travailler avec des fichier 96 dans un projet en 96 ou encore en 44 dans 44., etc.... Le résultat sera à chaque fois différents, souvent avec des avantages en 96-96 sans même faire du timestreching ou de pitch shifting.
On peut difficilement inventer les samples manquant, ça ce fait mais ce n'est pas pareille.
[ Dernière édition du message le 18/04/2015 à 21:29:13 ]

Rickton

On peut difficilement inventer les samples manquant, ça ce fait mais ce n'est pas pareille.
Dans la bande audible il ne manque pas de samples, si?

Anonyme


Rickton


Anonyme


marc34.o

Parce que la puissance / énergie / information hors bande audible (mais bien présente dans le signal) peut influer le résultat d'un traitement dans la bande audible, par exemple.
Donc suivant ton raisonnement on mesure tout, y compris ce qui est en dehors de la bande audible, avec la certitude de rajouter dans la mesure du bruit que l'oreille n'entendra pas.
Les normes ne couvrent pas tous les aspects et ne te permettent pas d'assurer à elles seules la pertinence des mesures.
C’est certain, mais à un moment donné ou un autre il faut bien se mettre d'accord sur un protocole, et c'est bien l'AES17 qui fait référence pour la mesure, notamment chez Audio Precision. Extrait su site Audio Precision:
S-AES17
The Audio Engineering Society publishes its recommendations for the measurement of digital audio signals in the document AES17. Recognizing the problem in measuring signals in the presence of out-of-band noise, AES17 recommends the use of a pre-analyzer filter when measuring DAC outputs. Our S-AES17 low-pass pre-analyzer filter satisfies the recommendation in AES17.
Maintenant tu peux être en désaccord avec Audio Precision si tu veux, mais en attendant, c’est leur matériel qui fait référence dans le domaine de la mesure audio. C'est un fait incontestable.
Je termine un truc et je reviens avec des données en détaillant très précisément les méthodes d'estimation.
De toutes manières, tant que tu ne voudras pas admettre l'importance du filtrage, je ne vois pas en quoi on pourra avancer dans la discussion.
Après pour ce que fait mon logiciel en interne, c'est un autre probléme: Tu as émis une hypothèse sur laquelle je suis en accord avec toi. Pourquoi remettre de l'huile sur le feu? Si tu remets en cause mon protocole, et tu as bien sur le droit de le faire, je t'ai donné le lien de la démo du logiciel. Fais les mesures par toi même et tire en tes propres conclusions. Tout ce que je peux dire c'est que tous les tests publiés ont été faits dans les strictes mêmes conditions.

Anonyme

Citation de Reno-Theplankton :D'ailleurs, vous qui avez l'air de clairement être calé dans tout se labyrinthe de Bits et de Fréquences, vous auriez pas quelques liens intéressants permettant d'y voir plus clair ? je suis resté à la base du concept de la conversion moi, et sur le net, je trouve ou des articles qui m'expliquent ce que je sais déjà, ou des articles d'un niveau grandement supérieur au mien, dans le type de votre conversation, auxquels je comprend .... (presque) rien ...
C'est très simple.
Tu fais des prises en 44 , des effets et intrus numérique en 44 , t'exportes en 44/32 bit.
Tu fais identiquement la même chose en 48, en 88,2 en 96 et en 192, t'exportes en 32 bits...
Tu convertis chacun pour le CD en 44/16.
Pour l'image/son en 48.
Pour youtube, machin et truc en 96.
En 192 HD.... image...
Tatata...
Voilà.
Ah nan, maintenant tu compares (Les oreilles c'est quand même bien des fois pour entendre, pas toujours selon les spécialiste mais bon on a rien d'autre.![]()
) qui quoi s'en sort le mieux et tu devrais obtenir une réponse assez rapidement.
Tes moyens aussi...
(évites les réponses du siècle dernier: 44 pour le son, 48 pour l'image, gnagnagna...)
[ Dernière édition du message le 19/04/2015 à 00:14:25 ]

EraTom

Donc suivant ton raisonnement on mesure tout, y compris ce qui est en dehors de la bande audible, avec la certitude de rajouter dans la mesure du bruit que l'oreille n'entendra pas.
Pour caractériser l'effet spectral d'une quantification on peut avoir besoin d'aller au-delà de la bande audio (sinon comment expliquer le fonctionnement d'un CAN sigma-delta et le mettre au point ?)
Maintenant tu peux être en désaccord avec Audio Precision si tu veux, mais en attendant, c’est leur matériel qui fait référence dans le domaine de la mesure audio. C'est un fait incontestable.
Pourquoi remettre de l'huile sur le feu ?
Je constate simplement que la mesure produite n'est pas suffisante : 6dB de biais sur la mesure d'un SNR c'est 1 bit effectif en numérique. Ce n'est pas rien.
Alors plutôt que de partir d'une FFT je préfère tenter des algorithmes d'estimation qui ont fait leurs preuves pour le problème qui nous intéresse du genre de MUSIC ou ESPRIT
L'estimation de la fréquence du fondamental n'est pas nécessaire : Pour ton fichier nous savons qu'elle est de 1000 Hz. Reste les deux autres paramètres phase et amplitude pour chaque composante.
L'ordre (i.e. le nombre d'harmonique) est aussi à régler.
J'ai alors procédé de cette manière :
A chaque instant t, le signal est de la forme :
s(t) = Σ a_k * sin(k*ω*t + φ_k) + err(t)
err(t) est le signal additif dû aux erreurs de quantif.
k va de 1 à p (p le nombre d'harmoniques)
ω est la pulsation du fondamental = 2π*1000 rad/s
En posant :
α_k = a_k*sin(φ_k)
β_k = a_k*cos(φ_k)
a_k = √( α_k² + β_k² )
φ_k = arctan( α_k / β_k )
a_k * sin(k*ω*t + φ_k) = α_k*cos( k*ω*t ) + β_k*sin( k*ω*t )
En posant le vecteur A qui contient les coefficients α_k, β_k :
α_1
:
α_p
β_1
:
β_p
En posant le vecteur X(t) :
cos( 1*ω*t )
:
cos( p*ω*t )
sin( 1*ω*t )
:
sin( p*ω*t )
On a :
s(t) = A'*X(t) + err(t)
En prenant :
- Le vecteur ligne S = [ s(0) ... s(n/Fe) ] des échantillons successif du signal.
- La matrice B constituée des X(t) : B = [ X(0) ... X(n/Fe) ]
S = A'*B + ERR
La pseudo inversion nous permet d'estimer A de façon à minimiser l'erreur quadratique :
A_est = S*B'*(B.B')^-1
On a alors :
ERR_est = S - S_est = S - A_est'*B
On peut alors estimer le SNR à partir des puissances de S_est et ERR_est et le THDf à partir de A_est.
Concernant l'ordre du modèle : Si l'on atteint des amplitudes du même ordre de grandeur que le résidu c'est que l'on est aller trop loin (le modèle s'ajuste sur le bruit en cherchant la sinusoïde la plus proche du signal aléatoire, la puissance du signal est sur-estimée et celle du bruit sous-estimée => le SNR est sur-estimé).
Ce que j'obtiens pour ton fichier "16 bits 44.1Khz.wav" : En ajustant un modèle harmonique d'ordre 22 (le max)
SNR = 98.7401 dB
MaxErr = 2.2835e-005 ("amplitude" max de l'erreur)
EcartTypeErr = 3.1661e-006
Les amplitude du fondamental et harmoniques :
0,999980221718228 5,60717933214898e-07 6,19950608724417e-06 6,48939806833289e-07 4,40129654837701e-06...
La première harmonique estimée présente une valeur négligeable devant l'err : Il n'y a pas d'harmonique...
On peut donc s'arrêter à l'ordre 1 ; pas de THDf à calculer :
SNR = 96.2561 dB (+0.4dB si tu limites la bande).
(au lieu de 99.912 dB avec la FFT).
Pour tester l'estimation paramétrique par les moindre carrés, j'ai aussi passé le sinus que je t'ai envoyé avec cette technique :
SNR = 97.9669 dB
Pour rappel, ce que j'avais avec la mesure précédente qui prenait en entrée directement les paramètres de génération de la sinusoïde :
Le SNR de quantification : 97.9665 dB
Bien sûr il est possible de prendre cette méthode en défaut mais pour ce travail ça va très bien.
C'est un exemple de l'intérêt des méthodes HR sur la FFT... Des outils embarquent ESPRIT qui permet aussi l'estimation de la pulsation dans une première étape.
Le code MatLab :
%% Paramètres
%Freq = 1000; %Hz
Freq = 1347;
Fe = 44100;
%Ordre = floor(Fe/(2*Freq));
Ordre = 1;
%% Lecture du fichier
%s = wavread('16 bits 44.1Khz.wav')';
s = wavread('test.wav')';
%% Basse de temps
t = (0:1[img alt=":("]https://static.audiofanzine.com/images/audiofanzine/interface/smileys/icon_sad.gif[/img]length(s)-1))/Fe;
%% Pulsations
pulsations = (2*pi*(1:1:Ordre)*Freq)';
%% Estimation par les moindres carrés
B = [ cos(repmat(pulsations,1,length(t)).*repmat(t,Ordre,1)) ;
sin(repmat(pulsations,1,length(t)).*repmat(t,Ordre,1)) ];
[~,R]=qr(B',0);
A = ((s*B')/R)/R';
%% Signal reconstitué et résiduel
s_est = A*B;
err = s-s_est;
%% Paramètres amplitudes et phases
Amplitudes = realsqrt(A(1:1:Ordre).^2 + A(Ordre+(1:1:Ordre)).^2);
Phases = atan2(A(1:1:Ordre),A(Ordre+(1:1:Ordre)));
%% Affichage des résultats
SNR = 10*log10(sum(s_est.^2)/sum(err.^2))
MaxErr = max(err)
EcartTypeErr = realsqrt(var(err))
THD_f = norm(Amplitudes(2:1:end))/Amplitudes(1)
[ Dernière édition du message le 19/04/2015 à 01:01:07 ]
- < Liste des sujets
- Charte