SAR Calculator Help

Raster algebra on Sentinel-1
← All apps

SAR Calculator β€” overview

The Calculator lets you do raster math on Sentinel-1 imagery: pick scenes, give them short aliases (A, B, C…), then write expressions that combine them β€” ratios, differences, indices, speckle-filtered composites β€” and run them over your area of interest.

Typical workflow

  1. Area & dates: draw an AOI and set a date range.
  2. Available scenes: search and pick the acquisitions you need.
  3. Selected inputs: each chosen scene becomes an alias β€” A, B, C…
  4. Math library: build expressions from those aliases (e.g. A/B, (A-B)/(A+B)).
  5. Test, Run & Save: validate the expression, compute it, and download the result.

What it's for

Anything you can express as per-pixel arithmetic on backscatter: change ratios between two dates, polarisation ratios (VH/VV), normalised indices, or multi-date RGB composites β€” without writing a script or opening a notebook.

Tip: Start with two scenes aliased A and B and the expression A/B to see a simple change ratio, then build up from there.

Area & Date Range

Define where and when the calculation applies.

Drawing the area

ToolWhat it does
DRAW AOIDraw a rectangular area of interest.
RESIZE AOIAdjust the existing AOI.
MARK POINTDrop a single point.
DELETERemove the current AOI / point.

Setting the dates

Enter the from and to dates. The date range limits which acquisitions appear in Available scenes.

Note: The AOI also bounds the output raster, so keep it tight β€” the result size is limited and a large area over a long range can exceed those limits.

Size limits

The AOI is capped at 10 000 kmΒ², with a further limit of 2Β° per side. Drawing or resizing past either one clamps the rectangle around its centre and says so, rather than letting the API refuse the run later.

Above roughly 62Β°N the degree limit is the one that bites first, because a degree of longitude is short there β€” 100 km of longitude is 1.96Β° at 62Β°N but 2.37Β° at 65Β°N. The message names whichever limit applied.

A large AOI is legitimate; it is simply coarse. The result is always rasterised at 1500 px across the AOI, so see the m/px chip on the map after RUN, and use recompute this view to trade area for detail in either direction.

Available Scenes

After you set an area and date range, click SEARCH to list the Sentinel-1 acquisitions that cover it. CLEAN clears the list.

Filtering

Choosing inputs

Click a scene to select it as a calculation input. Each selected scene is assigned an alias in the Selected inputs panel β€” A for the first, B for the second, and so on β€” which you then reference in your expressions.

Tip: The order you select scenes sets their alias letters. Pick your "before" scene first (A) and "after" second (B) so A/B and B-A read naturally.

Selected Inputs (A, B, C…)

This panel lists the scenes you've chosen, each with the alias you use in expressions. The first selected scene is A, the second B, and so on.

How aliases work

Polarisation

If a scene has both VV and VH, the alias resolves to the polarisation band you selected. For polarisation math (e.g. VH/VV on the same date), select the same acquisition's two bands as separate inputs.

Tip: Keep the input list short and meaningful β€” two to four aliases covers most change-detection and index expressions.

Math Library

Click Ζ’ MATH LIBRARY to open the expression workbench. It has three tabs.

Build

The main tab β€” assemble your expression here.

Examples:

ExpressionMeaning
A/BBackscatter change ratio between two dates.
(A-B)/(A+B)Normalised difference between two dates.
VH/VVPolarisation ratio (select both bands as inputs).

Python

Shows the equivalent Python script for your expression, ready to copy into a notebook or pipeline β€” handy for reproducing the calculation outside the app.

Reference

The function documentation β€” the operators and functions you can use (arithmetic, ratios, common indices, speckle filters) with short descriptions.

Next

Once your expression is ready, use the footer actions β€” Test, Run & Save.

Test, Run & Save

The footer of the Math Library holds the actions that validate and execute your work.

ActionWhat it does
TESTValidates the expression syntax and checks the inputs resolve β€” fast, computes nothing. Fix any reported error first.
RUNComputes the expression over your AOI and draws the result as a map layer.
NEWStarts a fresh, empty expression.
SAVEDownloads the computed result (packaged as a ZIP).

Recommended order

  1. TEST β€” confirm the expression is valid.
  2. RUN β€” compute and inspect the result on the map.
  3. SAVE β€” export when you're happy with it.

Reading the result

Note: Outputs are size-limited by the AOI and date range. If RUN reports the result is too large, shrink the AOI or narrow the dates.

Contrast β€” why a result can look flat

The API renders each raster over mean Β± 2Οƒ of the computed float values. On real SAR algebra output that leaves the image dark and bunched: the histogram is strongly right-skewed, with a median around DN 35 of 255 and a long bright tail. Measured on a live run, the middle 50% of pixels occupied only 13–19% of the available tonal range.

A linear percentile clip does not help much, because the 2nd and 98th percentiles are already near the ends of the range β€” there is nothing to clip. What works is a non-linear map:

SettingWhat it doesMiddle 50% of pixels then occupy
Rawas rendered by the API β€” mean Β± 2Οƒ13–19%
Equalisemaps the histogram's CDF β€” equal pixel counts get equal tonal range~49%
2–98%linear clip of both tails20–27%
Ξ³ 0.5square-root map, lifts the dark end17–23%
Min–maxfull range, linearsame as Raw in practice

Equalise is the default for that reason. The stretch runs in the browser, so switching is instant and costs no recompute.

Hover a layer button to see the value interval on screen. For the linear settings this is a true interval; under Equalise the full range is shown with a note, since the mapping is non-linear and no single interval describes it. The pixel reader is never stretched β€” it always reports true computed values.

Resolution β€” why zooming the map does not add detail

A run is rasterised at AOI_side / 1500 pixels, never finer than the 10 m native pixel. So a small AOI comes back at full detail, while a wide one is coarser:

AOI acrossPixel size
0.15Β° (~17 km)10 m β€” native
0.25Β° (~28 km)~18 m
0.5Β° (~55 km)~37 m
1.0Β° (~110 km)~74 m

Pressing RUN again after zooming the map changes nothing: RUN uses the AOI, not the view. Only a smaller AOI rasterises finer.

Zooming the map only magnifies those pixels β€” the detail is not in the image to be found. A chip in the bottom-left corner of the map shows the current pixel size β€” green when you are at native resolution, amber when the raster is coarser than the data. The same figure appears under RUN, but that panel is hidden when the function window is closed, so the chip on the map is the one to watch while you zoom.

When you are not, zoom or pan to the area you care about and use recompute this view: it re-runs the same formulas over the visible extent, which the same 1500 px cap then rasterises across that extent.

Whatever layers you have switched on stay on across a recompute β€” inputs and results alike β€” so a zoom-and-recompute keeps the comparison you were looking at. A recompute never switches a layer off. If a formula has gained a result since the last run, that result is switched on as well. On a first run, when nothing is displayed yet, the last formula's result is shown.

It works in both directions. Zoom in and the pixels get finer; zoom out and you cover more ground at a coarser pixel β€” the button states the pixel size you would get and labels it finer or wider area, so the trade is explicit. It appears whenever the view differs from the current result, and reports the limit if the visible extent is larger than the 10 000 kmΒ² cap.

Layers & filters

The Layer Toggles panel controls the result rasters drawn on the map and the speckle filter applied to displayed scenes.

Layer toggles

Each formula you RUN adds a layer. Toggle layers on and off here to compare outputs against each other or against the input scenes.

Speckle filters

SAR imagery has inherent "speckle" β€” a grainy, salt-and-pepper texture. The filter buttons smooth it for display:

FilterCharacter
NoneShow the backend-stretched data as-is.
MedianSimple, robust smoothing; good default.
LeeEdge-preserving adaptive filter.
FrostAdaptive filter tuned for stronger speckle.

Tip: Filters are a display aid. For quantitative work, read values with None selected, then switch on a filter only to make patterns easier to see.