Bruits dans le signal de la parole

omarkas Messages postés 28 Statut Membre -  
 anissa -
Bonjour,
Actuellement, je suis entrain d'étudier un sujet sur le traitement des bruits dans les système de reconnaissances de parole. La vérité est que j'ai avancé très bien sur les types de bruits: stationnaires(bruit blanc...) et non stationnaires( bruit transitoires ou impulsionnels).

Concernant les algorithmes de réduction de bruit, j'ai trouvé 3 pour l'instant:

+ amplitude spectrale à court terme
+ Modélisation de la parole et filtre Weiner
+ Suppression adaptative du bruit (suppression d'écho)

Le problème est que je n'arrive pas à différencier entre les bruits stationnaires/non-stationnaires etr les bruits additifs. Autrement dit, les méthodes de débruitage cités en dessus sont-elles qui réduisent les bruits additifs?

ça sera de l'extrême sympathie que vous me guiderez encore pour une documentation plus vaste que celle trouvé par moi même concernant les algorithmes de réduction.

Une dernière question si vous permettez: Existe t-il d'autre algorithmes pour les additifs ? et ceux pour les bruits non stationnaires (bruits transitoires)?

Et merci d'avance

4 réponses

spouka
 
SVP comment calculer signal sur bruit sous matlab d'un signal de parole.
merci
2
optomecanique
 
pour ajouter un bruit eu signal :
- Débruitage et filtrage

But : débruiter des signaux 1D et des images 2D par filtrage.
Début du TP : lancer matlab (voir ci dessous), créer un fichier sous Matlab mon_nom.m (chacun doit avoir un fichier différent), que vous utiliserez pour taper vos commandes, et que vous lancerez depuis matlab >> mon_nom
> cd tp2
> matlab&
Dans matlab :
>> WavePath;
>> votre_nom;
Débruitage de signaux 1D.
* Charger un signal et le bruiter
n = 512;
f = MakeSignal('Piece-Regular', n);
sigma = 0.03 * (max(f)-min(f)); % variance du bruit
fn = f + sigma*randn(1,n); % signal bruité
% dessin des signaux
subplot(2,1,1);
plot(f); axis tight; title('Original');
subplot(2,1,2);
plot(fn); axis tight; title('Bruité');
* Filtrer par un noyau gaussien de variance mu (Télécharger les fonctions create_gaussian_filter et perform_convolution)
% mu correspond à la variance du filtre pour un signal f:[0,1]->R
mu = 0.01; % ceci est un exemple à vous de tester d'autres valeurs
h = create_gaussian_filter(n,mu); % crée le filtre
fnh = conv2(f,h,'same'); % calcule la convolution
* Tester une grande gamme de variance mu et garder la meilleure
mu_list = linspace( 0, 0.01, 30 ); err = [];
for mu = mu_list
% calculer ici le filtrage
e = ... % calculer ici l'erreur
err = [err, e]; % enregistrer l'erreur
end
% dessine la fonction d'erreur
plot(err, '.-');
% choisir le meilleur filtre
[tmp,i] = min(err); mu = mu_list(i);
% afficher le resultat
...
Débruitage d'images.
* Charger et bruiter une image
I = ReadImage('Lenna'); n = size(I,1);
sigma = 0.06 * (max(I(:))-min(I(:)));
In = I + sigma*randn(n);
subplot(1,2,1);
imagesc(I); axis image; axis off;
subplot(1,2,2);
imagesc(In); axis image; axis off;
colormap gray(256);
* Débruiter une image par filtrage
mu = 0.01; % ceci est un exemple à vous de tester d'autres valeurs
h = create_gaussian_filter([n,n],mu); % crée le filtre
Inh = perform_convolution(In,h); % calcule la convolution
subplot(1,3,1);
imagesc(I); axis image; axis off; title('Original');
subplot(1,3,2);
imagesc(In); axis image; axis off; title('Bruité');
subplot(1,3,3);
imagesc(Inh); axis image; axis off; title('Lissée');
colormap gray(256);
* Tester une grande gamme de variance mu et garder la meilleure
mu_list = linspace( 0, 0.01, 15 );
err = [];
for mu = mu_list
...
end
% dessin de la fonction d'erreur
plot(err, '.-')
% selection du meilleur filtre
[tmp,i] = min(err); mu = mu_list(i);
2
anissa
 
SVP qui peut m'aider !!
je veut la commande Matlab qui ajoute un bruit de type salt and pepper à un signal audio
0
omarkas Messages postés 28 Statut Membre 54
 
Bonjour est ce que quelqu'un peut me répondre?

Est ce que ce sujet ne correspond bien à ce Forum?
0
kheireddine
 
bon jour;
j'ai la même question que toi, y'a t-il une réponse qui peut nous aider
0