Mon collègue et moi développons un module de traitement du son et de la parole sur un DSP de périphérique analogique. En raison de la proximité de notre seul microphone et haut-parleur, nous avons connu un écho important. Nous voulons implémenter un algorithme NLMS pour réduire cet écho. Je voulais d'abord l'implémenter et tester l'algorithme dans Matlab mais j'ai encore quelques problèmes. Je pense que je pourrais avoir un problème théorique dans mon algorithme. J'ai du mal à comprendre ce que serait le «signal désiré» dans l'algorithme puisque je n'ai pas accès à un signal non corrompu.Algorithme d'annulation d'écho acoustique dans Matlab
Voici un aperçu de ma façon naïve de l'implémenter dans Matlab. Simulink diagram here
En ce moment, le code ne peut pas compiler en raison d'une « erreur de boucle algeabric » dans Simulink, mais j'ai le sentiment qu'il ya plus à ce problème.
Toute aide serait appréciée.
Avez-vous lu l'article de documentation sur les boucles algébriques? http://de.mathworks.com/help/simulink/ug/algebraic-loops.html – Daniel
Je pourrais être complètement incompréhension de votre problème, mais que voulez-vous dire par «vous n'avez pas accès à un signal non corrompu»? Ne pouvez-vous pas simplement éteindre l'enceinte et enregistrer un échantillon audio? Votre écho n'est-il pas littéralement l'entrée du microphone étant également transmise par l'enceinte avec un peu de retard? –
Pouvez-vous poster une capture d'écran de modèle? Jetez un oeil à l'image d'algorithme à http://www.ti.com/lit/an/spra063/spra063.pdf qui devrait aider à modéliser ceci. – Navan