SlideServe
Menu
Préférences
© SlideServe · v2026

Spectral Analysis & Spectrogram

beau avatar
9 diapositives · 405 Views · Sep 26, 2014

Spectral Analysis & Spectrogram. SASPL Cheolwoo Jo. Contents. Spectral Analysis Spectrogram Narrow Band Wide Band Analysis of Spectrogram AR, MA, ARMA model of Speech. Spectral Analysis. Spectrogram in matlab. [B,F,T] = SPECGRAM(A,NFFT,Fs,WINDOW,NOVERLAP) A: Speech Signal

Spectral Analysis & Spectrogram - slide 1
01 / 9Spectral Analysis & Spectrogram
1 / 17

Télécharger la présentation

Spectral Analysis & Spectrogram
Une image / un lien ci-dessous est fourni (tel quel) pour télécharger la présentation

Politique de téléchargement : le contenu du site vous est fourni TEL QUEL pour votre information et votre usage personnel ; il ne peut être vendu, concédé sous licence ni partagé sur d’autres sites sans l’accord de son auteur.Le contenu vous est fourni TEL QUEL, pour votre information et votre usage personnel uniquement. Téléchargez la présentation en cliquant sur ce lien. Lors du téléchargement, si vous ne parvenez pas à télécharger une présentation, l’éditeur a peut-être supprimé le fichier de son serveur.Pendant le téléchargement, si vous ne parvenez pas à obtenir une présentation, le fichier a peut-être été supprimé par l’éditeur.

F I N

Plus de contenu associé

Transcription de la présentation
  1. Spectral Analysis & Spectrogram SASPL Cheolwoo Jo

  2. Contents • Spectral Analysis • Spectrogram Narrow Band Wide Band • Analysis of Spectrogram • AR, MA, ARMA model of Speech

  3. Spectral Analysis

  4. Spectrogram in matlab • [B,F,T] = SPECGRAM(A,NFFT,Fs,WINDOW,NOVERLAP) • A: Speech Signal • NFFT: Number of samples • Fs: Sampling Frequency • Window: Type of Window • NOVERLAP: Number of Overlapping signal

  5. function [array,raw] = spectrogram(wave,segsize,nlap,ntrans); %function array = spectrogram(wave,segsize,nlap,ntrans); % defaults spectrogram(wave,128,8,4) % nlap is number of hamming windows overlapping a point; % ntrans is factor by which transform is bigger than segment; % returns a spectrogram 'array' with fourth root of power, % filter smoothed and formatted for display. % Added option to return raw spectrogram.... Malcolm 5/26/95 % Added code so that input could be any direction ... Malcolm 5/26/95 % (c) 1998 Interval Research Corporation if nargin < 4; ntrans=4; end if nargin < 3; nlap=8; end if nargin < 2; segsize=128; end [r c] = size(wave); if (r < c) wave = filter([1 -0.95],[1],wave'); else wave = filter([1 -0.95],[1],wave); end Spectrogram in auditory toolbox

  6. s = length(wave); nsegs = floor(s/(segsize/nlap))-nlap+1; array = zeros(ntrans/2*segsize,nsegs); window = 0.54-0.46*cos(2*pi/(segsize+1)*(1:segsize)'); for i = 1:nsegs seg = zeros(ntrans*segsize,1); % leave half full of zeroes seg(1:segsize) = ... window.*wave(((i-1)*segsize/nlap+1):((i+nlap-1)*segsize/nlap)); seg = abs(fft(seg)); % reverse for image display array(:,i) = seg(((ntrans/2*segsize)+1):(ntrans*segsize)); end if nargout > 1 raw = array; end

  7. array = array .* array; % back into power domain for smoothing for i=1:nsegs % smooth the spectral slices array(:,i) = filter([.2 1 .2],[1],array(:,i)); end for i=1:ntrans/2*segsize % smooth the channels array(i,:) = filter([.2 1 .2],[1],array(i,:)); end % compress with square root of amplitude (fourth root of power) off = 0.0001*max(max(array)); % low end stabilization offset, array = (off+array).^0.25-off^0.25; % better than a threshold hack! array = 255/max(max(array))*array;

  8. Spectrogram level scaling • Log|x[k]|2 Gray Intensity Black Log Energy(dB) White 60dB

  9. Specgram • SPECGRAM(A,F,Fs,WINDOW) • Matlab • A: Speech • F: Vector of Frequencies • Fs: Sampling Frequency • Window: Type of Window Function