import xarray as xr
import matplotlib.pyplot as plt # noqa
import hvplot.xarray # noqa
import intake
from pathlib import Path
from functools import partial
from mrs.catalog import get_intake_urlTo successfully finish this notebook, you have to answer/solve the following three questions.
url = get_intake_url()
cat = intake.open_catalog(url)
ex3_dc = cat["ex3"].read().compute()
ex3_dchttps://git.geo.tuwien.ac.at/public_projects/microwave-remote-sensing/-/raw/dev-exs/microwave-remote-sensing.yml
<xarray.Dataset> Size: 58MB
Dimensions: (band: 1, y: 3801, x: 3801)
Coordinates:
* band (band) <U8 32B 'unknown1'
* y (y) float64 30kB 48.0 48.0 48.0 48.0 ... 47.5 47.5 47.5 47.5
* x (x) float64 30kB 11.1 11.1 11.1 11.1 ... 11.6 11.6 11.6 11.6
spatial_ref int64 8B 0
Data variables:
band_data (band, y, x) float32 58MB -21.68 -22.46 -25.52 ... -7.29 -8.99C.1 Question 1
Execute the lines below to create the plot. You now see a SAR image with unknown processing level. Based on what you see, which pre-processing steps have been applied to the image?
Select the answers you think are correct by editing the markdown text and putting an ‘x’ in the brackets. Note: One, several, or all answers are possible.
ex3_dc.hvplot.image(
x="x",
y="y",
robust=True,
data_aspect=1,
cmap="Greys_r",
groupby="band",
rasterize=True,
).opts(frame_height=600, framewise=False, aspect="equal")C.2 Question 2
Name all types of geometric image distortions in a SAR image. How are they caused, and how can we get rid of them?
Your answer here
C.3 Question 3
Use the figure below question 1 to identify areas that are affected by foreshortening and radar shadows. Use the mouseover to retrieve their x/y coordinates. Then use these coordinates to annotate the following matplotlib figure with labels by putting them in the lines indicated with # Your coordinates here.
zoom = ex3_dc.sel(x=slice(11.25, 11.5), y=slice(47.75, 47.5)).band_data
fig, ax = plt.subplots(figsize=(10, 8))
bbox = dict(boxstyle="round", fc="0.8")
ax.annotate(
"foreshortening",
xy=(..., ...), # Your foreshortening coordinates here
xytext=(0.3, 0.25),
textcoords="subfigure fraction",
bbox=bbox,
arrowprops=dict(facecolor="white", shrink=0.05),
)
ax.annotate(
"shadows",
xy=(..., ...), # Your radar shadow coordinates here
xytext=(0.47, 0.8),
textcoords="subfigure fraction",
bbox=bbox,
arrowprops=dict(facecolor="white", shrink=0.05),
)
zoom.sel(band="unknown1").plot(robust=True, cmap="Greys_r")