Keywords: radar, SAR, stripmap

Summary

This demo focuses on demonstrating an airborne stripmap mode SAR system acquisition over an array of 9 trihedral corner reflectors. The demo includes an overview of how to configure the the instrument and collection and a simple algorithm to focus the phase history output of the DIRSIG simulation into an "image".

Note
The SAR capabilities in DIRSIG4 are still considered experimental at this time.

Details

Important Files

This section highlights key files important to the simulation.

Scene

The scene consists of 9 corner reflector targets of various sizes. There are 3 targets that have the largest size and are identical, and 6 others that are randomly smaller. The target array is located at 0,0,0 in the Scene ENU coordinate system.

images/corners.png
Figure 1. The corner reflector target array OBJ file visualized in Meshlab

There is only a single material used in this simulation (ID #100). The description for this material employs the Null radiometry solver and the SarReflectivity optical property. The Null radiometry solver instructs DIRSIG to skip any of the standard EO/IR radiometry calculations. The SarReflectivity optical property was specifically created to model the reflectivity of materials for the RF wavelengths. Both of these radar simulation specific material attributes must be hand-crafted in the material file at this time:

MATERIAL_ENTRY {
    ID = 100
    NAME = Metal
    EDITOR_COLOR = 0.5, 0.5, 0.5

    RAD_SOLVER_NAME = Null
    RAD_SOLVER {
    }

    SURFACE_PROPERTIES {
        REFLECTANCE_PROP_NAME = SarReflectivity
        REFLECTANCE_PROP {
            N = 10.00
            K = 4.40
            SIGMA = 0.10
            RHOS = 1.00
            RHOD = 0.00
        }
    }
}

Platform

Because there is not a graphical user interface to edit the .platform file, the user must hand-edit these files. A reference of the SAR specific variables is outlined in the Radar Modality Handbook.

The parameters employed by the system in this demo are summarized in the tables below.

Table 1. Transmitter Properties
Parameter Value

Waveform carrier frequency:

15 GHz

Pulse repetition rate (PRF):

400 Hz

Pulse length:

10.0 microseconds

Chirp rate:

5.01287e13 Hz/s

Chirp bandwidth:

500 MHz

Table 2. Receiver Properties
Parameter Value

Analog mixing of reference waveform with received signal

On

A/D sampling rate

50 MHz

Table 3. Other Properties
Parameter Value

Coherent hit point resolution

0.8 meters

Diffuse reflectance

0.0

Specular reflectance

1.0

Sample packets per pulse

5000

Platform Motion

The platform motion is defined by the stripmap_200mps.ppd file, which describes a platform flying at 15 km at a velocity of 200 m/s and stares at the corner reflector array. At the point of closest approach, the platform looks at the array at a 45 degree angle in the across track direction. This .ppd file was created using the Spotlight Collection Wizard in the DIRSIG Platform Motion Editor.

Setup

This section includes any step-by-step instructions for running and visualizing the simulation. The preferred SAR simulation approach is the "two-pass simulation approach", where a transmit simulation is performed that shoots the radar pulses into the scene and then a receive simulation is performed to receive those pulses back.

Note
The user can run DIRSIG in a way to perform the transmit and receive calculations within a single simulation. However, that single simulation approach does not currently employ the coherence hit map approach that that the two-pass approach uses to dramatically improves the numerical noise.

The two-pass mode approach can be enabled at run time using either an .options file or via a command-line argument (the later is preferred from a simplicity standpoint).

Important
The user can also configure a two-pass approach simulation using the a special flag in the .platform file. However, this requires .platform files that are identical except for this flag. This also requires two .sim files which are identical except for which .platform file is used. This creates extra complexity and the potential for transmit and receive setups to become mismatched. Therefore, the command-line option approach is strongly encouraged.

Running the Transmit Simulation

The transmit simulation can be run using the following command-line syntax:

$ dirsig --option="radar.mode=transmit" demo.sim

The radar.mode option is what enables the two-pass mode. In this case, the option was assigned the transmit value to trigger the transmit mode calculations.

The primary output of the transmit simulation is the hit_nodes.dat file, which is a special file that records transmit energy packet hit points within the scene. These are then used in the receive simulation to compute coherent return intensities.

Running the Receive Simulation

The receive simulation can be run using the following command-line syntax:

$ dirsig --option="radar.mode=receive" demo.sim

The output of the receive simulation is a complex phase history that is written to the file demo.img. An ENVI header file is also created that can be used to directly visualize this phase history data.

Note
DIRSIG’s built-in image viewer cannot display complex image data at this time, so the phase history file must be visualized with ENVI.

Focusing the Phase History

The output phase history can be focused into an image using the Matlab routine included in this demo (see matlab/dirsig_focus.m). The algorithm is loosely based on the Spotlight SAR Matlab code originally written by Leroy Gorham and presented at SPIE
[LeRoy A. Gorham and Linda J. Moore, "SAR image formation toolbox for MATLAB", Proc. SPIE 7699, Algorithms for Synthetic Aperture Radar Imagery XVII, 769906 (April| 18, 2010)]
. The Matlab code has several key collection parameters hardcoded within it. The user may need to change these variables if they modify the simulation.

The algorithm needs to know the name of the DIRSIG output phase history file, the PPD file and the platform file:

cph_filename = 'demo.img';
ppd_filename = 'stripmap_200mps.ppd';
platform_filename = 'demo.platform';

The nsamples and npulses variables correspond to the range and azimuth dimensions of the phase history, respectively. The number of range samples is driven by the range gate configuration. The number of pulses is driven by the PRF and the duration of the collection task:

nsamples    = 3201;   % number of range samples in phase history
npulses     = 400;   % number of pulses in aperture

The dimensions of the phase history data for these Matlab variables can be found by looking at samples and lines variables in the demo.img.hdr file:

ENVI
description = {
    Generated by DIRSIG (Radar)}
samples = 3201
lines   = 400
bands   = 1
header offset = 76
file type = Other
data type = 9
interleave = bip
sensor type = Unknown
byte order = 0

The other key parameters for the Matlab focusing algorithm are the imagesize and gsd variables. The former defines the number of spatial bins that the data will be focused into (the output image file will be imagesize x imagesize). The gsd variable defines the spatial resolution of the bins in the focused image:

imagesize   = 400;   % spatial sample size in focused image
gsd         = 0.25;  % ground sample distance in meters

Running the main Matlab routine in the dirsig_focus.m file will progressively process the pulses against a matched filter for the chirp and then backproject the results into the defined spatial grid.

Results

The output of the receive simulation is the raw, complex phase history data in the file demo.img. A visualization of the magnitude of this complex phase history data is show below:

images/phase_history.png
Figure 2. The complex phase history (from Matlab focusing algorithm)

The Matlab focusing algorithm processes the complex phase history to construct the image of the corner targets. Because this is a stripmap collection with a wide beam, the same general region containing the corner reflector target array is progressively reconstructed by each pulse. This progressive focusing of the target array is shown in the animation below:

images/focus.gif
Figure 3. Animation of the image focusing