Esta página aún no se ha traducido para esta versión. Puede ver la versión más reciente de esta página en inglés.
Cargue un archivo de datos que contenga un pulso de ecolocalización emitido por un gran murciélago marrón ( ) y medido con un intervalo de muestreo de 7 microsegundos.Eptesicus fuscus Cree un horario MATLAB® utilizando la señal y la información de tiempo.
load batsignal t = (0:length(batsignal)-1)*DT; sg = timetable(seconds(t)',batsignal);
Abra y arrastre el horario desde el explorador del espacio de trabajo a la tabla Signal.Analizador de señales Haga clic en el botón para crear dos pantallas en paralelo.Cuadrícula de visualización Seleccione cada pantalla y haga clic en el botón para agregar una vista de espectrograma.Frecuencia de tiempo
Arrastre el horario a ambas pantallas.
Seleccione la pestaña.Espectrograma En la pantalla de la derecha, marque .Reasignar Para cada pantalla:
Establezca la resolución de tiempo en 280 microsegundos y especifique una superposición del 85% entre los segmentos adyacentes.
Utilice el control deslizante para aumentar la fuga hasta que el RBW sea de aproximadamente 4,5 kHz.Fuga
Establezca los límites de potencia en –45 dB y –20 dB.
El espectrograma reasignado muestra claramente tres crestas de frecuencia de tiempo. Para realizar un seguimiento de las crestas, seleccione la pantalla a la derecha. En la pestaña, haga clic y seleccione .MonitorGenerar scriptSpectrogram Script
El script aparece en el Editor.
% Compute spectrogram % Generated by MATLAB(R) 9.7 and Signal Processing Toolbox 8.2. % Generated on: 26-Dec-2018 17:21:44 % Parameters timeLimits = seconds([0 0.002793]); % seconds frequencyLimits = [0 71428.57]; % Hz leakage = 0.9; timeResolution = 0.00028; % seconds overlapPercent = 85; reassignFlag = true; %% % Index into signal time region of interest sg_batsignal_ROI = sg(:,'batsignal'); sg_batsignal_ROI = sg_batsignal_ROI(timerange(timeLimits(1),timeLimits(2),'closed'),1); % Compute spectral estimate % Run the function call below without output arguments to plot the results [P,F,T] = pspectrum(sg_batsignal_ROI, ... 'spectrogram', ... 'FrequencyLimits',frequencyLimits, ... 'Leakage',leakage, ... 'TimeResolution',timeResolution, ... 'OverlapPercent',overlapPercent, ... 'Reassign',reassignFlag);
Ejecute el script. Trazar el espectrograma reasignado.
mesh(seconds(T),F,P) xlabel('Time') ylabel('Frequency') axis tight view(2) colormap pink
Utilice la función para rastrear las crestas.tfridge
[fridge,~,lridge] = tfridge(P,F,0.01,'NumRidges',3,'NumFrequencyBins',10); hold on plot3(seconds(T),fridge,P(lridge),':','linewidth',3) hold off
Gracias a Curtis Condon, Ken White y Al Feng del Beckman Center de la Universidad de Illinois por los datos de murciélagos y permiso para usarlos en este ejemplo.