phased.CFARDetector

Детектор постоянного ложного сигнального уровня (CFAR)

Описание

CFARDetector возразите реализует одномерный детектор постоянного ложно-сигнального уровня (CFAR). Обработка обнаружения выполняется на выбранных элементах (названный ячейками) входных данных. Обнаружение объявляется, когда значение ячейки изображений превышает порог. Чтобы обеспечить постоянный ложный сигнальный уровень, порог устанавливается к кратному степени шума изображения. Детектор оценивает шумовую степень для ячейки под тестом (CUT) от окружающих ячеек с помощью одного из трех методов усреднения ячейки или метода статистики порядка. Методы усреднения ячейки являются усреднением ячейки (CA), самым большим - ячейки, составляющей в среднем (GOCA), или самый маленький - ячейки, составляющей в среднем (SOCA).

Для получения дополнительной информации о детекторах CFAR, см. [1].

Для каждой тестовой ячейки, детектора:

  1. оценивает шумовую статистическую величину от значений ячеек в учебной полосе, окружающей ячейку CUT.

  2. вычисляет порог путем умножения шумовой оценки порогового фактора.

  3. сравнивает значение ячейки CUT с порогом, чтобы определить, присутствует ли цель или отсутствует. Если значение больше порога, цель присутствует.

Запускать детектор

  1. Задайте и настройте свой детектор CFAR. Смотрите Конструкцию.

  2. Вызовите step выполнять обнаружение CFAR согласно свойствам phased.CFARDetector. Поведение step характерно для каждого объекта в тулбоксе.

Примечание

Запуск в R2016b, вместо того, чтобы использовать step метод, чтобы выполнить операцию, заданную Системой object™, можно вызвать объект с аргументами, как будто это была функция. Например, y = step(obj,x) и y = obj(x) выполните эквивалентные операции.

Конструкция

H = phased.CFARDetector создает Системный объект детектора CFAR, H. Объект выполняет обнаружение CFAR на входных данных.

H = phased.CFARDetector(Name,Value) создает объект, H, с каждым заданным набором имени свойства к заданному значению. Можно задать дополнительные аргументы пары "имя-значение" в любом порядке как (Name1, Value1..., NameN, ValueN).

Свойства

Method

Алгоритм CFAR

Задайте алгоритм детектора CFAR как один из

'CA'Составляющий в среднем ячейку CFAR
'GOCA'Самый большой - составляющего в среднем ячейку CFAR
'OS'Закажите статистический CFAR
'SOCA'Самый маленький - составляющего в среднем ячейку CFAR

Значение по умолчанию: 'CA'

Rank

Ранг статистической величины порядка

Задайте ранг статистической величины порядка как положительный целочисленный скаляр. Значение должно быть меньше чем или равно значению NumTrainingCells свойство. Это свойство применяется только, когда вы устанавливаете Method свойство к 'OS'. Это свойство поддерживает одинарную и двойную точность,

Значение по умолчанию: 1

NumGuardCells

Количество защитных ячеек

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

Значение по умолчанию: 2, указание, что существует одна защитная ячейка в обоих передняя и задняя часть ячейки под тестом

NumTrainingCells

Количество учебных ячеек

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

Значение по умолчанию: 2, указание, что существует одна учебная ячейка в обоих передняя и задняя часть ячейки под тестом

ThresholdFactor

Методы получения порогового фактора

Задайте, прибывает ли пороговый фактор из автоматического вычисления, CustomThresholdFactor свойство этого объекта или входной параметр в step. Значения этого свойства:

'Auto'Приложение вычисляет пороговый фактор автоматически на основе желаемой вероятности ложного предупреждения, заданного в ProbabilityFalseAlarm свойство. Вычисление принимает, что каждый независимый сигнал во входе является одним импульсом, выходящим из квадратичного детектора без импульсного интегрирования. Вычисление также принимает, что шум белый Гауссов.
'Custom'CustomThresholdFactor свойство этого объекта задает пороговый фактор.
'Input port'Входной параметр в каждом вызове step задает пороговый фактор.

Значение по умолчанию: 'Auto'

ProbabilityFalseAlarm

Желаемая вероятность ложного предупреждения

Задайте желаемую вероятность ложного предупреждения как скаляр между 0 и 1 (не включительно). Это свойство применяется только, когда вы устанавливаете ThresholdFactor свойство к 'Auto'.

Значение по умолчанию: 0.1

CustomThresholdFactor

Пользовательский пороговый фактор

Задайте пользовательский пороговый фактор как положительную скалярную величину. Это свойство применяется только, когда вы устанавливаете ThresholdFactor свойство к 'Custom'. Это свойство является настраиваемым. Это свойство поддерживает одинарную и двойную точность,

Значение по умолчанию: 1

OutputFormat

Формат результатов обнаружения

Формат результатов обнаружения возвращен step метод, заданный как 'CUT result' или 'Detection index'.

  • Когда установлено в 'CUT result', результатами являются логические значения обнаружения (1 или 0) для каждой протестированной ячейки. 1 указывает, что значение протестированной ячейки превышает порог обнаружения.

  • Когда установлено в 'Detection index', результаты формируют вектор или матрицу, содержащую индексы протестированных ячеек, которые превышают порог обнаружения. Можно использовать этот формат в качестве входа к phased.RangeEstimator и phased.DopplerEstimator Системные объекты.

Значение по умолчанию: 'CUT result'

ThresholdOutputPort

Выведите порог обнаружения

Чтобы получить порог обнаружения, установите это свойство на true и используйте соответствующий выходной аргумент при вызове step. Если вы не хотите получать порог обнаружения, установите это свойство на false.

По умолчанию: false

NoisePowerOutputPort

Выведите оцененный шум

Чтобы получить предполагаемый шум, установите это свойство на true и используйте соответствующий выходной аргумент при вызове step. Если вы не хотите получать предполагаемый шум, установите это свойство на false.

По умолчанию: false

NumDetectionsSource

Источник количества обнаружений

Источник количества обнаружений, заданных как 'Auto' или 'Property'. Когда вы устанавливаете это свойство на 'Auto', количество индексов обнаружения, о которых сообщают, является общим количеством ячеек под тестом, которые имеют обнаружения. Если вы устанавливаете это свойство на 'Property', количество обнаружений, о которых сообщают, определяется значением NumDetections свойство.

Зависимости

Чтобы включить это свойство, установите OutputFormat свойство к 'Detection index'.

Значение по умолчанию: 'Auto'

NumDetections

Максимальное количество обнаружений, чтобы сообщить

Максимальное количество индексов обнаружения, чтобы сообщить, заданный как положительное целое число.

Зависимости

Чтобы включить это свойство, установите OutputFormat свойство к 'Detection index' и NumDetectionsSource свойство к 'Property'.

Значение по умолчанию: 1

Методы

шагВыполните обнаружение CFAR
Характерный для всех системных объектов
release

Позвольте изменения значения свойства Системного объекта

Примеры

развернуть все

Выполните составляющее в среднем ячейку обнаружение CFAR на данном Гауссовом шумовом векторе с желаемой вероятностью ложного предупреждения (PFA) 0,1. Примите, что данные прибывают из квадратичного детектора, и никакое импульсное интегрирование не выполняется. Используйте 50 ячеек, чтобы оценить, что уровень шума и 1 ячейка разделяют тестовую ячейку и учебные ячейки. Выполните обнаружение на всех ячейках входа.

detector = phased.CFARDetector('NumTrainingCells',50,...
    'NumGuardCells',2,'ProbabilityFalseAlarm',0.1);
N = 1000;
x = 1/sqrt(2)*(randn(N,1) + 1i*randn(N,1));
dets = detector(abs(x).^2,1:N);
pfa = sum(dets)/N
pfa = 0.1140

Выполните составляющее в среднем ячейку обнаружение CFAR на данном Гауссовом шумовом векторе с желаемой вероятностью ложного предупреждения (PFA) 0,005. Примите, что данные прибывают из квадратичного детектора, и никакое импульсное интегрирование не выполняется. Выполните обнаружение на всех ячейках входа. Используйте 50 ячеек, чтобы оценить, что уровень шума и 1 ячейка разделяют тестовую ячейку и учебные ячейки. Отобразите индексы обнаружения.

rng default;
detector = phased.CFARDetector('NumTrainingCells',50,'NumGuardCells',2, ...
    'ProbabilityFalseAlarm',0.005,'OutputFormat','Detection index');
N = 1000;
x1 = 1/sqrt(2)*(randn(N,1) + 1i*randn(N,1));
x2 = 1/sqrt(2)*(randn(N,1) + 1i*randn(N,1));
x = [x1,x2];
cutidx = 1:N;
dets = detector(abs(x).^2,cutidx)
dets = 2×11

   339   537   538   734   786   827   979   136   418   539   874
     1     1     1     1     1     1     1     2     2     2     2

Алгоритмы

развернуть все

Ссылки

[1] Ричардс, M. A. Основные принципы радарной обработки сигналов. Нью-Йорк: McGraw-Hill, 2005.

Расширенные возможности

Представленный в R2012a