QuaSAR — slide 1
QuaSAR — slide 2
QuaSAR — slide 3
QuaSAR — slide 4
QuaSAR — slide 5
← whs31

QuaSAR

High-Performance Software Package for Synthetic Aperture Radar Imagery

Overview

QuaSAR is a software package for synthetic aperture radar (SAR) imaging that combines the strict typing and memory safety of the Rust language with the computing power of NVIDIA CUDA parallel architectures.

The main task of the QuaSAR software package is to transform raw signals (holograms) into detailed georeferenced images or video streams.

Features

Telescopic Imaging

In telescopic mode, the image is formed within the antenna beam pattern. This achieves maximum resolution, but the image coverage is limited to the surface area captured by the radar’s antenna beam.

Quasar telescopic

Strip Imaging

The image is formed continuously as the carrier moves (“stitched” together from strips). This mode provides wide coverage of the ground surface along the entire route while maintaining stable image quality.

Quasar strip

Autofocus

Due to navigation errors and turbulence, images formed using the nominal platform velocity may appear out of focus. QuaSAR implements entropy-minimization-based autofocus.

The algorithm iterates over several reference velocity options within a range of 60–140% of the navigation value. For each velocity value, a SAR image is formed in the vicinity of a pre-selected point reflector, and the entropy of the sector is then calculated. The entropy minimum corresponds to the best focus. The optimal velocity found is used when generating the final image.

Quasar autofocus comparison Quasar autofocus chart

Video Stream

Video mode is implemented as frame-by-frame synthesis of telescopic SAR images with temporal sampling: each frame is independently synthesized from a sliding time window of the hologram. The result is encoded into H.265/HEVC using FFmpeg, with configurable quality parameters (CRF 18–28) and a frame rate of up to 120 frames per second.

Frame generation and saving are parallelized using a two-thread pipeline with non-blocking crossbeam channels, eliminating thread idle time while waiting for disk writes.

Object Detection

The software package includes an object detection module based on the YOLO11 OBB neural network. Unlike standard detectors, the OBB model accounts for the rotation angle of objects, which is critically important for radar imagery.

The detection module automatically labels objects in the SAR image (e.g., equipment, vehicles, structures).

Quasar yolo

Architecture

The signal processing workflow is a multi-stage pipeline.

Key processing stages:

Supported Platforms

The software package is designed as a cross-platform solution with an emphasis on embedded systems and runs successfully on a wide range of devices.

NVIDIA Jetson Orin Family

The target platform of the package. The project is optimized for NVIDIA modules, delivering maximum performance per watt for field SAR data processing. Supported models include:

Features: full hardware acceleration support via NVIDIA CUDA (sm_87/compute_87 architecture) and the use of specialized codecs for video stream multiplexing.

Single Board Computers (SBCs)

Despite the lack of hardware acceleration on these platforms, the high efficiency of parallel CPU computing allows the software package to run on SBCs such as the Raspberry Pi 4/5.

Desktop

Platform Comparison

The comparison uses the formation time of a strip SAR image of a terrain area measuring 3,000 × 4,529 m.

PlatformModeExecution Time
Jetson Orin AGXGPU (CUDA)35.2 s
Jetson Orin NXGPU (CUDA)48.1 s
Jetson Orin NanoGPU (CUDA)48.3 s
PC (RTX 5070, AMD Ryzen 5 7600)GPU (CUDA)14.0 s
PC (RTX 5070, AMD Ryzen 5 7600)CPU (12 threads)39.8 s
Raspberry Pi 5CPU (4 threads)116.5 s

Stack

The project is written in Rust (Edition 2024). To achieve maximum performance in signal processing, CUDA 12 is used, integrated via C FFI.

Libraries Used

Signal Processing & Mathematical Computing
Concurrent Programming
OS APIs
Data Handling & Formats
Visualization & Analysis

For profiling and identifying bottlenecks, Tracy is used. Tracy profiler Cargo flamegraph