2017-07-20 1 views
0

Ich bin sehr sehr Neuling in der Sprachverarbeitung. Ich versuche tatsächlich, Rauschreduzierung zu machen. Ich verwende die Spektrale Subtraktionsmethode. In vielen theoretischen Arbeiten und Algorithmen heißt es dabei, die Rahmen des Audiosignals zu nehmen.Was bedeutet es zu sagen, Mittelwert/Durchschnitt dieser ersten 3 Rahmen zu nehmen

Dafür brauchte ich 20ms für jeden Frame, d. H. Für Sampling-Frequenz = 16KHz würde ich jeden Frame mit 16KHz * 20ms = 320 Samples/Frame enden.

windowed_frame = frame .* hamming(length(frame)); 
complex_spec = fft(windowed_frame,512);   
mag_spec = abs(complex_spec); 
phase_spec = angle(complex_spec); 

Nun, für Rauschsignal sagt es:

Angenommen ersten paar Nicht-Sprachrahmen als Rauschen.

Also, eine Rauschschätzung zu bekommen, heißt es

den Mittelwert des ersten 3 oder so Frames nehmen.

Und jeder Rahmen, wenn 320 Proben lang. Nun, was bedeutet es zu sagen, Mittelwert/Durchschnitt dieser ersten 3 Frames zu nehmen?

Die 3 Frames enthält insgesamt 3 * 320 = 960 Proben. Gibt es an, diese 960-Werte zu verstehen? Aber das würde nur einen einzigen Wert ergeben. Aber ich würde eine Fenstergröße benötigen, d. H. 20 ms Größe noise_estimate.

Hilfe?

+1

gibt es eine Schwesterseite, die sich auf digitale Signalverarbeitung konzentriert ... wenn keine Hilfe hier Sie vielleicht Ihre Frage verschieben möchten ... siehe https://dsp.stackexchange.com/search?q=+sound+frames + in + Sprache + Verarbeitung –

+0

Ich würde vermuten, dass dies bedeutet, den elementweisen Mittelwert des Spektrums von jedem der ersten drei Bilder zu nehmen, was Ihnen ein durchschnittliches Leistungsspektrum von den ersten 960 Samples gibt. –

Antwort

0

Sie benötigen Rauschspektrum Schätzung, so dass Sie mag_spec in den ersten 3 Frames, nicht die Signalwerte durchschnittlich.

Das Ergebnis wird 512 Zahlen sein, im Grunde die Rausch-Energie für jede Frequenz bin.