Skip to contents

This function processes a set of MUSIC projection data to extract Direction of Arrival (DOA) solutions for radar signals. It implements the approach described in Paolo and Terril (2007) for HF radar analysis by first reversing the projection distances to enhance peak visibility, then detecting peaks for both single and dual solution cases. Finally, it maps the detected peak locations back to bearing values.

Usage

seasonder_MUSICExtractDOASolutions(
  projections,
  valid_bearings,
  seasonder_apm_obj
)

Arguments

projections

A numeric matrix of projection data where each column represents a set of MUSIC spectra for single and dual solutions. The matrix must have an attribute named "bearings" that contains the corresponding bearing angles (in degrees) for each column.

valid_bearings

A numeric vector of valid bearing values (in degrees) that are acceptable. Detected bearing peaks falling outside this set will be disregarded.

seasonder_apm_obj

A matrix or similar object representing the Antenna Pattern Matrix (APM). The columns of seasonder_apm_obj correspond to bearings and are used to extract antenna response information for the detected peaks.

Value

A list with two components corresponding to single and dual DOA solutions. Each component is a list containing:

  • bearing: The detected bearing(s) for the solution (in degrees).

  • a: A subset of the APM data (columns) corresponding to the detected peak.

  • peak_resp: The peak response value(s) at the detected peak(s), expressed in dB.

  • peak_width: The width of the peak(s) calculated from the 3 dB limit, in degrees.

Details

The function proceeds as follows:

  1. It retrieves the bearing angles from the attribute "bearings" of the projections matrix.

  2. It computes the inverse of the absolute projection values for both 'single' and 'dual' solution modes to enhance peaks.

  3. For single solutions, it detects the highest peak using findpeaks, then checks if the corresponding bearing is within the set of valid bearings.

  4. If a valid single peak is found, it calculates the response in dB and determines the peak width by finding the indices where the response exceeds the (peak response - 3 dB) threshold.

  5. For dual solutions, it similarly detects up to two peaks, filters them by valid bearings, and computes the response and peak width for each.

  6. Finally, the function populates and returns a DOA solutions structure containing both single and dual solution fields.

References

Paolo, S., & Terril, E. (2007). Detection and characterization of signals in HF radar cross-spectra using the MUSIC algorithm. Journal of Atmospheric and Oceanic Technology.