Фильтрация после повышающей дискретизации — интерполяция

Этот пример показывает, как сверхдискретизировать сигнал и применить lowpass фильтр интерполяции с interp. Повышающая дискретизация L вставляет L - 1 нуль между каждым элементом исходного сигнала. Повышающая дискретизация может создать артефакты обработки изображений. Фильтрация Lowpass после повышающей дискретизации может удалить эти артефакты обработки изображений. Во временном интервале, lowpass фильтрация интерполирует нули, вставленные путем повышающей дискретизации.

Создайте сигнал дискретного времени, основополосная спектральная поддержка которого [-π/2,π/2]. Постройте спектр значения.

F = [0 0.250 0.500 0.7500 1];
A = [1.0000 0.5000 0 0 0];
Order = 511;
B = fir2(Order,F,A);
[Hx,W] = freqz(B,1,8192,'whole');
Hx = [Hx(4098:end) ; Hx(1:4097)];
omega = -pi+(2*pi/8192):(2*pi)/8192:pi;

plot(omega,abs(Hx))
xlim([-pi pi])
xlabel('Radians/Sample')
ylabel('Magnitude')

Сверхдискретизируйте сигнал и примените фильтр lowpass, чтобы удалить артефакты обработки изображений. Постройте спектр значения.

y = interp(B,2);
[Hy,W] = freqz(y,1,8192,'whole');
Hy = [Hy(4098:end) ; Hy(1:4097)];

hold on
plot(omega,abs(Hy),'r','linewidth',2)
legend('Original Signal','Upsampled Signal')

Повышающая дискретизация все еще сокращает спектр, но артефакты обработки изображений удалены фильтром lowpass.

Смотрите также

| |