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.

interp

Interpolación— aumentar la frecuencia de muestreo por factor entero

Descripción

ejemplo

y = interp(x,r) aumenta la frecuencia de muestreo de , la señal de entrada, por un factor de .xr

y = interp(x,r,n,cutoff) especifica dos valores adicionales:

  • es la mitad del número de valores de muestra originales utilizados para interpolar la señal expandida.n

  • es la frecuencia de corte normalizada de la señal de entrada, especificada como una fracción de la frecuencia Nyquist.cutoff

[y,b] = interp(x,r,n,cutoff) también devuelve un vector, , con los coeficientes de filtro utilizados para la interpolación.b

Ejemplos

contraer todo

Cree una señal sinusoidal muestreada a 1 kHz. Interpolarlo por un factor de cuatro.

t = 0:0.001:1; x = sin(2*pi*30*t) + sin(2*pi*60*t); y = interp(x,4);

Trazar las señales originales e interpoladas.

subplot 211 stem(0:30,x(1:31),'filled','markersize',3) grid on xlabel 'Sample number',ylabel Original subplot 212 stem(0:120,y(1:121),'filled','markersize',3) grid on xlabel 'Sample number',ylabel Interpolated

Argumentos de entrada

contraer todo

Señal de entrada, especificada como vector.

Tipos de datos: double | single

Factor de interpolación, especificado como un entero positivo.

Tipos de datos: double | single

La mitad del número de muestras de entrada utilizadas para la interpolación, especificada como un entero positivo. Para obtener mejores resultados, no utilice más de 10.n El filtro de interpolación de paso bajo tiene una longitud de 2 x + 1.nr

Tipos de datos: double | single

Frecuencia de corte normalizada de la señal de entrada, especificada como un escalar real positivo no mayor que 1 que representa una fracción de la frecuencia Nyquist. Un valor de 1 significa que la señal ocupa el intervalo Nyquist completo.

Tipos de datos: double | single

Argumentos de salida

contraer todo

Señal interpolada, devuelta como vector. es tiempo sin embargo, siempre y cuando la entrada original, .yrx

Tipos de datos: double | single

Coeficientes de filtro de interpolación de paso bajo, devueltos como vector de columna.

Tipos de datos: double | single

Algoritmos

La interpolación aumenta la frecuencia de muestreo original de una secuencia a una tasa más alta. Es lo opuesto a la diezma. inserta ceros en la señal original y, a continuación, aplica un filtro de interpolación de paso bajo a la secuencia expandida.interp La función utiliza el algoritmo de interpolación de paso bajo 8.1 descrito en:[1]

  1. Expanda el vector de entrada a la longitud correcta insertando 0s entre los valores de datos originales.

  2. Diseñe un filtro FIR simétrico especial que permita que los datos originales pasen sin cambios e interpola para minimizar el error cuadrado medio entre los puntos interpolados y sus valores ideales. El filtro utilizado por es el mismo que el filtro devuelto por .interpintfilt

  3. Aplique el filtro al vector de entrada expandido para producir la salida.

Referencias

[1] Digital Signal Processing Committee of the IEEE Acoustics, Speech, and Signal Processing Society, eds. Programs for Digital Signal Processing. New York: IEEE Press, 1979.

[2] Oetken, G., Thomas W. Parks, and H. W. Schüssler. “New results in the design of digital interpolators.” IEEE® Transactions on Acoustics, Speech, and Signal Processing. Vol. ASSP-23, No. 3, June 1975, pp. 301–309.

Introducido antes de R2006a