Engee documentation

CFAR Detector

A block of the CFAR receiver detection algorithm.

blockType: CFARDetector

Path in the library:

/Phased Array Systems/Detection/CFAR Detector

Description

Block CFAR Detector implements an algorithm for maintaining a constant false alarm probability level using noise power estimation.

The input signal sequence is divided into intervals (English cells — cells). The detection is recorded when the value of the signal cell under study (from eng. cell-under-test (CUT) — the tested cell exceeds the threshold value. To maintain a constant false alarm rate, the threshold is set to a multiple of the image noise power.

The detector evaluates the noise power from neighboring cells surrounding the cell under test (CUT) using one of three cell averaging methods or the Order statistics (OS) method.

The methods of cell averaging are:

  • Cell averaging (CA).

  • Averaging over the largest cell (GOCA).

  • Smallest cell Averaging (SOCA).

For each test cell, the detector:

  1. Evaluates noise statistics based on cell values in the learning band surrounding the CUT cell.

  2. Calculates the threshold by multiplying the noise estimate by the threshold factor.

  3. Compares the value of the CUT cell with a threshold value to determine the presence or absence of a target. If the value is greater than the threshold, then the goal is present.

Ports

Entrance

X — input signal
real column vector M by 1 | real matrix M by N

A matrix of cells defined as a real vector column M by 1 or a real matrix M by N.

The number of samples for the first dimension of the input matrix can be changed to simulate a change in the length of the signal. A change in size can occur, for example, in the case of a pulse waveform with a variable pulse repetition rate.

Data types: Float16, Float32, Float64, Int8, Int16, Int32, Int64, UInt8, UInt16, UInt32, UInt64, Bool

Idx — pass cells under test:q[<br>] a real vector of length D

The cells under test (CUT), specified as a real vector of length D. The indexes indicate the input elements or test cells on which detection processing is performed.

If the input signal on port X is a vector, Idx indicates the element. If the input signal on port X is a matrix, Idx indicates the element string. The same index is applied to all columns of the matrix. Detection is performed independently for each column Xww for the indexes specified in Idx.

Data types: Float16, Float32, Float64, Int8, Int16, Int32, Int64, UInt8, UInt16, UInt32, UInt64, Bool

K is the threshold coefficient of pass detection:q[<br>] positive scalar

The threshold coefficient used to calculate the detection threshold is set as a positive scalar value.

Dependencies

To use this port, set the Threshold factor method parameter to Input port.

Data types: Float16, Float32, Float64, Int8, Int16, Int32, Int64, UInt8, UInt16, UInt32, UInt64, Bool

Output

Y — pass detection results:q[<br>] vector D by 1 | matrix D by N | matrix 1 by L | matrix 2 by L

Detection results, the format of which depends on the Output Format property:

  • If the Output Format parameter is set to Cut result, then Y is a D—by-1 vector or a D-by-N matrix containing the logical detection results. D is the length Idx, and N is the number of columns X. The Y lines correspond to the Idx lines. For each row, Y contains a 1 in the column if there is a detection in the corresponding column X. Otherwise, Y contains 0.

  • If the Output Format parameter is set to Detection index, then Y is a 1—by-L vector or a 2-by-L matrix containing detection indexes. L is the number of detections found in the input data. If X is a column vector, Y contains the index of each detection in X. If X is a matrix, Y contains the row and column indexes of each detection in X. Each column Y has the format [detrow;detcol]. If the Source of number of detections parameter is set to Property, then L is equal to the value of the Maximum number of detections parameter. If the number of actual detections is less than this value, then the columns without detections are set to NaN.

Data types: Float16, Float32, Float64, Int8, Int16, Int32, Int64, UInt8, UInt16, UInt32, UInt64, Bool

Th — calculated threshold for pass detection:q[<br>] scalar

The detection threshold applied to the cells under test is returned as a scalar.

  • If the Output format parameter is set to CUT result, then Th returns the detection threshold if the Y element is 1 and NaN if the Y element is 0. The output Th has the same size as Y.

  • If the Output format parameter is set to Detection index, then Th returns the detection threshold for each corresponding detection in Y. If the Source of the number of detections parameter is set to Property, the number of detections is set by the Maximum number of detections parameter. If the number of actual detections is less than this value, the non-detections columns are set to NaN.

Dependencies

To use this port, select the Output Detection Threshold checkbox.

Data types: Float16, Float32, Float64, Int8, Int16, Int32, Int64, UInt8, UInt16, UInt32, UInt64, Bool

N is the noise power of
positive scalar

An estimate of the noise power for each detected test cell, returned as a positive scalar.

  • If the Output format parameter is set to CUT result', then N returns the noise power when Y is `1 and NaN if Y is 0. The output signal from port N has the same size as Y.

  • If the Output format parameter is set to Detection index, then N returns the noise power for each corresponding detection in Y. If the Source of the number of detections parameter is set to Property, then L is equal to the value of the Maximum number of detections parameter. If the number of actual detections is less than this value, then the columns without detections are set to NaN.

Dependencies

To use this port, select the Output estimated noise power checkbox.

Data types: Float16, Float32, Float64, Int8, Int16, Int32, Int64, UInt8, UInt16, UInt32, UInt64, Bool

Parameters

CFAR algorithm — pass noise power estimation algorithm:q[<br>] CA (default) | GOCA | SOCA | OS

The noise power estimation algorithm, specified as CA, GOCA, SOCA or `OS'.

  • CA — cell averaging.

  • 'GOCA' — averaging over the largest cell.

  • `SOCA' — averaging over the smallest cell.

  • `OS' — order statistics.

Number of guard cells — number of pass protection cells:q[<br>] 2 (default) | positive integer

Specify the number of safety cells used in training as an even integer. This parameter determines the total number of cells on both sides of the cell being tested.

Number of training cells — number of pass training cells:q[<br>] 2 (default) | positive integer

Specify the number of training cells used in training as an even integer. If possible, the training cells are divided equally before and after the test cell.

Rank of order statistical — rank of ordinal statistics
1 (default) | positive integer

Set the rank of the ordinal statistics used in the CFAR algorithm as a positive integer. The value of this parameter must be in the range from 1 to the value of the Number of training cells parameter.

Dependencies

To use this parameter, set the CFAR Algorithm parameter to OS.

Threshold factor method — a method for determining the threshold coefficient of
Auto (default) | Input port | Custom

The method for determining the threshold coefficient is set as Auto, Input port or `Custom'.

  • Auto — The application automatically calculates the threshold coefficient based on the desired probability of a false alarm specified in the Probability of false alarm parameter. The calculation assumes that each independent input signal is a single pulse coming from a detector with a quadratic order without pulse integration. The calculation also assumes that the noise is white Gaussian.

  • `Input port' — the threshold coefficient is set using the input port K.

  • Custom — the threshold factor is set using the Custom threshold factor parameter.

Probability of false alarm — probability of false alarm
0.1 (default)

The probability of a false alarm, set as a real scalar in the range from 0 to `1' (not inclusive).

Dependencies

To use this parameter, set the Threshold factor method parameter to Auto.

Custom threshold factor — configurable threshold pass factor:q[<br>] 1 (default)

Adjustable threshold coefficient, set as a positive scalar.

Dependencies

To use this parameter, set the Threshold factor method parameter to Custom.

Output format — the format of the detection results is
CUT result (default) | Detection index

The format of the detection results returned to the output port Y is set as CUT result or `Detection index'.

  • CUT result — The detection results represent the logical detection values (1 or 0) for each tested cell. 1 means that the value of the cell being checked exceeds the detection threshold.

  • Detection index — the results are a vector or matrix containing the indexes of the cells being tested that exceed the detection threshold.

Output threshold detection — output of the threshold coefficient
disabled (by default) | enabled

Select this option to enable the output of detection thresholds via the Th output port.

Output estimated noise power — output noise power
disabled (by default) | enabled

Select this option to enable the output of noise power through the output port N.

Source of the number of detections — the source of the number of detections for the pass report:q[<br>] Auto (default) | Property

The source of the number of detections is set as Auto or Property.

  • Auto — the number of registered detection indexes is equal to the total number of tested cells in which indexes are detected.

  • Property — the number of reported detections is determined by the value of the Maximum number of detections parameter.

Dependencies

To use this parameter, set the Output format parameter to `Detection index'.

Maximum number of detections — the maximum number of detection indexes at the output of
1 (default) | positive integer

The maximum number of detection indexes that must be obtained at the output is set as a positive integer.

Dependencies

To use this parameter, set the Output format parameter to Detection index and the Source of the number of detections parameter to Property.