<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE article PUBLIC "-//NLM//DTD Journal Publishing with OASIS Tables v3.0 20080202//EN" "journalpub-oasis3.dtd">
<article xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:oasis="http://docs.oasis-open.org/ns/oasis-exchange/table" xml:lang="en" dtd-version="3.0"><?xmltex \makeatother\@nolinetrue\makeatletter?>
  <front>
    <journal-meta><journal-id journal-id-type="publisher">GMD</journal-id><journal-title-group>
    <journal-title>Geoscientific Model Development</journal-title>
    <abbrev-journal-title abbrev-type="publisher">GMD</abbrev-journal-title><abbrev-journal-title abbrev-type="nlm-ta">Geosci. Model Dev.</abbrev-journal-title>
  </journal-title-group><issn pub-type="epub">1991-9603</issn><publisher>
    <publisher-name>Copernicus Publications</publisher-name>
    <publisher-loc>Göttingen, Germany</publisher-loc>
  </publisher></journal-meta>
    <article-meta>
      <article-id pub-id-type="doi">10.5194/gmd-12-1387-2019</article-id><title-group><article-title><?xmltex \hack{\vspace{1.5mm}}?>Optical flow models as an open benchmark for radar-based precipitation nowcasting (rainymotion v0.1)</article-title><alt-title>Optical flow models for precipitation nowcasting</alt-title>
      </title-group><?xmltex \runningtitle{Optical flow models for precipitation nowcasting}?><?xmltex \runningauthor{G.~Ayzel et al.}?>
      <contrib-group>
        <contrib contrib-type="author" corresp="yes" rid="aff1">
          <name><surname>Ayzel</surname><given-names>Georgy</given-names></name>
          <email>ayzel@uni-potsdam.de</email>
        <ext-link>https://orcid.org/0000-0001-5608-9110</ext-link></contrib>
        <contrib contrib-type="author" corresp="no" rid="aff1">
          <name><surname>Heistermann</surname><given-names>Maik</given-names></name>
          
        </contrib>
        <contrib contrib-type="author" corresp="no" rid="aff2">
          <name><surname>Winterrath</surname><given-names>Tanja</given-names></name>
          
        </contrib>
        <aff id="aff1"><label>1</label><institution>Institute for Environmental Sciences and Geography, University of Potsdam, Potsdam, Germany</institution>
        </aff>
        <aff id="aff2"><label>2</label><institution>Department of Hydrometeorology, Deutscher Wetterdienst, Offenbach, Germany</institution>
        </aff>
      </contrib-group>
      <author-notes><corresp id="corr1">Georgy Ayzel (ayzel@uni-potsdam.de)</corresp></author-notes><pub-date><day>9</day><month>April</month><year>2019</year></pub-date>
      
      <volume>12</volume>
      <issue>4</issue>
      <fpage>1387</fpage><lpage>1402</lpage>
      <history>
        <date date-type="received"><day>6</day><month>July</month><year>2018</year></date>
           <date date-type="rev-request"><day>10</day><month>September</month><year>2018</year></date>
           <date date-type="rev-recd"><day>21</day><month>March</month><year>2019</year></date>
           <date date-type="accepted"><day>21</day><month>March</month><year>2019</year></date>
      </history>
      <permissions>
        <copyright-statement>Copyright: © 2019 Georgy Ayzel et al.</copyright-statement>
        <copyright-year>2019</copyright-year>
      <license license-type="open-access"><license-p>This work is licensed under the Creative Commons Attribution 4.0 International License. To view a copy of this licence, visit <ext-link ext-link-type="uri" xlink:href="https://creativecommons.org/licenses/by/4.0/">https://creativecommons.org/licenses/by/4.0/</ext-link></license-p></license></permissions><self-uri xlink:href="https://gmd.copernicus.org/articles/12/1387/2019/gmd-12-1387-2019.html">This article is available from https://gmd.copernicus.org/articles/12/1387/2019/gmd-12-1387-2019.html</self-uri><self-uri xlink:href="https://gmd.copernicus.org/articles/12/1387/2019/gmd-12-1387-2019.pdf">The full text article is available as a PDF file from https://gmd.copernicus.org/articles/12/1387/2019/gmd-12-1387-2019.pdf</self-uri>
      <abstract><title>Abstract</title>
    <p id="d1e105">Quantitative precipitation nowcasting (QPN) has become an
essential technique in various application contexts, such as early warning or
urban sewage control. A common heuristic prediction approach is to track the
motion of precipitation features from a sequence of weather radar images and
then to displace the precipitation field to the imminent future (minutes to
hours) based on that motion, assuming that the intensity of the features
remains constant (“Lagrangian persistence”). In that context, “optical
flow” has become one of the most popular tracking techniques. Yet the
present landscape of computational QPN models still struggles with producing
open software implementations. Focusing on this gap, we have developed and
extensively benchmarked a stack of models based on different optical flow
algorithms for the tracking step and a set of parsimonious extrapolation
procedures based on image warping and advection. We demonstrate that these
models provide skillful predictions comparable with or even superior to
state-of-the-art operational software. Our software library (“rainymotion”)
for precipitation nowcasting is written in the Python programming language
and openly available at GitHub (<uri>https://github.com/hydrogo/rainymotion</uri>,
<xref ref-type="bibr" rid="bib1.bibx3" id="altparen.1"/>). That way,
the library may serve as a tool for providing fast, free, and transparent
solutions that could serve as a benchmark for further model development and
hypothesis testing – a benchmark that is far more advanced than the
conventional benchmark of Eulerian persistence commonly used in QPN
verification experiments.</p>
  </abstract>
    </article-meta>
  </front>
<body>
      

      <?xmltex \hack{\newpage}?>
<sec id="Ch1.S1" sec-type="intro">
  <label>1</label><title>Introduction</title>
      <p id="d1e125">How much will it rain within the next hour? The term
“quantitative precipitation nowcasting” refers to forecasts at high
spatiotemporal resolution (60–600 s, 100–1000 m) and short lead times of
only a few hours. Nowcasts have become important for broad levels of the
population for planning various kinds of activities. Yet they are
particularly relevant in the context of early warning of heavy convective
rainfall events and their corresponding impacts such as flash floods,
landslides, or sewage overflow in urban areas.</p>
      <p id="d1e128">While recent advances in numerical weather prediction (NWP) allow us to
forecast atmospheric dynamics at a very high resolution <xref ref-type="bibr" rid="bib1.bibx4" id="paren.2"/>,
computational costs are typically prohibitive for the requirements of
operational nowcasting applications with frequent update cycles. Furthermore,
the heuristic extrapolation of rain field motion and development, as observed
by weather radar, still appears to outperform NWP forecasts at very short
lead times <xref ref-type="bibr" rid="bib1.bibx7 bib1.bibx25 bib1.bibx28" id="paren.3"/>. Today, many
precipitation nowcasting systems are operational at regional or national
scales, utilizing various radar products, algorithms, and blending techniques
in order to provide forecasts up to 1–3 h, for example: ANC
<xref ref-type="bibr" rid="bib1.bibx32" id="paren.4"/>, MAPLE <xref ref-type="bibr" rid="bib1.bibx17" id="paren.5"/>, RADVOR
<xref ref-type="bibr" rid="bib1.bibx45" id="paren.6"/>, STEPS <xref ref-type="bibr" rid="bib1.bibx9" id="paren.7"/>, STEPS-BE
<xref ref-type="bibr" rid="bib1.bibx16" id="paren.8"/>, and SWIRLS <xref ref-type="bibr" rid="bib1.bibx14 bib1.bibx48" id="paren.9"/>. For an extensive
review of existing operational systems, please refer to <xref ref-type="bibr" rid="bib1.bibx35" id="text.10"/>.</p>
      <?pagebreak page1388?><p id="d1e159">A variety of radar-based precipitation nowcasting techniques can be
classified into three major groups based on assumptions we make regarding
precipitation field characteristics <xref ref-type="bibr" rid="bib1.bibx17" id="paren.11"/>. The first
group – climatological persistence – provides nowcasts by using
climatological values (mean or median). The second group – Eulerian
persistence – is based on using the latest available observation as a
prediction, and is thus independent of the forecast lead time. The third
group – Lagrangian persistence – allows the extrapolation of the most
recent observed precipitation field under the assumption that the intensity of
precipitation features and the motion field are persistent
<xref ref-type="bibr" rid="bib1.bibx17 bib1.bibx48" id="paren.12"/>. In addition, we can classify nowcasting
methods based on how predictive uncertainty is accounted for: in contrast to
deterministic approaches, ensemble nowcasts attempt to account for predictive
uncertainty by including different realizations of the motion field and the
evolution of rainfall intensity itself <xref ref-type="bibr" rid="bib1.bibx6" id="paren.13"/>. In this study,
we focus our model development around the group of Lagrangian persistence
models which provide deterministic precipitation nowcasts.</p>
      <p id="d1e171">Lagrangian methods consist of two computational steps: tracking and
forecasting (extrapolation) <xref ref-type="bibr" rid="bib1.bibx1" id="paren.14"/>. In the tracking step, we
compute a velocity field from a series of consecutive radar images, either on
a per pixel basis <xref ref-type="bibr" rid="bib1.bibx17 bib1.bibx19 bib1.bibx29 bib1.bibx51" id="paren.15"/>
or for contiguous objects <xref ref-type="bibr" rid="bib1.bibx52" id="paren.16"/>. In the second step, we use
that velocity field to advect the most recent rain field, i.e., to displace it
to the imminent future based on its observed motion. That step has been
implemented based on semi-Lagrangian schemes <xref ref-type="bibr" rid="bib1.bibx17" id="paren.17"/>,
interpolation procedures <xref ref-type="bibr" rid="bib1.bibx29" id="paren.18"/>, or mesh-based models
<xref ref-type="bibr" rid="bib1.bibx5 bib1.bibx51" id="paren.19"/>. Different algorithms can be used for each
step – tracking and forecasting – in order to compute an ensemble forecast
<xref ref-type="bibr" rid="bib1.bibx6 bib1.bibx16 bib1.bibx19" id="paren.20"/>.</p>
      <p id="d1e197">One of the most prominent techniques for the tracking step is referred to as
“optical flow”. The original term was inspired by the idea of an
<italic>apparent</italic> motion of brightness patterns observed when a camera or the
eyeball is moving relative to the objects <xref ref-type="bibr" rid="bib1.bibx23" id="paren.21"/>. Today, optical
flow is often understood as a group of techniques to infer motion patterns or
velocity fields from consecutive image frames, e.g., in the field of
precipitation nowcasting <xref ref-type="bibr" rid="bib1.bibx8 bib1.bibx29 bib1.bibx48" id="paren.22"/>. For the
velocity field estimation, we need to accept both the brightness constancy
assumption and one of a set of additional optical flow constraints (OFCs). The
spatial attribution of OFC marks the two main categories of optical flow
models: local (differential) and global (variational)
<xref ref-type="bibr" rid="bib1.bibx14 bib1.bibx29" id="paren.23"/>. Local models try to set an OFC only in some
neighborhood, while global models apply an OFC for a whole image. There is
also a distinct group of spectral methods where the Fourier transform is
applied to the inputs and an OFC is resolved in the spectral (Fourier)
domain <xref ref-type="bibr" rid="bib1.bibx36" id="paren.24"/>. <xref ref-type="bibr" rid="bib1.bibx8" id="text.25"/> introduced the first local
optical flow algorithm for precipitation nowcasting, and this gave rise to a new
direction of models. Bowler's algorithm is the basis of the STEPS
<xref ref-type="bibr" rid="bib1.bibx9" id="paren.26"/> and STEPS-BE <xref ref-type="bibr" rid="bib1.bibx16" id="paren.27"/> operational nowcasting
systems. <xref ref-type="bibr" rid="bib1.bibx29" id="text.28"/> proposed using a local Lucas–Kanade optical flow
method <xref ref-type="bibr" rid="bib1.bibx30" id="paren.29"/> independently for each pixel of satellite imagery
because they found it outperformed a global Horn–Schunck <xref ref-type="bibr" rid="bib1.bibx23" id="paren.30"/>
optical flow algorithm in the context of precipitation nowcasting from
infrared satellite images. <xref ref-type="bibr" rid="bib1.bibx50" id="text.31"/>, <xref ref-type="bibr" rid="bib1.bibx14" id="text.32"/>, and
<xref ref-type="bibr" rid="bib1.bibx48" id="text.33"/> used different global optical flow algorithms
<xref ref-type="bibr" rid="bib1.bibx12 bib1.bibx47" id="paren.34"/> for establishing the SWIRLS product for
operational nowcasting in Hong Kong.</p>
      <p id="d1e247">Hence, for around two decades, optical flow algorithms have been doing their
best for state-of-the-art operational nowcasting systems around the globe.
Should research still care about them? It should, and the reason is
that – despite the abundance of publications about different types of
optical flow techniques for nowcasting applications – an open and
transparent benchmark model is yet not available, except for the most trivial
one: Eulerian persistence.</p>
      <p id="d1e250">That is all the more surprising since open-source implementations of
fundamental optical flow algorithms <xref ref-type="bibr" rid="bib1.bibx11 bib1.bibx13" id="paren.35"/>
have been around for up to 20 years – with the OpenCV library
(<uri>https://opencv.org</uri>, last access: 28 March 2019) just being the most
widely known. Such libraries provide efficient implementations of various
optical flow algorithms for a vast number of research and application
contexts. Yet none can be applied in the QPN context out of the box –
without the need to address additional and specific challenges such as
underlying assumptions and constraints of velocity fields, pre- and
post-processing steps, or model parameterization and verification.</p>
      <p id="d1e259">The aim of this paper is thus to establish a set of benchmark procedures for
quantitative precipitation nowcasting as an alternative to the trivial case
of Eulerian persistence. This study does not aim to improve the standard of
precipitation nowcasting beyond the state of the art, but to provide an open,
transparent, reproducible, and easy-to-use approach that can compete with the
state of the art, and against which future advances can be measured. To that
end, we developed a group of models that are based on two optical flow
formulations of algorithms for the tracking step – Sparse <xref ref-type="bibr" rid="bib1.bibx30" id="paren.36"/>
and Dense <xref ref-type="bibr" rid="bib1.bibx27" id="paren.37"/> – together with two parsimonious extrapolation
techniques based on image warping and spatial interpolation. These models are
verified against Eulerian persistence, as a trivial benchmark, and against
the operational nowcasting system of the Deutscher Wetterdienst (the German
Weather Service, DWD), as a representative of state-of-the-art models. The
different optical flow implementations are published as an open-source Python
library (rainymotion, <xref ref-type="bibr" rid="bib1.bibx3" id="altparen.38"/>) that entirely relies on free
and<?pagebreak page1389?> open-source dependencies, including detailed documentation and example
workflows (<uri>https://rainymotion.readthedocs.io</uri>, last access: 28 March
2019).</p>
      <p id="d1e274">The paper is organized as follows. In Sect. 2, we describe the algorithmic
and technical aspects of the suggested optical flow models. Section 3
describes the data we used and provides a short synopsis of events we used
for the benchmark experiment. We report the results in Section 4 and discuss
them in various contexts in Sect. 5. Section 6 provides a summary and
conclusions.</p>
</sec>
<sec id="Ch1.S2">
  <label>2</label><title>Description of the models and the library</title>
      <p id="d1e285">The benchmark models developed in this study consist of different
combinations of algorithms for the two major steps of Lagrangian nowcasting
frameworks, namely tracking and extrapolation <xref ref-type="bibr" rid="bib1.bibx1" id="paren.39"/>.
Table <xref ref-type="table" rid="Ch1.T1"/> provides an overview of the models. The values of model
parameters adopted in the benchmark experiment have been heuristically
determined and not yet been subject to systematic optimization. However, the
rainymotion library provides an opportunity to investigate how different
optical flow model parameters can affect nowcasting results or how they can
be tuned to represent, e.g., the typical range of advection speeds of real
precipitation fields. For a description of parameters, please refer to
Sect. S1 in the Supplement or the rainymotion library documentation
(<uri>https://rainymotion.readthedocs.io/</uri>, last access: 28 March 2019).</p>

<?xmltex \floatpos{t}?><table-wrap id="Ch1.T1" specific-use="star"><?xmltex \currentcnt{1}?><label>Table 1</label><caption><p id="d1e299">Overview of the nowcasting models developed and their computational
performance. Nowcasting experiments were carried out for 1 h lead time at a
5 min temporal resolution (12 resulting nowcast frames in total) using the
RY radar data (spatial resolution of 1 km, grid size <inline-formula><mml:math id="M1" display="inline"><mml:mrow><mml:mn mathvariant="normal">900</mml:mn><mml:mo>×</mml:mo><mml:mn mathvariant="normal">900</mml:mn></mml:mrow></mml:math></inline-formula>) and a
standard office PC with an Intel<sup>®</sup>
Core<sup>™</sup> i7-2600 CPU (eight cores,
3.4 GHz).</p></caption><oasis:table frame="topbot"><oasis:tgroup cols="5">
     <oasis:colspec colnum="1" colname="col1" align="left"/>
     <oasis:colspec colnum="2" colname="col2" align="right"/>
     <oasis:colspec colnum="3" colname="col3" align="left"/>
     <oasis:colspec colnum="4" colname="col4" align="left"/>
     <oasis:colspec colnum="5" colname="col5" align="center"/>
     <oasis:thead>
       <oasis:row>
         <oasis:entry colname="col1">Model name</oasis:entry>
         <oasis:entry colname="col2">Input radar</oasis:entry>
         <oasis:entry colname="col3">Default tracking algorithm</oasis:entry>
         <oasis:entry colname="col4">Extrapolation</oasis:entry>
         <oasis:entry colname="col5">Computational time</oasis:entry>
       </oasis:row>
       <oasis:row rowsep="1">
         <oasis:entry colname="col1"/>
         <oasis:entry colname="col2">images</oasis:entry>
         <oasis:entry colname="col3"/>
         <oasis:entry colname="col4"/>
         <oasis:entry colname="col5">(tracking/extrapolation/total), s</oasis:entry>
       </oasis:row>
     </oasis:thead>
     <oasis:tbody>
       <oasis:row>
         <oasis:entry colname="col1">SparseSD</oasis:entry>
         <oasis:entry colname="col2">2</oasis:entry>
         <oasis:entry colname="col3">Shi–Tomasi corner detector,</oasis:entry>
         <oasis:entry colname="col4">Constant delta-change,</oasis:entry>
         <oasis:entry colname="col5"><inline-formula><mml:math id="M2" display="inline"><mml:mrow><mml:mn mathvariant="normal">0.2</mml:mn><mml:mo>/</mml:mo><mml:mn mathvariant="normal">1.1</mml:mn><mml:mo>/</mml:mo><mml:mn mathvariant="normal">1.3</mml:mn></mml:mrow></mml:math></inline-formula></oasis:entry>
       </oasis:row>
       <oasis:row rowsep="1">
         <oasis:entry colname="col1"/>
         <oasis:entry colname="col2"/>
         <oasis:entry colname="col3">Lucas–Kanade optical flow</oasis:entry>
         <oasis:entry colname="col4">affine warping</oasis:entry>
         <oasis:entry colname="col5"/>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">Sparse</oasis:entry>
         <oasis:entry colname="col2">3–24</oasis:entry>
         <oasis:entry colname="col3">Shi–Tomasi corner detector,</oasis:entry>
         <oasis:entry colname="col4">Linear regression,</oasis:entry>
         <oasis:entry colname="col5"><inline-formula><mml:math id="M3" display="inline"><mml:mrow><mml:mn mathvariant="normal">0.1</mml:mn><mml:mo>/</mml:mo><mml:mn mathvariant="normal">1.1</mml:mn><mml:mo>/</mml:mo><mml:mn mathvariant="normal">1.2</mml:mn></mml:mrow></mml:math></inline-formula></oasis:entry>
       </oasis:row>
       <oasis:row rowsep="1">
         <oasis:entry colname="col1"/>
         <oasis:entry colname="col2"/>
         <oasis:entry colname="col3">Lucas–Kanade optical flow</oasis:entry>
         <oasis:entry colname="col4">affine warping</oasis:entry>
         <oasis:entry colname="col5"/>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">Dense</oasis:entry>
         <oasis:entry colname="col2">2</oasis:entry>
         <oasis:entry colname="col3">DIS optical flow</oasis:entry>
         <oasis:entry colname="col4">Backward constant-vector</oasis:entry>
         <oasis:entry colname="col5"><inline-formula><mml:math id="M4" display="inline"><mml:mrow><mml:mn mathvariant="normal">0.2</mml:mn><mml:mo>/</mml:mo><mml:mn mathvariant="normal">5.5</mml:mn><mml:mo>/</mml:mo><mml:mn mathvariant="normal">5.7</mml:mn></mml:mrow></mml:math></inline-formula></oasis:entry>
       </oasis:row>
       <oasis:row rowsep="1">
         <oasis:entry colname="col1"/>
         <oasis:entry colname="col2"/>
         <oasis:entry colname="col3"/>
         <oasis:entry colname="col4">advection scheme</oasis:entry>
         <oasis:entry colname="col5"/>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">DenseRotation</oasis:entry>
         <oasis:entry colname="col2">2</oasis:entry>
         <oasis:entry colname="col3">DIS optical flow</oasis:entry>
         <oasis:entry colname="col4">Backward semi-Lagrangian</oasis:entry>
         <oasis:entry colname="col5"><inline-formula><mml:math id="M5" display="inline"><mml:mrow><mml:mn mathvariant="normal">3.2</mml:mn><mml:mo>/</mml:mo><mml:mn mathvariant="normal">5.7</mml:mn><mml:mo>/</mml:mo><mml:mn mathvariant="normal">8.9</mml:mn></mml:mrow></mml:math></inline-formula></oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1"/>
         <oasis:entry colname="col2"/>
         <oasis:entry colname="col3"/>
         <oasis:entry colname="col4">advection scheme</oasis:entry>
         <oasis:entry colname="col5"/>
       </oasis:row>
     </oasis:tbody>
   </oasis:tgroup></oasis:table></table-wrap>

<sec id="Ch1.S2.SS1">
  <label>2.1</label><title>The Sparse group</title>
      <p id="d1e569">The central idea around this group of methods is to identify distinct
features in a radar image that are suitable for tracking. In this context, a
“feature” is defined as a distinct point (“corner”) with a sharp gradient
of rainfall intensity. That approach is less arbitrary and scale dependent
and thus more universal than classical approaches that track storm cells as
contiguous objects <xref ref-type="bibr" rid="bib1.bibx43" id="paren.40"><named-content content-type="pre">e.g.,</named-content></xref> because it eliminates the need
to specify arbitrary and scale-dependent characteristics of “precipitation
features” while the identification of corners depends only on the
gradient sharpness in a cell's neighborhood. Inside this group, we developed
two models that slightly differ with regard to both tracking and
extrapolation.</p>
      <p id="d1e577">The first model (SparseSD, for Sparse Single Delta) uses only the two most
recent radar images for identifying, tracking, and extrapolating features.
Assuming that <inline-formula><mml:math id="M6" display="inline"><mml:mi>t</mml:mi></mml:math></inline-formula> denotes both the nowcast issue time and the time of the
most recent radar image, the implementation can be summarized as follows.
<list list-type="order"><list-item>
      <p id="d1e589">Identify features in a radar image at time <inline-formula><mml:math id="M7" display="inline"><mml:mrow><mml:mi>t</mml:mi><mml:mo>-</mml:mo><mml:mn mathvariant="normal">1</mml:mn></mml:mrow></mml:math></inline-formula> using the Shi–Tomasi
corner detector <xref ref-type="bibr" rid="bib1.bibx38" id="paren.41"/>. This detector determines the most prominent
corners in the image based on the calculation of the corner quality measure
(<inline-formula><mml:math id="M8" display="inline"><mml:mrow><mml:mo>min⁡</mml:mo><mml:mo>(</mml:mo><mml:msub><mml:mi mathvariant="italic">λ</mml:mi><mml:mn mathvariant="normal">1</mml:mn></mml:msub><mml:mo>,</mml:mo><mml:msub><mml:mi mathvariant="italic">λ</mml:mi><mml:mn mathvariant="normal">2</mml:mn></mml:msub></mml:mrow></mml:math></inline-formula>), where <inline-formula><mml:math id="M9" display="inline"><mml:mrow><mml:msub><mml:mi mathvariant="italic">λ</mml:mi><mml:mn mathvariant="normal">1</mml:mn></mml:msub></mml:mrow></mml:math></inline-formula> and <inline-formula><mml:math id="M10" display="inline"><mml:mrow><mml:msub><mml:mi mathvariant="italic">λ</mml:mi><mml:mn mathvariant="normal">2</mml:mn></mml:msub></mml:mrow></mml:math></inline-formula> are
corresponding eigenvalues of the covariance matrix of derivatives over the
neighborhood of <inline-formula><mml:math id="M11" display="inline"><mml:mrow><mml:mn mathvariant="normal">3</mml:mn><mml:mo>×</mml:mo><mml:mn mathvariant="normal">3</mml:mn></mml:mrow></mml:math></inline-formula> pixels) at each image pixel (see Sect. S1 for a
detailed description of algorithm parameters).</p></list-item><list-item>
      <p id="d1e665">Track these features at time <inline-formula><mml:math id="M12" display="inline"><mml:mi>t</mml:mi></mml:math></inline-formula> using the local Lucas–Kanade optical
flow algorithm <xref ref-type="bibr" rid="bib1.bibx30" id="paren.42"/>. This algorithm tries to identify the
location of a feature we previously identified at time <inline-formula><mml:math id="M13" display="inline"><mml:mrow><mml:mi>t</mml:mi><mml:mo>-</mml:mo><mml:mn mathvariant="normal">1</mml:mn></mml:mrow></mml:math></inline-formula> in the radar
image at time <inline-formula><mml:math id="M14" display="inline"><mml:mi>t</mml:mi></mml:math></inline-formula>, based on solving a set of optical flow equations in the
local feature neighborhood using the least-squares approach (see Sect. S1 for
a detailed description of algorithm parameters).</p></list-item><list-item>
      <p id="d1e698">Linearly extrapolate the features' motion in order to predict the features'
locations at each lead time <inline-formula><mml:math id="M15" display="inline"><mml:mi>n</mml:mi></mml:math></inline-formula>.</p></list-item><list-item>
      <p id="d1e709">Calculate the affine transformation matrix for each lead time <inline-formula><mml:math id="M16" display="inline"><mml:mi>n</mml:mi></mml:math></inline-formula> based
on the locations of all identified features at time <inline-formula><mml:math id="M17" display="inline"><mml:mi>t</mml:mi></mml:math></inline-formula> and <inline-formula><mml:math id="M18" display="inline"><mml:mrow><mml:mi>t</mml:mi><mml:mo>+</mml:mo><mml:mi>n</mml:mi></mml:mrow></mml:math></inline-formula> using the
least-squares approach <xref ref-type="bibr" rid="bib1.bibx37" id="paren.43"/>. This matrix uniquely identifies
the required transformation of the last observed radar image at time <inline-formula><mml:math id="M19" display="inline"><mml:mi>t</mml:mi></mml:math></inline-formula> so
that the nowcast images at times <inline-formula><mml:math id="M20" display="inline"><mml:mrow><mml:mi>t</mml:mi><mml:mo>+</mml:mo><mml:mn mathvariant="normal">1</mml:mn><mml:mspace width="0.125em" linebreak="nobreak"/><mml:mi mathvariant="normal">…</mml:mi><mml:mspace width="0.125em" linebreak="nobreak"/><mml:mi>t</mml:mi><mml:mo>+</mml:mo><mml:mi>n</mml:mi></mml:mrow></mml:math></inline-formula> provide the smallest
possible difference between the locations of detected features at time <inline-formula><mml:math id="M21" display="inline"><mml:mi>t</mml:mi></mml:math></inline-formula>
and the extrapolated features at times <inline-formula><mml:math id="M22" display="inline"><mml:mrow><mml:mi>t</mml:mi><mml:mo>+</mml:mo><mml:mn mathvariant="normal">1</mml:mn><mml:mspace linebreak="nobreak" width="0.125em"/><mml:mi mathvariant="normal">…</mml:mi><mml:mspace linebreak="nobreak" width="0.125em"/><mml:mi>t</mml:mi><mml:mo>+</mml:mo><mml:mi>n</mml:mi></mml:mrow></mml:math></inline-formula>.</p></list-item><list-item>
      <p id="d1e801">Extrapolate the radar image at time <inline-formula><mml:math id="M23" display="inline"><mml:mi>t</mml:mi></mml:math></inline-formula> by warping: for each lead time,
the warping procedure uniquely transforms each pixel location of the radar
image at time <inline-formula><mml:math id="M24" display="inline"><mml:mi>t</mml:mi></mml:math></inline-formula> to its future location in the nowcast radar images at times
<inline-formula><mml:math id="M25" display="inline"><mml:mrow><mml:mi>t</mml:mi><mml:mo>+</mml:mo><mml:mn mathvariant="normal">1</mml:mn><mml:mspace linebreak="nobreak" width="0.125em"/><mml:mi mathvariant="normal">…</mml:mi><mml:mspace width="0.125em" linebreak="nobreak"/><mml:mi>t</mml:mi><mml:mo>+</mml:mo><mml:mi>n</mml:mi></mml:mrow></mml:math></inline-formula>, using the affine transformation matrix. Remaining
discontinuities in the predicted image are linearly interpolated in order to
obtain nowcast intensities on a grid that corresponds to the radar image at
time <inline-formula><mml:math id="M26" display="inline"><mml:mi>t</mml:mi></mml:math></inline-formula> <xref ref-type="bibr" rid="bib1.bibx46" id="paren.44"/>.</p></list-item></list></p>
      <p id="d1e850">To our knowledge, this study is the first to apply image warping directly as
a simple and fast algorithm to represent advective motion of a precipitation
field. In Sect. S2, you can find a simple synthetic example which shows the
potential of the warping technique to replace an explicit advection
formulation for temporal extrapolation.</p>
      <p id="d1e853">For a visual representation of the SparseSD model, please refer to
Fig. <xref ref-type="fig" rid="Ch1.F1"/>.</p>

      <?xmltex \floatpos{t}?><fig id="Ch1.F1" specific-use="star"><?xmltex \currentcnt{1}?><label>Figure 1</label><caption><p id="d1e861">Scheme of the SparseSD model.</p></caption>
          <?xmltex \igopts{width=497.923228pt}?><graphic xlink:href="https://gmd.copernicus.org/articles/12/1387/2019/gmd-12-1387-2019-f01.png"/>

        </fig>

      <p id="d1e870">The second model (Sparse) uses the 24 most recent radar images, and we
consider only features that are persistent over the whole period (of 24 time
steps). The implementation can be summarized as follows.
<list list-type="order"><list-item>
      <p id="d1e875">Identify features on a radar image at time <inline-formula><mml:math id="M27" display="inline"><mml:mrow><mml:mi>t</mml:mi><mml:mo>-</mml:mo><mml:mn mathvariant="normal">23</mml:mn></mml:mrow></mml:math></inline-formula> using the Shi–Tomasi
corner detector <xref ref-type="bibr" rid="bib1.bibx38" id="paren.45"/>.</p></list-item><list-item>
      <p id="d1e894">Track these features in the radar images from <inline-formula><mml:math id="M28" display="inline"><mml:mrow><mml:mi>t</mml:mi><mml:mo>-</mml:mo><mml:mn mathvariant="normal">22</mml:mn></mml:mrow></mml:math></inline-formula> to <inline-formula><mml:math id="M29" display="inline"><mml:mi>t</mml:mi></mml:math></inline-formula>
using the local Lucas–Kanade optical flow algorithm <xref ref-type="bibr" rid="bib1.bibx30" id="paren.46"/>.</p></list-item><list-item>
      <p id="d1e920">Build linear regression models which independently parameterize changes
in coordinates through time (from <inline-formula><mml:math id="M30" display="inline"><mml:mrow><mml:mi>t</mml:mi><mml:mo>-</mml:mo><mml:mn mathvariant="normal">23</mml:mn></mml:mrow></mml:math></inline-formula> to <inline-formula><mml:math id="M31" display="inline"><mml:mi>t</mml:mi></mml:math></inline-formula>) for every successfully
tracked feature.</p></list-item><list-item>
      <p id="d1e943">Continue with steps 3–5 of SparseSD.</p></list-item></list></p>
      <p id="d1e946">For a visual representation of the Sparse model, please refer to
Fig. <xref ref-type="fig" rid="Ch1.F2"/>.</p>

      <?xmltex \floatpos{t}?><fig id="Ch1.F2" specific-use="star"><?xmltex \currentcnt{2}?><label>Figure 2</label><caption><p id="d1e953">Scheme of the Sparse model.</p></caption>
          <?xmltex \igopts{width=497.923228pt}?><graphic xlink:href="https://gmd.copernicus.org/articles/12/1387/2019/gmd-12-1387-2019-f02.png"/>

        </fig>

</sec>
<?pagebreak page1390?><sec id="Ch1.S2.SS2">
  <label>2.2</label><title>The Dense group</title>
      <p id="d1e971">The Dense group of models uses, by default, the Dense Inverse Search
algorithm (DIS) – a global optical flow algorithm proposed by
<xref ref-type="bibr" rid="bib1.bibx27" id="text.47"/> – which allows us to explicitly estimate the velocity of
each image pixel based on an analysis of two consecutive radar images. The
DIS algorithm was selected as the default optical flow method for motion
field retrieval because it showed, in our benchmark experiments, a higher
accuracy and also a higher computational efficiency in comparison with other
global optical flow algorithms such as DeepFlow <xref ref-type="bibr" rid="bib1.bibx41" id="paren.48"/>, and
PCAFlow <xref ref-type="bibr" rid="bib1.bibx49" id="paren.49"/>. We also tested the local Farnebäck algorithm
<xref ref-type="bibr" rid="bib1.bibx15" id="paren.50"/>, which we modified by replacing zero velocities by
interpolation and by smoothing the obtained velocity field based on a
variational refinement procedure <xref ref-type="bibr" rid="bib1.bibx11" id="paren.51"/> (please refer to Sect. S5
for verification results of the corresponding benchmark experiment with
various dense optical flow models). However, the rainymotion library
provides the option to choose any of the optical flow methods specified above for precipitation nowcasting.</p>
      <?pagebreak page1391?><p id="d1e989">The two models in this group differ only with regard to the extrapolation (or
advection) step. The first model (Dense) uses a constant-vector advection
scheme <xref ref-type="bibr" rid="bib1.bibx8" id="paren.52"/>, while the second model (DenseRotation) uses a
semi-Lagrangian advection scheme <xref ref-type="bibr" rid="bib1.bibx17" id="paren.53"/>. The main
difference between both approaches is that a constant-vector scheme does not
allow for the representation of rotational motion <xref ref-type="bibr" rid="bib1.bibx8" id="paren.54"/>; a
semi-Lagrangian scheme allows for the representation of large-scale
rotational movement while assuming the motion field itself to be persistent
(Fig. <xref ref-type="fig" rid="Ch1.F3"/>).</p>

      <?xmltex \floatpos{t}?><fig id="Ch1.F3"><?xmltex \currentcnt{3}?><label>Figure 3</label><caption><p id="d1e1005">Displacement vectors of four proposed advection schemes:
forward or backward constant vector and forward or backward semi-Lagrangian.</p></caption>
          <?xmltex \igopts{width=184.942913pt}?><graphic xlink:href="https://gmd.copernicus.org/articles/12/1387/2019/gmd-12-1387-2019-f03.png"/>

        </fig>

      <p id="d1e1015">There are two possible options of how both advection schemes may be
implemented: forward in time (and downstream in space) or backward in time
(and upstream in space) (Fig. <xref ref-type="fig" rid="Ch1.F3"/>). It is yet unclear which scheme
can be considered as the most appropriate and universal solution for
radar-based precipitation nowcasting, regarding the conservation of mass on
the one hand and the attributed loss of power at small scales on the other
hand <xref ref-type="bibr" rid="bib1.bibx8 bib1.bibx17" id="paren.55"><named-content content-type="pre">e.g., see discussion in</named-content></xref>.
Thus, we conducted a benchmark experiment with any possible combination of
forward vs. backward and constant-vector vs. semi-Lagrangian advection. Based
on the results (see Sect. S6), we use the backward scheme as the default
option for both the Dense and DenseRotation models. However, the
rainymotion library still provides the option to use the forward
scheme, too.</p>
      <p id="d1e1025">Both the Dense and DenseRotation models utilize a linear interpolation
procedure in order to interpolate advected rainfall intensities at their
predicted locations to the native radar grid. The interpolation procedure
“distributes” the value of a rain pixel to its neighborhood, as proposed in
different modifications by <xref ref-type="bibr" rid="bib1.bibx8" id="text.56"/>, <xref ref-type="bibr" rid="bib1.bibx29" id="text.57"/>, and
<xref ref-type="bibr" rid="bib1.bibx51" id="text.58"/>. The Dense group models' implementation can be summarized
as follows.
<list list-type="order"><list-item>
      <p id="d1e1039">Calculate a velocity field using the global DIS optical flow algorithm
<xref ref-type="bibr" rid="bib1.bibx27" id="paren.59"/>, based on the radar images at time <inline-formula><mml:math id="M32" display="inline"><mml:mrow><mml:mi>t</mml:mi><mml:mo>-</mml:mo><mml:mn mathvariant="normal">1</mml:mn></mml:mrow></mml:math></inline-formula> and <inline-formula><mml:math id="M33" display="inline"><mml:mi>t</mml:mi></mml:math></inline-formula>.</p></list-item><list-item>
      <p id="d1e1065">Use a backward constant-vector <xref ref-type="bibr" rid="bib1.bibx8" id="paren.60"/> or a backward semi-Lagrangian
scheme <xref ref-type="bibr" rid="bib1.bibx17" id="paren.61"/> to extrapolate (advect) each pixel
according to the displacement (velocity) field, in one single step for each
lead time <inline-formula><mml:math id="M34" display="inline"><mml:mrow><mml:mi>t</mml:mi><mml:mo>+</mml:mo><mml:mi>n</mml:mi></mml:mrow></mml:math></inline-formula>. For the semi-Lagrangian scheme, we update the velocity of
the displaced pixels at each prediction time step <inline-formula><mml:math id="M35" display="inline"><mml:mi>n</mml:mi></mml:math></inline-formula> by linear interpolation
of the velocity field to a pixel's location at that time step.</p></list-item><list-item>
      <?pagebreak page1392?><p id="d1e1094">As a result of the advection step, we basically obtain an irregular
point cloud that consists of the original radar pixels displaced from their
original location. We use the intensity of each displaced pixel at its
predicted location at time <inline-formula><mml:math id="M36" display="inline"><mml:mrow><mml:mi>t</mml:mi><mml:mo>+</mml:mo><mml:mi>n</mml:mi></mml:mrow></mml:math></inline-formula> in order to interpolate the intensity at
each grid point of the original (native) radar grid
<xref ref-type="bibr" rid="bib1.bibx29 bib1.bibx51" id="paren.62"/>, using the inverse distance weighting
interpolation technique. It is important to note that we minimize numerical
diffusion by first advecting each pixel over the target lead time before
applying the interpolation procedure (as in the “interpolate once” approach
proposed by <xref ref-type="bibr" rid="bib1.bibx17" id="altparen.63"/>). That way, we avoid rainfall
features being smoothed in space by the effects of interpolation.</p></list-item></list></p>
</sec>
<sec id="Ch1.S2.SS3">
  <label>2.3</label><title>Persistence</title>
      <p id="d1e1123">The (trivial) benchmark model of Eulerian persistence assumes that for any
lead time <inline-formula><mml:math id="M37" display="inline"><mml:mi>n</mml:mi></mml:math></inline-formula>, the precipitation field is the same as for time <inline-formula><mml:math id="M38" display="inline"><mml:mi>t</mml:mi></mml:math></inline-formula>. Despite
its simplicity, it is quite a powerful model for very short lead times, and,
at the same time, its verification performance is a good measure of temporal
decorrelation for different events.</p>
</sec>
<sec id="Ch1.S2.SS4">
  <label>2.4</label><title>The rainymotion Python library</title>
      <p id="d1e1148">We have developed the rainymotion Python library to implement the above
models. Since the rainymotion uses the standard format of numpy arrays
for data manipulation, there is no restriction in using different data
formats which can be read, transformed, and converted to numpy arrays using
any tool from the set of available open software libraries for radar data
manipulation (the list is available on <uri>https://openradarscience.org</uri>,
last access: 28 March 2019). The source code is available in a Github
repository <xref ref-type="bibr" rid="bib1.bibx3" id="paren.64"/> and has a documentation page
(<uri>https://rainymotion.readthedocs.io</uri>, last access: 28 March 2019) which
includes installation instructions, model description, and usage examples.
The library code and accompanying documentation are freely distributed under
the MIT software license which allows unrestricted use. The library is
written in the Python 3 programming language (<uri>https://python.org</uri>, last
access: 28 March 2019), and its core is entirely based on open-source
software libraries (Fig. <xref ref-type="fig" rid="Ch1.F4"/>): <inline-formula><mml:math id="M39" display="inline"><mml:mi mathvariant="italic">ω</mml:mi></mml:math></inline-formula>radlib
<xref ref-type="bibr" rid="bib1.bibx20" id="paren.65"/>, OpenCV <xref ref-type="bibr" rid="bib1.bibx10" id="paren.66"/>, SciPy
<xref ref-type="bibr" rid="bib1.bibx26" id="paren.67"/>, NumPy <xref ref-type="bibr" rid="bib1.bibx33" id="paren.68"/>, Scikit-learn
<xref ref-type="bibr" rid="bib1.bibx34" id="paren.69"/>, and Scikit-image <xref ref-type="bibr" rid="bib1.bibx40" id="paren.70"/>. For generating
figures we use the Matplotlib library <xref ref-type="bibr" rid="bib1.bibx24" id="paren.71"/>, and we use the
Jupyter notebook (<uri>https://jupyter.org</uri>, last access: 28 March 2019)
interactive development environment for code and documentation development
and distribution. For managing the dependencies without any conflicts, we
recommend to use the Anaconda Python distribution
(<uri>https://anaconda.com</uri>, last access: 28 March 2019) and follow
rainymotion installation instructions
(<uri>https://rainymotion.readthedocs.io</uri>, last access: 28 March 2019).</p>

      <?xmltex \floatpos{p}?><fig id="Ch1.F4" specific-use="star"><?xmltex \currentcnt{4}?><label>Figure 4</label><caption><p id="d1e1206">Key Python libraries for rainymotion library development.</p></caption>
          <?xmltex \igopts{width=398.338583pt}?><graphic xlink:href="https://gmd.copernicus.org/articles/12/1387/2019/gmd-12-1387-2019-f04.png"/>

        </fig>

</sec>
<sec id="Ch1.S2.SS5">
  <label>2.5</label><title>Operational baseline (RADVOR)</title>
      <p id="d1e1223">The DWD operationally runs a stack of models for radar-based nowcasting and
provides precipitation forecasts for a lead time up to 2 h. The operational
QPN is based on the RADVOR module (Bartels et al., 2005; Rudolf et
al., 2012). The tracking algorithm estimates the motion field from the latest
sequential clutter-filtered radar images using a pattern recognition
technique at different spatial resolutions (Winterrath and Rosenow, 2007;
Winterrath et al., 2012). The focus of the tracking algorithm is on the
meso-<inline-formula><mml:math id="M40" display="inline"><mml:mi mathvariant="italic">β</mml:mi></mml:math></inline-formula> scale (spatial extent: 25–250 km) to cover mainly large-scale
precipitation patterns, but the meso-<inline-formula><mml:math id="M41" display="inline"><mml:mi mathvariant="italic">γ</mml:mi></mml:math></inline-formula> scale (spatial extension:
2.5–25 km) is also incorporated to allow the detection of smaller-scale
convective structures. The resulting displacement field is interpolated to a
regular grid, and a weighted averaging with previously derived displacement
fields is implemented to guarantee a smooth displacement over time. The
extrapolation of the most recent radar image according to the obtained
velocity field is performed using a semi-Lagrangian approach. The described
operational model is updated every 5 min and produces precipitation nowcasts
at a temporal resolution of 5 min and a lead time of 2 h (RV product). In
this study we used the RV product data as an operational baseline and did not
re-implement the underlying algorithm itself.</p>
</sec>
</sec>
<sec id="Ch1.S3">
  <label>3</label><title>Verification experiments</title>
<sec id="Ch1.S3.SS1">
  <label>3.1</label><title>Radar data and verification events</title>
      <p id="d1e1256">We use the so-called RY product of the DWD as input to our nowcasting models.
The RY product represents a quality-controlled rainfall depth product that is
a composite of the 17 operational Doppler radars maintained by the DWD. It
has a spatial extent of <inline-formula><mml:math id="M42" display="inline"><mml:mrow><mml:mn mathvariant="normal">900</mml:mn><mml:mspace width="0.125em" linebreak="nobreak"/><mml:mi>k</mml:mi><mml:mi>m</mml:mi><mml:mo>×</mml:mo><mml:mn mathvariant="normal">900</mml:mn></mml:mrow></mml:math></inline-formula> km and covers the whole area of
Germany. Spatial and temporal resolution of the RY product is <inline-formula><mml:math id="M43" display="inline"><mml:mrow><mml:mn mathvariant="normal">1</mml:mn><mml:mspace width="0.125em" linebreak="nobreak"/><mml:mi>k</mml:mi><mml:mi>m</mml:mi><mml:mo>×</mml:mo><mml:mn mathvariant="normal">1</mml:mn></mml:mrow></mml:math></inline-formula> km
and 5 min, respectively. This composite product includes various procedures
for correction and quality control (e.g., clutter removal). We used the
<inline-formula><mml:math id="M44" display="inline"><mml:mi mathvariant="italic">ω</mml:mi></mml:math></inline-formula>radlib <xref ref-type="bibr" rid="bib1.bibx20" id="paren.72"/> software library for reading
the DWD radar data.</p>
      <p id="d1e1303">For the analysis, we selected 11 events during the summer periods of
2016 and 2017. These events are selected for covering a range of event
characteristics with different rainfall intensity, spatial coverage, and
duration. Table <xref ref-type="table" rid="Ch1.T2"/> shows the studied events. You can also find
links to animations of event intensity dynamics in Sect. S3.</p>

<?xmltex \floatpos{p}?><table-wrap id="Ch1.T2" specific-use="star"><?xmltex \currentcnt{2}?><label>Table 2</label><caption><p id="d1e1311">Characteristics of the selected events.</p></caption><oasis:table frame="topbot"><oasis:tgroup cols="6">
     <oasis:colspec colnum="1" colname="col1" align="left"/>
     <oasis:colspec colnum="2" colname="col2" align="left"/>
     <oasis:colspec colnum="3" colname="col3" align="left"/>
     <oasis:colspec colnum="4" colname="col4" align="right"/>
     <oasis:colspec colnum="5" colname="col5" align="right"/>
     <oasis:colspec colnum="6" colname="col6" align="center"/>
     <oasis:thead>
       <oasis:row>
         <oasis:entry colname="col1">Event no.</oasis:entry>
         <oasis:entry colname="col2">Start</oasis:entry>
         <oasis:entry colname="col3">End</oasis:entry>
         <oasis:entry colname="col4">Duration</oasis:entry>
         <oasis:entry colname="col5">Maximum extent</oasis:entry>
         <oasis:entry colname="col6">Extent <inline-formula><mml:math id="M45" display="inline"><mml:mrow><mml:mo>&gt;</mml:mo><mml:mn mathvariant="normal">1</mml:mn></mml:mrow></mml:math></inline-formula> mm h<inline-formula><mml:math id="M46" display="inline"><mml:msup><mml:mi/><mml:mrow><mml:mo>-</mml:mo><mml:mn mathvariant="normal">1</mml:mn></mml:mrow></mml:msup></mml:math></inline-formula></oasis:entry>
       </oasis:row>
       <oasis:row rowsep="1">
         <oasis:entry colname="col1"/>
         <oasis:entry colname="col2"/>
         <oasis:entry colname="col3"/>
         <oasis:entry colname="col4">(h)</oasis:entry>
         <oasis:entry colname="col5">(km<inline-formula><mml:math id="M47" display="inline"><mml:msup><mml:mi/><mml:mn mathvariant="normal">2</mml:mn></mml:msup></mml:math></inline-formula>)</oasis:entry>
         <oasis:entry colname="col6">(%)</oasis:entry>
       </oasis:row>
     </oasis:thead>
     <oasis:tbody>
       <oasis:row>
         <oasis:entry colname="col1">Event 1</oasis:entry>
         <oasis:entry colname="col2">23 May 2016 02:00</oasis:entry>
         <oasis:entry colname="col3">23 May 2016 08:00</oasis:entry>
         <oasis:entry colname="col4">6</oasis:entry>
         <oasis:entry colname="col5">159 318</oasis:entry>
         <oasis:entry colname="col6">42</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">Event 2</oasis:entry>
         <oasis:entry colname="col2">23 May 2016 13:00</oasis:entry>
         <oasis:entry colname="col3">24 May 2016 02:30</oasis:entry>
         <oasis:entry colname="col4">13.5</oasis:entry>
         <oasis:entry colname="col5">135 272</oasis:entry>
         <oasis:entry colname="col6">56</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">Event 3</oasis:entry>
         <oasis:entry colname="col2">29 May 2016 12:05</oasis:entry>
         <oasis:entry colname="col3">29 May 2016 23:55</oasis:entry>
         <oasis:entry colname="col4">12</oasis:entry>
         <oasis:entry colname="col5">160 095</oasis:entry>
         <oasis:entry colname="col6">72</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">Event 4</oasis:entry>
         <oasis:entry colname="col2">12 Jun 2016 07:00</oasis:entry>
         <oasis:entry colname="col3">12 Jun 2016 19:00</oasis:entry>
         <oasis:entry colname="col4">12</oasis:entry>
         <oasis:entry colname="col5">150 416</oasis:entry>
         <oasis:entry colname="col6">53</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">Event 5</oasis:entry>
         <oasis:entry colname="col2">13 Jul 2016 17:30</oasis:entry>
         <oasis:entry colname="col3">14 Jul 2016 01:00</oasis:entry>
         <oasis:entry colname="col4">7.5</oasis:entry>
         <oasis:entry colname="col5">145 501</oasis:entry>
         <oasis:entry colname="col6">62</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">Event 6</oasis:entry>
         <oasis:entry colname="col2">4 Aug 2016 18:00</oasis:entry>
         <oasis:entry colname="col3">5 Aug 2016 07:00</oasis:entry>
         <oasis:entry colname="col4">13</oasis:entry>
         <oasis:entry colname="col5">168 407</oasis:entry>
         <oasis:entry colname="col6">74</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">Event 7</oasis:entry>
         <oasis:entry colname="col2">29 Jun 2017 03:00</oasis:entry>
         <oasis:entry colname="col3">29 Jun 2017 05:05</oasis:entry>
         <oasis:entry colname="col4">2</oasis:entry>
         <oasis:entry colname="col5">140 021</oasis:entry>
         <oasis:entry colname="col6">70</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">Event 8</oasis:entry>
         <oasis:entry colname="col2">29 Jun 2017 17:00</oasis:entry>
         <oasis:entry colname="col3">29 Jun 2017 21:00</oasis:entry>
         <oasis:entry colname="col4">4</oasis:entry>
         <oasis:entry colname="col5">182 561</oasis:entry>
         <oasis:entry colname="col6">60</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">Event 9</oasis:entry>
         <oasis:entry colname="col2">29 Jun 2017 22:00</oasis:entry>
         <oasis:entry colname="col3">30 Jun 2017 21:00</oasis:entry>
         <oasis:entry colname="col4">23</oasis:entry>
         <oasis:entry colname="col5">160 822</oasis:entry>
         <oasis:entry colname="col6">75</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">Event 10</oasis:entry>
         <oasis:entry colname="col2">21 Jul 2017 19:00</oasis:entry>
         <oasis:entry colname="col3">21 Jul 2017 23:00</oasis:entry>
         <oasis:entry colname="col4">4</oasis:entry>
         <oasis:entry colname="col5">63 698</oasis:entry>
         <oasis:entry colname="col6">77</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">Event 11</oasis:entry>
         <oasis:entry colname="col2">24 Jul 2017 08:00</oasis:entry>
         <oasis:entry colname="col3">25 Jul 2017 23:55</oasis:entry>
         <oasis:entry colname="col4">16</oasis:entry>
         <oasis:entry colname="col5">253 666</oasis:entry>
         <oasis:entry colname="col6">63</oasis:entry>
       </oasis:row>
     </oasis:tbody>
   </oasis:tgroup></oasis:table></table-wrap>

</sec>
<sec id="Ch1.S3.SS2">
  <label>3.2</label><title>Verification metrics</title>
      <?pagebreak page1394?><p id="d1e1660">For the verification we use two general categories of scores: continuous
(based on the differences between nowcast and observed rainfall intensities)
and categorical (based on standard contingency tables for calculating matches
between Boolean values which reflect the exceedance of specific rainfall
intensity thresholds). We use the mean absolute error (MAE) as a continuous
score:

                <disp-formula id="Ch1.E1" content-type="numbered"><label>1</label><mml:math id="M48" display="block"><mml:mrow><mml:mstyle displaystyle="true" class="stylechange"/><mml:mtext>MAE</mml:mtext><mml:mo>=</mml:mo><mml:mstyle displaystyle="true"><mml:mfrac style="display"><mml:mrow><mml:msubsup><mml:mo>∑</mml:mo><mml:mrow><mml:mi>i</mml:mi><mml:mo>=</mml:mo><mml:mn mathvariant="normal">1</mml:mn></mml:mrow><mml:mi>n</mml:mi></mml:msubsup><mml:mfenced close="|" open="|"><mml:mrow><mml:msub><mml:mtext>now</mml:mtext><mml:mi>i</mml:mi></mml:msub><mml:mo>-</mml:mo><mml:msub><mml:mtext>obs</mml:mtext><mml:mi>i</mml:mi></mml:msub></mml:mrow></mml:mfenced></mml:mrow><mml:mi>n</mml:mi></mml:mfrac></mml:mstyle><mml:mo>,</mml:mo></mml:mrow></mml:math></disp-formula>

          where now<inline-formula><mml:math id="M49" display="inline"><mml:msub><mml:mi/><mml:mi>i</mml:mi></mml:msub></mml:math></inline-formula> and obs<inline-formula><mml:math id="M50" display="inline"><mml:msub><mml:mi/><mml:mi>i</mml:mi></mml:msub></mml:math></inline-formula> are nowcast and observed rainfall rate in the
<inline-formula><mml:math id="M51" display="inline"><mml:mi>i</mml:mi></mml:math></inline-formula>th pixel of the corresponding radar image and <inline-formula><mml:math id="M52" display="inline"><mml:mi>n</mml:mi></mml:math></inline-formula> is the number of pixels.
To compute the MAE, no pixels were excluded based on thresholds of nowcast or
observed rainfall rate.</p>
      <p id="d1e1739">And we use the critical success index (CSI) as a categorical score:

                <disp-formula id="Ch1.E2" content-type="numbered"><label>2</label><mml:math id="M53" display="block"><mml:mrow><mml:mstyle class="stylechange" displaystyle="true"/><mml:mtext>CSI</mml:mtext><mml:mo>=</mml:mo><mml:mstyle displaystyle="true"><mml:mfrac style="display"><mml:mtext>hits</mml:mtext><mml:mrow><mml:mtext>hits</mml:mtext><mml:mo>+</mml:mo><mml:mtext>false</mml:mtext><mml:mspace width="0.25em" linebreak="nobreak"/><mml:mtext>alarms</mml:mtext><mml:mo>+</mml:mo><mml:mtext>misses</mml:mtext></mml:mrow></mml:mfrac></mml:mstyle><mml:mo>,</mml:mo></mml:mrow></mml:math></disp-formula>

          where hits, false alarms, and misses are defined by the contingency table and
the corresponding threshold value (for details see Sect. S4).</p>
      <p id="d1e1773">Following studies of <xref ref-type="bibr" rid="bib1.bibx9" id="text.73"/> and <xref ref-type="bibr" rid="bib1.bibx16" id="text.74"/>, we have
applied threshold rain rates of 0.125, 0.25, 0.5, 1, and 5 mm h<inline-formula><mml:math id="M54" display="inline"><mml:msup><mml:mi/><mml:mrow><mml:mo>-</mml:mo><mml:mn mathvariant="normal">1</mml:mn></mml:mrow></mml:msup></mml:math></inline-formula> for
calculating the CSI.</p>
      <p id="d1e1794">These two metrics inform us about the models' performance from the two
perspectives: MAE captures errors in rainfall rate prediction (the less the
better), and CSI captures model accuracy (the fraction of the forecast event
that was correctly predicted; it does not distinguish between the sources of errors; the
higher the better). You can find results represented in terms of additional
categorical scores (false alarm rate, probability of detection, equitable
threat score) in Sect. S4.</p>
</sec>
</sec>
<sec id="Ch1.S4">
  <label>4</label><title>Results</title>
      <p id="d1e1807">For each event, all models (Sparse, SparseSD, Dense, DenseRotation,
Persistence) were used to compute nowcasts with lead times from 5 to 60 min
(in 5 min steps). Operational nowcasts generated by the RADVOR system were
provided by the DWD with the same temporal settings. An example of nowcasts
for lead times 0, 5, 30, and 60 min is shown in Fig. <xref ref-type="fig" rid="Ch1.F5"/>.</p>

      <?xmltex \floatpos{t}?><fig id="Ch1.F5" specific-use="star"><?xmltex \currentcnt{5}?><label>Figure 5</label><caption><p id="d1e1814">Example of the nowcasting models output (SparseSD and Dense
models) for the timestep, 29 May 2016, 19:15, and corresponding level of
numerical diffusion (last row).</p></caption>
        <?xmltex \igopts{width=497.923228pt}?><graphic xlink:href="https://gmd.copernicus.org/articles/12/1387/2019/gmd-12-1387-2019-f05.png"/>

      </fig>

      <p id="d1e1823">To investigate the effects of numerical diffusion, we calculated, for the
same example, the power spectral density (PSD) of the nowcasts and the
corresponding observations (bottom panels in Fig. <xref ref-type="fig" rid="Ch1.F5"/>) using
Welch's method <xref ref-type="bibr" rid="bib1.bibx42" id="paren.75"/>. <xref ref-type="bibr" rid="bib1.bibx17" id="text.76"/> showed that the
most significant loss of power (lower PSD values) occurs at scales between 8
and 64 km. They did not analyze scales below 8 (<inline-formula><mml:math id="M55" display="inline"><mml:mrow><mml:msup><mml:mn mathvariant="normal">2</mml:mn><mml:mn mathvariant="normal">3</mml:mn></mml:msup></mml:mrow></mml:math></inline-formula>) km because their
original grid resolution was 4 km. We extended the spectral analysis to
consider scales as small as <inline-formula><mml:math id="M56" display="inline"><mml:mrow><mml:msup><mml:mn mathvariant="normal">2</mml:mn><mml:mn mathvariant="normal">1</mml:mn></mml:msup></mml:mrow></mml:math></inline-formula> km. Other than
<xref ref-type="bibr" rid="bib1.bibx17" id="text.77"/>, we could not observe any substantial loss of
power between 8 and 64 km, yet Fig. <xref ref-type="fig" rid="Ch1.F5"/> shows that both Dense and
Sparse models consistently start to lose power at scales below 4 km. That
loss does not depend much on the nowcast lead time, yet the Sparse group of
models loses more power at a lead time of 5 min as compared to the Dense
group. Still, these results rather confirm <xref ref-type="bibr" rid="bib1.bibx17" id="text.78"/>: they
show, as would be expected, that any loss of spectral power is most
pronounced at the smallest scales and disappears at scales about 2–3 orders
above the native grid resolution. For the investigated combination of data
and models, this implies that our nowcasts will not be able to adequately
represent rainfall features smaller than 4 km at lead times of up to 1 h.</p>
      <p id="d1e1866">Figure <xref ref-type="fig" rid="Ch1.F6"/> shows the model performance (in terms of MAE) as a
function of lead time. For each event, the Dense group of models is superior
to the other ones. The RV product achieves an efficiency that is comparable
to the Dense group. The SparseSD model outperforms the Sparse model for short
lead times (up to 10–15 min) and vice versa for longer lead times. For
some events (1–4, 6, 10, 11), the performance of the RV product appears to
be particularly low in the first 10 min, compared to the other models. These
events are characterized by particularly fast rainfall field movement.</p>

      <?xmltex \floatpos{t}?><fig id="Ch1.F6" specific-use="star"><?xmltex \currentcnt{6}?><label>Figure 6</label><caption><p id="d1e1873">Verification of the different optical flow based nowcasts in terms
of MAE for 11 precipitation events over Germany.</p></caption>
        <?xmltex \igopts{width=497.923228pt}?><graphic xlink:href="https://gmd.copernicus.org/articles/12/1387/2019/gmd-12-1387-2019-f06.png"/>

      </fig>

      <p id="d1e1882">Figure <xref ref-type="fig" rid="Ch1.F7"/> has the same structure as Fig. <xref ref-type="fig" rid="Ch1.F6"/> but
shows the CSI with a threshold value of 1 mm h<inline-formula><mml:math id="M57" display="inline"><mml:msup><mml:mi/><mml:mrow><mml:mo>-</mml:mo><mml:mn mathvariant="normal">1</mml:mn></mml:mrow></mml:msup></mml:math></inline-formula>. For two events (7
and 10) the RV product achieves a comparable efficiency with the Dense group
for lead times beyond 30 min. For the remaining events, the Dense group
tends to outperform all other methods and the RV product achieves an average
rank between models of the Sparse and Dense groups. For the Dense group of
models, it appears that accounting for field rotation does not affect the
results of the benchmark experiment much – the Dense and DenseRotation
models perform very similarly, at least for the selected events and the
analyzed lead times. The behavior of the Sparse group models is mostly
consistent with the MAE.</p>

      <?xmltex \floatpos{t}?><fig id="Ch1.F7" specific-use="star"><?xmltex \currentcnt{7}?><label>Figure 7</label><caption><p id="d1e1903">Verification of the different optical flow based nowcasts in terms
of CSI for the threshold of 1 mm h<inline-formula><mml:math id="M58" display="inline"><mml:msup><mml:mi/><mml:mrow><mml:mo>-</mml:mo><mml:mn mathvariant="normal">1</mml:mn></mml:mrow></mml:msup></mml:math></inline-formula> for 11 precipitation events over
Germany.</p></caption>
        <?xmltex \igopts{width=497.923228pt}?><graphic xlink:href="https://gmd.copernicus.org/articles/12/1387/2019/gmd-12-1387-2019-f07.png"/>

      </fig>

      <p id="d1e1924">Figure <xref ref-type="fig" rid="Ch1.F8"/> shows the model performance using the CSI with a
threshold value of 5 mm h<inline-formula><mml:math id="M59" display="inline"><mml:msup><mml:mi/><mml:mrow><mml:mo>-</mml:mo><mml:mn mathvariant="normal">1</mml:mn></mml:mrow></mml:msup></mml:math></inline-formula>. For the majority of events, the resulting
ranking of models is the same as for the CSI with a threshold of
1 mm h<inline-formula><mml:math id="M60" display="inline"><mml:msup><mml:mi/><mml:mrow><mml:mo>-</mml:mo><mml:mn mathvariant="normal">1</mml:mn></mml:mrow></mml:msup></mml:math></inline-formula>. For events no. 2 and no. 3, the performance of the RV product
relative to the Dense models is a little bit better, while for other events
(e.g., no. 7), the Dense models outperform the RV product more clearly than for
the CSI of 1 mm kh<inline-formula><mml:math id="M61" display="inline"><mml:msup><mml:mi/><mml:mrow><mml:mo>-</mml:mo><mml:mn mathvariant="normal">1</mml:mn></mml:mrow></mml:msup></mml:math></inline-formula>.</p>

      <?xmltex \floatpos{t}?><fig id="Ch1.F8" specific-use="star"><?xmltex \currentcnt{8}?><label>Figure 8</label><caption><p id="d1e1968">Verification of the different optical flow based nowcasts in terms
of CSI for the threshold of 5 mm h<inline-formula><mml:math id="M62" display="inline"><mml:msup><mml:mi/><mml:mrow><mml:mo>-</mml:mo><mml:mn mathvariant="normal">1</mml:mn></mml:mrow></mml:msup></mml:math></inline-formula> for 11 precipitation events over
Germany.</p></caption>
        <?xmltex \igopts{width=497.923228pt}?><graphic xlink:href="https://gmd.copernicus.org/articles/12/1387/2019/gmd-12-1387-2019-f08.png"/>

      </fig>

      <p id="d1e1989">Table <xref ref-type="table" rid="Ch1.T3"/> summarizes the results of the Dense group models in
comparison to the RV product for different verification metrics averaged over
all the selected events and two lead time periods: 5–30 and 35–60 min.
Results show that the Dense group always slightly outperforms the RV model in
terms of CSI metric for both lead time periods and all analyzed rainfall
intensity threshold used for CSI calculation. In terms of MAE, differences
between model performances are less pronounced. For the CSI metric, the
absolute differences between all models tend to be consistent with increasing
rainfall thresholds.</p>

<?xmltex \floatpos{t}?><table-wrap id="Ch1.T3"><?xmltex \currentcnt{3}?><label>Table 3</label><caption><p id="d1e1997">Mean model metrics for different lead time periods</p></caption><oasis:table frame="topbot"><oasis:tgroup cols="3">
     <oasis:colspec colnum="1" colname="col1" align="left"/>
     <oasis:colspec colnum="2" colname="col2" align="center"/>
     <oasis:colspec colnum="3" colname="col3" align="center"/>
     <oasis:thead>
       <oasis:row>
         <oasis:entry colname="col1">Model</oasis:entry>
         <oasis:entry namest="col2" nameend="col3">Lead time (from–to), min </oasis:entry>
       </oasis:row>
       <oasis:row rowsep="1">
         <oasis:entry colname="col1"/>
         <oasis:entry colname="col2">5–30</oasis:entry>
         <oasis:entry colname="col3">35–60</oasis:entry>
       </oasis:row>
     </oasis:thead>
     <oasis:tbody>
       <oasis:row rowsep="1">
         <oasis:entry namest="col1" nameend="col3">MAE, mm h<inline-formula><mml:math id="M63" display="inline"><mml:msup><mml:mi/><mml:mrow><mml:mo>-</mml:mo><mml:mn mathvariant="normal">1</mml:mn></mml:mrow></mml:msup></mml:math></inline-formula></oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">Dense</oasis:entry>
         <oasis:entry colname="col2">0.30</oasis:entry>
         <oasis:entry colname="col3">0.45</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">DenseRotation</oasis:entry>
         <oasis:entry colname="col2">0.30</oasis:entry>
         <oasis:entry colname="col3">0.45</oasis:entry>
       </oasis:row>
       <oasis:row rowsep="1">
         <oasis:entry colname="col1">RV</oasis:entry>
         <oasis:entry colname="col2">0.31</oasis:entry>
         <oasis:entry colname="col3">0.45</oasis:entry>
       </oasis:row>
       <oasis:row rowsep="1">
         <oasis:entry namest="col1" nameend="col3">CSI, threshold: <inline-formula><mml:math id="M64" display="inline"><mml:mn mathvariant="normal">0.125</mml:mn></mml:math></inline-formula> mm h<inline-formula><mml:math id="M65" display="inline"><mml:msup><mml:mi/><mml:mrow><mml:mo>-</mml:mo><mml:mn mathvariant="normal">1</mml:mn></mml:mrow></mml:msup></mml:math></inline-formula></oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">Dense</oasis:entry>
         <oasis:entry colname="col2">0.78</oasis:entry>
         <oasis:entry colname="col3">0.64</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">DenseRotation</oasis:entry>
         <oasis:entry colname="col2">0.78</oasis:entry>
         <oasis:entry colname="col3">0.64</oasis:entry>
       </oasis:row>
       <oasis:row rowsep="1">
         <oasis:entry colname="col1">RV</oasis:entry>
         <oasis:entry colname="col2">0.76</oasis:entry>
         <oasis:entry colname="col3">0.61</oasis:entry>
       </oasis:row>
       <oasis:row rowsep="1">
         <oasis:entry namest="col1" nameend="col3">CSI, threshold: <inline-formula><mml:math id="M66" display="inline"><mml:mn mathvariant="normal">0.25</mml:mn></mml:math></inline-formula> mm h<inline-formula><mml:math id="M67" display="inline"><mml:msup><mml:mi/><mml:mrow><mml:mo>-</mml:mo><mml:mn mathvariant="normal">1</mml:mn></mml:mrow></mml:msup></mml:math></inline-formula></oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">Dense</oasis:entry>
         <oasis:entry colname="col2">0.76</oasis:entry>
         <oasis:entry colname="col3">0.61</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">DenseRotation</oasis:entry>
         <oasis:entry colname="col2">0.76</oasis:entry>
         <oasis:entry colname="col3">0.61</oasis:entry>
       </oasis:row>
       <oasis:row rowsep="1">
         <oasis:entry colname="col1">RV</oasis:entry>
         <oasis:entry colname="col2">0.74</oasis:entry>
         <oasis:entry colname="col3">0.59</oasis:entry>
       </oasis:row>
       <oasis:row rowsep="1">
         <oasis:entry namest="col1" nameend="col3">CSI, threshold: <inline-formula><mml:math id="M68" display="inline"><mml:mn mathvariant="normal">0.5</mml:mn></mml:math></inline-formula> mm h<inline-formula><mml:math id="M69" display="inline"><mml:msup><mml:mi/><mml:mrow><mml:mo>-</mml:mo><mml:mn mathvariant="normal">1</mml:mn></mml:mrow></mml:msup></mml:math></inline-formula></oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">Dense</oasis:entry>
         <oasis:entry colname="col2">0.73</oasis:entry>
         <oasis:entry colname="col3">0.57</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">DenseRotation</oasis:entry>
         <oasis:entry colname="col2">0.73</oasis:entry>
         <oasis:entry colname="col3">0.57</oasis:entry>
       </oasis:row>
       <oasis:row rowsep="1">
         <oasis:entry colname="col1">RV</oasis:entry>
         <oasis:entry colname="col2">0.70</oasis:entry>
         <oasis:entry colname="col3">0.55</oasis:entry>
       </oasis:row>
       <oasis:row rowsep="1">
         <oasis:entry namest="col1" nameend="col3">CSI, threshold: <inline-formula><mml:math id="M70" display="inline"><mml:mn mathvariant="normal">1</mml:mn></mml:math></inline-formula> mm h<inline-formula><mml:math id="M71" display="inline"><mml:msup><mml:mi/><mml:mrow><mml:mo>-</mml:mo><mml:mn mathvariant="normal">1</mml:mn></mml:mrow></mml:msup></mml:math></inline-formula></oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">Dense</oasis:entry>
         <oasis:entry colname="col2">0.68</oasis:entry>
         <oasis:entry colname="col3">0.52</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">DenseRotation</oasis:entry>
         <oasis:entry colname="col2">0.68</oasis:entry>
         <oasis:entry colname="col3">0.51</oasis:entry>
       </oasis:row>
       <oasis:row rowsep="1">
         <oasis:entry colname="col1">RV</oasis:entry>
         <oasis:entry colname="col2">0.65</oasis:entry>
         <oasis:entry colname="col3">0.49</oasis:entry>
       </oasis:row>
       <oasis:row rowsep="1">
         <oasis:entry namest="col1" nameend="col3">CSI, threshold <inline-formula><mml:math id="M72" display="inline"><mml:mrow><mml:mo>=</mml:mo><mml:mn mathvariant="normal">5</mml:mn></mml:mrow></mml:math></inline-formula> mm h<inline-formula><mml:math id="M73" display="inline"><mml:msup><mml:mi/><mml:mrow><mml:mo>-</mml:mo><mml:mn mathvariant="normal">1</mml:mn></mml:mrow></mml:msup></mml:math></inline-formula></oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">Dense</oasis:entry>
         <oasis:entry colname="col2">0.42</oasis:entry>
         <oasis:entry colname="col3">0.24</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">DenseRotation</oasis:entry>
         <oasis:entry colname="col2">0.42</oasis:entry>
         <oasis:entry colname="col3">0.23</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">RV</oasis:entry>
         <oasis:entry colname="col2">0.39</oasis:entry>
         <oasis:entry colname="col3">0.22</oasis:entry>
       </oasis:row>
     </oasis:tbody>
   </oasis:tgroup></oasis:table></table-wrap>

      <p id="d1e2397">You can find more figures illustrating the models' efficiency for different
thresholds and lead times in Sect. S4.</p>
</sec>
<?pagebreak page1395?><sec id="Ch1.S5">
  <label>5</label><title>Discussion</title>
<sec id="Ch1.S5.SS1">
  <label>5.1</label><title>Model comparison</title>
      <p id="d1e2415">All tested models show significant skill over the trivial Eulerian
persistence over a lead time of at least 1 h. Yet a substantial loss of
skill over lead time is present for all analyzed events, as expected. We have
not disentangled the causes of that loss, but predictive uncertainty will
always result from errors in both the representation of field motion and the
total lack of representing precipitation formation, dynamics, and dissipation
in a framework of Lagrangian persistence. Many studies specify a lead time of
30 min as a predictability limit for convective structures with fast
dynamics of rainfall evolution
<xref ref-type="bibr" rid="bib1.bibx16 bib1.bibx19 bib1.bibx39 bib1.bibx43 bib1.bibx51" id="paren.79"/>. Our study
confirms these findings.</p>
      <p id="d1e2421">For the majority of analyzed events, there is a clear pattern that the Dense
group of optical flow models outperforms the operational RV nowcast product.
For the analyzed events and lead times, the differences between the Dense and
the DenseRotation models (or, in other words, between constant-vector and
semi-Lagrangian schemes) are negligible. The absolute difference in
performance between the Dense group models and the RV product appears to be
independent of rainfall intensity threshold and lead time
(Table <xref ref-type="table" rid="Ch1.T3"/>), which implies that the relative advance of the Dense
group models over the RV product increases both with lead time and<?pagebreak page1396?> rainfall
intensity threshold. A gain in performance for longer lead times by taking
into account more time steps from the past can be observed when comparing the
SparseSD model (looks back 5 min in time) against the Sparse model (looks
back 2 h in time).</p>
      <p id="d1e2426">Despite their skill over Eulerian persistence, the Sparse group models are
significantly outperformed by the Dense group models for all the analyzed
events and lead times. The reason for this behavior still remains unclear. It
could, in general, be a combination of errors introduced in corner tracking
and extrapolation as well as image warping as a surrogate for formal
advection. While the systematic identification of error sources will be
subject to future studies, we suspect that the local features
(corners) identified by the Shi–Tomasi corner detector might not be
representative of the overall motion of the precipitation field: the
detection focuses on features with high intensities and gradients, the motion
of which might not represent the dominant meso-<inline-formula><mml:math id="M74" display="inline"><mml:mi mathvariant="italic">γ</mml:mi></mml:math></inline-formula>-scale motion
patterns.</p>
      <?pagebreak page1397?><p id="d1e2436">There are a couple of possible directions for enhancing the performance for
longer lead times using the Dense group of models. A first is to use a
weighted average of velocity fields derived from radar images three (or more)
steps back in time (as done in RADVOR to compute the RV product). A second
option is to calculate separate velocity fields for low-and high-intensity
subregions of the rain field and advect these subregions separately (as proposed in <xref ref-type="bibr" rid="bib1.bibx18" id="altparen.80"/>) or find an optimal weighting procedure. A
third approach could be to optimize the use of various optical flow
constraints in order to improve the performance for longer lead times, as
proposed in <xref ref-type="bibr" rid="bib1.bibx17" id="text.81"/>, <xref ref-type="bibr" rid="bib1.bibx8" id="text.82"/>, or
<xref ref-type="bibr" rid="bib1.bibx31" id="text.83"/>. The flexibility of the rainymotion software
library allows users to incorporate such algorithms for benchmarking any
hypothesis, and, for example, implement different models or parameterizations for
different lead times. <xref ref-type="bibr" rid="bib1.bibx8" id="text.84"/> also showed a significant
performance increase for longer lead times by using NWP model winds for the
advection step. However, <xref ref-type="bibr" rid="bib1.bibx44" id="text.85"/> did not obtain any
improvement compared to RADVOR for longer lead times by incorporating NWP
model winds into the nowcasting procedure.</p>
</sec>
<sec id="Ch1.S5.SS2">
  <label>5.2</label><title>Advection schemes properties and effectiveness</title>
      <p id="d1e2466">Within the Dense group of models, we could not find any significant
difference between the performance and PSD of the constant-vector (Dense
model) and the semi-Lagrangian scheme (DenseRotation). That confirms findings
presented by <xref ref-type="bibr" rid="bib1.bibx17" id="text.86"/>, who found that the constant vector
and the modified semi-Lagrangian schemes have very similar power spectra,
presumably since they share the same interpolation procedure. The theoretical
superiority of the semi-Lagrangian scheme might, however, materialize for
other events with substantial, though persistent rotational motion. A more
comprehensive analysis should thus be undertaken in future studies.</p>
      <?pagebreak page1398?><p id="d1e2472">Interpolation is included in both the post-processing of image warping
(Sparse models) and in the computation of gridded nowcasts as part of the
Dense models. In general, such interpolation steps can lead to numerical
diffusion and thus to the degradation or loss of small-scale features
<xref ref-type="bibr" rid="bib1.bibx17" id="paren.87"/>. Yet we were mostly able to contain such adverse
effects for both the Sparse and the Dense group of models by carrying out
only one interpolation step for any forecast at a specific lead time. We
showed that numerical diffusion was negligible for lead times of up to 1 h
for any model; however, as has been shown in <xref ref-type="bibr" rid="bib1.bibx17" id="text.88"/>, for
longer lead times these effects can be significant, depending on the
implemented extrapolation technique.</p>
</sec>
<sec id="Ch1.S5.SS3">
  <label>5.3</label><title>Computational performance</title>
      <p id="d1e2489">Computational performance might be an important criterion for end users
aiming at frequent update cycles. We ran our nowcasting models on a standard
office PC with an Intel<sup>®</sup>
Core<sup>™</sup> i7-2600 CPU (eight cores, 3.4 GHz), and on
a standard laptop with an Intel<sup>®</sup>
Core<sup>™</sup> i5-7300HQ CPU (four cores, 2.5 GHz). The
average time for generating one nowcast for 1 h lead time (at 5 min
resolution) is 1.5–3 s for the Sparse group and 6–12 s for the Dense group. The Dense group is computationally more expensive due to
interpolation operations implemented for large grids (<inline-formula><mml:math id="M75" display="inline"><mml:mrow><mml:mn mathvariant="normal">900</mml:mn><mml:mo>×</mml:mo><mml:mn mathvariant="normal">900</mml:mn></mml:mrow></mml:math></inline-formula> pixels). There is also potential for increasing the computational
performance of the interpolation.</p>
</sec>
</sec>
<?pagebreak page1399?><sec id="Ch1.S6" sec-type="conclusions">
  <label>6</label><title>Summary and conclusions</title>
      <p id="d1e2525">Optical flow is a technique for
deriving a velocity field from consecutive images. It is widely used in image
analysis and has become increasingly popular in meteorological applications over
the past 20 years. In our study, we examined the performance of optical-flow-based models for radar-based precipitation nowcasting, as implemented in the
open-source rainymotion library, for a wide range of rainfall events
using radar data provided by the DWD.</p>
      <p id="d1e2528">Our benchmark experiments, including an operational baseline model (the RV
product provided by the DWD), show a firm basis for using optical flow in
radar-based precipitation nowcasting studies. For the majority of the
analyzed events, models from the Dense group outperform the operational
baseline. The Sparse group of models showed significant skill, yet they
generally performed more poorly than both the Dense group and the RV product. We
should, however, not prematurely discard the group of Sparse models before we
have not gained a better understanding of error sources with regard to the
tracking, extrapolation, and warping steps. Combining the warping procedure for the extrapolation step with the Dense
optical flow procedure for the tracking step (i.e., to advect corners
based on a “Dense” velocity field obtained by implementing one of the dense
optical flow techniques) might also be considered. This opens the way for merging two different model
development branches in the future releases of the rainymotion
library.</p>
      <p id="d1e2531">There is a clear and rapid model performance loss over lead time for events
with high rainfall intensities. This issue continues to be unresolved by
standard nowcasting approaches, but some improvement in this field may be
achieved by using strategies such as merging with NWP results and
stochastic modeling of rainfall field evolution. Admittedly, deterministic
nowcasts in a Lagrangian framework account neither for precipitation
intensity dynamics nor for the uncertainties in representing precipitation
field motion. At least for the latter, the rainymotion library
provides ample opportunities to experiment with forecast ensembles, based on
various tracking and extrapolation techniques. Furthermore, we suppose that
using new data-driven models based on machine and deep learning may increase
the performance by utilizing and structuring common patterns in the massive
archives of radar data.</p>
      <p id="d1e2534">We do not claim that the developed models will compete with well-established
and excessively tuned operational models for radar-based precipitation
nowcasting. Yet we hope our models may serve as an essential tool for
providing a fast, free, and open-source solution that can serve as a benchmark
for further model development and hypothesis testing – a benchmark that is
far more advanced than the conventional benchmark of Eulerian persistence.</p>
      <p id="d1e2538">Recent studies show that open-source community-driven software advances the
field of weather radar science <xref ref-type="bibr" rid="bib1.bibx21 bib1.bibx22" id="paren.89"/>.
Just a few months ago, the pySTEPS (<uri>https://pysteps.github.io</uri>, last
access: 28 March 2019) initiative was introduced “to develop and maintain an
easy to use, modular, free and open-source python framework for short-term
ensemble prediction systems”. As another piece of evidence of the dynamic
evolution of QPN research over the recent years, these developments could
pave the way for future synergies between the pySTEPS and rainymotion
projects – towards the availability of open, reproducible, and skillful
methods in quantitative precipitation nowcasting.</p>
</sec>

      
      </body>
    <back><notes notes-type="codedataavailability"><title>Code and data availability</title>

      <p id="d1e2551">The rainymotion library is free and open-source. It
is distributed under the MIT software license, which allows unrestricted use.
The source code is provided through a GitHub repository
<xref ref-type="bibr" rid="bib1.bibx3" id="paren.90"/>, the snapshot of the rainymotion v0.1 is also
available on Zenodo: <ext-link xlink:href="https://doi.org/10.5281/zenodo.2561583" ext-link-type="DOI">10.5281/zenodo.2561583</ext-link> <xref ref-type="bibr" rid="bib1.bibx2" id="paren.91"/>, and the
documentation is available on a website
(<uri>https://rainymotion.readthedocs.io</uri>, last access: 28 March 2019). The
DWD provided the sample data of the RY product, and they are distributed<?pagebreak page1400?> with
the rainymotion repository to provide a real-case and reproducible example
of precipitation nowcasting.</p>
  </notes><app-group>
        <supplementary-material position="anchor"><p id="d1e2566">The supplement related to this article is available online at: <inline-supplementary-material xlink:href="https://doi.org/10.5194/gmd-12-1387-2019-supplement" xlink:title="pdf">https://doi.org/10.5194/gmd-12-1387-2019-supplement</inline-supplementary-material>.</p></supplementary-material>
        </app-group><notes notes-type="authorcontribution"><title>Author contributions</title>

      <p id="d1e2575">GA performed the benchmark experiments, analyzed the data,
and wrote the paper. MH coordinated and supervised the work, analyzed
the data, and wrote the paper. TW assisted in the data retrieval and
analysis and shared her expertise in DWD radar products.</p>
  </notes><notes notes-type="competinginterests"><title>Competing interests</title>

      <p id="d1e2581">The authors declare that they have no conflict of
interest.</p>
  </notes><ack><title>Acknowledgements</title><p id="d1e2587">Georgy Ayzel was financially supported by Geo.X, the Research Network for
Geosciences in Berlin and Potsdam. The authors thank Loris Foresti, Seppo
Pulkkinen, and Remko Uijlenhoet for their constructive comments and
suggestions that helped to improve the paper. We acknowledge the support of
Deutsche Forschungsgemeinschaft (German Research Foundation) and the Open Access
Publication Fund of Potsdam University.</p></ack><notes notes-type="reviewstatement"><title>Review statement</title>

      <p id="d1e2593">This paper was edited by Axel Lauer and reviewed by Seppo
Pulkkinen, Remko Uijlenhoet, and Loris Foresti.</p>
  </notes><ref-list>
    <title>References</title>

      <ref id="bib1.bibx1"><label>Austin and Bellon(1974)</label><mixed-citation>Austin, G. L. and Bellon, A.: The use of digital weather radar records for
short-term precipitation forecasting, Q. J. Roy. Meteor. Soc., 100,
658–664, <ext-link xlink:href="https://doi.org/10.1002/qj.49710042612" ext-link-type="DOI">10.1002/qj.49710042612</ext-link>, 1974.</mixed-citation></ref>
      <ref id="bib1.bibx2"><label>Ayzel(2019)</label><mixed-citation>Ayzel, G.: hydrogo/rainymotion: rainymotion v0.1, Version v0.1, Zenodo,
<ext-link xlink:href="https://doi.org/10.5281/zenodo.2561583" ext-link-type="DOI">10.5281/zenodo.2561583</ext-link>, 2019.</mixed-citation></ref>
      <ref id="bib1.bibx3"><label>Ayzel et al.(2019)</label><mixed-citation>Ayzel, G., Heistermann, M., and Winterrath, T.: rainymotion: python library
for radar-based precipitation nowcasting based on optical flow techniques,
available at: <uri>https://github.com/hydrogo/rainymotion</uri> (last access:
28 March 2019), 2019.</mixed-citation></ref>
      <ref id="bib1.bibx4"><label>Bauer et al.(2015)</label><mixed-citation>Bauer, P., Thorpe, A., and Brunet, G.: The quiet revolution of numerical
weather prediction, Nature, 525, 47–55, <ext-link xlink:href="https://doi.org/10.1038/nature14956" ext-link-type="DOI">10.1038/nature14956</ext-link>, 2015.</mixed-citation></ref>
      <ref id="bib1.bibx5"><label>Bellerby(2006)</label><mixed-citation>Bellerby, T. J.: High-resolution 2-D cloud-top advection from geostationary
satellite imagery, IEEE T. Geosci. Remote, 44, 3639–3648,
<ext-link xlink:href="https://doi.org/10.1109/TGRS.2006.881117" ext-link-type="DOI">10.1109/TGRS.2006.881117</ext-link>, 2006.</mixed-citation></ref>
      <ref id="bib1.bibx6"><label>Berenguer et al.(2011)</label><mixed-citation>Berenguer, M., Sempere-Torres, D., and Pegram, G. G. S.: SBMcast – An
ensemble nowcasting technique to assess the uncertainty in rainfall forecasts
by Lagrangian extrapolation, J. Hydrol., 404, 226–240,
<ext-link xlink:href="https://doi.org/10.1016/j.jhydrol.2011.04.033" ext-link-type="DOI">10.1016/j.jhydrol.2011.04.033</ext-link>, 2011.</mixed-citation></ref>
      <ref id="bib1.bibx7"><label>Berenguer et al.(2012)</label><mixed-citation>Berenguer, M., Surcel, M., Zawadzki, I., Xue, M., Kong, F., Berenguer, M.,
Surcel, M., Zawadzki, I., Xue, M., and Kong, F.: The Diurnal Cycle of
Precipitation from Continental Radar Mosaics and Numerical Weather Prediction
Models. Part II: Intercomparison among Numerical Models and with Nowcasting,
Mon. Weather Rev., 140, 2689–2705, <ext-link xlink:href="https://doi.org/10.1175/MWR-D-11-00181.1" ext-link-type="DOI">10.1175/MWR-D-11-00181.1</ext-link>, 2012.</mixed-citation></ref>
      <ref id="bib1.bibx8"><label>Bowler et al.(2004)</label><mixed-citation>Bowler, N. E., Pierce, C. E., and Seed, A.: Development of a precipitation
nowcasting algorithm based upon optical flow techniques, J. Hydrol., 288,
74–91, <ext-link xlink:href="https://doi.org/10.1016/j.jhydrol.2003.11.011" ext-link-type="DOI">10.1016/j.jhydrol.2003.11.011</ext-link>, 2004.</mixed-citation></ref>
      <ref id="bib1.bibx9"><label>Bowler et al.(2006)</label><mixed-citation>Bowler, N. E., Pierce, C. E., and Seed, A. W.: STEPS: A probabilistic
precipitation forecasting scheme which merges an extrapolation nowcast with
downscaled NWP, Q. J. Roy. Meteor. Soc., 132, 2127–2155,
<ext-link xlink:href="https://doi.org/10.1256/qj.04.100" ext-link-type="DOI">10.1256/qj.04.100</ext-link>, 2006.</mixed-citation></ref>
      <ref id="bib1.bibx10"><label>Bradski and Kaehler(2008)</label><mixed-citation>
Bradski, G. and Kaehler, A.: Learning OpenCV: Computer vision with the OpenCV
library, O'Reilly Media, Inc., 2008.</mixed-citation></ref>
      <ref id="bib1.bibx11"><label>Brox et al.(2004)Brox, Bruhn, Papenberg, and Weickert</label><mixed-citation>
Brox, T., Bruhn, A., Papenberg, N., and Weickert, J.: High accuracy optical
flow estimation based on a theory for warping, in: Computer Vision – ECCV
2004. Lecture Notes in ComputerScience, edited by: Pajdla, T. and Matas, J.,
Springer, Berlin, 3024, 25–36, 2004.</mixed-citation></ref>
      <ref id="bib1.bibx12"><label>Bruhn et al.(2005a)</label><mixed-citation>Bruhn, A., Weickert, J., Feddern, C., Kohlberger, T., and Schnörr, C.:
Variational optical flow computation in real time, IEEE T. Image Process.,
14, 608–615, <ext-link xlink:href="https://doi.org/10.1109/TIP.2005.846018" ext-link-type="DOI">10.1109/TIP.2005.846018</ext-link>, 2005a.</mixed-citation></ref>
      <ref id="bib1.bibx13"><label>Bruhn et al.(2005b)</label><mixed-citation>
Bruhn, A., Weickert, J., and Schnörr, C.: Lucas/Kanade meets
Horn/Schunck: Combining local and global optic flow methods, Int. J. Comput.
Vision, 61, 211–231, 2005b.</mixed-citation></ref>
      <ref id="bib1.bibx14"><label>Cheung and Yeung(2012)</label><mixed-citation>Cheung, P. and Yeung, H. Y.: Application of optical-flow technique to
significant convection nowcast for terminal areas in Hong Kong, in: The 3rd
WMO International Symposium on Nowcasting and Very Short-Range Forecasting
(WSN12), Rio de Janeiro, Brazil, 6–10 August 2012, Reprint 1025, 10 pp.,
available at: <uri>http://www.hko.gov.hk/publica/reprint/r1025.pdf</uri> (last
access: 28 March 2019), 2012.</mixed-citation></ref>
      <ref id="bib1.bibx15"><?xmltex \def\ref@label{{Farneb{\"{a}}ck(2003)}}?><label>Farnebäck(2003)</label><mixed-citation>Farnebäck, G.: Two-frame motion estimation based on polynomial
expansion, in: Image Analysis, SCIA 2003, Lecture Notes in Computer Science,
edited by: Bigun, J. and Gustavsson, T., Springer, Berlin, Heidelberg, 2749,
363–370, <ext-link xlink:href="https://doi.org/10.1007/3-540-45103-x_50" ext-link-type="DOI">10.1007/3-540-45103-x_50</ext-link>, 2003.</mixed-citation></ref>
      <ref id="bib1.bibx16"><label>Foresti et al.(2016)</label><mixed-citation>Foresti, L., Reyniers, M., Seed, A., and Delobbe, L.: Development and
verification of a real-time stochastic precipitation nowcasting system for
urban hydrology in Belgium, Hydrol. Earth Syst. Sci., 20, 505–527,
<ext-link xlink:href="https://doi.org/10.5194/hess-20-505-2016" ext-link-type="DOI">10.5194/hess-20-505-2016</ext-link>, 2016.</mixed-citation></ref>
      <ref id="bib1.bibx17"><label>Germann and Zawadzki(2002)</label><mixed-citation>Germann, U. and Zawadzki, I.: Scale-Dependence of the Predictability of
Precipitation from Continental Radar Images. Part I: Description of the
Methodology, Mon. Weather Rev., 130, 2859–2873,
<ext-link xlink:href="https://doi.org/10.1175/1520-0493(2002)130&lt;2859:SDOTPO&gt;2.0.CO;2" ext-link-type="DOI">10.1175/1520-0493(2002)130&lt;2859:SDOTPO&gt;2.0.CO;2</ext-link>, 2002.</mixed-citation></ref>
      <ref id="bib1.bibx18"><label>Golding(1998)</label><mixed-citation>Golding, B. W.: Nimrod: A system for generating automated very short range
forecasts, Meteorol. Appl., 5, 1–16, <ext-link xlink:href="https://doi.org/10.1017/S1350482798000577" ext-link-type="DOI">10.1017/S1350482798000577</ext-link>, 1998.</mixed-citation></ref>
      <ref id="bib1.bibx19"><label>Grecu and Krajewski(2000)</label><mixed-citation>Grecu, M. and Krajewski, W. F.: A large-sample investigation of statistical
procedures for radar-based short-term quantitative precipitation
forecasting, J. Hydrol., 239, 69–84, <ext-link xlink:href="https://doi.org/10.1016/S0022-1694(00)00360-7" ext-link-type="DOI">10.1016/S0022-1694(00)00360-7</ext-link>,
2000.</mixed-citation></ref>
      <ref id="bib1.bibx20"><label>Heistermann et al.(2013)</label><mixed-citation>Heistermann, M., Jacobi, S., and Pfaff, T.: Technical Note: An open source
library for processing weather radar data (<italic>wradlib</italic>), Hydrol. Earth
Syst. Sci., 17, 863–871, <ext-link xlink:href="https://doi.org/10.5194/hess-17-863-2013" ext-link-type="DOI">10.5194/hess-17-863-2013</ext-link>, 2013.</mixed-citation></ref>
      <ref id="bib1.bibx21"><label>Heistermann et al.(2015a)</label><mixed-citation>Heistermann, M., Collis, S., Dixon, M. J., Giangrande, S., Helmus, J. J.,
Kelley, B., Koistinen, J., Michelson, D. B., Peura, M., Pfaff,<?pagebreak page1401?> T., and Wolff,
D. B.: The emergence of open-source software for the weather radar
community, B. Am. Meteorol. Soc., 96, 117–128,
<ext-link xlink:href="https://doi.org/10.1175/BAMS-D-13-00240.1" ext-link-type="DOI">10.1175/BAMS-D-13-00240.1</ext-link>, 2015a.</mixed-citation></ref>
      <ref id="bib1.bibx22"><label>Heistermann et al.(2015b)</label><mixed-citation>Heistermann, M., Collis, S., Dixon, M. J., Helmus, J. J., Henja, A.,
Michelson, D. B., and Pfaff, T.: An open virtual machine for cross-platform
weather radar science, B. Am. Meteorol. Soc., 96, 1641–1645,
<ext-link xlink:href="https://doi.org/10.1175/BAMS-D-14-00220.1" ext-link-type="DOI">10.1175/BAMS-D-14-00220.1</ext-link>, 2015b.</mixed-citation></ref>
      <ref id="bib1.bibx23"><label>Horn and Schunck(1981)</label><mixed-citation>
Horn, B. K. and Schunck, B. G.: Determining optical flow, Artif. Intell., 17,
185–203, 1981.</mixed-citation></ref>
      <ref id="bib1.bibx24"><label>Hunter(2007)</label><mixed-citation>
Hunter, J. D.: Matplotlib: A 2D graphics environment, Comput. Sci. Eng., 9,
90–95, 2007.</mixed-citation></ref>
      <ref id="bib1.bibx25"><label>Jensen et al.(2015)</label><mixed-citation>Jensen, D. G., Petersen, C., and Rasmussen, M. R.: Assimilation of
radar-based nowcast into a HIRLAM NWP model, Meteorol. Appl., 22, 485–494,
<ext-link xlink:href="https://doi.org/10.1002/met.1479" ext-link-type="DOI">10.1002/met.1479</ext-link>, 2015.</mixed-citation></ref>
      <ref id="bib1.bibx26"><label>Jones et al.(2018)</label><mixed-citation>Jones, E., Oliphant, T., and Peterson, P.: SciPy: open source scientific
tools for Python, available at: <uri>https://scipy.org/</uri>, last access:
29 June 2018.</mixed-citation></ref>
      <ref id="bib1.bibx27"><label>Kroeger et al.(2016)</label><mixed-citation>Kroeger, T., Timofte, R., Dai, D., and Van Gool, L.: Fast optical flow
using dense inverse search, in: Computer Vision – ECCV 2016. ECCV 2016.
Lecture Notes in Computer Science, edited by: Leibe, B., Matas, J., Sebe, N.,
and Welling, M., Springer, Cham, 9908, 471–488,
<ext-link xlink:href="https://doi.org/10.1007/978-3-319-46493-0_29" ext-link-type="DOI">10.1007/978-3-319-46493-0_29</ext-link>, 2016.</mixed-citation></ref>
      <ref id="bib1.bibx28"><label>Lin et al.(2005)</label><mixed-citation>Lin, C., Vasić, S., Kilambi, A., Turner, B., and Zawadzki, I.:
Precipitation forecast skill of numerical weather prediction models and
radar nowcasts, Geophys. Res. Lett., 32, L14801, <ext-link xlink:href="https://doi.org/10.1029/2005GL023451" ext-link-type="DOI">10.1029/2005GL023451</ext-link>,
2005.</mixed-citation></ref>
      <ref id="bib1.bibx29"><label>Liu et al.(2015)</label><mixed-citation>Liu, Y., Xi, D. G., Li, Z. L., and Hong, Y.: A new methodology for
pixel-quantitative precipitation nowcasting using a pyramid Lucas Kanade
optical flow approach, J. Hydrol., 529, 354–364,
<ext-link xlink:href="https://doi.org/10.1016/j.jhydrol.2015.07.042" ext-link-type="DOI">10.1016/j.jhydrol.2015.07.042</ext-link>, 2015.</mixed-citation></ref>
      <ref id="bib1.bibx30"><label>Lucas and Kanade(1981)</label><mixed-citation>
Lucas, B. D. and Kanade, T.: An iterative image Registration Technique with
an Application to Stereo Vision, in: Proceedings DARPA Image Understanding
Workshop, Vancouver, BC, Canada, 24–28 August 1981, 674–679, 1981</mixed-citation></ref>
      <ref id="bib1.bibx31"><label>Mecklenburg et al.(2000)</label><mixed-citation>Mecklenburg, S., Joss, J., and Schmid, W.: Improving the nowcasting of
precipitation in an Alpine region with an enhanced radar echo tracking
algorithm, J. Hydrol., 239, 46–68, <ext-link xlink:href="https://doi.org/10.1016/S0022-1694(00)00352-8" ext-link-type="DOI">10.1016/S0022-1694(00)00352-8</ext-link>,
2000.</mixed-citation></ref>
      <ref id="bib1.bibx32"><label>Mueller et al.(2003)</label><mixed-citation>Mueller, C. M., Axen, T. S., Oberts, R. R., Ilson, J. W., Etancourt, T. B.,
Ettling, S. D., and Ien, N. O.: NCAR Auto-Nowcast System, Weather
Forecast., 18, 545–561, <ext-link xlink:href="https://doi.org/10.1175/1520-0434(2003)018&lt;0545:NAS&gt;2.0.CO;2" ext-link-type="DOI">10.1175/1520-0434(2003)018&lt;0545:NAS&gt;2.0.CO;2</ext-link>,
2003.</mixed-citation></ref>
      <ref id="bib1.bibx33"><label>Oliphant(2006)</label><mixed-citation>
Oliphant, T. E.: A guide to NumPy, vol. 1, Trelgol Publishing, USA, 2006.</mixed-citation></ref>
      <ref id="bib1.bibx34"><label>Pedregosa et al.(2011)</label><mixed-citation>
Pedregosa, F., Varoquaux, G., Gramfort, A., Michel, V., Thirion, B., Grisel,
O., Blondel, M., Prettenhofer, P., Weiss, R., Dubourg, V., Vanderplas, J.,
Passos, A., and Cournapeau D.: Scikit-learn: Machine learning in Python, J.
Mach. Learn. Res., 12, 2825–2830, 2011.</mixed-citation></ref>
      <ref id="bib1.bibx35"><label>Reyniers(2008)</label><mixed-citation>Reyniers, M.: Quantitative precipitation forecasts based on radar
observations: Principles, algorithms and operational systems, Institut Royal
Météorologique de Belgique, available at:
<uri>https://www.meteo.be/meteo/download/fr/3040165/pdf/rmi_scpub-1261.pdf</uri>
(last access: 28 March 2019), 2008.</mixed-citation></ref>
      <ref id="bib1.bibx36"><label>Ruzanski et al.(2011)</label><mixed-citation>Ruzanski, E., Chandrasekar, V., and Wang, Y.: The CASA nowcasting system,
J. Atmos. Ocean. Tech., 28, 640–655, <ext-link xlink:href="https://doi.org/10.1175/2011JTECHA1496.1" ext-link-type="DOI">10.1175/2011JTECHA1496.1</ext-link>, 2011.</mixed-citation></ref>
      <ref id="bib1.bibx37"><label>Schneider and Eberly(2003)</label><mixed-citation>Schneider, P. J. and Eberly, D. H.: Geometric tools for computer graphics,
Boston, available at:
<uri>https://www.sciencedirect.com/science/book/9781558605947</uri> (last access:
28 March 2019), 2003.</mixed-citation></ref>
      <ref id="bib1.bibx38"><label>Shi and Tomasi(1994)</label><mixed-citation>Shi, J. and Tomasi, C.: Good features to track, in: 1994 Proceedings of
IEEE Conference on Computer Vision and Pattern Recognition, Seattle, WA, USA,
USA, 21–23 June 1994, IEEE, 593–600, <ext-link xlink:href="https://doi.org/10.1109/CVPR.1994.323794" ext-link-type="DOI">10.1109/CVPR.1994.323794</ext-link>, 1994.</mixed-citation></ref>
      <ref id="bib1.bibx39"><label>Thorndahl et al.(2017)</label><mixed-citation>Thorndahl, S., Einfalt, T., Willems, P., Nielsen, J. E., ten Veldhuis, M.-C.,
Arnbjerg-Nielsen, K., Rasmussen, M. R., and Molnar, P.: Weather radar
rainfall data in urban hydrology, Hydrol. Earth Syst. Sci., 21, 1359–1380,
<ext-link xlink:href="https://doi.org/10.5194/hess-21-1359-2017" ext-link-type="DOI">10.5194/hess-21-1359-2017</ext-link>, 2017.</mixed-citation></ref>
      <ref id="bib1.bibx40"><label>Van der Walt et al.(2014)</label><mixed-citation>Van der Walt, S., Schönberger, J. L., Nunez-Iglesias, J., Boulogne, F.,
Warner, J. D., Yager, N., Gouillart, E., and Yu, T.: scikit-image: image
processing in Python, PeerJ, 2, e453, <ext-link xlink:href="https://doi.org/10.7717/peerj.453" ext-link-type="DOI">10.7717/peerj.453</ext-link>, 2014.</mixed-citation></ref>
      <ref id="bib1.bibx41"><label>Weinzaepfel et al.(2013)</label><mixed-citation>Weinzaepfel, P., Revaud, J., Harchaoui, Z., and Schmid, C.: DeepFlow: Large
Displacement Optical Flow with Deep Matching, in: 2013 IEEE International
Conference on Computer Vision, Sydney, NSW, Australia, 1–8 December 2013,
IEEE, 1385–1392, <ext-link xlink:href="https://doi.org/10.1109/ICCV.2013.175" ext-link-type="DOI">10.1109/ICCV.2013.175</ext-link>, 2013.</mixed-citation></ref>
      <ref id="bib1.bibx42"><label>Welch(1967)</label><mixed-citation>
Welch, P.: The use of fast Fourier transform for the estimation of power
spectra: a method based on time averaging over short, modified periodograms,
IEEE T. Acoust. Speech, 15, 70–73, 1967.</mixed-citation></ref>
      <ref id="bib1.bibx43"><label>Wilson et al.(1998)</label><mixed-citation>Wilson, J. W., Crook, N. A., Mueller, C. K., Sun, J., and Dixon, M.:
Nowcasting Thunderstorms: A Status Report, B. Am. Meteorol. Soc., 79,
2079–2099, <ext-link xlink:href="https://doi.org/10.1175/1520-0477(1998)079&lt;2079:NTASR&gt;2.0.CO;2" ext-link-type="DOI">10.1175/1520-0477(1998)079&lt;2079:NTASR&gt;2.0.CO;2</ext-link>, 1998.</mixed-citation></ref>
      <ref id="bib1.bibx44"><label>Winterrath and Rosenow(2007)</label><mixed-citation>Winterrath, T. and Rosenow, W.: A new module for the tracking of
radar-derived precipitation with model-derived winds, Adv. Geosci., 10,
77–83, <ext-link xlink:href="https://doi.org/10.5194/adgeo-10-77-2007" ext-link-type="DOI">10.5194/adgeo-10-77-2007</ext-link>, 2007.</mixed-citation></ref>
      <ref id="bib1.bibx45"><label>Winterrath et al.(2012)</label><mixed-citation>Winterrath, T., Rosenow, W., and Weigl, E.: On the DWD quantitative
precipitation analysis and nowcasting system for real-time application in
German flood risk management, in: Weather Radar and Hydrology (Proceedings
of a symposium held in Exeter, UK, April 2011), IAHS Publ. 351, 323–329,
available at:
<uri>https://www.dwd.de/DE/leistungen/radolan/radolan_info/Winterrath_German_flood_risk_management_pdf.pdf? blob=publicationFile&amp;v=4</uri>
(last access: 28 March 2019), 2012.</mixed-citation></ref>
      <ref id="bib1.bibx46"><label>Wolberg(1990)</label><mixed-citation>
Wolberg, G.: Digital Image Warping, IEEE Computer Society Press, Los
Alamitos, CA, USA, 1990.</mixed-citation></ref>
      <ref id="bib1.bibx47"><label>Wong et al.(2009)</label><mixed-citation>Wong, W. K., Yeung, L. H. Y., Wang, Y. C., and Chen, M.: Towards the blending
of NWP with nowcast – Operation experience in B08FDP, WMO Symposium on
Nowcasting, 30 August–4 September 2009, Whistler, B.C., Canada, available
at: <uri>http://my.hko.gov.hk/publica/reprint/r844.pdf</uri> (last access:
28 March 2019), 2009.</mixed-citation></ref>
      <ref id="bib1.bibx48"><label>Woo and Wong(2017)</label><mixed-citation>Woo, W.-C. and Wong, W.-K.: Operational Application of Optical Flow
Techniques to Radar-Based Rainfall Nowcasting, Atmosphere, 8, 48,
<ext-link xlink:href="https://doi.org/10.3390/atmos8030048" ext-link-type="DOI">10.3390/atmos8030048</ext-link>, 2017.</mixed-citation></ref>
      <ref id="bib1.bibx49"><label>Wulff and Black(2015)</label><mixed-citation>
Wulff, J. and Black, M. J.: Efficient Sparse-to-Dense Optical Flow Estimation
Using a Learned Basis and Layers, in: IEEE Conf. on<?pagebreak page1402?> Computer Vision and
Pattern Recognition (CVPR 2015), Boston, MA, USA, 7–12 June 2015, 120–130,
2015.</mixed-citation></ref>
      <ref id="bib1.bibx50"><label>Yeung et al.(2009)</label><mixed-citation>Yeung, L. H. Y., Wong, W. K., Chan, P. K. Y., Lai, E. S. T., Yeung, L. H. Y.,
Wong, W. K., Chan, P. K. Y., and Lai, E. S. T.: Applications of the Hong Kong
Observatory nowcasting system SWIRLS-2 in support of the 2008 Beijing Olympic
Games, in: WMO Symposium on Nowcasting, 30 August–4 September 2009,
Whistler, B.C., Canada, available at:
<uri>http://my.hko.gov.hk/publica/reprint/r843.pdf</uri> (last access: 28 March 2019), 2009.
</mixed-citation></ref><?xmltex \hack{\newpage}?>
      <ref id="bib1.bibx51"><label>Zahraei et al.(2012)</label><mixed-citation>Zahraei, A., lin Hsu, K., Sorooshian, S., Gourley, J. J., Lakshmanan, V.,
Hong, Y., and Bellerby, T.: Quantitative Precipitation Nowcasting: A
Lagrangian Pixel-Based Approach, Atmos. Res., 118, 418–434,
<ext-link xlink:href="https://doi.org/10.1016/j.atmosres.2012.07.001" ext-link-type="DOI">10.1016/j.atmosres.2012.07.001</ext-link>, 2012.</mixed-citation></ref>
      <ref id="bib1.bibx52"><label>Zahraei et al.(2013)</label><mixed-citation>Zahraei, A., lin Hsu, K., Sorooshian, S., Gourley, J. J., Hong, Y., and
Behrangi, A.: Short-term quantitative precipitation forecasting using an
object-based approach, J. Hydrol., 483, 1–15,
<ext-link xlink:href="https://doi.org/10.1016/j.jhydrol.2012.09.052" ext-link-type="DOI">10.1016/j.jhydrol.2012.09.052</ext-link>, 2013.</mixed-citation></ref>

  </ref-list></back>
    <!--<article-title-html>Optical flow models as an open benchmark for radar-based precipitation nowcasting (rainymotion v0.1)</article-title-html>
<abstract-html><p>Quantitative precipitation nowcasting (QPN) has become an
essential technique in various application contexts, such as early warning or
urban sewage control. A common heuristic prediction approach is to track the
motion of precipitation features from a sequence of weather radar images and
then to displace the precipitation field to the imminent future (minutes to
hours) based on that motion, assuming that the intensity of the features
remains constant (<q>Lagrangian persistence</q>). In that context, <q>optical
flow</q> has become one of the most popular tracking techniques. Yet the
present landscape of computational QPN models still struggles with producing
open software implementations. Focusing on this gap, we have developed and
extensively benchmarked a stack of models based on different optical flow
algorithms for the tracking step and a set of parsimonious extrapolation
procedures based on image warping and advection. We demonstrate that these
models provide skillful predictions comparable with or even superior to
state-of-the-art operational software. Our software library (<q>rainymotion</q>)
for precipitation nowcasting is written in the Python programming language
and openly available at GitHub (<a href="https://github.com/hydrogo/rainymotion" target="_blank">https://github.com/hydrogo/rainymotion</a>,
Ayzel et al., 2019). That way,
the library may serve as a tool for providing fast, free, and transparent
solutions that could serve as a benchmark for further model development and
hypothesis testing – a benchmark that is far more advanced than the
conventional benchmark of Eulerian persistence commonly used in QPN
verification experiments.</p></abstract-html>
<ref-html id="bib1.bib1"><label>Austin and Bellon(1974)</label><mixed-citation>
Austin, G. L. and Bellon, A.: The use of digital weather radar records for
short-term precipitation forecasting, Q. J. Roy. Meteor. Soc., 100,
658–664, <a href="https://doi.org/10.1002/qj.49710042612" target="_blank">https://doi.org/10.1002/qj.49710042612</a>, 1974.
</mixed-citation></ref-html>
<ref-html id="bib1.bib2"><label>Ayzel(2019)</label><mixed-citation>
Ayzel, G.: hydrogo/rainymotion: rainymotion v0.1, Version v0.1, Zenodo,
<a href="https://doi.org/10.5281/zenodo.2561583" target="_blank">https://doi.org/10.5281/zenodo.2561583</a>, 2019.
</mixed-citation></ref-html>
<ref-html id="bib1.bib3"><label>Ayzel et al.(2019)</label><mixed-citation>
Ayzel, G., Heistermann, M., and Winterrath, T.: rainymotion: python library
for radar-based precipitation nowcasting based on optical flow techniques,
available at: <a href="https://github.com/hydrogo/rainymotion" target="_blank">https://github.com/hydrogo/rainymotion</a> (last access:
28 March 2019), 2019.
</mixed-citation></ref-html>
<ref-html id="bib1.bib4"><label>Bauer et al.(2015)</label><mixed-citation>
Bauer, P., Thorpe, A., and Brunet, G.: The quiet revolution of numerical
weather prediction, Nature, 525, 47–55, <a href="https://doi.org/10.1038/nature14956" target="_blank">https://doi.org/10.1038/nature14956</a>, 2015.
</mixed-citation></ref-html>
<ref-html id="bib1.bib5"><label>Bellerby(2006)</label><mixed-citation>
Bellerby, T. J.: High-resolution 2-D cloud-top advection from geostationary
satellite imagery, IEEE T. Geosci. Remote, 44, 3639–3648,
<a href="https://doi.org/10.1109/TGRS.2006.881117" target="_blank">https://doi.org/10.1109/TGRS.2006.881117</a>, 2006.
</mixed-citation></ref-html>
<ref-html id="bib1.bib6"><label>Berenguer et al.(2011)</label><mixed-citation>
Berenguer, M., Sempere-Torres, D., and Pegram, G. G. S.: SBMcast – An
ensemble nowcasting technique to assess the uncertainty in rainfall forecasts
by Lagrangian extrapolation, J. Hydrol., 404, 226–240,
<a href="https://doi.org/10.1016/j.jhydrol.2011.04.033" target="_blank">https://doi.org/10.1016/j.jhydrol.2011.04.033</a>, 2011.
</mixed-citation></ref-html>
<ref-html id="bib1.bib7"><label>Berenguer et al.(2012)</label><mixed-citation>
Berenguer, M., Surcel, M., Zawadzki, I., Xue, M., Kong, F., Berenguer, M.,
Surcel, M., Zawadzki, I., Xue, M., and Kong, F.: The Diurnal Cycle of
Precipitation from Continental Radar Mosaics and Numerical Weather Prediction
Models. Part II: Intercomparison among Numerical Models and with Nowcasting,
Mon. Weather Rev., 140, 2689–2705, <a href="https://doi.org/10.1175/MWR-D-11-00181.1" target="_blank">https://doi.org/10.1175/MWR-D-11-00181.1</a>, 2012.
</mixed-citation></ref-html>
<ref-html id="bib1.bib8"><label>Bowler et al.(2004)</label><mixed-citation>
Bowler, N. E., Pierce, C. E., and Seed, A.: Development of a precipitation
nowcasting algorithm based upon optical flow techniques, J. Hydrol., 288,
74–91, <a href="https://doi.org/10.1016/j.jhydrol.2003.11.011" target="_blank">https://doi.org/10.1016/j.jhydrol.2003.11.011</a>, 2004.
</mixed-citation></ref-html>
<ref-html id="bib1.bib9"><label>Bowler et al.(2006)</label><mixed-citation>
Bowler, N. E., Pierce, C. E., and Seed, A. W.: STEPS: A probabilistic
precipitation forecasting scheme which merges an extrapolation nowcast with
downscaled NWP, Q. J. Roy. Meteor. Soc., 132, 2127–2155,
<a href="https://doi.org/10.1256/qj.04.100" target="_blank">https://doi.org/10.1256/qj.04.100</a>, 2006.
</mixed-citation></ref-html>
<ref-html id="bib1.bib10"><label>Bradski and Kaehler(2008)</label><mixed-citation>
Bradski, G. and Kaehler, A.: Learning OpenCV: Computer vision with the OpenCV
library, O'Reilly Media, Inc., 2008.
</mixed-citation></ref-html>
<ref-html id="bib1.bib11"><label>Brox et al.(2004)Brox, Bruhn, Papenberg, and Weickert</label><mixed-citation>
Brox, T., Bruhn, A., Papenberg, N., and Weickert, J.: High accuracy optical
flow estimation based on a theory for warping, in: Computer Vision – ECCV
2004. Lecture Notes in ComputerScience, edited by: Pajdla, T. and Matas, J.,
Springer, Berlin, 3024, 25–36, 2004.
</mixed-citation></ref-html>
<ref-html id="bib1.bib12"><label>Bruhn et al.(2005a)</label><mixed-citation>
Bruhn, A., Weickert, J., Feddern, C., Kohlberger, T., and Schnörr, C.:
Variational optical flow computation in real time, IEEE T. Image Process.,
14, 608–615, <a href="https://doi.org/10.1109/TIP.2005.846018" target="_blank">https://doi.org/10.1109/TIP.2005.846018</a>, 2005a.
</mixed-citation></ref-html>
<ref-html id="bib1.bib13"><label>Bruhn et al.(2005b)</label><mixed-citation>
Bruhn, A., Weickert, J., and Schnörr, C.: Lucas/Kanade meets
Horn/Schunck: Combining local and global optic flow methods, Int. J. Comput.
Vision, 61, 211–231, 2005b.
</mixed-citation></ref-html>
<ref-html id="bib1.bib14"><label>Cheung and Yeung(2012)</label><mixed-citation>
Cheung, P. and Yeung, H. Y.: Application of optical-flow technique to
significant convection nowcast for terminal areas in Hong Kong, in: The 3rd
WMO International Symposium on Nowcasting and Very Short-Range Forecasting
(WSN12), Rio de Janeiro, Brazil, 6–10 August 2012, Reprint 1025, 10 pp.,
available at: <a href="http://www.hko.gov.hk/publica/reprint/r1025.pdf" target="_blank">http://www.hko.gov.hk/publica/reprint/r1025.pdf</a> (last
access: 28 March 2019), 2012.
</mixed-citation></ref-html>
<ref-html id="bib1.bib15"><label>Farnebäck(2003)</label><mixed-citation>
Farnebäck, G.: Two-frame motion estimation based on polynomial
expansion, in: Image Analysis, SCIA 2003, Lecture Notes in Computer Science,
edited by: Bigun, J. and Gustavsson, T., Springer, Berlin, Heidelberg, 2749,
363–370, <a href="https://doi.org/10.1007/3-540-45103-x_50" target="_blank">https://doi.org/10.1007/3-540-45103-x_50</a>, 2003.
</mixed-citation></ref-html>
<ref-html id="bib1.bib16"><label>Foresti et al.(2016)</label><mixed-citation>
Foresti, L., Reyniers, M., Seed, A., and Delobbe, L.: Development and
verification of a real-time stochastic precipitation nowcasting system for
urban hydrology in Belgium, Hydrol. Earth Syst. Sci., 20, 505–527,
<a href="https://doi.org/10.5194/hess-20-505-2016" target="_blank">https://doi.org/10.5194/hess-20-505-2016</a>, 2016.
</mixed-citation></ref-html>
<ref-html id="bib1.bib17"><label>Germann and Zawadzki(2002)</label><mixed-citation>
Germann, U. and Zawadzki, I.: Scale-Dependence of the Predictability of
Precipitation from Continental Radar Images. Part I: Description of the
Methodology, Mon. Weather Rev., 130, 2859–2873,
<a href="https://doi.org/10.1175/1520-0493(2002)130&lt;2859:SDOTPO&gt;2.0.CO;2" target="_blank">https://doi.org/10.1175/1520-0493(2002)130&lt;2859:SDOTPO&gt;2.0.CO;2</a>, 2002.
</mixed-citation></ref-html>
<ref-html id="bib1.bib18"><label>Golding(1998)</label><mixed-citation>
Golding, B. W.: Nimrod: A system for generating automated very short range
forecasts, Meteorol. Appl., 5, 1–16, <a href="https://doi.org/10.1017/S1350482798000577" target="_blank">https://doi.org/10.1017/S1350482798000577</a>, 1998.
</mixed-citation></ref-html>
<ref-html id="bib1.bib19"><label>Grecu and Krajewski(2000)</label><mixed-citation>
Grecu, M. and Krajewski, W. F.: A large-sample investigation of statistical
procedures for radar-based short-term quantitative precipitation
forecasting, J. Hydrol., 239, 69–84, <a href="https://doi.org/10.1016/S0022-1694(00)00360-7" target="_blank">https://doi.org/10.1016/S0022-1694(00)00360-7</a>,
2000.
</mixed-citation></ref-html>
<ref-html id="bib1.bib20"><label>Heistermann et al.(2013)</label><mixed-citation>
Heistermann, M., Jacobi, S., and Pfaff, T.: Technical Note: An open source
library for processing weather radar data (<i>wradlib</i>), Hydrol. Earth
Syst. Sci., 17, 863–871, <a href="https://doi.org/10.5194/hess-17-863-2013" target="_blank">https://doi.org/10.5194/hess-17-863-2013</a>, 2013.
</mixed-citation></ref-html>
<ref-html id="bib1.bib21"><label>Heistermann et al.(2015a)</label><mixed-citation>
Heistermann, M., Collis, S., Dixon, M. J., Giangrande, S., Helmus, J. J.,
Kelley, B., Koistinen, J., Michelson, D. B., Peura, M., Pfaff, T., and Wolff,
D. B.: The emergence of open-source software for the weather radar
community, B. Am. Meteorol. Soc., 96, 117–128,
<a href="https://doi.org/10.1175/BAMS-D-13-00240.1" target="_blank">https://doi.org/10.1175/BAMS-D-13-00240.1</a>, 2015a.
</mixed-citation></ref-html>
<ref-html id="bib1.bib22"><label>Heistermann et al.(2015b)</label><mixed-citation>
Heistermann, M., Collis, S., Dixon, M. J., Helmus, J. J., Henja, A.,
Michelson, D. B., and Pfaff, T.: An open virtual machine for cross-platform
weather radar science, B. Am. Meteorol. Soc., 96, 1641–1645,
<a href="https://doi.org/10.1175/BAMS-D-14-00220.1" target="_blank">https://doi.org/10.1175/BAMS-D-14-00220.1</a>, 2015b.
</mixed-citation></ref-html>
<ref-html id="bib1.bib23"><label>Horn and Schunck(1981)</label><mixed-citation>
Horn, B. K. and Schunck, B. G.: Determining optical flow, Artif. Intell., 17,
185–203, 1981.
</mixed-citation></ref-html>
<ref-html id="bib1.bib24"><label>Hunter(2007)</label><mixed-citation>
Hunter, J. D.: Matplotlib: A 2D graphics environment, Comput. Sci. Eng., 9,
90–95, 2007.
</mixed-citation></ref-html>
<ref-html id="bib1.bib25"><label>Jensen et al.(2015)</label><mixed-citation>
Jensen, D. G., Petersen, C., and Rasmussen, M. R.: Assimilation of
radar-based nowcast into a HIRLAM NWP model, Meteorol. Appl., 22, 485–494,
<a href="https://doi.org/10.1002/met.1479" target="_blank">https://doi.org/10.1002/met.1479</a>, 2015.
</mixed-citation></ref-html>
<ref-html id="bib1.bib26"><label>Jones et al.(2018)</label><mixed-citation>
Jones, E., Oliphant, T., and Peterson, P.: SciPy: open source scientific
tools for Python, available at: <a href="https://scipy.org/" target="_blank">https://scipy.org/</a>, last access:
29 June 2018.
</mixed-citation></ref-html>
<ref-html id="bib1.bib27"><label>Kroeger et al.(2016)</label><mixed-citation>
Kroeger, T., Timofte, R., Dai, D., and Van Gool, L.: Fast optical flow
using dense inverse search, in: Computer Vision – ECCV 2016. ECCV 2016.
Lecture Notes in Computer Science, edited by: Leibe, B., Matas, J., Sebe, N.,
and Welling, M., Springer, Cham, 9908, 471–488,
<a href="https://doi.org/10.1007/978-3-319-46493-0_29" target="_blank">https://doi.org/10.1007/978-3-319-46493-0_29</a>, 2016.
</mixed-citation></ref-html>
<ref-html id="bib1.bib28"><label>Lin et al.(2005)</label><mixed-citation>
Lin, C., Vasić, S., Kilambi, A., Turner, B., and Zawadzki, I.:
Precipitation forecast skill of numerical weather prediction models and
radar nowcasts, Geophys. Res. Lett., 32, L14801, <a href="https://doi.org/10.1029/2005GL023451" target="_blank">https://doi.org/10.1029/2005GL023451</a>,
2005.
</mixed-citation></ref-html>
<ref-html id="bib1.bib29"><label>Liu et al.(2015)</label><mixed-citation>
Liu, Y., Xi, D. G., Li, Z. L., and Hong, Y.: A new methodology for
pixel-quantitative precipitation nowcasting using a pyramid Lucas Kanade
optical flow approach, J. Hydrol., 529, 354–364,
<a href="https://doi.org/10.1016/j.jhydrol.2015.07.042" target="_blank">https://doi.org/10.1016/j.jhydrol.2015.07.042</a>, 2015.
</mixed-citation></ref-html>
<ref-html id="bib1.bib30"><label>Lucas and Kanade(1981)</label><mixed-citation>
Lucas, B. D. and Kanade, T.: An iterative image Registration Technique with
an Application to Stereo Vision, in: Proceedings DARPA Image Understanding
Workshop, Vancouver, BC, Canada, 24–28 August 1981, 674–679, 1981
</mixed-citation></ref-html>
<ref-html id="bib1.bib31"><label>Mecklenburg et al.(2000)</label><mixed-citation>
Mecklenburg, S., Joss, J., and Schmid, W.: Improving the nowcasting of
precipitation in an Alpine region with an enhanced radar echo tracking
algorithm, J. Hydrol., 239, 46–68, <a href="https://doi.org/10.1016/S0022-1694(00)00352-8" target="_blank">https://doi.org/10.1016/S0022-1694(00)00352-8</a>,
2000.
</mixed-citation></ref-html>
<ref-html id="bib1.bib32"><label>Mueller et al.(2003)</label><mixed-citation>
Mueller, C. M., Axen, T. S., Oberts, R. R., Ilson, J. W., Etancourt, T. B.,
Ettling, S. D., and Ien, N. O.: NCAR Auto-Nowcast System, Weather
Forecast., 18, 545–561, <a href="https://doi.org/10.1175/1520-0434(2003)018&lt;0545:NAS&gt;2.0.CO;2" target="_blank">https://doi.org/10.1175/1520-0434(2003)018&lt;0545:NAS&gt;2.0.CO;2</a>,
2003.
</mixed-citation></ref-html>
<ref-html id="bib1.bib33"><label>Oliphant(2006)</label><mixed-citation>
Oliphant, T. E.: A guide to NumPy, vol. 1, Trelgol Publishing, USA, 2006.
</mixed-citation></ref-html>
<ref-html id="bib1.bib34"><label>Pedregosa et al.(2011)</label><mixed-citation>
Pedregosa, F., Varoquaux, G., Gramfort, A., Michel, V., Thirion, B., Grisel,
O., Blondel, M., Prettenhofer, P., Weiss, R., Dubourg, V., Vanderplas, J.,
Passos, A., and Cournapeau D.: Scikit-learn: Machine learning in Python, J.
Mach. Learn. Res., 12, 2825–2830, 2011.
</mixed-citation></ref-html>
<ref-html id="bib1.bib35"><label>Reyniers(2008)</label><mixed-citation>
Reyniers, M.: Quantitative precipitation forecasts based on radar
observations: Principles, algorithms and operational systems, Institut Royal
Météorologique de Belgique, available at:
<a href="https://www.meteo.be/meteo/download/fr/3040165/pdf/rmi_scpub-1261.pdf" target="_blank">https://www.meteo.be/meteo/download/fr/3040165/pdf/rmi_scpub-1261.pdf</a>
(last access: 28 March 2019), 2008.
</mixed-citation></ref-html>
<ref-html id="bib1.bib36"><label>Ruzanski et al.(2011)</label><mixed-citation>
Ruzanski, E., Chandrasekar, V., and Wang, Y.: The CASA nowcasting system,
J. Atmos. Ocean. Tech., 28, 640–655, <a href="https://doi.org/10.1175/2011JTECHA1496.1" target="_blank">https://doi.org/10.1175/2011JTECHA1496.1</a>, 2011.
</mixed-citation></ref-html>
<ref-html id="bib1.bib37"><label>Schneider and Eberly(2003)</label><mixed-citation>
Schneider, P. J. and Eberly, D. H.: Geometric tools for computer graphics,
Boston, available at:
<a href="https://www.sciencedirect.com/science/book/9781558605947" target="_blank">https://www.sciencedirect.com/science/book/9781558605947</a> (last access:
28 March 2019), 2003.
</mixed-citation></ref-html>
<ref-html id="bib1.bib38"><label>Shi and Tomasi(1994)</label><mixed-citation>
Shi, J. and Tomasi, C.: Good features to track, in: 1994 Proceedings of
IEEE Conference on Computer Vision and Pattern Recognition, Seattle, WA, USA,
USA, 21–23 June 1994, IEEE, 593–600, <a href="https://doi.org/10.1109/CVPR.1994.323794" target="_blank">https://doi.org/10.1109/CVPR.1994.323794</a>, 1994.
</mixed-citation></ref-html>
<ref-html id="bib1.bib39"><label>Thorndahl et al.(2017)</label><mixed-citation>
Thorndahl, S., Einfalt, T., Willems, P., Nielsen, J. E., ten Veldhuis, M.-C.,
Arnbjerg-Nielsen, K., Rasmussen, M. R., and Molnar, P.: Weather radar
rainfall data in urban hydrology, Hydrol. Earth Syst. Sci., 21, 1359–1380,
<a href="https://doi.org/10.5194/hess-21-1359-2017" target="_blank">https://doi.org/10.5194/hess-21-1359-2017</a>, 2017.
</mixed-citation></ref-html>
<ref-html id="bib1.bib40"><label>Van der Walt et al.(2014)</label><mixed-citation>
Van der Walt, S., Schönberger, J. L., Nunez-Iglesias, J., Boulogne, F.,
Warner, J. D., Yager, N., Gouillart, E., and Yu, T.: scikit-image: image
processing in Python, PeerJ, 2, e453, <a href="https://doi.org/10.7717/peerj.453" target="_blank">https://doi.org/10.7717/peerj.453</a>, 2014.
</mixed-citation></ref-html>
<ref-html id="bib1.bib41"><label>Weinzaepfel et al.(2013)</label><mixed-citation>
Weinzaepfel, P., Revaud, J., Harchaoui, Z., and Schmid, C.: DeepFlow: Large
Displacement Optical Flow with Deep Matching, in: 2013 IEEE International
Conference on Computer Vision, Sydney, NSW, Australia, 1–8 December 2013,
IEEE, 1385–1392, <a href="https://doi.org/10.1109/ICCV.2013.175" target="_blank">https://doi.org/10.1109/ICCV.2013.175</a>, 2013.
</mixed-citation></ref-html>
<ref-html id="bib1.bib42"><label>Welch(1967)</label><mixed-citation>
Welch, P.: The use of fast Fourier transform for the estimation of power
spectra: a method based on time averaging over short, modified periodograms,
IEEE T. Acoust. Speech, 15, 70–73, 1967.
</mixed-citation></ref-html>
<ref-html id="bib1.bib43"><label>Wilson et al.(1998)</label><mixed-citation>
Wilson, J. W., Crook, N. A., Mueller, C. K., Sun, J., and Dixon, M.:
Nowcasting Thunderstorms: A Status Report, B. Am. Meteorol. Soc., 79,
2079–2099, <a href="https://doi.org/10.1175/1520-0477(1998)079&lt;2079:NTASR&gt;2.0.CO;2" target="_blank">https://doi.org/10.1175/1520-0477(1998)079&lt;2079:NTASR&gt;2.0.CO;2</a>, 1998.
</mixed-citation></ref-html>
<ref-html id="bib1.bib44"><label>Winterrath and Rosenow(2007)</label><mixed-citation>
Winterrath, T. and Rosenow, W.: A new module for the tracking of
radar-derived precipitation with model-derived winds, Adv. Geosci., 10,
77–83, <a href="https://doi.org/10.5194/adgeo-10-77-2007" target="_blank">https://doi.org/10.5194/adgeo-10-77-2007</a>, 2007.
</mixed-citation></ref-html>
<ref-html id="bib1.bib45"><label>Winterrath et al.(2012)</label><mixed-citation>
Winterrath, T., Rosenow, W., and Weigl, E.: On the DWD quantitative
precipitation analysis and nowcasting system for real-time application in
German flood risk management, in: Weather Radar and Hydrology (Proceedings
of a symposium held in Exeter, UK, April 2011), IAHS Publ. 351, 323–329,
available at:
<a href="https://www.dwd.de/DE/leistungen/radolan/radolan_info/Winterrath_German_flood_risk_management_pdf.pdf? blob=publicationFile&amp;v=4" target="_blank">https://www.dwd.de/DE/leistungen/radolan/radolan_info/Winterrath_German_flood_risk_management_pdf.pdf? blob=publicationFile&amp;v=4</a>
(last access: 28 March 2019), 2012.
</mixed-citation></ref-html>
<ref-html id="bib1.bib46"><label>Wolberg(1990)</label><mixed-citation>
Wolberg, G.: Digital Image Warping, IEEE Computer Society Press, Los
Alamitos, CA, USA, 1990.
</mixed-citation></ref-html>
<ref-html id="bib1.bib47"><label>Wong et al.(2009)</label><mixed-citation>
Wong, W. K., Yeung, L. H. Y., Wang, Y. C., and Chen, M.: Towards the blending
of NWP with nowcast – Operation experience in B08FDP, WMO Symposium on
Nowcasting, 30 August–4 September 2009, Whistler, B.C., Canada, available
at: <a href="http://my.hko.gov.hk/publica/reprint/r844.pdf" target="_blank">http://my.hko.gov.hk/publica/reprint/r844.pdf</a> (last access:
28 March 2019), 2009.
</mixed-citation></ref-html>
<ref-html id="bib1.bib48"><label>Woo and Wong(2017)</label><mixed-citation>
Woo, W.-C. and Wong, W.-K.: Operational Application of Optical Flow
Techniques to Radar-Based Rainfall Nowcasting, Atmosphere, 8, 48,
<a href="https://doi.org/10.3390/atmos8030048" target="_blank">https://doi.org/10.3390/atmos8030048</a>, 2017.
</mixed-citation></ref-html>
<ref-html id="bib1.bib49"><label>Wulff and Black(2015)</label><mixed-citation>
Wulff, J. and Black, M. J.: Efficient Sparse-to-Dense Optical Flow Estimation
Using a Learned Basis and Layers, in: IEEE Conf. on Computer Vision and
Pattern Recognition (CVPR 2015), Boston, MA, USA, 7–12 June 2015, 120–130,
2015.
</mixed-citation></ref-html>
<ref-html id="bib1.bib50"><label>Yeung et al.(2009)</label><mixed-citation>
Yeung, L. H. Y., Wong, W. K., Chan, P. K. Y., Lai, E. S. T., Yeung, L. H. Y.,
Wong, W. K., Chan, P. K. Y., and Lai, E. S. T.: Applications of the Hong Kong
Observatory nowcasting system SWIRLS-2 in support of the 2008 Beijing Olympic
Games, in: WMO Symposium on Nowcasting, 30 August–4 September 2009,
Whistler, B.C., Canada, available at:
<a href="http://my.hko.gov.hk/publica/reprint/r843.pdf" target="_blank">http://my.hko.gov.hk/publica/reprint/r843.pdf</a> (last access: 28 March 2019), 2009.

</mixed-citation></ref-html>
<ref-html id="bib1.bib51"><label>Zahraei et al.(2012)</label><mixed-citation>
Zahraei, A., lin Hsu, K., Sorooshian, S., Gourley, J. J., Lakshmanan, V.,
Hong, Y., and Bellerby, T.: Quantitative Precipitation Nowcasting: A
Lagrangian Pixel-Based Approach, Atmos. Res., 118, 418–434,
<a href="https://doi.org/10.1016/j.atmosres.2012.07.001" target="_blank">https://doi.org/10.1016/j.atmosres.2012.07.001</a>, 2012.
</mixed-citation></ref-html>
<ref-html id="bib1.bib52"><label>Zahraei et al.(2013)</label><mixed-citation>
Zahraei, A., lin Hsu, K., Sorooshian, S., Gourley, J. J., Hong, Y., and
Behrangi, A.: Short-term quantitative precipitation forecasting using an
object-based approach, J. Hydrol., 483, 1–15,
<a href="https://doi.org/10.1016/j.jhydrol.2012.09.052" target="_blank">https://doi.org/10.1016/j.jhydrol.2012.09.052</a>, 2013.
</mixed-citation></ref-html>--></article>
