Saved in:
Bibliographic Details
Main Authors: Cache, Tabea, Gomez, Milton S.
Format: Recurso digital
Language:
Published: Zenodo 2024
Online Access:https://doi.org/10.5281/zenodo.10688079
Tags: Add Tag
No Tags, Be the first to tag this record!
_version_ 1866902258565775360
author Cache, Tabea
Gomez, Milton S.
author_facet Cache, Tabea
Gomez, Milton S.
contents <p>Scripts and data related to the paper <em>Enhancing generalizability of data-driven urban flood models by incorporating contextual information</em> (Cache et al., 2024) in which we present a data-driven urban flood model that extracts and combines the information from high-resolution local patches, their context and a rainfall time series to emulate the corresponding flood map.</p> <p>Fast urban pluvial flood models are necessary for a range of applications, such as near real-time flood nowcasting or processing large rainfall ensembles for uncertainty analysis. Data-driven urban flood models can help overcome the long computational time of traditional flood simulation models, yet their lack of generalizability to both terrain and rainfall events still limits their application. We adopted a patch-based framework that overcomes multiple bottlenecks (such as data availability and computational and memory constraints) and extended it to incorporate the spatial contextual information of the small image patch (typically 256 m x 256 m). Thus, our new deep-learning model maintains the high-resolution information of the local patch and incorporates a larger context to increase the visual field of the model with the aim of enhancing the generalizability of urban pluvial flood data-driven models. </p> <p>We trained and tested the model for various terrain and rainfall events. The results are presented in the paper 'Enhancing generalizability of data-driven urban flood models by incorporating contextual information'. Our results indicate that the proposed model effectively generates high-resolution urban pluvial flood maps, demonstrating applicability across varied terrains and rainfall events.</p> <p>This folder contains all files necessary to reproduce the results. The files include: </p> <ul> <li>the <strong>codes to train the model </strong>(in context_aware_flood_model-main.zip); </li> <li>some <strong>data</strong> to train or test the model;</li> <li>the models <strong>weights</strong>;</li> <li>the saved training and validation <strong>patch locations</strong>;</li> <li>the <strong>code to generate flood maps</strong> (i.e., apply the model; in context_aware_flood_model-main.zip);</li> <li>the <strong>singularity container.</strong></li> </ul> <p> </p> <p><strong>NOTE</strong>: The following function is necessary to run the 'flood_map_generation.py' script</p> <p># Function to generate patches at different steps<br>def patch_locations(dem, mask, padding, patch_size, step, min_area_prop): <br>    # Initialize the array with the location of the upper left corner of patches<br>    xy_patch = []<br>    # Do not extract patches in the padding area otherwise it will pose a problem <br>    # when extracting patches at multi (higher) scale: <br>    x_min = padding-patch_size<br>    y_min = padding-patch_size<br>    # Similarly, do not extract patches beyond the padding:<br>    x_max, y_max = np.add(mask.shape, -padding)<br>    # Extract upper left corner at defined intervals, i.e., steps: <br>    xy_patch = [[h, w] for h in range(x_min, x_max, step) for w in range(y_min, y_max, step)]<br>    # Verify that at least min_area_prop% of the patch covers the study area or remove<br>    # the patch location coordinates from the collection<br>    I = []<br>    for i,j in enumerate(xy_patch):<br>        x = j[0]<br>        y = j[1]<br>        if np.count_nonzero(mask[x:x+patch_size,y:y+patch_size]) < min_area_prop*patch_size*patch_size:<br>            I = I+[i]<br>    xy_patch = np.delete(xy_patch, I, axis=0)<br>    return xy_patch</p>
format Recurso digital
id zenodo_https___doi_org_10_5281_zenodo_10688079
institution Zenodo
language
publishDate 2024
publisher Zenodo
record_format zenodo
spellingShingle Multi-Scale Data-Driven Urban Flood Model
Cache, Tabea
Gomez, Milton S.
<p>Scripts and data related to the paper <em>Enhancing generalizability of data-driven urban flood models by incorporating contextual information</em> (Cache et al., 2024) in which we present a data-driven urban flood model that extracts and combines the information from high-resolution local patches, their context and a rainfall time series to emulate the corresponding flood map.</p> <p>Fast urban pluvial flood models are necessary for a range of applications, such as near real-time flood nowcasting or processing large rainfall ensembles for uncertainty analysis. Data-driven urban flood models can help overcome the long computational time of traditional flood simulation models, yet their lack of generalizability to both terrain and rainfall events still limits their application. We adopted a patch-based framework that overcomes multiple bottlenecks (such as data availability and computational and memory constraints) and extended it to incorporate the spatial contextual information of the small image patch (typically 256 m x 256 m). Thus, our new deep-learning model maintains the high-resolution information of the local patch and incorporates a larger context to increase the visual field of the model with the aim of enhancing the generalizability of urban pluvial flood data-driven models. </p> <p>We trained and tested the model for various terrain and rainfall events. The results are presented in the paper 'Enhancing generalizability of data-driven urban flood models by incorporating contextual information'. Our results indicate that the proposed model effectively generates high-resolution urban pluvial flood maps, demonstrating applicability across varied terrains and rainfall events.</p> <p>This folder contains all files necessary to reproduce the results. The files include: </p> <ul> <li>the <strong>codes to train the model </strong>(in context_aware_flood_model-main.zip); </li> <li>some <strong>data</strong> to train or test the model;</li> <li>the models <strong>weights</strong>;</li> <li>the saved training and validation <strong>patch locations</strong>;</li> <li>the <strong>code to generate flood maps</strong> (i.e., apply the model; in context_aware_flood_model-main.zip);</li> <li>the <strong>singularity container.</strong></li> </ul> <p> </p> <p><strong>NOTE</strong>: The following function is necessary to run the 'flood_map_generation.py' script</p> <p># Function to generate patches at different steps<br>def patch_locations(dem, mask, padding, patch_size, step, min_area_prop): <br>    # Initialize the array with the location of the upper left corner of patches<br>    xy_patch = []<br>    # Do not extract patches in the padding area otherwise it will pose a problem <br>    # when extracting patches at multi (higher) scale: <br>    x_min = padding-patch_size<br>    y_min = padding-patch_size<br>    # Similarly, do not extract patches beyond the padding:<br>    x_max, y_max = np.add(mask.shape, -padding)<br>    # Extract upper left corner at defined intervals, i.e., steps: <br>    xy_patch = [[h, w] for h in range(x_min, x_max, step) for w in range(y_min, y_max, step)]<br>    # Verify that at least min_area_prop% of the patch covers the study area or remove<br>    # the patch location coordinates from the collection<br>    I = []<br>    for i,j in enumerate(xy_patch):<br>        x = j[0]<br>        y = j[1]<br>        if np.count_nonzero(mask[x:x+patch_size,y:y+patch_size]) < min_area_prop*patch_size*patch_size:<br>            I = I+[i]<br>    xy_patch = np.delete(xy_patch, I, axis=0)<br>    return xy_patch</p>
title Multi-Scale Data-Driven Urban Flood Model
url https://doi.org/10.5281/zenodo.10688079