Main Content

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.

xwvd

Distribución Cross Wigner-Ville y distribución pseudo Wigner-Ville suavizada cruzada

Descripción

ejemplo

d = xwvd(x,y) devuelve la cruz Wigner-Ville distribución de y .xy

ejemplo

d = xwvd(x,y,fs) devuelve la distribución cross Wigner-Ville cuando y se muestrean a una velocidad.xyfs

d = xwvd(x,y,ts) devuelve la distribución cross Wigner-Ville cuando y se muestrean con un intervalo de tiempo entre las muestras.xyts

d = xwvd(___,'smoothedPseudo') devuelve la cruz suavizada pseudo Wigner-Ville distribución de y .xy La función utiliza la longitud de las señales de entrada para elegir las longitudes de las ventanas utilizadas para el suavizado de tiempo y frecuencia. Esta sintaxis puede incluir cualquier combinación de argumentos de entrada de sintaxis anteriores.

d = xwvd(___,'smoothedPseudo',twin,fwin) especifica la ventana de tiempo, , y la ventana de frecuencia, , utilizada para suavizar.twinfwin Para utilizar la ventana predeterminada para el suavizado de tiempo o frecuencia, especifique el argumento correspondiente como vacío, .[]

d = xwvd(___,'smoothedPseudo','NumFrequencyPoints',nf) calcula la distribución de pseudo Wigner-Ville suavizada mediante puntos de frecuencia.nf Puede especificar y en esta sintaxis, o puede omitirlos.twinfwin

d = xwvd(___,'MinThreshold',thresh) establece en cero aquellos elementos cuya amplitud es menor que .dthresh Esta sintaxis se aplica tanto a la distribución cross Wigner-Ville como a la distribución pseudo Wigner-Ville suavizada cruzada.

[d,f,t] = xwvd(___) también devuelve un vector de frecuencias, , y un vector de tiempos, , en el que se calcula.ftd

ejemplo

xwvd(___) sin argumentos de salida traza la parte real de la cruz Wigner-Ville o cruz suavizada pseudo Distribución Wigner-Ville en la figura actual.

Ejemplos

contraer todo

Genere dos señales muestreadas a 1 kHz durante 1 segundo e incrustadas en ruido blanco. Una señal es un sinusoides de frecuencia 150 Hz. La otra señal es un chirrido cuya frecuencia varía sinusoidalmente entre 200 Hz y 400 Hz. El ruido tiene una varianza de

<math display="inline">
<mrow>
<mn>0</mn>
<mo>.</mo>
<msup>
<mrow>
<mn>1</mn>
</mrow>
<mrow>
<mn>2</mn>
</mrow>
</msup>
</mrow>
</math>
.

fs = 1000; t = (0:1/fs:1)';  x = cos(2*pi*t*150) + 0.1*randn(size(t)); y = vco(cos(3*pi*t),[200 400],fs) + 0.1*randn(size(t));

Calcular la distribución Wigner-Ville de la suma de las señales.

wvd(x+y,fs)

Calcular y trazar la cruz Wigner-Ville distribución de las señales. La distribución cruzada corresponde a los términos cruzados de la distribución Wigner-Ville.

xwvd(x,y,fs)

Genere una señal de dos canales que consta de dos chirridos. La señal se muestrea a 3 kHz durante un segundo. El primer chirrido tiene una frecuencia inicial de 400 Hz y alcanza los 800 Hz al final del muestreo. El segundo chirp comienza en 500 Hz y alcanza 1000 Hz al final. El segundo chirrido tiene el doble de amplitud del primer chirrido.

fs = 3000; t = (0:1/fs:1-1/fs)';  x1 = chirp(t,1400,t(end),800); x2 = 2*chirp(t,200,t(end),1000);

Almacene la señal como un horario. Calcular y trazar la cruz Wigner-Ville distribución de los dos canales.

xt = timetable(seconds(t),x1,x2);  xwvd(xt(:,1),xt(:,2))

Calcular la frecuencia instantánea de una señal mediante el uso de una señal de referencia conocida y la distribución de la cruz Wigner-Ville.

Cree una señal de referencia que consista en un átomo gaussiano muestreado a 1 kHz durante 1 segundo. Un átomo gaussiano es un sinusoides modulado por un gaussiano. Especifique una frecuencia sinusoides de 50 Hz. El gaussiano se centra en 64 milisegundos y tiene una varianza de

<math display="inline">
<mrow>
<mn>0</mn>
<mo>.</mo>
<msup>
<mrow>
<mn>01</mn>
</mrow>
<mrow>
<mn>2</mn>
</mrow>
</msup>
</mrow>
</math>
.

fs = 1e3; t = (0:1/fs:1-1/fs)';  mu = 0.064; sigma = 0.01; fsin = 50;  xr = exp(-(t-mu).^2/(2*sigma^2)).*sin(2*pi*fsin*t);

Cree la señal "desconocida" para analizar, que consiste en un chirrido. La señal comienza repentinamente a 0,4 segundos y termina repentinamente medio segundo después. En ese lapso, la frecuencia del chirrido disminuye linealmente de 400 Hz a 100 Hz.

f0 = 400; f1 = 100;  xa = zeros(size(t)); xa(t>0.4 & t<=0.9) = chirp((0:1/fs:0.5-1/fs)',f0,0.5,f1);

Cree una señal de dos componentes que consista en la suma de las señales desconocidas y de referencia. La distribución suavizada de pseudo Wigner-Ville del resultado proporciona una representación de frecuencia de tiempo "ideal".

Calcular y mostrar la distribución suavizada pseudo Wigner-Ville.

w = wvd(xa+xr,fs,'smoothedPseudo');  wvd(xa+xr,fs,'smoothedPseudo')

Calcular la distribución de Wigner-Ville cruzada de las señales desconocidas y de referencia. Tome el valor absoluto de la distribución y establezca en cero los elementos con amplitud inferior a 10. La distribución cross Wigner-Ville es igual a los términos cruzados de la señal de dos componentes.

Traza la parte real de la distribución de la cruz Wigner-Ville.

[c,fc,tc] = xwvd(xa,xr,fs); c = abs(c); c(c<10) = 0;  xwvd(xa,xr,fs)

Mejore los términos cruzados de Wigner-Ville añadiendo la representación de frecuencia de tiempo ideal a la distribución cross Wigner-Ville. Los términos cruzados de la distribución Wigner-Ville se producen a medio camino entre la señal de referencia y la señal desconocida.

d = w + c;  d = abs(real(d));  imagesc(tc,fc,d) axis xy colorbar

Identifique y trace la cresta de alta energía correspondiente a los términos transversales. Para aislar la cresta, busque los valores de tiempo donde la distribución cruzada tiene energía distinta de cero.

ff = tfridge(c,fc);  tv = sum(c)>0;  ff = ff(tv); tc = tc(tv);  hold on plot(tc,ff,'r--','linewidth',2) hold off

Reconstruya la frecuencia instantánea de la señal desconocida utilizando la cresta y la función de referencia. Trazar la frecuencia instantánea en función del tiempo.

tEst = 2*tc - mu; fEst = 2*ff - fsin;  plot(tEst,fEst)

Argumentos de entrada

contraer todo

Señales de entrada, especificadas como vectores o horarios cada uno que contiene una sola variable vectorial. y deben ser vectores o ambos ser horarios y deben tener la misma longitud.MATLAB®xy

Si las señales de entrada tienen una longitud impar, la función añade un cero para que la longitud sea par.

Ejemplo: especifica un sinusoides incrustado en el ruido blanco.cos(pi/8*(0:159))'+randn(160,1)/10

Ejemplo: especifica una variable aleatoria muestreada a 1 Hz durante 4 segundos.timetable(seconds(0:5)',rand(6,1))

Tipos de datos: single | double
Soporte de números complejos:

Frecuencia de muestreo, especificada como escalar numérico positivo.

Tiempo de muestra, especificado como escalar.duration

Ventanas de tiempo y frecuencia utilizadas para suavizar, especificadas como vectores de longitud impar. De forma predeterminada, utiliza ventanas Kaiser con factor de formaxwvd β = 20.

  • La longitud predeterminada de es el entero impar más pequeño mayor o igual quetwin round(length(x)/10).

  • La longitud predeterminada de es el entero impar más pequeño mayor o igual quefwin nf/4.

Cada ventana debe tener una longitud menor o igual que 2*ceil(length(x)/2).

Ejemplo: kaiser(65,0.5) especifica una ventana Kaiser de 65 muestras con un factor de forma de 0,5.

Número de puntos de frecuencia, especificado como un entero. Este argumento controla el grado de sobremuestreo en frecuencia. El número de puntos de frecuencia debe ser al menos (length(fwin)+1)/2 y no puede ser mayor que el valor predeterminado.

Valor mínimo distinto de cero, especificado como un escalar real. La función establece en cero aquellos elementos cuyas amplitudes son menores que .dthresh

Argumentos de salida

contraer todo

Distribución Cross Wigner-Ville, devuelta como matriz. El tiempo aumenta en las columnas de , y la frecuencia aumenta en las filas.d La matriz es de tamaño Nf × NtDónde Nf es la longitud de yf Nt es la longitud de .t

Frecuencias, devueltas como vector.

  • Si la entrada tiene información de tiempo, contiene frecuencias expresadas en Hz.f

  • Si la entrada no tiene información de tiempo, contiene frecuencias normalizadas expresadas en rad/sample.f

Instantáneas de tiempo, devueltas como vector.

  • Si la entrada tiene información de tiempo, contiene valores de tiempo expresados en segundos.t

  • Si la entrada no tiene información de tiempo, contiene números de ejemplo.t

El número de puntos de tiempo se fija como 4*ceil(length(x)/2).

Más acerca de

contraer todo

Distribución Cross Wigner-Ville

Para señales continuas x(t) Y y(t), se define comodistribución cross Wigner-Ville

XWVDx,y(t,f)=x(t+τ2)y*(tτ2)ej2πfτdτ.

Para una señal discreta con muestras, la distribución se convierte enN

XWVDx,y(n,k)=m=NNx(n+m/2)y*(nm/2)ej2πkm/N.

Para los valores impares de , la definición requiere la evaluación de la señal en valores de muestra de medio entero.m Por lo tanto, requiere interpolación, lo que hace necesario realizar cero la transformación discreta de Fourier para evitar el alias.

La distribución cross Wigner-Ville contiene términos de interferencia que a menudo complican su interpretación. Para afilar la distribución, se puede filtrar la definición con ventanas de paso bajo. La distribución pseudo Wigner-Ville suavizada en cruz utiliza ventanas independientes para suavizar el tiempo y la frecuencia:

XSPWVDx,yg,H(t,f)=g(t)H(f)x(t+τ2)y*(tτ2)ej2πfτdτ.

Referencias

[1] Cohen, Leon. Time-Frequency Analysis: Theory and Applications. Englewood Cliffs, NJ: Prentice-Hall, 1995.

[2] Mallat, Stéphane. A Wavelet Tour of Signal Processing. Second Edition. San Diego, CA: Academic Press, 1999.

[3] Malnar, Damir, Victor Sucic, and Boualem Boashash. "A cross-terms geometry based method for components instantaneous frequency estimation using the cross Wigner-Ville distribution." In 11th International Conference on Information Sciences, Signal Processing and their Applications (ISSPA), pp. 1217–1222. Montréal: IEEE®, 2012.

Capacidades ampliadas

Consulte también

Funciones

Introducido en R2018b