diff --git a/book/tutorials/IS2_cloud_Landsat_integration.ipynb b/book/tutorials/IS2_cloud_Landsat_integration.ipynb
index a15b9bd..ffdabe2 100644
--- a/book/tutorials/IS2_cloud_Landsat_integration.ipynb
+++ b/book/tutorials/IS2_cloud_Landsat_integration.ipynb
@@ -87,13 +87,13 @@
" }\n",
"\n",
" var force = true;\n",
+ " var py_version = '3.2.2'.replace('rc', '-rc.').replace('.dev', '-dev.');\n",
+ " var is_dev = py_version.indexOf(\"+\") !== -1 || py_version.indexOf(\"-\") !== -1;\n",
+ " var reloading = false;\n",
+ " var Bokeh = root.Bokeh;\n",
+ " var bokeh_loaded = Bokeh != null && (Bokeh.version === py_version || (Bokeh.versions !== undefined && Bokeh.versions.has(py_version)));\n",
"\n",
- " if (typeof root._bokeh_onload_callbacks === \"undefined\" || force === true) {\n",
- " root._bokeh_onload_callbacks = [];\n",
- " root._bokeh_is_loading = undefined;\n",
- " }\n",
- "\n",
- " if (typeof (root._bokeh_timeout) === \"undefined\" || force === true) {\n",
+ " if (typeof (root._bokeh_timeout) === \"undefined\" || force) {\n",
" root._bokeh_timeout = Date.now() + 5000;\n",
" root._bokeh_failed_load = false;\n",
" }\n",
@@ -105,26 +105,30 @@
" callback();\n",
" });\n",
" } finally {\n",
- " delete root._bokeh_onload_callbacks\n",
+ " delete root._bokeh_onload_callbacks;\n",
" }\n",
" console.debug(\"Bokeh: all callbacks have finished\");\n",
" }\n",
"\n",
- " function load_libs(css_urls, js_urls, js_modules, callback) {\n",
+ " function load_libs(css_urls, js_urls, js_modules, js_exports, callback) {\n",
" if (css_urls == null) css_urls = [];\n",
" if (js_urls == null) js_urls = [];\n",
" if (js_modules == null) js_modules = [];\n",
+ " if (js_exports == null) js_exports = {};\n",
"\n",
" root._bokeh_onload_callbacks.push(callback);\n",
+ "\n",
" if (root._bokeh_is_loading > 0) {\n",
" console.debug(\"Bokeh: BokehJS is being loaded, scheduling callback at\", now());\n",
" return null;\n",
" }\n",
- " if (js_urls.length === 0 && js_modules.length === 0) {\n",
+ " if (js_urls.length === 0 && js_modules.length === 0 && Object.keys(js_exports).length === 0) {\n",
" run_callbacks();\n",
" return null;\n",
" }\n",
- " console.debug(\"Bokeh: BokehJS not loaded, scheduling load and callback at\", now());\n",
+ " if (!reloading) {\n",
+ " console.debug(\"Bokeh: BokehJS not loaded, scheduling load and callback at\", now());\n",
+ " }\n",
"\n",
" function on_load() {\n",
" root._bokeh_is_loading--;\n",
@@ -133,26 +137,37 @@
" run_callbacks()\n",
" }\n",
" }\n",
+ " window._bokeh_on_load = on_load\n",
"\n",
" function on_error() {\n",
" console.error(\"failed to load \" + url);\n",
" }\n",
"\n",
- " for (var i = 0; i < css_urls.length; i++) {\n",
- " var url = css_urls[i];\n",
- " const element = document.createElement(\"link\");\n",
- " element.onload = on_load;\n",
- " element.onerror = on_error;\n",
- " element.rel = \"stylesheet\";\n",
- " element.type = \"text/css\";\n",
- " element.href = url;\n",
- " console.debug(\"Bokeh: injecting link tag for BokehJS stylesheet: \", url);\n",
- " document.body.appendChild(element);\n",
- " }\n",
- "\n",
" var skip = [];\n",
" if (window.requirejs) {\n",
- " window.requirejs.config({'packages': {}, 'paths': {'gridstack': 'https://cdn.jsdelivr.net/npm/gridstack@4.2.5/dist/gridstack-h5', 'notyf': 'https://cdn.jsdelivr.net/npm/notyf@3/notyf.min'}, 'shim': {'gridstack': {'exports': 'GridStack'}}});\n",
+ " window.requirejs.config({'packages': {}, 'paths': {'jspanel': 'https://cdn.jsdelivr.net/npm/jspanel4@4.12.0/dist/jspanel', 'jspanel-modal': 'https://cdn.jsdelivr.net/npm/jspanel4@4.12.0/dist/extensions/modal/jspanel.modal', 'jspanel-tooltip': 'https://cdn.jsdelivr.net/npm/jspanel4@4.12.0/dist/extensions/tooltip/jspanel.tooltip', 'jspanel-hint': 'https://cdn.jsdelivr.net/npm/jspanel4@4.12.0/dist/extensions/hint/jspanel.hint', 'jspanel-layout': 'https://cdn.jsdelivr.net/npm/jspanel4@4.12.0/dist/extensions/layout/jspanel.layout', 'jspanel-contextmenu': 'https://cdn.jsdelivr.net/npm/jspanel4@4.12.0/dist/extensions/contextmenu/jspanel.contextmenu', 'jspanel-dock': 'https://cdn.jsdelivr.net/npm/jspanel4@4.12.0/dist/extensions/dock/jspanel.dock', 'gridstack': 'https://cdn.jsdelivr.net/npm/gridstack@7.2.3/dist/gridstack-all', 'notyf': 'https://cdn.jsdelivr.net/npm/notyf@3/notyf.min'}, 'shim': {'jspanel': {'exports': 'jsPanel'}, 'gridstack': {'exports': 'GridStack'}}});\n",
+ " require([\"jspanel\"], function(jsPanel) {\n",
+ "\twindow.jsPanel = jsPanel\n",
+ "\ton_load()\n",
+ " })\n",
+ " require([\"jspanel-modal\"], function() {\n",
+ "\ton_load()\n",
+ " })\n",
+ " require([\"jspanel-tooltip\"], function() {\n",
+ "\ton_load()\n",
+ " })\n",
+ " require([\"jspanel-hint\"], function() {\n",
+ "\ton_load()\n",
+ " })\n",
+ " require([\"jspanel-layout\"], function() {\n",
+ "\ton_load()\n",
+ " })\n",
+ " require([\"jspanel-contextmenu\"], function() {\n",
+ "\ton_load()\n",
+ " })\n",
+ " require([\"jspanel-dock\"], function() {\n",
+ "\ton_load()\n",
+ " })\n",
" require([\"gridstack\"], function(GridStack) {\n",
"\twindow.GridStack = GridStack\n",
"\ton_load()\n",
@@ -160,22 +175,59 @@
" require([\"notyf\"], function() {\n",
"\ton_load()\n",
" })\n",
- " root._bokeh_is_loading = css_urls.length + 2;\n",
+ " root._bokeh_is_loading = css_urls.length + 9;\n",
" } else {\n",
- " root._bokeh_is_loading = css_urls.length + js_urls.length + js_modules.length;\n",
+ " root._bokeh_is_loading = css_urls.length + js_urls.length + js_modules.length + Object.keys(js_exports).length;\n",
+ " }\n",
+ "\n",
+ " var existing_stylesheets = []\n",
+ " var links = document.getElementsByTagName('link')\n",
+ " for (var i = 0; i < links.length; i++) {\n",
+ " var link = links[i]\n",
+ " if (link.href != null) {\n",
+ "\texisting_stylesheets.push(link.href)\n",
+ " }\n",
+ " }\n",
+ " for (var i = 0; i < css_urls.length; i++) {\n",
+ " var url = css_urls[i];\n",
+ " if (existing_stylesheets.indexOf(url) !== -1) {\n",
+ "\ton_load()\n",
+ "\tcontinue;\n",
+ " }\n",
+ " const element = document.createElement(\"link\");\n",
+ " element.onload = on_load;\n",
+ " element.onerror = on_error;\n",
+ " element.rel = \"stylesheet\";\n",
+ " element.type = \"text/css\";\n",
+ " element.href = url;\n",
+ " console.debug(\"Bokeh: injecting link tag for BokehJS stylesheet: \", url);\n",
+ " document.body.appendChild(element);\n",
+ " } if (((window['jsPanel'] !== undefined) && (!(window['jsPanel'] instanceof HTMLElement))) || window.requirejs) {\n",
+ " var urls = ['https://cdn.holoviz.org/panel/1.2.3/dist/bundled/floatpanel/jspanel4@4.12.0/dist/jspanel.js', 'https://cdn.holoviz.org/panel/1.2.3/dist/bundled/floatpanel/jspanel4@4.12.0/dist/extensions/modal/jspanel.modal.js', 'https://cdn.holoviz.org/panel/1.2.3/dist/bundled/floatpanel/jspanel4@4.12.0/dist/extensions/tooltip/jspanel.tooltip.js', 'https://cdn.holoviz.org/panel/1.2.3/dist/bundled/floatpanel/jspanel4@4.12.0/dist/extensions/hint/jspanel.hint.js', 'https://cdn.holoviz.org/panel/1.2.3/dist/bundled/floatpanel/jspanel4@4.12.0/dist/extensions/layout/jspanel.layout.js', 'https://cdn.holoviz.org/panel/1.2.3/dist/bundled/floatpanel/jspanel4@4.12.0/dist/extensions/contextmenu/jspanel.contextmenu.js', 'https://cdn.holoviz.org/panel/1.2.3/dist/bundled/floatpanel/jspanel4@4.12.0/dist/extensions/dock/jspanel.dock.js'];\n",
+ " for (var i = 0; i < urls.length; i++) {\n",
+ " skip.push(urls[i])\n",
+ " }\n",
" } if (((window['GridStack'] !== undefined) && (!(window['GridStack'] instanceof HTMLElement))) || window.requirejs) {\n",
- " var urls = ['https://cdn.holoviz.org/panel/0.14.4/dist/bundled/gridstack/gridstack@4.2.5/dist/gridstack-h5.js'];\n",
+ " var urls = ['https://cdn.holoviz.org/panel/1.2.3/dist/bundled/gridstack/gridstack@7.2.3/dist/gridstack-all.js'];\n",
" for (var i = 0; i < urls.length; i++) {\n",
" skip.push(urls[i])\n",
" }\n",
" } if (((window['Notyf'] !== undefined) && (!(window['Notyf'] instanceof HTMLElement))) || window.requirejs) {\n",
- " var urls = ['https://cdn.holoviz.org/panel/0.14.4/dist/bundled/notificationarea/notyf@3/notyf.min.js'];\n",
+ " var urls = ['https://cdn.holoviz.org/panel/1.2.3/dist/bundled/notificationarea/notyf@3/notyf.min.js'];\n",
" for (var i = 0; i < urls.length; i++) {\n",
" skip.push(urls[i])\n",
" }\n",
- " } for (var i = 0; i < js_urls.length; i++) {\n",
+ " } var existing_scripts = []\n",
+ " var scripts = document.getElementsByTagName('script')\n",
+ " for (var i = 0; i < scripts.length; i++) {\n",
+ " var script = scripts[i]\n",
+ " if (script.src != null) {\n",
+ "\texisting_scripts.push(script.src)\n",
+ " }\n",
+ " }\n",
+ " for (var i = 0; i < js_urls.length; i++) {\n",
" var url = js_urls[i];\n",
- " if (skip.indexOf(url) >= 0) {\n",
+ " if (skip.indexOf(url) !== -1 || existing_scripts.indexOf(url) !== -1) {\n",
"\tif (!window.requirejs) {\n",
"\t on_load();\n",
"\t}\n",
@@ -191,7 +243,7 @@
" }\n",
" for (var i = 0; i < js_modules.length; i++) {\n",
" var url = js_modules[i];\n",
- " if (skip.indexOf(url) >= 0) {\n",
+ " if (skip.indexOf(url) !== -1 || existing_scripts.indexOf(url) !== -1) {\n",
"\tif (!window.requirejs) {\n",
"\t on_load();\n",
"\t}\n",
@@ -206,6 +258,26 @@
" console.debug(\"Bokeh: injecting script tag for BokehJS library: \", url);\n",
" document.head.appendChild(element);\n",
" }\n",
+ " for (const name in js_exports) {\n",
+ " var url = js_exports[name];\n",
+ " if (skip.indexOf(url) >= 0 || root[name] != null) {\n",
+ "\tif (!window.requirejs) {\n",
+ "\t on_load();\n",
+ "\t}\n",
+ "\tcontinue;\n",
+ " }\n",
+ " var element = document.createElement('script');\n",
+ " element.onerror = on_error;\n",
+ " element.async = false;\n",
+ " element.type = \"module\";\n",
+ " console.debug(\"Bokeh: injecting script tag for BokehJS library: \", url);\n",
+ " element.textContent = `\n",
+ " import ${name} from \"${url}\"\n",
+ " window.${name} = ${name}\n",
+ " window._bokeh_on_load()\n",
+ " `\n",
+ " document.head.appendChild(element);\n",
+ " }\n",
" if (!js_urls.length && !js_modules.length) {\n",
" on_load()\n",
" }\n",
@@ -217,12 +289,11 @@
" document.body.appendChild(element);\n",
" }\n",
"\n",
- " var js_urls = [\"https://cdn.bokeh.org/bokeh/release/bokeh-2.4.3.min.js\", \"https://cdn.bokeh.org/bokeh/release/bokeh-gl-2.4.3.min.js\", \"https://cdn.bokeh.org/bokeh/release/bokeh-widgets-2.4.3.min.js\", \"https://cdn.bokeh.org/bokeh/release/bokeh-tables-2.4.3.min.js\", \"https://cdn.bokeh.org/bokeh/release/bokeh-mathjax-2.4.3.min.js\", \"https://unpkg.com/@holoviz/panel@0.14.4/dist/panel.min.js\"];\n",
+ " var js_urls = [\"https://cdn.bokeh.org/bokeh/release/bokeh-3.2.2.min.js\", \"https://cdn.bokeh.org/bokeh/release/bokeh-gl-3.2.2.min.js\", \"https://cdn.bokeh.org/bokeh/release/bokeh-widgets-3.2.2.min.js\", \"https://cdn.bokeh.org/bokeh/release/bokeh-tables-3.2.2.min.js\", \"https://cdn.holoviz.org/panel/1.2.3/dist/panel.min.js\", \"https://cdn.jsdelivr.net/npm/@holoviz/geoviews@1.10.1/dist/geoviews.min.js\"];\n",
" var js_modules = [];\n",
- " var css_urls = [\"https://cdn.holoviz.org/panel/0.14.4/dist/css/alerts.css\", \"https://cdn.holoviz.org/panel/0.14.4/dist/css/card.css\", \"https://cdn.holoviz.org/panel/0.14.4/dist/css/dataframe.css\", \"https://cdn.holoviz.org/panel/0.14.4/dist/css/debugger.css\", \"https://cdn.holoviz.org/panel/0.14.4/dist/css/json.css\", \"https://cdn.holoviz.org/panel/0.14.4/dist/css/loading.css\", \"https://cdn.holoviz.org/panel/0.14.4/dist/css/markdown.css\", \"https://cdn.holoviz.org/panel/0.14.4/dist/css/widgets.css\"];\n",
+ " var js_exports = {};\n",
+ " var css_urls = [];\n",
" var inline_js = [ function(Bokeh) {\n",
- " inject_raw_css(\"\\n .bk.pn-loading.arc:before {\\n background-image: url(\\\"data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHN0eWxlPSJtYXJnaW46IGF1dG87IGJhY2tncm91bmQ6IG5vbmU7IGRpc3BsYXk6IGJsb2NrOyBzaGFwZS1yZW5kZXJpbmc6IGF1dG87IiB2aWV3Qm94PSIwIDAgMTAwIDEwMCIgcHJlc2VydmVBc3BlY3RSYXRpbz0ieE1pZFlNaWQiPiAgPGNpcmNsZSBjeD0iNTAiIGN5PSI1MCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSIjYzNjM2MzIiBzdHJva2Utd2lkdGg9IjEwIiByPSIzNSIgc3Ryb2tlLWRhc2hhcnJheT0iMTY0LjkzMzYxNDMxMzQ2NDE1IDU2Ljk3Nzg3MTQzNzgyMTM4Ij4gICAgPGFuaW1hdGVUcmFuc2Zvcm0gYXR0cmlidXRlTmFtZT0idHJhbnNmb3JtIiB0eXBlPSJyb3RhdGUiIHJlcGVhdENvdW50PSJpbmRlZmluaXRlIiBkdXI9IjFzIiB2YWx1ZXM9IjAgNTAgNTA7MzYwIDUwIDUwIiBrZXlUaW1lcz0iMDsxIj48L2FuaW1hdGVUcmFuc2Zvcm0+ICA8L2NpcmNsZT48L3N2Zz4=\\\");\\n background-size: auto calc(min(50%, 400px));\\n }\\n \");\n",
- " }, function(Bokeh) {\n",
" Bokeh.set_log_level(\"info\");\n",
" },\n",
"function(Bokeh) {} // ensure no trailing comma for IE\n",
@@ -232,26 +303,61 @@
" if ((root.Bokeh !== undefined) || (force === true)) {\n",
" for (var i = 0; i < inline_js.length; i++) {\n",
" inline_js[i].call(root, root.Bokeh);\n",
+ " }\n",
+ " // Cache old bokeh versions\n",
+ " if (Bokeh != undefined && !reloading) {\n",
+ "\tvar NewBokeh = root.Bokeh;\n",
+ "\tif (Bokeh.versions === undefined) {\n",
+ "\t Bokeh.versions = new Map();\n",
+ "\t}\n",
+ "\tif (NewBokeh.version !== Bokeh.version) {\n",
+ "\t Bokeh.versions.set(NewBokeh.version, NewBokeh)\n",
+ "\t}\n",
+ "\troot.Bokeh = Bokeh;\n",
" }} else if (Date.now() < root._bokeh_timeout) {\n",
" setTimeout(run_inline_js, 100);\n",
" } else if (!root._bokeh_failed_load) {\n",
" console.log(\"Bokeh: BokehJS failed to load within specified timeout.\");\n",
" root._bokeh_failed_load = true;\n",
" }\n",
+ " root._bokeh_is_initializing = false\n",
" }\n",
"\n",
- " if (root._bokeh_is_loading === 0) {\n",
- " console.debug(\"Bokeh: BokehJS loaded, going straight to plotting\");\n",
- " run_inline_js();\n",
- " } else {\n",
- " load_libs(css_urls, js_urls, js_modules, function() {\n",
- " console.debug(\"Bokeh: BokehJS plotting callback run at\", now());\n",
- " run_inline_js();\n",
- " });\n",
+ " function load_or_wait() {\n",
+ " // Implement a backoff loop that tries to ensure we do not load multiple\n",
+ " // versions of Bokeh and its dependencies at the same time.\n",
+ " // In recent versions we use the root._bokeh_is_initializing flag\n",
+ " // to determine whether there is an ongoing attempt to initialize\n",
+ " // bokeh, however for backward compatibility we also try to ensure\n",
+ " // that we do not start loading a newer (Panel>=1.0 and Bokeh>3) version\n",
+ " // before older versions are fully initialized.\n",
+ " if (root._bokeh_is_initializing && Date.now() > root._bokeh_timeout) {\n",
+ " root._bokeh_is_initializing = false;\n",
+ " root._bokeh_onload_callbacks = undefined;\n",
+ " console.log(\"Bokeh: BokehJS was loaded multiple times but one version failed to initialize.\");\n",
+ " load_or_wait();\n",
+ " } else if (root._bokeh_is_initializing || (typeof root._bokeh_is_initializing === \"undefined\" && root._bokeh_onload_callbacks !== undefined)) {\n",
+ " setTimeout(load_or_wait, 100);\n",
+ " } else {\n",
+ " Bokeh = root.Bokeh;\n",
+ " bokeh_loaded = Bokeh != null && (Bokeh.version === py_version || (Bokeh.versions !== undefined && Bokeh.versions.has(py_version)));\n",
+ " root._bokeh_is_initializing = true\n",
+ " root._bokeh_onload_callbacks = []\n",
+ " if (!reloading && (!bokeh_loaded || is_dev)) {\n",
+ "\troot.Bokeh = undefined;\n",
+ " }\n",
+ " load_libs(css_urls, js_urls, js_modules, js_exports, function() {\n",
+ "\tconsole.debug(\"Bokeh: BokehJS plotting callback run at\", now());\n",
+ "\trun_inline_js();\n",
+ " });\n",
+ " }\n",
" }\n",
+ " // Give older versions of the autoload script a head-start to ensure\n",
+ " // they initialize before we start loading newer version.\n",
+ " setTimeout(load_or_wait, 100)\n",
"}(window));"
],
- "application/vnd.holoviews_load.v0+json": "(function(root) {\n function now() {\n return new Date();\n }\n\n var force = true;\n\n if (typeof root._bokeh_onload_callbacks === \"undefined\" || force === true) {\n root._bokeh_onload_callbacks = [];\n root._bokeh_is_loading = undefined;\n }\n\n if (typeof (root._bokeh_timeout) === \"undefined\" || force === true) {\n root._bokeh_timeout = Date.now() + 5000;\n root._bokeh_failed_load = false;\n }\n\n function run_callbacks() {\n try {\n root._bokeh_onload_callbacks.forEach(function(callback) {\n if (callback != null)\n callback();\n });\n } finally {\n delete root._bokeh_onload_callbacks\n }\n console.debug(\"Bokeh: all callbacks have finished\");\n }\n\n function load_libs(css_urls, js_urls, js_modules, callback) {\n if (css_urls == null) css_urls = [];\n if (js_urls == null) js_urls = [];\n if (js_modules == null) js_modules = [];\n\n root._bokeh_onload_callbacks.push(callback);\n if (root._bokeh_is_loading > 0) {\n console.debug(\"Bokeh: BokehJS is being loaded, scheduling callback at\", now());\n return null;\n }\n if (js_urls.length === 0 && js_modules.length === 0) {\n run_callbacks();\n return null;\n }\n console.debug(\"Bokeh: BokehJS not loaded, scheduling load and callback at\", now());\n\n function on_load() {\n root._bokeh_is_loading--;\n if (root._bokeh_is_loading === 0) {\n console.debug(\"Bokeh: all BokehJS libraries/stylesheets loaded\");\n run_callbacks()\n }\n }\n\n function on_error() {\n console.error(\"failed to load \" + url);\n }\n\n for (var i = 0; i < css_urls.length; i++) {\n var url = css_urls[i];\n const element = document.createElement(\"link\");\n element.onload = on_load;\n element.onerror = on_error;\n element.rel = \"stylesheet\";\n element.type = \"text/css\";\n element.href = url;\n console.debug(\"Bokeh: injecting link tag for BokehJS stylesheet: \", url);\n document.body.appendChild(element);\n }\n\n var skip = [];\n if (window.requirejs) {\n window.requirejs.config({'packages': {}, 'paths': {'gridstack': 'https://cdn.jsdelivr.net/npm/gridstack@4.2.5/dist/gridstack-h5', 'notyf': 'https://cdn.jsdelivr.net/npm/notyf@3/notyf.min'}, 'shim': {'gridstack': {'exports': 'GridStack'}}});\n require([\"gridstack\"], function(GridStack) {\n\twindow.GridStack = GridStack\n\ton_load()\n })\n require([\"notyf\"], function() {\n\ton_load()\n })\n root._bokeh_is_loading = css_urls.length + 2;\n } else {\n root._bokeh_is_loading = css_urls.length + js_urls.length + js_modules.length;\n } if (((window['GridStack'] !== undefined) && (!(window['GridStack'] instanceof HTMLElement))) || window.requirejs) {\n var urls = ['https://cdn.holoviz.org/panel/0.14.4/dist/bundled/gridstack/gridstack@4.2.5/dist/gridstack-h5.js'];\n for (var i = 0; i < urls.length; i++) {\n skip.push(urls[i])\n }\n } if (((window['Notyf'] !== undefined) && (!(window['Notyf'] instanceof HTMLElement))) || window.requirejs) {\n var urls = ['https://cdn.holoviz.org/panel/0.14.4/dist/bundled/notificationarea/notyf@3/notyf.min.js'];\n for (var i = 0; i < urls.length; i++) {\n skip.push(urls[i])\n }\n } for (var i = 0; i < js_urls.length; i++) {\n var url = js_urls[i];\n if (skip.indexOf(url) >= 0) {\n\tif (!window.requirejs) {\n\t on_load();\n\t}\n\tcontinue;\n }\n var element = document.createElement('script');\n element.onload = on_load;\n element.onerror = on_error;\n element.async = false;\n element.src = url;\n console.debug(\"Bokeh: injecting script tag for BokehJS library: \", url);\n document.head.appendChild(element);\n }\n for (var i = 0; i < js_modules.length; i++) {\n var url = js_modules[i];\n if (skip.indexOf(url) >= 0) {\n\tif (!window.requirejs) {\n\t on_load();\n\t}\n\tcontinue;\n }\n var element = document.createElement('script');\n element.onload = on_load;\n element.onerror = on_error;\n element.async = false;\n element.src = url;\n element.type = \"module\";\n console.debug(\"Bokeh: injecting script tag for BokehJS library: \", url);\n document.head.appendChild(element);\n }\n if (!js_urls.length && !js_modules.length) {\n on_load()\n }\n };\n\n function inject_raw_css(css) {\n const element = document.createElement(\"style\");\n element.appendChild(document.createTextNode(css));\n document.body.appendChild(element);\n }\n\n var js_urls = [\"https://cdn.bokeh.org/bokeh/release/bokeh-2.4.3.min.js\", \"https://cdn.bokeh.org/bokeh/release/bokeh-gl-2.4.3.min.js\", \"https://cdn.bokeh.org/bokeh/release/bokeh-widgets-2.4.3.min.js\", \"https://cdn.bokeh.org/bokeh/release/bokeh-tables-2.4.3.min.js\", \"https://cdn.bokeh.org/bokeh/release/bokeh-mathjax-2.4.3.min.js\", \"https://unpkg.com/@holoviz/panel@0.14.4/dist/panel.min.js\"];\n var js_modules = [];\n var css_urls = [\"https://cdn.holoviz.org/panel/0.14.4/dist/css/alerts.css\", \"https://cdn.holoviz.org/panel/0.14.4/dist/css/card.css\", \"https://cdn.holoviz.org/panel/0.14.4/dist/css/dataframe.css\", \"https://cdn.holoviz.org/panel/0.14.4/dist/css/debugger.css\", \"https://cdn.holoviz.org/panel/0.14.4/dist/css/json.css\", \"https://cdn.holoviz.org/panel/0.14.4/dist/css/loading.css\", \"https://cdn.holoviz.org/panel/0.14.4/dist/css/markdown.css\", \"https://cdn.holoviz.org/panel/0.14.4/dist/css/widgets.css\"];\n var inline_js = [ function(Bokeh) {\n inject_raw_css(\"\\n .bk.pn-loading.arc:before {\\n background-image: url(\\\"data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHN0eWxlPSJtYXJnaW46IGF1dG87IGJhY2tncm91bmQ6IG5vbmU7IGRpc3BsYXk6IGJsb2NrOyBzaGFwZS1yZW5kZXJpbmc6IGF1dG87IiB2aWV3Qm94PSIwIDAgMTAwIDEwMCIgcHJlc2VydmVBc3BlY3RSYXRpbz0ieE1pZFlNaWQiPiAgPGNpcmNsZSBjeD0iNTAiIGN5PSI1MCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSIjYzNjM2MzIiBzdHJva2Utd2lkdGg9IjEwIiByPSIzNSIgc3Ryb2tlLWRhc2hhcnJheT0iMTY0LjkzMzYxNDMxMzQ2NDE1IDU2Ljk3Nzg3MTQzNzgyMTM4Ij4gICAgPGFuaW1hdGVUcmFuc2Zvcm0gYXR0cmlidXRlTmFtZT0idHJhbnNmb3JtIiB0eXBlPSJyb3RhdGUiIHJlcGVhdENvdW50PSJpbmRlZmluaXRlIiBkdXI9IjFzIiB2YWx1ZXM9IjAgNTAgNTA7MzYwIDUwIDUwIiBrZXlUaW1lcz0iMDsxIj48L2FuaW1hdGVUcmFuc2Zvcm0+ICA8L2NpcmNsZT48L3N2Zz4=\\\");\\n background-size: auto calc(min(50%, 400px));\\n }\\n \");\n }, function(Bokeh) {\n Bokeh.set_log_level(\"info\");\n },\nfunction(Bokeh) {} // ensure no trailing comma for IE\n ];\n\n function run_inline_js() {\n if ((root.Bokeh !== undefined) || (force === true)) {\n for (var i = 0; i < inline_js.length; i++) {\n inline_js[i].call(root, root.Bokeh);\n }} else if (Date.now() < root._bokeh_timeout) {\n setTimeout(run_inline_js, 100);\n } else if (!root._bokeh_failed_load) {\n console.log(\"Bokeh: BokehJS failed to load within specified timeout.\");\n root._bokeh_failed_load = true;\n }\n }\n\n if (root._bokeh_is_loading === 0) {\n console.debug(\"Bokeh: BokehJS loaded, going straight to plotting\");\n run_inline_js();\n } else {\n load_libs(css_urls, js_urls, js_modules, function() {\n console.debug(\"Bokeh: BokehJS plotting callback run at\", now());\n run_inline_js();\n });\n }\n}(window));"
+ "application/vnd.holoviews_load.v0+json": "(function(root) {\n function now() {\n return new Date();\n }\n\n var force = true;\n var py_version = '3.2.2'.replace('rc', '-rc.').replace('.dev', '-dev.');\n var is_dev = py_version.indexOf(\"+\") !== -1 || py_version.indexOf(\"-\") !== -1;\n var reloading = false;\n var Bokeh = root.Bokeh;\n var bokeh_loaded = Bokeh != null && (Bokeh.version === py_version || (Bokeh.versions !== undefined && Bokeh.versions.has(py_version)));\n\n if (typeof (root._bokeh_timeout) === \"undefined\" || force) {\n root._bokeh_timeout = Date.now() + 5000;\n root._bokeh_failed_load = false;\n }\n\n function run_callbacks() {\n try {\n root._bokeh_onload_callbacks.forEach(function(callback) {\n if (callback != null)\n callback();\n });\n } finally {\n delete root._bokeh_onload_callbacks;\n }\n console.debug(\"Bokeh: all callbacks have finished\");\n }\n\n function load_libs(css_urls, js_urls, js_modules, js_exports, callback) {\n if (css_urls == null) css_urls = [];\n if (js_urls == null) js_urls = [];\n if (js_modules == null) js_modules = [];\n if (js_exports == null) js_exports = {};\n\n root._bokeh_onload_callbacks.push(callback);\n\n if (root._bokeh_is_loading > 0) {\n console.debug(\"Bokeh: BokehJS is being loaded, scheduling callback at\", now());\n return null;\n }\n if (js_urls.length === 0 && js_modules.length === 0 && Object.keys(js_exports).length === 0) {\n run_callbacks();\n return null;\n }\n if (!reloading) {\n console.debug(\"Bokeh: BokehJS not loaded, scheduling load and callback at\", now());\n }\n\n function on_load() {\n root._bokeh_is_loading--;\n if (root._bokeh_is_loading === 0) {\n console.debug(\"Bokeh: all BokehJS libraries/stylesheets loaded\");\n run_callbacks()\n }\n }\n window._bokeh_on_load = on_load\n\n function on_error() {\n console.error(\"failed to load \" + url);\n }\n\n var skip = [];\n if (window.requirejs) {\n window.requirejs.config({'packages': {}, 'paths': {'jspanel': 'https://cdn.jsdelivr.net/npm/jspanel4@4.12.0/dist/jspanel', 'jspanel-modal': 'https://cdn.jsdelivr.net/npm/jspanel4@4.12.0/dist/extensions/modal/jspanel.modal', 'jspanel-tooltip': 'https://cdn.jsdelivr.net/npm/jspanel4@4.12.0/dist/extensions/tooltip/jspanel.tooltip', 'jspanel-hint': 'https://cdn.jsdelivr.net/npm/jspanel4@4.12.0/dist/extensions/hint/jspanel.hint', 'jspanel-layout': 'https://cdn.jsdelivr.net/npm/jspanel4@4.12.0/dist/extensions/layout/jspanel.layout', 'jspanel-contextmenu': 'https://cdn.jsdelivr.net/npm/jspanel4@4.12.0/dist/extensions/contextmenu/jspanel.contextmenu', 'jspanel-dock': 'https://cdn.jsdelivr.net/npm/jspanel4@4.12.0/dist/extensions/dock/jspanel.dock', 'gridstack': 'https://cdn.jsdelivr.net/npm/gridstack@7.2.3/dist/gridstack-all', 'notyf': 'https://cdn.jsdelivr.net/npm/notyf@3/notyf.min'}, 'shim': {'jspanel': {'exports': 'jsPanel'}, 'gridstack': {'exports': 'GridStack'}}});\n require([\"jspanel\"], function(jsPanel) {\n\twindow.jsPanel = jsPanel\n\ton_load()\n })\n require([\"jspanel-modal\"], function() {\n\ton_load()\n })\n require([\"jspanel-tooltip\"], function() {\n\ton_load()\n })\n require([\"jspanel-hint\"], function() {\n\ton_load()\n })\n require([\"jspanel-layout\"], function() {\n\ton_load()\n })\n require([\"jspanel-contextmenu\"], function() {\n\ton_load()\n })\n require([\"jspanel-dock\"], function() {\n\ton_load()\n })\n require([\"gridstack\"], function(GridStack) {\n\twindow.GridStack = GridStack\n\ton_load()\n })\n require([\"notyf\"], function() {\n\ton_load()\n })\n root._bokeh_is_loading = css_urls.length + 9;\n } else {\n root._bokeh_is_loading = css_urls.length + js_urls.length + js_modules.length + Object.keys(js_exports).length;\n }\n\n var existing_stylesheets = []\n var links = document.getElementsByTagName('link')\n for (var i = 0; i < links.length; i++) {\n var link = links[i]\n if (link.href != null) {\n\texisting_stylesheets.push(link.href)\n }\n }\n for (var i = 0; i < css_urls.length; i++) {\n var url = css_urls[i];\n if (existing_stylesheets.indexOf(url) !== -1) {\n\ton_load()\n\tcontinue;\n }\n const element = document.createElement(\"link\");\n element.onload = on_load;\n element.onerror = on_error;\n element.rel = \"stylesheet\";\n element.type = \"text/css\";\n element.href = url;\n console.debug(\"Bokeh: injecting link tag for BokehJS stylesheet: \", url);\n document.body.appendChild(element);\n } if (((window['jsPanel'] !== undefined) && (!(window['jsPanel'] instanceof HTMLElement))) || window.requirejs) {\n var urls = ['https://cdn.holoviz.org/panel/1.2.3/dist/bundled/floatpanel/jspanel4@4.12.0/dist/jspanel.js', 'https://cdn.holoviz.org/panel/1.2.3/dist/bundled/floatpanel/jspanel4@4.12.0/dist/extensions/modal/jspanel.modal.js', 'https://cdn.holoviz.org/panel/1.2.3/dist/bundled/floatpanel/jspanel4@4.12.0/dist/extensions/tooltip/jspanel.tooltip.js', 'https://cdn.holoviz.org/panel/1.2.3/dist/bundled/floatpanel/jspanel4@4.12.0/dist/extensions/hint/jspanel.hint.js', 'https://cdn.holoviz.org/panel/1.2.3/dist/bundled/floatpanel/jspanel4@4.12.0/dist/extensions/layout/jspanel.layout.js', 'https://cdn.holoviz.org/panel/1.2.3/dist/bundled/floatpanel/jspanel4@4.12.0/dist/extensions/contextmenu/jspanel.contextmenu.js', 'https://cdn.holoviz.org/panel/1.2.3/dist/bundled/floatpanel/jspanel4@4.12.0/dist/extensions/dock/jspanel.dock.js'];\n for (var i = 0; i < urls.length; i++) {\n skip.push(urls[i])\n }\n } if (((window['GridStack'] !== undefined) && (!(window['GridStack'] instanceof HTMLElement))) || window.requirejs) {\n var urls = ['https://cdn.holoviz.org/panel/1.2.3/dist/bundled/gridstack/gridstack@7.2.3/dist/gridstack-all.js'];\n for (var i = 0; i < urls.length; i++) {\n skip.push(urls[i])\n }\n } if (((window['Notyf'] !== undefined) && (!(window['Notyf'] instanceof HTMLElement))) || window.requirejs) {\n var urls = ['https://cdn.holoviz.org/panel/1.2.3/dist/bundled/notificationarea/notyf@3/notyf.min.js'];\n for (var i = 0; i < urls.length; i++) {\n skip.push(urls[i])\n }\n } var existing_scripts = []\n var scripts = document.getElementsByTagName('script')\n for (var i = 0; i < scripts.length; i++) {\n var script = scripts[i]\n if (script.src != null) {\n\texisting_scripts.push(script.src)\n }\n }\n for (var i = 0; i < js_urls.length; i++) {\n var url = js_urls[i];\n if (skip.indexOf(url) !== -1 || existing_scripts.indexOf(url) !== -1) {\n\tif (!window.requirejs) {\n\t on_load();\n\t}\n\tcontinue;\n }\n var element = document.createElement('script');\n element.onload = on_load;\n element.onerror = on_error;\n element.async = false;\n element.src = url;\n console.debug(\"Bokeh: injecting script tag for BokehJS library: \", url);\n document.head.appendChild(element);\n }\n for (var i = 0; i < js_modules.length; i++) {\n var url = js_modules[i];\n if (skip.indexOf(url) !== -1 || existing_scripts.indexOf(url) !== -1) {\n\tif (!window.requirejs) {\n\t on_load();\n\t}\n\tcontinue;\n }\n var element = document.createElement('script');\n element.onload = on_load;\n element.onerror = on_error;\n element.async = false;\n element.src = url;\n element.type = \"module\";\n console.debug(\"Bokeh: injecting script tag for BokehJS library: \", url);\n document.head.appendChild(element);\n }\n for (const name in js_exports) {\n var url = js_exports[name];\n if (skip.indexOf(url) >= 0 || root[name] != null) {\n\tif (!window.requirejs) {\n\t on_load();\n\t}\n\tcontinue;\n }\n var element = document.createElement('script');\n element.onerror = on_error;\n element.async = false;\n element.type = \"module\";\n console.debug(\"Bokeh: injecting script tag for BokehJS library: \", url);\n element.textContent = `\n import ${name} from \"${url}\"\n window.${name} = ${name}\n window._bokeh_on_load()\n `\n document.head.appendChild(element);\n }\n if (!js_urls.length && !js_modules.length) {\n on_load()\n }\n };\n\n function inject_raw_css(css) {\n const element = document.createElement(\"style\");\n element.appendChild(document.createTextNode(css));\n document.body.appendChild(element);\n }\n\n var js_urls = [\"https://cdn.bokeh.org/bokeh/release/bokeh-3.2.2.min.js\", \"https://cdn.bokeh.org/bokeh/release/bokeh-gl-3.2.2.min.js\", \"https://cdn.bokeh.org/bokeh/release/bokeh-widgets-3.2.2.min.js\", \"https://cdn.bokeh.org/bokeh/release/bokeh-tables-3.2.2.min.js\", \"https://cdn.holoviz.org/panel/1.2.3/dist/panel.min.js\", \"https://cdn.jsdelivr.net/npm/@holoviz/geoviews@1.10.1/dist/geoviews.min.js\"];\n var js_modules = [];\n var js_exports = {};\n var css_urls = [];\n var inline_js = [ function(Bokeh) {\n Bokeh.set_log_level(\"info\");\n },\nfunction(Bokeh) {} // ensure no trailing comma for IE\n ];\n\n function run_inline_js() {\n if ((root.Bokeh !== undefined) || (force === true)) {\n for (var i = 0; i < inline_js.length; i++) {\n inline_js[i].call(root, root.Bokeh);\n }\n // Cache old bokeh versions\n if (Bokeh != undefined && !reloading) {\n\tvar NewBokeh = root.Bokeh;\n\tif (Bokeh.versions === undefined) {\n\t Bokeh.versions = new Map();\n\t}\n\tif (NewBokeh.version !== Bokeh.version) {\n\t Bokeh.versions.set(NewBokeh.version, NewBokeh)\n\t}\n\troot.Bokeh = Bokeh;\n }} else if (Date.now() < root._bokeh_timeout) {\n setTimeout(run_inline_js, 100);\n } else if (!root._bokeh_failed_load) {\n console.log(\"Bokeh: BokehJS failed to load within specified timeout.\");\n root._bokeh_failed_load = true;\n }\n root._bokeh_is_initializing = false\n }\n\n function load_or_wait() {\n // Implement a backoff loop that tries to ensure we do not load multiple\n // versions of Bokeh and its dependencies at the same time.\n // In recent versions we use the root._bokeh_is_initializing flag\n // to determine whether there is an ongoing attempt to initialize\n // bokeh, however for backward compatibility we also try to ensure\n // that we do not start loading a newer (Panel>=1.0 and Bokeh>3) version\n // before older versions are fully initialized.\n if (root._bokeh_is_initializing && Date.now() > root._bokeh_timeout) {\n root._bokeh_is_initializing = false;\n root._bokeh_onload_callbacks = undefined;\n console.log(\"Bokeh: BokehJS was loaded multiple times but one version failed to initialize.\");\n load_or_wait();\n } else if (root._bokeh_is_initializing || (typeof root._bokeh_is_initializing === \"undefined\" && root._bokeh_onload_callbacks !== undefined)) {\n setTimeout(load_or_wait, 100);\n } else {\n Bokeh = root.Bokeh;\n bokeh_loaded = Bokeh != null && (Bokeh.version === py_version || (Bokeh.versions !== undefined && Bokeh.versions.has(py_version)));\n root._bokeh_is_initializing = true\n root._bokeh_onload_callbacks = []\n if (!reloading && (!bokeh_loaded || is_dev)) {\n\troot.Bokeh = undefined;\n }\n load_libs(css_urls, js_urls, js_modules, js_exports, function() {\n\tconsole.debug(\"Bokeh: BokehJS plotting callback run at\", now());\n\trun_inline_js();\n });\n }\n }\n // Give older versions of the autoload script a head-start to ensure\n // they initialize before we start loading newer version.\n setTimeout(load_or_wait, 100)\n}(window));"
},
"metadata": {},
"output_type": "display_data"
@@ -507,10 +613,20 @@
{
"data": {
"text/html": [
- ""
]
@@ -591,13 +707,13 @@
" }\n",
"\n",
" var force = true;\n",
+ " var py_version = '3.2.2'.replace('rc', '-rc.').replace('.dev', '-dev.');\n",
+ " var is_dev = py_version.indexOf(\"+\") !== -1 || py_version.indexOf(\"-\") !== -1;\n",
+ " var reloading = false;\n",
+ " var Bokeh = root.Bokeh;\n",
+ " var bokeh_loaded = Bokeh != null && (Bokeh.version === py_version || (Bokeh.versions !== undefined && Bokeh.versions.has(py_version)));\n",
"\n",
- " if (typeof root._bokeh_onload_callbacks === \"undefined\" || force === true) {\n",
- " root._bokeh_onload_callbacks = [];\n",
- " root._bokeh_is_loading = undefined;\n",
- " }\n",
- "\n",
- " if (typeof (root._bokeh_timeout) === \"undefined\" || force === true) {\n",
+ " if (typeof (root._bokeh_timeout) === \"undefined\" || force) {\n",
" root._bokeh_timeout = Date.now() + 5000;\n",
" root._bokeh_failed_load = false;\n",
" }\n",
@@ -609,26 +725,30 @@
" callback();\n",
" });\n",
" } finally {\n",
- " delete root._bokeh_onload_callbacks\n",
+ " delete root._bokeh_onload_callbacks;\n",
" }\n",
" console.debug(\"Bokeh: all callbacks have finished\");\n",
" }\n",
"\n",
- " function load_libs(css_urls, js_urls, js_modules, callback) {\n",
+ " function load_libs(css_urls, js_urls, js_modules, js_exports, callback) {\n",
" if (css_urls == null) css_urls = [];\n",
" if (js_urls == null) js_urls = [];\n",
" if (js_modules == null) js_modules = [];\n",
+ " if (js_exports == null) js_exports = {};\n",
"\n",
" root._bokeh_onload_callbacks.push(callback);\n",
+ "\n",
" if (root._bokeh_is_loading > 0) {\n",
" console.debug(\"Bokeh: BokehJS is being loaded, scheduling callback at\", now());\n",
" return null;\n",
" }\n",
- " if (js_urls.length === 0 && js_modules.length === 0) {\n",
+ " if (js_urls.length === 0 && js_modules.length === 0 && Object.keys(js_exports).length === 0) {\n",
" run_callbacks();\n",
" return null;\n",
" }\n",
- " console.debug(\"Bokeh: BokehJS not loaded, scheduling load and callback at\", now());\n",
+ " if (!reloading) {\n",
+ " console.debug(\"Bokeh: BokehJS not loaded, scheduling load and callback at\", now());\n",
+ " }\n",
"\n",
" function on_load() {\n",
" root._bokeh_is_loading--;\n",
@@ -637,26 +757,37 @@
" run_callbacks()\n",
" }\n",
" }\n",
+ " window._bokeh_on_load = on_load\n",
"\n",
" function on_error() {\n",
" console.error(\"failed to load \" + url);\n",
" }\n",
"\n",
- " for (var i = 0; i < css_urls.length; i++) {\n",
- " var url = css_urls[i];\n",
- " const element = document.createElement(\"link\");\n",
- " element.onload = on_load;\n",
- " element.onerror = on_error;\n",
- " element.rel = \"stylesheet\";\n",
- " element.type = \"text/css\";\n",
- " element.href = url;\n",
- " console.debug(\"Bokeh: injecting link tag for BokehJS stylesheet: \", url);\n",
- " document.body.appendChild(element);\n",
- " }\n",
- "\n",
" var skip = [];\n",
" if (window.requirejs) {\n",
- " window.requirejs.config({'packages': {}, 'paths': {'gridstack': 'https://cdn.jsdelivr.net/npm/gridstack@4.2.5/dist/gridstack-h5', 'notyf': 'https://cdn.jsdelivr.net/npm/notyf@3/notyf.min'}, 'shim': {'gridstack': {'exports': 'GridStack'}}});\n",
+ " window.requirejs.config({'packages': {}, 'paths': {'jspanel': 'https://cdn.jsdelivr.net/npm/jspanel4@4.12.0/dist/jspanel', 'jspanel-modal': 'https://cdn.jsdelivr.net/npm/jspanel4@4.12.0/dist/extensions/modal/jspanel.modal', 'jspanel-tooltip': 'https://cdn.jsdelivr.net/npm/jspanel4@4.12.0/dist/extensions/tooltip/jspanel.tooltip', 'jspanel-hint': 'https://cdn.jsdelivr.net/npm/jspanel4@4.12.0/dist/extensions/hint/jspanel.hint', 'jspanel-layout': 'https://cdn.jsdelivr.net/npm/jspanel4@4.12.0/dist/extensions/layout/jspanel.layout', 'jspanel-contextmenu': 'https://cdn.jsdelivr.net/npm/jspanel4@4.12.0/dist/extensions/contextmenu/jspanel.contextmenu', 'jspanel-dock': 'https://cdn.jsdelivr.net/npm/jspanel4@4.12.0/dist/extensions/dock/jspanel.dock', 'gridstack': 'https://cdn.jsdelivr.net/npm/gridstack@7.2.3/dist/gridstack-all', 'notyf': 'https://cdn.jsdelivr.net/npm/notyf@3/notyf.min'}, 'shim': {'jspanel': {'exports': 'jsPanel'}, 'gridstack': {'exports': 'GridStack'}}});\n",
+ " require([\"jspanel\"], function(jsPanel) {\n",
+ "\twindow.jsPanel = jsPanel\n",
+ "\ton_load()\n",
+ " })\n",
+ " require([\"jspanel-modal\"], function() {\n",
+ "\ton_load()\n",
+ " })\n",
+ " require([\"jspanel-tooltip\"], function() {\n",
+ "\ton_load()\n",
+ " })\n",
+ " require([\"jspanel-hint\"], function() {\n",
+ "\ton_load()\n",
+ " })\n",
+ " require([\"jspanel-layout\"], function() {\n",
+ "\ton_load()\n",
+ " })\n",
+ " require([\"jspanel-contextmenu\"], function() {\n",
+ "\ton_load()\n",
+ " })\n",
+ " require([\"jspanel-dock\"], function() {\n",
+ "\ton_load()\n",
+ " })\n",
" require([\"gridstack\"], function(GridStack) {\n",
"\twindow.GridStack = GridStack\n",
"\ton_load()\n",
@@ -664,22 +795,59 @@
" require([\"notyf\"], function() {\n",
"\ton_load()\n",
" })\n",
- " root._bokeh_is_loading = css_urls.length + 2;\n",
+ " root._bokeh_is_loading = css_urls.length + 9;\n",
" } else {\n",
- " root._bokeh_is_loading = css_urls.length + js_urls.length + js_modules.length;\n",
+ " root._bokeh_is_loading = css_urls.length + js_urls.length + js_modules.length + Object.keys(js_exports).length;\n",
+ " }\n",
+ "\n",
+ " var existing_stylesheets = []\n",
+ " var links = document.getElementsByTagName('link')\n",
+ " for (var i = 0; i < links.length; i++) {\n",
+ " var link = links[i]\n",
+ " if (link.href != null) {\n",
+ "\texisting_stylesheets.push(link.href)\n",
+ " }\n",
+ " }\n",
+ " for (var i = 0; i < css_urls.length; i++) {\n",
+ " var url = css_urls[i];\n",
+ " if (existing_stylesheets.indexOf(url) !== -1) {\n",
+ "\ton_load()\n",
+ "\tcontinue;\n",
+ " }\n",
+ " const element = document.createElement(\"link\");\n",
+ " element.onload = on_load;\n",
+ " element.onerror = on_error;\n",
+ " element.rel = \"stylesheet\";\n",
+ " element.type = \"text/css\";\n",
+ " element.href = url;\n",
+ " console.debug(\"Bokeh: injecting link tag for BokehJS stylesheet: \", url);\n",
+ " document.body.appendChild(element);\n",
+ " } if (((window['jsPanel'] !== undefined) && (!(window['jsPanel'] instanceof HTMLElement))) || window.requirejs) {\n",
+ " var urls = ['https://cdn.holoviz.org/panel/1.2.3/dist/bundled/floatpanel/jspanel4@4.12.0/dist/jspanel.js', 'https://cdn.holoviz.org/panel/1.2.3/dist/bundled/floatpanel/jspanel4@4.12.0/dist/extensions/modal/jspanel.modal.js', 'https://cdn.holoviz.org/panel/1.2.3/dist/bundled/floatpanel/jspanel4@4.12.0/dist/extensions/tooltip/jspanel.tooltip.js', 'https://cdn.holoviz.org/panel/1.2.3/dist/bundled/floatpanel/jspanel4@4.12.0/dist/extensions/hint/jspanel.hint.js', 'https://cdn.holoviz.org/panel/1.2.3/dist/bundled/floatpanel/jspanel4@4.12.0/dist/extensions/layout/jspanel.layout.js', 'https://cdn.holoviz.org/panel/1.2.3/dist/bundled/floatpanel/jspanel4@4.12.0/dist/extensions/contextmenu/jspanel.contextmenu.js', 'https://cdn.holoviz.org/panel/1.2.3/dist/bundled/floatpanel/jspanel4@4.12.0/dist/extensions/dock/jspanel.dock.js'];\n",
+ " for (var i = 0; i < urls.length; i++) {\n",
+ " skip.push(urls[i])\n",
+ " }\n",
" } if (((window['GridStack'] !== undefined) && (!(window['GridStack'] instanceof HTMLElement))) || window.requirejs) {\n",
- " var urls = ['https://cdn.holoviz.org/panel/0.14.4/dist/bundled/gridstack/gridstack@4.2.5/dist/gridstack-h5.js'];\n",
+ " var urls = ['https://cdn.holoviz.org/panel/1.2.3/dist/bundled/gridstack/gridstack@7.2.3/dist/gridstack-all.js'];\n",
" for (var i = 0; i < urls.length; i++) {\n",
" skip.push(urls[i])\n",
" }\n",
" } if (((window['Notyf'] !== undefined) && (!(window['Notyf'] instanceof HTMLElement))) || window.requirejs) {\n",
- " var urls = ['https://cdn.holoviz.org/panel/0.14.4/dist/bundled/notificationarea/notyf@3/notyf.min.js'];\n",
+ " var urls = ['https://cdn.holoviz.org/panel/1.2.3/dist/bundled/notificationarea/notyf@3/notyf.min.js'];\n",
" for (var i = 0; i < urls.length; i++) {\n",
" skip.push(urls[i])\n",
" }\n",
- " } for (var i = 0; i < js_urls.length; i++) {\n",
+ " } var existing_scripts = []\n",
+ " var scripts = document.getElementsByTagName('script')\n",
+ " for (var i = 0; i < scripts.length; i++) {\n",
+ " var script = scripts[i]\n",
+ " if (script.src != null) {\n",
+ "\texisting_scripts.push(script.src)\n",
+ " }\n",
+ " }\n",
+ " for (var i = 0; i < js_urls.length; i++) {\n",
" var url = js_urls[i];\n",
- " if (skip.indexOf(url) >= 0) {\n",
+ " if (skip.indexOf(url) !== -1 || existing_scripts.indexOf(url) !== -1) {\n",
"\tif (!window.requirejs) {\n",
"\t on_load();\n",
"\t}\n",
@@ -695,7 +863,7 @@
" }\n",
" for (var i = 0; i < js_modules.length; i++) {\n",
" var url = js_modules[i];\n",
- " if (skip.indexOf(url) >= 0) {\n",
+ " if (skip.indexOf(url) !== -1 || existing_scripts.indexOf(url) !== -1) {\n",
"\tif (!window.requirejs) {\n",
"\t on_load();\n",
"\t}\n",
@@ -710,6 +878,26 @@
" console.debug(\"Bokeh: injecting script tag for BokehJS library: \", url);\n",
" document.head.appendChild(element);\n",
" }\n",
+ " for (const name in js_exports) {\n",
+ " var url = js_exports[name];\n",
+ " if (skip.indexOf(url) >= 0 || root[name] != null) {\n",
+ "\tif (!window.requirejs) {\n",
+ "\t on_load();\n",
+ "\t}\n",
+ "\tcontinue;\n",
+ " }\n",
+ " var element = document.createElement('script');\n",
+ " element.onerror = on_error;\n",
+ " element.async = false;\n",
+ " element.type = \"module\";\n",
+ " console.debug(\"Bokeh: injecting script tag for BokehJS library: \", url);\n",
+ " element.textContent = `\n",
+ " import ${name} from \"${url}\"\n",
+ " window.${name} = ${name}\n",
+ " window._bokeh_on_load()\n",
+ " `\n",
+ " document.head.appendChild(element);\n",
+ " }\n",
" if (!js_urls.length && !js_modules.length) {\n",
" on_load()\n",
" }\n",
@@ -721,12 +909,11 @@
" document.body.appendChild(element);\n",
" }\n",
"\n",
- " var js_urls = [\"https://cdn.bokeh.org/bokeh/release/bokeh-2.4.3.min.js\", \"https://cdn.bokeh.org/bokeh/release/bokeh-gl-2.4.3.min.js\", \"https://cdn.bokeh.org/bokeh/release/bokeh-widgets-2.4.3.min.js\", \"https://cdn.bokeh.org/bokeh/release/bokeh-tables-2.4.3.min.js\", \"https://cdn.bokeh.org/bokeh/release/bokeh-mathjax-2.4.3.min.js\", \"https://unpkg.com/@holoviz/panel@0.14.4/dist/panel.min.js\"];\n",
+ " var js_urls = [\"https://cdn.bokeh.org/bokeh/release/bokeh-3.2.2.min.js\", \"https://cdn.bokeh.org/bokeh/release/bokeh-gl-3.2.2.min.js\", \"https://cdn.bokeh.org/bokeh/release/bokeh-widgets-3.2.2.min.js\", \"https://cdn.bokeh.org/bokeh/release/bokeh-tables-3.2.2.min.js\", \"https://cdn.holoviz.org/panel/1.2.3/dist/panel.min.js\", \"https://cdn.jsdelivr.net/npm/@holoviz/geoviews@1.10.1/dist/geoviews.min.js\"];\n",
" var js_modules = [];\n",
- " var css_urls = [\"https://cdn.holoviz.org/panel/0.14.4/dist/css/alerts.css\", \"https://cdn.holoviz.org/panel/0.14.4/dist/css/card.css\", \"https://cdn.holoviz.org/panel/0.14.4/dist/css/dataframe.css\", \"https://cdn.holoviz.org/panel/0.14.4/dist/css/debugger.css\", \"https://cdn.holoviz.org/panel/0.14.4/dist/css/json.css\", \"https://cdn.holoviz.org/panel/0.14.4/dist/css/loading.css\", \"https://cdn.holoviz.org/panel/0.14.4/dist/css/markdown.css\", \"https://cdn.holoviz.org/panel/0.14.4/dist/css/widgets.css\"];\n",
+ " var js_exports = {};\n",
+ " var css_urls = [];\n",
" var inline_js = [ function(Bokeh) {\n",
- " inject_raw_css(\"\\n .bk.pn-loading.arc:before {\\n background-image: url(\\\"data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHN0eWxlPSJtYXJnaW46IGF1dG87IGJhY2tncm91bmQ6IG5vbmU7IGRpc3BsYXk6IGJsb2NrOyBzaGFwZS1yZW5kZXJpbmc6IGF1dG87IiB2aWV3Qm94PSIwIDAgMTAwIDEwMCIgcHJlc2VydmVBc3BlY3RSYXRpbz0ieE1pZFlNaWQiPiAgPGNpcmNsZSBjeD0iNTAiIGN5PSI1MCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSIjYzNjM2MzIiBzdHJva2Utd2lkdGg9IjEwIiByPSIzNSIgc3Ryb2tlLWRhc2hhcnJheT0iMTY0LjkzMzYxNDMxMzQ2NDE1IDU2Ljk3Nzg3MTQzNzgyMTM4Ij4gICAgPGFuaW1hdGVUcmFuc2Zvcm0gYXR0cmlidXRlTmFtZT0idHJhbnNmb3JtIiB0eXBlPSJyb3RhdGUiIHJlcGVhdENvdW50PSJpbmRlZmluaXRlIiBkdXI9IjFzIiB2YWx1ZXM9IjAgNTAgNTA7MzYwIDUwIDUwIiBrZXlUaW1lcz0iMDsxIj48L2FuaW1hdGVUcmFuc2Zvcm0+ICA8L2NpcmNsZT48L3N2Zz4=\\\");\\n background-size: auto calc(min(50%, 400px));\\n }\\n \");\n",
- " }, function(Bokeh) {\n",
" Bokeh.set_log_level(\"info\");\n",
" },\n",
"function(Bokeh) {} // ensure no trailing comma for IE\n",
@@ -736,26 +923,61 @@
" if ((root.Bokeh !== undefined) || (force === true)) {\n",
" for (var i = 0; i < inline_js.length; i++) {\n",
" inline_js[i].call(root, root.Bokeh);\n",
+ " }\n",
+ " // Cache old bokeh versions\n",
+ " if (Bokeh != undefined && !reloading) {\n",
+ "\tvar NewBokeh = root.Bokeh;\n",
+ "\tif (Bokeh.versions === undefined) {\n",
+ "\t Bokeh.versions = new Map();\n",
+ "\t}\n",
+ "\tif (NewBokeh.version !== Bokeh.version) {\n",
+ "\t Bokeh.versions.set(NewBokeh.version, NewBokeh)\n",
+ "\t}\n",
+ "\troot.Bokeh = Bokeh;\n",
" }} else if (Date.now() < root._bokeh_timeout) {\n",
" setTimeout(run_inline_js, 100);\n",
" } else if (!root._bokeh_failed_load) {\n",
" console.log(\"Bokeh: BokehJS failed to load within specified timeout.\");\n",
" root._bokeh_failed_load = true;\n",
" }\n",
+ " root._bokeh_is_initializing = false\n",
" }\n",
"\n",
- " if (root._bokeh_is_loading === 0) {\n",
- " console.debug(\"Bokeh: BokehJS loaded, going straight to plotting\");\n",
- " run_inline_js();\n",
- " } else {\n",
- " load_libs(css_urls, js_urls, js_modules, function() {\n",
- " console.debug(\"Bokeh: BokehJS plotting callback run at\", now());\n",
- " run_inline_js();\n",
- " });\n",
+ " function load_or_wait() {\n",
+ " // Implement a backoff loop that tries to ensure we do not load multiple\n",
+ " // versions of Bokeh and its dependencies at the same time.\n",
+ " // In recent versions we use the root._bokeh_is_initializing flag\n",
+ " // to determine whether there is an ongoing attempt to initialize\n",
+ " // bokeh, however for backward compatibility we also try to ensure\n",
+ " // that we do not start loading a newer (Panel>=1.0 and Bokeh>3) version\n",
+ " // before older versions are fully initialized.\n",
+ " if (root._bokeh_is_initializing && Date.now() > root._bokeh_timeout) {\n",
+ " root._bokeh_is_initializing = false;\n",
+ " root._bokeh_onload_callbacks = undefined;\n",
+ " console.log(\"Bokeh: BokehJS was loaded multiple times but one version failed to initialize.\");\n",
+ " load_or_wait();\n",
+ " } else if (root._bokeh_is_initializing || (typeof root._bokeh_is_initializing === \"undefined\" && root._bokeh_onload_callbacks !== undefined)) {\n",
+ " setTimeout(load_or_wait, 100);\n",
+ " } else {\n",
+ " Bokeh = root.Bokeh;\n",
+ " bokeh_loaded = Bokeh != null && (Bokeh.version === py_version || (Bokeh.versions !== undefined && Bokeh.versions.has(py_version)));\n",
+ " root._bokeh_is_initializing = true\n",
+ " root._bokeh_onload_callbacks = []\n",
+ " if (!reloading && (!bokeh_loaded || is_dev)) {\n",
+ "\troot.Bokeh = undefined;\n",
+ " }\n",
+ " load_libs(css_urls, js_urls, js_modules, js_exports, function() {\n",
+ "\tconsole.debug(\"Bokeh: BokehJS plotting callback run at\", now());\n",
+ "\trun_inline_js();\n",
+ " });\n",
+ " }\n",
" }\n",
+ " // Give older versions of the autoload script a head-start to ensure\n",
+ " // they initialize before we start loading newer version.\n",
+ " setTimeout(load_or_wait, 100)\n",
"}(window));"
],
- "application/vnd.holoviews_load.v0+json": "(function(root) {\n function now() {\n return new Date();\n }\n\n var force = true;\n\n if (typeof root._bokeh_onload_callbacks === \"undefined\" || force === true) {\n root._bokeh_onload_callbacks = [];\n root._bokeh_is_loading = undefined;\n }\n\n if (typeof (root._bokeh_timeout) === \"undefined\" || force === true) {\n root._bokeh_timeout = Date.now() + 5000;\n root._bokeh_failed_load = false;\n }\n\n function run_callbacks() {\n try {\n root._bokeh_onload_callbacks.forEach(function(callback) {\n if (callback != null)\n callback();\n });\n } finally {\n delete root._bokeh_onload_callbacks\n }\n console.debug(\"Bokeh: all callbacks have finished\");\n }\n\n function load_libs(css_urls, js_urls, js_modules, callback) {\n if (css_urls == null) css_urls = [];\n if (js_urls == null) js_urls = [];\n if (js_modules == null) js_modules = [];\n\n root._bokeh_onload_callbacks.push(callback);\n if (root._bokeh_is_loading > 0) {\n console.debug(\"Bokeh: BokehJS is being loaded, scheduling callback at\", now());\n return null;\n }\n if (js_urls.length === 0 && js_modules.length === 0) {\n run_callbacks();\n return null;\n }\n console.debug(\"Bokeh: BokehJS not loaded, scheduling load and callback at\", now());\n\n function on_load() {\n root._bokeh_is_loading--;\n if (root._bokeh_is_loading === 0) {\n console.debug(\"Bokeh: all BokehJS libraries/stylesheets loaded\");\n run_callbacks()\n }\n }\n\n function on_error() {\n console.error(\"failed to load \" + url);\n }\n\n for (var i = 0; i < css_urls.length; i++) {\n var url = css_urls[i];\n const element = document.createElement(\"link\");\n element.onload = on_load;\n element.onerror = on_error;\n element.rel = \"stylesheet\";\n element.type = \"text/css\";\n element.href = url;\n console.debug(\"Bokeh: injecting link tag for BokehJS stylesheet: \", url);\n document.body.appendChild(element);\n }\n\n var skip = [];\n if (window.requirejs) {\n window.requirejs.config({'packages': {}, 'paths': {'gridstack': 'https://cdn.jsdelivr.net/npm/gridstack@4.2.5/dist/gridstack-h5', 'notyf': 'https://cdn.jsdelivr.net/npm/notyf@3/notyf.min'}, 'shim': {'gridstack': {'exports': 'GridStack'}}});\n require([\"gridstack\"], function(GridStack) {\n\twindow.GridStack = GridStack\n\ton_load()\n })\n require([\"notyf\"], function() {\n\ton_load()\n })\n root._bokeh_is_loading = css_urls.length + 2;\n } else {\n root._bokeh_is_loading = css_urls.length + js_urls.length + js_modules.length;\n } if (((window['GridStack'] !== undefined) && (!(window['GridStack'] instanceof HTMLElement))) || window.requirejs) {\n var urls = ['https://cdn.holoviz.org/panel/0.14.4/dist/bundled/gridstack/gridstack@4.2.5/dist/gridstack-h5.js'];\n for (var i = 0; i < urls.length; i++) {\n skip.push(urls[i])\n }\n } if (((window['Notyf'] !== undefined) && (!(window['Notyf'] instanceof HTMLElement))) || window.requirejs) {\n var urls = ['https://cdn.holoviz.org/panel/0.14.4/dist/bundled/notificationarea/notyf@3/notyf.min.js'];\n for (var i = 0; i < urls.length; i++) {\n skip.push(urls[i])\n }\n } for (var i = 0; i < js_urls.length; i++) {\n var url = js_urls[i];\n if (skip.indexOf(url) >= 0) {\n\tif (!window.requirejs) {\n\t on_load();\n\t}\n\tcontinue;\n }\n var element = document.createElement('script');\n element.onload = on_load;\n element.onerror = on_error;\n element.async = false;\n element.src = url;\n console.debug(\"Bokeh: injecting script tag for BokehJS library: \", url);\n document.head.appendChild(element);\n }\n for (var i = 0; i < js_modules.length; i++) {\n var url = js_modules[i];\n if (skip.indexOf(url) >= 0) {\n\tif (!window.requirejs) {\n\t on_load();\n\t}\n\tcontinue;\n }\n var element = document.createElement('script');\n element.onload = on_load;\n element.onerror = on_error;\n element.async = false;\n element.src = url;\n element.type = \"module\";\n console.debug(\"Bokeh: injecting script tag for BokehJS library: \", url);\n document.head.appendChild(element);\n }\n if (!js_urls.length && !js_modules.length) {\n on_load()\n }\n };\n\n function inject_raw_css(css) {\n const element = document.createElement(\"style\");\n element.appendChild(document.createTextNode(css));\n document.body.appendChild(element);\n }\n\n var js_urls = [\"https://cdn.bokeh.org/bokeh/release/bokeh-2.4.3.min.js\", \"https://cdn.bokeh.org/bokeh/release/bokeh-gl-2.4.3.min.js\", \"https://cdn.bokeh.org/bokeh/release/bokeh-widgets-2.4.3.min.js\", \"https://cdn.bokeh.org/bokeh/release/bokeh-tables-2.4.3.min.js\", \"https://cdn.bokeh.org/bokeh/release/bokeh-mathjax-2.4.3.min.js\", \"https://unpkg.com/@holoviz/panel@0.14.4/dist/panel.min.js\"];\n var js_modules = [];\n var css_urls = [\"https://cdn.holoviz.org/panel/0.14.4/dist/css/alerts.css\", \"https://cdn.holoviz.org/panel/0.14.4/dist/css/card.css\", \"https://cdn.holoviz.org/panel/0.14.4/dist/css/dataframe.css\", \"https://cdn.holoviz.org/panel/0.14.4/dist/css/debugger.css\", \"https://cdn.holoviz.org/panel/0.14.4/dist/css/json.css\", \"https://cdn.holoviz.org/panel/0.14.4/dist/css/loading.css\", \"https://cdn.holoviz.org/panel/0.14.4/dist/css/markdown.css\", \"https://cdn.holoviz.org/panel/0.14.4/dist/css/widgets.css\"];\n var inline_js = [ function(Bokeh) {\n inject_raw_css(\"\\n .bk.pn-loading.arc:before {\\n background-image: url(\\\"data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHN0eWxlPSJtYXJnaW46IGF1dG87IGJhY2tncm91bmQ6IG5vbmU7IGRpc3BsYXk6IGJsb2NrOyBzaGFwZS1yZW5kZXJpbmc6IGF1dG87IiB2aWV3Qm94PSIwIDAgMTAwIDEwMCIgcHJlc2VydmVBc3BlY3RSYXRpbz0ieE1pZFlNaWQiPiAgPGNpcmNsZSBjeD0iNTAiIGN5PSI1MCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSIjYzNjM2MzIiBzdHJva2Utd2lkdGg9IjEwIiByPSIzNSIgc3Ryb2tlLWRhc2hhcnJheT0iMTY0LjkzMzYxNDMxMzQ2NDE1IDU2Ljk3Nzg3MTQzNzgyMTM4Ij4gICAgPGFuaW1hdGVUcmFuc2Zvcm0gYXR0cmlidXRlTmFtZT0idHJhbnNmb3JtIiB0eXBlPSJyb3RhdGUiIHJlcGVhdENvdW50PSJpbmRlZmluaXRlIiBkdXI9IjFzIiB2YWx1ZXM9IjAgNTAgNTA7MzYwIDUwIDUwIiBrZXlUaW1lcz0iMDsxIj48L2FuaW1hdGVUcmFuc2Zvcm0+ICA8L2NpcmNsZT48L3N2Zz4=\\\");\\n background-size: auto calc(min(50%, 400px));\\n }\\n \");\n }, function(Bokeh) {\n Bokeh.set_log_level(\"info\");\n },\nfunction(Bokeh) {} // ensure no trailing comma for IE\n ];\n\n function run_inline_js() {\n if ((root.Bokeh !== undefined) || (force === true)) {\n for (var i = 0; i < inline_js.length; i++) {\n inline_js[i].call(root, root.Bokeh);\n }} else if (Date.now() < root._bokeh_timeout) {\n setTimeout(run_inline_js, 100);\n } else if (!root._bokeh_failed_load) {\n console.log(\"Bokeh: BokehJS failed to load within specified timeout.\");\n root._bokeh_failed_load = true;\n }\n }\n\n if (root._bokeh_is_loading === 0) {\n console.debug(\"Bokeh: BokehJS loaded, going straight to plotting\");\n run_inline_js();\n } else {\n load_libs(css_urls, js_urls, js_modules, function() {\n console.debug(\"Bokeh: BokehJS plotting callback run at\", now());\n run_inline_js();\n });\n }\n}(window));"
+ "application/vnd.holoviews_load.v0+json": "(function(root) {\n function now() {\n return new Date();\n }\n\n var force = true;\n var py_version = '3.2.2'.replace('rc', '-rc.').replace('.dev', '-dev.');\n var is_dev = py_version.indexOf(\"+\") !== -1 || py_version.indexOf(\"-\") !== -1;\n var reloading = false;\n var Bokeh = root.Bokeh;\n var bokeh_loaded = Bokeh != null && (Bokeh.version === py_version || (Bokeh.versions !== undefined && Bokeh.versions.has(py_version)));\n\n if (typeof (root._bokeh_timeout) === \"undefined\" || force) {\n root._bokeh_timeout = Date.now() + 5000;\n root._bokeh_failed_load = false;\n }\n\n function run_callbacks() {\n try {\n root._bokeh_onload_callbacks.forEach(function(callback) {\n if (callback != null)\n callback();\n });\n } finally {\n delete root._bokeh_onload_callbacks;\n }\n console.debug(\"Bokeh: all callbacks have finished\");\n }\n\n function load_libs(css_urls, js_urls, js_modules, js_exports, callback) {\n if (css_urls == null) css_urls = [];\n if (js_urls == null) js_urls = [];\n if (js_modules == null) js_modules = [];\n if (js_exports == null) js_exports = {};\n\n root._bokeh_onload_callbacks.push(callback);\n\n if (root._bokeh_is_loading > 0) {\n console.debug(\"Bokeh: BokehJS is being loaded, scheduling callback at\", now());\n return null;\n }\n if (js_urls.length === 0 && js_modules.length === 0 && Object.keys(js_exports).length === 0) {\n run_callbacks();\n return null;\n }\n if (!reloading) {\n console.debug(\"Bokeh: BokehJS not loaded, scheduling load and callback at\", now());\n }\n\n function on_load() {\n root._bokeh_is_loading--;\n if (root._bokeh_is_loading === 0) {\n console.debug(\"Bokeh: all BokehJS libraries/stylesheets loaded\");\n run_callbacks()\n }\n }\n window._bokeh_on_load = on_load\n\n function on_error() {\n console.error(\"failed to load \" + url);\n }\n\n var skip = [];\n if (window.requirejs) {\n window.requirejs.config({'packages': {}, 'paths': {'jspanel': 'https://cdn.jsdelivr.net/npm/jspanel4@4.12.0/dist/jspanel', 'jspanel-modal': 'https://cdn.jsdelivr.net/npm/jspanel4@4.12.0/dist/extensions/modal/jspanel.modal', 'jspanel-tooltip': 'https://cdn.jsdelivr.net/npm/jspanel4@4.12.0/dist/extensions/tooltip/jspanel.tooltip', 'jspanel-hint': 'https://cdn.jsdelivr.net/npm/jspanel4@4.12.0/dist/extensions/hint/jspanel.hint', 'jspanel-layout': 'https://cdn.jsdelivr.net/npm/jspanel4@4.12.0/dist/extensions/layout/jspanel.layout', 'jspanel-contextmenu': 'https://cdn.jsdelivr.net/npm/jspanel4@4.12.0/dist/extensions/contextmenu/jspanel.contextmenu', 'jspanel-dock': 'https://cdn.jsdelivr.net/npm/jspanel4@4.12.0/dist/extensions/dock/jspanel.dock', 'gridstack': 'https://cdn.jsdelivr.net/npm/gridstack@7.2.3/dist/gridstack-all', 'notyf': 'https://cdn.jsdelivr.net/npm/notyf@3/notyf.min'}, 'shim': {'jspanel': {'exports': 'jsPanel'}, 'gridstack': {'exports': 'GridStack'}}});\n require([\"jspanel\"], function(jsPanel) {\n\twindow.jsPanel = jsPanel\n\ton_load()\n })\n require([\"jspanel-modal\"], function() {\n\ton_load()\n })\n require([\"jspanel-tooltip\"], function() {\n\ton_load()\n })\n require([\"jspanel-hint\"], function() {\n\ton_load()\n })\n require([\"jspanel-layout\"], function() {\n\ton_load()\n })\n require([\"jspanel-contextmenu\"], function() {\n\ton_load()\n })\n require([\"jspanel-dock\"], function() {\n\ton_load()\n })\n require([\"gridstack\"], function(GridStack) {\n\twindow.GridStack = GridStack\n\ton_load()\n })\n require([\"notyf\"], function() {\n\ton_load()\n })\n root._bokeh_is_loading = css_urls.length + 9;\n } else {\n root._bokeh_is_loading = css_urls.length + js_urls.length + js_modules.length + Object.keys(js_exports).length;\n }\n\n var existing_stylesheets = []\n var links = document.getElementsByTagName('link')\n for (var i = 0; i < links.length; i++) {\n var link = links[i]\n if (link.href != null) {\n\texisting_stylesheets.push(link.href)\n }\n }\n for (var i = 0; i < css_urls.length; i++) {\n var url = css_urls[i];\n if (existing_stylesheets.indexOf(url) !== -1) {\n\ton_load()\n\tcontinue;\n }\n const element = document.createElement(\"link\");\n element.onload = on_load;\n element.onerror = on_error;\n element.rel = \"stylesheet\";\n element.type = \"text/css\";\n element.href = url;\n console.debug(\"Bokeh: injecting link tag for BokehJS stylesheet: \", url);\n document.body.appendChild(element);\n } if (((window['jsPanel'] !== undefined) && (!(window['jsPanel'] instanceof HTMLElement))) || window.requirejs) {\n var urls = ['https://cdn.holoviz.org/panel/1.2.3/dist/bundled/floatpanel/jspanel4@4.12.0/dist/jspanel.js', 'https://cdn.holoviz.org/panel/1.2.3/dist/bundled/floatpanel/jspanel4@4.12.0/dist/extensions/modal/jspanel.modal.js', 'https://cdn.holoviz.org/panel/1.2.3/dist/bundled/floatpanel/jspanel4@4.12.0/dist/extensions/tooltip/jspanel.tooltip.js', 'https://cdn.holoviz.org/panel/1.2.3/dist/bundled/floatpanel/jspanel4@4.12.0/dist/extensions/hint/jspanel.hint.js', 'https://cdn.holoviz.org/panel/1.2.3/dist/bundled/floatpanel/jspanel4@4.12.0/dist/extensions/layout/jspanel.layout.js', 'https://cdn.holoviz.org/panel/1.2.3/dist/bundled/floatpanel/jspanel4@4.12.0/dist/extensions/contextmenu/jspanel.contextmenu.js', 'https://cdn.holoviz.org/panel/1.2.3/dist/bundled/floatpanel/jspanel4@4.12.0/dist/extensions/dock/jspanel.dock.js'];\n for (var i = 0; i < urls.length; i++) {\n skip.push(urls[i])\n }\n } if (((window['GridStack'] !== undefined) && (!(window['GridStack'] instanceof HTMLElement))) || window.requirejs) {\n var urls = ['https://cdn.holoviz.org/panel/1.2.3/dist/bundled/gridstack/gridstack@7.2.3/dist/gridstack-all.js'];\n for (var i = 0; i < urls.length; i++) {\n skip.push(urls[i])\n }\n } if (((window['Notyf'] !== undefined) && (!(window['Notyf'] instanceof HTMLElement))) || window.requirejs) {\n var urls = ['https://cdn.holoviz.org/panel/1.2.3/dist/bundled/notificationarea/notyf@3/notyf.min.js'];\n for (var i = 0; i < urls.length; i++) {\n skip.push(urls[i])\n }\n } var existing_scripts = []\n var scripts = document.getElementsByTagName('script')\n for (var i = 0; i < scripts.length; i++) {\n var script = scripts[i]\n if (script.src != null) {\n\texisting_scripts.push(script.src)\n }\n }\n for (var i = 0; i < js_urls.length; i++) {\n var url = js_urls[i];\n if (skip.indexOf(url) !== -1 || existing_scripts.indexOf(url) !== -1) {\n\tif (!window.requirejs) {\n\t on_load();\n\t}\n\tcontinue;\n }\n var element = document.createElement('script');\n element.onload = on_load;\n element.onerror = on_error;\n element.async = false;\n element.src = url;\n console.debug(\"Bokeh: injecting script tag for BokehJS library: \", url);\n document.head.appendChild(element);\n }\n for (var i = 0; i < js_modules.length; i++) {\n var url = js_modules[i];\n if (skip.indexOf(url) !== -1 || existing_scripts.indexOf(url) !== -1) {\n\tif (!window.requirejs) {\n\t on_load();\n\t}\n\tcontinue;\n }\n var element = document.createElement('script');\n element.onload = on_load;\n element.onerror = on_error;\n element.async = false;\n element.src = url;\n element.type = \"module\";\n console.debug(\"Bokeh: injecting script tag for BokehJS library: \", url);\n document.head.appendChild(element);\n }\n for (const name in js_exports) {\n var url = js_exports[name];\n if (skip.indexOf(url) >= 0 || root[name] != null) {\n\tif (!window.requirejs) {\n\t on_load();\n\t}\n\tcontinue;\n }\n var element = document.createElement('script');\n element.onerror = on_error;\n element.async = false;\n element.type = \"module\";\n console.debug(\"Bokeh: injecting script tag for BokehJS library: \", url);\n element.textContent = `\n import ${name} from \"${url}\"\n window.${name} = ${name}\n window._bokeh_on_load()\n `\n document.head.appendChild(element);\n }\n if (!js_urls.length && !js_modules.length) {\n on_load()\n }\n };\n\n function inject_raw_css(css) {\n const element = document.createElement(\"style\");\n element.appendChild(document.createTextNode(css));\n document.body.appendChild(element);\n }\n\n var js_urls = [\"https://cdn.bokeh.org/bokeh/release/bokeh-3.2.2.min.js\", \"https://cdn.bokeh.org/bokeh/release/bokeh-gl-3.2.2.min.js\", \"https://cdn.bokeh.org/bokeh/release/bokeh-widgets-3.2.2.min.js\", \"https://cdn.bokeh.org/bokeh/release/bokeh-tables-3.2.2.min.js\", \"https://cdn.holoviz.org/panel/1.2.3/dist/panel.min.js\", \"https://cdn.jsdelivr.net/npm/@holoviz/geoviews@1.10.1/dist/geoviews.min.js\"];\n var js_modules = [];\n var js_exports = {};\n var css_urls = [];\n var inline_js = [ function(Bokeh) {\n Bokeh.set_log_level(\"info\");\n },\nfunction(Bokeh) {} // ensure no trailing comma for IE\n ];\n\n function run_inline_js() {\n if ((root.Bokeh !== undefined) || (force === true)) {\n for (var i = 0; i < inline_js.length; i++) {\n inline_js[i].call(root, root.Bokeh);\n }\n // Cache old bokeh versions\n if (Bokeh != undefined && !reloading) {\n\tvar NewBokeh = root.Bokeh;\n\tif (Bokeh.versions === undefined) {\n\t Bokeh.versions = new Map();\n\t}\n\tif (NewBokeh.version !== Bokeh.version) {\n\t Bokeh.versions.set(NewBokeh.version, NewBokeh)\n\t}\n\troot.Bokeh = Bokeh;\n }} else if (Date.now() < root._bokeh_timeout) {\n setTimeout(run_inline_js, 100);\n } else if (!root._bokeh_failed_load) {\n console.log(\"Bokeh: BokehJS failed to load within specified timeout.\");\n root._bokeh_failed_load = true;\n }\n root._bokeh_is_initializing = false\n }\n\n function load_or_wait() {\n // Implement a backoff loop that tries to ensure we do not load multiple\n // versions of Bokeh and its dependencies at the same time.\n // In recent versions we use the root._bokeh_is_initializing flag\n // to determine whether there is an ongoing attempt to initialize\n // bokeh, however for backward compatibility we also try to ensure\n // that we do not start loading a newer (Panel>=1.0 and Bokeh>3) version\n // before older versions are fully initialized.\n if (root._bokeh_is_initializing && Date.now() > root._bokeh_timeout) {\n root._bokeh_is_initializing = false;\n root._bokeh_onload_callbacks = undefined;\n console.log(\"Bokeh: BokehJS was loaded multiple times but one version failed to initialize.\");\n load_or_wait();\n } else if (root._bokeh_is_initializing || (typeof root._bokeh_is_initializing === \"undefined\" && root._bokeh_onload_callbacks !== undefined)) {\n setTimeout(load_or_wait, 100);\n } else {\n Bokeh = root.Bokeh;\n bokeh_loaded = Bokeh != null && (Bokeh.version === py_version || (Bokeh.versions !== undefined && Bokeh.versions.has(py_version)));\n root._bokeh_is_initializing = true\n root._bokeh_onload_callbacks = []\n if (!reloading && (!bokeh_loaded || is_dev)) {\n\troot.Bokeh = undefined;\n }\n load_libs(css_urls, js_urls, js_modules, js_exports, function() {\n\tconsole.debug(\"Bokeh: BokehJS plotting callback run at\", now());\n\trun_inline_js();\n });\n }\n }\n // Give older versions of the autoload script a head-start to ensure\n // they initialize before we start loading newer version.\n setTimeout(load_or_wait, 100)\n}(window));"
},
"metadata": {},
"output_type": "display_data"
@@ -1011,10 +1233,20 @@
{
"data": {
"text/html": [
- ""
]
@@ -1182,13 +1414,13 @@
" }\n",
"\n",
" var force = true;\n",
+ " var py_version = '3.2.2'.replace('rc', '-rc.').replace('.dev', '-dev.');\n",
+ " var is_dev = py_version.indexOf(\"+\") !== -1 || py_version.indexOf(\"-\") !== -1;\n",
+ " var reloading = false;\n",
+ " var Bokeh = root.Bokeh;\n",
+ " var bokeh_loaded = Bokeh != null && (Bokeh.version === py_version || (Bokeh.versions !== undefined && Bokeh.versions.has(py_version)));\n",
"\n",
- " if (typeof root._bokeh_onload_callbacks === \"undefined\" || force === true) {\n",
- " root._bokeh_onload_callbacks = [];\n",
- " root._bokeh_is_loading = undefined;\n",
- " }\n",
- "\n",
- " if (typeof (root._bokeh_timeout) === \"undefined\" || force === true) {\n",
+ " if (typeof (root._bokeh_timeout) === \"undefined\" || force) {\n",
" root._bokeh_timeout = Date.now() + 5000;\n",
" root._bokeh_failed_load = false;\n",
" }\n",
@@ -1200,26 +1432,30 @@
" callback();\n",
" });\n",
" } finally {\n",
- " delete root._bokeh_onload_callbacks\n",
+ " delete root._bokeh_onload_callbacks;\n",
" }\n",
" console.debug(\"Bokeh: all callbacks have finished\");\n",
" }\n",
"\n",
- " function load_libs(css_urls, js_urls, js_modules, callback) {\n",
+ " function load_libs(css_urls, js_urls, js_modules, js_exports, callback) {\n",
" if (css_urls == null) css_urls = [];\n",
" if (js_urls == null) js_urls = [];\n",
" if (js_modules == null) js_modules = [];\n",
+ " if (js_exports == null) js_exports = {};\n",
"\n",
" root._bokeh_onload_callbacks.push(callback);\n",
+ "\n",
" if (root._bokeh_is_loading > 0) {\n",
" console.debug(\"Bokeh: BokehJS is being loaded, scheduling callback at\", now());\n",
" return null;\n",
" }\n",
- " if (js_urls.length === 0 && js_modules.length === 0) {\n",
+ " if (js_urls.length === 0 && js_modules.length === 0 && Object.keys(js_exports).length === 0) {\n",
" run_callbacks();\n",
" return null;\n",
" }\n",
- " console.debug(\"Bokeh: BokehJS not loaded, scheduling load and callback at\", now());\n",
+ " if (!reloading) {\n",
+ " console.debug(\"Bokeh: BokehJS not loaded, scheduling load and callback at\", now());\n",
+ " }\n",
"\n",
" function on_load() {\n",
" root._bokeh_is_loading--;\n",
@@ -1228,26 +1464,37 @@
" run_callbacks()\n",
" }\n",
" }\n",
+ " window._bokeh_on_load = on_load\n",
"\n",
" function on_error() {\n",
" console.error(\"failed to load \" + url);\n",
" }\n",
"\n",
- " for (var i = 0; i < css_urls.length; i++) {\n",
- " var url = css_urls[i];\n",
- " const element = document.createElement(\"link\");\n",
- " element.onload = on_load;\n",
- " element.onerror = on_error;\n",
- " element.rel = \"stylesheet\";\n",
- " element.type = \"text/css\";\n",
- " element.href = url;\n",
- " console.debug(\"Bokeh: injecting link tag for BokehJS stylesheet: \", url);\n",
- " document.body.appendChild(element);\n",
- " }\n",
- "\n",
" var skip = [];\n",
" if (window.requirejs) {\n",
- " window.requirejs.config({'packages': {}, 'paths': {'gridstack': 'https://cdn.jsdelivr.net/npm/gridstack@4.2.5/dist/gridstack-h5', 'notyf': 'https://cdn.jsdelivr.net/npm/notyf@3/notyf.min'}, 'shim': {'gridstack': {'exports': 'GridStack'}}});\n",
+ " window.requirejs.config({'packages': {}, 'paths': {'jspanel': 'https://cdn.jsdelivr.net/npm/jspanel4@4.12.0/dist/jspanel', 'jspanel-modal': 'https://cdn.jsdelivr.net/npm/jspanel4@4.12.0/dist/extensions/modal/jspanel.modal', 'jspanel-tooltip': 'https://cdn.jsdelivr.net/npm/jspanel4@4.12.0/dist/extensions/tooltip/jspanel.tooltip', 'jspanel-hint': 'https://cdn.jsdelivr.net/npm/jspanel4@4.12.0/dist/extensions/hint/jspanel.hint', 'jspanel-layout': 'https://cdn.jsdelivr.net/npm/jspanel4@4.12.0/dist/extensions/layout/jspanel.layout', 'jspanel-contextmenu': 'https://cdn.jsdelivr.net/npm/jspanel4@4.12.0/dist/extensions/contextmenu/jspanel.contextmenu', 'jspanel-dock': 'https://cdn.jsdelivr.net/npm/jspanel4@4.12.0/dist/extensions/dock/jspanel.dock', 'gridstack': 'https://cdn.jsdelivr.net/npm/gridstack@7.2.3/dist/gridstack-all', 'notyf': 'https://cdn.jsdelivr.net/npm/notyf@3/notyf.min'}, 'shim': {'jspanel': {'exports': 'jsPanel'}, 'gridstack': {'exports': 'GridStack'}}});\n",
+ " require([\"jspanel\"], function(jsPanel) {\n",
+ "\twindow.jsPanel = jsPanel\n",
+ "\ton_load()\n",
+ " })\n",
+ " require([\"jspanel-modal\"], function() {\n",
+ "\ton_load()\n",
+ " })\n",
+ " require([\"jspanel-tooltip\"], function() {\n",
+ "\ton_load()\n",
+ " })\n",
+ " require([\"jspanel-hint\"], function() {\n",
+ "\ton_load()\n",
+ " })\n",
+ " require([\"jspanel-layout\"], function() {\n",
+ "\ton_load()\n",
+ " })\n",
+ " require([\"jspanel-contextmenu\"], function() {\n",
+ "\ton_load()\n",
+ " })\n",
+ " require([\"jspanel-dock\"], function() {\n",
+ "\ton_load()\n",
+ " })\n",
" require([\"gridstack\"], function(GridStack) {\n",
"\twindow.GridStack = GridStack\n",
"\ton_load()\n",
@@ -1255,22 +1502,59 @@
" require([\"notyf\"], function() {\n",
"\ton_load()\n",
" })\n",
- " root._bokeh_is_loading = css_urls.length + 2;\n",
+ " root._bokeh_is_loading = css_urls.length + 9;\n",
" } else {\n",
- " root._bokeh_is_loading = css_urls.length + js_urls.length + js_modules.length;\n",
+ " root._bokeh_is_loading = css_urls.length + js_urls.length + js_modules.length + Object.keys(js_exports).length;\n",
+ " }\n",
+ "\n",
+ " var existing_stylesheets = []\n",
+ " var links = document.getElementsByTagName('link')\n",
+ " for (var i = 0; i < links.length; i++) {\n",
+ " var link = links[i]\n",
+ " if (link.href != null) {\n",
+ "\texisting_stylesheets.push(link.href)\n",
+ " }\n",
+ " }\n",
+ " for (var i = 0; i < css_urls.length; i++) {\n",
+ " var url = css_urls[i];\n",
+ " if (existing_stylesheets.indexOf(url) !== -1) {\n",
+ "\ton_load()\n",
+ "\tcontinue;\n",
+ " }\n",
+ " const element = document.createElement(\"link\");\n",
+ " element.onload = on_load;\n",
+ " element.onerror = on_error;\n",
+ " element.rel = \"stylesheet\";\n",
+ " element.type = \"text/css\";\n",
+ " element.href = url;\n",
+ " console.debug(\"Bokeh: injecting link tag for BokehJS stylesheet: \", url);\n",
+ " document.body.appendChild(element);\n",
+ " } if (((window['jsPanel'] !== undefined) && (!(window['jsPanel'] instanceof HTMLElement))) || window.requirejs) {\n",
+ " var urls = ['https://cdn.holoviz.org/panel/1.2.3/dist/bundled/floatpanel/jspanel4@4.12.0/dist/jspanel.js', 'https://cdn.holoviz.org/panel/1.2.3/dist/bundled/floatpanel/jspanel4@4.12.0/dist/extensions/modal/jspanel.modal.js', 'https://cdn.holoviz.org/panel/1.2.3/dist/bundled/floatpanel/jspanel4@4.12.0/dist/extensions/tooltip/jspanel.tooltip.js', 'https://cdn.holoviz.org/panel/1.2.3/dist/bundled/floatpanel/jspanel4@4.12.0/dist/extensions/hint/jspanel.hint.js', 'https://cdn.holoviz.org/panel/1.2.3/dist/bundled/floatpanel/jspanel4@4.12.0/dist/extensions/layout/jspanel.layout.js', 'https://cdn.holoviz.org/panel/1.2.3/dist/bundled/floatpanel/jspanel4@4.12.0/dist/extensions/contextmenu/jspanel.contextmenu.js', 'https://cdn.holoviz.org/panel/1.2.3/dist/bundled/floatpanel/jspanel4@4.12.0/dist/extensions/dock/jspanel.dock.js'];\n",
+ " for (var i = 0; i < urls.length; i++) {\n",
+ " skip.push(urls[i])\n",
+ " }\n",
" } if (((window['GridStack'] !== undefined) && (!(window['GridStack'] instanceof HTMLElement))) || window.requirejs) {\n",
- " var urls = ['https://cdn.holoviz.org/panel/0.14.4/dist/bundled/gridstack/gridstack@4.2.5/dist/gridstack-h5.js'];\n",
+ " var urls = ['https://cdn.holoviz.org/panel/1.2.3/dist/bundled/gridstack/gridstack@7.2.3/dist/gridstack-all.js'];\n",
" for (var i = 0; i < urls.length; i++) {\n",
" skip.push(urls[i])\n",
" }\n",
" } if (((window['Notyf'] !== undefined) && (!(window['Notyf'] instanceof HTMLElement))) || window.requirejs) {\n",
- " var urls = ['https://cdn.holoviz.org/panel/0.14.4/dist/bundled/notificationarea/notyf@3/notyf.min.js'];\n",
+ " var urls = ['https://cdn.holoviz.org/panel/1.2.3/dist/bundled/notificationarea/notyf@3/notyf.min.js'];\n",
" for (var i = 0; i < urls.length; i++) {\n",
" skip.push(urls[i])\n",
" }\n",
- " } for (var i = 0; i < js_urls.length; i++) {\n",
+ " } var existing_scripts = []\n",
+ " var scripts = document.getElementsByTagName('script')\n",
+ " for (var i = 0; i < scripts.length; i++) {\n",
+ " var script = scripts[i]\n",
+ " if (script.src != null) {\n",
+ "\texisting_scripts.push(script.src)\n",
+ " }\n",
+ " }\n",
+ " for (var i = 0; i < js_urls.length; i++) {\n",
" var url = js_urls[i];\n",
- " if (skip.indexOf(url) >= 0) {\n",
+ " if (skip.indexOf(url) !== -1 || existing_scripts.indexOf(url) !== -1) {\n",
"\tif (!window.requirejs) {\n",
"\t on_load();\n",
"\t}\n",
@@ -1286,7 +1570,7 @@
" }\n",
" for (var i = 0; i < js_modules.length; i++) {\n",
" var url = js_modules[i];\n",
- " if (skip.indexOf(url) >= 0) {\n",
+ " if (skip.indexOf(url) !== -1 || existing_scripts.indexOf(url) !== -1) {\n",
"\tif (!window.requirejs) {\n",
"\t on_load();\n",
"\t}\n",
@@ -1301,6 +1585,26 @@
" console.debug(\"Bokeh: injecting script tag for BokehJS library: \", url);\n",
" document.head.appendChild(element);\n",
" }\n",
+ " for (const name in js_exports) {\n",
+ " var url = js_exports[name];\n",
+ " if (skip.indexOf(url) >= 0 || root[name] != null) {\n",
+ "\tif (!window.requirejs) {\n",
+ "\t on_load();\n",
+ "\t}\n",
+ "\tcontinue;\n",
+ " }\n",
+ " var element = document.createElement('script');\n",
+ " element.onerror = on_error;\n",
+ " element.async = false;\n",
+ " element.type = \"module\";\n",
+ " console.debug(\"Bokeh: injecting script tag for BokehJS library: \", url);\n",
+ " element.textContent = `\n",
+ " import ${name} from \"${url}\"\n",
+ " window.${name} = ${name}\n",
+ " window._bokeh_on_load()\n",
+ " `\n",
+ " document.head.appendChild(element);\n",
+ " }\n",
" if (!js_urls.length && !js_modules.length) {\n",
" on_load()\n",
" }\n",
@@ -1312,12 +1616,11 @@
" document.body.appendChild(element);\n",
" }\n",
"\n",
- " var js_urls = [\"https://cdn.bokeh.org/bokeh/release/bokeh-2.4.3.min.js\", \"https://cdn.bokeh.org/bokeh/release/bokeh-gl-2.4.3.min.js\", \"https://cdn.bokeh.org/bokeh/release/bokeh-widgets-2.4.3.min.js\", \"https://cdn.bokeh.org/bokeh/release/bokeh-tables-2.4.3.min.js\", \"https://cdn.bokeh.org/bokeh/release/bokeh-mathjax-2.4.3.min.js\", \"https://unpkg.com/@holoviz/panel@0.14.4/dist/panel.min.js\"];\n",
+ " var js_urls = [\"https://cdn.bokeh.org/bokeh/release/bokeh-3.2.2.min.js\", \"https://cdn.bokeh.org/bokeh/release/bokeh-gl-3.2.2.min.js\", \"https://cdn.bokeh.org/bokeh/release/bokeh-widgets-3.2.2.min.js\", \"https://cdn.bokeh.org/bokeh/release/bokeh-tables-3.2.2.min.js\", \"https://cdn.holoviz.org/panel/1.2.3/dist/panel.min.js\", \"https://cdn.jsdelivr.net/npm/@holoviz/geoviews@1.10.1/dist/geoviews.min.js\"];\n",
" var js_modules = [];\n",
- " var css_urls = [\"https://cdn.holoviz.org/panel/0.14.4/dist/css/alerts.css\", \"https://cdn.holoviz.org/panel/0.14.4/dist/css/card.css\", \"https://cdn.holoviz.org/panel/0.14.4/dist/css/dataframe.css\", \"https://cdn.holoviz.org/panel/0.14.4/dist/css/debugger.css\", \"https://cdn.holoviz.org/panel/0.14.4/dist/css/json.css\", \"https://cdn.holoviz.org/panel/0.14.4/dist/css/loading.css\", \"https://cdn.holoviz.org/panel/0.14.4/dist/css/markdown.css\", \"https://cdn.holoviz.org/panel/0.14.4/dist/css/widgets.css\"];\n",
+ " var js_exports = {};\n",
+ " var css_urls = [];\n",
" var inline_js = [ function(Bokeh) {\n",
- " inject_raw_css(\"\\n .bk.pn-loading.arc:before {\\n background-image: url(\\\"data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHN0eWxlPSJtYXJnaW46IGF1dG87IGJhY2tncm91bmQ6IG5vbmU7IGRpc3BsYXk6IGJsb2NrOyBzaGFwZS1yZW5kZXJpbmc6IGF1dG87IiB2aWV3Qm94PSIwIDAgMTAwIDEwMCIgcHJlc2VydmVBc3BlY3RSYXRpbz0ieE1pZFlNaWQiPiAgPGNpcmNsZSBjeD0iNTAiIGN5PSI1MCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSIjYzNjM2MzIiBzdHJva2Utd2lkdGg9IjEwIiByPSIzNSIgc3Ryb2tlLWRhc2hhcnJheT0iMTY0LjkzMzYxNDMxMzQ2NDE1IDU2Ljk3Nzg3MTQzNzgyMTM4Ij4gICAgPGFuaW1hdGVUcmFuc2Zvcm0gYXR0cmlidXRlTmFtZT0idHJhbnNmb3JtIiB0eXBlPSJyb3RhdGUiIHJlcGVhdENvdW50PSJpbmRlZmluaXRlIiBkdXI9IjFzIiB2YWx1ZXM9IjAgNTAgNTA7MzYwIDUwIDUwIiBrZXlUaW1lcz0iMDsxIj48L2FuaW1hdGVUcmFuc2Zvcm0+ICA8L2NpcmNsZT48L3N2Zz4=\\\");\\n background-size: auto calc(min(50%, 400px));\\n }\\n \");\n",
- " }, function(Bokeh) {\n",
" Bokeh.set_log_level(\"info\");\n",
" },\n",
"function(Bokeh) {} // ensure no trailing comma for IE\n",
@@ -1327,26 +1630,61 @@
" if ((root.Bokeh !== undefined) || (force === true)) {\n",
" for (var i = 0; i < inline_js.length; i++) {\n",
" inline_js[i].call(root, root.Bokeh);\n",
+ " }\n",
+ " // Cache old bokeh versions\n",
+ " if (Bokeh != undefined && !reloading) {\n",
+ "\tvar NewBokeh = root.Bokeh;\n",
+ "\tif (Bokeh.versions === undefined) {\n",
+ "\t Bokeh.versions = new Map();\n",
+ "\t}\n",
+ "\tif (NewBokeh.version !== Bokeh.version) {\n",
+ "\t Bokeh.versions.set(NewBokeh.version, NewBokeh)\n",
+ "\t}\n",
+ "\troot.Bokeh = Bokeh;\n",
" }} else if (Date.now() < root._bokeh_timeout) {\n",
" setTimeout(run_inline_js, 100);\n",
" } else if (!root._bokeh_failed_load) {\n",
" console.log(\"Bokeh: BokehJS failed to load within specified timeout.\");\n",
" root._bokeh_failed_load = true;\n",
" }\n",
+ " root._bokeh_is_initializing = false\n",
" }\n",
"\n",
- " if (root._bokeh_is_loading === 0) {\n",
- " console.debug(\"Bokeh: BokehJS loaded, going straight to plotting\");\n",
- " run_inline_js();\n",
- " } else {\n",
- " load_libs(css_urls, js_urls, js_modules, function() {\n",
- " console.debug(\"Bokeh: BokehJS plotting callback run at\", now());\n",
- " run_inline_js();\n",
- " });\n",
+ " function load_or_wait() {\n",
+ " // Implement a backoff loop that tries to ensure we do not load multiple\n",
+ " // versions of Bokeh and its dependencies at the same time.\n",
+ " // In recent versions we use the root._bokeh_is_initializing flag\n",
+ " // to determine whether there is an ongoing attempt to initialize\n",
+ " // bokeh, however for backward compatibility we also try to ensure\n",
+ " // that we do not start loading a newer (Panel>=1.0 and Bokeh>3) version\n",
+ " // before older versions are fully initialized.\n",
+ " if (root._bokeh_is_initializing && Date.now() > root._bokeh_timeout) {\n",
+ " root._bokeh_is_initializing = false;\n",
+ " root._bokeh_onload_callbacks = undefined;\n",
+ " console.log(\"Bokeh: BokehJS was loaded multiple times but one version failed to initialize.\");\n",
+ " load_or_wait();\n",
+ " } else if (root._bokeh_is_initializing || (typeof root._bokeh_is_initializing === \"undefined\" && root._bokeh_onload_callbacks !== undefined)) {\n",
+ " setTimeout(load_or_wait, 100);\n",
+ " } else {\n",
+ " Bokeh = root.Bokeh;\n",
+ " bokeh_loaded = Bokeh != null && (Bokeh.version === py_version || (Bokeh.versions !== undefined && Bokeh.versions.has(py_version)));\n",
+ " root._bokeh_is_initializing = true\n",
+ " root._bokeh_onload_callbacks = []\n",
+ " if (!reloading && (!bokeh_loaded || is_dev)) {\n",
+ "\troot.Bokeh = undefined;\n",
+ " }\n",
+ " load_libs(css_urls, js_urls, js_modules, js_exports, function() {\n",
+ "\tconsole.debug(\"Bokeh: BokehJS plotting callback run at\", now());\n",
+ "\trun_inline_js();\n",
+ " });\n",
+ " }\n",
" }\n",
+ " // Give older versions of the autoload script a head-start to ensure\n",
+ " // they initialize before we start loading newer version.\n",
+ " setTimeout(load_or_wait, 100)\n",
"}(window));"
],
- "application/vnd.holoviews_load.v0+json": "(function(root) {\n function now() {\n return new Date();\n }\n\n var force = true;\n\n if (typeof root._bokeh_onload_callbacks === \"undefined\" || force === true) {\n root._bokeh_onload_callbacks = [];\n root._bokeh_is_loading = undefined;\n }\n\n if (typeof (root._bokeh_timeout) === \"undefined\" || force === true) {\n root._bokeh_timeout = Date.now() + 5000;\n root._bokeh_failed_load = false;\n }\n\n function run_callbacks() {\n try {\n root._bokeh_onload_callbacks.forEach(function(callback) {\n if (callback != null)\n callback();\n });\n } finally {\n delete root._bokeh_onload_callbacks\n }\n console.debug(\"Bokeh: all callbacks have finished\");\n }\n\n function load_libs(css_urls, js_urls, js_modules, callback) {\n if (css_urls == null) css_urls = [];\n if (js_urls == null) js_urls = [];\n if (js_modules == null) js_modules = [];\n\n root._bokeh_onload_callbacks.push(callback);\n if (root._bokeh_is_loading > 0) {\n console.debug(\"Bokeh: BokehJS is being loaded, scheduling callback at\", now());\n return null;\n }\n if (js_urls.length === 0 && js_modules.length === 0) {\n run_callbacks();\n return null;\n }\n console.debug(\"Bokeh: BokehJS not loaded, scheduling load and callback at\", now());\n\n function on_load() {\n root._bokeh_is_loading--;\n if (root._bokeh_is_loading === 0) {\n console.debug(\"Bokeh: all BokehJS libraries/stylesheets loaded\");\n run_callbacks()\n }\n }\n\n function on_error() {\n console.error(\"failed to load \" + url);\n }\n\n for (var i = 0; i < css_urls.length; i++) {\n var url = css_urls[i];\n const element = document.createElement(\"link\");\n element.onload = on_load;\n element.onerror = on_error;\n element.rel = \"stylesheet\";\n element.type = \"text/css\";\n element.href = url;\n console.debug(\"Bokeh: injecting link tag for BokehJS stylesheet: \", url);\n document.body.appendChild(element);\n }\n\n var skip = [];\n if (window.requirejs) {\n window.requirejs.config({'packages': {}, 'paths': {'gridstack': 'https://cdn.jsdelivr.net/npm/gridstack@4.2.5/dist/gridstack-h5', 'notyf': 'https://cdn.jsdelivr.net/npm/notyf@3/notyf.min'}, 'shim': {'gridstack': {'exports': 'GridStack'}}});\n require([\"gridstack\"], function(GridStack) {\n\twindow.GridStack = GridStack\n\ton_load()\n })\n require([\"notyf\"], function() {\n\ton_load()\n })\n root._bokeh_is_loading = css_urls.length + 2;\n } else {\n root._bokeh_is_loading = css_urls.length + js_urls.length + js_modules.length;\n } if (((window['GridStack'] !== undefined) && (!(window['GridStack'] instanceof HTMLElement))) || window.requirejs) {\n var urls = ['https://cdn.holoviz.org/panel/0.14.4/dist/bundled/gridstack/gridstack@4.2.5/dist/gridstack-h5.js'];\n for (var i = 0; i < urls.length; i++) {\n skip.push(urls[i])\n }\n } if (((window['Notyf'] !== undefined) && (!(window['Notyf'] instanceof HTMLElement))) || window.requirejs) {\n var urls = ['https://cdn.holoviz.org/panel/0.14.4/dist/bundled/notificationarea/notyf@3/notyf.min.js'];\n for (var i = 0; i < urls.length; i++) {\n skip.push(urls[i])\n }\n } for (var i = 0; i < js_urls.length; i++) {\n var url = js_urls[i];\n if (skip.indexOf(url) >= 0) {\n\tif (!window.requirejs) {\n\t on_load();\n\t}\n\tcontinue;\n }\n var element = document.createElement('script');\n element.onload = on_load;\n element.onerror = on_error;\n element.async = false;\n element.src = url;\n console.debug(\"Bokeh: injecting script tag for BokehJS library: \", url);\n document.head.appendChild(element);\n }\n for (var i = 0; i < js_modules.length; i++) {\n var url = js_modules[i];\n if (skip.indexOf(url) >= 0) {\n\tif (!window.requirejs) {\n\t on_load();\n\t}\n\tcontinue;\n }\n var element = document.createElement('script');\n element.onload = on_load;\n element.onerror = on_error;\n element.async = false;\n element.src = url;\n element.type = \"module\";\n console.debug(\"Bokeh: injecting script tag for BokehJS library: \", url);\n document.head.appendChild(element);\n }\n if (!js_urls.length && !js_modules.length) {\n on_load()\n }\n };\n\n function inject_raw_css(css) {\n const element = document.createElement(\"style\");\n element.appendChild(document.createTextNode(css));\n document.body.appendChild(element);\n }\n\n var js_urls = [\"https://cdn.bokeh.org/bokeh/release/bokeh-2.4.3.min.js\", \"https://cdn.bokeh.org/bokeh/release/bokeh-gl-2.4.3.min.js\", \"https://cdn.bokeh.org/bokeh/release/bokeh-widgets-2.4.3.min.js\", \"https://cdn.bokeh.org/bokeh/release/bokeh-tables-2.4.3.min.js\", \"https://cdn.bokeh.org/bokeh/release/bokeh-mathjax-2.4.3.min.js\", \"https://unpkg.com/@holoviz/panel@0.14.4/dist/panel.min.js\"];\n var js_modules = [];\n var css_urls = [\"https://cdn.holoviz.org/panel/0.14.4/dist/css/alerts.css\", \"https://cdn.holoviz.org/panel/0.14.4/dist/css/card.css\", \"https://cdn.holoviz.org/panel/0.14.4/dist/css/dataframe.css\", \"https://cdn.holoviz.org/panel/0.14.4/dist/css/debugger.css\", \"https://cdn.holoviz.org/panel/0.14.4/dist/css/json.css\", \"https://cdn.holoviz.org/panel/0.14.4/dist/css/loading.css\", \"https://cdn.holoviz.org/panel/0.14.4/dist/css/markdown.css\", \"https://cdn.holoviz.org/panel/0.14.4/dist/css/widgets.css\"];\n var inline_js = [ function(Bokeh) {\n inject_raw_css(\"\\n .bk.pn-loading.arc:before {\\n background-image: url(\\\"data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHN0eWxlPSJtYXJnaW46IGF1dG87IGJhY2tncm91bmQ6IG5vbmU7IGRpc3BsYXk6IGJsb2NrOyBzaGFwZS1yZW5kZXJpbmc6IGF1dG87IiB2aWV3Qm94PSIwIDAgMTAwIDEwMCIgcHJlc2VydmVBc3BlY3RSYXRpbz0ieE1pZFlNaWQiPiAgPGNpcmNsZSBjeD0iNTAiIGN5PSI1MCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSIjYzNjM2MzIiBzdHJva2Utd2lkdGg9IjEwIiByPSIzNSIgc3Ryb2tlLWRhc2hhcnJheT0iMTY0LjkzMzYxNDMxMzQ2NDE1IDU2Ljk3Nzg3MTQzNzgyMTM4Ij4gICAgPGFuaW1hdGVUcmFuc2Zvcm0gYXR0cmlidXRlTmFtZT0idHJhbnNmb3JtIiB0eXBlPSJyb3RhdGUiIHJlcGVhdENvdW50PSJpbmRlZmluaXRlIiBkdXI9IjFzIiB2YWx1ZXM9IjAgNTAgNTA7MzYwIDUwIDUwIiBrZXlUaW1lcz0iMDsxIj48L2FuaW1hdGVUcmFuc2Zvcm0+ICA8L2NpcmNsZT48L3N2Zz4=\\\");\\n background-size: auto calc(min(50%, 400px));\\n }\\n \");\n }, function(Bokeh) {\n Bokeh.set_log_level(\"info\");\n },\nfunction(Bokeh) {} // ensure no trailing comma for IE\n ];\n\n function run_inline_js() {\n if ((root.Bokeh !== undefined) || (force === true)) {\n for (var i = 0; i < inline_js.length; i++) {\n inline_js[i].call(root, root.Bokeh);\n }} else if (Date.now() < root._bokeh_timeout) {\n setTimeout(run_inline_js, 100);\n } else if (!root._bokeh_failed_load) {\n console.log(\"Bokeh: BokehJS failed to load within specified timeout.\");\n root._bokeh_failed_load = true;\n }\n }\n\n if (root._bokeh_is_loading === 0) {\n console.debug(\"Bokeh: BokehJS loaded, going straight to plotting\");\n run_inline_js();\n } else {\n load_libs(css_urls, js_urls, js_modules, function() {\n console.debug(\"Bokeh: BokehJS plotting callback run at\", now());\n run_inline_js();\n });\n }\n}(window));"
+ "application/vnd.holoviews_load.v0+json": "(function(root) {\n function now() {\n return new Date();\n }\n\n var force = true;\n var py_version = '3.2.2'.replace('rc', '-rc.').replace('.dev', '-dev.');\n var is_dev = py_version.indexOf(\"+\") !== -1 || py_version.indexOf(\"-\") !== -1;\n var reloading = false;\n var Bokeh = root.Bokeh;\n var bokeh_loaded = Bokeh != null && (Bokeh.version === py_version || (Bokeh.versions !== undefined && Bokeh.versions.has(py_version)));\n\n if (typeof (root._bokeh_timeout) === \"undefined\" || force) {\n root._bokeh_timeout = Date.now() + 5000;\n root._bokeh_failed_load = false;\n }\n\n function run_callbacks() {\n try {\n root._bokeh_onload_callbacks.forEach(function(callback) {\n if (callback != null)\n callback();\n });\n } finally {\n delete root._bokeh_onload_callbacks;\n }\n console.debug(\"Bokeh: all callbacks have finished\");\n }\n\n function load_libs(css_urls, js_urls, js_modules, js_exports, callback) {\n if (css_urls == null) css_urls = [];\n if (js_urls == null) js_urls = [];\n if (js_modules == null) js_modules = [];\n if (js_exports == null) js_exports = {};\n\n root._bokeh_onload_callbacks.push(callback);\n\n if (root._bokeh_is_loading > 0) {\n console.debug(\"Bokeh: BokehJS is being loaded, scheduling callback at\", now());\n return null;\n }\n if (js_urls.length === 0 && js_modules.length === 0 && Object.keys(js_exports).length === 0) {\n run_callbacks();\n return null;\n }\n if (!reloading) {\n console.debug(\"Bokeh: BokehJS not loaded, scheduling load and callback at\", now());\n }\n\n function on_load() {\n root._bokeh_is_loading--;\n if (root._bokeh_is_loading === 0) {\n console.debug(\"Bokeh: all BokehJS libraries/stylesheets loaded\");\n run_callbacks()\n }\n }\n window._bokeh_on_load = on_load\n\n function on_error() {\n console.error(\"failed to load \" + url);\n }\n\n var skip = [];\n if (window.requirejs) {\n window.requirejs.config({'packages': {}, 'paths': {'jspanel': 'https://cdn.jsdelivr.net/npm/jspanel4@4.12.0/dist/jspanel', 'jspanel-modal': 'https://cdn.jsdelivr.net/npm/jspanel4@4.12.0/dist/extensions/modal/jspanel.modal', 'jspanel-tooltip': 'https://cdn.jsdelivr.net/npm/jspanel4@4.12.0/dist/extensions/tooltip/jspanel.tooltip', 'jspanel-hint': 'https://cdn.jsdelivr.net/npm/jspanel4@4.12.0/dist/extensions/hint/jspanel.hint', 'jspanel-layout': 'https://cdn.jsdelivr.net/npm/jspanel4@4.12.0/dist/extensions/layout/jspanel.layout', 'jspanel-contextmenu': 'https://cdn.jsdelivr.net/npm/jspanel4@4.12.0/dist/extensions/contextmenu/jspanel.contextmenu', 'jspanel-dock': 'https://cdn.jsdelivr.net/npm/jspanel4@4.12.0/dist/extensions/dock/jspanel.dock', 'gridstack': 'https://cdn.jsdelivr.net/npm/gridstack@7.2.3/dist/gridstack-all', 'notyf': 'https://cdn.jsdelivr.net/npm/notyf@3/notyf.min'}, 'shim': {'jspanel': {'exports': 'jsPanel'}, 'gridstack': {'exports': 'GridStack'}}});\n require([\"jspanel\"], function(jsPanel) {\n\twindow.jsPanel = jsPanel\n\ton_load()\n })\n require([\"jspanel-modal\"], function() {\n\ton_load()\n })\n require([\"jspanel-tooltip\"], function() {\n\ton_load()\n })\n require([\"jspanel-hint\"], function() {\n\ton_load()\n })\n require([\"jspanel-layout\"], function() {\n\ton_load()\n })\n require([\"jspanel-contextmenu\"], function() {\n\ton_load()\n })\n require([\"jspanel-dock\"], function() {\n\ton_load()\n })\n require([\"gridstack\"], function(GridStack) {\n\twindow.GridStack = GridStack\n\ton_load()\n })\n require([\"notyf\"], function() {\n\ton_load()\n })\n root._bokeh_is_loading = css_urls.length + 9;\n } else {\n root._bokeh_is_loading = css_urls.length + js_urls.length + js_modules.length + Object.keys(js_exports).length;\n }\n\n var existing_stylesheets = []\n var links = document.getElementsByTagName('link')\n for (var i = 0; i < links.length; i++) {\n var link = links[i]\n if (link.href != null) {\n\texisting_stylesheets.push(link.href)\n }\n }\n for (var i = 0; i < css_urls.length; i++) {\n var url = css_urls[i];\n if (existing_stylesheets.indexOf(url) !== -1) {\n\ton_load()\n\tcontinue;\n }\n const element = document.createElement(\"link\");\n element.onload = on_load;\n element.onerror = on_error;\n element.rel = \"stylesheet\";\n element.type = \"text/css\";\n element.href = url;\n console.debug(\"Bokeh: injecting link tag for BokehJS stylesheet: \", url);\n document.body.appendChild(element);\n } if (((window['jsPanel'] !== undefined) && (!(window['jsPanel'] instanceof HTMLElement))) || window.requirejs) {\n var urls = ['https://cdn.holoviz.org/panel/1.2.3/dist/bundled/floatpanel/jspanel4@4.12.0/dist/jspanel.js', 'https://cdn.holoviz.org/panel/1.2.3/dist/bundled/floatpanel/jspanel4@4.12.0/dist/extensions/modal/jspanel.modal.js', 'https://cdn.holoviz.org/panel/1.2.3/dist/bundled/floatpanel/jspanel4@4.12.0/dist/extensions/tooltip/jspanel.tooltip.js', 'https://cdn.holoviz.org/panel/1.2.3/dist/bundled/floatpanel/jspanel4@4.12.0/dist/extensions/hint/jspanel.hint.js', 'https://cdn.holoviz.org/panel/1.2.3/dist/bundled/floatpanel/jspanel4@4.12.0/dist/extensions/layout/jspanel.layout.js', 'https://cdn.holoviz.org/panel/1.2.3/dist/bundled/floatpanel/jspanel4@4.12.0/dist/extensions/contextmenu/jspanel.contextmenu.js', 'https://cdn.holoviz.org/panel/1.2.3/dist/bundled/floatpanel/jspanel4@4.12.0/dist/extensions/dock/jspanel.dock.js'];\n for (var i = 0; i < urls.length; i++) {\n skip.push(urls[i])\n }\n } if (((window['GridStack'] !== undefined) && (!(window['GridStack'] instanceof HTMLElement))) || window.requirejs) {\n var urls = ['https://cdn.holoviz.org/panel/1.2.3/dist/bundled/gridstack/gridstack@7.2.3/dist/gridstack-all.js'];\n for (var i = 0; i < urls.length; i++) {\n skip.push(urls[i])\n }\n } if (((window['Notyf'] !== undefined) && (!(window['Notyf'] instanceof HTMLElement))) || window.requirejs) {\n var urls = ['https://cdn.holoviz.org/panel/1.2.3/dist/bundled/notificationarea/notyf@3/notyf.min.js'];\n for (var i = 0; i < urls.length; i++) {\n skip.push(urls[i])\n }\n } var existing_scripts = []\n var scripts = document.getElementsByTagName('script')\n for (var i = 0; i < scripts.length; i++) {\n var script = scripts[i]\n if (script.src != null) {\n\texisting_scripts.push(script.src)\n }\n }\n for (var i = 0; i < js_urls.length; i++) {\n var url = js_urls[i];\n if (skip.indexOf(url) !== -1 || existing_scripts.indexOf(url) !== -1) {\n\tif (!window.requirejs) {\n\t on_load();\n\t}\n\tcontinue;\n }\n var element = document.createElement('script');\n element.onload = on_load;\n element.onerror = on_error;\n element.async = false;\n element.src = url;\n console.debug(\"Bokeh: injecting script tag for BokehJS library: \", url);\n document.head.appendChild(element);\n }\n for (var i = 0; i < js_modules.length; i++) {\n var url = js_modules[i];\n if (skip.indexOf(url) !== -1 || existing_scripts.indexOf(url) !== -1) {\n\tif (!window.requirejs) {\n\t on_load();\n\t}\n\tcontinue;\n }\n var element = document.createElement('script');\n element.onload = on_load;\n element.onerror = on_error;\n element.async = false;\n element.src = url;\n element.type = \"module\";\n console.debug(\"Bokeh: injecting script tag for BokehJS library: \", url);\n document.head.appendChild(element);\n }\n for (const name in js_exports) {\n var url = js_exports[name];\n if (skip.indexOf(url) >= 0 || root[name] != null) {\n\tif (!window.requirejs) {\n\t on_load();\n\t}\n\tcontinue;\n }\n var element = document.createElement('script');\n element.onerror = on_error;\n element.async = false;\n element.type = \"module\";\n console.debug(\"Bokeh: injecting script tag for BokehJS library: \", url);\n element.textContent = `\n import ${name} from \"${url}\"\n window.${name} = ${name}\n window._bokeh_on_load()\n `\n document.head.appendChild(element);\n }\n if (!js_urls.length && !js_modules.length) {\n on_load()\n }\n };\n\n function inject_raw_css(css) {\n const element = document.createElement(\"style\");\n element.appendChild(document.createTextNode(css));\n document.body.appendChild(element);\n }\n\n var js_urls = [\"https://cdn.bokeh.org/bokeh/release/bokeh-3.2.2.min.js\", \"https://cdn.bokeh.org/bokeh/release/bokeh-gl-3.2.2.min.js\", \"https://cdn.bokeh.org/bokeh/release/bokeh-widgets-3.2.2.min.js\", \"https://cdn.bokeh.org/bokeh/release/bokeh-tables-3.2.2.min.js\", \"https://cdn.holoviz.org/panel/1.2.3/dist/panel.min.js\", \"https://cdn.jsdelivr.net/npm/@holoviz/geoviews@1.10.1/dist/geoviews.min.js\"];\n var js_modules = [];\n var js_exports = {};\n var css_urls = [];\n var inline_js = [ function(Bokeh) {\n Bokeh.set_log_level(\"info\");\n },\nfunction(Bokeh) {} // ensure no trailing comma for IE\n ];\n\n function run_inline_js() {\n if ((root.Bokeh !== undefined) || (force === true)) {\n for (var i = 0; i < inline_js.length; i++) {\n inline_js[i].call(root, root.Bokeh);\n }\n // Cache old bokeh versions\n if (Bokeh != undefined && !reloading) {\n\tvar NewBokeh = root.Bokeh;\n\tif (Bokeh.versions === undefined) {\n\t Bokeh.versions = new Map();\n\t}\n\tif (NewBokeh.version !== Bokeh.version) {\n\t Bokeh.versions.set(NewBokeh.version, NewBokeh)\n\t}\n\troot.Bokeh = Bokeh;\n }} else if (Date.now() < root._bokeh_timeout) {\n setTimeout(run_inline_js, 100);\n } else if (!root._bokeh_failed_load) {\n console.log(\"Bokeh: BokehJS failed to load within specified timeout.\");\n root._bokeh_failed_load = true;\n }\n root._bokeh_is_initializing = false\n }\n\n function load_or_wait() {\n // Implement a backoff loop that tries to ensure we do not load multiple\n // versions of Bokeh and its dependencies at the same time.\n // In recent versions we use the root._bokeh_is_initializing flag\n // to determine whether there is an ongoing attempt to initialize\n // bokeh, however for backward compatibility we also try to ensure\n // that we do not start loading a newer (Panel>=1.0 and Bokeh>3) version\n // before older versions are fully initialized.\n if (root._bokeh_is_initializing && Date.now() > root._bokeh_timeout) {\n root._bokeh_is_initializing = false;\n root._bokeh_onload_callbacks = undefined;\n console.log(\"Bokeh: BokehJS was loaded multiple times but one version failed to initialize.\");\n load_or_wait();\n } else if (root._bokeh_is_initializing || (typeof root._bokeh_is_initializing === \"undefined\" && root._bokeh_onload_callbacks !== undefined)) {\n setTimeout(load_or_wait, 100);\n } else {\n Bokeh = root.Bokeh;\n bokeh_loaded = Bokeh != null && (Bokeh.version === py_version || (Bokeh.versions !== undefined && Bokeh.versions.has(py_version)));\n root._bokeh_is_initializing = true\n root._bokeh_onload_callbacks = []\n if (!reloading && (!bokeh_loaded || is_dev)) {\n\troot.Bokeh = undefined;\n }\n load_libs(css_urls, js_urls, js_modules, js_exports, function() {\n\tconsole.debug(\"Bokeh: BokehJS plotting callback run at\", now());\n\trun_inline_js();\n });\n }\n }\n // Give older versions of the autoload script a head-start to ensure\n // they initialize before we start loading newer version.\n setTimeout(load_or_wait, 100)\n}(window));"
},
"metadata": {},
"output_type": "display_data"
@@ -1602,10 +1940,20 @@
{
"data": {
"text/html": [
- ""
]
@@ -1712,14 +2060,21 @@
"data": {
"application/vnd.holoviews_exec.v0+json": "",
"text/html": [
- "
\n",
- "
\n",
+ "
\n",
""
- ],
- "text/plain": [
- ":Layout\n",
- " .DynamicMap.I :DynamicMap [rgt]\n",
- " :Overlay\n",
- " .Tiles.I :Tiles [x,y]\n",
- " .Image.I :Image [x,y] (x_y elevation)\n",
- " .DynamicMap.II :DynamicMap [rgt]\n",
- " :Image [lat,elevation] (lat_elevation elevation)"
- ]
- },
- "execution_count": 10,
- "metadata": {
- "application/vnd.holoviews_exec.v0+json": {
- "id": "1117"
- }
- },
- "output_type": "execute_result"
- }
- ],
- "source": [
- "# Request information from OpenAltimetry\n",
- "cyclemap, rgtmap = plotreg.visualize_elevation()\n",
- "\n",
- "rgtmap"
- ]
- },
- {
- "cell_type": "markdown",
- "metadata": {
- "user_expressions": []
- },
- "source": [
- "Looks good! Now it's time to acquire the data."
- ]
- },
- {
- "cell_type": "markdown",
- "metadata": {
- "user_expressions": []
- },
- "source": [
- "## Get the granule s3 urls\n",
- "You must specify `cloud=True` to get the needed s3 urls.\n",
- "This function returns a list containing the list of the granule IDs and a list of the corresponding urls."
- ]
- },
- {
- "cell_type": "code",
- "execution_count": 11,
+ "execution_count": 11,
"metadata": {
"tags": []
},
@@ -1951,40 +2205,15 @@
},
{
"cell_type": "code",
- "execution_count": 12,
+ "execution_count": 15,
"metadata": {
"scrolled": true,
"tags": []
},
- "outputs": [
- {
- "name": "stdout",
- "output_type": "stream",
- "text": [
- "EARTHDATA_USERNAME and EARTHDATA_PASSWORD are not set in the current environment, try setting them or use a different strategy (netrc, interactive)\n",
- "You're now authenticated with NASA Earthdata Login\n",
- "Using token with expiration date: 09/16/2023\n",
- "Using .netrc file for EDL\n"
- ]
- }
- ],
- "source": [
- "# Configure these two according to your credentials\n",
- "EARTHDATA_USERNAME = \"tsnow03\"\n",
- "EARTHDATA_EMAIL = \"tsnow@mines.edu\"\n",
- "\n",
- "region.earthdata_login(EARTHDATA_USERNAME, EARTHDATA_EMAIL, s3token=True)"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": 13,
- "metadata": {
- "tags": []
- },
"outputs": [],
"source": [
- "credentials = region._s3login_credentials"
+ "# Add your EarthData credentials\n",
+ "region.earthdata_login(s3token=True)"
]
},
{
@@ -1998,7 +2227,7 @@
},
{
"cell_type": "code",
- "execution_count": 14,
+ "execution_count": 16,
"metadata": {
"tags": []
},
@@ -2009,12 +2238,14 @@
},
{
"cell_type": "code",
- "execution_count": 15,
+ "execution_count": 17,
"metadata": {
"tags": []
},
"outputs": [],
"source": [
+ "# Authenicate using your NASA Earth Data login credentials; enter your user id and password when prompted\n",
+ "credentials = region.s3login_credentials\n",
"s3 = s3fs.S3FileSystem(key=credentials['accessKeyId'],\n",
" secret=credentials['secretAccessKey'],\n",
" token=credentials['sessionToken'])"
@@ -2034,7 +2265,7 @@
},
{
"cell_type": "code",
- "execution_count": 16,
+ "execution_count": 18,
"metadata": {
"tags": []
},
@@ -2048,7 +2279,7 @@
},
{
"cell_type": "code",
- "execution_count": 17,
+ "execution_count": 19,
"metadata": {
"tags": []
},
@@ -2057,8 +2288,8 @@
"name": "stdout",
"output_type": "stream",
"text": [
- "CPU times: user 84.6 ms, sys: 16 ms, total: 101 ms\n",
- "Wall time: 347 ms\n"
+ "CPU times: user 90 ms, sys: 28.1 ms, total: 118 ms\n",
+ "Wall time: 274 ms\n"
]
}
],
@@ -2069,7 +2300,7 @@
},
{
"cell_type": "code",
- "execution_count": 18,
+ "execution_count": 20,
"metadata": {
"tags": []
},
@@ -2089,7 +2320,7 @@
" 'quality_assessment']"
]
},
- "execution_count": 18,
+ "execution_count": 20,
"metadata": {},
"output_type": "execute_result"
}
@@ -2110,7 +2341,7 @@
},
{
"cell_type": "code",
- "execution_count": 19,
+ "execution_count": 21,
"metadata": {
"tags": []
},
@@ -2185,7 +2416,7 @@
"4 59.790085 -47.174286 3.402823e+38"
]
},
- "execution_count": 19,
+ "execution_count": 21,
"metadata": {},
"output_type": "execute_result"
}
@@ -2255,7 +2486,7 @@
},
{
"cell_type": "code",
- "execution_count": 20,
+ "execution_count": 22,
"metadata": {
"tags": []
},
@@ -2406,7 +2637,7 @@
"4 78 1 "
]
},
- "execution_count": 20,
+ "execution_count": 22,
"metadata": {},
"output_type": "execute_result"
}
@@ -2430,7 +2661,7 @@
},
{
"cell_type": "code",
- "execution_count": 21,
+ "execution_count": 23,
"metadata": {
"tags": []
},
@@ -2463,7 +2694,7 @@
},
{
"cell_type": "code",
- "execution_count": 22,
+ "execution_count": 58,
"metadata": {
"tags": []
},
@@ -2471,7 +2702,7 @@
{
"data": {
"application/vnd.jupyter.widget-view+json": {
- "model_id": "10b753ffc9f54e1bb102484ff777da4b",
+ "model_id": "57562ff8b24d44e2883a9321c5c465c6",
"version_major": 2,
"version_minor": 0
},
@@ -2479,8 +2710,9 @@
"Map(center=[69.25, -49.64999999999998], controls=(ZoomControl(options=['position', 'zoom_in_text', 'zoom_in_ti…"
]
},
+ "execution_count": 58,
"metadata": {},
- "output_type": "display_data"
+ "output_type": "execute_result"
}
],
"source": [
@@ -2597,7 +2829,7 @@
},
{
"cell_type": "code",
- "execution_count": 23,
+ "execution_count": 27,
"metadata": {
"tags": []
},
@@ -2621,7 +2853,7 @@
},
{
"cell_type": "code",
- "execution_count": 24,
+ "execution_count": 28,
"metadata": {
"tags": []
},
@@ -2651,7 +2883,7 @@
},
{
"cell_type": "code",
- "execution_count": 25,
+ "execution_count": 29,
"metadata": {
"tags": []
},
@@ -2691,21 +2923,25 @@
},
{
"cell_type": "markdown",
- "metadata": {},
+ "metadata": {
+ "user_expressions": []
+ },
"source": [
"We can include property searches, such as path, row, cloud-cover, as well with the `properties` flag in the api.search."
]
},
{
"cell_type": "markdown",
- "metadata": {},
+ "metadata": {
+ "user_expressions": []
+ },
"source": [
"We are given a pystac collection of items (images)"
]
},
{
"cell_type": "code",
- "execution_count": 27,
+ "execution_count": 30,
"metadata": {
"tags": []
},
@@ -2715,2973 +2951,18157 @@
"text/html": [
"\n",
"\n",
- "
\n",
- "
\n",
- "
\n",
- "
\n",
- "
\n",
- " \n",
- " \n",
- " ItemCollection\n",
- "
\n",
- "
\n",
- " \n",
- "\n",
+ "\n",
+ "\n",
+ "
\n",
+ "
\n",
" \n",
- " \n",
- " \n",
- " \n",
- " Items
\n",
- "
\n",
- " \n",
- " \n",
- "\n",
- "\n",
- "
\n",
- "
\n",
- "
\n",
- "
\n",
- " \n",
- " Item: LC08_L1TP_008012_20190507_20200829_02_T1
\n",
- "
\n",
- " \n",
- " id: LC08_L1TP_008012_20190507_20200829_02_T1 |
\n",
- " \n",
- " bbox: [-52.450348972917006, 67.13075970832166, -46.38012875444901, 69.41548599740054] |
\n",
" \n",
- " \n",
- " \n",
- " datetime: 2019-05-07T14:54:18.865855Z |
\n",
- " \n",
- " eo:cloud_cover: 0.18 |
\n",
- " \n",
- " view:sun_azimuth: 173.85264541 |
\n",
- " \n",
- " view:sun_elevation: 38.46360597 |
\n",
- " \n",
- " platform: LANDSAT_8 |
\n",
- " \n",
- " instruments: ['OLI', 'TIRS'] |
\n",
- " \n",
- " view:off_nadir: 0 |
\n",
- " \n",
- " landsat:cloud_cover_land: 0 |
\n",
- " \n",
- " landsat:wrs_type: 2 |
\n",
- " \n",
- " landsat:wrs_path: 008 |
\n",
- " \n",
- " landsat:wrs_row: 012 |
\n",
" \n",
- " landsat:scene_id: LC80080122019127LGN00 |
\n",
- " \n",
- " landsat:collection_category: T1 |
\n",
- " \n",
- " landsat:collection_number: 02 |
\n",
- " \n",
- " landsat:correction: L1TP |
\n",
- " \n",
- " accuracy:geometric_x_bias: 0 |
\n",
- " \n",
- " accuracy:geometric_y_bias: 0 |
\n",
- " \n",
- " accuracy:geometric_x_stddev: 3.431 |
\n",
- " \n",
- " accuracy:geometric_y_stddev: 3.144 |
\n",
- " \n",
- " accuracy:geometric_rmse: 4.654 |
\n",
- " \n",
- " proj:epsg: 32622 |
\n",
- " \n",
- " proj:shape: [8491, 8431] |
\n",
- " \n",
- " proj:transform: [30, 0, 437085, 0, -30, 7701615] |
\n",
- " \n",
- " created: 2022-06-28T20:15:52.467Z |
\n",
- " \n",
- " updated: 2022-06-28T20:15:52.467Z |
\n",
- " \n",
- " \n",
+ " - \n",
+ " type\n",
+ " \"FeatureCollection\"\n",
+ "
\n",
+ " \n",
" \n",
- "
\n",
" \n",
- " \n",
- " \n",
- " STAC Extensions
\n",
- "
\n",
- " \n",
- " \n",
- " https://landsat.usgs.gov/stac/landsat-extension/v1.1.1/schema.json |
\n",
- " \n",
- " https://stac-extensions.github.io/view/v1.0.0/schema.json |
\n",
- " \n",
- " https://stac-extensions.github.io/projection/v1.0.0/schema.json |
\n",
- " \n",
- " https://stac-extensions.github.io/eo/v1.0.0/schema.json |
\n",
- " \n",
- " https://stac-extensions.github.io/alternate-assets/v1.1.0/schema.json |
\n",
- " \n",
- " https://stac-extensions.github.io/storage/v1.0.0/schema.json |
\n",
- " \n",
- " https://stac-extensions.github.io/file/v1.0.0/schema.json |
\n",
" \n",
- " https://stac-extensions.github.io/accuracy/v1.0.0/schema.json |
\n",
+ " \n",
+ " \n",
+ " features\n",
+ " [] 2 items\n",
+ "
\n",
+ " \n",
+ "
\n",
- " \n",
+ " - \n",
+ " type\n",
+ " \"Feature\"\n",
+ "
\n",
" \n",
" \n",
- " \n",
- " \n",
- " Assets
\n",
- "
\n",
+ " \n",
" \n",
" \n",
- "\n",
- "\n",
- "
\n",
- "
\n",
- "
\n",
- "
\n",
- " \n",
- " Asset: Thumbnail image
\n",
- "
\n",
- " \n",
- " href: https://landsatlook.usgs.gov/data/collection02/level-1/standard/oli-tirs/2019/008/012/LC08_L1TP_008012_20190507_20200829_02_T1/LC08_L1TP_008012_20190507_20200829_02_T1_thumb_small.jpeg |
\n",
- " \n",
- " type: image/jpeg |
\n",
- " \n",
- " \n",
- " title: Thumbnail image |
\n",
- " \n",
- " \n",
- " \n",
- " roles: ['thumbnail'] |
\n",
- " \n",
- " \n",
- " owner: LC08_L1TP_008012_20190507_20200829_02_T1 |
\n",
+ " - \n",
+ " stac_version\n",
+ " \"1.0.0\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
" \n",
+ " - \n",
+ " id\n",
+ " \"LC08_L1TP_008012_20190507_20200829_02_T1\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
" \n",
+ " \n",
+ " properties
\n",
+ " \n",
" \n",
" \n",
- " alternate: {'s3': {'storage:platform': 'AWS', 'storage:requester_pays': True, 'href': 's3://usgs-landsat/collection02/level-1/standard/oli-tirs/2019/008/012/LC08_L1TP_008012_20190507_20200829_02_T1/LC08_L1TP_008012_20190507_20200829_02_T1_thumb_small.jpeg'}} |
\n",
+ " \n",
+ " - \n",
+ " datetime\n",
+ " \"2019-05-07T14:54:18.865855Z\"\n",
+ "
\n",
+ " \n",
" \n",
" \n",
" \n",
- " file:checksum: 1340053e4b3a8bd8bbbdd08292c634cd17225767acf798e3226e243f8ff771decd243ae49441b4e81fada81de7cc0dd4120fec0a9ca7d77844a41f0c3c619be4867e |
\n",
+ " \n",
+ " - \n",
+ " eo:cloud_cover\n",
+ " 0.18\n",
+ "
\n",
+ " \n",
" \n",
" \n",
- " \n",
- "
\n",
- " \n",
- "
\n",
- "
\n",
" \n",
" \n",
- "\n",
- "\n",
- "
\n",
- "
\n",
- "
\n",
- "
\n",
- " \n",
- " Asset: Reduced resolution browse image
\n",
- "
\n",
- " \n",
- " href: https://landsatlook.usgs.gov/data/collection02/level-1/standard/oli-tirs/2019/008/012/LC08_L1TP_008012_20190507_20200829_02_T1/LC08_L1TP_008012_20190507_20200829_02_T1_thumb_large.jpeg |
\n",
- " \n",
- " type: image/jpeg |
\n",
- " \n",
- " \n",
- " title: Reduced resolution browse image |
\n",
- " \n",
- " \n",
- " \n",
- " roles: ['overview'] |
\n",
- " \n",
- " \n",
- " owner: LC08_L1TP_008012_20190507_20200829_02_T1 |
\n",
+ " - \n",
+ " view:sun_azimuth\n",
+ " 173.85264541\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
" \n",
+ " - \n",
+ " view:sun_elevation\n",
+ " 38.46360597\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
" \n",
+ " - \n",
+ " platform\n",
+ " \"LANDSAT_8\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " instruments\n",
+ " [] 2 items\n",
+ "
\n",
+ " \n",
+ " \n",
" \n",
" \n",
- " alternate: {'s3': {'storage:platform': 'AWS', 'storage:requester_pays': True, 'href': 's3://usgs-landsat/collection02/level-1/standard/oli-tirs/2019/008/012/LC08_L1TP_008012_20190507_20200829_02_T1/LC08_L1TP_008012_20190507_20200829_02_T1_thumb_large.jpeg'}} |
\n",
+ " \n",
+ " - \n",
+ " 0\n",
+ " \"OLI\"\n",
+ "
\n",
+ " \n",
" \n",
" \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
" \n",
" \n",
+ " \n",
+ " \n",
+ " - \n",
+ " view:off_nadir\n",
+ " 0\n",
+ "
\n",
" \n",
- "
\n",
- " \n",
- "
\n",
- "
\n",
+ " \n",
+ " \n",
" \n",
" \n",
- "\n",
- "\n",
- "
\n",
- "
\n",
- "
\n",
- "
\n",
- " \n",
- " Asset: HTML index page
\n",
- "
\n",
- " \n",
- " href: https://landsatlook.usgs.gov/stac-browser/collection02/level-1/standard/oli-tirs/2019/008/012/LC08_L1TP_008012_20190507_20200829_02_T1/LC08_L1TP_008012_20190507_20200829_02_T1 |
\n",
- " \n",
- " type: text/html |
\n",
- " \n",
- " \n",
- " title: HTML index page |
\n",
- " \n",
- " \n",
- " \n",
- " roles: ['metadata'] |
\n",
- " \n",
- " \n",
- " owner: LC08_L1TP_008012_20190507_20200829_02_T1 |
\n",
- " \n",
- " \n",
- "
\n",
- " \n",
- "
\n",
- "
\n",
+ " - \n",
+ " landsat:cloud_cover_land\n",
+ " 0\n",
+ "
\n",
+ " \n",
" \n",
- " \n",
- "\n",
- "\n",
- "
\n",
- "
\n",
- "
\n",
- "
\n",
- " \n",
- " Asset: Product Metadata File (json)
\n",
- "
\n",
- " \n",
- " href: https://landsatlook.usgs.gov/data/collection02/level-1/standard/oli-tirs/2019/008/012/LC08_L1TP_008012_20190507_20200829_02_T1/LC08_L1TP_008012_20190507_20200829_02_T1_MTL.json |
\n",
- " \n",
- " type: application/json |
\n",
- " \n",
- " \n",
- " title: Product Metadata File (json) |
\n",
- " \n",
- " \n",
- " description: Collection 2 Level-1 Product Metadata File (json) |
\n",
- " \n",
- " \n",
- " roles: ['metadata'] |
\n",
- " \n",
- " \n",
- " owner: LC08_L1TP_008012_20190507_20200829_02_T1 |
\n",
- " \n",
- " \n",
" \n",
" \n",
- " alternate: {'s3': {'storage:platform': 'AWS', 'storage:requester_pays': True, 'href': 's3://usgs-landsat/collection02/level-1/standard/oli-tirs/2019/008/012/LC08_L1TP_008012_20190507_20200829_02_T1/LC08_L1TP_008012_20190507_20200829_02_T1_MTL.json'}} |
\n",
+ " \n",
+ " - \n",
+ " landsat:wrs_type\n",
+ " \"2\"\n",
+ "
\n",
+ " \n",
" \n",
" \n",
" \n",
- " file:checksum: 1340cdeb22284cc5c6d705c1ae7b17cc4138d4bbf77ab9dc7e0a51276fa19c63ac908e71251ce7e60408ec9dc278255a4e5fb5543d0f3194cfebc5ad7b0c1c063d27 |
\n",
+ " \n",
+ " - \n",
+ " landsat:wrs_path\n",
+ " \"008\"\n",
+ "
\n",
+ " \n",
" \n",
" \n",
- " \n",
- "
\n",
- " \n",
- "
\n",
- "
\n",
" \n",
" \n",
- "\n",
- "\n",
- "
\n",
- "
\n",
- "
\n",
- "
\n",
- " \n",
- " Asset: Coastal/Aerosol Band (B1)
\n",
- "
\n",
- " \n",
- " href: https://landsatlook.usgs.gov/data/collection02/level-1/standard/oli-tirs/2019/008/012/LC08_L1TP_008012_20190507_20200829_02_T1/LC08_L1TP_008012_20190507_20200829_02_T1_B1.TIF |
\n",
- " \n",
- " type: image/vnd.stac.geotiff; cloud-optimized=true |
\n",
- " \n",
- " \n",
- " title: Coastal/Aerosol Band (B1) |
\n",
- " \n",
- " \n",
- " description: Collection 2 Level-1 Coastal/Aerosol Band (B1) Top of Atmosphere Radiance |
\n",
- " \n",
- " \n",
- " roles: ['data'] |
\n",
- " \n",
- " \n",
- " owner: LC08_L1TP_008012_20190507_20200829_02_T1 |
\n",
- " \n",
- " \n",
+ " - \n",
+ " landsat:wrs_row\n",
+ " \"012\"\n",
+ "
\n",
+ " \n",
+ " \n",
" \n",
" \n",
- " eo:bands: [{'name': 'B1', 'common_name': 'coastal', 'gsd': 30, 'center_wavelength': 0.44}] |
\n",
+ " \n",
+ " - \n",
+ " landsat:scene_id\n",
+ " \"LC80080122019127LGN00\"\n",
+ "
\n",
+ " \n",
" \n",
" \n",
" \n",
- " alternate: {'s3': {'storage:platform': 'AWS', 'storage:requester_pays': True, 'href': 's3://usgs-landsat/collection02/level-1/standard/oli-tirs/2019/008/012/LC08_L1TP_008012_20190507_20200829_02_T1/LC08_L1TP_008012_20190507_20200829_02_T1_B1.TIF'}} |
\n",
+ " \n",
+ " - \n",
+ " landsat:collection_category\n",
+ " \"T1\"\n",
+ "
\n",
+ " \n",
" \n",
" \n",
" \n",
- " file:checksum: 1340c03174043d3c94303da08abc2fd78f6e45526c5831056cd1502bdecf514daf079fc05ab02bdd383b7c3e4da6964e1394a5ca4a584eada3cd6909d7c53724ebe7 |
\n",
+ " \n",
+ " - \n",
+ " landsat:collection_number\n",
+ " \"02\"\n",
+ "
\n",
+ " \n",
" \n",
" \n",
- " \n",
- "
\n",
- " \n",
- "
\n",
- "
\n",
" \n",
" \n",
- "\n",
- "\n",
- "
\n",
- "
\n",
- "
\n",
- "
\n",
- " \n",
- " Asset: Blue Band (B2)
\n",
- "
\n",
- " \n",
- " href: https://landsatlook.usgs.gov/data/collection02/level-1/standard/oli-tirs/2019/008/012/LC08_L1TP_008012_20190507_20200829_02_T1/LC08_L1TP_008012_20190507_20200829_02_T1_B2.TIF |
\n",
- " \n",
- " type: image/vnd.stac.geotiff; cloud-optimized=true |
\n",
- " \n",
- " \n",
- " title: Blue Band (B2) |
\n",
- " \n",
- " \n",
- " description: Collection 2 Level-1 Blue Band (B2) Top of Atmosphere Radiance |
\n",
- " \n",
- " \n",
- " roles: ['data'] |
\n",
- " \n",
- " \n",
- " owner: LC08_L1TP_008012_20190507_20200829_02_T1 |
\n",
- " \n",
- " \n",
+ " - \n",
+ " landsat:correction\n",
+ " \"L1TP\"\n",
+ "
\n",
+ " \n",
+ " \n",
" \n",
" \n",
- " eo:bands: [{'name': 'B2', 'common_name': 'blue', 'gsd': 30, 'center_wavelength': 0.48}] |
\n",
+ " \n",
+ " - \n",
+ " accuracy:geometric_x_bias\n",
+ " 0\n",
+ "
\n",
+ " \n",
" \n",
" \n",
" \n",
- " alternate: {'s3': {'storage:platform': 'AWS', 'storage:requester_pays': True, 'href': 's3://usgs-landsat/collection02/level-1/standard/oli-tirs/2019/008/012/LC08_L1TP_008012_20190507_20200829_02_T1/LC08_L1TP_008012_20190507_20200829_02_T1_B2.TIF'}} |
\n",
+ " \n",
+ " - \n",
+ " accuracy:geometric_y_bias\n",
+ " 0\n",
+ "
\n",
+ " \n",
" \n",
" \n",
" \n",
- " file:checksum: 1340eda74ede96fa71b87679644ee9addd5ea19d4df78a20c8f000c3031c449f3c6f172c9e78b0e3ee291d3af574360ee260d628b07932ba23cbb7fa674b55ef568b |
\n",
+ " \n",
+ " - \n",
+ " accuracy:geometric_x_stddev\n",
+ " 3.431\n",
+ "
\n",
+ " \n",
" \n",
" \n",
- " \n",
- "
\n",
- " \n",
- "
\n",
- "
\n",
" \n",
" \n",
- "\n",
- "\n",
- "
\n",
- "
\n",
- "
\n",
- "
\n",
- " \n",
- " Asset: Green Band (B3)
\n",
- "
\n",
- " \n",
- " href: https://landsatlook.usgs.gov/data/collection02/level-1/standard/oli-tirs/2019/008/012/LC08_L1TP_008012_20190507_20200829_02_T1/LC08_L1TP_008012_20190507_20200829_02_T1_B3.TIF |
\n",
- " \n",
- " type: image/vnd.stac.geotiff; cloud-optimized=true |
\n",
- " \n",
- " \n",
- " title: Green Band (B3) |
\n",
- " \n",
- " \n",
- " description: Collection 2 Level-1 Green Band (B3) Top of Atmosphere Radiance |
\n",
- " \n",
- " \n",
- " roles: ['data'] |
\n",
- " \n",
- " \n",
- " owner: LC08_L1TP_008012_20190507_20200829_02_T1 |
\n",
- " \n",
- " \n",
+ " - \n",
+ " accuracy:geometric_y_stddev\n",
+ " 3.144\n",
+ "
\n",
+ " \n",
+ " \n",
" \n",
" \n",
- " eo:bands: [{'name': 'B3', 'common_name': 'green', 'gsd': 30, 'center_wavelength': 0.56}] |
\n",
+ " \n",
+ " - \n",
+ " accuracy:geometric_rmse\n",
+ " 4.654\n",
+ "
\n",
+ " \n",
" \n",
" \n",
" \n",
- " alternate: {'s3': {'storage:platform': 'AWS', 'storage:requester_pays': True, 'href': 's3://usgs-landsat/collection02/level-1/standard/oli-tirs/2019/008/012/LC08_L1TP_008012_20190507_20200829_02_T1/LC08_L1TP_008012_20190507_20200829_02_T1_B3.TIF'}} |
\n",
+ " \n",
+ " - \n",
+ " proj:epsg\n",
+ " 32622\n",
+ "
\n",
+ " \n",
" \n",
" \n",
" \n",
- " file:checksum: 13405bc02e5190d2f6d162f803bd59938c24166c428c23f5a2991cb1eb13de91398c5fa3638ee72bb3dd9fb591edc1388bad44e892f5d5c9ff310f5a8a76d26c14a3 |
\n",
- " \n",
+ " \n",
+ " \n",
+ " proj:shape\n",
+ " [] 2 items\n",
+ "
\n",
+ " \n",
+ "
\n",
- " \n",
- "
\n",
- "
\n",
" \n",
" \n",
- "\n",
- "\n",
- "
\n",
- "
\n",
- "
\n",
- "
\n",
- " \n",
- " Asset: Red Band (B4)
\n",
- "
\n",
- " \n",
- " href: https://landsatlook.usgs.gov/data/collection02/level-1/standard/oli-tirs/2019/008/012/LC08_L1TP_008012_20190507_20200829_02_T1/LC08_L1TP_008012_20190507_20200829_02_T1_B4.TIF |
\n",
- " \n",
- " type: image/vnd.stac.geotiff; cloud-optimized=true |
\n",
- " \n",
- " \n",
- " title: Red Band (B4) |
\n",
- " \n",
- " \n",
- " description: Collection 2 Level-1 Red Band (B4) Top of Atmosphere Radiance |
\n",
- " \n",
- " \n",
- " roles: ['data'] |
\n",
- " \n",
- " \n",
- " owner: LC08_L1TP_008012_20190507_20200829_02_T1 |
\n",
- " \n",
- " \n",
+ " - \n",
+ " 0\n",
+ " 8491\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
" \n",
- " alternate: {'s3': {'storage:platform': 'AWS', 'storage:requester_pays': True, 'href': 's3://usgs-landsat/collection02/level-1/standard/oli-tirs/2019/008/012/LC08_L1TP_008012_20190507_20200829_02_T1/LC08_L1TP_008012_20190507_20200829_02_T1_B4.TIF'}} |
\n",
+ " \n",
" \n",
+ " \n",
+ " \n",
+ " proj:transform\n",
+ " [] 6 items\n",
+ "
\n",
+ " \n",
+ "
\n",
- " \n",
- "
\n",
- "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
" \n",
" \n",
- "\n",
- "\n",
- "
\n",
- "
\n",
- "
\n",
- "
\n",
- " \n",
- " Asset: Near Infrared Band 0.8 (B5)
\n",
- "
\n",
- " \n",
- " href: https://landsatlook.usgs.gov/data/collection02/level-1/standard/oli-tirs/2019/008/012/LC08_L1TP_008012_20190507_20200829_02_T1/LC08_L1TP_008012_20190507_20200829_02_T1_B5.TIF |
\n",
- " \n",
- " type: image/vnd.stac.geotiff; cloud-optimized=true |
\n",
- " \n",
- " \n",
- " title: Near Infrared Band 0.8 (B5) |
\n",
- " \n",
- " \n",
- " description: Collection 2 Level-1 Near Infrared Band 0.8 (B5) Top of Atmosphere Radiance |
\n",
- " \n",
- " \n",
- " roles: ['data', 'reflectance'] |
\n",
- " \n",
- " \n",
- " owner: LC08_L1TP_008012_20190507_20200829_02_T1 |
\n",
- " \n",
- " \n",
+ " - \n",
+ " 1\n",
+ " 0\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
" \n",
- " alternate: {'s3': {'storage:platform': 'AWS', 'storage:requester_pays': True, 'href': 's3://usgs-landsat/collection02/level-1/standard/oli-tirs/2019/008/012/LC08_L1TP_008012_20190507_20200829_02_T1/LC08_L1TP_008012_20190507_20200829_02_T1_B5.TIF'}} |
\n",
+ " \n",
+ " - \n",
+ " 3\n",
+ " 0\n",
+ "
\n",
+ " \n",
" \n",
" \n",
+ "
\n",
+ " \n",
+ "
\n",
- " \n",
- "
\n",
- "
\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
" \n",
" \n",
- "\n",
- "\n",
- "
\n",
- "
\n",
- "
\n",
- "
\n",
- " \n",
- " Asset: Short-wave Infrared Band 1.6 (B6)
\n",
- "
\n",
- " \n",
- " href: https://landsatlook.usgs.gov/data/collection02/level-1/standard/oli-tirs/2019/008/012/LC08_L1TP_008012_20190507_20200829_02_T1/LC08_L1TP_008012_20190507_20200829_02_T1_B6.TIF |
\n",
- " \n",
- " type: image/vnd.stac.geotiff; cloud-optimized=true |
\n",
- " \n",
- " \n",
- " title: Short-wave Infrared Band 1.6 (B6) |
\n",
- " \n",
- " \n",
- " description: Collection 2 Level-1 Short-wave Infrared Band 1.6 (B6) Top of Atmosphere Radiance |
\n",
- " \n",
- " \n",
- " roles: ['data', 'reflectance'] |
\n",
- " \n",
- " \n",
- " owner: LC08_L1TP_008012_20190507_20200829_02_T1 |
\n",
- " \n",
- " \n",
- " \n",
+ " - \n",
+ " 5\n",
+ " 7701615\n",
+ "
\n",
+ " \n",
" \n",
- " eo:bands: [{'name': 'B6', 'common_name': 'swir16', 'gsd': 30, 'center_wavelength': 1.61}] |
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
" \n",
" \n",
" \n",
- " alternate: {'s3': {'storage:platform': 'AWS', 'storage:requester_pays': True, 'href': 's3://usgs-landsat/collection02/level-1/standard/oli-tirs/2019/008/012/LC08_L1TP_008012_20190507_20200829_02_T1/LC08_L1TP_008012_20190507_20200829_02_T1_B6.TIF'}} |
\n",
+ " \n",
+ " - \n",
+ " created\n",
+ " \"2022-06-28T20:15:52.467Z\"\n",
+ "
\n",
+ " \n",
" \n",
" \n",
" \n",
- " file:checksum: 1340688d7d2eeba5767eb1a13a9a0681878bf9d465c68481162d00f2eb3859ca82d05f5d2a71d89dc9c605d5c5e3bfe75d7e762c063718e0c8cd71c51914cb87176a |
\n",
+ " \n",
+ " - \n",
+ " updated\n",
+ " \"2022-06-28T20:15:52.467Z\"\n",
+ "
\n",
+ " \n",
" \n",
" \n",
+ " \n",
+ " \n",
" \n",
- "
\n",
- " \n",
- "
\n",
- "
\n",
+ " \n",
+ " \n",
" \n",
" \n",
- "\n",
- "\n",
- "
\n",
- "
\n",
- "
\n",
- "
\n",
- " \n",
- " Asset: Short-wave Infrared Band 2.2 (B7)
\n",
- "
\n",
- " \n",
- " href: https://landsatlook.usgs.gov/data/collection02/level-1/standard/oli-tirs/2019/008/012/LC08_L1TP_008012_20190507_20200829_02_T1/LC08_L1TP_008012_20190507_20200829_02_T1_B7.TIF |
\n",
- " \n",
- " type: image/vnd.stac.geotiff; cloud-optimized=true |
\n",
- " \n",
- " \n",
- " title: Short-wave Infrared Band 2.2 (B7) |
\n",
- " \n",
- " \n",
- " description: Collection 2 Level-1 Short-wave Infrared Band 2.2 (B7) Top of Atmosphere Radiance |
\n",
- " \n",
- " \n",
- " roles: ['data', 'reflectance'] |
\n",
- " \n",
- " \n",
- " owner: LC08_L1TP_008012_20190507_20200829_02_T1 |
\n",
- " \n",
- " \n",
+ " \n",
+ " geometry
\n",
+ " \n",
" \n",
" \n",
- " eo:bands: [{'name': 'B7', 'common_name': 'swir22', 'gsd': 30, 'center_wavelength': 2.2}] |
\n",
+ " \n",
+ " - \n",
+ " type\n",
+ " \"Polygon\"\n",
+ "
\n",
+ " \n",
" \n",
" \n",
" \n",
- " alternate: {'s3': {'storage:platform': 'AWS', 'storage:requester_pays': True, 'href': 's3://usgs-landsat/collection02/level-1/standard/oli-tirs/2019/008/012/LC08_L1TP_008012_20190507_20200829_02_T1/LC08_L1TP_008012_20190507_20200829_02_T1_B7.TIF'}} |
\n",
- " \n",
+ " \n",
+ " \n",
+ " coordinates\n",
+ " [] 1 items\n",
+ "
\n",
+ " \n",
+ "
\n",
- " \n",
- "
\n",
- "
\n",
" \n",
" \n",
- "\n",
- "\n",
- "
\n",
- "
\n",
- "
\n",
- "
\n",
- " \n",
- " Asset: Panchromatic Band (B8)
\n",
- "
\n",
- " \n",
- " href: https://landsatlook.usgs.gov/data/collection02/level-1/standard/oli-tirs/2019/008/012/LC08_L1TP_008012_20190507_20200829_02_T1/LC08_L1TP_008012_20190507_20200829_02_T1_B8.TIF |
\n",
- " \n",
- " type: image/vnd.stac.geotiff; cloud-optimized=true |
\n",
- " \n",
- " \n",
- " title: Panchromatic Band (B8) |
\n",
- " \n",
- " \n",
- " description: Collection 2 Level-1 Panchromatic Band (B8) Top of Atmosphere Radiance |
\n",
- " \n",
- " \n",
- " roles: ['data'] |
\n",
- " \n",
- " \n",
- " owner: LC08_L1TP_008012_20190507_20200829_02_T1 |
\n",
- " \n",
- " \n",
+ " - \n",
+ " 0\n",
+ " -50.654927278460335\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
" \n",
- " alternate: {'s3': {'storage:platform': 'AWS', 'storage:requester_pays': True, 'href': 's3://usgs-landsat/collection02/level-1/standard/oli-tirs/2019/008/012/LC08_L1TP_008012_20190507_20200829_02_T1/LC08_L1TP_008012_20190507_20200829_02_T1_B8.TIF'}} |
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
" \n",
+ " \n",
+ " \n",
+ " 1\n",
+ " [] 2 items\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
" \n",
- " proj:shape: [16981, 16861] |
\n",
+ " \n",
+ " - \n",
+ " 1\n",
+ " 67.79611546126523\n",
+ "
\n",
+ " \n",
" \n",
" \n",
- " \n",
- " proj:transform: [15, 0, 437092.5, 0, -15, 7701607.5] |
\n",
+ "
\n",
+ " \n",
+ " \n",
" \n",
" \n",
- " \n",
- "
\n",
- " \n",
- "
\n",
- "
\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
" \n",
- " \n",
- "\n",
- "\n",
- "
\n",
- "
\n",
- "
\n",
- "
\n",
- " \n",
- " Asset: Cirrus Band (B9)
\n",
- "
\n",
- " \n",
- " href: https://landsatlook.usgs.gov/data/collection02/level-1/standard/oli-tirs/2019/008/012/LC08_L1TP_008012_20190507_20200829_02_T1/LC08_L1TP_008012_20190507_20200829_02_T1_B9.TIF |
\n",
- " \n",
- " type: image/vnd.stac.geotiff; cloud-optimized=true |
\n",
- " \n",
- " \n",
- " title: Cirrus Band (B9) |
\n",
- " \n",
- " \n",
- " description: Collection 2 Level-1 Cirrus Band (B9) Top of Atmosphere Radiance |
\n",
- " \n",
- " \n",
- " roles: ['data'] |
\n",
- " \n",
- " \n",
- " owner: LC08_L1TP_008012_20190507_20200829_02_T1 |
\n",
- " \n",
- " \n",
+ " \n",
+ " \n",
+ " 2\n",
+ " [] 2 items\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
" \n",
- " alternate: {'s3': {'storage:platform': 'AWS', 'storage:requester_pays': True, 'href': 's3://usgs-landsat/collection02/level-1/standard/oli-tirs/2019/008/012/LC08_L1TP_008012_20190507_20200829_02_T1/LC08_L1TP_008012_20190507_20200829_02_T1_B9.TIF'}} |
\n",
+ " \n",
+ " - \n",
+ " 1\n",
+ " 67.13075970832166\n",
+ "
\n",
+ " \n",
" \n",
" \n",
- " \n",
- " file:checksum: 1340db743557b1c240b880587754b1276e53a97d53a98228d0ec21fcda4ad24a6f0476f22cfcb9f7625aff9a7b69c290a78e8785f8e5f2729b6982b9a86f805b4d1b |
\n",
+ "
\n",
+ " \n",
+ " \n",
" \n",
" \n",
- " \n",
- "
\n",
- " \n",
- "
\n",
- "
\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
" \n",
- " \n",
- "\n",
- "\n",
- "
\n",
- "
\n",
- "
\n",
- "
\n",
- " \n",
- " Asset: Thermal Infrared Band 10.9 (B10)
\n",
- "
\n",
- " \n",
- " href: https://landsatlook.usgs.gov/data/collection02/level-1/standard/oli-tirs/2019/008/012/LC08_L1TP_008012_20190507_20200829_02_T1/LC08_L1TP_008012_20190507_20200829_02_T1_B10.TIF |
\n",
- " \n",
- " type: image/vnd.stac.geotiff; cloud-optimized=true |
\n",
- " \n",
- " \n",
- " title: Thermal Infrared Band 10.9 (B10) |
\n",
- " \n",
- " \n",
- " description: Collection 2 Level-1 Thermal Infrared Band 10.9 (B10) Top of Atmosphere Radiance |
\n",
- " \n",
- " \n",
- " roles: ['data', 'temperature'] |
\n",
- " \n",
- " \n",
- " owner: LC08_L1TP_008012_20190507_20200829_02_T1 |
\n",
- " \n",
- " \n",
+ " \n",
+ " \n",
+ " 3\n",
+ " [] 2 items\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
" \n",
- " alternate: {'s3': {'storage:platform': 'AWS', 'storage:requester_pays': True, 'href': 's3://usgs-landsat/collection02/level-1/standard/oli-tirs/2019/008/012/LC08_L1TP_008012_20190507_20200829_02_T1/LC08_L1TP_008012_20190507_20200829_02_T1_B10.TIF'}} |
\n",
+ " \n",
+ " - \n",
+ " 1\n",
+ " 68.7124481452754\n",
+ "
\n",
+ " \n",
" \n",
" \n",
+ "
\n",
+ " \n",
+ " \n",
" \n",
- " file:checksum: 1340817216a8ca7622fc5e30e638b61a132eb653aefb603077d7a405bf618eb87d8540346a647cae65a263f878d868cc478b59a283bca0808315732c5377bb621c04 |
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
" \n",
+ " \n",
+ " \n",
+ " 4\n",
+ " [] 2 items\n",
+ "
\n",
+ " \n",
+ "
\n",
- " \n",
- "
\n",
- "
\n",
" \n",
" \n",
- "\n",
- "\n",
- "
\n",
- "
\n",
- "
\n",
- "
\n",
- " \n",
- " Asset: Thermal Infrared Band 12.0 (B11)
\n",
- "
\n",
- " \n",
- " href: https://landsatlook.usgs.gov/data/collection02/level-1/standard/oli-tirs/2019/008/012/LC08_L1TP_008012_20190507_20200829_02_T1/LC08_L1TP_008012_20190507_20200829_02_T1_B11.TIF |
\n",
- " \n",
- " type: image/vnd.stac.geotiff; cloud-optimized=true |
\n",
- " \n",
- " \n",
- " title: Thermal Infrared Band 12.0 (B11) |
\n",
- " \n",
- " \n",
- " description: Collection 2 Level-1 Thermal Infrared Band 12.0 (B11) Top of Atmosphere Radiance |
\n",
- " \n",
- " \n",
- " roles: ['data', 'temperature'] |
\n",
- " \n",
- " \n",
- " owner: LC08_L1TP_008012_20190507_20200829_02_T1 |
\n",
- " \n",
- " \n",
+ " - \n",
+ " 0\n",
+ " -50.654927278460335\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
" \n",
" \n",
- " eo:bands: [{'name': 'B11', 'common_name': 'lwir12', 'gsd': 100, 'center_wavelength': 12.01}] |
\n",
+ " \n",
+ " - \n",
+ " 1\n",
+ " 69.41548599740054\n",
+ "
\n",
+ " \n",
" \n",
" \n",
- " \n",
- " alternate: {'s3': {'storage:platform': 'AWS', 'storage:requester_pays': True, 'href': 's3://usgs-landsat/collection02/level-1/standard/oli-tirs/2019/008/012/LC08_L1TP_008012_20190507_20200829_02_T1/LC08_L1TP_008012_20190507_20200829_02_T1_B11.TIF'}} |
\n",
+ "
\n",
+ " \n",
+ " \n",
" \n",
" \n",
+ " \n",
+ " \n",
+ " \n",
" \n",
- " file:checksum: 1340822c9200e180feb779a16c57c620cedf316ab2a5f6fed95a86426dd00586b344fb8866e103eda68c201e17e6837ae3f6aaa6c8b0319d1298a79a590c14bd8893 |
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
" \n",
" \n",
+ " \n",
+ " \n",
" \n",
- "
\n",
- " \n",
- "
\n",
- "
\n",
" \n",
- " \n",
- "\n",
- "\n",
- "
\n",
- "
\n",
- "
\n",
- "
\n",
- " \n",
- " Asset: Pixel Quality Assessment Band
\n",
- "
\n",
- " \n",
- " href: https://landsatlook.usgs.gov/data/collection02/level-1/standard/oli-tirs/2019/008/012/LC08_L1TP_008012_20190507_20200829_02_T1/LC08_L1TP_008012_20190507_20200829_02_T1_QA_PIXEL.TIF |
\n",
- " \n",
- " type: image/vnd.stac.geotiff; cloud-optimized=true |
\n",
- " \n",
- " \n",
- " title: Pixel Quality Assessment Band |
\n",
- " \n",
- " \n",
- " description: Collection 2 Level-1 Pixel Quality Assessment Band Top of Atmosphere Radiance |
\n",
- " \n",
- " \n",
- " roles: ['cloud', 'cloud-shadow', 'snow-ice', 'water-mask'] |
\n",
- " \n",
- " \n",
- " owner: LC08_L1TP_008012_20190507_20200829_02_T1 |
\n",
- " \n",
- " \n",
" \n",
" \n",
- " classification:bitfields: [{'name': 'fill', 'description': 'Corresponding pixels in L1 image bands are fill', 'offset': 0, 'length': 1, 'classes': [{'name': 'not_fill', 'description': 'L1 image band pixels are not fill', 'value': 0}, {'name': 'fill', 'description': 'L1 image band pixels are fill', 'value': 1}]}, {'name': 'dilated', 'description': 'Dilated cloud', 'offset': 1, 'length': 1, 'classes': [{'name': 'not_dilated', 'description': 'Cloud is not dilated or no cloud', 'value': 0}, {'name': 'dilated', 'description': 'Cloud dilation', 'value': 1}]}, {'name': 'cirrus', 'description': 'Cirrus mask', 'offset': 2, 'length': 1, 'classes': [{'name': 'not_cirrus', 'description': 'No confidence level set or low confidence cirrus', 'value': 0}, {'name': 'cirrus', 'description': 'High confidence cirrus', 'value': 1}]}, {'name': 'cloud', 'description': 'Cloud mask', 'offset': 3, 'length': 1, 'classes': [{'name': 'not_cloud', 'description': 'Cloud confidence is not high', 'value': 0}, {'name': 'cloud', 'description': 'High confidence cloud', 'value': 1}]}, {'name': 'shadow', 'description': 'Cloud shadow mask', 'offset': 4, 'length': 1, 'classes': [{'name': 'not_shadow', 'description': 'Cloud shadow confidence is not high', 'value': 0}, {'name': 'shadow', 'description': 'High confidence cloud shadow', 'value': 1}]}, {'name': 'snow', 'description': 'Snow/Ice mask', 'offset': 5, 'length': 1, 'classes': [{'name': 'not_snow', 'description': 'Snow/Ice confidence is not high', 'value': 0}, {'name': 'snow', 'description': 'High confidence snow cover', 'value': 1}]}, {'name': 'clear', 'description': 'Cloud or dilated cloud bits set', 'offset': 6, 'length': 1, 'classes': [{'name': 'not_clear', 'description': 'Cloud or dilated cloud bits are set', 'value': 0}, {'name': 'clear', 'description': 'Cloud and dilated cloud bits are not set', 'value': 1}]}, {'name': 'water', 'description': 'Water mask', 'offset': 7, 'length': 1, 'classes': [{'name': 'not_water', 'description': 'Land or cloud', 'value': 0}, {'name': 'water', 'description': 'Water', 'value': 1}]}, {'name': 'cloud_confidence', 'description': 'Cloud confidence levels', 'offset': 8, 'length': 2, 'classes': [{'name': 'not_set', 'description': 'No confidence level set', 'value': 0}, {'name': 'low', 'description': 'Low confidence cloud', 'value': 1}, {'name': 'medium', 'description': 'Medium confidence cloud', 'value': 2}, {'name': 'high', 'description': 'High confidence cloud', 'value': 3}]}, {'name': 'shadow_confidence', 'description': 'Cloud shadow confidence levels', 'offset': 10, 'length': 2, 'classes': [{'name': 'not_set', 'description': 'No confidence level set', 'value': 0}, {'name': 'low', 'description': 'Low confidence cloud shadow', 'value': 1}, {'name': 'reserved', 'description': 'Reserved - value not used', 'value': 2}, {'name': 'high', 'description': 'High confidence cloud shadow', 'value': 3}]}, {'name': 'snow_confidence', 'description': 'Snow/Ice confidence levels', 'offset': 12, 'length': 2, 'classes': [{'name': 'not_set', 'description': 'No confidence level set', 'value': 0}, {'name': 'low', 'description': 'Low confidence snow/ice', 'value': 1}, {'name': 'reserved', 'description': 'Reserved - value not used', 'value': 2}, {'name': 'high', 'description': 'High confidence snow/ice', 'value': 3}]}, {'name': 'cirrus_confidence', 'description': 'Cirrus confidence levels', 'offset': 14, 'length': 2, 'classes': [{'name': 'not_set', 'description': 'No confidence level set', 'value': 0}, {'name': 'low', 'description': 'Low confidence cirrus', 'value': 1}, {'name': 'reserved', 'description': 'Reserved - value not used', 'value': 2}, {'name': 'high', 'description': 'High confidence cirrus', 'value': 3}]}] |
\n",
+ " \n",
+ " \n",
+ " links\n",
+ " [] 4 items\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
" \n",
+ " \n",
+ " \n",
+ " 0
\n",
+ " \n",
" \n",
" \n",
- " alternate: {'s3': {'storage:platform': 'AWS', 'storage:requester_pays': True, 'href': 's3://usgs-landsat/collection02/level-1/standard/oli-tirs/2019/008/012/LC08_L1TP_008012_20190507_20200829_02_T1/LC08_L1TP_008012_20190507_20200829_02_T1_QA_PIXEL.TIF'}} |
\n",
+ " \n",
+ " - \n",
+ " rel\n",
+ " \"self\"\n",
+ "
\n",
+ " \n",
" \n",
" \n",
" \n",
- " file:checksum: 1340041f2f8b0d68ed7a13c1c9f7f600ac1ecb21622e194863afbfcee9e951e9345e84cb4b2a9c018009ac395f0b159ea13464e78621961c3201b45e1bc26ffa807b |
\n",
+ " \n",
+ " - \n",
+ " href\n",
+ " \"https://landsatlook.usgs.gov/stac-server/collections/landsat-c2l1/items/LC08_L1TP_008012_20190507_20200829_02_T1\"\n",
+ "
\n",
+ " \n",
" \n",
" \n",
+ "
\n",
+ " \n",
" \n",
- "
\n",
- " \n",
- "
\n",
- "
\n",
" \n",
- " \n",
- "\n",
- "\n",
- "
\n",
- "
\n",
- "
\n",
- "
\n",
- " \n",
- " Asset: Radiometric Saturation Quality Assessment Band
\n",
- "
\n",
- " \n",
- " href: https://landsatlook.usgs.gov/data/collection02/level-1/standard/oli-tirs/2019/008/012/LC08_L1TP_008012_20190507_20200829_02_T1/LC08_L1TP_008012_20190507_20200829_02_T1_QA_RADSAT.TIF |
\n",
- " \n",
- " type: image/vnd.stac.geotiff; cloud-optimized=true |
\n",
- " \n",
- " \n",
- " title: Radiometric Saturation Quality Assessment Band |
\n",
- " \n",
- " \n",
- " description: Collection 2 Level-1 Radiometric Saturation Quality Assessment Band Top of Atmosphere Radiance |
\n",
- " \n",
- " \n",
- " roles: ['saturation'] |
\n",
- " \n",
- " \n",
- " owner: LC08_L1TP_008012_20190507_20200829_02_T1 |
\n",
- " \n",
- " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
" \n",
" \n",
- " classification:bitfields: [{'name': 'band1', 'description': 'Band 1 radiometric saturation', 'offset': 0, 'length': 1, 'classes': [{'name': 'not_saturated', 'description': 'Band 1 is not saturated', 'value': 0}, {'name': 'saturated', 'description': 'Band 1 is saturated', 'value': 1}]}, {'name': 'band2', 'description': 'Band 2 radiometric saturation', 'offset': 1, 'length': 1, 'classes': [{'name': 'not_saturated', 'description': 'Band 2 is not saturated', 'value': 0}, {'name': 'saturated', 'description': 'Band 2 is saturated', 'value': 1}]}, {'name': 'band3', 'description': 'Band 3 radiometric saturation', 'offset': 2, 'length': 1, 'classes': [{'name': 'not_saturated', 'description': 'Band 3 is not saturated', 'value': 0}, {'name': 'saturated', 'description': 'Band 3 is saturated', 'value': 1}]}, {'name': 'band4', 'description': 'Band 4 radiometric saturation', 'offset': 3, 'length': 1, 'classes': [{'name': 'not_saturated', 'description': 'Band 4 is not saturated', 'value': 0}, {'name': 'saturated', 'description': 'Band 4 is saturated', 'value': 1}]}, {'name': 'band5', 'description': 'Band 5 radiometric saturation', 'offset': 4, 'length': 1, 'classes': [{'name': 'not_saturated', 'description': 'Band 5 is not saturated', 'value': 0}, {'name': 'saturated', 'description': 'Band 5 is saturated', 'value': 1}]}, {'name': 'band6', 'description': 'Band 6 radiometric saturation', 'offset': 5, 'length': 1, 'classes': [{'name': 'not_saturated', 'description': 'Band 6 is not saturated', 'value': 0}, {'name': 'saturated', 'description': 'Band 6 is saturated', 'value': 1}]}, {'name': 'band7', 'description': 'Band 7 radiometric saturation', 'offset': 6, 'length': 1, 'classes': [{'name': 'not_saturated', 'description': 'Band 7 is not saturated', 'value': 0}, {'name': 'saturated', 'description': 'Band 7 is saturated', 'value': 1}]}, {'name': 'unused', 'description': 'Unused bit', 'offset': 7, 'length': 1, 'classes': [{'name': 'unused', 'description': 'Unused bit', 'value': 0}]}, {'name': 'band9', 'description': 'Band 9 radiometric saturation', 'offset': 8, 'length': 1, 'classes': [{'name': 'not_saturated', 'description': 'Band 9 is not saturated', 'value': 0}, {'name': 'saturated', 'description': 'Band 9 is saturated', 'value': 1}]}, {'name': 'unused', 'description': 'Unused bit', 'offset': 9, 'length': 1, 'classes': [{'name': 'unused', 'description': 'Unused bit', 'value': 0}]}, {'name': 'unused', 'description': 'Unused bit', 'offset': 10, 'length': 1, 'classes': [{'name': 'unused', 'description': 'Unused bit', 'value': 0}]}, {'name': 'occlusion', 'description': 'Terrain not visible from sensor due to intervening terrain', 'offset': 11, 'length': 1, 'classes': [{'name': 'not_occluded', 'description': 'Terrain is not occluded', 'value': 0}, {'name': 'occluded', 'description': 'Terrain is occluded', 'value': 1}]}, {'name': 'unused', 'description': 'Unused bit', 'offset': 12, 'length': 1, 'classes': [{'name': 'unused', 'description': 'Unused bit', 'value': 0}]}, {'name': 'unused', 'description': 'Unused bit', 'offset': 13, 'length': 1, 'classes': [{'name': 'unused', 'description': 'Unused bit', 'value': 0}]}, {'name': 'unused', 'description': 'Unused bit', 'offset': 14, 'length': 1, 'classes': [{'name': 'unused', 'description': 'Unused bit', 'value': 0}]}, {'name': 'unused', 'description': 'Unused bit', 'offset': 15, 'length': 1, 'classes': [{'name': 'unused', 'description': 'Unused bit', 'value': 0}]}] |
\n",
- " \n",
+ " \n",
+ " \n",
+ " 1
\n",
+ " \n",
" \n",
" \n",
- " alternate: {'s3': {'storage:platform': 'AWS', 'storage:requester_pays': True, 'href': 's3://usgs-landsat/collection02/level-1/standard/oli-tirs/2019/008/012/LC08_L1TP_008012_20190507_20200829_02_T1/LC08_L1TP_008012_20190507_20200829_02_T1_QA_RADSAT.TIF'}} |
\n",
+ " \n",
+ " - \n",
+ " rel\n",
+ " \"parent\"\n",
+ "
\n",
+ " \n",
" \n",
" \n",
" \n",
- " file:checksum: 134098013147e3c4295eb92a41e5a265c0dc32054a52247cad869ae20b9efd8fdaaf07f653392042d47f90d13d4441d9af34b52f0ec749f3df4e7c5b690afc95449b |
\n",
+ " \n",
+ " - \n",
+ " href\n",
+ " \"https://landsatlook.usgs.gov/stac-server/collections/landsat-c2l1\"\n",
+ "
\n",
+ " \n",
" \n",
" \n",
+ "
\n",
+ " \n",
" \n",
- "
\n",
- " \n",
- "
\n",
- "
\n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
" \n",
" \n",
- "\n",
- "\n",
- "
\n",
- "
\n",
- "
\n",
- "
\n",
- " \n",
- " Asset: Angle Coefficients File
\n",
- "
\n",
- " \n",
- " href: https://landsatlook.usgs.gov/data/collection02/level-1/standard/oli-tirs/2019/008/012/LC08_L1TP_008012_20190507_20200829_02_T1/LC08_L1TP_008012_20190507_20200829_02_T1_ANG.txt |
\n",
- " \n",
- " type: text/plain |
\n",
- " \n",
- " \n",
- " title: Angle Coefficients File |
\n",
- " \n",
- " \n",
- " description: Collection 2 Level-1 Angle Coefficients File (ANG) |
\n",
- " \n",
- " \n",
- " roles: ['metadata'] |
\n",
- " \n",
- " \n",
- " owner: LC08_L1TP_008012_20190507_20200829_02_T1 |
\n",
- " \n",
- " \n",
+ " \n",
+ " 2
\n",
+ " \n",
" \n",
" \n",
- " alternate: {'s3': {'storage:platform': 'AWS', 'storage:requester_pays': True, 'href': 's3://usgs-landsat/collection02/level-1/standard/oli-tirs/2019/008/012/LC08_L1TP_008012_20190507_20200829_02_T1/LC08_L1TP_008012_20190507_20200829_02_T1_ANG.txt'}} |
\n",
+ " \n",
+ " - \n",
+ " rel\n",
+ " \"collection\"\n",
+ "
\n",
+ " \n",
" \n",
" \n",
" \n",
- " file:checksum: 1340ebbc3d9c8a18169934e8bf8475522b908d27fc5a46c7f7b8110edb871fd1fafc489c39e39475a52fddf77417e7dd765850b90329829f5b5b2726a2aacce23ffa |
\n",
+ " \n",
+ " - \n",
+ " href\n",
+ " \"https://landsatlook.usgs.gov/stac-server/collections/landsat-c2l1\"\n",
+ "
\n",
+ " \n",
" \n",
" \n",
+ "
\n",
+ " \n",
" \n",
- "
\n",
- " \n",
- "
\n",
- "
\n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
" \n",
" \n",
- "\n",
- "\n",
- "
\n",
- "
\n",
- "
\n",
- "
\n",
- " \n",
- " Asset: Sensor Azimuth Angle Band
\n",
- "
\n",
- " \n",
- " href: https://landsatlook.usgs.gov/data/collection02/level-1/standard/oli-tirs/2019/008/012/LC08_L1TP_008012_20190507_20200829_02_T1/LC08_L1TP_008012_20190507_20200829_02_T1_VAA.TIF |
\n",
- " \n",
- " type: image/vnd.stac.geotiff; cloud-optimized=true |
\n",
- " \n",
- " \n",
- " title: Sensor Azimuth Angle Band |
\n",
- " \n",
- " \n",
- " description: Collection 2 Level-1 Sensor Azimuth Angle Band |
\n",
- " \n",
- " \n",
- " roles: ['azimuth'] |
\n",
- " \n",
- " \n",
- " owner: LC08_L1TP_008012_20190507_20200829_02_T1 |
\n",
- " \n",
- " \n",
+ " \n",
+ " 3
\n",
+ " \n",
" \n",
" \n",
- " alternate: {'s3': {'storage:platform': 'AWS', 'storage:requester_pays': True, 'href': 's3://usgs-landsat/collection02/level-1/standard/oli-tirs/2019/008/012/LC08_L1TP_008012_20190507_20200829_02_T1/LC08_L1TP_008012_20190507_20200829_02_T1_VAA.TIF'}} |
\n",
+ " \n",
+ " - \n",
+ " rel\n",
+ " \"root\"\n",
+ "
\n",
+ " \n",
" \n",
" \n",
" \n",
- " file:checksum: 1340a2a690a1525b335469f4c705cbceeaaf3e3b9727af3245f00e82042f668502d5221d0e175148603f1f2fce8ea48f11ee41f546c94fcb854679a3ac167d7009dc |
\n",
+ " \n",
+ " - \n",
+ " href\n",
+ " \"https://landsatlook.usgs.gov/stac-server\"\n",
+ "
\n",
+ " \n",
" \n",
" \n",
- " \n",
- "
\n",
- " \n",
- "
\n",
- "
\n",
" \n",
" \n",
- "\n",
- "\n",
- "
\n",
- "
\n",
- "
\n",
- "
\n",
- " \n",
- " Asset: Sensor Zenith Angle Band
\n",
- "
\n",
- " \n",
- " href: https://landsatlook.usgs.gov/data/collection02/level-1/standard/oli-tirs/2019/008/012/LC08_L1TP_008012_20190507_20200829_02_T1/LC08_L1TP_008012_20190507_20200829_02_T1_VZA.TIF |
\n",
- " \n",
- " type: image/vnd.stac.geotiff; cloud-optimized=true |
\n",
- " \n",
- " \n",
- " title: Sensor Zenith Angle Band |
\n",
- " \n",
- " \n",
- " description: Collection 2 Level-1 Sensor Zenith Angle Band |
\n",
- " \n",
- " \n",
- " roles: ['data'] |
\n",
- " \n",
- " \n",
- " owner: LC08_L1TP_008012_20190507_20200829_02_T1 |
\n",
- " \n",
- " \n",
+ " - \n",
+ " type\n",
+ " \"application/json\"\n",
+ "
\n",
+ " \n",
+ " \n",
" \n",
" \n",
- " alternate: {'s3': {'storage:platform': 'AWS', 'storage:requester_pays': True, 'href': 's3://usgs-landsat/collection02/level-1/standard/oli-tirs/2019/008/012/LC08_L1TP_008012_20190507_20200829_02_T1/LC08_L1TP_008012_20190507_20200829_02_T1_VZA.TIF'}} |
\n",
+ " \n",
+ " - \n",
+ " title\n",
+ " \"STAC API\"\n",
+ "
\n",
+ " \n",
" \n",
" \n",
+ " \n",
+ " \n",
+ " \n",
" \n",
- " file:checksum: 134098f9201879522069038cf57430d310f50d7e34cac1c547d3b36c36e85f8b2bccacf7dcee0c6061ea5900c891acc9f901ca8f33f13d3fb826669bb8ed496bcf98 |
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
" \n",
" \n",
- " \n",
- "
\n",
- " \n",
- "
\n",
- "
\n",
" \n",
" \n",
- "\n",
- "\n",
- "
\n",
- "
\n",
- "
\n",
- "
\n",
- " \n",
- " Asset: Solar Azimuth Angle Band
\n",
- "
\n",
- " \n",
- " href: https://landsatlook.usgs.gov/data/collection02/level-1/standard/oli-tirs/2019/008/012/LC08_L1TP_008012_20190507_20200829_02_T1/LC08_L1TP_008012_20190507_20200829_02_T1_SAA.TIF |
\n",
- " \n",
- " type: image/vnd.stac.geotiff; cloud-optimized=true |
\n",
- " \n",
- " \n",
- " title: Solar Azimuth Angle Band |
\n",
- " \n",
+ " \n",
+ " assets
\n",
+ "
\n",
- " \n",
- "
\n",
- "
\n",
+ " \n",
+ " \n",
" \n",
" \n",
- "\n",
- "\n",
- "
\n",
- "
\n",
- "
\n",
- "
\n",
- " \n",
- " Asset: Solar Zenith Angle Band
\n",
- "
\n",
- " \n",
- " href: https://landsatlook.usgs.gov/data/collection02/level-1/standard/oli-tirs/2019/008/012/LC08_L1TP_008012_20190507_20200829_02_T1/LC08_L1TP_008012_20190507_20200829_02_T1_SZA.TIF |
\n",
- " \n",
- " type: image/vnd.stac.geotiff; cloud-optimized=true |
\n",
- " \n",
- " \n",
- " title: Solar Zenith Angle Band |
\n",
- " \n",
- " \n",
- " description: Collection 2 Level-1 Solar Zenith Angle Band |
\n",
- " \n",
- " \n",
- " roles: ['data'] |
\n",
- " \n",
- " \n",
- " owner: LC08_L1TP_008012_20190507_20200829_02_T1 |
\n",
- " \n",
- " \n",
- " \n",
+ " - \n",
+ " file:checksum\n",
+ " \"1340053e4b3a8bd8bbbdd08292c634cd17225767acf798e3226e243f8ff771decd243ae49441b4e81fada81de7cc0dd4120fec0a9ca7d77844a41f0c3c619be4867e\"\n",
+ "
\n",
+ " \n",
" \n",
- " alternate: {'s3': {'storage:platform': 'AWS', 'storage:requester_pays': True, 'href': 's3://usgs-landsat/collection02/level-1/standard/oli-tirs/2019/008/012/LC08_L1TP_008012_20190507_20200829_02_T1/LC08_L1TP_008012_20190507_20200829_02_T1_SZA.TIF'}} |
\n",
+ " \n",
" \n",
+ " \n",
+ " \n",
+ " roles\n",
+ " [] 1 items\n",
+ "
\n",
" \n",
+ " \n",
+ " \n",
+ " \n",
" \n",
" \n",
+ " \n",
+ " \n",
" \n",
- "
\n",
- " \n",
- "
\n",
- "
\n",
+ " \n",
+ " \n",
" \n",
" \n",
- "\n",
- "\n",
- "
\n",
- "
\n",
- "
\n",
- "
\n",
- " \n",
- " Asset: Product Metadata File
\n",
- "
\n",
- " \n",
- " href: https://landsatlook.usgs.gov/data/collection02/level-1/standard/oli-tirs/2019/008/012/LC08_L1TP_008012_20190507_20200829_02_T1/LC08_L1TP_008012_20190507_20200829_02_T1_MTL.txt |
\n",
- " \n",
- " type: text/plain |
\n",
- " \n",
- " \n",
- " title: Product Metadata File |
\n",
- " \n",
- " \n",
- " description: Collection 2 Level-1 Product Metadata File (MTL) |
\n",
- " \n",
- " \n",
- " roles: ['metadata'] |
\n",
- " \n",
- " \n",
- " owner: LC08_L1TP_008012_20190507_20200829_02_T1 |
\n",
- " \n",
- " \n",
+ " \n",
+ " reduced_resolution_browse
\n",
+ " \n",
" \n",
" \n",
- " alternate: {'s3': {'storage:platform': 'AWS', 'storage:requester_pays': True, 'href': 's3://usgs-landsat/collection02/level-1/standard/oli-tirs/2019/008/012/LC08_L1TP_008012_20190507_20200829_02_T1/LC08_L1TP_008012_20190507_20200829_02_T1_MTL.txt'}} |
\n",
+ " \n",
+ " - \n",
+ " href\n",
+ " \"https://landsatlook.usgs.gov/data/collection02/level-1/standard/oli-tirs/2019/008/012/LC08_L1TP_008012_20190507_20200829_02_T1/LC08_L1TP_008012_20190507_20200829_02_T1_thumb_large.jpeg\"\n",
+ "
\n",
+ " \n",
" \n",
" \n",
" \n",
- " file:checksum: 1340577c688e4c66398fca961abb4450d0a5427f4da8992a5f1afe2ea2163513579d626687c263a3344b11cbe6f67857802aed78268394a5ca839f127953d05a7974 |
\n",
+ " \n",
+ " - \n",
+ " type\n",
+ " \"image/jpeg\"\n",
+ "
\n",
+ " \n",
" \n",
" \n",
- " \n",
- "
\n",
- " \n",
- "
\n",
- "
\n",
" \n",
" \n",
- "\n",
- "\n",
- "
\n",
- "
\n",
- "
\n",
- "
\n",
- " \n",
- " Asset: Product Metadata File (xml)
\n",
- "
\n",
- " \n",
- " href: https://landsatlook.usgs.gov/data/collection02/level-1/standard/oli-tirs/2019/008/012/LC08_L1TP_008012_20190507_20200829_02_T1/LC08_L1TP_008012_20190507_20200829_02_T1_MTL.xml |
\n",
- " \n",
- " type: application/xml |
\n",
- " \n",
- " \n",
- " title: Product Metadata File (xml) |
\n",
- " \n",
- " \n",
- " description: Collection 2 Level-1 Product Metadata File (xml) |
\n",
- " \n",
- " \n",
- " roles: ['metadata'] |
\n",
- " \n",
+ " - \n",
+ " title\n",
+ " \"Reduced resolution browse image\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
" \n",
- " owner: LC08_L1TP_008012_20190507_20200829_02_T1 |
\n",
+ " \n",
+ " alternate
\n",
+ " \n",
+ " \n",
+ " \n",
" \n",
+ " \n",
+ " s3
\n",
+ " \n",
+ " \n",
+ " \n",
" \n",
+ " - \n",
+ " storage:platform\n",
+ " \"AWS\"\n",
+ "
\n",
+ " \n",
+ " \n",
" \n",
" \n",
- " alternate: {'s3': {'storage:platform': 'AWS', 'storage:requester_pays': True, 'href': 's3://usgs-landsat/collection02/level-1/standard/oli-tirs/2019/008/012/LC08_L1TP_008012_20190507_20200829_02_T1/LC08_L1TP_008012_20190507_20200829_02_T1_MTL.xml'}} |
\n",
+ " \n",
+ " - \n",
+ " storage:requester_pays\n",
+ " True\n",
+ "
\n",
+ " \n",
" \n",
" \n",
" \n",
- " file:checksum: 134049a8e4edcdab491a9cbf015dce99db646983326b7224662b2b8001654c97cff201d146150a5af42086ecbec6adf2412cb1c6d2f82919f0c2d6d5a435c1c5deee |
\n",
+ " \n",
+ " - \n",
+ " href\n",
+ " \"s3://usgs-landsat/collection02/level-1/standard/oli-tirs/2019/008/012/LC08_L1TP_008012_20190507_20200829_02_T1/LC08_L1TP_008012_20190507_20200829_02_T1_thumb_large.jpeg\"\n",
+ "
\n",
+ " \n",
" \n",
" \n",
+ "
\n",
+ " \n",
" \n",
- "
\n",
- " \n",
- "
\n",
- "
\n",
" \n",
- "
\n",
+ " \n",
+ " \n",
+ " \n",
" \n",
" \n",
- "
\n",
- " \n",
- " Links
\n",
- "
\n",
+ " \n",
" \n",
" \n",
- "\n",
- "\n",
- "
\n",
- "
\n",
- "
\n",
- "
Link:
\n",
- "
\n",
- " rel: self |
\n",
- " href: https://landsatlook.usgs.gov/stac-server/collections/landsat-c2l1/items/LC08_L1TP_008012_20190507_20200829_02_T1 |
\n",
- " \n",
+ " - \n",
+ " file:checksum\n",
+ " \"13404aa048e1e448e97b25303b45daa71514d982c6d88395fbfda905364e6eeed2e925346e5cdd895c520659d699ca0e4f7d7edf37ef355b95158f197e08a8aac0fa\"\n",
+ "
\n",
+ " \n",
" \n",
+ " \n",
" \n",
- "
\n",
+ "
\n",
+ " \n",
+ " roles\n",
+ " [] 1 items\n",
+ "
\n",
+ " \n",
+ " \n",
- "
\n",
" \n",
" \n",
- "\n",
- "\n",
- "
\n",
- "
\n",
- "
\n",
- "
Link:
\n",
- "
\n",
- " rel: parent |
\n",
- " href: https://landsatlook.usgs.gov/stac-server/collections/landsat-c2l1 |
\n",
+ " - \n",
+ " 0\n",
+ " \"overview\"\n",
+ "
\n",
+ " \n",
" \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
" \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
" \n",
- "
\n",
" \n",
- "
\n",
- "
\n",
" \n",
" \n",
- "\n",
- "\n",
- "
\n",
- "
\n",
- "
\n",
- "
Link:
\n",
- "
\n",
- " rel: collection |
\n",
- " href: https://landsatlook.usgs.gov/stac-server/collections/landsat-c2l1 |
\n",
- " \n",
+ " \n",
+ " index
\n",
+ " \n",
+ " \n",
" \n",
+ " \n",
+ " - \n",
+ " href\n",
+ " \"https://landsatlook.usgs.gov/stac-browser/collection02/level-1/standard/oli-tirs/2019/008/012/LC08_L1TP_008012_20190507_20200829_02_T1/LC08_L1TP_008012_20190507_20200829_02_T1\"\n",
+ "
\n",
+ " \n",
" \n",
- "
\n",
" \n",
- "
\n",
- "
\n",
" \n",
" \n",
- "\n",
- "\n",
- "
\n",
- "
\n",
- "
\n",
- "
Link: STAC API
\n",
- "
\n",
- " rel: root |
\n",
- " href: https://landsatlook.usgs.gov/stac-server |
\n",
+ " - \n",
+ " type\n",
+ " \"text/html\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
" \n",
- " type: application/json |
\n",
+ " \n",
+ " - \n",
+ " title\n",
+ " \"HTML index page\"\n",
+ "
\n",
+ " \n",
" \n",
+ " \n",
" \n",
- " title: STAC API |
\n",
+ " \n",
+ " \n",
+ " roles\n",
+ " [] 1 items\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
" \n",
+ " \n",
+ " - \n",
+ " 0\n",
+ " \"metadata\"\n",
+ "
\n",
+ " \n",
" \n",
- "
\n",
" \n",
- "
\n",
- "
\n",
+ " \n",
+ " \n",
+ " \n",
" \n",
- " \n",
+ " \n",
+ " \n",
+ " \n",
" \n",
- " \n",
- "
\n",
- "
\n",
- " \n",
- " \n",
- "\n",
- "\n",
- "
\n",
- "
\n",
- "
\n",
- "
\n",
- " \n",
- " Item: LC08_L1TP_008011_20190507_20200828_02_T1
\n",
- "
\n",
- " \n",
- " id: LC08_L1TP_008011_20190507_20200828_02_T1 |
\n",
- " \n",
- " bbox: [-50.97097968875044, 68.44897504333066, -44.463480823181705, 70.75209635973746] |
\n",
- " \n",
- " \n",
- " \n",
- " datetime: 2019-05-07T14:53:54.970580Z |
\n",
- " \n",
- " eo:cloud_cover: 10.18 |
\n",
- " \n",
- " view:sun_azimuth: 175.87744165 |
\n",
- " \n",
- " view:sun_elevation: 37.19312658 |
\n",
- " \n",
- " platform: LANDSAT_8 |
\n",
- " \n",
- " instruments: ['OLI', 'TIRS'] |
\n",
- " \n",
- " view:off_nadir: 0 |
\n",
- " \n",
- " landsat:cloud_cover_land: 10.3 |
\n",
- " \n",
- " landsat:wrs_type: 2 |
\n",
- " \n",
- " landsat:wrs_path: 008 |
\n",
- " \n",
- " landsat:wrs_row: 011 |
\n",
- " \n",
- " landsat:scene_id: LC80080112019127LGN00 |
\n",
- " \n",
- " landsat:collection_category: T1 |
\n",
- " \n",
- " landsat:collection_number: 02 |
\n",
- " \n",
- " landsat:correction: L1TP |
\n",
- " \n",
- " accuracy:geometric_x_bias: 0 |
\n",
- " \n",
- " accuracy:geometric_y_bias: 0 |
\n",
- " \n",
- " accuracy:geometric_x_stddev: 3.409 |
\n",
- " \n",
- " accuracy:geometric_y_stddev: 4.025 |
\n",
- " \n",
- " accuracy:geometric_rmse: 5.275 |
\n",
- " \n",
- " proj:epsg: 32623 |
\n",
- " \n",
- " proj:shape: [8771, 8741] |
\n",
- " \n",
- " proj:transform: [30, 0, 261285, 0, -30, 7855515] |
\n",
- " \n",
- " created: 2022-06-28T23:23:03.741Z |
\n",
- " \n",
- " updated: 2022-06-28T23:23:03.741Z |
\n",
- " \n",
- " \n",
- " \n",
- "
\n",
" \n",
- " \n",
- " \n",
- " STAC Extensions
\n",
- "
\n",
- " \n",
- " \n",
- " https://landsat.usgs.gov/stac/landsat-extension/v1.1.1/schema.json |
\n",
- " \n",
- " https://stac-extensions.github.io/view/v1.0.0/schema.json |
\n",
- " \n",
- " https://stac-extensions.github.io/projection/v1.0.0/schema.json |
\n",
- " \n",
- " https://stac-extensions.github.io/eo/v1.0.0/schema.json |
\n",
- " \n",
- " https://stac-extensions.github.io/alternate-assets/v1.1.0/schema.json |
\n",
- " \n",
- " https://stac-extensions.github.io/storage/v1.0.0/schema.json |
\n",
- " \n",
- " https://stac-extensions.github.io/file/v1.0.0/schema.json |
\n",
- " \n",
- " https://stac-extensions.github.io/accuracy/v1.0.0/schema.json |
\n",
+ " \n",
+ " \n",
" \n",
- " https://stac-extensions.github.io/classification/v1.0.0/schema.json |
\n",
+ " \n",
+ " MTL.json
\n",
+ " \n",
+ " \n",
+ " \n",
" \n",
- "
\n",
- " \n",
+ " - \n",
+ " href\n",
+ " \"https://landsatlook.usgs.gov/data/collection02/level-1/standard/oli-tirs/2019/008/012/LC08_L1TP_008012_20190507_20200829_02_T1/LC08_L1TP_008012_20190507_20200829_02_T1_MTL.json\"\n",
+ "
\n",
" \n",
" \n",
- " \n",
- " \n",
- " Assets
\n",
- "
\n",
+ " \n",
" \n",
" \n",
- "\n",
- "\n",
- "
\n",
- "
\n",
- "
\n",
- "
\n",
- " \n",
- " Asset: Thumbnail image
\n",
- "
\n",
- " \n",
- " href: https://landsatlook.usgs.gov/data/collection02/level-1/standard/oli-tirs/2019/008/011/LC08_L1TP_008011_20190507_20200828_02_T1/LC08_L1TP_008011_20190507_20200828_02_T1_thumb_small.jpeg |
\n",
- " \n",
- " type: image/jpeg |
\n",
- " \n",
- " \n",
- " title: Thumbnail image |
\n",
- " \n",
- " \n",
+ " - \n",
+ " type\n",
+ " \"application/json\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
" \n",
- " roles: ['thumbnail'] |
\n",
+ " - \n",
+ " title\n",
+ " \"Product Metadata File (json)\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
" \n",
+ " - \n",
+ " description\n",
+ " \"Collection 2 Level-1 Product Metadata File (json)\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
" \n",
- " owner: LC08_L1TP_008011_20190507_20200828_02_T1 |
\n",
+ " \n",
+ " alternate
\n",
+ " \n",
+ " \n",
+ " \n",
" \n",
+ " \n",
+ " s3
\n",
+ " \n",
+ " \n",
+ " \n",
" \n",
+ " - \n",
+ " storage:platform\n",
+ " \"AWS\"\n",
+ "
\n",
+ " \n",
+ " \n",
" \n",
" \n",
- " alternate: {'s3': {'storage:platform': 'AWS', 'storage:requester_pays': True, 'href': 's3://usgs-landsat/collection02/level-1/standard/oli-tirs/2019/008/011/LC08_L1TP_008011_20190507_20200828_02_T1/LC08_L1TP_008011_20190507_20200828_02_T1_thumb_small.jpeg'}} |
\n",
+ " \n",
+ " - \n",
+ " storage:requester_pays\n",
+ " True\n",
+ "
\n",
+ " \n",
" \n",
" \n",
" \n",
- " file:checksum: 1340f87154cc5704dd8859a463daab579507540604454354feaaf7a7f5a724e9756a667edc4a966777f166ff55d46506f30a53f64bfc05aeca656f7f8eed74686ed6 |
\n",
+ " \n",
+ " - \n",
+ " href\n",
+ " \"s3://usgs-landsat/collection02/level-1/standard/oli-tirs/2019/008/012/LC08_L1TP_008012_20190507_20200829_02_T1/LC08_L1TP_008012_20190507_20200829_02_T1_MTL.json\"\n",
+ "
\n",
+ " \n",
" \n",
" \n",
+ "
\n",
+ " \n",
" \n",
- "
\n",
- " \n",
- "
\n",
- "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
" \n",
" \n",
- "\n",
- "\n",
- "
\n",
- "
\n",
- "
\n",
- "
\n",
- " \n",
- " Asset: Reduced resolution browse image
\n",
- "
\n",
- " \n",
- " href: https://landsatlook.usgs.gov/data/collection02/level-1/standard/oli-tirs/2019/008/011/LC08_L1TP_008011_20190507_20200828_02_T1/LC08_L1TP_008011_20190507_20200828_02_T1_thumb_large.jpeg |
\n",
- " \n",
- " type: image/jpeg |
\n",
- " \n",
- " \n",
- " title: Reduced resolution browse image |
\n",
- " \n",
+ " - \n",
+ " file:checksum\n",
+ " \"1340cdeb22284cc5c6d705c1ae7b17cc4138d4bbf77ab9dc7e0a51276fa19c63ac908e71251ce7e60408ec9dc278255a4e5fb5543d0f3194cfebc5ad7b0c1c063d27\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " roles\n",
+ " [] 1 items\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
" \n",
+ " - \n",
+ " 0\n",
+ " \"metadata\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
" \n",
- " roles: ['overview'] |
\n",
+ " \n",
+ " coastal
\n",
+ " \n",
+ " \n",
+ " \n",
" \n",
+ " - \n",
+ " href\n",
+ " \"https://landsatlook.usgs.gov/data/collection02/level-1/standard/oli-tirs/2019/008/012/LC08_L1TP_008012_20190507_20200829_02_T1/LC08_L1TP_008012_20190507_20200829_02_T1_B1.TIF\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
" \n",
- " owner: LC08_L1TP_008011_20190507_20200828_02_T1 |
\n",
+ " - \n",
+ " type\n",
+ " \"image/vnd.stac.geotiff; cloud-optimized=true\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
" \n",
+ " - \n",
+ " title\n",
+ " \"Coastal/Aerosol Band (B1)\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
" \n",
+ " - \n",
+ " description\n",
+ " \"Collection 2 Level-1 Coastal/Aerosol Band (B1) Top of Atmosphere Radiance\"\n",
+ "
\n",
+ " \n",
+ " \n",
" \n",
" \n",
- " alternate: {'s3': {'storage:platform': 'AWS', 'storage:requester_pays': True, 'href': 's3://usgs-landsat/collection02/level-1/standard/oli-tirs/2019/008/011/LC08_L1TP_008011_20190507_20200828_02_T1/LC08_L1TP_008011_20190507_20200828_02_T1_thumb_large.jpeg'}} |
\n",
+ " \n",
+ " \n",
+ " eo:bands\n",
+ " [] 1 items\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
" \n",
+ " \n",
+ " \n",
+ " 0
\n",
+ "
\n",
- " \n",
- "
\n",
- "
\n",
+ " \n",
+ " \n",
" \n",
" \n",
- "\n",
- "\n",
- "
\n",
- "
\n",
- "
\n",
- "
\n",
- " \n",
- " Asset: HTML index page
\n",
- "
\n",
- " \n",
- " href: https://landsatlook.usgs.gov/stac-browser/collection02/level-1/standard/oli-tirs/2019/008/011/LC08_L1TP_008011_20190507_20200828_02_T1/LC08_L1TP_008011_20190507_20200828_02_T1 |
\n",
- " \n",
- " type: text/html |
\n",
- " \n",
- " \n",
- " title: HTML index page |
\n",
- " \n",
- " \n",
- " \n",
- " roles: ['metadata'] |
\n",
- " \n",
- " \n",
- " owner: LC08_L1TP_008011_20190507_20200828_02_T1 |
\n",
- " \n",
- " \n",
- "
\n",
- " \n",
- "
\n",
- "
\n",
+ " - \n",
+ " gsd\n",
+ " 30\n",
+ "
\n",
+ " \n",
" \n",
- " \n",
- "\n",
- "\n",
- "
\n",
- "
\n",
- "
\n",
- "
\n",
- " \n",
- " Asset: Product Metadata File (json)
\n",
- "
\n",
- " \n",
- " href: https://landsatlook.usgs.gov/data/collection02/level-1/standard/oli-tirs/2019/008/011/LC08_L1TP_008011_20190507_20200828_02_T1/LC08_L1TP_008011_20190507_20200828_02_T1_MTL.json |
\n",
- " \n",
- " type: application/json |
\n",
- " \n",
- " \n",
- " title: Product Metadata File (json) |
\n",
- " \n",
- " \n",
- " description: Collection 2 Level-1 Product Metadata File (json) |
\n",
- " \n",
- " \n",
- " roles: ['metadata'] |
\n",
- " \n",
- " \n",
- " owner: LC08_L1TP_008011_20190507_20200828_02_T1 |
\n",
- " \n",
- " \n",
" \n",
" \n",
- " alternate: {'s3': {'storage:platform': 'AWS', 'storage:requester_pays': True, 'href': 's3://usgs-landsat/collection02/level-1/standard/oli-tirs/2019/008/011/LC08_L1TP_008011_20190507_20200828_02_T1/LC08_L1TP_008011_20190507_20200828_02_T1_MTL.json'}} |
\n",
+ " \n",
+ " - \n",
+ " center_wavelength\n",
+ " 0.44\n",
+ "
\n",
+ " \n",
" \n",
" \n",
+ " \n",
+ " \n",
+ " \n",
" \n",
- " file:checksum: 1340f37f1acff50fc0f76d079ea5da64b87bde30b846bdaddfc22bf8d3ecb358b91c149ba138c4013699bf9a0c008c3098c2d3e0e07622aeaf5a14449ae570867bf1 |
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
" \n",
" \n",
- " \n",
- "
\n",
- " \n",
- "
\n",
- "
\n",
" \n",
" \n",
- "\n",
- "\n",
- "
\n",
- "
\n",
- "
\n",
- "
\n",
- " \n",
- " Asset: Coastal/Aerosol Band (B1)
\n",
- "
\n",
- " \n",
- " href: https://landsatlook.usgs.gov/data/collection02/level-1/standard/oli-tirs/2019/008/011/LC08_L1TP_008011_20190507_20200828_02_T1/LC08_L1TP_008011_20190507_20200828_02_T1_B1.TIF |
\n",
- " \n",
- " type: image/vnd.stac.geotiff; cloud-optimized=true |
\n",
- " \n",
- " \n",
- " title: Coastal/Aerosol Band (B1) |
\n",
- " \n",
- " \n",
- " description: Collection 2 Level-1 Coastal/Aerosol Band (B1) Top of Atmosphere Radiance |
\n",
- " \n",
- " \n",
- " roles: ['data'] |
\n",
- " \n",
- " \n",
- " owner: LC08_L1TP_008011_20190507_20200828_02_T1 |
\n",
- " \n",
+ " \n",
+ " alternate
\n",
+ " \n",
+ " \n",
+ " \n",
" \n",
+ " \n",
+ " s3
\n",
+ " \n",
" \n",
" \n",
- " eo:bands: [{'name': 'B1', 'common_name': 'coastal', 'gsd': 30, 'center_wavelength': 0.44}] |
\n",
+ " \n",
+ " - \n",
+ " storage:platform\n",
+ " \"AWS\"\n",
+ "
\n",
+ " \n",
" \n",
" \n",
" \n",
- " alternate: {'s3': {'storage:platform': 'AWS', 'storage:requester_pays': True, 'href': 's3://usgs-landsat/collection02/level-1/standard/oli-tirs/2019/008/011/LC08_L1TP_008011_20190507_20200828_02_T1/LC08_L1TP_008011_20190507_20200828_02_T1_B1.TIF'}} |
\n",
+ " \n",
+ " - \n",
+ " storage:requester_pays\n",
+ " True\n",
+ "
\n",
+ " \n",
" \n",
" \n",
" \n",
- " file:checksum: 1340dcff4cf50bbf402d7cabd6b13ff5c83b031ab339ce61995ae0573fe649edd11cdc852eea1fbb2fbf534d1d69b8a8738b259d6f4daa984f664305cf983832d3b2 |
\n",
+ " \n",
+ " - \n",
+ " href\n",
+ " \"s3://usgs-landsat/collection02/level-1/standard/oli-tirs/2019/008/012/LC08_L1TP_008012_20190507_20200829_02_T1/LC08_L1TP_008012_20190507_20200829_02_T1_B1.TIF\"\n",
+ "
\n",
+ " \n",
" \n",
" \n",
+ "
\n",
+ " \n",
" \n",
- "
\n",
- " \n",
- "
\n",
- "
\n",
" \n",
- " \n",
- "\n",
- "\n",
- "
\n",
- "
\n",
- "
\n",
- "
\n",
- " \n",
- " Asset: Blue Band (B2)
\n",
- "
\n",
- " \n",
- " href: https://landsatlook.usgs.gov/data/collection02/level-1/standard/oli-tirs/2019/008/011/LC08_L1TP_008011_20190507_20200828_02_T1/LC08_L1TP_008011_20190507_20200828_02_T1_B2.TIF |
\n",
- " \n",
- " type: image/vnd.stac.geotiff; cloud-optimized=true |
\n",
- " \n",
- " \n",
- " title: Blue Band (B2) |
\n",
- " \n",
- " \n",
- " description: Collection 2 Level-1 Blue Band (B2) Top of Atmosphere Radiance |
\n",
- " \n",
- " \n",
- " roles: ['data'] |
\n",
- " \n",
- " \n",
- " owner: LC08_L1TP_008011_20190507_20200828_02_T1 |
\n",
- " \n",
- " \n",
" \n",
- " \n",
- " eo:bands: [{'name': 'B2', 'common_name': 'blue', 'gsd': 30, 'center_wavelength': 0.48}] |
\n",
+ " \n",
+ " \n",
+ " \n",
" \n",
" \n",
" \n",
- " alternate: {'s3': {'storage:platform': 'AWS', 'storage:requester_pays': True, 'href': 's3://usgs-landsat/collection02/level-1/standard/oli-tirs/2019/008/011/LC08_L1TP_008011_20190507_20200828_02_T1/LC08_L1TP_008011_20190507_20200828_02_T1_B2.TIF'}} |
\n",
+ " \n",
+ " - \n",
+ " file:checksum\n",
+ " \"1340c03174043d3c94303da08abc2fd78f6e45526c5831056cd1502bdecf514daf079fc05ab02bdd383b7c3e4da6964e1394a5ca4a584eada3cd6909d7c53724ebe7\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
" \n",
+ " \n",
+ " \n",
+ " roles\n",
+ " [] 1 items\n",
+ "
\n",
" \n",
+ " \n",
+ " \n",
+ " \n",
" \n",
" \n",
+ " \n",
+ " \n",
" \n",
- "
\n",
- " \n",
- "
\n",
- "
\n",
+ " \n",
+ " \n",
" \n",
" \n",
- "\n",
- "\n",
- "
\n",
- "
\n",
- "
\n",
- "
\n",
- " \n",
- " Asset: Green Band (B3)
\n",
- "
\n",
- " \n",
- " href: https://landsatlook.usgs.gov/data/collection02/level-1/standard/oli-tirs/2019/008/011/LC08_L1TP_008011_20190507_20200828_02_T1/LC08_L1TP_008011_20190507_20200828_02_T1_B3.TIF |
\n",
- " \n",
- " type: image/vnd.stac.geotiff; cloud-optimized=true |
\n",
- " \n",
- " \n",
- " title: Green Band (B3) |
\n",
- " \n",
- " \n",
- " description: Collection 2 Level-1 Green Band (B3) Top of Atmosphere Radiance |
\n",
- " \n",
- " \n",
- " roles: ['data'] |
\n",
- " \n",
- " \n",
- " owner: LC08_L1TP_008011_20190507_20200828_02_T1 |
\n",
- " \n",
- " \n",
+ " \n",
+ " blue
\n",
+ " \n",
" \n",
" \n",
- " eo:bands: [{'name': 'B3', 'common_name': 'green', 'gsd': 30, 'center_wavelength': 0.56}] |
\n",
+ " \n",
+ " - \n",
+ " href\n",
+ " \"https://landsatlook.usgs.gov/data/collection02/level-1/standard/oli-tirs/2019/008/012/LC08_L1TP_008012_20190507_20200829_02_T1/LC08_L1TP_008012_20190507_20200829_02_T1_B2.TIF\"\n",
+ "
\n",
+ " \n",
" \n",
" \n",
" \n",
- " alternate: {'s3': {'storage:platform': 'AWS', 'storage:requester_pays': True, 'href': 's3://usgs-landsat/collection02/level-1/standard/oli-tirs/2019/008/011/LC08_L1TP_008011_20190507_20200828_02_T1/LC08_L1TP_008011_20190507_20200828_02_T1_B3.TIF'}} |
\n",
+ " \n",
+ " - \n",
+ " type\n",
+ " \"image/vnd.stac.geotiff; cloud-optimized=true\"\n",
+ "
\n",
+ " \n",
" \n",
" \n",
" \n",
- " file:checksum: 1340390ee928fcce762ed559dd7624dac340cb11f494a4a3eaf8a410e07c8dc2efcbc8095b7b8a7753b77cd3ac484a1dc4a820412070da2fbbb26c4a8c84da65c740 |
\n",
+ " \n",
+ " - \n",
+ " title\n",
+ " \"Blue Band (B2)\"\n",
+ "
\n",
+ " \n",
" \n",
" \n",
- " \n",
- "
\n",
- " \n",
- "
\n",
- "
\n",
" \n",
" \n",
- "\n",
- "\n",
- "
\n",
- "
\n",
- "
\n",
- "
\n",
- " \n",
- " Asset: Red Band (B4)
\n",
- "
\n",
- " \n",
- " href: https://landsatlook.usgs.gov/data/collection02/level-1/standard/oli-tirs/2019/008/011/LC08_L1TP_008011_20190507_20200828_02_T1/LC08_L1TP_008011_20190507_20200828_02_T1_B4.TIF |
\n",
- " \n",
- " type: image/vnd.stac.geotiff; cloud-optimized=true |
\n",
- " \n",
- " \n",
- " title: Red Band (B4) |
\n",
- " \n",
- " \n",
- " description: Collection 2 Level-1 Red Band (B4) Top of Atmosphere Radiance |
\n",
- " \n",
- " \n",
- " roles: ['data'] |
\n",
- " \n",
- " \n",
- " owner: LC08_L1TP_008011_20190507_20200828_02_T1 |
\n",
+ " - \n",
+ " description\n",
+ " \"Collection 2 Level-1 Blue Band (B2) Top of Atmosphere Radiance\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " eo:bands\n",
+ " [] 1 items\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
" \n",
+ " \n",
+ " 0
\n",
+ " \n",
+ " \n",
+ " \n",
" \n",
+ " - \n",
+ " name\n",
+ " \"B2\"\n",
+ "
\n",
+ " \n",
+ " \n",
" \n",
" \n",
- " eo:bands: [{'name': 'B4', 'common_name': 'red', 'gsd': 30, 'center_wavelength': 0.66}] |
\n",
+ " \n",
+ " - \n",
+ " common_name\n",
+ " \"blue\"\n",
+ "
\n",
+ " \n",
" \n",
" \n",
" \n",
- " alternate: {'s3': {'storage:platform': 'AWS', 'storage:requester_pays': True, 'href': 's3://usgs-landsat/collection02/level-1/standard/oli-tirs/2019/008/011/LC08_L1TP_008011_20190507_20200828_02_T1/LC08_L1TP_008011_20190507_20200828_02_T1_B4.TIF'}} |
\n",
+ " \n",
+ " - \n",
+ " gsd\n",
+ " 30\n",
+ "
\n",
+ " \n",
" \n",
" \n",
" \n",
- " file:checksum: 13407ee4ce734a8f1253e88a6ee07115ce1259780593a497277fabea9754224709f9a18f6e24c6f797b5087e139d88eb3623906f78ff346b0aab1ecec9dd74bf5e64 |
\n",
+ " \n",
+ " - \n",
+ " center_wavelength\n",
+ " 0.48\n",
+ "
\n",
+ " \n",
" \n",
" \n",
+ "
\n",
+ " \n",
" \n",
- "
\n",
- " \n",
- "
\n",
- "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
" \n",
" \n",
- "\n",
- "
\n",
- "
\n",
- "
\n",
- "
\n",
- "
\n",
- " \n",
- " Asset: Near Infrared Band 0.8 (B5)
\n",
- "
\n",
- " \n",
- " href: https://landsatlook.usgs.gov/data/collection02/level-1/standard/oli-tirs/2019/008/011/LC08_L1TP_008011_20190507_20200828_02_T1/LC08_L1TP_008011_20190507_20200828_02_T1_B5.TIF |
\n",
- " \n",
- " type: image/vnd.stac.geotiff; cloud-optimized=true |
\n",
- " \n",
- " \n",
- " title: Near Infrared Band 0.8 (B5) |
\n",
- " \n",
- " \n",
- " description: Collection 2 Level-1 Near Infrared Band 0.8 (B5) Top of Atmosphere Radiance |
\n",
- " \n",
- " \n",
- " roles: ['data', 'reflectance'] |
\n",
- " \n",
- " \n",
- " owner: LC08_L1TP_008011_20190507_20200828_02_T1 |
\n",
- " \n",
+ " \n",
+ " alternate
\n",
+ " \n",
+ " \n",
+ " \n",
" \n",
+ " \n",
+ " s3
\n",
+ " \n",
" \n",
" \n",
- " eo:bands: [{'name': 'B5', 'common_name': 'nir08', 'gsd': 30, 'center_wavelength': 0.87}] |
\n",
+ " \n",
+ " - \n",
+ " storage:platform\n",
+ " \"AWS\"\n",
+ "
\n",
+ " \n",
" \n",
" \n",
" \n",
- " alternate: {'s3': {'storage:platform': 'AWS', 'storage:requester_pays': True, 'href': 's3://usgs-landsat/collection02/level-1/standard/oli-tirs/2019/008/011/LC08_L1TP_008011_20190507_20200828_02_T1/LC08_L1TP_008011_20190507_20200828_02_T1_B5.TIF'}} |
\n",
+ " \n",
+ " - \n",
+ " storage:requester_pays\n",
+ " True\n",
+ "
\n",
+ " \n",
" \n",
" \n",
" \n",
- " file:checksum: 13400a93071bb947a66627d3a081edd3d61120eaf1a7ca8ae05246747361c893865456f9632ffa9b71577b7b3be98dcf0126bcc265cfc680869b34a66d670c35012f |
\n",
+ " \n",
+ " - \n",
+ " href\n",
+ " \"s3://usgs-landsat/collection02/level-1/standard/oli-tirs/2019/008/012/LC08_L1TP_008012_20190507_20200829_02_T1/LC08_L1TP_008012_20190507_20200829_02_T1_B2.TIF\"\n",
+ "
\n",
+ " \n",
" \n",
" \n",
+ "
\n",
+ " \n",
" \n",
- "
\n",
- " \n",
- "
\n",
- "
\n",
" \n",
- " \n",
- "\n",
- "
\n",
- "
\n",
- "
\n",
- "
\n",
- "
\n",
- " \n",
- " Asset: Short-wave Infrared Band 1.6 (B6)
\n",
- "
\n",
- " \n",
- " href: https://landsatlook.usgs.gov/data/collection02/level-1/standard/oli-tirs/2019/008/011/LC08_L1TP_008011_20190507_20200828_02_T1/LC08_L1TP_008011_20190507_20200828_02_T1_B6.TIF |
\n",
- " \n",
- " type: image/vnd.stac.geotiff; cloud-optimized=true |
\n",
- " \n",
- " \n",
- " title: Short-wave Infrared Band 1.6 (B6) |
\n",
- " \n",
- " \n",
- " description: Collection 2 Level-1 Short-wave Infrared Band 1.6 (B6) Top of Atmosphere Radiance |
\n",
- " \n",
- " \n",
- " roles: ['data', 'reflectance'] |
\n",
- " \n",
- " \n",
- " owner: LC08_L1TP_008011_20190507_20200828_02_T1 |
\n",
- " \n",
- " \n",
" \n",
- " \n",
- " eo:bands: [{'name': 'B6', 'common_name': 'swir16', 'gsd': 30, 'center_wavelength': 1.61}] |
\n",
+ " \n",
+ " \n",
+ " \n",
" \n",
" \n",
" \n",
- " alternate: {'s3': {'storage:platform': 'AWS', 'storage:requester_pays': True, 'href': 's3://usgs-landsat/collection02/level-1/standard/oli-tirs/2019/008/011/LC08_L1TP_008011_20190507_20200828_02_T1/LC08_L1TP_008011_20190507_20200828_02_T1_B6.TIF'}} |
\n",
+ " \n",
+ " - \n",
+ " file:checksum\n",
+ " \"1340eda74ede96fa71b87679644ee9addd5ea19d4df78a20c8f000c3031c449f3c6f172c9e78b0e3ee291d3af574360ee260d628b07932ba23cbb7fa674b55ef568b\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
" \n",
+ " \n",
+ " \n",
+ " roles\n",
+ " [] 1 items\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
" \n",
" \n",
+ " \n",
+ " \n",
" \n",
- "
\n",
- " \n",
- "
\n",
- "
\n",
+ " \n",
+ " \n",
" \n",
" \n",
- "\n",
- "
\n",
- "
\n",
- "
\n",
- "
\n",
- "
\n",
- " \n",
- " Asset: Short-wave Infrared Band 2.2 (B7)
\n",
- "
\n",
- " \n",
- " href: https://landsatlook.usgs.gov/data/collection02/level-1/standard/oli-tirs/2019/008/011/LC08_L1TP_008011_20190507_20200828_02_T1/LC08_L1TP_008011_20190507_20200828_02_T1_B7.TIF |
\n",
- " \n",
- " type: image/vnd.stac.geotiff; cloud-optimized=true |
\n",
- " \n",
- " \n",
- " title: Short-wave Infrared Band 2.2 (B7) |
\n",
- " \n",
- " \n",
- " description: Collection 2 Level-1 Short-wave Infrared Band 2.2 (B7) Top of Atmosphere Radiance |
\n",
- " \n",
- " \n",
- " roles: ['data', 'reflectance'] |
\n",
- " \n",
- " \n",
- " owner: LC08_L1TP_008011_20190507_20200828_02_T1 |
\n",
- " \n",
- " \n",
+ " \n",
+ " green
\n",
+ " \n",
" \n",
" \n",
- " eo:bands: [{'name': 'B7', 'common_name': 'swir22', 'gsd': 30, 'center_wavelength': 2.2}] |
\n",
+ " \n",
+ " - \n",
+ " href\n",
+ " \"https://landsatlook.usgs.gov/data/collection02/level-1/standard/oli-tirs/2019/008/012/LC08_L1TP_008012_20190507_20200829_02_T1/LC08_L1TP_008012_20190507_20200829_02_T1_B3.TIF\"\n",
+ "
\n",
+ " \n",
" \n",
" \n",
" \n",
- " alternate: {'s3': {'storage:platform': 'AWS', 'storage:requester_pays': True, 'href': 's3://usgs-landsat/collection02/level-1/standard/oli-tirs/2019/008/011/LC08_L1TP_008011_20190507_20200828_02_T1/LC08_L1TP_008011_20190507_20200828_02_T1_B7.TIF'}} |
\n",
+ " \n",
+ " - \n",
+ " type\n",
+ " \"image/vnd.stac.geotiff; cloud-optimized=true\"\n",
+ "
\n",
+ " \n",
" \n",
" \n",
" \n",
- " file:checksum: 1340f5a2ec02ecabfbbe1e5c146d0a024a99ba3fe858e7d7f93294a51ee4c6b87109cdad2c59b4e6b7a4f5e42e634a8fef078fb8754ee4cd918c9b4e906bee65a550 |
\n",
+ " \n",
+ " - \n",
+ " title\n",
+ " \"Green Band (B3)\"\n",
+ "
\n",
+ " \n",
" \n",
" \n",
- " \n",
- "
\n",
- " \n",
- "
\n",
- "
\n",
" \n",
" \n",
- "\n",
- "
\n",
- "
\n",
- "
\n",
- "
\n",
- "
\n",
- " \n",
- " Asset: Panchromatic Band (B8)
\n",
- "
\n",
- " \n",
- " href: https://landsatlook.usgs.gov/data/collection02/level-1/standard/oli-tirs/2019/008/011/LC08_L1TP_008011_20190507_20200828_02_T1/LC08_L1TP_008011_20190507_20200828_02_T1_B8.TIF |
\n",
- " \n",
- " type: image/vnd.stac.geotiff; cloud-optimized=true |
\n",
- " \n",
- " \n",
- " title: Panchromatic Band (B8) |
\n",
- " \n",
- " \n",
- " description: Collection 2 Level-1 Panchromatic Band (B8) Top of Atmosphere Radiance |
\n",
- " \n",
- " \n",
- " roles: ['data'] |
\n",
- " \n",
- " \n",
- " owner: LC08_L1TP_008011_20190507_20200828_02_T1 |
\n",
- " \n",
- " \n",
+ " - \n",
+ " description\n",
+ " \"Collection 2 Level-1 Green Band (B3) Top of Atmosphere Radiance\"\n",
+ "
\n",
+ " \n",
+ " \n",
" \n",
" \n",
- " eo:bands: [{'name': 'B8', 'common_name': 'pan', 'gsd': 15, 'center_wavelength': 0.59}] |
\n",
+ " \n",
+ " \n",
+ " eo:bands\n",
+ " [] 1 items\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
" \n",
+ " \n",
+ " \n",
+ " 0
\n",
+ " \n",
" \n",
" \n",
- " alternate: {'s3': {'storage:platform': 'AWS', 'storage:requester_pays': True, 'href': 's3://usgs-landsat/collection02/level-1/standard/oli-tirs/2019/008/011/LC08_L1TP_008011_20190507_20200828_02_T1/LC08_L1TP_008011_20190507_20200828_02_T1_B8.TIF'}} |
\n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"B3\"\n",
+ "
\n",
+ " \n",
" \n",
" \n",
" \n",
- " file:checksum: 1340f2a81f05dabed172f1609c89e9ea351f2c756f65fdbd51fb6dd00098d8c7d5663d7d57609a2129c5b3fcf25147ba583738fb518e83834b011f2ffb0008de3ea9 |
\n",
+ " \n",
+ " - \n",
+ " common_name\n",
+ " \"green\"\n",
+ "
\n",
+ " \n",
" \n",
" \n",
" \n",
- " proj:shape: [17541, 17481] |
\n",
+ " \n",
+ " - \n",
+ " gsd\n",
+ " 30\n",
+ "
\n",
+ " \n",
" \n",
" \n",
" \n",
- " proj:transform: [15, 0, 261292.5, 0, -15, 7855507.5] |
\n",
+ " \n",
+ " - \n",
+ " center_wavelength\n",
+ " 0.56\n",
+ "
\n",
+ " \n",
" \n",
" \n",
+ "
\n",
+ " \n",
" \n",
- "
\n",
- " \n",
- "
\n",
- "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
" \n",
" \n",
- "\n",
- "
\n",
- "
\n",
- "
\n",
- "
\n",
- "
\n",
- " \n",
- " Asset: Cirrus Band (B9)
\n",
- "
\n",
- " \n",
- " href: https://landsatlook.usgs.gov/data/collection02/level-1/standard/oli-tirs/2019/008/011/LC08_L1TP_008011_20190507_20200828_02_T1/LC08_L1TP_008011_20190507_20200828_02_T1_B9.TIF |
\n",
- " \n",
- " type: image/vnd.stac.geotiff; cloud-optimized=true |
\n",
- " \n",
- " \n",
- " title: Cirrus Band (B9) |
\n",
- " \n",
- " \n",
- " description: Collection 2 Level-1 Cirrus Band (B9) Top of Atmosphere Radiance |
\n",
- " \n",
- " \n",
- " roles: ['data'] |
\n",
- " \n",
- " \n",
- " owner: LC08_L1TP_008011_20190507_20200828_02_T1 |
\n",
- " \n",
+ " \n",
+ " alternate
\n",
+ " \n",
+ " \n",
+ " \n",
" \n",
+ " \n",
+ " s3
\n",
+ " \n",
" \n",
" \n",
- " eo:bands: [{'name': 'B9', 'common_name': 'cirrus', 'gsd': 30, 'center_wavelength': 1.37}] |
\n",
+ " \n",
+ " - \n",
+ " storage:platform\n",
+ " \"AWS\"\n",
+ "
\n",
+ " \n",
" \n",
" \n",
" \n",
- " alternate: {'s3': {'storage:platform': 'AWS', 'storage:requester_pays': True, 'href': 's3://usgs-landsat/collection02/level-1/standard/oli-tirs/2019/008/011/LC08_L1TP_008011_20190507_20200828_02_T1/LC08_L1TP_008011_20190507_20200828_02_T1_B9.TIF'}} |
\n",
+ " \n",
+ " - \n",
+ " storage:requester_pays\n",
+ " True\n",
+ "
\n",
+ " \n",
" \n",
" \n",
" \n",
- " file:checksum: 13401223a49db734e01483777ca9330c7795753d4f974f237db1b661e371fd64e1eb4ca98f485729b637605c18286f0bd5be20d067690e5484cc8e4d102dd77ba014 |
\n",
+ " \n",
+ " - \n",
+ " href\n",
+ " \"s3://usgs-landsat/collection02/level-1/standard/oli-tirs/2019/008/012/LC08_L1TP_008012_20190507_20200829_02_T1/LC08_L1TP_008012_20190507_20200829_02_T1_B3.TIF\"\n",
+ "
\n",
+ " \n",
" \n",
" \n",
+ "
\n",
+ " \n",
" \n",
- "
\n",
- " \n",
- "
\n",
- "
\n",
" \n",
- " \n",
- "\n",
- "
\n",
- "
\n",
- "
\n",
- "
\n",
- "
\n",
- " \n",
- " Asset: Thermal Infrared Band 10.9 (B10)
\n",
- "
\n",
- " \n",
- " href: https://landsatlook.usgs.gov/data/collection02/level-1/standard/oli-tirs/2019/008/011/LC08_L1TP_008011_20190507_20200828_02_T1/LC08_L1TP_008011_20190507_20200828_02_T1_B10.TIF |
\n",
- " \n",
- " type: image/vnd.stac.geotiff; cloud-optimized=true |
\n",
- " \n",
- " \n",
- " title: Thermal Infrared Band 10.9 (B10) |
\n",
- " \n",
- " \n",
- " description: Collection 2 Level-1 Thermal Infrared Band 10.9 (B10) Top of Atmosphere Radiance |
\n",
- " \n",
- " \n",
- " roles: ['data', 'temperature'] |
\n",
- " \n",
- " \n",
- " owner: LC08_L1TP_008011_20190507_20200828_02_T1 |
\n",
- " \n",
- " \n",
" \n",
- " \n",
- " eo:bands: [{'name': 'B10', 'common_name': 'lwir11', 'gsd': 100, 'center_wavelength': 10.9}] |
\n",
+ " \n",
+ " \n",
+ " \n",
" \n",
" \n",
" \n",
- " alternate: {'s3': {'storage:platform': 'AWS', 'storage:requester_pays': True, 'href': 's3://usgs-landsat/collection02/level-1/standard/oli-tirs/2019/008/011/LC08_L1TP_008011_20190507_20200828_02_T1/LC08_L1TP_008011_20190507_20200828_02_T1_B10.TIF'}} |
\n",
+ " \n",
+ " - \n",
+ " file:checksum\n",
+ " \"13405bc02e5190d2f6d162f803bd59938c24166c428c23f5a2991cb1eb13de91398c5fa3638ee72bb3dd9fb591edc1388bad44e892f5d5c9ff310f5a8a76d26c14a3\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
" \n",
+ " \n",
+ " \n",
+ " roles\n",
+ " [] 1 items\n",
+ "
\n",
" \n",
+ " \n",
+ " \n",
+ " \n",
" \n",
" \n",
+ " \n",
+ " \n",
" \n",
- "
\n",
- " \n",
- "
\n",
- "
\n",
+ " \n",
+ " \n",
" \n",
" \n",
- "\n",
- "
\n",
- "
\n",
- "
\n",
- "
\n",
- "
\n",
- " \n",
- " Asset: Thermal Infrared Band 12.0 (B11)
\n",
- "
\n",
- " \n",
- " href: https://landsatlook.usgs.gov/data/collection02/level-1/standard/oli-tirs/2019/008/011/LC08_L1TP_008011_20190507_20200828_02_T1/LC08_L1TP_008011_20190507_20200828_02_T1_B11.TIF |
\n",
- " \n",
- " type: image/vnd.stac.geotiff; cloud-optimized=true |
\n",
- " \n",
- " \n",
- " title: Thermal Infrared Band 12.0 (B11) |
\n",
- " \n",
- " \n",
- " description: Collection 2 Level-1 Thermal Infrared Band 12.0 (B11) Top of Atmosphere Radiance |
\n",
- " \n",
- " \n",
- " roles: ['data', 'temperature'] |
\n",
- " \n",
- " \n",
- " owner: LC08_L1TP_008011_20190507_20200828_02_T1 |
\n",
- " \n",
- " \n",
+ " \n",
+ " red
\n",
+ " \n",
" \n",
" \n",
- " eo:bands: [{'name': 'B11', 'common_name': 'lwir12', 'gsd': 100, 'center_wavelength': 12.01}] |
\n",
+ " \n",
+ " - \n",
+ " href\n",
+ " \"https://landsatlook.usgs.gov/data/collection02/level-1/standard/oli-tirs/2019/008/012/LC08_L1TP_008012_20190507_20200829_02_T1/LC08_L1TP_008012_20190507_20200829_02_T1_B4.TIF\"\n",
+ "
\n",
+ " \n",
" \n",
" \n",
" \n",
- " alternate: {'s3': {'storage:platform': 'AWS', 'storage:requester_pays': True, 'href': 's3://usgs-landsat/collection02/level-1/standard/oli-tirs/2019/008/011/LC08_L1TP_008011_20190507_20200828_02_T1/LC08_L1TP_008011_20190507_20200828_02_T1_B11.TIF'}} |
\n",
+ " \n",
+ " - \n",
+ " type\n",
+ " \"image/vnd.stac.geotiff; cloud-optimized=true\"\n",
+ "
\n",
+ " \n",
" \n",
" \n",
" \n",
- " file:checksum: 1340322de4bd2084bda1235c08301b24e9773d102cde9cdef9e568fe308f31f81d3910cac0c1624026561f0c3919d7490511de65b15005f2a2787194aa246e4e870c |
\n",
+ " \n",
+ " - \n",
+ " title\n",
+ " \"Red Band (B4)\"\n",
+ "
\n",
+ " \n",
" \n",
" \n",
- " \n",
- "
\n",
- " \n",
- "
\n",
- "
\n",
" \n",
" \n",
- "\n",
- "
\n",
- "
\n",
- "
\n",
- "
\n",
- "
\n",
- " \n",
- " Asset: Pixel Quality Assessment Band
\n",
- "
\n",
- " \n",
- " href: https://landsatlook.usgs.gov/data/collection02/level-1/standard/oli-tirs/2019/008/011/LC08_L1TP_008011_20190507_20200828_02_T1/LC08_L1TP_008011_20190507_20200828_02_T1_QA_PIXEL.TIF |
\n",
- " \n",
- " type: image/vnd.stac.geotiff; cloud-optimized=true |
\n",
- " \n",
- " \n",
- " title: Pixel Quality Assessment Band |
\n",
- " \n",
- " \n",
- " description: Collection 2 Level-1 Pixel Quality Assessment Band Top of Atmosphere Radiance |
\n",
- " \n",
- " \n",
- " roles: ['cloud', 'cloud-shadow', 'snow-ice', 'water-mask'] |
\n",
- " \n",
- " \n",
- " owner: LC08_L1TP_008011_20190507_20200828_02_T1 |
\n",
+ " - \n",
+ " description\n",
+ " \"Collection 2 Level-1 Red Band (B4) Top of Atmosphere Radiance\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " eo:bands\n",
+ " [] 1 items\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
" \n",
+ " \n",
+ " 0
\n",
+ " \n",
+ " \n",
+ " \n",
" \n",
+ " - \n",
+ " name\n",
+ " \"B4\"\n",
+ "
\n",
+ " \n",
+ " \n",
" \n",
" \n",
- " classification:bitfields: [{'name': 'fill', 'description': 'Corresponding pixels in L1 image bands are fill', 'offset': 0, 'length': 1, 'classes': [{'name': 'not_fill', 'description': 'L1 image band pixels are not fill', 'value': 0}, {'name': 'fill', 'description': 'L1 image band pixels are fill', 'value': 1}]}, {'name': 'dilated', 'description': 'Dilated cloud', 'offset': 1, 'length': 1, 'classes': [{'name': 'not_dilated', 'description': 'Cloud is not dilated or no cloud', 'value': 0}, {'name': 'dilated', 'description': 'Cloud dilation', 'value': 1}]}, {'name': 'cirrus', 'description': 'Cirrus mask', 'offset': 2, 'length': 1, 'classes': [{'name': 'not_cirrus', 'description': 'No confidence level set or low confidence cirrus', 'value': 0}, {'name': 'cirrus', 'description': 'High confidence cirrus', 'value': 1}]}, {'name': 'cloud', 'description': 'Cloud mask', 'offset': 3, 'length': 1, 'classes': [{'name': 'not_cloud', 'description': 'Cloud confidence is not high', 'value': 0}, {'name': 'cloud', 'description': 'High confidence cloud', 'value': 1}]}, {'name': 'shadow', 'description': 'Cloud shadow mask', 'offset': 4, 'length': 1, 'classes': [{'name': 'not_shadow', 'description': 'Cloud shadow confidence is not high', 'value': 0}, {'name': 'shadow', 'description': 'High confidence cloud shadow', 'value': 1}]}, {'name': 'snow', 'description': 'Snow/Ice mask', 'offset': 5, 'length': 1, 'classes': [{'name': 'not_snow', 'description': 'Snow/Ice confidence is not high', 'value': 0}, {'name': 'snow', 'description': 'High confidence snow cover', 'value': 1}]}, {'name': 'clear', 'description': 'Cloud or dilated cloud bits set', 'offset': 6, 'length': 1, 'classes': [{'name': 'not_clear', 'description': 'Cloud or dilated cloud bits are set', 'value': 0}, {'name': 'clear', 'description': 'Cloud and dilated cloud bits are not set', 'value': 1}]}, {'name': 'water', 'description': 'Water mask', 'offset': 7, 'length': 1, 'classes': [{'name': 'not_water', 'description': 'Land or cloud', 'value': 0}, {'name': 'water', 'description': 'Water', 'value': 1}]}, {'name': 'cloud_confidence', 'description': 'Cloud confidence levels', 'offset': 8, 'length': 2, 'classes': [{'name': 'not_set', 'description': 'No confidence level set', 'value': 0}, {'name': 'low', 'description': 'Low confidence cloud', 'value': 1}, {'name': 'medium', 'description': 'Medium confidence cloud', 'value': 2}, {'name': 'high', 'description': 'High confidence cloud', 'value': 3}]}, {'name': 'shadow_confidence', 'description': 'Cloud shadow confidence levels', 'offset': 10, 'length': 2, 'classes': [{'name': 'not_set', 'description': 'No confidence level set', 'value': 0}, {'name': 'low', 'description': 'Low confidence cloud shadow', 'value': 1}, {'name': 'reserved', 'description': 'Reserved - value not used', 'value': 2}, {'name': 'high', 'description': 'High confidence cloud shadow', 'value': 3}]}, {'name': 'snow_confidence', 'description': 'Snow/Ice confidence levels', 'offset': 12, 'length': 2, 'classes': [{'name': 'not_set', 'description': 'No confidence level set', 'value': 0}, {'name': 'low', 'description': 'Low confidence snow/ice', 'value': 1}, {'name': 'reserved', 'description': 'Reserved - value not used', 'value': 2}, {'name': 'high', 'description': 'High confidence snow/ice', 'value': 3}]}, {'name': 'cirrus_confidence', 'description': 'Cirrus confidence levels', 'offset': 14, 'length': 2, 'classes': [{'name': 'not_set', 'description': 'No confidence level set', 'value': 0}, {'name': 'low', 'description': 'Low confidence cirrus', 'value': 1}, {'name': 'reserved', 'description': 'Reserved - value not used', 'value': 2}, {'name': 'high', 'description': 'High confidence cirrus', 'value': 3}]}] |
\n",
+ " \n",
+ " - \n",
+ " common_name\n",
+ " \"red\"\n",
+ "
\n",
+ " \n",
" \n",
" \n",
" \n",
- " alternate: {'s3': {'storage:platform': 'AWS', 'storage:requester_pays': True, 'href': 's3://usgs-landsat/collection02/level-1/standard/oli-tirs/2019/008/011/LC08_L1TP_008011_20190507_20200828_02_T1/LC08_L1TP_008011_20190507_20200828_02_T1_QA_PIXEL.TIF'}} |
\n",
+ " \n",
+ " - \n",
+ " gsd\n",
+ " 30\n",
+ "
\n",
+ " \n",
" \n",
" \n",
" \n",
- " file:checksum: 1340bd1ba8811b39d3f87b9fbac994e2d8b9cdc68206de261277b72bef13eb8e4941a738af18f99e313afc2d7ecbd16c0283fb7797ed2f524bc8517fc031e25351c5 |
\n",
+ " \n",
+ " - \n",
+ " center_wavelength\n",
+ " 0.66\n",
+ "
\n",
+ " \n",
" \n",
" \n",
+ "
\n",
+ " \n",
" \n",
- "
\n",
- " \n",
- "
\n",
- "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
" \n",
" \n",
- "\n",
- "
\n",
- "
\n",
- "
\n",
- "
\n",
- "
\n",
- " \n",
- " Asset: Radiometric Saturation Quality Assessment Band
\n",
- "
\n",
- " \n",
- " href: https://landsatlook.usgs.gov/data/collection02/level-1/standard/oli-tirs/2019/008/011/LC08_L1TP_008011_20190507_20200828_02_T1/LC08_L1TP_008011_20190507_20200828_02_T1_QA_RADSAT.TIF |
\n",
- " \n",
- " type: image/vnd.stac.geotiff; cloud-optimized=true |
\n",
- " \n",
- " \n",
- " title: Radiometric Saturation Quality Assessment Band |
\n",
- " \n",
- " \n",
- " description: Collection 2 Level-1 Radiometric Saturation Quality Assessment Band Top of Atmosphere Radiance |
\n",
- " \n",
- " \n",
- " roles: ['saturation'] |
\n",
- " \n",
- " \n",
- " owner: LC08_L1TP_008011_20190507_20200828_02_T1 |
\n",
- " \n",
+ " \n",
+ " alternate
\n",
+ " \n",
+ " \n",
+ " \n",
" \n",
+ " \n",
+ " s3
\n",
+ " \n",
" \n",
" \n",
- " classification:bitfields: [{'name': 'band1', 'description': 'Band 1 radiometric saturation', 'offset': 0, 'length': 1, 'classes': [{'name': 'not_saturated', 'description': 'Band 1 is not saturated', 'value': 0}, {'name': 'saturated', 'description': 'Band 1 is saturated', 'value': 1}]}, {'name': 'band2', 'description': 'Band 2 radiometric saturation', 'offset': 1, 'length': 1, 'classes': [{'name': 'not_saturated', 'description': 'Band 2 is not saturated', 'value': 0}, {'name': 'saturated', 'description': 'Band 2 is saturated', 'value': 1}]}, {'name': 'band3', 'description': 'Band 3 radiometric saturation', 'offset': 2, 'length': 1, 'classes': [{'name': 'not_saturated', 'description': 'Band 3 is not saturated', 'value': 0}, {'name': 'saturated', 'description': 'Band 3 is saturated', 'value': 1}]}, {'name': 'band4', 'description': 'Band 4 radiometric saturation', 'offset': 3, 'length': 1, 'classes': [{'name': 'not_saturated', 'description': 'Band 4 is not saturated', 'value': 0}, {'name': 'saturated', 'description': 'Band 4 is saturated', 'value': 1}]}, {'name': 'band5', 'description': 'Band 5 radiometric saturation', 'offset': 4, 'length': 1, 'classes': [{'name': 'not_saturated', 'description': 'Band 5 is not saturated', 'value': 0}, {'name': 'saturated', 'description': 'Band 5 is saturated', 'value': 1}]}, {'name': 'band6', 'description': 'Band 6 radiometric saturation', 'offset': 5, 'length': 1, 'classes': [{'name': 'not_saturated', 'description': 'Band 6 is not saturated', 'value': 0}, {'name': 'saturated', 'description': 'Band 6 is saturated', 'value': 1}]}, {'name': 'band7', 'description': 'Band 7 radiometric saturation', 'offset': 6, 'length': 1, 'classes': [{'name': 'not_saturated', 'description': 'Band 7 is not saturated', 'value': 0}, {'name': 'saturated', 'description': 'Band 7 is saturated', 'value': 1}]}, {'name': 'unused', 'description': 'Unused bit', 'offset': 7, 'length': 1, 'classes': [{'name': 'unused', 'description': 'Unused bit', 'value': 0}]}, {'name': 'band9', 'description': 'Band 9 radiometric saturation', 'offset': 8, 'length': 1, 'classes': [{'name': 'not_saturated', 'description': 'Band 9 is not saturated', 'value': 0}, {'name': 'saturated', 'description': 'Band 9 is saturated', 'value': 1}]}, {'name': 'unused', 'description': 'Unused bit', 'offset': 9, 'length': 1, 'classes': [{'name': 'unused', 'description': 'Unused bit', 'value': 0}]}, {'name': 'unused', 'description': 'Unused bit', 'offset': 10, 'length': 1, 'classes': [{'name': 'unused', 'description': 'Unused bit', 'value': 0}]}, {'name': 'occlusion', 'description': 'Terrain not visible from sensor due to intervening terrain', 'offset': 11, 'length': 1, 'classes': [{'name': 'not_occluded', 'description': 'Terrain is not occluded', 'value': 0}, {'name': 'occluded', 'description': 'Terrain is occluded', 'value': 1}]}, {'name': 'unused', 'description': 'Unused bit', 'offset': 12, 'length': 1, 'classes': [{'name': 'unused', 'description': 'Unused bit', 'value': 0}]}, {'name': 'unused', 'description': 'Unused bit', 'offset': 13, 'length': 1, 'classes': [{'name': 'unused', 'description': 'Unused bit', 'value': 0}]}, {'name': 'unused', 'description': 'Unused bit', 'offset': 14, 'length': 1, 'classes': [{'name': 'unused', 'description': 'Unused bit', 'value': 0}]}, {'name': 'unused', 'description': 'Unused bit', 'offset': 15, 'length': 1, 'classes': [{'name': 'unused', 'description': 'Unused bit', 'value': 0}]}] |
\n",
+ " \n",
+ " - \n",
+ " storage:platform\n",
+ " \"AWS\"\n",
+ "
\n",
+ " \n",
" \n",
" \n",
" \n",
- " alternate: {'s3': {'storage:platform': 'AWS', 'storage:requester_pays': True, 'href': 's3://usgs-landsat/collection02/level-1/standard/oli-tirs/2019/008/011/LC08_L1TP_008011_20190507_20200828_02_T1/LC08_L1TP_008011_20190507_20200828_02_T1_QA_RADSAT.TIF'}} |
\n",
+ " \n",
+ " - \n",
+ " storage:requester_pays\n",
+ " True\n",
+ "
\n",
+ " \n",
" \n",
" \n",
" \n",
- " file:checksum: 1340c7989f6e2f2452c6d831fa381023a96a6239f2468c1cab822bfeccbb0e81d09ef9e66beb25076a15b5f92e64d37fc9bc7b2a8bd841d4c23f0d5e99b00339dfe8 |
\n",
+ " \n",
+ " - \n",
+ " href\n",
+ " \"s3://usgs-landsat/collection02/level-1/standard/oli-tirs/2019/008/012/LC08_L1TP_008012_20190507_20200829_02_T1/LC08_L1TP_008012_20190507_20200829_02_T1_B4.TIF\"\n",
+ "
\n",
+ " \n",
" \n",
" \n",
+ "
\n",
+ " \n",
" \n",
- "
\n",
- " \n",
- "
\n",
- "
\n",
" \n",
- " \n",
- "\n",
- "
\n",
- "
\n",
- "
\n",
- "
\n",
- "
\n",
- " \n",
- " Asset: Angle Coefficients File
\n",
- "
\n",
- " \n",
- " href: https://landsatlook.usgs.gov/data/collection02/level-1/standard/oli-tirs/2019/008/011/LC08_L1TP_008011_20190507_20200828_02_T1/LC08_L1TP_008011_20190507_20200828_02_T1_ANG.txt |
\n",
- " \n",
- " type: text/plain |
\n",
- " \n",
- " \n",
- " title: Angle Coefficients File |
\n",
- " \n",
- " \n",
- " description: Collection 2 Level-1 Angle Coefficients File (ANG) |
\n",
- " \n",
- " \n",
- " roles: ['metadata'] |
\n",
- " \n",
- " \n",
- " owner: LC08_L1TP_008011_20190507_20200828_02_T1 |
\n",
- " \n",
- " \n",
" \n",
- " \n",
- " alternate: {'s3': {'storage:platform': 'AWS', 'storage:requester_pays': True, 'href': 's3://usgs-landsat/collection02/level-1/standard/oli-tirs/2019/008/011/LC08_L1TP_008011_20190507_20200828_02_T1/LC08_L1TP_008011_20190507_20200828_02_T1_ANG.txt'}} |
\n",
+ " \n",
+ " \n",
+ " \n",
" \n",
" \n",
" \n",
- " file:checksum: 1340d62f86775fcb6bf2cf857977a5396da298d39a9fdb52d6629bb3512fd27f9eab1272a2e7bf98bd4ecd8182446840c2778431fd0dd43a1ad78c0643b501e813d7 |
\n",
+ " \n",
+ " - \n",
+ " file:checksum\n",
+ " \"134012c84e81bf929d73b1d4aacb6108ca7c1fff428726320b1ce5fe4fcf7daf6ba43c418670ee4825de1927427c42bade0386dae18b07d14e1a500d2ec25dbcfdff\"\n",
+ "
\n",
+ " \n",
" \n",
" \n",
- " \n",
- "
\n",
- " \n",
- "
\n",
- "
\n",
" \n",
- " \n",
- "\n",
- "
\n",
- "
\n",
- "
\n",
- "
\n",
- "
\n",
- " \n",
- " Asset: Sensor Azimuth Angle Band
\n",
- "
\n",
- " \n",
- " href: https://landsatlook.usgs.gov/data/collection02/level-1/standard/oli-tirs/2019/008/011/LC08_L1TP_008011_20190507_20200828_02_T1/LC08_L1TP_008011_20190507_20200828_02_T1_VAA.TIF |
\n",
- " \n",
- " type: image/vnd.stac.geotiff; cloud-optimized=true |
\n",
- " \n",
- " \n",
- " title: Sensor Azimuth Angle Band |
\n",
- " \n",
- " \n",
- " description: Collection 2 Level-1 Sensor Azimuth Angle Band |
\n",
- " \n",
- " \n",
- " roles: ['azimuth'] |
\n",
- " \n",
- " \n",
- " owner: LC08_L1TP_008011_20190507_20200828_02_T1 |
\n",
- " \n",
- " \n",
+ " \n",
+ " \n",
+ " roles\n",
+ " [] 1 items\n",
+ "
\n",
+ " \n",
+ " \n",
" \n",
" \n",
- " alternate: {'s3': {'storage:platform': 'AWS', 'storage:requester_pays': True, 'href': 's3://usgs-landsat/collection02/level-1/standard/oli-tirs/2019/008/011/LC08_L1TP_008011_20190507_20200828_02_T1/LC08_L1TP_008011_20190507_20200828_02_T1_VAA.TIF'}} |
\n",
+ " \n",
+ " - \n",
+ " 0\n",
+ " \"data\"\n",
+ "
\n",
+ " \n",
" \n",
" \n",
- " \n",
- " file:checksum: 134002d80cf9e82ddb6461f32daa52b6f0849489ba1f6da8766e4c980a0c57f0d660fb8ad1b9af8b2df0b1cf88fc9d413daff597ba9185b83b90a1539906ec9078c5 |
\n",
+ "
\n",
+ " \n",
+ " \n",
" \n",
" \n",
+ " \n",
+ " \n",
" \n",
- "
\n",
- " \n",
- "
\n",
- "
\n",
+ " \n",
+ " \n",
" \n",
" \n",
- "\n",
- "
\n",
- "
\n",
- "
\n",
- "
\n",
- "
\n",
- " \n",
- " Asset: Sensor Zenith Angle Band
\n",
- "
\n",
- " \n",
- " href: https://landsatlook.usgs.gov/data/collection02/level-1/standard/oli-tirs/2019/008/011/LC08_L1TP_008011_20190507_20200828_02_T1/LC08_L1TP_008011_20190507_20200828_02_T1_VZA.TIF |
\n",
- " \n",
- " type: image/vnd.stac.geotiff; cloud-optimized=true |
\n",
- " \n",
- " \n",
- " title: Sensor Zenith Angle Band |
\n",
- " \n",
- " \n",
- " description: Collection 2 Level-1 Sensor Zenith Angle Band |
\n",
- " \n",
- " \n",
- " roles: ['data'] |
\n",
- " \n",
- " \n",
- " owner: LC08_L1TP_008011_20190507_20200828_02_T1 |
\n",
- " \n",
- " \n",
+ " \n",
+ " nir08
\n",
+ " \n",
" \n",
" \n",
- " alternate: {'s3': {'storage:platform': 'AWS', 'storage:requester_pays': True, 'href': 's3://usgs-landsat/collection02/level-1/standard/oli-tirs/2019/008/011/LC08_L1TP_008011_20190507_20200828_02_T1/LC08_L1TP_008011_20190507_20200828_02_T1_VZA.TIF'}} |
\n",
+ " \n",
+ " - \n",
+ " href\n",
+ " \"https://landsatlook.usgs.gov/data/collection02/level-1/standard/oli-tirs/2019/008/012/LC08_L1TP_008012_20190507_20200829_02_T1/LC08_L1TP_008012_20190507_20200829_02_T1_B5.TIF\"\n",
+ "
\n",
+ " \n",
" \n",
" \n",
" \n",
- " file:checksum: 1340d7400e77da79fc700141da99b3f99589949ff4ae68c0a3bb42dbd7b8e6589afbed6d96c8feb5495a3358c576605e253043d5e71ad09ec84c433c490171d5ed21 |
\n",
+ " \n",
+ " - \n",
+ " type\n",
+ " \"image/vnd.stac.geotiff; cloud-optimized=true\"\n",
+ "
\n",
+ " \n",
" \n",
" \n",
- " \n",
- "
\n",
- " \n",
- "
\n",
- "
\n",
" \n",
" \n",
- "\n",
- "
\n",
- "
\n",
- "
\n",
- "
\n",
- "
\n",
- " \n",
- " Asset: Solar Azimuth Angle Band
\n",
- "
\n",
- " \n",
- " href: https://landsatlook.usgs.gov/data/collection02/level-1/standard/oli-tirs/2019/008/011/LC08_L1TP_008011_20190507_20200828_02_T1/LC08_L1TP_008011_20190507_20200828_02_T1_SAA.TIF |
\n",
- " \n",
- " type: image/vnd.stac.geotiff; cloud-optimized=true |
\n",
- " \n",
- " \n",
- " title: Solar Azimuth Angle Band |
\n",
- " \n",
- " \n",
- " description: Collection 2 Level-1 Solar Azimuth Angle Band |
\n",
- " \n",
- " \n",
- " roles: ['sun-azimuth'] |
\n",
- " \n",
- " \n",
- " owner: LC08_L1TP_008011_20190507_20200828_02_T1 |
\n",
- " \n",
- " \n",
+ " - \n",
+ " title\n",
+ " \"Near Infrared Band 0.8 (B5)\"\n",
+ "
\n",
+ " \n",
+ " \n",
" \n",
" \n",
- " alternate: {'s3': {'storage:platform': 'AWS', 'storage:requester_pays': True, 'href': 's3://usgs-landsat/collection02/level-1/standard/oli-tirs/2019/008/011/LC08_L1TP_008011_20190507_20200828_02_T1/LC08_L1TP_008011_20190507_20200828_02_T1_SAA.TIF'}} |
\n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Collection 2 Level-1 Near Infrared Band 0.8 (B5) Top of Atmosphere Radiance\"\n",
+ "
\n",
+ " \n",
" \n",
" \n",
" \n",
- " file:checksum: 1340aeccc943e32f169f13ed62b3040f9d56c9ef9f3aa4913fb053b2d3d380d383c2e0d70d6d97222ac0dfbab3d847e7af7a8c43dc8d230cf73e2485dd186c06f8bb |
\n",
- " \n",
+ " \n",
+ " \n",
+ " eo:bands\n",
+ " [] 1 items\n",
+ "
\n",
+ " \n",
+ "
\n",
- " \n",
- "
\n",
- "
\n",
" \n",
" \n",
- "\n",
- "
\n",
- "
\n",
- "
\n",
- "
\n",
- "
\n",
- " \n",
- " Asset: Solar Zenith Angle Band
\n",
- "
\n",
- " \n",
- " href: https://landsatlook.usgs.gov/data/collection02/level-1/standard/oli-tirs/2019/008/011/LC08_L1TP_008011_20190507_20200828_02_T1/LC08_L1TP_008011_20190507_20200828_02_T1_SZA.TIF |
\n",
- " \n",
- " type: image/vnd.stac.geotiff; cloud-optimized=true |
\n",
- " \n",
- " \n",
- " title: Solar Zenith Angle Band |
\n",
- " \n",
- " \n",
- " description: Collection 2 Level-1 Solar Zenith Angle Band |
\n",
- " \n",
- " \n",
- " roles: ['data'] |
\n",
- " \n",
- " \n",
- " owner: LC08_L1TP_008011_20190507_20200828_02_T1 |
\n",
+ " \n",
+ " 0
\n",
+ " \n",
+ " \n",
+ " \n",
" \n",
+ " - \n",
+ " name\n",
+ " \"B5\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
" \n",
+ " - \n",
+ " common_name\n",
+ " \"nir08\"\n",
+ "
\n",
+ " \n",
+ " \n",
" \n",
" \n",
- " alternate: {'s3': {'storage:platform': 'AWS', 'storage:requester_pays': True, 'href': 's3://usgs-landsat/collection02/level-1/standard/oli-tirs/2019/008/011/LC08_L1TP_008011_20190507_20200828_02_T1/LC08_L1TP_008011_20190507_20200828_02_T1_SZA.TIF'}} |
\n",
+ " \n",
+ " - \n",
+ " gsd\n",
+ " 30\n",
+ "
\n",
+ " \n",
" \n",
" \n",
" \n",
- " file:checksum: 1340b5b25eaf0db0e92b3f8d51c264541aed07204de462db88bec5b14f8f424609038c55e037258eea160000f7bc182e0ac025a141b2ca2928d8426655be194e8855 |
\n",
+ " \n",
+ " - \n",
+ " center_wavelength\n",
+ " 0.87\n",
+ "
\n",
+ " \n",
" \n",
" \n",
+ "
\n",
+ " \n",
" \n",
- "
\n",
- " \n",
- "
\n",
- "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
" \n",
" \n",
- "\n",
- "
\n",
- "
\n",
- "
\n",
- "
\n",
- "
\n",
- " \n",
- " Asset: Product Metadata File
\n",
- "
\n",
- " \n",
- " href: https://landsatlook.usgs.gov/data/collection02/level-1/standard/oli-tirs/2019/008/011/LC08_L1TP_008011_20190507_20200828_02_T1/LC08_L1TP_008011_20190507_20200828_02_T1_MTL.txt |
\n",
+ " \n",
+ " alternate
\n",
+ " \n",
+ " \n",
+ " \n",
" \n",
- " type: text/plain |
\n",
+ " \n",
+ " s3
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
" \n",
+ " - \n",
+ " file:checksum\n",
+ " \"134076277bf855f3f21cd4c25c17dc2db210caa43547b3108df0bac8dfcb65b645083d3bfef96f8335af2144b3a38b001cceec2a3bd6c17127c518b2bf87a4a054f8\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " roles\n",
+ " [] 2 items\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
" \n",
+ " - \n",
+ " 1\n",
+ " \"reflectance\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
" \n",
- " roles: ['metadata'] |
\n",
+ " \n",
+ " swir16
\n",
+ " \n",
+ " \n",
+ " \n",
" \n",
+ " - \n",
+ " href\n",
+ " \"https://landsatlook.usgs.gov/data/collection02/level-1/standard/oli-tirs/2019/008/012/LC08_L1TP_008012_20190507_20200829_02_T1/LC08_L1TP_008012_20190507_20200829_02_T1_B6.TIF\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
" \n",
- " owner: LC08_L1TP_008011_20190507_20200828_02_T1 |
\n",
+ " - \n",
+ " type\n",
+ " \"image/vnd.stac.geotiff; cloud-optimized=true\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
" \n",
+ " - \n",
+ " title\n",
+ " \"Short-wave Infrared Band 1.6 (B6)\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
" \n",
+ " - \n",
+ " description\n",
+ " \"Collection 2 Level-1 Short-wave Infrared Band 1.6 (B6) Top of Atmosphere Radiance\"\n",
+ "
\n",
+ " \n",
+ " \n",
" \n",
" \n",
- " alternate: {'s3': {'storage:platform': 'AWS', 'storage:requester_pays': True, 'href': 's3://usgs-landsat/collection02/level-1/standard/oli-tirs/2019/008/011/LC08_L1TP_008011_20190507_20200828_02_T1/LC08_L1TP_008011_20190507_20200828_02_T1_MTL.txt'}} |
\n",
+ " \n",
+ " \n",
+ " eo:bands\n",
+ " [] 1 items\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
" \n",
+ " \n",
+ " \n",
+ " 0
\n",
+ "
\n",
- " \n",
- "
\n",
- "
\n",
+ " \n",
+ " \n",
" \n",
" \n",
- "\n",
- "
\n",
- "
\n",
- "
\n",
- "
\n",
- "
\n",
- " \n",
- " Asset: Product Metadata File (xml)
\n",
- "
\n",
- " \n",
- " href: https://landsatlook.usgs.gov/data/collection02/level-1/standard/oli-tirs/2019/008/011/LC08_L1TP_008011_20190507_20200828_02_T1/LC08_L1TP_008011_20190507_20200828_02_T1_MTL.xml |
\n",
+ " - \n",
+ " gsd\n",
+ " 30\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
" \n",
- " type: application/xml |
\n",
+ " - \n",
+ " center_wavelength\n",
+ " 1.61\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
" \n",
+ " \n",
+ " alternate
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
" \n",
- " roles: ['metadata'] |
\n",
+ " - \n",
+ " file:checksum\n",
+ " \"1340688d7d2eeba5767eb1a13a9a0681878bf9d465c68481162d00f2eb3859ca82d05f5d2a71d89dc9c605d5c5e3bfe75d7e762c063718e0c8cd71c51914cb87176a\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " roles\n",
+ " [] 2 items\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
" \n",
+ " - \n",
+ " 0\n",
+ " \"data\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
" \n",
+ " \n",
+ " swir22
\n",
+ " \n",
+ " \n",
+ " \n",
" \n",
+ " - \n",
+ " href\n",
+ " \"https://landsatlook.usgs.gov/data/collection02/level-1/standard/oli-tirs/2019/008/012/LC08_L1TP_008012_20190507_20200829_02_T1/LC08_L1TP_008012_20190507_20200829_02_T1_B7.TIF\"\n",
+ "
\n",
+ " \n",
+ " \n",
" \n",
" \n",
- " alternate: {'s3': {'storage:platform': 'AWS', 'storage:requester_pays': True, 'href': 's3://usgs-landsat/collection02/level-1/standard/oli-tirs/2019/008/011/LC08_L1TP_008011_20190507_20200828_02_T1/LC08_L1TP_008011_20190507_20200828_02_T1_MTL.xml'}} |
\n",
+ " \n",
+ " - \n",
+ " type\n",
+ " \"image/vnd.stac.geotiff; cloud-optimized=true\"\n",
+ "
\n",
+ " \n",
" \n",
" \n",
" \n",
- " file:checksum: 13407003d50020e48bbf8ab39dd6dc378aa30a2faadedb5ccd9a0655f8012cf6f78f9b2d2046d3c0f7289126db9f70d63d70deddddb529b2e797d9bb495d1a8a9e7f |
\n",
+ " \n",
+ " - \n",
+ " title\n",
+ " \"Short-wave Infrared Band 2.2 (B7)\"\n",
+ "
\n",
+ " \n",
" \n",
" \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Collection 2 Level-1 Short-wave Infrared Band 2.2 (B7) Top of Atmosphere Radiance\"\n",
+ "
\n",
" \n",
- "
\n",
- " \n",
- "
\n",
- "
\n",
" \n",
- " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " eo:bands\n",
+ " [] 1 items\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 0
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"B7\"\n",
+ "
\n",
" \n",
" \n",
- " \n",
- " \n",
- " Links
\n",
- "
\n",
+ " \n",
" \n",
" \n",
- "\n",
- "\n",
- "
\n",
- "
\n",
- "
\n",
- "
Link:
\n",
- "
\n",
- " rel: self |
\n",
- " href: https://landsatlook.usgs.gov/stac-server/collections/landsat-c2l1/items/LC08_L1TP_008011_20190507_20200828_02_T1 |
\n",
+ " - \n",
+ " common_name\n",
+ " \"swir22\"\n",
+ "
\n",
+ " \n",
" \n",
+ " \n",
" \n",
+ " \n",
+ " - \n",
+ " gsd\n",
+ " 30\n",
+ "
\n",
+ " \n",
" \n",
- "
\n",
" \n",
- "
\n",
- "
\n",
" \n",
" \n",
- "\n",
- "\n",
- "
\n",
- "
\n",
- "
\n",
- "
Link:
\n",
- "
\n",
- " rel: parent |
\n",
- " href: https://landsatlook.usgs.gov/stac-server/collections/landsat-c2l1 |
\n",
+ " - \n",
+ " center_wavelength\n",
+ " 2.2\n",
+ "
\n",
+ " \n",
" \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
" \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
" \n",
- "
\n",
" \n",
- "
\n",
- "
\n",
" \n",
" \n",
- "\n",
- "\n",
- "
\n",
- "
\n",
- "
\n",
- "
Link:
\n",
- "
\n",
- " rel: collection |
\n",
- " href: https://landsatlook.usgs.gov/stac-server/collections/landsat-c2l1 |
\n",
+ " \n",
+ " alternate
\n",
+ " \n",
+ " \n",
" \n",
+ " \n",
+ " \n",
+ " s3
\n",
+ " \n",
+ " \n",
" \n",
+ " \n",
+ " - \n",
+ " storage:platform\n",
+ " \"AWS\"\n",
+ "
\n",
+ " \n",
" \n",
- "
\n",
" \n",
- "
\n",
- "
\n",
" \n",
" \n",
- "\n",
- "\n",
- "
\n",
- "
\n",
- "
\n",
- "
Link: STAC API
\n",
- "
\n",
- " rel: root |
\n",
- " href: https://landsatlook.usgs.gov/stac-server |
\n",
+ " - \n",
+ " storage:requester_pays\n",
+ " True\n",
+ "
\n",
+ " \n",
" \n",
- " type: application/json |
\n",
+ " \n",
" \n",
+ " \n",
+ " - \n",
+ " href\n",
+ " \"s3://usgs-landsat/collection02/level-1/standard/oli-tirs/2019/008/012/LC08_L1TP_008012_20190507_20200829_02_T1/LC08_L1TP_008012_20190507_20200829_02_T1_B7.TIF\"\n",
+ "
\n",
+ " \n",
" \n",
- " title: STAC API |
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
" \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
" \n",
- "
\n",
" \n",
- "
\n",
- "
\n",
" \n",
- " \n",
+ " \n",
+ " - \n",
+ " file:checksum\n",
+ " \"134026c0bc77778fb217e70418740499f3037d9d2011d4eed3a9a4a015b32916d0dd719cc4a40a79fcd5356bac2b59b8037efed3161a9eb196757e3df37db666d981\"\n",
+ "
\n",
" \n",
- "
\n",
- "
\n",
- "
\n",
- " \n",
- " \n",
" \n",
- " \n",
- "
\n",
- "
"
- ],
- "text/plain": [
- ""
- ]
- },
- "execution_count": 27,
- "metadata": {},
- "output_type": "execute_result"
- }
- ],
- "source": [
- "items"
- ]
- },
- {
- "cell_type": "markdown",
- "metadata": {
- "user_expressions": []
- },
- "source": [
- "Load the geojson file into geopandas and inspect the items we want to collect"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": 26,
- "metadata": {
- "tags": []
- },
- "outputs": [
- {
- "data": {
- "text/html": [
- "\n",
- "\n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " roles\n",
+ " [] 2 items\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " 0\n",
+ " \"data\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " 1\n",
+ " \"reflectance\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " pan
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " href\n",
+ " \"https://landsatlook.usgs.gov/data/collection02/level-1/standard/oli-tirs/2019/008/012/LC08_L1TP_008012_20190507_20200829_02_T1/LC08_L1TP_008012_20190507_20200829_02_T1_B8.TIF\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " type\n",
+ " \"image/vnd.stac.geotiff; cloud-optimized=true\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " title\n",
+ " \"Panchromatic Band (B8)\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Collection 2 Level-1 Panchromatic Band (B8) Top of Atmosphere Radiance\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " eo:bands\n",
+ " [] 1 items\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 0
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"B8\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " common_name\n",
+ " \"pan\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " gsd\n",
+ " 15\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " center_wavelength\n",
+ " 0.59\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " alternate
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " s3
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " storage:platform\n",
+ " \"AWS\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " storage:requester_pays\n",
+ " True\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " href\n",
+ " \"s3://usgs-landsat/collection02/level-1/standard/oli-tirs/2019/008/012/LC08_L1TP_008012_20190507_20200829_02_T1/LC08_L1TP_008012_20190507_20200829_02_T1_B8.TIF\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " file:checksum\n",
+ " \"1340f77a5622dd725a486b05d543f4f3501857fda6abdf11f43102dbdffd7b1476bfeef336aa2ba0e80c52d197e8e22634a58cbf9e33fa110c2a7996f8dbd46f3c7b\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " proj:shape\n",
+ " [] 2 items\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " 0\n",
+ " 16981\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " 1\n",
+ " 16861\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " proj:transform\n",
+ " [] 6 items\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " 0\n",
+ " 15\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " 1\n",
+ " 0\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " 2\n",
+ " 437092.5\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " 3\n",
+ " 0\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " 4\n",
+ " -15\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " 5\n",
+ " 7701607.5\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " roles\n",
+ " [] 1 items\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " 0\n",
+ " \"data\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " cirrus
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " href\n",
+ " \"https://landsatlook.usgs.gov/data/collection02/level-1/standard/oli-tirs/2019/008/012/LC08_L1TP_008012_20190507_20200829_02_T1/LC08_L1TP_008012_20190507_20200829_02_T1_B9.TIF\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " type\n",
+ " \"image/vnd.stac.geotiff; cloud-optimized=true\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " title\n",
+ " \"Cirrus Band (B9)\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Collection 2 Level-1 Cirrus Band (B9) Top of Atmosphere Radiance\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " eo:bands\n",
+ " [] 1 items\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 0
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"B9\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " common_name\n",
+ " \"cirrus\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " gsd\n",
+ " 30\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " center_wavelength\n",
+ " 1.37\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " alternate
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " s3
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " storage:platform\n",
+ " \"AWS\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " storage:requester_pays\n",
+ " True\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " href\n",
+ " \"s3://usgs-landsat/collection02/level-1/standard/oli-tirs/2019/008/012/LC08_L1TP_008012_20190507_20200829_02_T1/LC08_L1TP_008012_20190507_20200829_02_T1_B9.TIF\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " file:checksum\n",
+ " \"1340db743557b1c240b880587754b1276e53a97d53a98228d0ec21fcda4ad24a6f0476f22cfcb9f7625aff9a7b69c290a78e8785f8e5f2729b6982b9a86f805b4d1b\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " roles\n",
+ " [] 1 items\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " 0\n",
+ " \"data\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " lwir11
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " href\n",
+ " \"https://landsatlook.usgs.gov/data/collection02/level-1/standard/oli-tirs/2019/008/012/LC08_L1TP_008012_20190507_20200829_02_T1/LC08_L1TP_008012_20190507_20200829_02_T1_B10.TIF\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " type\n",
+ " \"image/vnd.stac.geotiff; cloud-optimized=true\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " title\n",
+ " \"Thermal Infrared Band 10.9 (B10)\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Collection 2 Level-1 Thermal Infrared Band 10.9 (B10) Top of Atmosphere Radiance\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " eo:bands\n",
+ " [] 1 items\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 0
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"B10\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " common_name\n",
+ " \"lwir11\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " gsd\n",
+ " 100\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " center_wavelength\n",
+ " 10.9\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " alternate
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " s3
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " storage:platform\n",
+ " \"AWS\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " storage:requester_pays\n",
+ " True\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " href\n",
+ " \"s3://usgs-landsat/collection02/level-1/standard/oli-tirs/2019/008/012/LC08_L1TP_008012_20190507_20200829_02_T1/LC08_L1TP_008012_20190507_20200829_02_T1_B10.TIF\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " file:checksum\n",
+ " \"1340817216a8ca7622fc5e30e638b61a132eb653aefb603077d7a405bf618eb87d8540346a647cae65a263f878d868cc478b59a283bca0808315732c5377bb621c04\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " roles\n",
+ " [] 2 items\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " 0\n",
+ " \"data\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " 1\n",
+ " \"temperature\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " lwir12
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " href\n",
+ " \"https://landsatlook.usgs.gov/data/collection02/level-1/standard/oli-tirs/2019/008/012/LC08_L1TP_008012_20190507_20200829_02_T1/LC08_L1TP_008012_20190507_20200829_02_T1_B11.TIF\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " type\n",
+ " \"image/vnd.stac.geotiff; cloud-optimized=true\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " title\n",
+ " \"Thermal Infrared Band 12.0 (B11)\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Collection 2 Level-1 Thermal Infrared Band 12.0 (B11) Top of Atmosphere Radiance\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " eo:bands\n",
+ " [] 1 items\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 0
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"B11\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " common_name\n",
+ " \"lwir12\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " gsd\n",
+ " 100\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " center_wavelength\n",
+ " 12.01\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " alternate
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " s3
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " storage:platform\n",
+ " \"AWS\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " storage:requester_pays\n",
+ " True\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " href\n",
+ " \"s3://usgs-landsat/collection02/level-1/standard/oli-tirs/2019/008/012/LC08_L1TP_008012_20190507_20200829_02_T1/LC08_L1TP_008012_20190507_20200829_02_T1_B11.TIF\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " file:checksum\n",
+ " \"1340822c9200e180feb779a16c57c620cedf316ab2a5f6fed95a86426dd00586b344fb8866e103eda68c201e17e6837ae3f6aaa6c8b0319d1298a79a590c14bd8893\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " roles\n",
+ " [] 2 items\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " 0\n",
+ " \"data\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " 1\n",
+ " \"temperature\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " qa_pixel
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " href\n",
+ " \"https://landsatlook.usgs.gov/data/collection02/level-1/standard/oli-tirs/2019/008/012/LC08_L1TP_008012_20190507_20200829_02_T1/LC08_L1TP_008012_20190507_20200829_02_T1_QA_PIXEL.TIF\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " type\n",
+ " \"image/vnd.stac.geotiff; cloud-optimized=true\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " title\n",
+ " \"Pixel Quality Assessment Band\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Collection 2 Level-1 Pixel Quality Assessment Band Top of Atmosphere Radiance\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " classification:bitfields\n",
+ " [] 12 items\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 0
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"fill\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Corresponding pixels in L1 image bands are fill\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " offset\n",
+ " 0\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " length\n",
+ " 1\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " classes\n",
+ " [] 2 items\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 0
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"not_fill\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"L1 image band pixels are not fill\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " value\n",
+ " 0\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 1
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"fill\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"L1 image band pixels are fill\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " value\n",
+ " 1\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 1
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"dilated\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Dilated cloud\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " offset\n",
+ " 1\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " length\n",
+ " 1\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " classes\n",
+ " [] 2 items\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 0
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"not_dilated\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Cloud is not dilated or no cloud\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " value\n",
+ " 0\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 1
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"dilated\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Cloud dilation\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " value\n",
+ " 1\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 2
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"cirrus\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Cirrus mask\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " offset\n",
+ " 2\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " length\n",
+ " 1\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " classes\n",
+ " [] 2 items\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 0
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"not_cirrus\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"No confidence level set or low confidence cirrus\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " value\n",
+ " 0\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 1
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"cirrus\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"High confidence cirrus\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " value\n",
+ " 1\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 3
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"cloud\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Cloud mask\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " offset\n",
+ " 3\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " length\n",
+ " 1\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " classes\n",
+ " [] 2 items\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 0
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"not_cloud\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Cloud confidence is not high\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " value\n",
+ " 0\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 1
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"cloud\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"High confidence cloud\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " value\n",
+ " 1\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 4
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"shadow\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Cloud shadow mask\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " offset\n",
+ " 4\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " length\n",
+ " 1\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " classes\n",
+ " [] 2 items\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 0
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"not_shadow\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Cloud shadow confidence is not high\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " value\n",
+ " 0\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 1
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"shadow\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"High confidence cloud shadow\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " value\n",
+ " 1\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 5
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"snow\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Snow/Ice mask\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " offset\n",
+ " 5\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " length\n",
+ " 1\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " classes\n",
+ " [] 2 items\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 0
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"not_snow\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Snow/Ice confidence is not high\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " value\n",
+ " 0\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 1
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"snow\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"High confidence snow cover\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " value\n",
+ " 1\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 6
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"clear\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Cloud or dilated cloud bits set\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " offset\n",
+ " 6\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " length\n",
+ " 1\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " classes\n",
+ " [] 2 items\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 0
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"not_clear\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Cloud or dilated cloud bits are set\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " value\n",
+ " 0\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 1
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"clear\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Cloud and dilated cloud bits are not set\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " value\n",
+ " 1\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 7
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"water\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Water mask\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " offset\n",
+ " 7\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " length\n",
+ " 1\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " classes\n",
+ " [] 2 items\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 0
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"not_water\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Land or cloud\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " value\n",
+ " 0\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 1
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"water\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Water\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " value\n",
+ " 1\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 8
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"cloud_confidence\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Cloud confidence levels\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " offset\n",
+ " 8\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " length\n",
+ " 2\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " classes\n",
+ " [] 4 items\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 0
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"not_set\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"No confidence level set\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " value\n",
+ " 0\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 1
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"low\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Low confidence cloud\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " value\n",
+ " 1\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 2
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"medium\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Medium confidence cloud\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " value\n",
+ " 2\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 3
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"high\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"High confidence cloud\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " value\n",
+ " 3\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 9
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"shadow_confidence\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Cloud shadow confidence levels\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " offset\n",
+ " 10\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " length\n",
+ " 2\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " classes\n",
+ " [] 4 items\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 0
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"not_set\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"No confidence level set\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " value\n",
+ " 0\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 1
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"low\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Low confidence cloud shadow\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " value\n",
+ " 1\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 2
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"reserved\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Reserved - value not used\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " value\n",
+ " 2\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 3
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"high\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"High confidence cloud shadow\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " value\n",
+ " 3\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 10
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"snow_confidence\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Snow/Ice confidence levels\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " offset\n",
+ " 12\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " length\n",
+ " 2\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " classes\n",
+ " [] 4 items\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 0
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"not_set\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"No confidence level set\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " value\n",
+ " 0\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 1
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"low\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Low confidence snow/ice\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " value\n",
+ " 1\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 2
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"reserved\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Reserved - value not used\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " value\n",
+ " 2\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 3
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"high\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"High confidence snow/ice\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " value\n",
+ " 3\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 11
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"cirrus_confidence\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Cirrus confidence levels\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " offset\n",
+ " 14\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " length\n",
+ " 2\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " classes\n",
+ " [] 4 items\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 0
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"not_set\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"No confidence level set\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " value\n",
+ " 0\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 1
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"low\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Low confidence cirrus\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " value\n",
+ " 1\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 2
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"reserved\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Reserved - value not used\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " value\n",
+ " 2\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 3
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"high\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"High confidence cirrus\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " value\n",
+ " 3\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " alternate
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " s3
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " storage:platform\n",
+ " \"AWS\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " storage:requester_pays\n",
+ " True\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " href\n",
+ " \"s3://usgs-landsat/collection02/level-1/standard/oli-tirs/2019/008/012/LC08_L1TP_008012_20190507_20200829_02_T1/LC08_L1TP_008012_20190507_20200829_02_T1_QA_PIXEL.TIF\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " file:checksum\n",
+ " \"1340041f2f8b0d68ed7a13c1c9f7f600ac1ecb21622e194863afbfcee9e951e9345e84cb4b2a9c018009ac395f0b159ea13464e78621961c3201b45e1bc26ffa807b\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " roles\n",
+ " [] 4 items\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " 0\n",
+ " \"cloud\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " 1\n",
+ " \"cloud-shadow\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " 2\n",
+ " \"snow-ice\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " 3\n",
+ " \"water-mask\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " qa_radsat
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " href\n",
+ " \"https://landsatlook.usgs.gov/data/collection02/level-1/standard/oli-tirs/2019/008/012/LC08_L1TP_008012_20190507_20200829_02_T1/LC08_L1TP_008012_20190507_20200829_02_T1_QA_RADSAT.TIF\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " type\n",
+ " \"image/vnd.stac.geotiff; cloud-optimized=true\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " title\n",
+ " \"Radiometric Saturation Quality Assessment Band\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Collection 2 Level-1 Radiometric Saturation Quality Assessment Band Top of Atmosphere Radiance\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " classification:bitfields\n",
+ " [] 16 items\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 0
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"band1\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Band 1 radiometric saturation\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " offset\n",
+ " 0\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " length\n",
+ " 1\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " classes\n",
+ " [] 2 items\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 0
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"not_saturated\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Band 1 is not saturated\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " value\n",
+ " 0\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 1
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"saturated\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Band 1 is saturated\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " value\n",
+ " 1\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 1
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"band2\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Band 2 radiometric saturation\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " offset\n",
+ " 1\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " length\n",
+ " 1\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " classes\n",
+ " [] 2 items\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 0
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"not_saturated\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Band 2 is not saturated\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " value\n",
+ " 0\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 1
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"saturated\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Band 2 is saturated\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " value\n",
+ " 1\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 2
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"band3\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Band 3 radiometric saturation\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " offset\n",
+ " 2\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " length\n",
+ " 1\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " classes\n",
+ " [] 2 items\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 0
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"not_saturated\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Band 3 is not saturated\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " value\n",
+ " 0\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 1
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"saturated\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Band 3 is saturated\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " value\n",
+ " 1\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 3
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"band4\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Band 4 radiometric saturation\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " offset\n",
+ " 3\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " length\n",
+ " 1\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " classes\n",
+ " [] 2 items\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 0
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"not_saturated\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Band 4 is not saturated\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " value\n",
+ " 0\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 1
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"saturated\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Band 4 is saturated\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " value\n",
+ " 1\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 4
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"band5\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Band 5 radiometric saturation\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " offset\n",
+ " 4\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " length\n",
+ " 1\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " classes\n",
+ " [] 2 items\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 0
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"not_saturated\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Band 5 is not saturated\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " value\n",
+ " 0\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 1
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"saturated\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Band 5 is saturated\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " value\n",
+ " 1\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 5
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"band6\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Band 6 radiometric saturation\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " offset\n",
+ " 5\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " length\n",
+ " 1\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " classes\n",
+ " [] 2 items\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 0
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"not_saturated\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Band 6 is not saturated\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " value\n",
+ " 0\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 1
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"saturated\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Band 6 is saturated\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " value\n",
+ " 1\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 6
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"band7\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Band 7 radiometric saturation\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " offset\n",
+ " 6\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " length\n",
+ " 1\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " classes\n",
+ " [] 2 items\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 0
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"not_saturated\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Band 7 is not saturated\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " value\n",
+ " 0\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 1
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"saturated\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Band 7 is saturated\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " value\n",
+ " 1\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 7
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"unused\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Unused bit\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " offset\n",
+ " 7\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " length\n",
+ " 1\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " classes\n",
+ " [] 1 items\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 0
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"unused\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Unused bit\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " value\n",
+ " 0\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 8
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"band9\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Band 9 radiometric saturation\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " offset\n",
+ " 8\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " length\n",
+ " 1\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " classes\n",
+ " [] 2 items\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 0
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"not_saturated\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Band 9 is not saturated\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " value\n",
+ " 0\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 1
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"saturated\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Band 9 is saturated\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " value\n",
+ " 1\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 9
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"unused\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Unused bit\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " offset\n",
+ " 9\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " length\n",
+ " 1\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " classes\n",
+ " [] 1 items\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 0
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"unused\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Unused bit\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " value\n",
+ " 0\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 10
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"unused\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Unused bit\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " offset\n",
+ " 10\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " length\n",
+ " 1\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " classes\n",
+ " [] 1 items\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 0
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"unused\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Unused bit\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " value\n",
+ " 0\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 11
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"occlusion\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Terrain not visible from sensor due to intervening terrain\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " offset\n",
+ " 11\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " length\n",
+ " 1\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " classes\n",
+ " [] 2 items\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 0
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"not_occluded\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Terrain is not occluded\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " value\n",
+ " 0\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 1
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"occluded\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Terrain is occluded\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " value\n",
+ " 1\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 12
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"unused\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Unused bit\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " offset\n",
+ " 12\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " length\n",
+ " 1\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " classes\n",
+ " [] 1 items\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 0
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"unused\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Unused bit\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " value\n",
+ " 0\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 13
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"unused\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Unused bit\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " offset\n",
+ " 13\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " length\n",
+ " 1\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " classes\n",
+ " [] 1 items\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 0
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"unused\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Unused bit\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " value\n",
+ " 0\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 14
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"unused\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Unused bit\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " offset\n",
+ " 14\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " length\n",
+ " 1\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " classes\n",
+ " [] 1 items\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 0
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"unused\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Unused bit\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " value\n",
+ " 0\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 15
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"unused\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Unused bit\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " offset\n",
+ " 15\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " length\n",
+ " 1\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " classes\n",
+ " [] 1 items\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 0
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"unused\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Unused bit\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " value\n",
+ " 0\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " alternate
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " s3
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " storage:platform\n",
+ " \"AWS\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " storage:requester_pays\n",
+ " True\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " href\n",
+ " \"s3://usgs-landsat/collection02/level-1/standard/oli-tirs/2019/008/012/LC08_L1TP_008012_20190507_20200829_02_T1/LC08_L1TP_008012_20190507_20200829_02_T1_QA_RADSAT.TIF\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " file:checksum\n",
+ " \"134098013147e3c4295eb92a41e5a265c0dc32054a52247cad869ae20b9efd8fdaaf07f653392042d47f90d13d4441d9af34b52f0ec749f3df4e7c5b690afc95449b\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " roles\n",
+ " [] 1 items\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " 0\n",
+ " \"saturation\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " ANG.txt
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " href\n",
+ " \"https://landsatlook.usgs.gov/data/collection02/level-1/standard/oli-tirs/2019/008/012/LC08_L1TP_008012_20190507_20200829_02_T1/LC08_L1TP_008012_20190507_20200829_02_T1_ANG.txt\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " type\n",
+ " \"text/plain\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " title\n",
+ " \"Angle Coefficients File\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Collection 2 Level-1 Angle Coefficients File (ANG)\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " alternate
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " s3
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " storage:platform\n",
+ " \"AWS\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " storage:requester_pays\n",
+ " True\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " href\n",
+ " \"s3://usgs-landsat/collection02/level-1/standard/oli-tirs/2019/008/012/LC08_L1TP_008012_20190507_20200829_02_T1/LC08_L1TP_008012_20190507_20200829_02_T1_ANG.txt\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " file:checksum\n",
+ " \"1340ebbc3d9c8a18169934e8bf8475522b908d27fc5a46c7f7b8110edb871fd1fafc489c39e39475a52fddf77417e7dd765850b90329829f5b5b2726a2aacce23ffa\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " roles\n",
+ " [] 1 items\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " 0\n",
+ " \"metadata\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " VAA
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " href\n",
+ " \"https://landsatlook.usgs.gov/data/collection02/level-1/standard/oli-tirs/2019/008/012/LC08_L1TP_008012_20190507_20200829_02_T1/LC08_L1TP_008012_20190507_20200829_02_T1_VAA.TIF\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " type\n",
+ " \"image/vnd.stac.geotiff; cloud-optimized=true\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " title\n",
+ " \"Sensor Azimuth Angle Band\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Collection 2 Level-1 Sensor Azimuth Angle Band\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " alternate
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " s3
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " storage:platform\n",
+ " \"AWS\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " storage:requester_pays\n",
+ " True\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " href\n",
+ " \"s3://usgs-landsat/collection02/level-1/standard/oli-tirs/2019/008/012/LC08_L1TP_008012_20190507_20200829_02_T1/LC08_L1TP_008012_20190507_20200829_02_T1_VAA.TIF\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " file:checksum\n",
+ " \"1340a2a690a1525b335469f4c705cbceeaaf3e3b9727af3245f00e82042f668502d5221d0e175148603f1f2fce8ea48f11ee41f546c94fcb854679a3ac167d7009dc\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " roles\n",
+ " [] 1 items\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " 0\n",
+ " \"azimuth\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " VZA
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " href\n",
+ " \"https://landsatlook.usgs.gov/data/collection02/level-1/standard/oli-tirs/2019/008/012/LC08_L1TP_008012_20190507_20200829_02_T1/LC08_L1TP_008012_20190507_20200829_02_T1_VZA.TIF\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " type\n",
+ " \"image/vnd.stac.geotiff; cloud-optimized=true\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " title\n",
+ " \"Sensor Zenith Angle Band\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Collection 2 Level-1 Sensor Zenith Angle Band\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " alternate
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " s3
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " storage:platform\n",
+ " \"AWS\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " storage:requester_pays\n",
+ " True\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " href\n",
+ " \"s3://usgs-landsat/collection02/level-1/standard/oli-tirs/2019/008/012/LC08_L1TP_008012_20190507_20200829_02_T1/LC08_L1TP_008012_20190507_20200829_02_T1_VZA.TIF\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " file:checksum\n",
+ " \"134098f9201879522069038cf57430d310f50d7e34cac1c547d3b36c36e85f8b2bccacf7dcee0c6061ea5900c891acc9f901ca8f33f13d3fb826669bb8ed496bcf98\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " roles\n",
+ " [] 1 items\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " 0\n",
+ " \"data\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " SAA
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " href\n",
+ " \"https://landsatlook.usgs.gov/data/collection02/level-1/standard/oli-tirs/2019/008/012/LC08_L1TP_008012_20190507_20200829_02_T1/LC08_L1TP_008012_20190507_20200829_02_T1_SAA.TIF\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " type\n",
+ " \"image/vnd.stac.geotiff; cloud-optimized=true\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " title\n",
+ " \"Solar Azimuth Angle Band\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Collection 2 Level-1 Solar Azimuth Angle Band\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " alternate
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " s3
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " storage:platform\n",
+ " \"AWS\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " storage:requester_pays\n",
+ " True\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " href\n",
+ " \"s3://usgs-landsat/collection02/level-1/standard/oli-tirs/2019/008/012/LC08_L1TP_008012_20190507_20200829_02_T1/LC08_L1TP_008012_20190507_20200829_02_T1_SAA.TIF\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " file:checksum\n",
+ " \"134010e6cf0f7110cd8abeaba4567630fbd7a571a638779a89374819526e33ec5b458da01da9cadb904cfab4218fbb0cdbdffa9676b6e263f3329106bd997dbd8c9a\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " roles\n",
+ " [] 1 items\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " 0\n",
+ " \"sun-azimuth\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " SZA
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " href\n",
+ " \"https://landsatlook.usgs.gov/data/collection02/level-1/standard/oli-tirs/2019/008/012/LC08_L1TP_008012_20190507_20200829_02_T1/LC08_L1TP_008012_20190507_20200829_02_T1_SZA.TIF\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " type\n",
+ " \"image/vnd.stac.geotiff; cloud-optimized=true\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " title\n",
+ " \"Solar Zenith Angle Band\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Collection 2 Level-1 Solar Zenith Angle Band\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " alternate
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " s3
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " storage:platform\n",
+ " \"AWS\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " storage:requester_pays\n",
+ " True\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " href\n",
+ " \"s3://usgs-landsat/collection02/level-1/standard/oli-tirs/2019/008/012/LC08_L1TP_008012_20190507_20200829_02_T1/LC08_L1TP_008012_20190507_20200829_02_T1_SZA.TIF\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " file:checksum\n",
+ " \"134065525f02b562f8d9d193e89d21d1b028af0ae1503a12ad26848c8c2edaaa9b2fe046c2ddab87735c14af334826b19b989c71bb6521b9dd9351f7433be432c7e7\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " roles\n",
+ " [] 1 items\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " 0\n",
+ " \"data\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " MTL.txt
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " href\n",
+ " \"https://landsatlook.usgs.gov/data/collection02/level-1/standard/oli-tirs/2019/008/012/LC08_L1TP_008012_20190507_20200829_02_T1/LC08_L1TP_008012_20190507_20200829_02_T1_MTL.txt\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " type\n",
+ " \"text/plain\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " title\n",
+ " \"Product Metadata File\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Collection 2 Level-1 Product Metadata File (MTL)\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " alternate
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " s3
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " storage:platform\n",
+ " \"AWS\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " storage:requester_pays\n",
+ " True\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " href\n",
+ " \"s3://usgs-landsat/collection02/level-1/standard/oli-tirs/2019/008/012/LC08_L1TP_008012_20190507_20200829_02_T1/LC08_L1TP_008012_20190507_20200829_02_T1_MTL.txt\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " file:checksum\n",
+ " \"1340577c688e4c66398fca961abb4450d0a5427f4da8992a5f1afe2ea2163513579d626687c263a3344b11cbe6f67857802aed78268394a5ca839f127953d05a7974\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " roles\n",
+ " [] 1 items\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " 0\n",
+ " \"metadata\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " MTL.xml
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " href\n",
+ " \"https://landsatlook.usgs.gov/data/collection02/level-1/standard/oli-tirs/2019/008/012/LC08_L1TP_008012_20190507_20200829_02_T1/LC08_L1TP_008012_20190507_20200829_02_T1_MTL.xml\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " type\n",
+ " \"application/xml\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " title\n",
+ " \"Product Metadata File (xml)\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Collection 2 Level-1 Product Metadata File (xml)\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " alternate
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " s3
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " storage:platform\n",
+ " \"AWS\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " storage:requester_pays\n",
+ " True\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " href\n",
+ " \"s3://usgs-landsat/collection02/level-1/standard/oli-tirs/2019/008/012/LC08_L1TP_008012_20190507_20200829_02_T1/LC08_L1TP_008012_20190507_20200829_02_T1_MTL.xml\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " file:checksum\n",
+ " \"134049a8e4edcdab491a9cbf015dce99db646983326b7224662b2b8001654c97cff201d146150a5af42086ecbec6adf2412cb1c6d2f82919f0c2d6d5a435c1c5deee\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " roles\n",
+ " [] 1 items\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " 0\n",
+ " \"metadata\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " bbox\n",
+ " [] 4 items\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " 0\n",
+ " -52.450348972917006\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " 1\n",
+ " 67.13075970832166\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " 2\n",
+ " -46.38012875444901\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " 3\n",
+ " 69.41548599740054\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " stac_extensions\n",
+ " [] 9 items\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " 0\n",
+ " \"https://landsat.usgs.gov/stac/landsat-extension/v1.1.1/schema.json\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " 1\n",
+ " \"https://stac-extensions.github.io/view/v1.0.0/schema.json\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " 2\n",
+ " \"https://stac-extensions.github.io/projection/v1.0.0/schema.json\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " 3\n",
+ " \"https://stac-extensions.github.io/eo/v1.0.0/schema.json\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " 4\n",
+ " \"https://stac-extensions.github.io/alternate-assets/v1.1.0/schema.json\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " 5\n",
+ " \"https://stac-extensions.github.io/storage/v1.0.0/schema.json\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " 6\n",
+ " \"https://stac-extensions.github.io/file/v1.0.0/schema.json\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " 7\n",
+ " \"https://stac-extensions.github.io/accuracy/v1.0.0/schema.json\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " 8\n",
+ " \"https://stac-extensions.github.io/classification/v1.0.0/schema.json\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " collection\n",
+ " \"landsat-c2l1\"\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 1
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " type\n",
+ " \"Feature\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " stac_version\n",
+ " \"1.0.0\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " id\n",
+ " \"LC08_L1TP_008011_20190507_20200828_02_T1\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " properties
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " datetime\n",
+ " \"2019-05-07T14:53:54.970580Z\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " eo:cloud_cover\n",
+ " 10.18\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " view:sun_azimuth\n",
+ " 175.87744165\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " view:sun_elevation\n",
+ " 37.19312658\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " platform\n",
+ " \"LANDSAT_8\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " instruments\n",
+ " [] 2 items\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " 0\n",
+ " \"OLI\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " 1\n",
+ " \"TIRS\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " view:off_nadir\n",
+ " 0\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " landsat:cloud_cover_land\n",
+ " 10.3\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " landsat:wrs_type\n",
+ " \"2\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " landsat:wrs_path\n",
+ " \"008\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " landsat:wrs_row\n",
+ " \"011\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " landsat:scene_id\n",
+ " \"LC80080112019127LGN00\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " landsat:collection_category\n",
+ " \"T1\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " landsat:collection_number\n",
+ " \"02\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " landsat:correction\n",
+ " \"L1TP\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " accuracy:geometric_x_bias\n",
+ " 0\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " accuracy:geometric_y_bias\n",
+ " 0\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " accuracy:geometric_x_stddev\n",
+ " 3.409\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " accuracy:geometric_y_stddev\n",
+ " 4.025\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " accuracy:geometric_rmse\n",
+ " 5.275\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " proj:epsg\n",
+ " 32623\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " proj:shape\n",
+ " [] 2 items\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " 0\n",
+ " 8771\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " 1\n",
+ " 8741\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " proj:transform\n",
+ " [] 6 items\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " 0\n",
+ " 30\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " 1\n",
+ " 0\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " 2\n",
+ " 261285\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " 3\n",
+ " 0\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " 4\n",
+ " -30\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " 5\n",
+ " 7855515\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " created\n",
+ " \"2022-06-28T23:23:03.741Z\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " updated\n",
+ " \"2022-06-28T23:23:03.741Z\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " geometry
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " type\n",
+ " \"Polygon\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " coordinates\n",
+ " [] 1 items\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 0\n",
+ " [] 5 items\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 0\n",
+ " [] 2 items\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " 0\n",
+ " -48.95109258162108\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " 1\n",
+ " 70.75209635973746\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 1\n",
+ " [] 2 items\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " 0\n",
+ " -50.97097968875044\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " 1\n",
+ " 69.14869763125887\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 2\n",
+ " [] 2 items\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " 0\n",
+ " -46.74022873077202\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " 1\n",
+ " 68.44897504333066\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 3\n",
+ " [] 2 items\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " 0\n",
+ " -44.463480823181705\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " 1\n",
+ " 70.00956619107268\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 4\n",
+ " [] 2 items\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " 0\n",
+ " -48.95109258162108\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " 1\n",
+ " 70.75209635973746\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " links\n",
+ " [] 4 items\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 0
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " rel\n",
+ " \"self\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " href\n",
+ " \"https://landsatlook.usgs.gov/stac-server/collections/landsat-c2l1/items/LC08_L1TP_008011_20190507_20200828_02_T1\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 1
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " rel\n",
+ " \"parent\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " href\n",
+ " \"https://landsatlook.usgs.gov/stac-server/collections/landsat-c2l1\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 2
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " rel\n",
+ " \"collection\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " href\n",
+ " \"https://landsatlook.usgs.gov/stac-server/collections/landsat-c2l1\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 3
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " rel\n",
+ " \"root\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " href\n",
+ " \"https://landsatlook.usgs.gov/stac-server\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " type\n",
+ " \"application/json\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " title\n",
+ " \"STAC API\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " assets
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " thumbnail
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " href\n",
+ " \"https://landsatlook.usgs.gov/data/collection02/level-1/standard/oli-tirs/2019/008/011/LC08_L1TP_008011_20190507_20200828_02_T1/LC08_L1TP_008011_20190507_20200828_02_T1_thumb_small.jpeg\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " type\n",
+ " \"image/jpeg\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " title\n",
+ " \"Thumbnail image\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " alternate
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " s3
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " storage:platform\n",
+ " \"AWS\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " storage:requester_pays\n",
+ " True\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " href\n",
+ " \"s3://usgs-landsat/collection02/level-1/standard/oli-tirs/2019/008/011/LC08_L1TP_008011_20190507_20200828_02_T1/LC08_L1TP_008011_20190507_20200828_02_T1_thumb_small.jpeg\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " file:checksum\n",
+ " \"1340f87154cc5704dd8859a463daab579507540604454354feaaf7a7f5a724e9756a667edc4a966777f166ff55d46506f30a53f64bfc05aeca656f7f8eed74686ed6\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " roles\n",
+ " [] 1 items\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " 0\n",
+ " \"thumbnail\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " reduced_resolution_browse
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " href\n",
+ " \"https://landsatlook.usgs.gov/data/collection02/level-1/standard/oli-tirs/2019/008/011/LC08_L1TP_008011_20190507_20200828_02_T1/LC08_L1TP_008011_20190507_20200828_02_T1_thumb_large.jpeg\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " type\n",
+ " \"image/jpeg\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " title\n",
+ " \"Reduced resolution browse image\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " alternate
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " s3
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " storage:platform\n",
+ " \"AWS\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " storage:requester_pays\n",
+ " True\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " href\n",
+ " \"s3://usgs-landsat/collection02/level-1/standard/oli-tirs/2019/008/011/LC08_L1TP_008011_20190507_20200828_02_T1/LC08_L1TP_008011_20190507_20200828_02_T1_thumb_large.jpeg\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " file:checksum\n",
+ " \"13408ff95b52ff690149bc4eda908bd0b845257fbdc35ea5cc279cca7eb197edf470003f2633f8fc188e0e30749feddfe30eb5130025ae69a1c9aca65b1f5d60179d\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " roles\n",
+ " [] 1 items\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " 0\n",
+ " \"overview\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " index
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " href\n",
+ " \"https://landsatlook.usgs.gov/stac-browser/collection02/level-1/standard/oli-tirs/2019/008/011/LC08_L1TP_008011_20190507_20200828_02_T1/LC08_L1TP_008011_20190507_20200828_02_T1\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " type\n",
+ " \"text/html\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " title\n",
+ " \"HTML index page\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " roles\n",
+ " [] 1 items\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " 0\n",
+ " \"metadata\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " MTL.json
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " href\n",
+ " \"https://landsatlook.usgs.gov/data/collection02/level-1/standard/oli-tirs/2019/008/011/LC08_L1TP_008011_20190507_20200828_02_T1/LC08_L1TP_008011_20190507_20200828_02_T1_MTL.json\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " type\n",
+ " \"application/json\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " title\n",
+ " \"Product Metadata File (json)\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Collection 2 Level-1 Product Metadata File (json)\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " alternate
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " s3
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " storage:platform\n",
+ " \"AWS\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " storage:requester_pays\n",
+ " True\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " href\n",
+ " \"s3://usgs-landsat/collection02/level-1/standard/oli-tirs/2019/008/011/LC08_L1TP_008011_20190507_20200828_02_T1/LC08_L1TP_008011_20190507_20200828_02_T1_MTL.json\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " file:checksum\n",
+ " \"1340f37f1acff50fc0f76d079ea5da64b87bde30b846bdaddfc22bf8d3ecb358b91c149ba138c4013699bf9a0c008c3098c2d3e0e07622aeaf5a14449ae570867bf1\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " roles\n",
+ " [] 1 items\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " 0\n",
+ " \"metadata\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " coastal
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " href\n",
+ " \"https://landsatlook.usgs.gov/data/collection02/level-1/standard/oli-tirs/2019/008/011/LC08_L1TP_008011_20190507_20200828_02_T1/LC08_L1TP_008011_20190507_20200828_02_T1_B1.TIF\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " type\n",
+ " \"image/vnd.stac.geotiff; cloud-optimized=true\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " title\n",
+ " \"Coastal/Aerosol Band (B1)\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Collection 2 Level-1 Coastal/Aerosol Band (B1) Top of Atmosphere Radiance\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " eo:bands\n",
+ " [] 1 items\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 0
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"B1\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " common_name\n",
+ " \"coastal\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " gsd\n",
+ " 30\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " center_wavelength\n",
+ " 0.44\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " alternate
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " s3
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " storage:platform\n",
+ " \"AWS\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " storage:requester_pays\n",
+ " True\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " href\n",
+ " \"s3://usgs-landsat/collection02/level-1/standard/oli-tirs/2019/008/011/LC08_L1TP_008011_20190507_20200828_02_T1/LC08_L1TP_008011_20190507_20200828_02_T1_B1.TIF\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " file:checksum\n",
+ " \"1340dcff4cf50bbf402d7cabd6b13ff5c83b031ab339ce61995ae0573fe649edd11cdc852eea1fbb2fbf534d1d69b8a8738b259d6f4daa984f664305cf983832d3b2\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " roles\n",
+ " [] 1 items\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " 0\n",
+ " \"data\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " blue
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " href\n",
+ " \"https://landsatlook.usgs.gov/data/collection02/level-1/standard/oli-tirs/2019/008/011/LC08_L1TP_008011_20190507_20200828_02_T1/LC08_L1TP_008011_20190507_20200828_02_T1_B2.TIF\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " type\n",
+ " \"image/vnd.stac.geotiff; cloud-optimized=true\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " title\n",
+ " \"Blue Band (B2)\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Collection 2 Level-1 Blue Band (B2) Top of Atmosphere Radiance\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " eo:bands\n",
+ " [] 1 items\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 0
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"B2\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " common_name\n",
+ " \"blue\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " gsd\n",
+ " 30\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " center_wavelength\n",
+ " 0.48\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " alternate
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " s3
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " storage:platform\n",
+ " \"AWS\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " storage:requester_pays\n",
+ " True\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " href\n",
+ " \"s3://usgs-landsat/collection02/level-1/standard/oli-tirs/2019/008/011/LC08_L1TP_008011_20190507_20200828_02_T1/LC08_L1TP_008011_20190507_20200828_02_T1_B2.TIF\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " file:checksum\n",
+ " \"1340f0a602019909fbb3e6bd909443ef7f9adfe7efabc86586f6e5f85e941aab30f03adbde671e000852b535ce627d864c1e6c3b33011a907b9a67fa1b7e595d9f42\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " roles\n",
+ " [] 1 items\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " 0\n",
+ " \"data\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " green
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " href\n",
+ " \"https://landsatlook.usgs.gov/data/collection02/level-1/standard/oli-tirs/2019/008/011/LC08_L1TP_008011_20190507_20200828_02_T1/LC08_L1TP_008011_20190507_20200828_02_T1_B3.TIF\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " type\n",
+ " \"image/vnd.stac.geotiff; cloud-optimized=true\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " title\n",
+ " \"Green Band (B3)\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Collection 2 Level-1 Green Band (B3) Top of Atmosphere Radiance\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " eo:bands\n",
+ " [] 1 items\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 0
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"B3\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " common_name\n",
+ " \"green\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " gsd\n",
+ " 30\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " center_wavelength\n",
+ " 0.56\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " alternate
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " s3
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " storage:platform\n",
+ " \"AWS\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " storage:requester_pays\n",
+ " True\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " href\n",
+ " \"s3://usgs-landsat/collection02/level-1/standard/oli-tirs/2019/008/011/LC08_L1TP_008011_20190507_20200828_02_T1/LC08_L1TP_008011_20190507_20200828_02_T1_B3.TIF\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " file:checksum\n",
+ " \"1340390ee928fcce762ed559dd7624dac340cb11f494a4a3eaf8a410e07c8dc2efcbc8095b7b8a7753b77cd3ac484a1dc4a820412070da2fbbb26c4a8c84da65c740\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " roles\n",
+ " [] 1 items\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " 0\n",
+ " \"data\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " red
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " href\n",
+ " \"https://landsatlook.usgs.gov/data/collection02/level-1/standard/oli-tirs/2019/008/011/LC08_L1TP_008011_20190507_20200828_02_T1/LC08_L1TP_008011_20190507_20200828_02_T1_B4.TIF\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " type\n",
+ " \"image/vnd.stac.geotiff; cloud-optimized=true\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " title\n",
+ " \"Red Band (B4)\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Collection 2 Level-1 Red Band (B4) Top of Atmosphere Radiance\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " eo:bands\n",
+ " [] 1 items\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 0
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"B4\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " common_name\n",
+ " \"red\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " gsd\n",
+ " 30\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " center_wavelength\n",
+ " 0.66\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " alternate
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " s3
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " storage:platform\n",
+ " \"AWS\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " storage:requester_pays\n",
+ " True\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " href\n",
+ " \"s3://usgs-landsat/collection02/level-1/standard/oli-tirs/2019/008/011/LC08_L1TP_008011_20190507_20200828_02_T1/LC08_L1TP_008011_20190507_20200828_02_T1_B4.TIF\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " file:checksum\n",
+ " \"13407ee4ce734a8f1253e88a6ee07115ce1259780593a497277fabea9754224709f9a18f6e24c6f797b5087e139d88eb3623906f78ff346b0aab1ecec9dd74bf5e64\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " roles\n",
+ " [] 1 items\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " 0\n",
+ " \"data\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " nir08
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " href\n",
+ " \"https://landsatlook.usgs.gov/data/collection02/level-1/standard/oli-tirs/2019/008/011/LC08_L1TP_008011_20190507_20200828_02_T1/LC08_L1TP_008011_20190507_20200828_02_T1_B5.TIF\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " type\n",
+ " \"image/vnd.stac.geotiff; cloud-optimized=true\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " title\n",
+ " \"Near Infrared Band 0.8 (B5)\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Collection 2 Level-1 Near Infrared Band 0.8 (B5) Top of Atmosphere Radiance\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " eo:bands\n",
+ " [] 1 items\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 0
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"B5\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " common_name\n",
+ " \"nir08\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " gsd\n",
+ " 30\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " center_wavelength\n",
+ " 0.87\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " alternate
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " s3
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " storage:platform\n",
+ " \"AWS\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " storage:requester_pays\n",
+ " True\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " href\n",
+ " \"s3://usgs-landsat/collection02/level-1/standard/oli-tirs/2019/008/011/LC08_L1TP_008011_20190507_20200828_02_T1/LC08_L1TP_008011_20190507_20200828_02_T1_B5.TIF\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " file:checksum\n",
+ " \"13400a93071bb947a66627d3a081edd3d61120eaf1a7ca8ae05246747361c893865456f9632ffa9b71577b7b3be98dcf0126bcc265cfc680869b34a66d670c35012f\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " roles\n",
+ " [] 2 items\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " 0\n",
+ " \"data\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " 1\n",
+ " \"reflectance\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " swir16
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " href\n",
+ " \"https://landsatlook.usgs.gov/data/collection02/level-1/standard/oli-tirs/2019/008/011/LC08_L1TP_008011_20190507_20200828_02_T1/LC08_L1TP_008011_20190507_20200828_02_T1_B6.TIF\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " type\n",
+ " \"image/vnd.stac.geotiff; cloud-optimized=true\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " title\n",
+ " \"Short-wave Infrared Band 1.6 (B6)\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Collection 2 Level-1 Short-wave Infrared Band 1.6 (B6) Top of Atmosphere Radiance\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " eo:bands\n",
+ " [] 1 items\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 0
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"B6\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " common_name\n",
+ " \"swir16\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " gsd\n",
+ " 30\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " center_wavelength\n",
+ " 1.61\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " alternate
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " s3
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " storage:platform\n",
+ " \"AWS\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " storage:requester_pays\n",
+ " True\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " href\n",
+ " \"s3://usgs-landsat/collection02/level-1/standard/oli-tirs/2019/008/011/LC08_L1TP_008011_20190507_20200828_02_T1/LC08_L1TP_008011_20190507_20200828_02_T1_B6.TIF\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " file:checksum\n",
+ " \"134062a6c6a75da004aafab56bd32144d3f8771047a5dd70ec0ea95490833d650ad004c785f53d8505f7dd6944b6b427abb464c7b89bb99873d7851c83cfea527bda\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " roles\n",
+ " [] 2 items\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " 0\n",
+ " \"data\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " 1\n",
+ " \"reflectance\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " swir22
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " href\n",
+ " \"https://landsatlook.usgs.gov/data/collection02/level-1/standard/oli-tirs/2019/008/011/LC08_L1TP_008011_20190507_20200828_02_T1/LC08_L1TP_008011_20190507_20200828_02_T1_B7.TIF\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " type\n",
+ " \"image/vnd.stac.geotiff; cloud-optimized=true\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " title\n",
+ " \"Short-wave Infrared Band 2.2 (B7)\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Collection 2 Level-1 Short-wave Infrared Band 2.2 (B7) Top of Atmosphere Radiance\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " eo:bands\n",
+ " [] 1 items\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 0
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"B7\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " common_name\n",
+ " \"swir22\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " gsd\n",
+ " 30\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " center_wavelength\n",
+ " 2.2\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " alternate
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " s3
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " storage:platform\n",
+ " \"AWS\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " storage:requester_pays\n",
+ " True\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " href\n",
+ " \"s3://usgs-landsat/collection02/level-1/standard/oli-tirs/2019/008/011/LC08_L1TP_008011_20190507_20200828_02_T1/LC08_L1TP_008011_20190507_20200828_02_T1_B7.TIF\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " file:checksum\n",
+ " \"1340f5a2ec02ecabfbbe1e5c146d0a024a99ba3fe858e7d7f93294a51ee4c6b87109cdad2c59b4e6b7a4f5e42e634a8fef078fb8754ee4cd918c9b4e906bee65a550\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " roles\n",
+ " [] 2 items\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " 0\n",
+ " \"data\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " 1\n",
+ " \"reflectance\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " pan
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " href\n",
+ " \"https://landsatlook.usgs.gov/data/collection02/level-1/standard/oli-tirs/2019/008/011/LC08_L1TP_008011_20190507_20200828_02_T1/LC08_L1TP_008011_20190507_20200828_02_T1_B8.TIF\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " type\n",
+ " \"image/vnd.stac.geotiff; cloud-optimized=true\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " title\n",
+ " \"Panchromatic Band (B8)\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Collection 2 Level-1 Panchromatic Band (B8) Top of Atmosphere Radiance\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " eo:bands\n",
+ " [] 1 items\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 0
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"B8\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " common_name\n",
+ " \"pan\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " gsd\n",
+ " 15\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " center_wavelength\n",
+ " 0.59\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " alternate
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " s3
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " storage:platform\n",
+ " \"AWS\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " storage:requester_pays\n",
+ " True\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " href\n",
+ " \"s3://usgs-landsat/collection02/level-1/standard/oli-tirs/2019/008/011/LC08_L1TP_008011_20190507_20200828_02_T1/LC08_L1TP_008011_20190507_20200828_02_T1_B8.TIF\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " file:checksum\n",
+ " \"1340f2a81f05dabed172f1609c89e9ea351f2c756f65fdbd51fb6dd00098d8c7d5663d7d57609a2129c5b3fcf25147ba583738fb518e83834b011f2ffb0008de3ea9\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " proj:shape\n",
+ " [] 2 items\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " 0\n",
+ " 17541\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " 1\n",
+ " 17481\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " proj:transform\n",
+ " [] 6 items\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " 0\n",
+ " 15\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " 1\n",
+ " 0\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " 2\n",
+ " 261292.5\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " 3\n",
+ " 0\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " 4\n",
+ " -15\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " 5\n",
+ " 7855507.5\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " roles\n",
+ " [] 1 items\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " 0\n",
+ " \"data\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " cirrus
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " href\n",
+ " \"https://landsatlook.usgs.gov/data/collection02/level-1/standard/oli-tirs/2019/008/011/LC08_L1TP_008011_20190507_20200828_02_T1/LC08_L1TP_008011_20190507_20200828_02_T1_B9.TIF\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " type\n",
+ " \"image/vnd.stac.geotiff; cloud-optimized=true\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " title\n",
+ " \"Cirrus Band (B9)\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Collection 2 Level-1 Cirrus Band (B9) Top of Atmosphere Radiance\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " eo:bands\n",
+ " [] 1 items\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 0
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"B9\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " common_name\n",
+ " \"cirrus\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " gsd\n",
+ " 30\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " center_wavelength\n",
+ " 1.37\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " alternate
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " s3
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " storage:platform\n",
+ " \"AWS\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " storage:requester_pays\n",
+ " True\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " href\n",
+ " \"s3://usgs-landsat/collection02/level-1/standard/oli-tirs/2019/008/011/LC08_L1TP_008011_20190507_20200828_02_T1/LC08_L1TP_008011_20190507_20200828_02_T1_B9.TIF\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " file:checksum\n",
+ " \"13401223a49db734e01483777ca9330c7795753d4f974f237db1b661e371fd64e1eb4ca98f485729b637605c18286f0bd5be20d067690e5484cc8e4d102dd77ba014\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " roles\n",
+ " [] 1 items\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " 0\n",
+ " \"data\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " lwir11
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " href\n",
+ " \"https://landsatlook.usgs.gov/data/collection02/level-1/standard/oli-tirs/2019/008/011/LC08_L1TP_008011_20190507_20200828_02_T1/LC08_L1TP_008011_20190507_20200828_02_T1_B10.TIF\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " type\n",
+ " \"image/vnd.stac.geotiff; cloud-optimized=true\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " title\n",
+ " \"Thermal Infrared Band 10.9 (B10)\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Collection 2 Level-1 Thermal Infrared Band 10.9 (B10) Top of Atmosphere Radiance\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " eo:bands\n",
+ " [] 1 items\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 0
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"B10\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " common_name\n",
+ " \"lwir11\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " gsd\n",
+ " 100\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " center_wavelength\n",
+ " 10.9\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " alternate
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " s3
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " storage:platform\n",
+ " \"AWS\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " storage:requester_pays\n",
+ " True\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " href\n",
+ " \"s3://usgs-landsat/collection02/level-1/standard/oli-tirs/2019/008/011/LC08_L1TP_008011_20190507_20200828_02_T1/LC08_L1TP_008011_20190507_20200828_02_T1_B10.TIF\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " file:checksum\n",
+ " \"134024fd68eddf8df59bd045ba2070ce7a2a07b3670200ee2f637c7c03197956733d12b69213ed4e91d3094f4322ead9e528a3151ece2afd6498763493ff75807285\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " roles\n",
+ " [] 2 items\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " 0\n",
+ " \"data\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " 1\n",
+ " \"temperature\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " lwir12
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " href\n",
+ " \"https://landsatlook.usgs.gov/data/collection02/level-1/standard/oli-tirs/2019/008/011/LC08_L1TP_008011_20190507_20200828_02_T1/LC08_L1TP_008011_20190507_20200828_02_T1_B11.TIF\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " type\n",
+ " \"image/vnd.stac.geotiff; cloud-optimized=true\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " title\n",
+ " \"Thermal Infrared Band 12.0 (B11)\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Collection 2 Level-1 Thermal Infrared Band 12.0 (B11) Top of Atmosphere Radiance\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " eo:bands\n",
+ " [] 1 items\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 0
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"B11\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " common_name\n",
+ " \"lwir12\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " gsd\n",
+ " 100\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " center_wavelength\n",
+ " 12.01\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " alternate
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " s3
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " storage:platform\n",
+ " \"AWS\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " storage:requester_pays\n",
+ " True\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " href\n",
+ " \"s3://usgs-landsat/collection02/level-1/standard/oli-tirs/2019/008/011/LC08_L1TP_008011_20190507_20200828_02_T1/LC08_L1TP_008011_20190507_20200828_02_T1_B11.TIF\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " file:checksum\n",
+ " \"1340322de4bd2084bda1235c08301b24e9773d102cde9cdef9e568fe308f31f81d3910cac0c1624026561f0c3919d7490511de65b15005f2a2787194aa246e4e870c\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " roles\n",
+ " [] 2 items\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " 0\n",
+ " \"data\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " 1\n",
+ " \"temperature\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " qa_pixel
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " href\n",
+ " \"https://landsatlook.usgs.gov/data/collection02/level-1/standard/oli-tirs/2019/008/011/LC08_L1TP_008011_20190507_20200828_02_T1/LC08_L1TP_008011_20190507_20200828_02_T1_QA_PIXEL.TIF\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " type\n",
+ " \"image/vnd.stac.geotiff; cloud-optimized=true\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " title\n",
+ " \"Pixel Quality Assessment Band\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Collection 2 Level-1 Pixel Quality Assessment Band Top of Atmosphere Radiance\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " classification:bitfields\n",
+ " [] 12 items\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 0
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"fill\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Corresponding pixels in L1 image bands are fill\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " offset\n",
+ " 0\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " length\n",
+ " 1\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " classes\n",
+ " [] 2 items\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 0
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"not_fill\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"L1 image band pixels are not fill\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " value\n",
+ " 0\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 1
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"fill\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"L1 image band pixels are fill\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " value\n",
+ " 1\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 1
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"dilated\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Dilated cloud\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " offset\n",
+ " 1\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " length\n",
+ " 1\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " classes\n",
+ " [] 2 items\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 0
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"not_dilated\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Cloud is not dilated or no cloud\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " value\n",
+ " 0\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 1
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"dilated\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Cloud dilation\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " value\n",
+ " 1\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 2
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"cirrus\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Cirrus mask\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " offset\n",
+ " 2\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " length\n",
+ " 1\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " classes\n",
+ " [] 2 items\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 0
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"not_cirrus\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"No confidence level set or low confidence cirrus\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " value\n",
+ " 0\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 1
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"cirrus\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"High confidence cirrus\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " value\n",
+ " 1\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 3
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"cloud\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Cloud mask\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " offset\n",
+ " 3\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " length\n",
+ " 1\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " classes\n",
+ " [] 2 items\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 0
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"not_cloud\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Cloud confidence is not high\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " value\n",
+ " 0\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 1
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"cloud\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"High confidence cloud\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " value\n",
+ " 1\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 4
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"shadow\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Cloud shadow mask\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " offset\n",
+ " 4\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " length\n",
+ " 1\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " classes\n",
+ " [] 2 items\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 0
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"not_shadow\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Cloud shadow confidence is not high\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " value\n",
+ " 0\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 1
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"shadow\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"High confidence cloud shadow\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " value\n",
+ " 1\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 5
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"snow\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Snow/Ice mask\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " offset\n",
+ " 5\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " length\n",
+ " 1\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " classes\n",
+ " [] 2 items\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 0
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"not_snow\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Snow/Ice confidence is not high\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " value\n",
+ " 0\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 1
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"snow\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"High confidence snow cover\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " value\n",
+ " 1\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 6
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"clear\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Cloud or dilated cloud bits set\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " offset\n",
+ " 6\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " length\n",
+ " 1\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " classes\n",
+ " [] 2 items\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 0
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"not_clear\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Cloud or dilated cloud bits are set\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " value\n",
+ " 0\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 1
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"clear\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Cloud and dilated cloud bits are not set\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " value\n",
+ " 1\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 7
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"water\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Water mask\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " offset\n",
+ " 7\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " length\n",
+ " 1\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " classes\n",
+ " [] 2 items\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 0
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"not_water\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Land or cloud\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " value\n",
+ " 0\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 1
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"water\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Water\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " value\n",
+ " 1\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 8
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"cloud_confidence\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Cloud confidence levels\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " offset\n",
+ " 8\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " length\n",
+ " 2\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " classes\n",
+ " [] 4 items\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 0
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"not_set\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"No confidence level set\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " value\n",
+ " 0\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 1
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"low\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Low confidence cloud\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " value\n",
+ " 1\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 2
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"medium\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Medium confidence cloud\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " value\n",
+ " 2\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 3
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"high\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"High confidence cloud\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " value\n",
+ " 3\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 9
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"shadow_confidence\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Cloud shadow confidence levels\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " offset\n",
+ " 10\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " length\n",
+ " 2\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " classes\n",
+ " [] 4 items\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 0
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"not_set\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"No confidence level set\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " value\n",
+ " 0\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 1
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"low\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Low confidence cloud shadow\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " value\n",
+ " 1\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 2
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"reserved\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Reserved - value not used\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " value\n",
+ " 2\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 3
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"high\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"High confidence cloud shadow\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " value\n",
+ " 3\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 10
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"snow_confidence\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Snow/Ice confidence levels\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " offset\n",
+ " 12\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " length\n",
+ " 2\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " classes\n",
+ " [] 4 items\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 0
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"not_set\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"No confidence level set\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " value\n",
+ " 0\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 1
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"low\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Low confidence snow/ice\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " value\n",
+ " 1\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 2
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"reserved\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Reserved - value not used\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " value\n",
+ " 2\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 3
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"high\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"High confidence snow/ice\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " value\n",
+ " 3\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 11
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"cirrus_confidence\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Cirrus confidence levels\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " offset\n",
+ " 14\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " length\n",
+ " 2\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " classes\n",
+ " [] 4 items\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 0
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"not_set\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"No confidence level set\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " value\n",
+ " 0\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 1
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"low\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Low confidence cirrus\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " value\n",
+ " 1\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 2
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"reserved\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Reserved - value not used\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " value\n",
+ " 2\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 3
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"high\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"High confidence cirrus\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " value\n",
+ " 3\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " alternate
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " s3
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " storage:platform\n",
+ " \"AWS\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " storage:requester_pays\n",
+ " True\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " href\n",
+ " \"s3://usgs-landsat/collection02/level-1/standard/oli-tirs/2019/008/011/LC08_L1TP_008011_20190507_20200828_02_T1/LC08_L1TP_008011_20190507_20200828_02_T1_QA_PIXEL.TIF\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " file:checksum\n",
+ " \"1340bd1ba8811b39d3f87b9fbac994e2d8b9cdc68206de261277b72bef13eb8e4941a738af18f99e313afc2d7ecbd16c0283fb7797ed2f524bc8517fc031e25351c5\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " roles\n",
+ " [] 4 items\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " 0\n",
+ " \"cloud\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " 1\n",
+ " \"cloud-shadow\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " 2\n",
+ " \"snow-ice\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " 3\n",
+ " \"water-mask\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " qa_radsat
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " href\n",
+ " \"https://landsatlook.usgs.gov/data/collection02/level-1/standard/oli-tirs/2019/008/011/LC08_L1TP_008011_20190507_20200828_02_T1/LC08_L1TP_008011_20190507_20200828_02_T1_QA_RADSAT.TIF\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " type\n",
+ " \"image/vnd.stac.geotiff; cloud-optimized=true\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " title\n",
+ " \"Radiometric Saturation Quality Assessment Band\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Collection 2 Level-1 Radiometric Saturation Quality Assessment Band Top of Atmosphere Radiance\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " classification:bitfields\n",
+ " [] 16 items\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 0
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"band1\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Band 1 radiometric saturation\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " offset\n",
+ " 0\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " length\n",
+ " 1\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " classes\n",
+ " [] 2 items\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 0
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"not_saturated\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Band 1 is not saturated\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " value\n",
+ " 0\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 1
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"saturated\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Band 1 is saturated\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " value\n",
+ " 1\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 1
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"band2\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Band 2 radiometric saturation\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " offset\n",
+ " 1\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " length\n",
+ " 1\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " classes\n",
+ " [] 2 items\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 0
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"not_saturated\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Band 2 is not saturated\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " value\n",
+ " 0\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 1
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"saturated\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Band 2 is saturated\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " value\n",
+ " 1\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 2
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"band3\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Band 3 radiometric saturation\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " offset\n",
+ " 2\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " length\n",
+ " 1\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " classes\n",
+ " [] 2 items\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 0
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"not_saturated\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Band 3 is not saturated\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " value\n",
+ " 0\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 1
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"saturated\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Band 3 is saturated\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " value\n",
+ " 1\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 3
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"band4\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Band 4 radiometric saturation\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " offset\n",
+ " 3\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " length\n",
+ " 1\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " classes\n",
+ " [] 2 items\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 0
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"not_saturated\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Band 4 is not saturated\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " value\n",
+ " 0\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 1
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"saturated\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Band 4 is saturated\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " value\n",
+ " 1\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 4
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"band5\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Band 5 radiometric saturation\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " offset\n",
+ " 4\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " length\n",
+ " 1\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " classes\n",
+ " [] 2 items\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 0
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"not_saturated\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Band 5 is not saturated\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " value\n",
+ " 0\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 1
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"saturated\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Band 5 is saturated\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " value\n",
+ " 1\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 5
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"band6\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Band 6 radiometric saturation\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " offset\n",
+ " 5\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " length\n",
+ " 1\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " classes\n",
+ " [] 2 items\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 0
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"not_saturated\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Band 6 is not saturated\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " value\n",
+ " 0\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 1
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"saturated\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Band 6 is saturated\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " value\n",
+ " 1\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 6
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"band7\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Band 7 radiometric saturation\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " offset\n",
+ " 6\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " length\n",
+ " 1\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " classes\n",
+ " [] 2 items\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 0
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"not_saturated\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Band 7 is not saturated\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " value\n",
+ " 0\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 1
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"saturated\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Band 7 is saturated\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " value\n",
+ " 1\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 7
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"unused\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Unused bit\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " offset\n",
+ " 7\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " length\n",
+ " 1\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " classes\n",
+ " [] 1 items\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 0
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"unused\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Unused bit\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " value\n",
+ " 0\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 8
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"band9\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Band 9 radiometric saturation\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " offset\n",
+ " 8\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " length\n",
+ " 1\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " classes\n",
+ " [] 2 items\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 0
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"not_saturated\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Band 9 is not saturated\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " value\n",
+ " 0\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 1
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"saturated\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Band 9 is saturated\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " value\n",
+ " 1\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 9
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"unused\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Unused bit\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " offset\n",
+ " 9\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " length\n",
+ " 1\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " classes\n",
+ " [] 1 items\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 0
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"unused\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Unused bit\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " value\n",
+ " 0\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 10
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"unused\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Unused bit\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " offset\n",
+ " 10\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " length\n",
+ " 1\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " classes\n",
+ " [] 1 items\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 0
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"unused\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Unused bit\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " value\n",
+ " 0\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 11
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"occlusion\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Terrain not visible from sensor due to intervening terrain\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " offset\n",
+ " 11\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " length\n",
+ " 1\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " classes\n",
+ " [] 2 items\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 0
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"not_occluded\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Terrain is not occluded\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " value\n",
+ " 0\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 1
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"occluded\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Terrain is occluded\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " value\n",
+ " 1\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 12
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"unused\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Unused bit\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " offset\n",
+ " 12\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " length\n",
+ " 1\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " classes\n",
+ " [] 1 items\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 0
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"unused\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Unused bit\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " value\n",
+ " 0\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 13
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"unused\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Unused bit\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " offset\n",
+ " 13\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " length\n",
+ " 1\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " classes\n",
+ " [] 1 items\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 0
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"unused\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Unused bit\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " value\n",
+ " 0\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 14
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"unused\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Unused bit\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " offset\n",
+ " 14\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " length\n",
+ " 1\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " classes\n",
+ " [] 1 items\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 0
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"unused\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Unused bit\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " value\n",
+ " 0\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 15
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"unused\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Unused bit\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " offset\n",
+ " 15\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " length\n",
+ " 1\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " classes\n",
+ " [] 1 items\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 0
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " name\n",
+ " \"unused\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Unused bit\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " value\n",
+ " 0\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " alternate
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " s3
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " storage:platform\n",
+ " \"AWS\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " storage:requester_pays\n",
+ " True\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " href\n",
+ " \"s3://usgs-landsat/collection02/level-1/standard/oli-tirs/2019/008/011/LC08_L1TP_008011_20190507_20200828_02_T1/LC08_L1TP_008011_20190507_20200828_02_T1_QA_RADSAT.TIF\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " file:checksum\n",
+ " \"1340c7989f6e2f2452c6d831fa381023a96a6239f2468c1cab822bfeccbb0e81d09ef9e66beb25076a15b5f92e64d37fc9bc7b2a8bd841d4c23f0d5e99b00339dfe8\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " roles\n",
+ " [] 1 items\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " 0\n",
+ " \"saturation\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " ANG.txt
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " href\n",
+ " \"https://landsatlook.usgs.gov/data/collection02/level-1/standard/oli-tirs/2019/008/011/LC08_L1TP_008011_20190507_20200828_02_T1/LC08_L1TP_008011_20190507_20200828_02_T1_ANG.txt\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " type\n",
+ " \"text/plain\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " title\n",
+ " \"Angle Coefficients File\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Collection 2 Level-1 Angle Coefficients File (ANG)\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " alternate
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " s3
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " storage:platform\n",
+ " \"AWS\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " storage:requester_pays\n",
+ " True\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " href\n",
+ " \"s3://usgs-landsat/collection02/level-1/standard/oli-tirs/2019/008/011/LC08_L1TP_008011_20190507_20200828_02_T1/LC08_L1TP_008011_20190507_20200828_02_T1_ANG.txt\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " file:checksum\n",
+ " \"1340d62f86775fcb6bf2cf857977a5396da298d39a9fdb52d6629bb3512fd27f9eab1272a2e7bf98bd4ecd8182446840c2778431fd0dd43a1ad78c0643b501e813d7\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " roles\n",
+ " [] 1 items\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " 0\n",
+ " \"metadata\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " VAA
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " href\n",
+ " \"https://landsatlook.usgs.gov/data/collection02/level-1/standard/oli-tirs/2019/008/011/LC08_L1TP_008011_20190507_20200828_02_T1/LC08_L1TP_008011_20190507_20200828_02_T1_VAA.TIF\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " type\n",
+ " \"image/vnd.stac.geotiff; cloud-optimized=true\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " title\n",
+ " \"Sensor Azimuth Angle Band\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Collection 2 Level-1 Sensor Azimuth Angle Band\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " alternate
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " s3
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " storage:platform\n",
+ " \"AWS\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " storage:requester_pays\n",
+ " True\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " href\n",
+ " \"s3://usgs-landsat/collection02/level-1/standard/oli-tirs/2019/008/011/LC08_L1TP_008011_20190507_20200828_02_T1/LC08_L1TP_008011_20190507_20200828_02_T1_VAA.TIF\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " file:checksum\n",
+ " \"134002d80cf9e82ddb6461f32daa52b6f0849489ba1f6da8766e4c980a0c57f0d660fb8ad1b9af8b2df0b1cf88fc9d413daff597ba9185b83b90a1539906ec9078c5\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " roles\n",
+ " [] 1 items\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " 0\n",
+ " \"azimuth\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " VZA
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " href\n",
+ " \"https://landsatlook.usgs.gov/data/collection02/level-1/standard/oli-tirs/2019/008/011/LC08_L1TP_008011_20190507_20200828_02_T1/LC08_L1TP_008011_20190507_20200828_02_T1_VZA.TIF\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " type\n",
+ " \"image/vnd.stac.geotiff; cloud-optimized=true\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " title\n",
+ " \"Sensor Zenith Angle Band\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Collection 2 Level-1 Sensor Zenith Angle Band\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " alternate
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " s3
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " storage:platform\n",
+ " \"AWS\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " storage:requester_pays\n",
+ " True\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " href\n",
+ " \"s3://usgs-landsat/collection02/level-1/standard/oli-tirs/2019/008/011/LC08_L1TP_008011_20190507_20200828_02_T1/LC08_L1TP_008011_20190507_20200828_02_T1_VZA.TIF\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " file:checksum\n",
+ " \"1340d7400e77da79fc700141da99b3f99589949ff4ae68c0a3bb42dbd7b8e6589afbed6d96c8feb5495a3358c576605e253043d5e71ad09ec84c433c490171d5ed21\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " roles\n",
+ " [] 1 items\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " 0\n",
+ " \"data\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " SAA
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " href\n",
+ " \"https://landsatlook.usgs.gov/data/collection02/level-1/standard/oli-tirs/2019/008/011/LC08_L1TP_008011_20190507_20200828_02_T1/LC08_L1TP_008011_20190507_20200828_02_T1_SAA.TIF\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " type\n",
+ " \"image/vnd.stac.geotiff; cloud-optimized=true\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " title\n",
+ " \"Solar Azimuth Angle Band\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Collection 2 Level-1 Solar Azimuth Angle Band\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " alternate
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " s3
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " storage:platform\n",
+ " \"AWS\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " storage:requester_pays\n",
+ " True\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " href\n",
+ " \"s3://usgs-landsat/collection02/level-1/standard/oli-tirs/2019/008/011/LC08_L1TP_008011_20190507_20200828_02_T1/LC08_L1TP_008011_20190507_20200828_02_T1_SAA.TIF\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " file:checksum\n",
+ " \"1340aeccc943e32f169f13ed62b3040f9d56c9ef9f3aa4913fb053b2d3d380d383c2e0d70d6d97222ac0dfbab3d847e7af7a8c43dc8d230cf73e2485dd186c06f8bb\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " roles\n",
+ " [] 1 items\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " 0\n",
+ " \"sun-azimuth\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " SZA
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " href\n",
+ " \"https://landsatlook.usgs.gov/data/collection02/level-1/standard/oli-tirs/2019/008/011/LC08_L1TP_008011_20190507_20200828_02_T1/LC08_L1TP_008011_20190507_20200828_02_T1_SZA.TIF\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " type\n",
+ " \"image/vnd.stac.geotiff; cloud-optimized=true\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " title\n",
+ " \"Solar Zenith Angle Band\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Collection 2 Level-1 Solar Zenith Angle Band\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " alternate
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " s3
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " storage:platform\n",
+ " \"AWS\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " storage:requester_pays\n",
+ " True\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " href\n",
+ " \"s3://usgs-landsat/collection02/level-1/standard/oli-tirs/2019/008/011/LC08_L1TP_008011_20190507_20200828_02_T1/LC08_L1TP_008011_20190507_20200828_02_T1_SZA.TIF\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " file:checksum\n",
+ " \"1340b5b25eaf0db0e92b3f8d51c264541aed07204de462db88bec5b14f8f424609038c55e037258eea160000f7bc182e0ac025a141b2ca2928d8426655be194e8855\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " roles\n",
+ " [] 1 items\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " 0\n",
+ " \"data\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " MTL.txt
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " href\n",
+ " \"https://landsatlook.usgs.gov/data/collection02/level-1/standard/oli-tirs/2019/008/011/LC08_L1TP_008011_20190507_20200828_02_T1/LC08_L1TP_008011_20190507_20200828_02_T1_MTL.txt\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " type\n",
+ " \"text/plain\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " title\n",
+ " \"Product Metadata File\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Collection 2 Level-1 Product Metadata File (MTL)\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " alternate
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " s3
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " storage:platform\n",
+ " \"AWS\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " storage:requester_pays\n",
+ " True\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " href\n",
+ " \"s3://usgs-landsat/collection02/level-1/standard/oli-tirs/2019/008/011/LC08_L1TP_008011_20190507_20200828_02_T1/LC08_L1TP_008011_20190507_20200828_02_T1_MTL.txt\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " file:checksum\n",
+ " \"13409050479ffcfd16eb8ac7f83ef533308d1ff13833558eeb5f48f2ba8a192fc32885ff28d29163f19200a0525e404965c4af5c48892c763cfb4b9d8b3662fee216\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " roles\n",
+ " [] 1 items\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " 0\n",
+ " \"metadata\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " MTL.xml
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " href\n",
+ " \"https://landsatlook.usgs.gov/data/collection02/level-1/standard/oli-tirs/2019/008/011/LC08_L1TP_008011_20190507_20200828_02_T1/LC08_L1TP_008011_20190507_20200828_02_T1_MTL.xml\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " type\n",
+ " \"application/xml\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " title\n",
+ " \"Product Metadata File (xml)\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " description\n",
+ " \"Collection 2 Level-1 Product Metadata File (xml)\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " alternate
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " s3
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " storage:platform\n",
+ " \"AWS\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " storage:requester_pays\n",
+ " True\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " href\n",
+ " \"s3://usgs-landsat/collection02/level-1/standard/oli-tirs/2019/008/011/LC08_L1TP_008011_20190507_20200828_02_T1/LC08_L1TP_008011_20190507_20200828_02_T1_MTL.xml\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " file:checksum\n",
+ " \"13407003d50020e48bbf8ab39dd6dc378aa30a2faadedb5ccd9a0655f8012cf6f78f9b2d2046d3c0f7289126db9f70d63d70deddddb529b2e797d9bb495d1a8a9e7f\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " roles\n",
+ " [] 1 items\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " 0\n",
+ " \"metadata\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " bbox\n",
+ " [] 4 items\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " 0\n",
+ " -50.97097968875044\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " 1\n",
+ " 68.44897504333066\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " 2\n",
+ " -44.463480823181705\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " 3\n",
+ " 70.75209635973746\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " stac_extensions\n",
+ " [] 9 items\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " 0\n",
+ " \"https://landsat.usgs.gov/stac/landsat-extension/v1.1.1/schema.json\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " 1\n",
+ " \"https://stac-extensions.github.io/view/v1.0.0/schema.json\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " 2\n",
+ " \"https://stac-extensions.github.io/projection/v1.0.0/schema.json\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " 3\n",
+ " \"https://stac-extensions.github.io/eo/v1.0.0/schema.json\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " 4\n",
+ " \"https://stac-extensions.github.io/alternate-assets/v1.1.0/schema.json\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " 5\n",
+ " \"https://stac-extensions.github.io/storage/v1.0.0/schema.json\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " 6\n",
+ " \"https://stac-extensions.github.io/file/v1.0.0/schema.json\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " 7\n",
+ " \"https://stac-extensions.github.io/accuracy/v1.0.0/schema.json\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " 8\n",
+ " \"https://stac-extensions.github.io/classification/v1.0.0/schema.json\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " - \n",
+ " collection\n",
+ " \"landsat-c2l1\"\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ " "
+ ],
+ "text/plain": [
+ "
"
+ ]
+ },
+ "execution_count": 30,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "items"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {
+ "user_expressions": []
+ },
+ "source": [
+ "Load the geojson file into geopandas and inspect the items we want to collect"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 31,
+ "metadata": {
+ "tags": []
+ },
+ "outputs": [
+ {
+ "data": {
+ "text/html": [
+ "\n",
+ "\n",
"
\n",
" \n",
" \n",
@@ -5799,7 +21219,7 @@
"[2 rows x 25 columns]"
]
},
- "execution_count": 26,
+ "execution_count": 31,
"metadata": {},
"output_type": "execute_result"
}
@@ -5812,7 +21232,7 @@
},
{
"cell_type": "code",
- "execution_count": 27,
+ "execution_count": 32,
"metadata": {
"tags": []
},
@@ -5826,14 +21246,21 @@
"data": {
"application/vnd.holoviews_exec.v0+json": "",
"text/html": [
- "