Hydrography90m layers download script
Here is a bash scripting procedure to download tiled raster and vector files of the Hydrography90m dataset.
Please see the paper by Amatulli et al. (2022) for further details.
Tile list
Donwload the tile list files.
wget https://gitlab.com/selvaje74/hydrography.org/-/raw/main/images/hydrography90m/tiles20d/tile_list.txt
Use the tile_list.txt file to download the full list of raster and vector files. Change the $(cat ../tile_list.txt) to a tile label (e.g. h30v12) in case you want download only one tile.
Base and network layers
mkdir r.watershed
cd r.watershed
# raster files
for dir in accumulation_tiles20d basin_tiles20d depression_tiles20d direction_tiles20d outlet_tiles20d regional_unit_tiles20d segment_tiles20d sub_catchment_tiles20d; do
mkdir $dir
filename=$(echo $dir | awk '{ gsub("_tiles20d","") ; print $1}')
for tile in $(cat ../tile_list.txt) ; do
wget --no-check-certificate -O ${dir}/${filename}_${tile}.tif https://public.igb-berlin.de/index.php/s/agciopgzXjWswF4/download?path=%2Fr.watershed%2F${dir}\&files=${filename}_${tile}.tif
done
done
# vector files
for dir in basin_tiles20d outlet_tiles20d sub_catchment_tiles20d; do
mkdir $dir
filename=$(echo $dir | awk '{ gsub("_tiles20d","") ; print $1}')
for tile in $(cat ../tile_list.txt) ; do
wget --no-check-certificate -O ${dir}/${filename}_${tile}.gpkg https://public.igb-berlin.de/index.php/s/agciopgzXjWswF4/download?path=%2Fr.watershed%2F${dir}\&files=${filename}_${tile}.gpkg
done
done
Stream slope layers
mkdir r.stream.slope
cd r.stream.slope
for dir in slope_curv_max_dw_cel_tiles20d slope_curv_min_dw_cel_tiles20d slope_elv_dw_cel_tiles20d slope_grad_dw_cel_tiles20d ; do
mkdir $dir
filename=$(echo $dir | awk '{ gsub("_tiles20d","") ; print $1}')
for tile in $(cat ../tile_list.txt) ; do
wget --no-check-certificate -O ${dir}/${filename}_${tile}.tif https://public.igb-berlin.de/index.php/s/agciopgzXjWswF4/download?path=%2Fr.stream.slope%2F${dir}\&files=${filename}_${tile}.tif
done
done
Stream distance layers
mkdir r.stream.distance
cd r.stream.distance
for dir in outlet_diff_dw_basin_tiles20d outlet_dist_dw_basin_tiles20d stream_diff_dw_near_tiles20d stream_diff_up_near_tiles20d stream_dist_proximity_tiles20d stream_dist_up_near_tiles20d outlet_diff_dw_scatch_tiles20d outlet_dist_dw_scatch_tiles20d stream_diff_up_farth_tiles20d stream_dist_dw_near_tiles20d stream_dist_up_farth_tiles20d ; do
mkdir $dir
filename=$(echo $dir | awk '{ gsub("_tiles20d","") ; print $1}')
for tile in $(cat ../tile_list.txt) ; do
wget --no-check-certificate -O ${dir}/${filename}_${tile}.tif https://public.igb-berlin.de/index.php/s/agciopgzXjWswF4/download?path=%2Fr.stream.distance%2F${dir}\&files=${filename}_${tile}.tif
done
done
Stream segment properties layers
mkdir r.stream.channel
cd r.stream.channel
for dir in channel_curv_cel_tiles20d channel_dist_up_cel_tiles20d channel_elv_dw_cel_tiles20d channel_elv_up_cel_tiles20d channel_grad_dw_seg_tiles20d channel_grad_up_seg_tiles20d
channel_dist_dw_seg_tiles20d channel_dist_up_seg_tiles20d channel_elv_dw_seg_tiles20d channel_elv_up_seg_tiles20d channel_grad_up_cel_tiles20d ; do
mkdir $dir
filename=$(echo $dir | awk '{ gsub("_tiles20d","") ; print $1}')
for tile in $(cat ../tile_list.txt) ; do
wget --no-check-certificate -O ${dir}/${filename}_${tile}.tif https://public.igb-berlin.de/index.php/s/agciopgzXjWswF4/download?path=%2Fr.stream.channel%2F${dir}\&files=${filename}_${tile}.tif
done
done
Stream order layers
mkdir r.stream.order
cd r.stream.order
# raster files
for dir in order_hack_tiles20d order_horton_tiles20d order_shreve_tiles20d order_strahler_tiles20d order_topo_tiles20d order_vect_tiles20d ; do
mkdir $dir
filename=$(echo $dir | awk '{ gsub("_tiles20d","") ; print $1}')
for tile in $(cat ../tile_list.txt) ; do
wget --no-check-certificate -O ${dir}/${filename}_${tile}.tif https://public.igb-berlin.de/index.php/s/agciopgzXjWswF4/download?path=%2Fr.stream.order%2F${dir}\&files=${filename}_${tile}.tif
done
done
# vector files
for dir in order_vect_tiles20d ; do
mkdir $dir
filename=$(echo $dir | awk '{ gsub("_tiles20d","") ; print $1}')
for tile in $(cat ../tile_list.txt) ; do
wget --no-check-certificate -O ${dir}/${filename}_${tile}.gpkg https://public.igb-berlin.de/index.php/s/agciopgzXjWswF4/download?path=%2Fr.stream.order%2F${dir}\&files=${filename}_segment_${tile}.gpkg
wget --no-check-certificate -O ${dir}/${filename}_${tile}.gpkg https://public.igb-berlin.de/index.php/s/agciopgzXjWswF4/download?path=%2Fr.stream.order%2F${dir}\&files=${filename}_point_${tile}.gpkg
done
done
Flow index layers
mkdir flow.index
cd flow.index
for dir in cti_tiles20d spi_tiles20d sti_tiles20d ; do
mkdir $dir
filename=$(echo $dir | awk '{ gsub("_tiles20d","") ; print $1}')
for tile in $(cat ../tile_list.txt) ; do
wget --no-check-certificate -O ${dir}/${filename}_${tile}.tif https://public.igb-berlin.de/index.php/s/agciopgzXjWswF4/download?path=%2Fflow.index%2F${dir}\&files=${filename}_${tile}.tif
done
done