exponenta event banner

Понижение дискретизации - алиасинг

В этом примере показано, как избежать наложения при понижающей дискретизации сигнала. Если спектральная поддержка сигнала дискретного времени не ограничена интервалом ширины 2π/M радианах, понижающая дискретизация на М приводит к наложению. Наложение - это искажение, возникающее при сложении перекрывающихся копий спектра сигнала. Чем больше спектральная поддержка сигнала в основной полосе превышает 2π/M радиан, тем сильнее сглаживание. Продемонстрируйте совмещение в сигнале, уменьшенном на два. Спектральная поддержка сигнала в основной полосе превышает δ радиан в ширину.

Создайте сигнал со спектральной поддержкой основной полосы, равной 3δ/2 радиан. Использовать fir2 для проектирования сигнала. Постройте график спектра сигнала. Спектральная поддержка сигнала в полосе модулирующих частот превышает [-λ/2, λ/2].

f = [0 0.2500 0.5000 0.7500 1.0000];
a = [1.00 0.6667 0.3333 0 0];

nf = 512;
b1 = fir2(nf-1,f,a);
Hx = fftshift(freqz(b1,1,nf,'whole'));

omega = -pi:2*pi/nf:pi-2*pi/nf;
plot(omega/pi,abs(Hx))
grid
xlabel('\times\pi rad/sample')
ylabel('Magnitude')

Figure contains an axes. The axes contains an object of type line.

Выполните дискретизацию сигнала с коэффициентом 2 и постройте график спектра сигнала с пониженной выборкой со спектром исходного сигнала. В дополнение к амплитудному масштабированию спектра, наложение перекрывающихся спектральных реплик вызывает искажение исходного спектра для | λ | > λ/2.

y = downsample(b1,2,0);
Hy = fftshift(freqz(y,1,nf,'whole'));

hold on
plot(omega/pi,abs(Hy))
hold off
legend('Original','Downsampled')
text(2.5/pi*[-1 1],0.35*[1 1],{'\downarrow Aliasing','Aliasing \downarrow'}, ...
    'HorizontalAlignment','center')

Figure contains an axes. The axes contains 4 objects of type line, text. These objects represent Original, Downsampled.

Увеличьте спектральную поддержку сигнала в основной полосе до [-7δ/8,7λ/8] и уменьшите значение сигнала на 2. Постройте график исходного спектра вместе со спектром сигнала с пониженной дискретизацией. Увеличенная спектральная ширина приводит к более выраженному сглаживанию в спектре сигнала с пониженной дискретизацией, потому что больше энергии сигнала находится вне [-δ/2, λ/2].

f = [0 0.2500 0.5000 0.7500 7/8 1.0000];
a = [1.00 0.7143 0.4286 0.1429 0 0];

b2 = fir2(nf-1,f,a);
Hx = fftshift(freqz(b2,1,nf,'whole'));

plot(omega/pi,abs(Hx))
grid
xlabel('\times\pi rad/sample')
ylabel('Magnitude')

y = downsample(b2,2,0);
Hy = fftshift(freqz(y,1,nf,'whole'));

hold on
plot(omega/pi,abs(Hy))
hold off
legend('Original','Downsampled')

Figure contains an axes. The axes contains 2 objects of type line. These objects represent Original, Downsampled.

Наконец, создайте сигнал со спектральной поддержкой основной полосы частот, ограниченной [-δ/2, λ/2]. Выполните отсчет сигнала с коэффициентом 2 и постройте график спектра исходного сигнала и сигнала с пониженной дискретизацией. Сигнал с пониженной дискретизацией является полным диапазоном. Спектр сигнала с пониженной дискретизацией является растянутой и масштабированной версией исходного спектра, но форма сохраняется, поскольку спектральные копии не перекрываются. Наложение псевдонимов отсутствует.

f = [0 0.250 0.500 0.7500 1];
a = [1.0000 0.5000 0 0 0];

b3 = fir2(nf-1,f,a);
Hx = fftshift(freqz(b3,1,nf,'whole'));

plot(omega/pi,abs(Hx))
grid
xlabel('\times\pi rad/sample')
ylabel('Magnitude')

y = downsample(b3,2,0);
Hy = fftshift(freqz(y,1,nf,'whole'));

hold on
plot(omega/pi,abs(Hy))
hold off
legend('Original','Downsampled')

Figure contains an axes. The axes contains 2 objects of type line. These objects represent Original, Downsampled.

См. также

| |