Повышение дискретизации в MATLAB
Опубликовано: 2 Марта, 2022
Интерполяция или повышающая дискретизация - это специфическая инверсия прореживания. Это операция сохранения данных, поскольку все примеры x [n] доступны в расширенном сигнале y [n]. Интерполяция работает путем добавления (L – 1) примеров с нулевым значением для каждой входной выборки.
Мы будем использовать функцию interp () для интерполяции сигнала. Он используется для увеличения частоты дискретизации сигнала на целочисленный коэффициент.
Syntax: a = interp(x, r)
Parameter:
- x: input signal
- r: interpolation factor
Return Value: Returns interpolated signal
Код MATLAB для интерполяции сигнала:
MATLAB
% time vector t = 0 : .00025 : 1; # input signal x = sin(2 * pi * 50 * t) + sin(2 * pi * 100 * t); % increase the sample rate of i/p signal by factor of 4 y = interp(x, 4); subplot(2, 2, 1); % plot few samples of the Original signal stem(x(1 : 75)) title( "Original Signal" ); subplot(2, 2, 2); % plots few samples of the up-sampled signal stem(y(1 : 75)); title( "Interpolated Signal" ); |
Выход: