Применение CFAR детектора в качестве фильтра

от автора

Введение.

При использовании АЦП, пользователь может столкнуться с такой проблемой как ошибка преобразования. Ошибки подобного рода возникают, когда компаратор в АЦП не успевает сравнить два напряжения и на выходе у него оказывается единица, вместо нуля или нуль, вместо единицы. Предположим, имеется некоторое АЦП. По документации АЦП способен работать на максимальной частоте f_{max} и на минимальной частоте f_{min}. При, относительно высоких частотах тактирования, близких к f_{max}, на записи шума, полученного с АЦП можно наблюдать наличие множественных выбросов. Выглядеть это будет как на рисунке 1.

Рис. 1: Оцифрованный шум при высокой частоте тактирования (одна квадратурная составляющая).

Рис. 1: Оцифрованный шум при высокой частоте тактирования (одна квадратурная составляющая).

Приблизив рисунок можно наблюдать одинокий выброс в потоке шума (рисунок 2).

Рис. 2:Приближенный одиночный выброс(одна квадратурная составляющая).

Рис. 2:Приближенный одиночный выброс(одна квадратурная составляющая).

Одиночный выброс в потоке шума — это, можно сказать, дельта функция, которая в частотной области будет образовывать шумовую полку во всей полосе, тем самым снижая чувствительность приёмного тракта (рисунок 3).

Рис. 3:Подъём шумовой полки в спектре.

Рис. 3:Подъём шумовой полки в спектре.

Классическая фильтрация по типу сглаживания: среднее арифметическое, медианный фильтр, бегущее среднее и т.д. может избавить от выбросов, однако придётся пожертвовать частотой дискретизации, чего хотелось бы избежать.

Возникает вопрос: как избавится от выбросов не снижая частоту дискретизации? Тут к нам на помощь приходит CFAR детектор.

CFAR детектор.

Изначально, CFAR — это адаптивный алгоритм, используемый в радиолокации для обнаружения цели в условиях шума, помех и интерференции сигналов. В радиолокации сигнал РЛС априорно известен, поэтому для обнаружения отраженных от целей сигналов применяют согласованную фильтрацию. В результате такой фильтрации сигнал как бы <<сжимается>>, повышается пик-фактор. Затем, с помощью CFAR детектора осуществляется обнаружение сигналов на фоне шумов. Важно, что алгоритм CFAR заточен под обнаружение сигналов конкретной длительности, равной длительности сигнала после <<сжатия>>. Схематично алгоритм CFAR представлен на рисунке 4.

Рис. 4:Схема CFAR детектора.

Рис. 4:Схема CFAR детектора.

По сути алгоритм сводится к тому, чтобы сравнить одну ячейку с другими и принять решение: обнаружен сигнал или не обнаружен. Более подробное описание алгоритма можно легко найти на просторах интернета, поэтому детально останавливаться на нём мы не будем.

Фильтрация выбросов.

Если применить алгоритм CFAR для детектирования выбросов в шумах, вызванных ошибками преобразования, то их можно будет отфильтровать, перезаписав значение отсчёта выброса средним значением с которым производилось сравнение в детекторе. При этом, сигналы, длительность которых отлична от одного отсчёта не будут детектироваться, а значит не будут отфильтрованы. На рисунке 5 представлен результат работы детектора при наличии выброса.

Рис. 5: Детектирование выброса.

Рис. 5: Детектирование выброса.

При этом, если отсчётов выше порога более одного, то порог просто огибает сигнал и детектирования не происходит (рисунок 6).

Рис. 6: Огибание полезного сигнала порогом обнаружения.

Рис. 6: Огибание полезного сигнала порогом обнаружения.

Теперь отфильтруем выбросы с помощью CFAR детектора. Для этого произведём детектирование выбросов и заменим отсчёты на средние. Результат фильтрации представлен на рисунке 7.

Рис. 7: Отфильтрованный сигнал (одна квадратурная составляющая).

Рис. 7: Отфильтрованный сигнал (одна квадратурная составляющая).

Сравнивая рисунки 1 и 7 видно, что фильтр прекрасно справляется с одиночными выбросами.

Таким образом, применение алгоритма фильтрации шумов преобразования на основе CFAR позволяет отфильтровать шумы преобразования с сохранением частоты дискретизации.


ссылка на оригинал статьи https://habr.com/ru/articles/837648/


Комментарии

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *