From 6dd37b2bae90cb76774644068200229461597ec7 Mon Sep 17 00:00:00 2001 From: Phil Darringer Date: Wed, 27 May 2026 08:41:53 -0700 Subject: [PATCH] docs: add optional build_zarr_multiscales viz step to RasterFlow notebooks --- ...sterFlow_Bring_Your_Own_Rasters_NAIP.ipynb | 23 ++++++++++++++++++ Analyzing_Data/RasterFlow_CHM.ipynb | 23 ++++++++++++++++++ .../RasterFlow_ChangeDetection.ipynb | 23 ++++++++++++++++++ Analyzing_Data/RasterFlow_Chesapeake.ipynb | 23 ++++++++++++++++++ Analyzing_Data/RasterFlow_FTW.ipynb | 23 ++++++++++++++++++ Analyzing_Data/RasterFlow_S2_Mosaic.ipynb | 24 +++++++++++++++++++ Analyzing_Data/RasterFlow_Tile2Net.ipynb | 23 ++++++++++++++++++ 7 files changed, 162 insertions(+) diff --git a/Analyzing_Data/RasterFlow_Bring_Your_Own_Rasters_NAIP.ipynb b/Analyzing_Data/RasterFlow_Bring_Your_Own_Rasters_NAIP.ipynb index fab4f4a..de835ed 100644 --- a/Analyzing_Data/RasterFlow_Bring_Your_Own_Rasters_NAIP.ipynb +++ b/Analyzing_Data/RasterFlow_Bring_Your_Own_Rasters_NAIP.ipynb @@ -446,6 +446,29 @@ "print(f\"Mosaic store URI: {mosaic_store}\")" ] }, + { + "cell_type": "markdown", + "id": "11fa830d", + "metadata": {}, + "source": [ + "## (Optional) Build an optimized Zarr for visualization\n", + "\n", + "RasterFlow writes its outputs as Zarr stores at native resolution. To explore them interactively on [cloud.wherobots.com/map](https://cloud.wherobots.com/map), you can build an *optimized* multiscale Zarr. `build_zarr_multiscales` adds downsampled overview levels (image pyramids) to the store so the map can stream coarse tiles when zoomed out and full-resolution pixels when zoomed in.\n", + "\n", + "This step is optional and can take a few minutes for large outputs, so the code below is commented out by default — uncomment it to run it." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "1d5b14c4", + "metadata": {}, + "outputs": [], + "source": [ + "# optimized_store = client.build_zarr_multiscales(source_store=mosaic_store)\n", + "# optimized_store" + ] + }, { "cell_type": "markdown", "metadata": {}, diff --git a/Analyzing_Data/RasterFlow_CHM.ipynb b/Analyzing_Data/RasterFlow_CHM.ipynb index d6a52ed..399b0ec 100644 --- a/Analyzing_Data/RasterFlow_CHM.ipynb +++ b/Analyzing_Data/RasterFlow_CHM.ipynb @@ -145,6 +145,29 @@ "model_output_store" ] }, + { + "cell_type": "markdown", + "id": "f244c738", + "metadata": {}, + "source": [ + "## (Optional) Build an optimized Zarr for visualization\n", + "\n", + "RasterFlow writes its outputs as Zarr stores at native resolution. To explore them interactively on [cloud.wherobots.com/map](https://cloud.wherobots.com/map), you can build an *optimized* multiscale Zarr. `build_zarr_multiscales` adds downsampled overview levels (image pyramids) to the store so the map can stream coarse tiles when zoomed out and full-resolution pixels when zoomed in.\n", + "\n", + "This step is optional and can take a few minutes for large outputs, so the code below is commented out by default — uncomment it to run it." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "211474f5", + "metadata": {}, + "outputs": [], + "source": [ + "# optimized_store = rf_client.build_zarr_multiscales(source_store=model_output_store)\n", + "# optimized_store" + ] + }, { "cell_type": "markdown", "id": "26cffc31", diff --git a/Analyzing_Data/RasterFlow_ChangeDetection.ipynb b/Analyzing_Data/RasterFlow_ChangeDetection.ipynb index 7ca0686..387bae6 100644 --- a/Analyzing_Data/RasterFlow_ChangeDetection.ipynb +++ b/Analyzing_Data/RasterFlow_ChangeDetection.ipynb @@ -284,6 +284,29 @@ "model_output_store" ] }, + { + "cell_type": "markdown", + "id": "826c34a0", + "metadata": {}, + "source": [ + "## (Optional) Build an optimized Zarr for visualization\n", + "\n", + "RasterFlow writes its outputs as Zarr stores at native resolution. To explore them interactively on [cloud.wherobots.com/map](https://cloud.wherobots.com/map), you can build an *optimized* multiscale Zarr. `build_zarr_multiscales` adds downsampled overview levels (image pyramids) to the store so the map can stream coarse tiles when zoomed out and full-resolution pixels when zoomed in.\n", + "\n", + "This step is optional and can take a few minutes for large outputs, so the code below is commented out by default — uncomment it to run it." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "82db6e55", + "metadata": {}, + "outputs": [], + "source": [ + "# optimized_store = rf_client.build_zarr_multiscales(source_store=model_output_store)\n", + "# optimized_store" + ] + }, { "cell_type": "markdown", "id": "298d9c00-9eaa-4c9f-864a-afe766120622", diff --git a/Analyzing_Data/RasterFlow_Chesapeake.ipynb b/Analyzing_Data/RasterFlow_Chesapeake.ipynb index 9bf5ea6..c345a85 100644 --- a/Analyzing_Data/RasterFlow_Chesapeake.ipynb +++ b/Analyzing_Data/RasterFlow_Chesapeake.ipynb @@ -145,6 +145,29 @@ "model_output_store" ] }, + { + "cell_type": "markdown", + "id": "786623d8", + "metadata": {}, + "source": [ + "## (Optional) Build an optimized Zarr for visualization\n", + "\n", + "RasterFlow writes its outputs as Zarr stores at native resolution. To explore them interactively on [cloud.wherobots.com/map](https://cloud.wherobots.com/map), you can build an *optimized* multiscale Zarr. `build_zarr_multiscales` adds downsampled overview levels (image pyramids) to the store so the map can stream coarse tiles when zoomed out and full-resolution pixels when zoomed in.\n", + "\n", + "This step is optional and can take a few minutes for large outputs, so the code below is commented out by default — uncomment it to run it." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "ddbe1f79", + "metadata": {}, + "outputs": [], + "source": [ + "# optimized_store = rf_client.build_zarr_multiscales(source_store=model_output_store)\n", + "# optimized_store" + ] + }, { "cell_type": "markdown", "id": "b573f45c", diff --git a/Analyzing_Data/RasterFlow_FTW.ipynb b/Analyzing_Data/RasterFlow_FTW.ipynb index 8afa1ff..e7f9e31 100644 --- a/Analyzing_Data/RasterFlow_FTW.ipynb +++ b/Analyzing_Data/RasterFlow_FTW.ipynb @@ -159,6 +159,29 @@ "model_output_store" ] }, + { + "cell_type": "markdown", + "id": "8f472ed5", + "metadata": {}, + "source": [ + "## (Optional) Build an optimized Zarr for visualization\n", + "\n", + "RasterFlow writes its outputs as Zarr stores at native resolution. To explore them interactively on [cloud.wherobots.com/map](https://cloud.wherobots.com/map), you can build an *optimized* multiscale Zarr. `build_zarr_multiscales` adds downsampled overview levels (image pyramids) to the store so the map can stream coarse tiles when zoomed out and full-resolution pixels when zoomed in.\n", + "\n", + "This step is optional and can take a few minutes for large outputs, so the code below is commented out by default — uncomment it to run it." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "460e2bef", + "metadata": {}, + "outputs": [], + "source": [ + "# optimized_store = rf_client.build_zarr_multiscales(source_store=model_output_store)\n", + "# optimized_store" + ] + }, { "cell_type": "markdown", "id": "5738d7ce", diff --git a/Analyzing_Data/RasterFlow_S2_Mosaic.ipynb b/Analyzing_Data/RasterFlow_S2_Mosaic.ipynb index 43d29d2..e668f03 100644 --- a/Analyzing_Data/RasterFlow_S2_Mosaic.ipynb +++ b/Analyzing_Data/RasterFlow_S2_Mosaic.ipynb @@ -166,6 +166,30 @@ "mosaic_store" ] }, + { + "cell_type": "markdown", + "id": "ed258752", + "metadata": {}, + "source": [ + "## (Optional) Build an optimized Zarr for visualization\n", + "\n", + "RasterFlow writes its outputs as Zarr stores at native resolution. To explore them interactively on [cloud.wherobots.com/map](https://cloud.wherobots.com/map), you can build an *optimized* multiscale Zarr. `build_zarr_multiscales` adds downsampled overview levels (image pyramids) to the store so the map can stream coarse tiles when zoomed out and full-resolution pixels when zoomed in.\n", + "\n", + "This step is optional and can take a few minutes for large outputs, so the code below is commented out by default — uncomment it to run it." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "6b245a96", + "metadata": {}, + "outputs": [], + "source": [ + "# optimized_store = rf_client.build_zarr_multiscales(source_store=mosaic_store)\n", + "# The same call works on the all-bands store: build_zarr_multiscales(source_store=all_bands_store)\n", + "# optimized_store" + ] + }, { "cell_type": "markdown", "metadata": {}, diff --git a/Analyzing_Data/RasterFlow_Tile2Net.ipynb b/Analyzing_Data/RasterFlow_Tile2Net.ipynb index a6c227b..a6b555e 100644 --- a/Analyzing_Data/RasterFlow_Tile2Net.ipynb +++ b/Analyzing_Data/RasterFlow_Tile2Net.ipynb @@ -149,6 +149,29 @@ "model_output_store" ] }, + { + "cell_type": "markdown", + "id": "cc4bed9e", + "metadata": {}, + "source": [ + "## (Optional) Build an optimized Zarr for visualization\n", + "\n", + "RasterFlow writes its outputs as Zarr stores at native resolution. To explore them interactively on [cloud.wherobots.com/map](https://cloud.wherobots.com/map), you can build an *optimized* multiscale Zarr. `build_zarr_multiscales` adds downsampled overview levels (image pyramids) to the store so the map can stream coarse tiles when zoomed out and full-resolution pixels when zoomed in.\n", + "\n", + "This step is optional and can take a few minutes for large outputs, so the code below is commented out by default — uncomment it to run it." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "e4a970dd", + "metadata": {}, + "outputs": [], + "source": [ + "# optimized_store = rf_client.build_zarr_multiscales(source_store=model_output_store)\n", + "# optimized_store" + ] + }, { "cell_type": "markdown", "id": "5edb29d3",