2D CFAR
Understanding 2D-CFAR Radar Processing
When a radar transmits a pulse, the return signal contains echoes from targets (aircraft, vehicles) mixed with clutter (ground, sea, weather). A fixed detection threshold fails because clutter power varies dramatically across the radar scene. CFAR solves this by computing the threshold locally for each resolution cell, using the surrounding cells as a noise estimate.
Standard 1D CFAR processes along the range dimension only. This works for simple scenarios but fails when clutter varies in both range and Doppler. A forest at 5 km creates strong clutter at zero Doppler, while rain at 10 km creates clutter spread across multiple Doppler bins. 2D CFAR processes the full Range-Doppler map, using a rectangular or cross-shaped window of training cells surrounding each CUT in both dimensions, adapting to clutter gradients in range, velocity, or both simultaneously.
Z = (1/N) × Σi=1..N xi
Detection threshold:
T = α × Z
Scaling factor for desired Pfa:
α = N × (Pfa−1/N − 1)
Example: N=16 training cells, Pfa=10−6: α ≈ 4.68 (linear)
2D extension: N = Nrange × NDoppler − guard cells
CFAR Variant Comparison
| Variant | Noise Estimate | Masking Resistance | Complexity | Best For |
|---|---|---|---|---|
| CA-CFAR | Mean of all cells | Poor | O(N) | Homogeneous clutter |
| GO-CFAR | Greater-of two halves | Moderate | O(N) | Clutter edges |
| SO-CFAR | Smaller-of two halves | Poor | O(N) | Low Pfa at edges |
| OS-CFAR | k-th ordered value | Excellent | O(N log N) | Multi-target scenarios |
Frequently Asked Questions
What is Cell-Averaging CFAR (CA-CFAR)?
CA-CFAR computes the arithmetic mean of all training cells surrounding the CUT to estimate the local noise floor, then multiplies by a scaling factor α to set the threshold. While computationally efficient at O(N) per cell, CA-CFAR suffers from target masking: if a second strong target falls within the training window, it inflates the noise estimate, potentially hiding nearby weaker targets.
How does OS-CFAR fix the masking problem?
OS-CFAR sorts all training cell values and selects the k-th ordered value as the noise estimate (typically k = 3N/4). By using a rank-order statistic rather than an average, interfering targets that produce outlier values are ignored. The trade-off is computational cost: sorting requires O(N log N) per cell, demanding significantly more DSP throughput.
Is 2D CFAR used in self-driving cars?
Yes. Every 77 GHz FMCW radar in modern ADAS systems runs 2D CFAR on the Range-Doppler map after 2D FFT processing. Some extend to 3D CFAR incorporating elevation. The silicon-hardcoded CFAR processor filters guardrails (high range, zero Doppler), rain clutter, and road reflections, extracting only genuine objects for the perception pipeline.