- •Лекция 1. Цос. Введение
- •Лекция 2. Разложение функций в ряды Ортонормированный базис
- •Лекция 3. Математическое представление сигнала. Методы исследования подобия сигналов. Корреляция.
- •Лекция 5. Разложение функций в комплексный ряд фурье
- •Лекция 6. Ключевые операции цос
- •Лекция 7. Программирование ключевых операций цос в matlab
- •Лекция 8. Цифровая фильтрация
- •Лекция 9. Оптимальная и согласованная фильтрация
- •Лекция 10. Применение цос для обработки коротких сигналов. Оконная фильтрация
- •Лекция 11. Цифровая обработка коротких сигналов. Определение частоты сигнала.
- •Алгоритм определения частоты
- •Лекция 13. Цифровая обработка нестационарных сигналов. Преобразование гильберта-хуанга. Введение
- •Лекция 14. Преобразование гильберта
- •Лекция 15. Обработка изображений. Введение.
- •Лекция 16. Методы улучшение визуального качества изображений
- •Улучшение качества изображения путем выравнивания гистограммы
- •Улучшение качества изображения с помощью гамма-коррекции
- •Лекция 17. Средства идентификации объектов на изображениях
- •Определение порога принятия решения по принципу максимума правдоподобия
- •Лекция 18. Основы проектирования систем цос.
- •Выбор ацп.
Лекция 9. Оптимальная и согласованная фильтрация
Оптимальная фильтрация
Оптимальное выделение сигнала из шума можно проводить различными методами, в зависимости от того, какая задача ставится: обнаружение сигнала, сохранение формы сигнала и т.д. В каждом методе оптимальной фильтрации вводится понятие критерия оптимальности, согласно которому строится оптимальный алгоритм обработки сигнала.
Передаточная
функция оптимального фильтра,
предназначенного для обнаружения
прямоугольного импульса длительностью
Блок-схема устройства
где
-
интегратор,
- элемент временной задержки.
Рис. 4
Оптимальный фильтр в данном случае решает задачу обнаружения одиночного импульса конечной длительности. Форма и амплитуда импульса после фильтра будут искажены.
Оптимальный фильтр Колмогорова-Винера
Фильтры низкой частоты, высокой частоты и полосовые фильтры эффективны в том случае, когда частотные спектры сигнала и шума не перекрываются.
Наилучшее разделение сигнала и шума цифровыми методами обеспечивает оптимальный фильтр Колмогорова-Винера.
Частотная характеристика фильтра Колмогорова-Винера:
H(w) = Ws(w) / [Ws(w)+Wq(w)]
где Ws(w) и Wq(w) - энергетические спектры (плотности мощности) сигнала и помех.
На рис. 1.9 и 1.10 приведены примеры фильтрации сигналов вида одиночного импульса и синусоидального сигнала ограниченной длительности.
А Б
Рис. 1.9. Исходный сигнал с шумом (А) и после фильтра (Б).
А Б
Рис. 1.10. Частотная характеристика оптимального фильтра (А) и сигнал после фильтра (Б).
Программа оптимального фильтра Колмогорова - Винера
A=1; %амплитуда сигнала
Q=0.1; %СКО шума
Fs=1024;
N=1024;%количество точек расчета
for k=1:N %цикл вычисления сигнала и шума
%s1(k)=A*exp(-0.00003*(k-500)^2.0); %колоколообразный сигнал
%s1(k)=A*sin(2*pi*12*k/1000.0)%синусоидальный сигнал
s1(k)=0;
if (k>400)&(k<600) % сигнал прямоугольной формы
s1(k)=A;
end
q(k)=Q*(randn(size(Fs))); %шум
x1(k)=s1(k)+q(k); % суммирование сигнала и шума
end
Y=fft(s1,N)/N; %БПФ сигнала без шума
SS1=Y.*conj(Y)/Fs; %спектр мощности сигнала без шума
Y1=fft(q,N)/L; %БПФ шума
SS2=Y1.*conj(Y1)/N; %спектр мощности шума
for i=1:N
H(i)=SS1(i)/(SS1(i)+SS2(i)); %передаточная функция оптимального %фильтра в частотной области
end
i=1:N
XX1=fft(x1,N); %частотный спектр сигнала с шумом
Z=ifft(XX1.*H); %свертка зашумленного сигнала с частотной характеристикой фильтра
%i=1:N
%h=ifft(H); %импульсная характеристика фильтра Колмогорова-Винера
%XX2=conv(x1,h); %свертка зашумленного сигнала с импульсной характеристикой фильтра (второй способ)
Согласованная фильтрация
Цифровая обработка сигналов решает две основные задачи: обнаружение и определение параметров зашумленного сигнала. Задача может состоять и только в обнаружении сигнала, вид которого известен. В этом случае может быть использована согласованная фильтрация, т.е. применен фильтр, «настроенный» точно под ожидаемый вид сигнала.
Для того, чтобы вычислить выходной сигнал фильтра, нужно выполнить операцию свертки массива частотного спектра F входного сигнала с частотной характеристикой фильтра H с помощью функции обратного преобразования Фурье, например, Z=ifft(F.*H), или операции свертки массива входного сигнала x с импульсным откликом фильтра h, например: Z = conv(x,h).
Частотная характеристика согласованного фильтра вычисляется "по частотному спектру сигнала" как комплексно сопряженный массив с помощью функции conj, например: Kf=conj(F). Здесь F- частотный спектр сигнала, Kf-частотная характеристика фильтра, согласованного с этим сигналом.
Ниже приведен пример использования согласованного фильтра для обнаружения линейно-частотно-модулированного сигнала (ЛЧМ-сигнала). Здесь цифровая обработка применяется не к самому ЛЧМ-сигналу (рис.1.13А), а к его частотному спектру, который представляет собой широкополосный сигнал в частотной области ( рис. 1.13Б)
А Б
Рис. 1.13. Вид ЛЧМ-сигнала (А) и его частотного спектра (Б)
На рис. 1.14А приведен вид сигнала на выходе согласованного фильтра для случая, когда ЛЧМ-сигнал точно соответствует по форме тому, на который настроен фильтр. При зашумлении ЛЧМ-сигнала или его спектра форма отклика на выходе согласованного фильтра сохранится (см. рис. 1.14Б), что и дает возможность обнаруживать ЛЧМ-сигнал на фоне шумов .
Обратите внимание, что форма сигнала, полученного с выхода согласованного фильтра, не имеет ничего общего с формой ЛЧМ-сигнала (и определить параметры ЛЧМ-сигнала по нему невозможно). Кроме того, если
Рис. 1.14. Пример выходного сигнала согласованного фильтра при незашумленном (А) и зашумленном (Б) сигнале на входе
ЛЧМ-сигнал будет отличаться по ширине полосы или по центральной частоте от того, на который "настроен" согласованный фильтр, то определить параметры ЛЧМ-сигнала по выходному сигналу согласованного фильтра будет сложно (см. рис. 1.15). На рис. 1.15А приведен вид выходного сигнала согласованного фильтра для случая, когда ЛЧМ-сигнал отличается по ширине полосы, на рис. 1.15Б - по ширине полосы и по центральной частоте.
Рис. 1.15. Вид выходного сигнала согласованного фильтра для случаев, когда ЛЧМ-сигнал отличается по ширине полосы (А) и по ширине полосы и по центральной частоте (Б). Ниже приведена программа моделирования согласованной фильтрации ЛЧМ-сигналов.
Программа согласованного фильтра
%Моделирование и согласованная фильтрация ЛЧМ-сигнала
%для случая, когда принимаемый ЛЧМ-сигнал НЕ соответствует %ожидаемому по ширине полосы частот и/или по центральной частоте
%Для того, чтобы вычислить выходной сигнал фильтра, нужно %выполнить операцию свертки массива частотного спектра X1 %входного сигнала с частотной %характеристикой фильтра H с %помощью функции обратного преобразования Фурье, %например:Z=ifft(X1.*H)или операции свертки массива входного %сигнала с импульсным откликом фильтра,например: Z = conv(x1,h)
%Частотная характеристика СОГЛАСОВАННОГО фильтра вычисляется "по %частотному %спектру сигнала" с помощью функции conj, например: %Kf=conj(F1).
%Здесь F1- частотный спектр сигнала,Kf-частотная характеристика фильтра,СОГЛАСОВАННОГО с этим сигналом. Обратите внимание, что %ФОРМА сигнала, полученного с выхода СОГЛАСОВАННОГО фильтра,
% отличается от формы ЛЧМ-сигнала
ts=1*10^(-2); %интервал времени
f0=9.5*10^3; %центральная частота
dfs=1*10^4; %девиация частоты
B=dfs*ts;
A0=1; %амплитуда
fn=f0-dfs/2; %нижняя частота
fv=f0+dfs/2; %верхняя частота
w0=2*pi*f0; %центральная угловая частота
wn=2*pi*fn; %нижняя угловая частота
fi0=0;
b0=2*pi*dfs/ts;
k=5; %количество точек за период максимальной частоты
dt=1/(k*(2*fv)); %шаг дискретности по времени
j=sqrt(-1);
N=round(ts/dt); %число отсчетов при заданном интервале времени и %шаге дискретности
N2=2^nextpow2(N); %вычисление ближайшего целого, %соответствующего 2^n (чтобы применять БПФ)
dt=ts/N2; %скорректированный шаг дискретности по времени
t=0:dt:dt*(N2-1);
s=A0*exp(-j*(wn*t+0.5*b0*t.^2+fi0));%моделирование первого ЛЧМ-сигнала
s1=A0*exp(-j*(wn*1.3*t+0.5*b0*1.1*t.^2+fi0));%моделирование второго ЛЧМ-сигнала
%коэффициент 1.1 у b0 вызывает расширение полосы частот
%коэффициент 1.3 у wn будет вызывать смещение центральной частоты
figure
plot(t,s);
title('Первый ЛЧМ-сигнал')
xlabel('Номер отсчета')
figure
plot(t,s1);
title('Второй ЛЧМ-сигнал')
xlabel('Номер отсчета')
F1=fft(s,N2) % ППФ (прямое преобразование Фурье) первого
% ЛЧМ сигнала, т.е. получение его частотного спектра
FR1=(1/N2)*abs(F1); % амплитудный спектр
figure
plot(abs(F1));
A0*sqrt(pi/2/b0)/dt*2
title('Част. спектр первого ЛЧМ-сигнала')
xlabel('Номер отсчета')
F2=fft(s1,N2) % ППФ (прямое преобразование Фурье) второго ЛЧМ сигнала,
%т.е. получение его частотного спектра
FR2=(1/N2)*abs(F2); % амплитудный спектр
figure
plot(abs(F2));
A0*sqrt(pi/2/b0)/dt*2
title('Част. спектр втрого ЛЧМ-сигнала')
xlabel('Номер отсчета')
%реализация согласованной фильтрации
%фильтр согласован с первым ЛЧМ сигналом
shum=100;
%F1=fft(s,N2); % ППФ первого ЛЧМ сигнала
Kf=conj(F1); % частотная функция передачи согласованного фильтра %по первому ЛЧМ-сигналу
i=1:N2
F1(i)=F1(i)+shum*rand(1); %зашумляем спектр первого сигнала
F2(i)=F2(i)+shum*rand(1); %зашумляем спектр второго сигнала
figure
plot(i,F1);
title('Зашумл. част. спектр ЛЧМ-сигнала')
xlabel('Номер отсчета')
Fv=F2.*Kf; % свертка спектра второго ЛЧМ-сигнала с частотной %характеристикой согласованного фильтра. Вычисление сигнала %после фильтра как ifft(Fv).
%fftshift и пр. - для наглядности результата и приведения к "правильной" амплитуде
Sv=real(fftshift(ifft((Fv)))); %Shift zero-frequency component to center of spectrum
Sv1=A0*sqrt(B)*Sv/max(Sv);% приведение к "правильной" амплитуде
Sv2=sqrt(B)*(1/N2)*(1/A0)*real(fftshift(ifft((Fv))));
% приведение к правильной амплитуде figure
plot(Sv2);
title('Спектр ЛЧМ после согласованного фильтра')
xlabel('Номер отсчета')
pause;
close all;
