Radar and filters
Although
I've been working remotely, the door to the lab I work in on campus (which also
is home to my office) expressly labels the lab a radar lab. Yet, despite
that conspicuous label and all the exciting radar research going on around me,
I had extremely little acquaintance with radar data until my current project. One
component of that project is examining the time evolution of the 2014-2015 Holuhraun
volcanic eruption. Much of this eruption's activity occurred in the winter of
2014, during which the flow field was often shrouded in long arctic nights. Radar,
rather than visible imaging, is thus an excellent resource to examine this
period of activity. I am specifically using data from the Sentinel 1 satellites.
Coming
from a background in high-resolution visible imagery, especially the
High-Resolution Imaging Science Experiment (HiRISE) camera that orbits Mars, I
found the "static" in radar data to be particularly annoying. This phenomenon
is more precisely called speckle and is often thought of as noise, though
strictly, noise is usually understood to mean contamination of a signal whereas
speckle is part of the signal that arises due to surface roughness at
smaller scales than the radar wavelength (3.75-7.5 cm in this case).
A
variety of techniques have been developed to reduce speckle. These may be divided
into non-adaptive and adaptive filters. Non-adaptive filters use the same
weighting across an entire image whereas adaptive filters vary their weightings
based on local speckle level. The simplest filters calculate the mean or median
and are non-adaptive. They are especially poor at preserving edges. The Lee
filter is a commonly used traditional adaptive filter and (skipping much math)
minimizes the mean squared error relative to a linearized model. The result is
that homogeneous areas are aggressively smoothed whereas highly heterogenous
areas, such as edges, are unfiltered in order to preserve detail.
In
my particular case, I am mapping the evolving margins of the Holuhraun
flow field. Therefore, the non-adaptive filters blur my target whereas the Lee
filter introduces a somewhat jarring discrepancy between the smoothed interior
of the flow and its unfiltered margin. Moreover, after Lee filtering, the smoothed
interior looks something like a patchwork corduroy cloud (also seen in the mean
filter), which isn't realistic. Poking around a bit online, I found a general
use filter called a bilateral filter (though it has been used to despeckle
radar data as well). This filter calculates the weighted average of each neighborhood
of pixels, where the weighting depends on both the distance of the pixel and
the difference of the pixel (that is, how much brighter or darker the
pixel is than the reference pixel at the center). The result once again is that
homogeneous areas are despeckled and edges left unfiltered, but the filtering
is sufficiently consistent to avoid both the jarring "seam" at the margins and the
patchwork smoothing of the interior produced by the Lee filter. After some
experimenting, I found that the bilateral filter cued my eyes to subtle
differences that were there in the original data but not easily recognizable due
to the speckle.
There
is a caveat to using the filters I've described. Although they "clean up" the
data, they do so with neither knowledge nor direct modeling of the underlying
cause of the speckle, namely, roughness below the radar wavelength. The result
is an image that humans, and computers, can more easily interpret but, in
effect, that filtered image itself is an interpretation. By comparison, a state-of-the-art
algorithm developed by Antoine Lucas takes a step toward considering fine-scale
roughness, albeit implicitly. This algorithm models the probability that two
adjacent neighborhoods of pixels each have the same "true" (speckle-less)
value. By combining many such estimations, speckle can be significantly
reduced. Antoine developed this algorithm specifically to facilitate
interpretation of radar images of Saturn's moon Titan captured by the Cassini
spacecraft. The results (example below) are very impressive!