cfar_nms[source]

cfar_nms(cfar_in, beamformed_ra, nhood_size=1)

non-maxumim suppression for cfar detections

range_azimuth_ca_cfar[source]

range_azimuth_ca_cfar(beamformed_radar_cube, nms=True)

Cell-Averaging CFAR on beamformed radar signal

inputs:

  • beamformed_radar_cube
  • nms: default True whether to perform non-maximum suppression

range_azimuth_os_cfar[source]

range_azimuth_os_cfar(beamformed_datacube, k=4)

Ordered-statistics CFAR

beamformed_datacube: radar datacube k: which ordered statistic to use

Example Usage

Basic usage for Cell-Averaging CFAR

beamformed_range_azimuth = rf.compute_range_azimuth(raw_radar)
ca_cfar_detections = range_azimuth_ca_cfar(beamformed_range_azimuth)

plt.figure(figsize=(5, 8))
plt.imshow(np.log(np.abs(beamformed_range_azimuth)))
plt.scatter(np.where(ca_cfar_detections == 1)[1], np.where(ca_cfar_detections == 1)[0], marker='x', c='r')
plt.show()
os_cfar_detections = range_azimuth_os_cfar(beamformed_range_azimuth)

plt.figure(figsize=(5, 8))
plt.imshow(np.log(np.abs(beamformed_range_azimuth)))
plt.scatter(np.where(os_cfar_detections == 1)[1], np.where(os_cfar_detections == 1)[0], marker='x', c='r')
plt.show()