mirror of
https://github.com/bellingcat/RS4OSINT.git
synced 2026-06-07 19:18:36 +03:00
website demo
This commit is contained in:
@@ -213,12 +213,12 @@ code span.wa { color: #60a0b0; font-weight: bold; font-style: italic; } /* Warni
|
||||
<ul id="quarto-sidebar-section-1" class="collapse list-unstyled sidebar-section depth1 show">
|
||||
<li class="sidebar-item">
|
||||
<div class="sidebar-item-container">
|
||||
<a href="./ch1.html" class="sidebar-item-text sidebar-link"><span class="chapter-number">1</span> <span class="chapter-title">Data Acquisition</span></a>
|
||||
<a href="./ch1.html" class="sidebar-item-text sidebar-link"><span class="chapter-number">1</span> <span class="chapter-title">Remote Sensing</span></a>
|
||||
</div>
|
||||
</li>
|
||||
<li class="sidebar-item">
|
||||
<div class="sidebar-item-container">
|
||||
<a href="./ch2.html" class="sidebar-item-text sidebar-link"><span class="chapter-number">2</span> <span class="chapter-title">Getting Started</span></a>
|
||||
<a href="./ch2.html" class="sidebar-item-text sidebar-link"><span class="chapter-number">2</span> <span class="chapter-title">Data Acquisition</span></a>
|
||||
</div>
|
||||
</li>
|
||||
<li class="sidebar-item">
|
||||
|
||||
@@ -210,12 +210,12 @@ code span.wa { color: #60a0b0; font-weight: bold; font-style: italic; } /* Warni
|
||||
<ul id="quarto-sidebar-section-1" class="collapse list-unstyled sidebar-section depth1 show">
|
||||
<li class="sidebar-item">
|
||||
<div class="sidebar-item-container">
|
||||
<a href="./ch1.html" class="sidebar-item-text sidebar-link"><span class="chapter-number">1</span> <span class="chapter-title">Data Acquisition</span></a>
|
||||
<a href="./ch1.html" class="sidebar-item-text sidebar-link"><span class="chapter-number">1</span> <span class="chapter-title">Remote Sensing</span></a>
|
||||
</div>
|
||||
</li>
|
||||
<li class="sidebar-item">
|
||||
<div class="sidebar-item-container">
|
||||
<a href="./ch2.html" class="sidebar-item-text sidebar-link"><span class="chapter-number">2</span> <span class="chapter-title">Getting Started</span></a>
|
||||
<a href="./ch2.html" class="sidebar-item-text sidebar-link"><span class="chapter-number">2</span> <span class="chapter-title">Data Acquisition</span></a>
|
||||
</div>
|
||||
</li>
|
||||
<li class="sidebar-item">
|
||||
|
||||
617
_book/ch1.html
617
_book/ch1.html
@@ -7,7 +7,7 @@
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=yes">
|
||||
|
||||
|
||||
<title>Google Earth Engine for OSINT - 1 Data Acquisition</title>
|
||||
<title>Google Earth Engine for OSINT - 1 Remote Sensing</title>
|
||||
<style>
|
||||
code{white-space: pre-wrap;}
|
||||
span.smallcaps{font-variant: small-caps;}
|
||||
@@ -43,6 +43,8 @@ ul.task-list li input[type="checkbox"] {
|
||||
<link href="site_libs/bootstrap/bootstrap-icons.css" rel="stylesheet">
|
||||
<link href="site_libs/bootstrap/bootstrap.min.css" rel="stylesheet" class="quarto-color-scheme" id="quarto-bootstrap" data-mode="light">
|
||||
<link href="site_libs/bootstrap/bootstrap-dark.min.css" rel="stylesheet" class="quarto-color-scheme quarto-color-alternate" id="quarto-bootstrap" data-mode="dark">
|
||||
<script src="site_libs/quarto-contrib/videojs/video.min.js"></script>
|
||||
<link href="site_libs/quarto-contrib/videojs/video-js.css" rel="stylesheet">
|
||||
<script id="quarto-search-options" type="application/json">{
|
||||
"location": "sidebar",
|
||||
"copy-button": false,
|
||||
@@ -62,9 +64,6 @@ ul.task-list li input[type="checkbox"] {
|
||||
"search-submit-button-title": "Submit"
|
||||
}
|
||||
}</script>
|
||||
<script src="site_libs/quarto-diagram/mermaid.min.js"></script>
|
||||
<script src="site_libs/quarto-diagram/mermaid-init.js"></script>
|
||||
<link href="site_libs/quarto-diagram/mermaid.css" rel="stylesheet">
|
||||
|
||||
|
||||
</head>
|
||||
@@ -75,7 +74,7 @@ ul.task-list li input[type="checkbox"] {
|
||||
<header id="quarto-header" class="headroom fixed-top">
|
||||
<nav class="quarto-secondary-nav" data-bs-toggle="collapse" data-bs-target="#quarto-sidebar" aria-controls="quarto-sidebar" aria-expanded="false" aria-label="Toggle sidebar navigation" onclick="if (window.quartoToggleHeadroom) { window.quartoToggleHeadroom(); }">
|
||||
<div class="container-fluid d-flex justify-content-between">
|
||||
<h1 class="quarto-secondary-nav-title"><span class="chapter-number">1</span> <span class="chapter-title">Data Acquisition</span></h1>
|
||||
<h1 class="quarto-secondary-nav-title"><span class="chapter-number">1</span> <span class="chapter-title">Remote Sensing</span></h1>
|
||||
<button type="button" class="quarto-btn-toggle btn" aria-label="Show secondary navigation">
|
||||
<i class="bi bi-chevron-right"></i>
|
||||
</button>
|
||||
@@ -150,12 +149,12 @@ ul.task-list li input[type="checkbox"] {
|
||||
<ul id="quarto-sidebar-section-1" class="collapse list-unstyled sidebar-section depth1 show">
|
||||
<li class="sidebar-item">
|
||||
<div class="sidebar-item-container">
|
||||
<a href="./ch1.html" class="sidebar-item-text sidebar-link active"><span class="chapter-number">1</span> <span class="chapter-title">Data Acquisition</span></a>
|
||||
<a href="./ch1.html" class="sidebar-item-text sidebar-link active"><span class="chapter-number">1</span> <span class="chapter-title">Remote Sensing</span></a>
|
||||
</div>
|
||||
</li>
|
||||
<li class="sidebar-item">
|
||||
<div class="sidebar-item-container">
|
||||
<a href="./ch2.html" class="sidebar-item-text sidebar-link"><span class="chapter-number">2</span> <span class="chapter-title">Getting Started</span></a>
|
||||
<a href="./ch2.html" class="sidebar-item-text sidebar-link"><span class="chapter-number">2</span> <span class="chapter-title">Data Acquisition</span></a>
|
||||
</div>
|
||||
</li>
|
||||
<li class="sidebar-item">
|
||||
@@ -199,56 +198,13 @@ ul.task-list li input[type="checkbox"] {
|
||||
<h2 id="toc-title">Table of contents</h2>
|
||||
|
||||
<ul>
|
||||
<li><a href="#optical-imagery" id="toc-optical-imagery" class="nav-link active" data-scroll-target="#optical-imagery"><span class="toc-section-number">1.1</span> Optical Imagery</a>
|
||||
<li><a href="#resolution" id="toc-resolution" class="nav-link active" data-scroll-target="#resolution"><span class="toc-section-number">1.1</span> Resolution</a>
|
||||
<ul class="collapse">
|
||||
<li><a href="#applications" id="toc-applications" class="nav-link" data-scroll-target="#applications">Applications</a></li>
|
||||
<li><a href="#datasets" id="toc-datasets" class="nav-link" data-scroll-target="#datasets">Datasets</a></li>
|
||||
</ul></li>
|
||||
<li><a href="#radar-imagery" id="toc-radar-imagery" class="nav-link" data-scroll-target="#radar-imagery"><span class="toc-section-number">1.2</span> Radar Imagery</a>
|
||||
<ul class="collapse">
|
||||
<li><a href="#applications-1" id="toc-applications-1" class="nav-link" data-scroll-target="#applications-1">Applications</a></li>
|
||||
<li><a href="#datasets-1" id="toc-datasets-1" class="nav-link" data-scroll-target="#datasets-1">Datasets</a></li>
|
||||
</ul></li>
|
||||
<li><a href="#nighttime-lights" id="toc-nighttime-lights" class="nav-link" data-scroll-target="#nighttime-lights"><span class="toc-section-number">1.3</span> Nighttime Lights</a>
|
||||
<ul class="collapse">
|
||||
<li><a href="#applications-2" id="toc-applications-2" class="nav-link" data-scroll-target="#applications-2">Applications</a></li>
|
||||
<li><a href="#datasets-2" id="toc-datasets-2" class="nav-link" data-scroll-target="#datasets-2">Datasets</a></li>
|
||||
</ul></li>
|
||||
<li><a href="#climate-and-atmospheric-data" id="toc-climate-and-atmospheric-data" class="nav-link" data-scroll-target="#climate-and-atmospheric-data"><span class="toc-section-number">1.4</span> Climate and Atmospheric Data</a>
|
||||
<ul class="collapse">
|
||||
<li><a href="#applications-3" id="toc-applications-3" class="nav-link" data-scroll-target="#applications-3">Applications</a></li>
|
||||
<li><a href="#datasets-3" id="toc-datasets-3" class="nav-link" data-scroll-target="#datasets-3">Datasets</a></li>
|
||||
</ul></li>
|
||||
<li><a href="#mineral-deposits" id="toc-mineral-deposits" class="nav-link" data-scroll-target="#mineral-deposits"><span class="toc-section-number">1.5</span> Mineral Deposits</a>
|
||||
<ul class="collapse">
|
||||
<li><a href="#applications-4" id="toc-applications-4" class="nav-link" data-scroll-target="#applications-4">Applications</a></li>
|
||||
<li><a href="#datasets-4" id="toc-datasets-4" class="nav-link" data-scroll-target="#datasets-4">Datasets</a></li>
|
||||
</ul></li>
|
||||
<li><a href="#fires" id="toc-fires" class="nav-link" data-scroll-target="#fires"><span class="toc-section-number">1.6</span> Fires</a>
|
||||
<ul class="collapse">
|
||||
<li><a href="#applications-5" id="toc-applications-5" class="nav-link" data-scroll-target="#applications-5">Applications</a></li>
|
||||
<li><a href="#datasets-5" id="toc-datasets-5" class="nav-link" data-scroll-target="#datasets-5">Datasets</a></li>
|
||||
</ul></li>
|
||||
<li><a href="#population-density-estimates" id="toc-population-density-estimates" class="nav-link" data-scroll-target="#population-density-estimates"><span class="toc-section-number">1.7</span> Population Density Estimates</a>
|
||||
<ul class="collapse">
|
||||
<li><a href="#applications-6" id="toc-applications-6" class="nav-link" data-scroll-target="#applications-6">Applications:</a></li>
|
||||
<li><a href="#datasets-6" id="toc-datasets-6" class="nav-link" data-scroll-target="#datasets-6">Datasets</a></li>
|
||||
</ul></li>
|
||||
<li><a href="#building-footprints" id="toc-building-footprints" class="nav-link" data-scroll-target="#building-footprints"><span class="toc-section-number">1.8</span> Building Footprints</a>
|
||||
<ul class="collapse">
|
||||
<li><a href="#applications-7" id="toc-applications-7" class="nav-link" data-scroll-target="#applications-7">Applications:</a></li>
|
||||
<li><a href="#datasets-7" id="toc-datasets-7" class="nav-link" data-scroll-target="#datasets-7">Datasets</a></li>
|
||||
</ul></li>
|
||||
<li><a href="#administrative-boundaries" id="toc-administrative-boundaries" class="nav-link" data-scroll-target="#administrative-boundaries"><span class="toc-section-number">1.9</span> Administrative Boundaries</a>
|
||||
<ul class="collapse">
|
||||
<li><a href="#applications-8" id="toc-applications-8" class="nav-link" data-scroll-target="#applications-8">Applications</a></li>
|
||||
<li><a href="#datasets-8" id="toc-datasets-8" class="nav-link" data-scroll-target="#datasets-8">Datasets</a></li>
|
||||
</ul></li>
|
||||
<li><a href="#global-power-plant-database" id="toc-global-power-plant-database" class="nav-link" data-scroll-target="#global-power-plant-database"><span class="toc-section-number">1.10</span> Global Power Plant Database</a>
|
||||
<ul class="collapse">
|
||||
<li><a href="#applications-9" id="toc-applications-9" class="nav-link" data-scroll-target="#applications-9">Applications:</a></li>
|
||||
<li><a href="#datasets-9" id="toc-datasets-9" class="nav-link" data-scroll-target="#datasets-9">Datasets</a></li>
|
||||
<li><a href="#spatial-resolution" id="toc-spatial-resolution" class="nav-link" data-scroll-target="#spatial-resolution"><span class="toc-section-number">1.1.1</span> Spatial Resolution</a></li>
|
||||
<li><a href="#spectral-resolution" id="toc-spectral-resolution" class="nav-link" data-scroll-target="#spectral-resolution"><span class="toc-section-number">1.1.2</span> Spectral Resolution</a></li>
|
||||
<li><a href="#temporal-resolution" id="toc-temporal-resolution" class="nav-link" data-scroll-target="#temporal-resolution"><span class="toc-section-number">1.1.3</span> Temporal Resolution</a></li>
|
||||
</ul></li>
|
||||
<li><a href="#orbits" id="toc-orbits" class="nav-link" data-scroll-target="#orbits"><span class="toc-section-number">1.2</span> Orbits</a></li>
|
||||
</ul>
|
||||
<div class="toc-actions"><div><i class="bi bi-github"></i></div><div class="action-links"><p><a href="https://github.com/oballinger/GEE_OSINT/edit/main/ch1.qmd" class="toc-action">Edit this page</a></p></div></div></nav>
|
||||
</div>
|
||||
@@ -257,7 +213,7 @@ ul.task-list li input[type="checkbox"] {
|
||||
|
||||
<header id="title-block-header" class="quarto-title-block default">
|
||||
<div class="quarto-title">
|
||||
<h1 class="title d-none d-lg-block"><span class="chapter-number">1</span> <span class="chapter-title">Data Acquisition</span></h1>
|
||||
<h1 class="title d-none d-lg-block"><span class="chapter-number">1</span> <span class="chapter-title">Remote Sensing</span></h1>
|
||||
</div>
|
||||
|
||||
|
||||
@@ -272,520 +228,58 @@ ul.task-list li input[type="checkbox"] {
|
||||
|
||||
</header>
|
||||
|
||||
<p>One of the main advantages of GEE is that it hosts several Petabytes of satellite imagery and other spatial data sets, <a href="https://developers.google.com/earth-engine/datasets">all in one place</a>. Among these are a many that could prove useful to those investigating illegal mining and logging, estimating conflict-induced damage, monitoring pollution from extractive industries, conducting maritime surveillance without relying on ship transponders, verifying the locations of artillery strikes, tracking missile defense systems, and many other topics.</p>
|
||||
<p>This section highlights ten categories of geospatial data available natively in the GEE catalogue ranging from optical satellite imagery, to atmospheric data, to building footprints. Each sub-section provides an overview of the given data type, suggests potential applications, and lists the corresponding datasets in the GEE catalogue. The datasets listed under each heading are <strong>not</strong> an exhaustive list– there are over 500 in the whole catalogue, and the ones listed in this section are simply the ones with the most immediate relevance to open source investigations. If a particular geospatial dataset you want to work with isn’t hosted in the GEE catalog, you can upload your own data. We’ll cover that in the next section.</p>
|
||||
<section id="optical-imagery" class="level2" data-number="1.1">
|
||||
<h2 data-number="1.1" class="anchored" data-anchor-id="optical-imagery"><span class="header-section-number">1.1</span> Optical Imagery</h2>
|
||||
<p><a href="https://www.sciencedirect.com/topics/medicine-and-dentistry/remote-sensing">Remote sensing</a> is the science of obtaining information about an object or phenomenon without making physical contact with the object. Remote sensing can be done with various types of electromagnetic radiation such as visible, infrared, or microwave. The electromagnetic radiation is either emitted or reflected from the object being sensed. The reflected radiation is then collected by a sensor and processed to obtain information about the object.</p>
|
||||
<p><img src="./images/diagram.png" class="img-fluid"></p>
|
||||
<p>passive remote sensing is the collection of information about an object or phenomenon without the use of an active energy source. Passive remote sensing is done by collecting the energy emitted or reflected from the object being sensed. Passive remote sensing is done with various types of electromagnetic radiation such as visible, infrared, or microwave. The electromagnetic radiation is either emitted or reflected from the object being sensed. The reflected radiation is then collected by a sensor and processed to obtain information about the object.</p>
|
||||
<section id="resolution" class="level2" data-number="1.1">
|
||||
<h2 data-number="1.1" class="anchored" data-anchor-id="resolution"><span class="header-section-number">1.1</span> Resolution</h2>
|
||||
<p>Resolution is one of the most important attributes of satellite imagery.</p>
|
||||
<p>here are three types of resolution: spatial, spectral, and temporal.</p>
|
||||
<section id="spatial-resolution" class="level3" data-number="1.1.1">
|
||||
<h3 data-number="1.1.1" class="anchored" data-anchor-id="spatial-resolution"><span class="header-section-number">1.1.1</span> Spatial Resolution</h3>
|
||||
<p>Spatial resolution governs how “sharp” an image looks. The Google Maps satellite basemap, for example, is really sharp Most of the optical imagery that is freely available has relatively low spatial resolution (it looks more grainy than, for example, the Google satellite basemap),</p>
|
||||
<p><img src="./images/Landsat.png" class="img-fluid"> <img src="./images/Sentinel2.png" class="img-fluid"> <img src="./images/Maxar.png" class="img-fluid"></p>
|
||||
<p><img src="./images/kh11.png" class="img-fluid"></p>
|
||||
</section>
|
||||
<section id="spectral-resolution" class="level3" data-number="1.1.2">
|
||||
<h3 data-number="1.1.2" class="anchored" data-anchor-id="spectral-resolution"><span class="header-section-number">1.1.2</span> Spectral Resolution</h3>
|
||||
<p>What open source imagery lacks in spatial resolution it often makes up for with <em>spectral</em> resolution. Really sharp imagery from MAXAR, for example, collects</p>
|
||||
<p>Different materials reflect light differently. An apple absorbs shorter wavelengths (e.g. blue and green), and reflects longer wavelengths (red). Our eyes use that information– the color– to distinguish between different objects. But our eyes can only see a relatively small sliver of the electromagnetic spectrum covering blue, yellow, and red; we can’t see UV or infrared wavelengths, for example, though the extent to which different materials reflect or absorb these wavelengths is just as useful for distinguishing between them. For example, Astroturf (fake plastic grass) and real grass will both look green to us, espeically from a satellite image. But living plants absorb radiation from the sun in a part of the light spectrum that we can’t see. There’s a spectral index called the Normalized Difference Vegetation Index (NDVI) which exploits this fact to isolate vegetation in multispectral satellite imagery. So if we look at <a href="https://en.wikipedia.org/wiki/Gillette_Stadium">Gilette Stadium</a> near Boston, we can tell that the three training fields south of the stadium are real grass (they generate high NDVI values, showing up red), while the pitch in the stadium itself is astroturf (generating low NDVI values, showing up blue).</p>
|
||||
<div class="quarto-figure quarto-figure-center">
|
||||
<figure class="figure">
|
||||
<p><img src="./images/hasankeyf.gif" class="img-fluid figure-img"></p>
|
||||
<p></p><figcaption class="figure-caption">Sentinel-2 timelapse showing the ancient city of Hasankeyf being flooded following the construction of a dam by the Turkish government.</figcaption><p></p>
|
||||
<p><img src="images/NDVI.jpg" class="img-fluid figure-img"></p>
|
||||
<p></p><figcaption class="figure-caption">VHR image of Gilette Stadium with Sentinel-2 derived NDVI overlay</figcaption><p></p>
|
||||
</figure>
|
||||
</div>
|
||||
<p>Optical satellite imagery is the bread and butter of many open source investiagtions. It would be tough to list off all of the possible use cases, so here’s a handy flowchart:</p>
|
||||
<div class="cell">
|
||||
<div class="cell-output-display">
|
||||
<div>
|
||||
<p>
|
||||
</p><pre class="mermaid mermaid-js" data-tooltip-selector="#mermaid-tooltip-1">%%{init: {'theme': 'base', 'themeVariables': { 'primaryColor': '#FFFFFF' ,'primaryBorderColor':'#000000' , 'lineColor':'#009933'}}}%%
|
||||
|
||||
flowchart
|
||||
A(Does it happen outside?)
|
||||
A--> B(Yes)
|
||||
A--> C(No)
|
||||
D(Is it very small?)
|
||||
B-->D
|
||||
E(Yes)
|
||||
F(No)
|
||||
D-->F
|
||||
D-->E
|
||||
G(Use optical satellite imagery)
|
||||
H(Don't use optical satellite imagery)
|
||||
E-->H
|
||||
F-->G
|
||||
C-->H
|
||||
</pre>
|
||||
<div id="mermaid-tooltip-1" class="mermaidTooltip">
|
||||
|
||||
</div>
|
||||
<p></p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<p>This is, of course, a bit of an exaggeration. But if you’re interested in a visible phenomenon that happens outdoors and that isn’t very tiny, chances are an earth-observing satellite has taken a picture of it. What that picture can tell you naturally depends on what you’re interested in learning. For a deeper dive into analyzing optical satellite imagery, see the subsection on <a href="./ch3.html#multispectral-remote-sensing-remote_sensing">multispectral remote sensing.</a>.</p>
|
||||
<p>There are several different types of optical satellite imagery available in the GEE catalogue. The main collections are the Landsat and Sentinel series of satellites, which are operated by NASA and the European Space Agency, respectively. Landsat satellites have been in orbit since 1972, and Sentinel satellites have been in orbit since 2015. Norway’s International Climate and Forest Initiative (NICFI) has also contributed to the GEE catalogue by providing a collection of optical imagery from Planet’s PlanetScope satellites. These are higher resolution (4.7 meters per pixel) than Landsat (30m/px) and Sentinel-2 (10m/px), but are only available for the tropics. Even higher resolution imagery (60cm/px) is available from the GEE catalogue from the National Agriculture Imagery Program, but it is only available for the United States. For more details, see the “Datasets” section below.</p>
|
||||
<section id="applications" class="level3 unnumbered">
|
||||
<h3 class="unnumbered anchored" data-anchor-id="applications">Applications</h3>
|
||||
<p>In other words, even though these fields are all green and indistinguishable to the human eye, their <em>spectral profiles</em> beyond the visible light spectrum differ, and we can use this information to distinguish between them. Below is a plot of the spectral profiles of different materials, including oil.</p>
|
||||
<iframe title="Spectral Profiles of Different Materials" aria-label="Interactive line chart" id="datawrapper-chart-b1kcX" src="https://datawrapper.dwcdn.net/b1kcX/3/" scrolling="no" frameborder="0" style="width: 0; min-width: 100% !important; border: none;" height="400">
|
||||
</iframe>
|
||||
<script type="text/javascript">!function(){"use strict";window.addEventListener("message",(function(e){if(void 0!==e.data["datawrapper-height"]){var t=document.querySelectorAll("iframe");for(var a in e.data["datawrapper-height"])for(var r=0;r<t.length;r++){if(t[r].contentWindow===e.source)t[r].style.height=e.data["datawrapper-height"][a]+"px"}}}))}();
|
||||
</script>
|
||||
<p>The European Space Agency’s Sentinel-2 satellite collects spectral information well beyond the visible light spectrum, enabling this sort of analysis. It chops the electromagnetic spectrum up into “bands”, and measures how strongly wavelengths in each of those bands is reflected:</p>
|
||||
<p><img src="images/S2_bands.png" class="img-fluid"></p>
|
||||
<p>We’ll be using this satellite to distinguish between oil and other materials, similar to the way we were able to distinguish between real and fake grass at Gilette Stadium. First, we’ll have to do a bit of pre-processing on the Sentinel-2 imagery after which we’ll train a machine learning model to identify oil.</p>
|
||||
</section>
|
||||
<section id="temporal-resolution" class="level3" data-number="1.1.3">
|
||||
<h3 data-number="1.1.3" class="anchored" data-anchor-id="temporal-resolution"><span class="header-section-number">1.1.3</span> Temporal Resolution</h3>
|
||||
<p>Finally, the frequency with which we There is often a tradeoff between spatial and temporal resolution.</p>
|
||||
<p>The Google Maps basemap is very high resolution, available globally, and is freely available. But it has no <em>temporal</em> dimension: it’s a snapshot from one particular point in time. If the thing we’re interested in involves <em>changes</em> over time, this basemap will be of limited use.</p>
|
||||
<p>The <strong>“revisit rate”</strong> is the amount of time it takes for the satellite to pass over the same location twice. The revisit rate is inversely proportional to the satellite’s altitude: the higher the satellite is, the more frequently it can pass over the same location. This generally means that there’s a tradeoff between spatial resolution and temporal resolution: the higher the spatial resolution, the lower the revisit rate. However, some satellite constellations such as Planet’s SkySat are able to achieve both high spatial and temporal resolution by launching lots of small satellites into orbit at once. Below is a comparison of revisit rates for various satellites:</p>
|
||||
<ul>
|
||||
<li>Geolocating pictures
|
||||
<ul>
|
||||
<li>Some of Bellingcat’s <a href="https://www.bellingcat.com/resources/how-tos/2014/07/09/verification-and-geolocation-tricks-and-tips-with-google-earth/">earliest work</a> involved figuring out where a picture was taken by cross-referencing it with optical satellite imagery.</li>
|
||||
</ul></li>
|
||||
<li>General surveillance
|
||||
<ul>
|
||||
<li><a href="https://web.archive.org/web/20220415054905/https://fas.org/blogs/security/2021/11/a-closer-look-at-chinas-missile-silo-construction/">Monitoring</a> Chinese missile silo construction.</li>
|
||||
<li>Amassing <a href="https://www.nytimes.com/2022/04/04/world/europe/bucha-ukraine-bodies.html">evidence</a> of genocide in Bucha, Ukraine</li>
|
||||
</ul></li>
|
||||
<li>Damage detection
|
||||
<ul>
|
||||
<li><a href="https://www.theguardian.com/world/2022/oct/27/before-and-after-satellite-imagery-will-track-ukraine-cultural-damage-un-says">Ukraine</a></li>
|
||||
<li><a href="https://reliefweb.int/report/mali/satellite-imagery-conflict-affected-areas-how-technology-can-support-wfp-emergency">Mali</a></li>
|
||||
<li><a href="https://www.pnas.org/doi/pdf/10.1073/pnas.2025400118">Around the World</a></li>
|
||||
</ul></li>
|
||||
<li>Verifying the locations of artillery/missile/drone strikes
|
||||
<ul>
|
||||
<li>The <a href="https://www.cnbc.com/2019/09/17/satellite-photos-show-extent-of-damage-to-saudi-aramco-plants.html">2019 attack</a> on Saudi Arabia’s Abqaiq oil processing facility.</li>
|
||||
</ul></li>
|
||||
<li>Monitoring illegal mining/logging
|
||||
<ul>
|
||||
<li>Global Witness <a href="https://www.globalwitness.org/en/campaigns/natural-resource-governance/myanmars-poisoned-mountains/">investigation</a> into illegal mining by militias in Myanmar.</li>
|
||||
<li>Tracking <a href="https://www.theguardian.com/environment/2016/mar/02/new-satellite-mapping-a-game-changer-against-illegal-logging">illegal logging</a> across the world.</li>
|
||||
</ul></li>
|
||||
<li><a href="https://sentinels.copernicus.eu/web/sentinel/user-guides/sentinel-1-sar/revisit-and-coverage">Sentinel 1</a>: 3 days (6 days as of 23/12/21, since Sentinel-1B was decomisioned)</li>
|
||||
<li><a href="https://sentinel.esa.int/web/sentinel/missions/sentinel-2">Sentinel 2</a>: 5 days</li>
|
||||
<li><a href="https://landsat.gsfc.nasa.gov/satellites/landsat-9/#:~:text=Landsat%209%20replaces%20Landsat%207,for%20Landsat%208%20%2B%20Landsat%207.">Landsat 8-9</a>: 8 days</li>
|
||||
<li><a href="https://www.planet.com/pulse/12x-rapid-revisit-announcement/">Planet SkySat</a>: 2-3 hours</li>
|
||||
</ul>
|
||||
</section>
|
||||
<section id="datasets" class="level3 unnumbered">
|
||||
<h3 class="unnumbered anchored" data-anchor-id="datasets">Datasets</h3>
|
||||
<table class="table">
|
||||
<thead>
|
||||
<tr class="header">
|
||||
<th>Sensor</th>
|
||||
<th>Timeframe</th>
|
||||
<th>Resolution</th>
|
||||
<th>Coverage</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr class="odd">
|
||||
<td><a href="https://developers.google.com/earth-engine/datasets/catalog/landsat-mss">Landsat 1-5</a></td>
|
||||
<td>1972–1999</td>
|
||||
<td>30m</td>
|
||||
<td>Global</td>
|
||||
</tr>
|
||||
<tr class="even">
|
||||
<td><a href="https://developers.google.com/earth-engine/datasets/catalog/LANDSAT_LE07_C02_T1_L2">Landsat 7</a></td>
|
||||
<td>1999–2021</td>
|
||||
<td>30m</td>
|
||||
<td>Global</td>
|
||||
</tr>
|
||||
<tr class="odd">
|
||||
<td><a href="https://developers.google.com/earth-engine/datasets/catalog/LANDSAT_LC08_C02_T1_L2">Landsat 8</a></td>
|
||||
<td>2013–Present</td>
|
||||
<td>30m</td>
|
||||
<td>Global</td>
|
||||
</tr>
|
||||
<tr class="even">
|
||||
<td><a href="https://developers.google.com/earth-engine/datasets/catalog/LANDSAT_LC09_C02_T1_L2">Landsat 9</a></td>
|
||||
<td>2021–Present</td>
|
||||
<td>30m</td>
|
||||
<td>Global</td>
|
||||
</tr>
|
||||
<tr class="odd">
|
||||
<td><a href="https://developers.google.com/earth-engine/datasets/catalog/COPERNICUS_S2_SR_HARMONIZED">Sentinel-2</a></td>
|
||||
<td>2015–Present</td>
|
||||
<td>10m</td>
|
||||
<td>Global</td>
|
||||
</tr>
|
||||
<tr class="even">
|
||||
<td><a href="https://developers.google.com/earth-engine/datasets/tags/nicfi">NICFI</a></td>
|
||||
<td>2015-Present</td>
|
||||
<td>4.7m</td>
|
||||
<td>Tropics</td>
|
||||
</tr>
|
||||
<tr class="odd">
|
||||
<td><a href="https://developers.google.com/earth-engine/datasets/catalog/USDA_NAIP_DOQQ">NAIP</a></td>
|
||||
<td>2002-2021</td>
|
||||
<td>0.6m</td>
|
||||
<td>USA</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</section>
|
||||
</section>
|
||||
<section id="radar-imagery" class="level2" data-number="1.2">
|
||||
<h2 data-number="1.2" class="anchored" data-anchor-id="radar-imagery"><span class="header-section-number">1.2</span> Radar Imagery</h2>
|
||||
<div class="quarto-figure quarto-figure-center">
|
||||
<figure class="figure">
|
||||
<p><img src="./images/radar ships.jpg" class="img-fluid figure-img"></p>
|
||||
<p></p><figcaption class="figure-caption">Ships and interference from a radar system are visible in Zhuanghe Wan, near North Korea.</figcaption><p></p>
|
||||
</figure>
|
||||
</div>
|
||||
<section id="applications-1" class="level3 unnumbered">
|
||||
<h3 class="unnumbered anchored" data-anchor-id="applications-1">Applications</h3>
|
||||
<ul>
|
||||
<li>Change/Damage detection</li>
|
||||
<li>Tracking military radar systems</li>
|
||||
<li>Maritime surveillance</li>
|
||||
<li>Monitoring illegal mining/logging</li>
|
||||
</ul>
|
||||
</section>
|
||||
<section id="datasets-1" class="level3 unnumbered">
|
||||
<h3 class="unnumbered anchored" data-anchor-id="datasets-1">Datasets</h3>
|
||||
<table class="table">
|
||||
<thead>
|
||||
<tr class="header">
|
||||
<th>Sensor</th>
|
||||
<th>Timeframe</th>
|
||||
<th>Resolution</th>
|
||||
<th>Coverage</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr class="odd">
|
||||
<td><a href="https://developers.google.com/earth-engine/datasets/catalog/COPERNICUS_S1_GRD">Sentinel 1</a></td>
|
||||
<td>2014-Present</td>
|
||||
<td>10m</td>
|
||||
<td>Global</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</section>
|
||||
</section>
|
||||
<section id="nighttime-lights" class="level2" data-number="1.3">
|
||||
<h2 data-number="1.3" class="anchored" data-anchor-id="nighttime-lights"><span class="header-section-number">1.3</span> Nighttime Lights</h2>
|
||||
<div class="quarto-figure quarto-figure-center">
|
||||
<figure class="figure">
|
||||
<p><img src="./images/Figure_1.gif" class="img-fluid figure-img"></p>
|
||||
<p></p><figcaption class="figure-caption">A timelapse of nighttime lights over Northern Iraq showing the capture and liberation of Mosul by ISIS.</figcaption><p></p>
|
||||
</figure>
|
||||
</div>
|
||||
<p>Satellite images of the Earth at night a useful proxy for human activity. The brightness of a given area at night is a function of the number of people living there and the nature of their activities. The effects of conflict, natural disasters, and economic development can all be inferred from changes in nighttime lights.</p>
|
||||
<p>The timelapse above reveals a number of interesting things: The capture of Mosul by ISIS in 2014 and the destruction of its infrastructure during the fighting (shown as the city darkening), as well as the liberation of the city by the Iraqi military in 2017 are all visible in nighttime lights. The code to create this gif, as well as a more in-depth tutorial on the uses of nighttime lights, can be found in the <a href="./SyriaNTL.html">“War at Night”</a> case study.</p>
|
||||
<section id="applications-2" class="level3 unnumbered">
|
||||
<h3 class="unnumbered anchored" data-anchor-id="applications-2">Applications</h3>
|
||||
<ul>
|
||||
<li>Damage detection</li>
|
||||
<li>Identifying gas flaring/oil production</li>
|
||||
<li>Identifying urban areas/military bases illuminated at night</li>
|
||||
</ul>
|
||||
</section>
|
||||
<section id="datasets-2" class="level3 unnumbered">
|
||||
<h3 class="unnumbered anchored" data-anchor-id="datasets-2">Datasets</h3>
|
||||
<table class="table">
|
||||
<thead>
|
||||
<tr class="header">
|
||||
<th>Sensor</th>
|
||||
<th>Timeframe</th>
|
||||
<th>Resolution</th>
|
||||
<th>Coverage</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr class="odd">
|
||||
<td><a href="https://developers.google.com/earth-engine/datasets/catalog/NOAA_DMSP-OLS_NIGHTTIME_LIGHTS">DMSP-OLS</a></td>
|
||||
<td>1992-2014</td>
|
||||
<td>927m</td>
|
||||
<td>Global</td>
|
||||
</tr>
|
||||
<tr class="even">
|
||||
<td><a href="https://developers.google.com/earth-engine/datasets/catalog/NOAA_VIIRS_DNB_MONTHLY_V1_VCMSLCFG">VIIRS</a></td>
|
||||
<td>2014-Present</td>
|
||||
<td>463m</td>
|
||||
<td>Global</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</section>
|
||||
</section>
|
||||
<section id="climate-and-atmospheric-data" class="level2" data-number="1.4">
|
||||
<h2 data-number="1.4" class="anchored" data-anchor-id="climate-and-atmospheric-data"><span class="header-section-number">1.4</span> Climate and Atmospheric Data</h2>
|
||||
<div class="quarto-figure quarto-figure-center">
|
||||
<figure class="figure">
|
||||
<p><img src="./images/mishraq_small.gif" class="img-fluid figure-img"></p>
|
||||
<p></p><figcaption class="figure-caption">Sulphur Dioxide plume resulting from ISIS attack on the Al-Mishraq Sulphur Plant in Iraq</figcaption><p></p>
|
||||
</figure>
|
||||
</div>
|
||||
<p>Climate and atmospheric data can be used to track the effects of conflict on the environment. The European Space Agency’s Sentinel-5p satellites measure the concentration of a number of atmospheric gases, including nitrogen dioxide, methane, and ozone. Measurements are available on a daily basis at a fairly high resolution (1km), allowing for the detection of localized sources of pollution such as oil refineries or power plants. For example, see this <a href="https://www.bellingcat.com/resources/2021/04/15/what-oil-satellite-technology-and-iraq-can-tell-us-about-pollution/">Bellingcat article</a> in which Wim Zwijnenburg and I trace pollution to specific facilities operated by multinational oil companies in Iraq.</p>
|
||||
<p>The Copernicus Atmosphere Monitoring Service (CAMS) provides similar data at a lower spatial resolution (45km), but measurements are avaialble on an hourly basis. The timelapse above utilizes CAMS data to show a sulphur dioxide plume resulting from an ISIS attack on the Al-Mishraq Sulphur Plant in Iraq. The plant was used to produce sulphuric acid, for use in fertilizers and pesticides. The attack destroyed the plant, causing a fire which burned for a month and released <a href="https://earthobservatory.nasa.gov/images/88994/sulfur-dioxide-spreads-over-iraq">21 kilotons</a> of sulphur dioxide into the atmosphere per day; the largest human-made release of sulphur dioxide in history.</p>
|
||||
<section id="applications-3" class="level3 unnumbered">
|
||||
<h3 class="unnumbered anchored" data-anchor-id="applications-3">Applications</h3>
|
||||
<ul>
|
||||
<li>Monitoring of airborne pollution</li>
|
||||
<li>Tracing pollution back to specific facilities and companies</li>
|
||||
<li>Visualizing the effects of one-off environmental catastrophes
|
||||
<ul>
|
||||
<li>Nordstream 1 leak</li>
|
||||
<li>ISIS setting Mishraq sulphur plant on fire</li>
|
||||
</ul></li>
|
||||
</ul>
|
||||
</section>
|
||||
<section id="datasets-3" class="level3 unnumbered">
|
||||
<h3 class="unnumbered anchored" data-anchor-id="datasets-3">Datasets</h3>
|
||||
<table class="table">
|
||||
<thead>
|
||||
<tr class="header">
|
||||
<th>Sensor</th>
|
||||
<th>Timeframe</th>
|
||||
<th>Resolution</th>
|
||||
<th>Coverage</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr class="odd">
|
||||
<td><a href="https://developers.google.com/earth-engine/datasets/catalog/ECMWF_CAMS_NRT">CAMS NRT</a></td>
|
||||
<td>2016-Present</td>
|
||||
<td>44528m</td>
|
||||
<td>Global</td>
|
||||
</tr>
|
||||
<tr class="even">
|
||||
<td><a href="https://developers.google.com/earth-engine/datasets/catalog/sentinel-5p">Sentinel-5p</a></td>
|
||||
<td>2018-Present</td>
|
||||
<td>1113m</td>
|
||||
<td>Global</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</section>
|
||||
</section>
|
||||
<section id="mineral-deposits" class="level2" data-number="1.5">
|
||||
<h2 data-number="1.5" class="anchored" data-anchor-id="mineral-deposits"><span class="header-section-number">1.5</span> Mineral Deposits</h2>
|
||||
<div class="quarto-figure quarto-figure-center">
|
||||
<figure class="figure">
|
||||
<p><img src="./images/mining.jpg" class="img-fluid figure-img"></p>
|
||||
<p></p><figcaption class="figure-caption">Zinc deposits across Central Africa</figcaption><p></p>
|
||||
</figure>
|
||||
</div>
|
||||
<p>Mining activities often play an important role in conflict. According to an influential <a href="https://www.aeaweb.org/articles?id=10.1257/aer.20150774">study</a>, “the historical rise in mineral prices might explain up to one-fourth of the average level of violence across African countries” between 1997 and 2010. Data on the location of mineral deposits can be used to identify areas where mining activities are likely to be taking place, and several such datasets are available in Google Earth Engine.</p>
|
||||
<section id="applications-4" class="level3 unnumbered">
|
||||
<h3 class="unnumbered anchored" data-anchor-id="applications-4">Applications</h3>
|
||||
<ul>
|
||||
<li>Monitoring mining activity</li>
|
||||
<li>Identifying areas where mining activities are likely to be taking place</li>
|
||||
<li>Mapping the distribution of resources in rebel held areas in conflicts fueled by resource extraction</li>
|
||||
</ul>
|
||||
</section>
|
||||
<section id="datasets-4" class="level3 unnumbered">
|
||||
<h3 class="unnumbered anchored" data-anchor-id="datasets-4">Datasets</h3>
|
||||
<table class="table">
|
||||
<thead>
|
||||
<tr class="header">
|
||||
<th>Sensor</th>
|
||||
<th>Timeframe</th>
|
||||
<th>Resolution</th>
|
||||
<th>Coverage</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr class="odd">
|
||||
<td><a href="https://developers.google.com/earth-engine/datasets/tags/isda">iSDA</a></td>
|
||||
<td>2001-2017</td>
|
||||
<td>30m</td>
|
||||
<td>Africa</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</section>
|
||||
</section>
|
||||
<section id="fires" class="level2" data-number="1.6">
|
||||
<h2 data-number="1.6" class="anchored" data-anchor-id="fires"><span class="header-section-number">1.6</span> Fires</h2>
|
||||
<div class="quarto-figure quarto-figure-center">
|
||||
<figure class="figure">
|
||||
<p><img src="./images/fires.jpg" class="img-fluid figure-img"></p>
|
||||
<p></p><figcaption class="figure-caption">Detected fires over Ukraine since 27/02/2022 showing the frontline of the war</figcaption><p></p>
|
||||
</figure>
|
||||
</div>
|
||||
<p>Earth-observing satellites can detect “thermal anomalies” (fires) from space. NASA’s Fire Information for Resource Management System (FIRMS) provides daily data on active fires in near real time, going back to the year 2000. Carlos Gonzales wrote a comprehensive <a href="https://www.bellingcat.com/resources/2022/10/04/scorched-earth-using-nasa-fire-data-to-monitor-war-zones/">Bellingcat article</a> on the use of FIRMS to monitor war zones from Ukraine to Ethiopia. The map above shows that FIRMS detected fires over Eastern Ukraine trace the frontline of the war.</p>
|
||||
<p>FIRMS data are derived from the MODIS satellite, but only show the central location and intensity of a detected fire. Another MODIS product (linked in the table below) generates a monthly map of burned areas, which can be used to assess the spatial extent of fires.</p>
|
||||
<section id="applications-5" class="level3 unnumbered">
|
||||
<h3 class="unnumbered anchored" data-anchor-id="applications-5">Applications</h3>
|
||||
<ul>
|
||||
<li>Identification of possible artillery strikes/fighting in places like Ukraine</li>
|
||||
<li>Environmental warfare and “scorched earth” policies</li>
|
||||
<li>Large scale arson
|
||||
<ul>
|
||||
<li>e.g. <a href="https://citizenevidence.org/2021/02/26/using-viirs-fire-data-for-human-rights-research/">Refugee camps burned down in Myanmar</a></li>
|
||||
</ul></li>
|
||||
</ul>
|
||||
</section>
|
||||
<section id="datasets-5" class="level3 unnumbered">
|
||||
<h3 class="unnumbered anchored" data-anchor-id="datasets-5">Datasets</h3>
|
||||
<table class="table">
|
||||
<thead>
|
||||
<tr class="header">
|
||||
<th>Sensor</th>
|
||||
<th>Timeframe</th>
|
||||
<th>Resolution</th>
|
||||
<th>Coverage</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr class="odd">
|
||||
<td><a href="https://developers.google.com/earth-engine/datasets/catalog/FIRMS">FIRMS</a></td>
|
||||
<td>2000-Present</td>
|
||||
<td>1000m</td>
|
||||
<td>Global</td>
|
||||
</tr>
|
||||
<tr class="even">
|
||||
<td><a href="https://developers.google.com/earth-engine/datasets/catalog/CIESIN_GPWv411_GPW_Population_Count">MODIS Burned Area</a></td>
|
||||
<td>2000-Present</td>
|
||||
<td>500m</td>
|
||||
<td>Global</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</section>
|
||||
</section>
|
||||
<section id="population-density-estimates" class="level2" data-number="1.7">
|
||||
<h2 data-number="1.7" class="anchored" data-anchor-id="population-density-estimates"><span class="header-section-number">1.7</span> Population Density Estimates</h2>
|
||||
<div class="quarto-figure quarto-figure-center">
|
||||
<figure class="figure">
|
||||
<p><img src="./images/pop.jpg" class="img-fluid figure-img"></p>
|
||||
<p></p><figcaption class="figure-caption">Population density estimates around Pyongyang, North Korea</figcaption><p></p>
|
||||
</figure>
|
||||
</div>
|
||||
<p>Sometimes, we may want to get an estimate the population in a specific area to ballpark how many people might be affected by a natural disaster, a counteroffensive, or a missile strike. You can’t really google “what is the population in this rectangle i’ve drawn in Northeastern Syria?” and get a good answer. Luckily, there are several spatial population datasets hosted in GEE that let you do just that. Some, such as WorldPop, provide estimated breakdowns by age and sex as well. However, it is extremely important to bear in mind that these are <strong>estimates</strong>, and will <strong>not</strong> take into account things like conflict-induced displacement. For example, Oak Ridge National Laboratory’s LandScan program has released high-resolution population data for Ukraine, but this pertains to the pre-war population distribution. The war has radically changed this distribution, so these estimates no longer reflect where people <em>are</em>. Still, this dataset could be used to roughly estimate displacement or the number of people who will need new housing.</p>
|
||||
<section id="applications-6" class="level3 unnumbered">
|
||||
<h3 class="unnumbered anchored" data-anchor-id="applications-6">Applications:</h3>
|
||||
<ul>
|
||||
<li>Rough estimates of civilians at risk from conflict or disaster, provided at a high spatial resolution</li>
|
||||
</ul>
|
||||
</section>
|
||||
<section id="datasets-6" class="level3 unnumbered">
|
||||
<h3 class="unnumbered anchored" data-anchor-id="datasets-6">Datasets</h3>
|
||||
<table class="table">
|
||||
<thead>
|
||||
<tr class="header">
|
||||
<th>Sensor</th>
|
||||
<th>Timeframe</th>
|
||||
<th>Resolution</th>
|
||||
<th>Coverage</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr class="odd">
|
||||
<td><a href="https://developers.google.com/earth-engine/datasets/tags/worldpop">Worldpop</a></td>
|
||||
<td>2000-2021</td>
|
||||
<td>92m</td>
|
||||
<td>Global</td>
|
||||
</tr>
|
||||
<tr class="even">
|
||||
<td><a href="https://developers.google.com/earth-engine/datasets/catalog/CIESIN_GPWv411_GPW_Population_Count">GPW</a></td>
|
||||
<td>2000-2021</td>
|
||||
<td>927m</td>
|
||||
<td>Global</td>
|
||||
</tr>
|
||||
<tr class="odd">
|
||||
<td><a href="https://developers.google.com/earth-engine/datasets/catalog/DOE_ORNL_LandScan_HD_Ukraine_202201">LandScan</a></td>
|
||||
<td>2013–Present</td>
|
||||
<td>100m</td>
|
||||
<td>Ukraine</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</section>
|
||||
</section>
|
||||
<section id="building-footprints" class="level2" data-number="1.8">
|
||||
<h2 data-number="1.8" class="anchored" data-anchor-id="building-footprints"><span class="header-section-number">1.8</span> Building Footprints</h2>
|
||||
<div class="quarto-figure quarto-figure-center">
|
||||
<figure class="figure">
|
||||
<p><img src="./images/footprints.png" class="img-fluid figure-img"></p>
|
||||
<p></p><figcaption class="figure-caption">Building footprints in Mariupol, Ukraine colored by whether the building is damaged</figcaption><p></p>
|
||||
</figure>
|
||||
</div>
|
||||
<p>A building footprint dataset contains the two dimensional outlines of buildings in a given area. Currently, GEE hosts one building footprint dataset which covers all of Africa. In 2022, Microsoft released a free <a href="https://www.microsoft.com/en-us/maps/building-footprints">global building footprint dataset</a>, though to use it in Earth Engine you’ll have to download it from their <a href="https://github.com/Microsoft/USBuildingFootprints">GitHub page</a> and upload it manually to GEE. The same goes for OpenStreetMap (OSM), a public database of building footprints, roads, and other features that also contains useful annotations for many buildings indicating their use. <a href="https://www.youtube.com/watch?v=bJkV3l5Haq0">Benjamin Strick</a> has a great youtube video on conducting investigations using OSM data.</p>
|
||||
<section id="applications-7" class="level3 unnumbered">
|
||||
<h3 class="unnumbered anchored" data-anchor-id="applications-7">Applications:</h3>
|
||||
<ul>
|
||||
<li>Joining damage estimate data with the number of buildings in an area</li>
|
||||
</ul>
|
||||
</section>
|
||||
<section id="datasets-7" class="level3 unnumbered">
|
||||
<h3 class="unnumbered anchored" data-anchor-id="datasets-7">Datasets</h3>
|
||||
<table class="table">
|
||||
<thead>
|
||||
<tr class="header">
|
||||
<th>Dataset</th>
|
||||
<th>Timeframe</th>
|
||||
<th>Coverage</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr class="odd">
|
||||
<td><a href="https://developers.google.com/earth-engine/datasets/catalog/GOOGLE_Research_open-buildings_v2_polygons">Open Buildings</a></td>
|
||||
<td>2022</td>
|
||||
<td>Africa</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</section>
|
||||
</section>
|
||||
<section id="administrative-boundaries" class="level2" data-number="1.9">
|
||||
<h2 data-number="1.9" class="anchored" data-anchor-id="administrative-boundaries"><span class="header-section-number">1.9</span> Administrative Boundaries</h2>
|
||||
<div class="quarto-figure quarto-figure-center">
|
||||
<figure class="figure">
|
||||
<p><img src="./images/fao_gaul.jpg" class="img-fluid figure-img"></p>
|
||||
<p></p><figcaption class="figure-caption">Second-level administrative boundaries in Yemen</figcaption><p></p>
|
||||
</figure>
|
||||
</div>
|
||||
<p>Spatial analysis often have to aggregate information over a defined area; we may want to assess the total burned area by province in Ukraine, or count the number of Saudi airstrikes by district in Yemen. For that, we need data on these administrative boundaries. GEE hosts several such datasets at the country, province, and district (or equivalent) level.</p>
|
||||
<section id="applications-8" class="level3 unnumbered">
|
||||
<h3 class="unnumbered anchored" data-anchor-id="applications-8">Applications</h3>
|
||||
<ul>
|
||||
<li>Quick spatial calculations for different provinces/districts in a country
|
||||
<ul>
|
||||
<li>e.g. counts of conflict events by district over time</li>
|
||||
</ul></li>
|
||||
</ul>
|
||||
</section>
|
||||
<section id="datasets-8" class="level3 unnumbered">
|
||||
<h3 class="unnumbered anchored" data-anchor-id="datasets-8">Datasets</h3>
|
||||
<table class="table">
|
||||
<thead>
|
||||
<tr class="header">
|
||||
<th>Dataset</th>
|
||||
<th>Timeframe</th>
|
||||
<th>Coverage</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr class="odd">
|
||||
<td><a href="https://developers.google.com/earth-engine/datasets/tags/gaul">FAO GAUL</a></td>
|
||||
<td>2015</td>
|
||||
<td>Global</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</section>
|
||||
</section>
|
||||
<section id="global-power-plant-database" class="level2" data-number="1.10">
|
||||
<h2 data-number="1.10" class="anchored" data-anchor-id="global-power-plant-database"><span class="header-section-number">1.10</span> Global Power Plant Database</h2>
|
||||
<div class="quarto-figure quarto-figure-center">
|
||||
<figure class="figure">
|
||||
<p><img src="./images/power.jpg" class="img-fluid figure-img"></p>
|
||||
<p></p><figcaption class="figure-caption">Power plants in Ukraine colored by type</figcaption><p></p>
|
||||
</figure>
|
||||
</div>
|
||||
<p>The Global Power Plant Database is a comprehensive, open source database of power plants around the world. It centralizes power plant data to make it easier to navigate, compare and draw insights. Each power plant is geolocated and entries contain information on plant capacity, generation, ownership, and fuel type. As of June 2018, the database includes around 28,500 power plants from 164 countries. The database is curated by the <a href="https://datasets.wri.org/dataset/globalpowerplantdatabase">World Resources Institude (WRI)</a>.</p>
|
||||
<section id="applications-9" class="level3 unnumbered">
|
||||
<h3 class="unnumbered anchored" data-anchor-id="applications-9">Applications:</h3>
|
||||
<ul>
|
||||
<li>Analyzing the impact of conflict on critical infrastructure.
|
||||
<ul>
|
||||
<li>e.g. fighting in Ukraine taking place around nuclear power facilities.</li>
|
||||
</ul></li>
|
||||
<li>Could be combined with the atmospheric measurements of different pollutants and the population estimates data to assess the impact of various forms of energy generation on air quality and public health.</li>
|
||||
</ul>
|
||||
</section>
|
||||
<section id="datasets-9" class="level3 unnumbered">
|
||||
<h3 class="unnumbered anchored" data-anchor-id="datasets-9">Datasets</h3>
|
||||
<table class="table">
|
||||
<thead>
|
||||
<tr class="header">
|
||||
<th>Dataset</th>
|
||||
<th>Timeframe</th>
|
||||
<th>Coverage</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr class="odd">
|
||||
<td><a href="https://developers.google.com/earth-engine/datasets/catalog/WRI_GPPD_power_plants">GPPD</a></td>
|
||||
<td>2018</td>
|
||||
<td>Global</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
<section id="orbits" class="level2" data-number="1.2">
|
||||
<h2 data-number="1.2" class="anchored" data-anchor-id="orbits"><span class="header-section-number">1.2</span> Orbits</h2>
|
||||
<p>The Landsat satellites are in a sun-synchronous orbit, meaning they pass over the same spot on Earth at the same time every day. The Sentinel satellites are in a polar orbit, meaning they pass over the same spot on Earth twice a day, once in the morning and once in the afternoon. NASA have created a great <a href="https://svs.gsfc.nasa.gov/4745">visualisation</a> showing the orbits of the Landsat and Sentinel-2 satellites:</p>
|
||||
<div class="quarto-video"><video id="video_shortcode_videojs_video1" class="video-js vjs-default-skin vjs-fluid" controls="" preload="auto" data-setup="{}" title=""><source src="https://svs.gsfc.nasa.gov/vis/a000000/a004700/a004745/landsat_w_sentinel_ls8ls9sAsB_fade_1080p60.mp4"></video></div>
|
||||
<p>The Sentinel satellites are in a lower orbit than Landsat, meaning they are closer to the Earth and have a higher resolution.</p>
|
||||
|
||||
|
||||
</section>
|
||||
</section>
|
||||
|
||||
</main> <!-- /main -->
|
||||
@@ -1045,11 +539,12 @@ window.document.addEventListener("DOMContentLoaded", function (event) {
|
||||
</div>
|
||||
<div class="nav-page nav-page-next">
|
||||
<a href="./ch2.html" class="pagination-link">
|
||||
<span class="nav-page-text"><span class="chapter-number">2</span> <span class="chapter-title">Getting Started</span></span> <i class="bi bi-arrow-right-short"></i>
|
||||
<span class="nav-page-text"><span class="chapter-number">2</span> <span class="chapter-title">Data Acquisition</span></span> <i class="bi bi-arrow-right-short"></i>
|
||||
</a>
|
||||
</div>
|
||||
</nav>
|
||||
</div> <!-- /content -->
|
||||
<script>videojs(video_shortcode_videojs_video1);</script>
|
||||
|
||||
|
||||
|
||||
|
||||
617
_book/ch2.html
617
_book/ch2.html
@@ -7,7 +7,7 @@
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=yes">
|
||||
|
||||
|
||||
<title>Google Earth Engine for OSINT - 2 Remote Sensing</title>
|
||||
<title>Google Earth Engine for OSINT - 2 Data Acquisition</title>
|
||||
<style>
|
||||
code{white-space: pre-wrap;}
|
||||
span.smallcaps{font-variant: small-caps;}
|
||||
@@ -43,8 +43,6 @@ ul.task-list li input[type="checkbox"] {
|
||||
<link href="site_libs/bootstrap/bootstrap-icons.css" rel="stylesheet">
|
||||
<link href="site_libs/bootstrap/bootstrap.min.css" rel="stylesheet" class="quarto-color-scheme" id="quarto-bootstrap" data-mode="light">
|
||||
<link href="site_libs/bootstrap/bootstrap-dark.min.css" rel="stylesheet" class="quarto-color-scheme quarto-color-alternate" id="quarto-bootstrap" data-mode="dark">
|
||||
<script src="site_libs/quarto-contrib/videojs/video.min.js"></script>
|
||||
<link href="site_libs/quarto-contrib/videojs/video-js.css" rel="stylesheet">
|
||||
<script id="quarto-search-options" type="application/json">{
|
||||
"location": "sidebar",
|
||||
"copy-button": false,
|
||||
@@ -64,6 +62,9 @@ ul.task-list li input[type="checkbox"] {
|
||||
"search-submit-button-title": "Submit"
|
||||
}
|
||||
}</script>
|
||||
<script src="site_libs/quarto-diagram/mermaid.min.js"></script>
|
||||
<script src="site_libs/quarto-diagram/mermaid-init.js"></script>
|
||||
<link href="site_libs/quarto-diagram/mermaid.css" rel="stylesheet">
|
||||
|
||||
|
||||
</head>
|
||||
@@ -74,7 +75,7 @@ ul.task-list li input[type="checkbox"] {
|
||||
<header id="quarto-header" class="headroom fixed-top">
|
||||
<nav class="quarto-secondary-nav" data-bs-toggle="collapse" data-bs-target="#quarto-sidebar" aria-controls="quarto-sidebar" aria-expanded="false" aria-label="Toggle sidebar navigation" onclick="if (window.quartoToggleHeadroom) { window.quartoToggleHeadroom(); }">
|
||||
<div class="container-fluid d-flex justify-content-between">
|
||||
<h1 class="quarto-secondary-nav-title"><span class="chapter-number">2</span> <span class="chapter-title">Remote Sensing</span></h1>
|
||||
<h1 class="quarto-secondary-nav-title"><span class="chapter-number">2</span> <span class="chapter-title">Data Acquisition</span></h1>
|
||||
<button type="button" class="quarto-btn-toggle btn" aria-label="Show secondary navigation">
|
||||
<i class="bi bi-chevron-right"></i>
|
||||
</button>
|
||||
@@ -149,12 +150,12 @@ ul.task-list li input[type="checkbox"] {
|
||||
<ul id="quarto-sidebar-section-1" class="collapse list-unstyled sidebar-section depth1 show">
|
||||
<li class="sidebar-item">
|
||||
<div class="sidebar-item-container">
|
||||
<a href="./ch1.html" class="sidebar-item-text sidebar-link"><span class="chapter-number">1</span> <span class="chapter-title">Data Acquisition</span></a>
|
||||
<a href="./ch1.html" class="sidebar-item-text sidebar-link"><span class="chapter-number">1</span> <span class="chapter-title">Remote Sensing</span></a>
|
||||
</div>
|
||||
</li>
|
||||
<li class="sidebar-item">
|
||||
<div class="sidebar-item-container">
|
||||
<a href="./ch2.html" class="sidebar-item-text sidebar-link active"><span class="chapter-number">2</span> <span class="chapter-title">Remote Sensing</span></a>
|
||||
<a href="./ch2.html" class="sidebar-item-text sidebar-link active"><span class="chapter-number">2</span> <span class="chapter-title">Data Acquisition</span></a>
|
||||
</div>
|
||||
</li>
|
||||
<li class="sidebar-item">
|
||||
@@ -198,12 +199,55 @@ ul.task-list li input[type="checkbox"] {
|
||||
<h2 id="toc-title">Table of contents</h2>
|
||||
|
||||
<ul>
|
||||
<li><a href="#orbits" id="toc-orbits" class="nav-link active" data-scroll-target="#orbits"><span class="toc-section-number">2.1</span> Orbits</a></li>
|
||||
<li><a href="#resolution" id="toc-resolution" class="nav-link" data-scroll-target="#resolution"><span class="toc-section-number">2.2</span> Resolution</a>
|
||||
<li><a href="#optical-imagery" id="toc-optical-imagery" class="nav-link active" data-scroll-target="#optical-imagery"><span class="toc-section-number">2.1</span> Optical Imagery</a>
|
||||
<ul class="collapse">
|
||||
<li><a href="#spatial-resolution" id="toc-spatial-resolution" class="nav-link" data-scroll-target="#spatial-resolution">Spatial Resolution</a></li>
|
||||
<li><a href="#spectral-resolution" id="toc-spectral-resolution" class="nav-link" data-scroll-target="#spectral-resolution">Spectral Resolution</a></li>
|
||||
<li><a href="#temporal-resolution" id="toc-temporal-resolution" class="nav-link" data-scroll-target="#temporal-resolution">Temporal Resolution</a></li>
|
||||
<li><a href="#applications" id="toc-applications" class="nav-link" data-scroll-target="#applications">Applications</a></li>
|
||||
<li><a href="#datasets" id="toc-datasets" class="nav-link" data-scroll-target="#datasets">Datasets</a></li>
|
||||
</ul></li>
|
||||
<li><a href="#radar-imagery" id="toc-radar-imagery" class="nav-link" data-scroll-target="#radar-imagery"><span class="toc-section-number">2.2</span> Radar Imagery</a>
|
||||
<ul class="collapse">
|
||||
<li><a href="#applications-1" id="toc-applications-1" class="nav-link" data-scroll-target="#applications-1">Applications</a></li>
|
||||
<li><a href="#datasets-1" id="toc-datasets-1" class="nav-link" data-scroll-target="#datasets-1">Datasets</a></li>
|
||||
</ul></li>
|
||||
<li><a href="#nighttime-lights" id="toc-nighttime-lights" class="nav-link" data-scroll-target="#nighttime-lights"><span class="toc-section-number">2.3</span> Nighttime Lights</a>
|
||||
<ul class="collapse">
|
||||
<li><a href="#applications-2" id="toc-applications-2" class="nav-link" data-scroll-target="#applications-2">Applications</a></li>
|
||||
<li><a href="#datasets-2" id="toc-datasets-2" class="nav-link" data-scroll-target="#datasets-2">Datasets</a></li>
|
||||
</ul></li>
|
||||
<li><a href="#climate-and-atmospheric-data" id="toc-climate-and-atmospheric-data" class="nav-link" data-scroll-target="#climate-and-atmospheric-data"><span class="toc-section-number">2.4</span> Climate and Atmospheric Data</a>
|
||||
<ul class="collapse">
|
||||
<li><a href="#applications-3" id="toc-applications-3" class="nav-link" data-scroll-target="#applications-3">Applications</a></li>
|
||||
<li><a href="#datasets-3" id="toc-datasets-3" class="nav-link" data-scroll-target="#datasets-3">Datasets</a></li>
|
||||
</ul></li>
|
||||
<li><a href="#mineral-deposits" id="toc-mineral-deposits" class="nav-link" data-scroll-target="#mineral-deposits"><span class="toc-section-number">2.5</span> Mineral Deposits</a>
|
||||
<ul class="collapse">
|
||||
<li><a href="#applications-4" id="toc-applications-4" class="nav-link" data-scroll-target="#applications-4">Applications</a></li>
|
||||
<li><a href="#datasets-4" id="toc-datasets-4" class="nav-link" data-scroll-target="#datasets-4">Datasets</a></li>
|
||||
</ul></li>
|
||||
<li><a href="#fires" id="toc-fires" class="nav-link" data-scroll-target="#fires"><span class="toc-section-number">2.6</span> Fires</a>
|
||||
<ul class="collapse">
|
||||
<li><a href="#applications-5" id="toc-applications-5" class="nav-link" data-scroll-target="#applications-5">Applications</a></li>
|
||||
<li><a href="#datasets-5" id="toc-datasets-5" class="nav-link" data-scroll-target="#datasets-5">Datasets</a></li>
|
||||
</ul></li>
|
||||
<li><a href="#population-density-estimates" id="toc-population-density-estimates" class="nav-link" data-scroll-target="#population-density-estimates"><span class="toc-section-number">2.7</span> Population Density Estimates</a>
|
||||
<ul class="collapse">
|
||||
<li><a href="#applications-6" id="toc-applications-6" class="nav-link" data-scroll-target="#applications-6">Applications:</a></li>
|
||||
<li><a href="#datasets-6" id="toc-datasets-6" class="nav-link" data-scroll-target="#datasets-6">Datasets</a></li>
|
||||
</ul></li>
|
||||
<li><a href="#building-footprints" id="toc-building-footprints" class="nav-link" data-scroll-target="#building-footprints"><span class="toc-section-number">2.8</span> Building Footprints</a>
|
||||
<ul class="collapse">
|
||||
<li><a href="#applications-7" id="toc-applications-7" class="nav-link" data-scroll-target="#applications-7">Applications:</a></li>
|
||||
<li><a href="#datasets-7" id="toc-datasets-7" class="nav-link" data-scroll-target="#datasets-7">Datasets</a></li>
|
||||
</ul></li>
|
||||
<li><a href="#administrative-boundaries" id="toc-administrative-boundaries" class="nav-link" data-scroll-target="#administrative-boundaries"><span class="toc-section-number">2.9</span> Administrative Boundaries</a>
|
||||
<ul class="collapse">
|
||||
<li><a href="#applications-8" id="toc-applications-8" class="nav-link" data-scroll-target="#applications-8">Applications</a></li>
|
||||
<li><a href="#datasets-8" id="toc-datasets-8" class="nav-link" data-scroll-target="#datasets-8">Datasets</a></li>
|
||||
</ul></li>
|
||||
<li><a href="#global-power-plant-database" id="toc-global-power-plant-database" class="nav-link" data-scroll-target="#global-power-plant-database"><span class="toc-section-number">2.10</span> Global Power Plant Database</a>
|
||||
<ul class="collapse">
|
||||
<li><a href="#applications-9" id="toc-applications-9" class="nav-link" data-scroll-target="#applications-9">Applications:</a></li>
|
||||
<li><a href="#datasets-9" id="toc-datasets-9" class="nav-link" data-scroll-target="#datasets-9">Datasets</a></li>
|
||||
</ul></li>
|
||||
</ul>
|
||||
<div class="toc-actions"><div><i class="bi bi-github"></i></div><div class="action-links"><p><a href="https://github.com/oballinger/GEE_OSINT/edit/main/ch2.qmd" class="toc-action">Edit this page</a></p></div></div></nav>
|
||||
@@ -213,7 +257,7 @@ ul.task-list li input[type="checkbox"] {
|
||||
|
||||
<header id="title-block-header" class="quarto-title-block default">
|
||||
<div class="quarto-title">
|
||||
<h1 class="title d-none d-lg-block"><span class="chapter-number">2</span> <span class="chapter-title">Remote Sensing</span></h1>
|
||||
<h1 class="title d-none d-lg-block"><span class="chapter-number">2</span> <span class="chapter-title">Data Acquisition</span></h1>
|
||||
</div>
|
||||
|
||||
|
||||
@@ -228,52 +272,518 @@ ul.task-list li input[type="checkbox"] {
|
||||
|
||||
</header>
|
||||
|
||||
<p><a href="https://www.sciencedirect.com/topics/medicine-and-dentistry/remote-sensing">Remote sensing</a> is the science of obtaining information about an object or phenomenon without making physical contact with the object. Remote sensing can be done with various types of electromagnetic radiation such as visible, infrared, or microwave. The electromagnetic radiation is either emitted or reflected from the object being sensed. The reflected radiation is then collected by a sensor and processed to obtain information about the object.</p>
|
||||
<p><img src="./images/diagram.png" class="img-fluid"></p>
|
||||
<section id="orbits" class="level2" data-number="2.1">
|
||||
<h2 data-number="2.1" class="anchored" data-anchor-id="orbits"><span class="header-section-number">2.1</span> Orbits</h2>
|
||||
<p>The Landsat satellites are in a sun-synchronous orbit, meaning they pass over the same spot on Earth at the same time every day. The Sentinel satellites are in a polar orbit, meaning they pass over the same spot on Earth twice a day, once in the morning and once in the afternoon. NASA have created a great <a href="https://svs.gsfc.nasa.gov/4745">visualisation</a> showing the orbits of the Landsat and Sentinel-2 satellites:</p>
|
||||
<div class="quarto-video"><video id="video_shortcode_videojs_video1" class="video-js vjs-default-skin vjs-fluid" controls="" preload="auto" data-setup="{}" title=""><source src="https://svs.gsfc.nasa.gov/vis/a000000/a004700/a004745/landsat_w_sentinel_ls8ls9sAsB_fade_1080p60.mp4"></video></div>
|
||||
<p>The Sentinel satellites are in a lower orbit than Landsat, meaning they are closer to the Earth and have a higher resolution.</p>
|
||||
<p>There are three spatial, spectral, and temporal.</p>
|
||||
</section>
|
||||
<section id="resolution" class="level2" data-number="2.2">
|
||||
<h2 data-number="2.2" class="anchored" data-anchor-id="resolution"><span class="header-section-number">2.2</span> Resolution</h2>
|
||||
<section id="spatial-resolution" class="level3 unnumbered">
|
||||
<h3 class="unnumbered anchored" data-anchor-id="spatial-resolution">Spatial Resolution</h3>
|
||||
<p>Spatial resolution governs how “sharp” an image looks. The Google Maps satellite basemap, for example, is really sharp Most of the optical imagery that is freely available has relatively low spatial resolution (it looks more grainy than, for example, the Google satellite basemap),</p>
|
||||
<p><img src="./images/Landsat.png" class="img-fluid"> <img src="./images/Sentinel2.png" class="img-fluid"> <img src="./images/Maxar.png" class="img-fluid"></p>
|
||||
<p><img src="./images/kh11.png" class="img-fluid"></p>
|
||||
</section>
|
||||
<section id="spectral-resolution" class="level3 unnumbered">
|
||||
<h3 class="unnumbered anchored" data-anchor-id="spectral-resolution">Spectral Resolution</h3>
|
||||
<p>What open source imagery lacks in spatial resolution it often makes up for with <em>spectral</em> resolution. Really sharp imagery from MAXAR, for example, collects</p>
|
||||
<p>Different materials reflect light differently. An apple absorbs shorter wavelengths (e.g. blue and green), and reflects longer wavelengths (red). Our eyes use that information– the color– to distinguish between different objects. But our eyes can only see a relatively small sliver of the electromagnetic spectrum covering blue, yellow, and red; we can’t see UV or infrared wavelengths, for example, though the extent to which different materials reflect or absorb these wavelengths is just as useful for distinguishing between them. For example, Astroturf (fake plastic grass) and real grass will both look green to us, espeically from a satellite image. But living plants absorb radiation from the sun in a part of the light spectrum that we can’t see. There’s a spectral index called the Normalized Difference Vegetation Index (NDVI) which exploits this fact to isolate vegetation in multispectral satellite imagery. So if we look at <a href="https://en.wikipedia.org/wiki/Gillette_Stadium">Gilette Stadium</a> near Boston, we can tell that the three training fields south of the stadium are real grass (they generate high NDVI values, showing up red), while the pitch in the stadium itself is astroturf (generating low NDVI values, showing up blue).</p>
|
||||
<p>One of the main advantages of GEE is that it hosts several Petabytes of satellite imagery and other spatial data sets, <a href="https://developers.google.com/earth-engine/datasets">all in one place</a>. Among these are a many that could prove useful to those investigating illegal mining and logging, estimating conflict-induced damage, monitoring pollution from extractive industries, conducting maritime surveillance without relying on ship transponders, verifying the locations of artillery strikes, tracking missile defense systems, and many other topics.</p>
|
||||
<p>This section highlights ten categories of geospatial data available natively in the GEE catalogue ranging from optical satellite imagery, to atmospheric data, to building footprints. Each sub-section provides an overview of the given data type, suggests potential applications, and lists the corresponding datasets in the GEE catalogue. The datasets listed under each heading are <strong>not</strong> an exhaustive list– there are over 500 in the whole catalogue, and the ones listed in this section are simply the ones with the most immediate relevance to open source investigations. If a particular geospatial dataset you want to work with isn’t hosted in the GEE catalog, you can upload your own data. We’ll cover that in the next section.</p>
|
||||
<section id="optical-imagery" class="level2" data-number="2.1">
|
||||
<h2 data-number="2.1" class="anchored" data-anchor-id="optical-imagery"><span class="header-section-number">2.1</span> Optical Imagery</h2>
|
||||
<div class="quarto-figure quarto-figure-center">
|
||||
<figure class="figure">
|
||||
<p><img src="images/NDVI.jpg" class="img-fluid figure-img"></p>
|
||||
<p></p><figcaption class="figure-caption">VHR image of Gilette Stadium with Sentinel-2 derived NDVI overlay</figcaption><p></p>
|
||||
<p><img src="./images/hasankeyf.gif" class="img-fluid figure-img"></p>
|
||||
<p></p><figcaption class="figure-caption">Sentinel-2 timelapse showing the ancient city of Hasankeyf being flooded following the construction of a dam by the Turkish government.</figcaption><p></p>
|
||||
</figure>
|
||||
</div>
|
||||
<p>In other words, even though these fields are all green and indistinguishable to the human eye, their <em>spectral profiles</em> beyond the visible light spectrum differ, and we can use this information to distinguish between them. Below is a plot of the spectral profiles of different materials, including oil.</p>
|
||||
<iframe title="Spectral Profiles of Different Materials" aria-label="Interactive line chart" id="datawrapper-chart-b1kcX" src="https://datawrapper.dwcdn.net/b1kcX/3/" scrolling="no" frameborder="0" style="width: 0; min-width: 100% !important; border: none;" height="400">
|
||||
</iframe>
|
||||
<script type="text/javascript">!function(){"use strict";window.addEventListener("message",(function(e){if(void 0!==e.data["datawrapper-height"]){var t=document.querySelectorAll("iframe");for(var a in e.data["datawrapper-height"])for(var r=0;r<t.length;r++){if(t[r].contentWindow===e.source)t[r].style.height=e.data["datawrapper-height"][a]+"px"}}}))}();
|
||||
</script>
|
||||
<p>The European Space Agency’s Sentinel-2 satellite collects spectral information well beyond the visible light spectrum, enabling this sort of analysis. It chops the electromagnetic spectrum up into “bands”, and measures how strongly wavelengths in each of those bands is reflected:</p>
|
||||
<p><img src="images/S2_bands.png" class="img-fluid"></p>
|
||||
<p>We’ll be using this satellite to distinguish between oil and other materials, similar to the way we were able to distinguish between real and fake grass at Gilette Stadium. First, we’ll have to do a bit of pre-processing on the Sentinel-2 imagery after which we’ll train a machine learning model to identify oil.</p>
|
||||
</section>
|
||||
<section id="temporal-resolution" class="level3 unnumbered">
|
||||
<h3 class="unnumbered anchored" data-anchor-id="temporal-resolution">Temporal Resolution</h3>
|
||||
<p>Finally, time There is often a tradeoff between spatial and temporal resolution.</p>
|
||||
<p>The Google Maps basemap is very high resolution, available globally, and is freely available. But it has no <em>temporal</em> dimension: it’s a snapshot from one particular point in time. If the thing we’re interested in involves <em>changes</em> over time, this basemap will be of limited use.</p>
|
||||
<p>The <strong>“revisit rate”</strong> is the time it takes a satellite to image the same point on earth</p>
|
||||
<p>Optical satellite imagery is the bread and butter of many open source investiagtions. It would be tough to list off all of the possible use cases, so here’s a handy flowchart:</p>
|
||||
<div class="cell">
|
||||
<div class="cell-output-display">
|
||||
<div>
|
||||
<p>
|
||||
</p><pre class="mermaid mermaid-js" data-tooltip-selector="#mermaid-tooltip-1">%%{init: {'theme': 'base', 'themeVariables': { 'primaryColor': '#FFFFFF' ,'primaryBorderColor':'#000000' , 'lineColor':'#009933'}}}%%
|
||||
|
||||
flowchart
|
||||
A(Does it happen outside?)
|
||||
A--> B(Yes)
|
||||
A--> C(No)
|
||||
D(Is it very small?)
|
||||
B-->D
|
||||
E(Yes)
|
||||
F(No)
|
||||
D-->F
|
||||
D-->E
|
||||
G(Use optical satellite imagery)
|
||||
H(Don't use optical satellite imagery)
|
||||
E-->H
|
||||
F-->G
|
||||
C-->H
|
||||
</pre>
|
||||
<div id="mermaid-tooltip-1" class="mermaidTooltip">
|
||||
|
||||
</div>
|
||||
<p></p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<p>This is, of course, a bit of an exaggeration. But if you’re interested in a visible phenomenon that happens outdoors and that isn’t very tiny, chances are an earth-observing satellite has taken a picture of it. What that picture can tell you naturally depends on what you’re interested in learning. For a deeper dive into analyzing optical satellite imagery, see the subsection on <a href="./ch3.html#multispectral-remote-sensing-remote_sensing">multispectral remote sensing.</a>.</p>
|
||||
<p>There are several different types of optical satellite imagery available in the GEE catalogue. The main collections are the Landsat and Sentinel series of satellites, which are operated by NASA and the European Space Agency, respectively. Landsat satellites have been in orbit since 1972, and Sentinel satellites have been in orbit since 2015. Norway’s International Climate and Forest Initiative (NICFI) has also contributed to the GEE catalogue by providing a collection of optical imagery from Planet’s PlanetScope satellites. These are higher resolution (4.7 meters per pixel) than Landsat (30m/px) and Sentinel-2 (10m/px), but are only available for the tropics. Even higher resolution imagery (60cm/px) is available from the GEE catalogue from the National Agriculture Imagery Program, but it is only available for the United States. For more details, see the “Datasets” section below.</p>
|
||||
<section id="applications" class="level3 unnumbered">
|
||||
<h3 class="unnumbered anchored" data-anchor-id="applications">Applications</h3>
|
||||
<ul>
|
||||
<li><a href="https://sentinel.esa.int/web/sentinel/missions/sentinel-2">Sentinel 2</a>: 5 days</li>
|
||||
<li><a href="https://landsat.gsfc.nasa.gov/satellites/landsat-9/#:~:text=Landsat%209%20replaces%20Landsat%207,for%20Landsat%208%20%2B%20Landsat%207.">Landsat 9</a>: 8 days</li>
|
||||
<li><a href="https://www.planet.com/pulse/12x-rapid-revisit-announcement/">Planet SkySat</a>: 2-3 hours</li>
|
||||
<li>Geolocating pictures
|
||||
<ul>
|
||||
<li>Some of Bellingcat’s <a href="https://www.bellingcat.com/resources/how-tos/2014/07/09/verification-and-geolocation-tricks-and-tips-with-google-earth/">earliest work</a> involved figuring out where a picture was taken by cross-referencing it with optical satellite imagery.</li>
|
||||
</ul></li>
|
||||
<li>General surveillance
|
||||
<ul>
|
||||
<li><a href="https://web.archive.org/web/20220415054905/https://fas.org/blogs/security/2021/11/a-closer-look-at-chinas-missile-silo-construction/">Monitoring</a> Chinese missile silo construction.</li>
|
||||
<li>Amassing <a href="https://www.nytimes.com/2022/04/04/world/europe/bucha-ukraine-bodies.html">evidence</a> of genocide in Bucha, Ukraine</li>
|
||||
</ul></li>
|
||||
<li>Damage detection
|
||||
<ul>
|
||||
<li><a href="https://www.theguardian.com/world/2022/oct/27/before-and-after-satellite-imagery-will-track-ukraine-cultural-damage-un-says">Ukraine</a></li>
|
||||
<li><a href="https://reliefweb.int/report/mali/satellite-imagery-conflict-affected-areas-how-technology-can-support-wfp-emergency">Mali</a></li>
|
||||
<li><a href="https://www.pnas.org/doi/pdf/10.1073/pnas.2025400118">Around the World</a></li>
|
||||
</ul></li>
|
||||
<li>Verifying the locations of artillery/missile/drone strikes
|
||||
<ul>
|
||||
<li>The <a href="https://www.cnbc.com/2019/09/17/satellite-photos-show-extent-of-damage-to-saudi-aramco-plants.html">2019 attack</a> on Saudi Arabia’s Abqaiq oil processing facility.</li>
|
||||
</ul></li>
|
||||
<li>Monitoring illegal mining/logging
|
||||
<ul>
|
||||
<li>Global Witness <a href="https://www.globalwitness.org/en/campaigns/natural-resource-governance/myanmars-poisoned-mountains/">investigation</a> into illegal mining by militias in Myanmar.</li>
|
||||
<li>Tracking <a href="https://www.theguardian.com/environment/2016/mar/02/new-satellite-mapping-a-game-changer-against-illegal-logging">illegal logging</a> across the world.</li>
|
||||
</ul></li>
|
||||
</ul>
|
||||
</section>
|
||||
<section id="datasets" class="level3 unnumbered">
|
||||
<h3 class="unnumbered anchored" data-anchor-id="datasets">Datasets</h3>
|
||||
<table class="table">
|
||||
<thead>
|
||||
<tr class="header">
|
||||
<th>Sensor</th>
|
||||
<th>Timeframe</th>
|
||||
<th>Resolution</th>
|
||||
<th>Coverage</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr class="odd">
|
||||
<td><a href="https://developers.google.com/earth-engine/datasets/catalog/landsat-mss">Landsat 1-5</a></td>
|
||||
<td>1972–1999</td>
|
||||
<td>30m</td>
|
||||
<td>Global</td>
|
||||
</tr>
|
||||
<tr class="even">
|
||||
<td><a href="https://developers.google.com/earth-engine/datasets/catalog/LANDSAT_LE07_C02_T1_L2">Landsat 7</a></td>
|
||||
<td>1999–2021</td>
|
||||
<td>30m</td>
|
||||
<td>Global</td>
|
||||
</tr>
|
||||
<tr class="odd">
|
||||
<td><a href="https://developers.google.com/earth-engine/datasets/catalog/LANDSAT_LC08_C02_T1_L2">Landsat 8</a></td>
|
||||
<td>2013–Present</td>
|
||||
<td>30m</td>
|
||||
<td>Global</td>
|
||||
</tr>
|
||||
<tr class="even">
|
||||
<td><a href="https://developers.google.com/earth-engine/datasets/catalog/LANDSAT_LC09_C02_T1_L2">Landsat 9</a></td>
|
||||
<td>2021–Present</td>
|
||||
<td>30m</td>
|
||||
<td>Global</td>
|
||||
</tr>
|
||||
<tr class="odd">
|
||||
<td><a href="https://developers.google.com/earth-engine/datasets/catalog/COPERNICUS_S2_SR_HARMONIZED">Sentinel-2</a></td>
|
||||
<td>2015–Present</td>
|
||||
<td>10m</td>
|
||||
<td>Global</td>
|
||||
</tr>
|
||||
<tr class="even">
|
||||
<td><a href="https://developers.google.com/earth-engine/datasets/tags/nicfi">NICFI</a></td>
|
||||
<td>2015-Present</td>
|
||||
<td>4.7m</td>
|
||||
<td>Tropics</td>
|
||||
</tr>
|
||||
<tr class="odd">
|
||||
<td><a href="https://developers.google.com/earth-engine/datasets/catalog/USDA_NAIP_DOQQ">NAIP</a></td>
|
||||
<td>2002-2021</td>
|
||||
<td>0.6m</td>
|
||||
<td>USA</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</section>
|
||||
</section>
|
||||
<section id="radar-imagery" class="level2" data-number="2.2">
|
||||
<h2 data-number="2.2" class="anchored" data-anchor-id="radar-imagery"><span class="header-section-number">2.2</span> Radar Imagery</h2>
|
||||
<div class="quarto-figure quarto-figure-center">
|
||||
<figure class="figure">
|
||||
<p><img src="./images/radar ships.jpg" class="img-fluid figure-img"></p>
|
||||
<p></p><figcaption class="figure-caption">Ships and interference from a radar system are visible in Zhuanghe Wan, near North Korea.</figcaption><p></p>
|
||||
</figure>
|
||||
</div>
|
||||
<p>Alongside</p>
|
||||
<section id="applications-1" class="level3 unnumbered">
|
||||
<h3 class="unnumbered anchored" data-anchor-id="applications-1">Applications</h3>
|
||||
<ul>
|
||||
<li>Change/Damage detection</li>
|
||||
<li>Tracking military radar systems</li>
|
||||
<li>Maritime surveillance</li>
|
||||
<li>Monitoring illegal mining/logging</li>
|
||||
</ul>
|
||||
</section>
|
||||
<section id="datasets-1" class="level3 unnumbered">
|
||||
<h3 class="unnumbered anchored" data-anchor-id="datasets-1">Datasets</h3>
|
||||
<table class="table">
|
||||
<thead>
|
||||
<tr class="header">
|
||||
<th>Sensor</th>
|
||||
<th>Timeframe</th>
|
||||
<th>Resolution</th>
|
||||
<th>Coverage</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr class="odd">
|
||||
<td><a href="https://developers.google.com/earth-engine/datasets/catalog/COPERNICUS_S1_GRD">Sentinel 1</a></td>
|
||||
<td>2014-Present</td>
|
||||
<td>10m</td>
|
||||
<td>Global</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</section>
|
||||
</section>
|
||||
<section id="nighttime-lights" class="level2" data-number="2.3">
|
||||
<h2 data-number="2.3" class="anchored" data-anchor-id="nighttime-lights"><span class="header-section-number">2.3</span> Nighttime Lights</h2>
|
||||
<div class="quarto-figure quarto-figure-center">
|
||||
<figure class="figure">
|
||||
<p><img src="./images/Figure_1.gif" class="img-fluid figure-img"></p>
|
||||
<p></p><figcaption class="figure-caption">A timelapse of nighttime lights over Northern Iraq showing the capture and liberation of Mosul by ISIS.</figcaption><p></p>
|
||||
</figure>
|
||||
</div>
|
||||
<p>Satellite images of the Earth at night a useful proxy for human activity. The brightness of a given area at night is a function of the number of people living there and the nature of their activities. The effects of conflict, natural disasters, and economic development can all be inferred from changes in nighttime lights.</p>
|
||||
<p>The timelapse above reveals a number of interesting things: The capture of Mosul by ISIS in 2014 and the destruction of its infrastructure during the fighting (shown as the city darkening), as well as the liberation of the city by the Iraqi military in 2017 are all visible in nighttime lights. The code to create this gif, as well as a more in-depth tutorial on the uses of nighttime lights, can be found in the <a href="./SyriaNTL.html">“War at Night”</a> case study.</p>
|
||||
<section id="applications-2" class="level3 unnumbered">
|
||||
<h3 class="unnumbered anchored" data-anchor-id="applications-2">Applications</h3>
|
||||
<ul>
|
||||
<li>Damage detection</li>
|
||||
<li>Identifying gas flaring/oil production</li>
|
||||
<li>Identifying urban areas/military bases illuminated at night</li>
|
||||
</ul>
|
||||
</section>
|
||||
<section id="datasets-2" class="level3 unnumbered">
|
||||
<h3 class="unnumbered anchored" data-anchor-id="datasets-2">Datasets</h3>
|
||||
<table class="table">
|
||||
<thead>
|
||||
<tr class="header">
|
||||
<th>Sensor</th>
|
||||
<th>Timeframe</th>
|
||||
<th>Resolution</th>
|
||||
<th>Coverage</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr class="odd">
|
||||
<td><a href="https://developers.google.com/earth-engine/datasets/catalog/NOAA_DMSP-OLS_NIGHTTIME_LIGHTS">DMSP-OLS</a></td>
|
||||
<td>1992-2014</td>
|
||||
<td>927m</td>
|
||||
<td>Global</td>
|
||||
</tr>
|
||||
<tr class="even">
|
||||
<td><a href="https://developers.google.com/earth-engine/datasets/catalog/NOAA_VIIRS_DNB_MONTHLY_V1_VCMSLCFG">VIIRS</a></td>
|
||||
<td>2014-Present</td>
|
||||
<td>463m</td>
|
||||
<td>Global</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</section>
|
||||
</section>
|
||||
<section id="climate-and-atmospheric-data" class="level2" data-number="2.4">
|
||||
<h2 data-number="2.4" class="anchored" data-anchor-id="climate-and-atmospheric-data"><span class="header-section-number">2.4</span> Climate and Atmospheric Data</h2>
|
||||
<div class="quarto-figure quarto-figure-center">
|
||||
<figure class="figure">
|
||||
<p><img src="./images/mishraq_small.gif" class="img-fluid figure-img"></p>
|
||||
<p></p><figcaption class="figure-caption">Sulphur Dioxide plume resulting from ISIS attack on the Al-Mishraq Sulphur Plant in Iraq</figcaption><p></p>
|
||||
</figure>
|
||||
</div>
|
||||
<p>Climate and atmospheric data can be used to track the effects of conflict on the environment. The European Space Agency’s Sentinel-5p satellites measure the concentration of a number of atmospheric gases, including nitrogen dioxide, methane, and ozone. Measurements are available on a daily basis at a fairly high resolution (1km), allowing for the detection of localized sources of pollution such as oil refineries or power plants. For example, see this <a href="https://www.bellingcat.com/resources/2021/04/15/what-oil-satellite-technology-and-iraq-can-tell-us-about-pollution/">Bellingcat article</a> in which Wim Zwijnenburg and I trace pollution to specific facilities operated by multinational oil companies in Iraq.</p>
|
||||
<p>The Copernicus Atmosphere Monitoring Service (CAMS) provides similar data at a lower spatial resolution (45km), but measurements are avaialble on an hourly basis. The timelapse above utilizes CAMS data to show a sulphur dioxide plume resulting from an ISIS attack on the Al-Mishraq Sulphur Plant in Iraq. The plant was used to produce sulphuric acid, for use in fertilizers and pesticides. The attack destroyed the plant, causing a fire which burned for a month and released <a href="https://earthobservatory.nasa.gov/images/88994/sulfur-dioxide-spreads-over-iraq">21 kilotons</a> of sulphur dioxide into the atmosphere per day; the largest human-made release of sulphur dioxide in history.</p>
|
||||
<section id="applications-3" class="level3 unnumbered">
|
||||
<h3 class="unnumbered anchored" data-anchor-id="applications-3">Applications</h3>
|
||||
<ul>
|
||||
<li>Monitoring of airborne pollution</li>
|
||||
<li>Tracing pollution back to specific facilities and companies</li>
|
||||
<li>Visualizing the effects of one-off environmental catastrophes
|
||||
<ul>
|
||||
<li>Nordstream 1 leak</li>
|
||||
<li>ISIS setting Mishraq sulphur plant on fire</li>
|
||||
</ul></li>
|
||||
</ul>
|
||||
</section>
|
||||
<section id="datasets-3" class="level3 unnumbered">
|
||||
<h3 class="unnumbered anchored" data-anchor-id="datasets-3">Datasets</h3>
|
||||
<table class="table">
|
||||
<thead>
|
||||
<tr class="header">
|
||||
<th>Sensor</th>
|
||||
<th>Timeframe</th>
|
||||
<th>Resolution</th>
|
||||
<th>Coverage</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr class="odd">
|
||||
<td><a href="https://developers.google.com/earth-engine/datasets/catalog/ECMWF_CAMS_NRT">CAMS NRT</a></td>
|
||||
<td>2016-Present</td>
|
||||
<td>44528m</td>
|
||||
<td>Global</td>
|
||||
</tr>
|
||||
<tr class="even">
|
||||
<td><a href="https://developers.google.com/earth-engine/datasets/catalog/sentinel-5p">Sentinel-5p</a></td>
|
||||
<td>2018-Present</td>
|
||||
<td>1113m</td>
|
||||
<td>Global</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</section>
|
||||
</section>
|
||||
<section id="mineral-deposits" class="level2" data-number="2.5">
|
||||
<h2 data-number="2.5" class="anchored" data-anchor-id="mineral-deposits"><span class="header-section-number">2.5</span> Mineral Deposits</h2>
|
||||
<div class="quarto-figure quarto-figure-center">
|
||||
<figure class="figure">
|
||||
<p><img src="./images/mining.jpg" class="img-fluid figure-img"></p>
|
||||
<p></p><figcaption class="figure-caption">Zinc deposits across Central Africa</figcaption><p></p>
|
||||
</figure>
|
||||
</div>
|
||||
<p>Mining activities often play an important role in conflict. According to an influential <a href="https://www.aeaweb.org/articles?id=10.1257/aer.20150774">study</a>, “the historical rise in mineral prices might explain up to one-fourth of the average level of violence across African countries” between 1997 and 2010. Data on the location of mineral deposits can be used to identify areas where mining activities are likely to be taking place, and several such datasets are available in Google Earth Engine.</p>
|
||||
<section id="applications-4" class="level3 unnumbered">
|
||||
<h3 class="unnumbered anchored" data-anchor-id="applications-4">Applications</h3>
|
||||
<ul>
|
||||
<li>Monitoring mining activity</li>
|
||||
<li>Identifying areas where mining activities are likely to be taking place</li>
|
||||
<li>Mapping the distribution of resources in rebel held areas in conflicts fueled by resource extraction</li>
|
||||
</ul>
|
||||
</section>
|
||||
<section id="datasets-4" class="level3 unnumbered">
|
||||
<h3 class="unnumbered anchored" data-anchor-id="datasets-4">Datasets</h3>
|
||||
<table class="table">
|
||||
<thead>
|
||||
<tr class="header">
|
||||
<th>Sensor</th>
|
||||
<th>Timeframe</th>
|
||||
<th>Resolution</th>
|
||||
<th>Coverage</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr class="odd">
|
||||
<td><a href="https://developers.google.com/earth-engine/datasets/tags/isda">iSDA</a></td>
|
||||
<td>2001-2017</td>
|
||||
<td>30m</td>
|
||||
<td>Africa</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</section>
|
||||
</section>
|
||||
<section id="fires" class="level2" data-number="2.6">
|
||||
<h2 data-number="2.6" class="anchored" data-anchor-id="fires"><span class="header-section-number">2.6</span> Fires</h2>
|
||||
<div class="quarto-figure quarto-figure-center">
|
||||
<figure class="figure">
|
||||
<p><img src="./images/fires.jpg" class="img-fluid figure-img"></p>
|
||||
<p></p><figcaption class="figure-caption">Detected fires over Ukraine since 27/02/2022 showing the frontline of the war</figcaption><p></p>
|
||||
</figure>
|
||||
</div>
|
||||
<p>Earth-observing satellites can detect “thermal anomalies” (fires) from space. NASA’s Fire Information for Resource Management System (FIRMS) provides daily data on active fires in near real time, going back to the year 2000. Carlos Gonzales wrote a comprehensive <a href="https://www.bellingcat.com/resources/2022/10/04/scorched-earth-using-nasa-fire-data-to-monitor-war-zones/">Bellingcat article</a> on the use of FIRMS to monitor war zones from Ukraine to Ethiopia. The map above shows that FIRMS detected fires over Eastern Ukraine trace the frontline of the war.</p>
|
||||
<p>FIRMS data are derived from the MODIS satellite, but only show the central location and intensity of a detected fire. Another MODIS product (linked in the table below) generates a monthly map of burned areas, which can be used to assess the spatial extent of fires.</p>
|
||||
<section id="applications-5" class="level3 unnumbered">
|
||||
<h3 class="unnumbered anchored" data-anchor-id="applications-5">Applications</h3>
|
||||
<ul>
|
||||
<li>Identification of possible artillery strikes/fighting in places like Ukraine</li>
|
||||
<li>Environmental warfare and “scorched earth” policies</li>
|
||||
<li>Large scale arson
|
||||
<ul>
|
||||
<li>e.g. <a href="https://citizenevidence.org/2021/02/26/using-viirs-fire-data-for-human-rights-research/">Refugee camps burned down in Myanmar</a></li>
|
||||
</ul></li>
|
||||
</ul>
|
||||
</section>
|
||||
<section id="datasets-5" class="level3 unnumbered">
|
||||
<h3 class="unnumbered anchored" data-anchor-id="datasets-5">Datasets</h3>
|
||||
<table class="table">
|
||||
<thead>
|
||||
<tr class="header">
|
||||
<th>Sensor</th>
|
||||
<th>Timeframe</th>
|
||||
<th>Resolution</th>
|
||||
<th>Coverage</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr class="odd">
|
||||
<td><a href="https://developers.google.com/earth-engine/datasets/catalog/FIRMS">FIRMS</a></td>
|
||||
<td>2000-Present</td>
|
||||
<td>1000m</td>
|
||||
<td>Global</td>
|
||||
</tr>
|
||||
<tr class="even">
|
||||
<td><a href="https://developers.google.com/earth-engine/datasets/catalog/CIESIN_GPWv411_GPW_Population_Count">MODIS Burned Area</a></td>
|
||||
<td>2000-Present</td>
|
||||
<td>500m</td>
|
||||
<td>Global</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</section>
|
||||
</section>
|
||||
<section id="population-density-estimates" class="level2" data-number="2.7">
|
||||
<h2 data-number="2.7" class="anchored" data-anchor-id="population-density-estimates"><span class="header-section-number">2.7</span> Population Density Estimates</h2>
|
||||
<div class="quarto-figure quarto-figure-center">
|
||||
<figure class="figure">
|
||||
<p><img src="./images/pop.jpg" class="img-fluid figure-img"></p>
|
||||
<p></p><figcaption class="figure-caption">Population density estimates around Pyongyang, North Korea</figcaption><p></p>
|
||||
</figure>
|
||||
</div>
|
||||
<p>Sometimes, we may want to get an estimate the population in a specific area to ballpark how many people might be affected by a natural disaster, a counteroffensive, or a missile strike. You can’t really google “what is the population in this rectangle i’ve drawn in Northeastern Syria?” and get a good answer. Luckily, there are several spatial population datasets hosted in GEE that let you do just that. Some, such as WorldPop, provide estimated breakdowns by age and sex as well. However, it is extremely important to bear in mind that these are <strong>estimates</strong>, and will <strong>not</strong> take into account things like conflict-induced displacement. For example, Oak Ridge National Laboratory’s LandScan program has released high-resolution population data for Ukraine, but this pertains to the pre-war population distribution. The war has radically changed this distribution, so these estimates no longer reflect where people <em>are</em>. Still, this dataset could be used to roughly estimate displacement or the number of people who will need new housing.</p>
|
||||
<section id="applications-6" class="level3 unnumbered">
|
||||
<h3 class="unnumbered anchored" data-anchor-id="applications-6">Applications:</h3>
|
||||
<ul>
|
||||
<li>Rough estimates of civilians at risk from conflict or disaster, provided at a high spatial resolution</li>
|
||||
</ul>
|
||||
</section>
|
||||
<section id="datasets-6" class="level3 unnumbered">
|
||||
<h3 class="unnumbered anchored" data-anchor-id="datasets-6">Datasets</h3>
|
||||
<table class="table">
|
||||
<thead>
|
||||
<tr class="header">
|
||||
<th>Sensor</th>
|
||||
<th>Timeframe</th>
|
||||
<th>Resolution</th>
|
||||
<th>Coverage</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr class="odd">
|
||||
<td><a href="https://developers.google.com/earth-engine/datasets/tags/worldpop">Worldpop</a></td>
|
||||
<td>2000-2021</td>
|
||||
<td>92m</td>
|
||||
<td>Global</td>
|
||||
</tr>
|
||||
<tr class="even">
|
||||
<td><a href="https://developers.google.com/earth-engine/datasets/catalog/CIESIN_GPWv411_GPW_Population_Count">GPW</a></td>
|
||||
<td>2000-2021</td>
|
||||
<td>927m</td>
|
||||
<td>Global</td>
|
||||
</tr>
|
||||
<tr class="odd">
|
||||
<td><a href="https://developers.google.com/earth-engine/datasets/catalog/DOE_ORNL_LandScan_HD_Ukraine_202201">LandScan</a></td>
|
||||
<td>2013–Present</td>
|
||||
<td>100m</td>
|
||||
<td>Ukraine</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</section>
|
||||
</section>
|
||||
<section id="building-footprints" class="level2" data-number="2.8">
|
||||
<h2 data-number="2.8" class="anchored" data-anchor-id="building-footprints"><span class="header-section-number">2.8</span> Building Footprints</h2>
|
||||
<div class="quarto-figure quarto-figure-center">
|
||||
<figure class="figure">
|
||||
<p><img src="./images/footprints.png" class="img-fluid figure-img"></p>
|
||||
<p></p><figcaption class="figure-caption">Building footprints in Mariupol, Ukraine colored by whether the building is damaged</figcaption><p></p>
|
||||
</figure>
|
||||
</div>
|
||||
<p>A building footprint dataset contains the two dimensional outlines of buildings in a given area. Currently, GEE hosts one building footprint dataset which covers all of Africa. In 2022, Microsoft released a free <a href="https://www.microsoft.com/en-us/maps/building-footprints">global building footprint dataset</a>, though to use it in Earth Engine you’ll have to download it from their <a href="https://github.com/Microsoft/USBuildingFootprints">GitHub page</a> and upload it manually to GEE. The same goes for OpenStreetMap (OSM), a public database of building footprints, roads, and other features that also contains useful annotations for many buildings indicating their use. <a href="https://www.youtube.com/watch?v=bJkV3l5Haq0">Benjamin Strick</a> has a great youtube video on conducting investigations using OSM data.</p>
|
||||
<section id="applications-7" class="level3 unnumbered">
|
||||
<h3 class="unnumbered anchored" data-anchor-id="applications-7">Applications:</h3>
|
||||
<ul>
|
||||
<li>Joining damage estimate data with the number of buildings in an area</li>
|
||||
</ul>
|
||||
</section>
|
||||
<section id="datasets-7" class="level3 unnumbered">
|
||||
<h3 class="unnumbered anchored" data-anchor-id="datasets-7">Datasets</h3>
|
||||
<table class="table">
|
||||
<thead>
|
||||
<tr class="header">
|
||||
<th>Dataset</th>
|
||||
<th>Timeframe</th>
|
||||
<th>Coverage</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr class="odd">
|
||||
<td><a href="https://developers.google.com/earth-engine/datasets/catalog/GOOGLE_Research_open-buildings_v2_polygons">Open Buildings</a></td>
|
||||
<td>2022</td>
|
||||
<td>Africa</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</section>
|
||||
</section>
|
||||
<section id="administrative-boundaries" class="level2" data-number="2.9">
|
||||
<h2 data-number="2.9" class="anchored" data-anchor-id="administrative-boundaries"><span class="header-section-number">2.9</span> Administrative Boundaries</h2>
|
||||
<div class="quarto-figure quarto-figure-center">
|
||||
<figure class="figure">
|
||||
<p><img src="./images/fao_gaul.jpg" class="img-fluid figure-img"></p>
|
||||
<p></p><figcaption class="figure-caption">Second-level administrative boundaries in Yemen</figcaption><p></p>
|
||||
</figure>
|
||||
</div>
|
||||
<p>Spatial analysis often have to aggregate information over a defined area; we may want to assess the total burned area by province in Ukraine, or count the number of Saudi airstrikes by district in Yemen. For that, we need data on these administrative boundaries. GEE hosts several such datasets at the country, province, and district (or equivalent) level.</p>
|
||||
<section id="applications-8" class="level3 unnumbered">
|
||||
<h3 class="unnumbered anchored" data-anchor-id="applications-8">Applications</h3>
|
||||
<ul>
|
||||
<li>Quick spatial calculations for different provinces/districts in a country
|
||||
<ul>
|
||||
<li>e.g. counts of conflict events by district over time</li>
|
||||
</ul></li>
|
||||
</ul>
|
||||
</section>
|
||||
<section id="datasets-8" class="level3 unnumbered">
|
||||
<h3 class="unnumbered anchored" data-anchor-id="datasets-8">Datasets</h3>
|
||||
<table class="table">
|
||||
<thead>
|
||||
<tr class="header">
|
||||
<th>Dataset</th>
|
||||
<th>Timeframe</th>
|
||||
<th>Coverage</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr class="odd">
|
||||
<td><a href="https://developers.google.com/earth-engine/datasets/tags/gaul">FAO GAUL</a></td>
|
||||
<td>2015</td>
|
||||
<td>Global</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</section>
|
||||
</section>
|
||||
<section id="global-power-plant-database" class="level2" data-number="2.10">
|
||||
<h2 data-number="2.10" class="anchored" data-anchor-id="global-power-plant-database"><span class="header-section-number">2.10</span> Global Power Plant Database</h2>
|
||||
<div class="quarto-figure quarto-figure-center">
|
||||
<figure class="figure">
|
||||
<p><img src="./images/power.jpg" class="img-fluid figure-img"></p>
|
||||
<p></p><figcaption class="figure-caption">Power plants in Ukraine colored by type</figcaption><p></p>
|
||||
</figure>
|
||||
</div>
|
||||
<p>The Global Power Plant Database is a comprehensive, open source database of power plants around the world. It centralizes power plant data to make it easier to navigate, compare and draw insights. Each power plant is geolocated and entries contain information on plant capacity, generation, ownership, and fuel type. As of June 2018, the database includes around 28,500 power plants from 164 countries. The database is curated by the <a href="https://datasets.wri.org/dataset/globalpowerplantdatabase">World Resources Institude (WRI)</a>.</p>
|
||||
<section id="applications-9" class="level3 unnumbered">
|
||||
<h3 class="unnumbered anchored" data-anchor-id="applications-9">Applications:</h3>
|
||||
<ul>
|
||||
<li>Analyzing the impact of conflict on critical infrastructure.
|
||||
<ul>
|
||||
<li>e.g. fighting in Ukraine taking place around nuclear power facilities.</li>
|
||||
</ul></li>
|
||||
<li>Could be combined with the atmospheric measurements of different pollutants and the population estimates data to assess the impact of various forms of energy generation on air quality and public health.</li>
|
||||
</ul>
|
||||
</section>
|
||||
<section id="datasets-9" class="level3 unnumbered">
|
||||
<h3 class="unnumbered anchored" data-anchor-id="datasets-9">Datasets</h3>
|
||||
<table class="table">
|
||||
<thead>
|
||||
<tr class="header">
|
||||
<th>Dataset</th>
|
||||
<th>Timeframe</th>
|
||||
<th>Coverage</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr class="odd">
|
||||
<td><a href="https://developers.google.com/earth-engine/datasets/catalog/WRI_GPPD_power_plants">GPPD</a></td>
|
||||
<td>2018</td>
|
||||
<td>Global</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
|
||||
</section>
|
||||
@@ -531,7 +1041,7 @@ window.document.addEventListener("DOMContentLoaded", function (event) {
|
||||
<nav class="page-navigation">
|
||||
<div class="nav-page nav-page-previous">
|
||||
<a href="./ch1.html" class="pagination-link">
|
||||
<i class="bi bi-arrow-left-short"></i> <span class="nav-page-text"><span class="chapter-number">1</span> <span class="chapter-title">Data Acquisition</span></span>
|
||||
<i class="bi bi-arrow-left-short"></i> <span class="nav-page-text"><span class="chapter-number">1</span> <span class="chapter-title">Remote Sensing</span></span>
|
||||
</a>
|
||||
</div>
|
||||
<div class="nav-page nav-page-next">
|
||||
@@ -541,7 +1051,6 @@ window.document.addEventListener("DOMContentLoaded", function (event) {
|
||||
</div>
|
||||
</nav>
|
||||
</div> <!-- /content -->
|
||||
<script>videojs(video_shortcode_videojs_video1);</script>
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -147,12 +147,12 @@ ul.task-list li input[type="checkbox"] {
|
||||
<ul id="quarto-sidebar-section-1" class="collapse list-unstyled sidebar-section depth1 show">
|
||||
<li class="sidebar-item">
|
||||
<div class="sidebar-item-container">
|
||||
<a href="./ch1.html" class="sidebar-item-text sidebar-link"><span class="chapter-number">1</span> <span class="chapter-title">Data Acquisition</span></a>
|
||||
<a href="./ch1.html" class="sidebar-item-text sidebar-link"><span class="chapter-number">1</span> <span class="chapter-title">Remote Sensing</span></a>
|
||||
</div>
|
||||
</li>
|
||||
<li class="sidebar-item">
|
||||
<div class="sidebar-item-container">
|
||||
<a href="./ch2.html" class="sidebar-item-text sidebar-link"><span class="chapter-number">2</span> <span class="chapter-title">Remote Sensing</span></a>
|
||||
<a href="./ch2.html" class="sidebar-item-text sidebar-link"><span class="chapter-number">2</span> <span class="chapter-title">Data Acquisition</span></a>
|
||||
</div>
|
||||
</li>
|
||||
<li class="sidebar-item">
|
||||
@@ -196,12 +196,7 @@ ul.task-list li input[type="checkbox"] {
|
||||
<h2 id="toc-title">Table of contents</h2>
|
||||
|
||||
<ul>
|
||||
<li><a href="#remote_sensing" id="toc-remote_sensing" class="nav-link active" data-scroll-target="#remote_sensing"><span class="toc-section-number">3.1</span> Multispectral Remote Sensing</a>
|
||||
<ul class="collapse">
|
||||
<li><a href="#spatial-resolution" id="toc-spatial-resolution" class="nav-link" data-scroll-target="#spatial-resolution"><span class="toc-section-number">3.1.1</span> Spatial Resolution</a></li>
|
||||
<li><a href="#spectral-resolution" id="toc-spectral-resolution" class="nav-link" data-scroll-target="#spectral-resolution"><span class="toc-section-number">3.1.2</span> Spectral Resolution</a></li>
|
||||
<li><a href="#temporal-resolution" id="toc-temporal-resolution" class="nav-link" data-scroll-target="#temporal-resolution"><span class="toc-section-number">3.1.3</span> Temporal Resolution</a></li>
|
||||
</ul></li>
|
||||
<li><a href="#getting-started" id="toc-getting-started" class="nav-link active" data-scroll-target="#getting-started"><span class="toc-section-number">3.1</span> Getting Started</a></li>
|
||||
</ul>
|
||||
<div class="toc-actions"><div><i class="bi bi-github"></i></div><div class="action-links"><p><a href="https://github.com/oballinger/GEE_OSINT/edit/main/ch3.qmd" class="toc-action">Edit this page</a></p></div></div></nav>
|
||||
</div>
|
||||
@@ -225,47 +220,10 @@ ul.task-list li input[type="checkbox"] {
|
||||
|
||||
</header>
|
||||
|
||||
<section id="remote_sensing" class="level2" data-number="3.1">
|
||||
<h2 data-number="3.1" class="anchored" data-anchor-id="remote_sensing"><span class="header-section-number">3.1</span> Multispectral Remote Sensing</h2>
|
||||
<p>There are three spatial, spectral, and temporal.</p>
|
||||
<section id="spatial-resolution" class="level3" data-number="3.1.1">
|
||||
<h3 data-number="3.1.1" class="anchored" data-anchor-id="spatial-resolution"><span class="header-section-number">3.1.1</span> Spatial Resolution</h3>
|
||||
<p>Spatial resolution governs how “sharp” an image looks. The Google Maps satellite basemap, for example, is really sharp Most of the optical imagery that is freely available has relatively low spatial resolution (it looks more grainy than, for example, the Google satellite basemap),</p>
|
||||
<p><img src="./images/Landsat.png" class="img-fluid"> <img src="./images/Sentinel2.png" class="img-fluid"> <img src="./images/Maxar.png" class="img-fluid"></p>
|
||||
<p><img src="./images/kh11.png" class="img-fluid"></p>
|
||||
</section>
|
||||
<section id="spectral-resolution" class="level3" data-number="3.1.2">
|
||||
<h3 data-number="3.1.2" class="anchored" data-anchor-id="spectral-resolution"><span class="header-section-number">3.1.2</span> Spectral Resolution</h3>
|
||||
<p>What open source imagery lacks in spatial resolution it often makes up for with <em>spectral</em> resolution. Really sharp imagery from MAXAR, for example, collects</p>
|
||||
<p>Different materials reflect light differently. An apple absorbs shorter wavelengths (e.g. blue and green), and reflects longer wavelengths (red). Our eyes use that information– the color– to distinguish between different objects. But our eyes can only see a relatively small sliver of the electromagnetic spectrum covering blue, yellow, and red; we can’t see UV or infrared wavelengths, for example, though the extent to which different materials reflect or absorb these wavelengths is just as useful for distinguishing between them. For example, Astroturf (fake plastic grass) and real grass will both look green to us, espeically from a satellite image. But living plants absorb radiation from the sun in a part of the light spectrum that we can’t see. There’s a spectral index called the Normalized Difference Vegetation Index (NDVI) which exploits this fact to isolate vegetation in multispectral satellite imagery. So if we look at <a href="https://en.wikipedia.org/wiki/Gillette_Stadium">Gilette Stadium</a> near Boston, we can tell that the three training fields south of the stadium are real grass (they generate high NDVI values, showing up red), while the pitch in the stadium itself is astroturf (generating low NDVI values, showing up blue).</p>
|
||||
<div class="quarto-figure quarto-figure-center">
|
||||
<figure class="figure">
|
||||
<p><img src="images/NDVI.jpg" class="img-fluid figure-img"></p>
|
||||
<p></p><figcaption class="figure-caption">VHR image of Gilette Stadium with Sentinel-2 derived NDVI overlay</figcaption><p></p>
|
||||
</figure>
|
||||
</div>
|
||||
<p>In other words, even though these fields are all green and indistinguishable to the human eye, their <em>spectral profiles</em> beyond the visible light spectrum differ, and we can use this information to distinguish between them. Below is a plot of the spectral profiles of different materials, including oil.</p>
|
||||
<iframe title="Spectral Profiles of Different Materials" aria-label="Interactive line chart" id="datawrapper-chart-b1kcX" src="https://datawrapper.dwcdn.net/b1kcX/3/" scrolling="no" frameborder="0" style="width: 0; min-width: 100% !important; border: none;" height="400">
|
||||
</iframe>
|
||||
<script type="text/javascript">!function(){"use strict";window.addEventListener("message",(function(e){if(void 0!==e.data["datawrapper-height"]){var t=document.querySelectorAll("iframe");for(var a in e.data["datawrapper-height"])for(var r=0;r<t.length;r++){if(t[r].contentWindow===e.source)t[r].style.height=e.data["datawrapper-height"][a]+"px"}}}))}();
|
||||
</script>
|
||||
<p>The European Space Agency’s Sentinel-2 satellite collects spectral information well beyond the visible light spectrum, enabling this sort of analysis. It chops the electromagnetic spectrum up into “bands”, and measures how strongly wavelengths in each of those bands is reflected:</p>
|
||||
<p><img src="images/S2_bands.png" class="img-fluid"></p>
|
||||
<p>We’ll be using this satellite to distinguish between oil and other materials, similar to the way we were able to distinguish between real and fake grass at Gilette Stadium. First, we’ll have to do a bit of pre-processing on the Sentinel-2 imagery after which we’ll train a machine learning model to identify oil.</p>
|
||||
</section>
|
||||
<section id="temporal-resolution" class="level3" data-number="3.1.3">
|
||||
<h3 data-number="3.1.3" class="anchored" data-anchor-id="temporal-resolution"><span class="header-section-number">3.1.3</span> Temporal Resolution</h3>
|
||||
<p>Finally, time There is often a tradeoff between spatial and temporal resolution.</p>
|
||||
<p>The Google Maps basemap is very high resolution, available globally, and is freely available. But it has no <em>temporal</em> dimension: it’s a snapshot from one particular point in time. If the thing we’re interested in involves <em>changes</em> over time, this basemap will be of limited use.</p>
|
||||
<p>The <strong>“revisit rate”</strong> is the time it takes a satellite to image the same point on earth</p>
|
||||
<ul>
|
||||
<li><a href="https://sentinel.esa.int/web/sentinel/missions/sentinel-2">Sentinel 2</a>: 5 days</li>
|
||||
<li><a href="https://landsat.gsfc.nasa.gov/satellites/landsat-9/#:~:text=Landsat%209%20replaces%20Landsat%207,for%20Landsat%208%20%2B%20Landsat%207.">Landsat 9</a>: 8 days</li>
|
||||
<li><a href="https://www.planet.com/pulse/12x-rapid-revisit-announcement/">Planet SkySat</a>: 2-3 hours</li>
|
||||
</ul>
|
||||
<section id="getting-started" class="level2" data-number="3.1">
|
||||
<h2 data-number="3.1" class="anchored" data-anchor-id="getting-started"><span class="header-section-number">3.1</span> Getting Started</h2>
|
||||
|
||||
|
||||
</section>
|
||||
</section>
|
||||
|
||||
</main> <!-- /main -->
|
||||
@@ -520,7 +478,7 @@ window.document.addEventListener("DOMContentLoaded", function (event) {
|
||||
<nav class="page-navigation">
|
||||
<div class="nav-page nav-page-previous">
|
||||
<a href="./ch2.html" class="pagination-link">
|
||||
<i class="bi bi-arrow-left-short"></i> <span class="nav-page-text"><span class="chapter-number">2</span> <span class="chapter-title">Remote Sensing</span></span>
|
||||
<i class="bi bi-arrow-left-short"></i> <span class="nav-page-text"><span class="chapter-number">2</span> <span class="chapter-title">Data Acquisition</span></span>
|
||||
</a>
|
||||
</div>
|
||||
<div class="nav-page nav-page-next">
|
||||
|
||||
124
_book/ch4.html
124
_book/ch4.html
@@ -2,7 +2,7 @@
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en"><head>
|
||||
|
||||
<meta charset="utf-8">
|
||||
<meta name="generator" content="quarto-1.1.251">
|
||||
<meta name="generator" content="quarto-1.2.269">
|
||||
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=yes">
|
||||
|
||||
@@ -30,7 +30,7 @@ ul.task-list li input[type="checkbox"] {
|
||||
<script src="site_libs/quarto-search/fuse.min.js"></script>
|
||||
<script src="site_libs/quarto-search/quarto-search.js"></script>
|
||||
<meta name="quarto:offset" content="./">
|
||||
<link href="./ch5.html" rel="next">
|
||||
<link href="./SyriaNTL.html" rel="next">
|
||||
<link href="./ch3.html" rel="prev">
|
||||
<script src="site_libs/quarto-html/quarto.js"></script>
|
||||
<script src="site_libs/quarto-html/popper.min.js"></script>
|
||||
@@ -84,7 +84,7 @@ ul.task-list li input[type="checkbox"] {
|
||||
<!-- sidebar -->
|
||||
<nav id="quarto-sidebar" class="sidebar collapse sidebar-navigation floating overflow-auto">
|
||||
<div class="pt-lg-2 mt-2 text-left sidebar-header sidebar-header-stacked">
|
||||
<a href="./" class="sidebar-logo-link">
|
||||
<a href="./index.html" class="sidebar-logo-link">
|
||||
<img src="./logo_white.png" alt="" class="sidebar-logo py-0 d-lg-inline d-none">
|
||||
</a>
|
||||
<div class="sidebar-title mb-0 py-0">
|
||||
@@ -137,46 +137,56 @@ ul.task-list li input[type="checkbox"] {
|
||||
<a href="./index.html" class="sidebar-item-text sidebar-link">Introduction</a>
|
||||
</div>
|
||||
</li>
|
||||
<li class="sidebar-item">
|
||||
<li class="sidebar-item sidebar-item-section">
|
||||
<div class="sidebar-item-container">
|
||||
<a class="sidebar-item-text sidebar-link text-start" data-bs-toggle="collapse" data-bs-target="#quarto-sidebar-section-1" aria-expanded="true">Learning</a>
|
||||
<a class="sidebar-item-toggle text-start" data-bs-toggle="collapse" data-bs-target="#quarto-sidebar-section-1" aria-expanded="true">
|
||||
<i class="bi bi-chevron-right ms-2"></i>
|
||||
</a>
|
||||
</div>
|
||||
<ul id="quarto-sidebar-section-1" class="collapse list-unstyled sidebar-section depth1 show">
|
||||
<li class="sidebar-item">
|
||||
<div class="sidebar-item-container">
|
||||
<a href="./ch1.html" class="sidebar-item-text sidebar-link"><span class="chapter-number">1</span> <span class="chapter-title">Data Acquisition</span></a>
|
||||
<a href="./ch1.html" class="sidebar-item-text sidebar-link"><span class="chapter-number">1</span> <span class="chapter-title">Remote Sensing</span></a>
|
||||
</div>
|
||||
</li>
|
||||
<li class="sidebar-item">
|
||||
<li class="sidebar-item">
|
||||
<div class="sidebar-item-container">
|
||||
<a href="./ch2.html" class="sidebar-item-text sidebar-link"><span class="chapter-number">2</span> <span class="chapter-title">Getting Started</span></a>
|
||||
<a href="./ch2.html" class="sidebar-item-text sidebar-link"><span class="chapter-number">2</span> <span class="chapter-title">Data Acquisition</span></a>
|
||||
</div>
|
||||
</li>
|
||||
<li class="sidebar-item">
|
||||
<li class="sidebar-item">
|
||||
<div class="sidebar-item-container">
|
||||
<a href="./ch3.html" class="sidebar-item-text sidebar-link"><span class="chapter-number">3</span> <span class="chapter-title">Algorithms</span></a>
|
||||
</div>
|
||||
</li>
|
||||
<li class="sidebar-item">
|
||||
<li class="sidebar-item">
|
||||
<div class="sidebar-item-container">
|
||||
<a href="./ch4.html" class="sidebar-item-text sidebar-link active"><span class="chapter-number">4</span> <span class="chapter-title">Application Development</span></a>
|
||||
</div>
|
||||
</li>
|
||||
<li class="sidebar-item">
|
||||
<div class="sidebar-item-container">
|
||||
<a href="./ch5.html" class="sidebar-item-text sidebar-link"><span class="chapter-number">5</span> <span class="chapter-title">Case Studies</span></a>
|
||||
</div>
|
||||
</li>
|
||||
<li class="sidebar-item">
|
||||
</ul>
|
||||
</li>
|
||||
<li class="sidebar-item sidebar-item-section">
|
||||
<div class="sidebar-item-container">
|
||||
<a class="sidebar-item-text sidebar-link text-start" data-bs-toggle="collapse" data-bs-target="#quarto-sidebar-section-2" aria-expanded="true">Case Studies</a>
|
||||
<a class="sidebar-item-toggle text-start" data-bs-toggle="collapse" data-bs-target="#quarto-sidebar-section-2" aria-expanded="true">
|
||||
<i class="bi bi-chevron-right ms-2"></i>
|
||||
</a>
|
||||
</div>
|
||||
<ul id="quarto-sidebar-section-2" class="collapse list-unstyled sidebar-section depth1 show">
|
||||
<li class="sidebar-item">
|
||||
<div class="sidebar-item-container">
|
||||
<a href="./SyriaNTL.html" class="sidebar-item-text sidebar-link">War at Night</a>
|
||||
</div>
|
||||
</li>
|
||||
<li class="sidebar-item">
|
||||
<li class="sidebar-item">
|
||||
<div class="sidebar-item-container">
|
||||
<a href="./RojavaRefineries.html" class="sidebar-item-text sidebar-link">Refinery Detection</a>
|
||||
</div>
|
||||
</li>
|
||||
<li class="sidebar-item">
|
||||
<div class="sidebar-item-container">
|
||||
<a href="./references.html" class="sidebar-item-text sidebar-link">References</a>
|
||||
</div>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
</nav>
|
||||
@@ -197,6 +207,7 @@ ul.task-list li input[type="checkbox"] {
|
||||
<div class="quarto-title-meta">
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
@@ -339,7 +350,9 @@ window.document.addEventListener("DOMContentLoaded", function (event) {
|
||||
// Switch to dark mode if need be
|
||||
if (hasAlternateSentinel()) {
|
||||
toggleColorMode(true);
|
||||
}
|
||||
} else {
|
||||
toggleColorMode(false);
|
||||
}
|
||||
const icon = "";
|
||||
const anchorJS = new window.AnchorJS();
|
||||
anchorJS.options = {
|
||||
@@ -361,7 +374,24 @@ window.document.addEventListener("DOMContentLoaded", function (event) {
|
||||
button.classList.add('code-copy-button-checked');
|
||||
var currentTitle = button.getAttribute("title");
|
||||
button.setAttribute("title", "Copied!");
|
||||
let tooltip;
|
||||
if (window.bootstrap) {
|
||||
button.setAttribute("data-bs-toggle", "tooltip");
|
||||
button.setAttribute("data-bs-placement", "left");
|
||||
button.setAttribute("data-bs-title", "Copied!");
|
||||
tooltip = new bootstrap.Tooltip(button,
|
||||
{ trigger: "manual",
|
||||
customClass: "code-copy-button-tooltip",
|
||||
offset: [0, -8]});
|
||||
tooltip.show();
|
||||
}
|
||||
setTimeout(function() {
|
||||
if (tooltip) {
|
||||
tooltip.hide();
|
||||
button.removeAttribute("data-bs-title");
|
||||
button.removeAttribute("data-bs-toggle");
|
||||
button.removeAttribute("data-bs-placement");
|
||||
}
|
||||
button.setAttribute("title", currentTitle);
|
||||
button.classList.remove('code-copy-button-checked');
|
||||
}, 1000);
|
||||
@@ -397,24 +427,42 @@ window.document.addEventListener("DOMContentLoaded", function (event) {
|
||||
return note.innerHTML;
|
||||
});
|
||||
}
|
||||
const findCites = (el) => {
|
||||
const parentEl = el.parentElement;
|
||||
if (parentEl) {
|
||||
const cites = parentEl.dataset.cites;
|
||||
if (cites) {
|
||||
return {
|
||||
el,
|
||||
cites: cites.split(' ')
|
||||
};
|
||||
} else {
|
||||
return findCites(el.parentElement)
|
||||
}
|
||||
} else {
|
||||
return undefined;
|
||||
}
|
||||
};
|
||||
var bibliorefs = window.document.querySelectorAll('a[role="doc-biblioref"]');
|
||||
for (var i=0; i<bibliorefs.length; i++) {
|
||||
const ref = bibliorefs[i];
|
||||
const cites = ref.parentNode.getAttribute('data-cites').split(' ');
|
||||
tippyHover(ref, function() {
|
||||
var popup = window.document.createElement('div');
|
||||
cites.forEach(function(cite) {
|
||||
var citeDiv = window.document.createElement('div');
|
||||
citeDiv.classList.add('hanging-indent');
|
||||
citeDiv.classList.add('csl-entry');
|
||||
var biblioDiv = window.document.getElementById('ref-' + cite);
|
||||
if (biblioDiv) {
|
||||
citeDiv.innerHTML = biblioDiv.innerHTML;
|
||||
}
|
||||
popup.appendChild(citeDiv);
|
||||
const citeInfo = findCites(ref);
|
||||
if (citeInfo) {
|
||||
tippyHover(citeInfo.el, function() {
|
||||
var popup = window.document.createElement('div');
|
||||
citeInfo.cites.forEach(function(cite) {
|
||||
var citeDiv = window.document.createElement('div');
|
||||
citeDiv.classList.add('hanging-indent');
|
||||
citeDiv.classList.add('csl-entry');
|
||||
var biblioDiv = window.document.getElementById('ref-' + cite);
|
||||
if (biblioDiv) {
|
||||
citeDiv.innerHTML = biblioDiv.innerHTML;
|
||||
}
|
||||
popup.appendChild(citeDiv);
|
||||
});
|
||||
return popup.innerHTML;
|
||||
});
|
||||
return popup.innerHTML;
|
||||
});
|
||||
}
|
||||
}
|
||||
});
|
||||
</script>
|
||||
@@ -425,8 +473,8 @@ window.document.addEventListener("DOMContentLoaded", function (event) {
|
||||
</a>
|
||||
</div>
|
||||
<div class="nav-page nav-page-next">
|
||||
<a href="./ch5.html" class="pagination-link">
|
||||
<span class="nav-page-text"><span class="chapter-number">5</span> <span class="chapter-title">Case Studies</span></span> <i class="bi bi-arrow-right-short"></i>
|
||||
<a href="./SyriaNTL.html" class="pagination-link">
|
||||
<span class="nav-page-text">War at Night</span> <i class="bi bi-arrow-right-short"></i>
|
||||
</a>
|
||||
</div>
|
||||
</nav>
|
||||
|
||||
@@ -348,5 +348,96 @@
|
||||
"title": "3 Algorithms",
|
||||
"section": "3.1 Multispectral Remote Sensing",
|
||||
"text": "3.1 Multispectral Remote Sensing\nThere are three spatial, spectral, and temporal.\n\n3.1.1 Spatial Resolution\nSpatial resolution governs how “sharp” an image looks. The Google Maps satellite basemap, for example, is really sharp Most of the optical imagery that is freely available has relatively low spatial resolution (it looks more grainy than, for example, the Google satellite basemap),\n \n\n\n\n3.1.2 Spectral Resolution\nWhat open source imagery lacks in spatial resolution it often makes up for with spectral resolution. Really sharp imagery from MAXAR, for example, collects\nDifferent materials reflect light differently. An apple absorbs shorter wavelengths (e.g. blue and green), and reflects longer wavelengths (red). Our eyes use that information– the color– to distinguish between different objects. But our eyes can only see a relatively small sliver of the electromagnetic spectrum covering blue, yellow, and red; we can’t see UV or infrared wavelengths, for example, though the extent to which different materials reflect or absorb these wavelengths is just as useful for distinguishing between them. For example, Astroturf (fake plastic grass) and real grass will both look green to us, espeically from a satellite image. But living plants absorb radiation from the sun in a part of the light spectrum that we can’t see. There’s a spectral index called the Normalized Difference Vegetation Index (NDVI) which exploits this fact to isolate vegetation in multispectral satellite imagery. So if we look at Gilette Stadium near Boston, we can tell that the three training fields south of the stadium are real grass (they generate high NDVI values, showing up red), while the pitch in the stadium itself is astroturf (generating low NDVI values, showing up blue).\n\n\n\nVHR image of Gilette Stadium with Sentinel-2 derived NDVI overlay\n\n\nIn other words, even though these fields are all green and indistinguishable to the human eye, their spectral profiles beyond the visible light spectrum differ, and we can use this information to distinguish between them. Below is a plot of the spectral profiles of different materials, including oil.\n\n\n\nThe European Space Agency’s Sentinel-2 satellite collects spectral information well beyond the visible light spectrum, enabling this sort of analysis. It chops the electromagnetic spectrum up into “bands”, and measures how strongly wavelengths in each of those bands is reflected:\n\nWe’ll be using this satellite to distinguish between oil and other materials, similar to the way we were able to distinguish between real and fake grass at Gilette Stadium. First, we’ll have to do a bit of pre-processing on the Sentinel-2 imagery after which we’ll train a machine learning model to identify oil.\n\n\n3.1.3 Temporal Resolution\nFinally, time There is often a tradeoff between spatial and temporal resolution.\nThe Google Maps basemap is very high resolution, available globally, and is freely available. But it has no temporal dimension: it’s a snapshot from one particular point in time. If the thing we’re interested in involves changes over time, this basemap will be of limited use.\nThe “revisit rate” is the time it takes a satellite to image the same point on earth\n\nSentinel 2: 5 days\nLandsat 9: 8 days\nPlanet SkySat: 2-3 hours"
|
||||
},
|
||||
{
|
||||
"objectID": "ch3.html#getting-started",
|
||||
"href": "ch3.html#getting-started",
|
||||
"title": "3 Algorithms",
|
||||
"section": "3.1 Getting Started",
|
||||
"text": "3.1 Getting Started"
|
||||
},
|
||||
{
|
||||
"objectID": "ch1.html#orbits",
|
||||
"href": "ch1.html#orbits",
|
||||
"title": "1 Remote Sensing",
|
||||
"section": "1.2 Orbits",
|
||||
"text": "1.2 Orbits\nThe Landsat satellites are in a sun-synchronous orbit, meaning they pass over the same spot on Earth at the same time every day. The Sentinel satellites are in a polar orbit, meaning they pass over the same spot on Earth twice a day, once in the morning and once in the afternoon. NASA have created a great visualisation showing the orbits of the Landsat and Sentinel-2 satellites:\n\nThe Sentinel satellites are in a lower orbit than Landsat, meaning they are closer to the Earth and have a higher resolution."
|
||||
},
|
||||
{
|
||||
"objectID": "ch1.html#resolution",
|
||||
"href": "ch1.html#resolution",
|
||||
"title": "1 Remote Sensing",
|
||||
"section": "1.1 Resolution",
|
||||
"text": "1.1 Resolution\nResolution is one of the most important attributes of satellite imagery.\nhere are three types of resolution: spatial, spectral, and temporal.\n\n1.1.1 Spatial Resolution\nSpatial resolution governs how “sharp” an image looks. The Google Maps satellite basemap, for example, is really sharp Most of the optical imagery that is freely available has relatively low spatial resolution (it looks more grainy than, for example, the Google satellite basemap),\n \n\n\n\n1.1.2 Spectral Resolution\nWhat open source imagery lacks in spatial resolution it often makes up for with spectral resolution. Really sharp imagery from MAXAR, for example, collects\nDifferent materials reflect light differently. An apple absorbs shorter wavelengths (e.g. blue and green), and reflects longer wavelengths (red). Our eyes use that information– the color– to distinguish between different objects. But our eyes can only see a relatively small sliver of the electromagnetic spectrum covering blue, yellow, and red; we can’t see UV or infrared wavelengths, for example, though the extent to which different materials reflect or absorb these wavelengths is just as useful for distinguishing between them. For example, Astroturf (fake plastic grass) and real grass will both look green to us, espeically from a satellite image. But living plants absorb radiation from the sun in a part of the light spectrum that we can’t see. There’s a spectral index called the Normalized Difference Vegetation Index (NDVI) which exploits this fact to isolate vegetation in multispectral satellite imagery. So if we look at Gilette Stadium near Boston, we can tell that the three training fields south of the stadium are real grass (they generate high NDVI values, showing up red), while the pitch in the stadium itself is astroturf (generating low NDVI values, showing up blue).\n\n\n\nVHR image of Gilette Stadium with Sentinel-2 derived NDVI overlay\n\n\nIn other words, even though these fields are all green and indistinguishable to the human eye, their spectral profiles beyond the visible light spectrum differ, and we can use this information to distinguish between them. Below is a plot of the spectral profiles of different materials, including oil.\n\n\n\nThe European Space Agency’s Sentinel-2 satellite collects spectral information well beyond the visible light spectrum, enabling this sort of analysis. It chops the electromagnetic spectrum up into “bands”, and measures how strongly wavelengths in each of those bands is reflected:\n\nWe’ll be using this satellite to distinguish between oil and other materials, similar to the way we were able to distinguish between real and fake grass at Gilette Stadium. First, we’ll have to do a bit of pre-processing on the Sentinel-2 imagery after which we’ll train a machine learning model to identify oil.\n\n\n1.1.3 Temporal Resolution\nFinally, the frequency with which we There is often a tradeoff between spatial and temporal resolution.\nThe Google Maps basemap is very high resolution, available globally, and is freely available. But it has no temporal dimension: it’s a snapshot from one particular point in time. If the thing we’re interested in involves changes over time, this basemap will be of limited use.\nThe “revisit rate” is the amount of time it takes for the satellite to pass over the same location twice. The revisit rate is inversely proportional to the satellite’s altitude: the higher the satellite is, the more frequently it can pass over the same location. This generally means that there’s a tradeoff between spatial resolution and temporal resolution: the higher the spatial resolution, the lower the revisit rate. However, some satellite constellations such as Planet’s SkySat are able to achieve both high spatial and temporal resolution by launching lots of small satellites into orbit at once. Below is a comparison of revisit rates for various satellites:\n\nSentinel 1: 3 days (6 days as of 23/12/21, since Sentinel-1B was decomisioned)\nSentinel 2: 5 days\nLandsat 8-9: 8 days\nPlanet SkySat: 2-3 hours"
|
||||
},
|
||||
{
|
||||
"objectID": "ch2.html#optical-imagery",
|
||||
"href": "ch2.html#optical-imagery",
|
||||
"title": "2 Data Acquisition",
|
||||
"section": "2.1 Optical Imagery",
|
||||
"text": "2.1 Optical Imagery\n\n\n\nSentinel-2 timelapse showing the ancient city of Hasankeyf being flooded following the construction of a dam by the Turkish government.\n\n\nOptical satellite imagery is the bread and butter of many open source investiagtions. It would be tough to list off all of the possible use cases, so here’s a handy flowchart:\n\n\n\n\n%%{init: {'theme': 'base', 'themeVariables': { 'primaryColor': '#FFFFFF' ,'primaryBorderColor':'#000000' , 'lineColor':'#009933'}}}%%\n\nflowchart\n A(Does it happen outside?) \n A--> B(Yes)\n A--> C(No)\n D(Is it very small?)\n B-->D\n E(Yes)\n F(No)\n D-->F\n D-->E\nG(Use optical satellite imagery)\nH(Don't use optical satellite imagery)\nE-->H\nF-->G\nC-->H\n\n\n\n\n\n\n\n\nThis is, of course, a bit of an exaggeration. But if you’re interested in a visible phenomenon that happens outdoors and that isn’t very tiny, chances are an earth-observing satellite has taken a picture of it. What that picture can tell you naturally depends on what you’re interested in learning. For a deeper dive into analyzing optical satellite imagery, see the subsection on multispectral remote sensing..\nThere are several different types of optical satellite imagery available in the GEE catalogue. The main collections are the Landsat and Sentinel series of satellites, which are operated by NASA and the European Space Agency, respectively. Landsat satellites have been in orbit since 1972, and Sentinel satellites have been in orbit since 2015. Norway’s International Climate and Forest Initiative (NICFI) has also contributed to the GEE catalogue by providing a collection of optical imagery from Planet’s PlanetScope satellites. These are higher resolution (4.7 meters per pixel) than Landsat (30m/px) and Sentinel-2 (10m/px), but are only available for the tropics. Even higher resolution imagery (60cm/px) is available from the GEE catalogue from the National Agriculture Imagery Program, but it is only available for the United States. For more details, see the “Datasets” section below.\n\nApplications\n\nGeolocating pictures\n\nSome of Bellingcat’s earliest work involved figuring out where a picture was taken by cross-referencing it with optical satellite imagery.\n\nGeneral surveillance\n\nMonitoring Chinese missile silo construction.\nAmassing evidence of genocide in Bucha, Ukraine\n\nDamage detection\n\nUkraine\nMali\nAround the World\n\nVerifying the locations of artillery/missile/drone strikes\n\nThe 2019 attack on Saudi Arabia’s Abqaiq oil processing facility.\n\nMonitoring illegal mining/logging\n\nGlobal Witness investigation into illegal mining by militias in Myanmar.\nTracking illegal logging across the world.\n\n\n\n\nDatasets\n\n\n\nSensor\nTimeframe\nResolution\nCoverage\n\n\n\n\nLandsat 1-5\n1972–1999\n30m\nGlobal\n\n\nLandsat 7\n1999–2021\n30m\nGlobal\n\n\nLandsat 8\n2013–Present\n30m\nGlobal\n\n\nLandsat 9\n2021–Present\n30m\nGlobal\n\n\nSentinel-2\n2015–Present\n10m\nGlobal\n\n\nNICFI\n2015-Present\n4.7m\nTropics\n\n\nNAIP\n2002-2021\n0.6m\nUSA"
|
||||
},
|
||||
{
|
||||
"objectID": "ch2.html#radar-imagery",
|
||||
"href": "ch2.html#radar-imagery",
|
||||
"title": "2 Data Acquisition",
|
||||
"section": "2.2 Radar Imagery",
|
||||
"text": "2.2 Radar Imagery\n\n\n\nShips and interference from a radar system are visible in Zhuanghe Wan, near North Korea.\n\n\nAlongside\n\nApplications\n\nChange/Damage detection\nTracking military radar systems\nMaritime surveillance\nMonitoring illegal mining/logging\n\n\n\nDatasets\n\n\n\nSensor\nTimeframe\nResolution\nCoverage\n\n\n\n\nSentinel 1\n2014-Present\n10m\nGlobal"
|
||||
},
|
||||
{
|
||||
"objectID": "ch2.html#nighttime-lights",
|
||||
"href": "ch2.html#nighttime-lights",
|
||||
"title": "2 Data Acquisition",
|
||||
"section": "2.3 Nighttime Lights",
|
||||
"text": "2.3 Nighttime Lights\n\n\n\nA timelapse of nighttime lights over Northern Iraq showing the capture and liberation of Mosul by ISIS.\n\n\nSatellite images of the Earth at night a useful proxy for human activity. The brightness of a given area at night is a function of the number of people living there and the nature of their activities. The effects of conflict, natural disasters, and economic development can all be inferred from changes in nighttime lights.\nThe timelapse above reveals a number of interesting things: The capture of Mosul by ISIS in 2014 and the destruction of its infrastructure during the fighting (shown as the city darkening), as well as the liberation of the city by the Iraqi military in 2017 are all visible in nighttime lights. The code to create this gif, as well as a more in-depth tutorial on the uses of nighttime lights, can be found in the “War at Night” case study.\n\nApplications\n\nDamage detection\nIdentifying gas flaring/oil production\nIdentifying urban areas/military bases illuminated at night\n\n\n\nDatasets\n\n\n\nSensor\nTimeframe\nResolution\nCoverage\n\n\n\n\nDMSP-OLS\n1992-2014\n927m\nGlobal\n\n\nVIIRS\n2014-Present\n463m\nGlobal"
|
||||
},
|
||||
{
|
||||
"objectID": "ch2.html#climate-and-atmospheric-data",
|
||||
"href": "ch2.html#climate-and-atmospheric-data",
|
||||
"title": "2 Data Acquisition",
|
||||
"section": "2.4 Climate and Atmospheric Data",
|
||||
"text": "2.4 Climate and Atmospheric Data\n\n\n\nSulphur Dioxide plume resulting from ISIS attack on the Al-Mishraq Sulphur Plant in Iraq\n\n\nClimate and atmospheric data can be used to track the effects of conflict on the environment. The European Space Agency’s Sentinel-5p satellites measure the concentration of a number of atmospheric gases, including nitrogen dioxide, methane, and ozone. Measurements are available on a daily basis at a fairly high resolution (1km), allowing for the detection of localized sources of pollution such as oil refineries or power plants. For example, see this Bellingcat article in which Wim Zwijnenburg and I trace pollution to specific facilities operated by multinational oil companies in Iraq.\nThe Copernicus Atmosphere Monitoring Service (CAMS) provides similar data at a lower spatial resolution (45km), but measurements are avaialble on an hourly basis. The timelapse above utilizes CAMS data to show a sulphur dioxide plume resulting from an ISIS attack on the Al-Mishraq Sulphur Plant in Iraq. The plant was used to produce sulphuric acid, for use in fertilizers and pesticides. The attack destroyed the plant, causing a fire which burned for a month and released 21 kilotons of sulphur dioxide into the atmosphere per day; the largest human-made release of sulphur dioxide in history.\n\nApplications\n\nMonitoring of airborne pollution\nTracing pollution back to specific facilities and companies\nVisualizing the effects of one-off environmental catastrophes\n\nNordstream 1 leak\nISIS setting Mishraq sulphur plant on fire\n\n\n\n\nDatasets\n\n\n\nSensor\nTimeframe\nResolution\nCoverage\n\n\n\n\nCAMS NRT\n2016-Present\n44528m\nGlobal\n\n\nSentinel-5p\n2018-Present\n1113m\nGlobal"
|
||||
},
|
||||
{
|
||||
"objectID": "ch2.html#mineral-deposits",
|
||||
"href": "ch2.html#mineral-deposits",
|
||||
"title": "2 Data Acquisition",
|
||||
"section": "2.5 Mineral Deposits",
|
||||
"text": "2.5 Mineral Deposits\n\n\n\nZinc deposits across Central Africa\n\n\nMining activities often play an important role in conflict. According to an influential study, “the historical rise in mineral prices might explain up to one-fourth of the average level of violence across African countries” between 1997 and 2010. Data on the location of mineral deposits can be used to identify areas where mining activities are likely to be taking place, and several such datasets are available in Google Earth Engine.\n\nApplications\n\nMonitoring mining activity\nIdentifying areas where mining activities are likely to be taking place\nMapping the distribution of resources in rebel held areas in conflicts fueled by resource extraction\n\n\n\nDatasets\n\n\n\nSensor\nTimeframe\nResolution\nCoverage\n\n\n\n\niSDA\n2001-2017\n30m\nAfrica"
|
||||
},
|
||||
{
|
||||
"objectID": "ch2.html#fires",
|
||||
"href": "ch2.html#fires",
|
||||
"title": "2 Data Acquisition",
|
||||
"section": "2.6 Fires",
|
||||
"text": "2.6 Fires\n\n\n\nDetected fires over Ukraine since 27/02/2022 showing the frontline of the war\n\n\nEarth-observing satellites can detect “thermal anomalies” (fires) from space. NASA’s Fire Information for Resource Management System (FIRMS) provides daily data on active fires in near real time, going back to the year 2000. Carlos Gonzales wrote a comprehensive Bellingcat article on the use of FIRMS to monitor war zones from Ukraine to Ethiopia. The map above shows that FIRMS detected fires over Eastern Ukraine trace the frontline of the war.\nFIRMS data are derived from the MODIS satellite, but only show the central location and intensity of a detected fire. Another MODIS product (linked in the table below) generates a monthly map of burned areas, which can be used to assess the spatial extent of fires.\n\nApplications\n\nIdentification of possible artillery strikes/fighting in places like Ukraine\nEnvironmental warfare and “scorched earth” policies\nLarge scale arson\n\ne.g. Refugee camps burned down in Myanmar\n\n\n\n\nDatasets\n\n\n\nSensor\nTimeframe\nResolution\nCoverage\n\n\n\n\nFIRMS\n2000-Present\n1000m\nGlobal\n\n\nMODIS Burned Area\n2000-Present\n500m\nGlobal"
|
||||
},
|
||||
{
|
||||
"objectID": "ch2.html#population-density-estimates",
|
||||
"href": "ch2.html#population-density-estimates",
|
||||
"title": "2 Data Acquisition",
|
||||
"section": "2.7 Population Density Estimates",
|
||||
"text": "2.7 Population Density Estimates\n\n\n\nPopulation density estimates around Pyongyang, North Korea\n\n\nSometimes, we may want to get an estimate the population in a specific area to ballpark how many people might be affected by a natural disaster, a counteroffensive, or a missile strike. You can’t really google “what is the population in this rectangle i’ve drawn in Northeastern Syria?” and get a good answer. Luckily, there are several spatial population datasets hosted in GEE that let you do just that. Some, such as WorldPop, provide estimated breakdowns by age and sex as well. However, it is extremely important to bear in mind that these are estimates, and will not take into account things like conflict-induced displacement. For example, Oak Ridge National Laboratory’s LandScan program has released high-resolution population data for Ukraine, but this pertains to the pre-war population distribution. The war has radically changed this distribution, so these estimates no longer reflect where people are. Still, this dataset could be used to roughly estimate displacement or the number of people who will need new housing.\n\nApplications:\n\nRough estimates of civilians at risk from conflict or disaster, provided at a high spatial resolution\n\n\n\nDatasets\n\n\n\nSensor\nTimeframe\nResolution\nCoverage\n\n\n\n\nWorldpop\n2000-2021\n92m\nGlobal\n\n\nGPW\n2000-2021\n927m\nGlobal\n\n\nLandScan\n2013–Present\n100m\nUkraine"
|
||||
},
|
||||
{
|
||||
"objectID": "ch2.html#building-footprints",
|
||||
"href": "ch2.html#building-footprints",
|
||||
"title": "2 Data Acquisition",
|
||||
"section": "2.8 Building Footprints",
|
||||
"text": "2.8 Building Footprints\n\n\n\nBuilding footprints in Mariupol, Ukraine colored by whether the building is damaged\n\n\nA building footprint dataset contains the two dimensional outlines of buildings in a given area. Currently, GEE hosts one building footprint dataset which covers all of Africa. In 2022, Microsoft released a free global building footprint dataset, though to use it in Earth Engine you’ll have to download it from their GitHub page and upload it manually to GEE. The same goes for OpenStreetMap (OSM), a public database of building footprints, roads, and other features that also contains useful annotations for many buildings indicating their use. Benjamin Strick has a great youtube video on conducting investigations using OSM data.\n\nApplications:\n\nJoining damage estimate data with the number of buildings in an area\n\n\n\nDatasets\n\n\n\nDataset\nTimeframe\nCoverage\n\n\n\n\nOpen Buildings\n2022\nAfrica"
|
||||
},
|
||||
{
|
||||
"objectID": "ch2.html#administrative-boundaries",
|
||||
"href": "ch2.html#administrative-boundaries",
|
||||
"title": "2 Data Acquisition",
|
||||
"section": "2.9 Administrative Boundaries",
|
||||
"text": "2.9 Administrative Boundaries\n\n\n\nSecond-level administrative boundaries in Yemen\n\n\nSpatial analysis often have to aggregate information over a defined area; we may want to assess the total burned area by province in Ukraine, or count the number of Saudi airstrikes by district in Yemen. For that, we need data on these administrative boundaries. GEE hosts several such datasets at the country, province, and district (or equivalent) level.\n\nApplications\n\nQuick spatial calculations for different provinces/districts in a country\n\ne.g. counts of conflict events by district over time\n\n\n\n\nDatasets\n\n\n\nDataset\nTimeframe\nCoverage\n\n\n\n\nFAO GAUL\n2015\nGlobal"
|
||||
},
|
||||
{
|
||||
"objectID": "ch2.html#global-power-plant-database",
|
||||
"href": "ch2.html#global-power-plant-database",
|
||||
"title": "2 Data Acquisition",
|
||||
"section": "2.10 Global Power Plant Database",
|
||||
"text": "2.10 Global Power Plant Database\n\n\n\nPower plants in Ukraine colored by type\n\n\nThe Global Power Plant Database is a comprehensive, open source database of power plants around the world. It centralizes power plant data to make it easier to navigate, compare and draw insights. Each power plant is geolocated and entries contain information on plant capacity, generation, ownership, and fuel type. As of June 2018, the database includes around 28,500 power plants from 164 countries. The database is curated by the World Resources Institude (WRI).\n\nApplications:\n\nAnalyzing the impact of conflict on critical infrastructure.\n\ne.g. fighting in Ukraine taking place around nuclear power facilities.\n\nCould be combined with the atmospheric measurements of different pollutants and the population estimates data to assess the impact of various forms of energy generation on air quality and public health.\n\n\n\nDatasets\n\n\n\nDataset\nTimeframe\nCoverage\n\n\n\n\nGPPD\n2018\nGlobal"
|
||||
}
|
||||
]
|
||||
270
ch2.qmd
270
ch2.qmd
@@ -1,66 +1,242 @@
|
||||
# Remote Sensing
|
||||
---
|
||||
title: "Data Acquisition"
|
||||
---
|
||||
One of the main advantages of GEE is that it hosts several Petabytes of satellite imagery and other spatial data sets, [all in one place](https://developers.google.com/earth-engine/datasets). Among these are a many that could prove useful to those investigating illegal mining and logging, estimating conflict-induced damage, monitoring pollution from extractive industries, conducting maritime surveillance without relying on ship transponders, verifying the locations of artillery strikes, tracking missile defense systems, and many other topics.
|
||||
|
||||
[Remote sensing](https://www.sciencedirect.com/topics/medicine-and-dentistry/remote-sensing) is the science of obtaining information about an object or phenomenon without making physical contact with the object. Remote sensing can be done with various types of electromagnetic radiation such as visible, infrared, or microwave. The electromagnetic radiation is either emitted or reflected from the object being sensed. The reflected radiation is then collected by a sensor and processed to obtain information about the object.
|
||||
|
||||

|
||||
|
||||
## Orbits
|
||||
|
||||
The Landsat satellites are in a sun-synchronous orbit, meaning they pass over the same spot on Earth at the same time every day. The Sentinel satellites are in a polar orbit, meaning they pass over the same spot on Earth twice a day, once in the morning and once in the afternoon. NASA have created a great [visualisation](https://svs.gsfc.nasa.gov/4745) showing the orbits of the Landsat and Sentinel-2 satellites:
|
||||
|
||||
{{< video https://svs.gsfc.nasa.gov/vis/a000000/a004700/a004745/landsat_w_sentinel_ls8ls9sAsB_fade_1080p60.mp4 >}}
|
||||
This section highlights ten categories of geospatial data available natively in the GEE catalogue ranging from optical satellite imagery, to atmospheric data, to building footprints. Each sub-section provides an overview of the given data type, suggests potential applications, and lists the corresponding datasets in the GEE catalogue. The datasets listed under each heading are **not** an exhaustive list-- there are over 500 in the whole catalogue, and the ones listed in this section are simply the ones with the most immediate relevance to open source investigations. If a particular geospatial dataset you want to work with isn't hosted in the GEE catalog, you can upload your own data. We'll cover that in the next section.
|
||||
|
||||
|
||||
The Sentinel satellites are in a lower orbit than Landsat, meaning they are closer to the Earth and have a higher resolution.
|
||||
## Optical Imagery
|
||||

|
||||
|
||||
Optical satellite imagery is the bread and butter of many open source investiagtions. It would be tough to list off all of the possible use cases, so here's a handy flowchart:
|
||||
|
||||
```{mermaid}
|
||||
%%{init: {'theme': 'base', 'themeVariables': { 'primaryColor': '#FFFFFF' ,'primaryBorderColor':'#000000' , 'lineColor':'#009933'}}}%%
|
||||
|
||||
flowchart
|
||||
A(Does it happen outside?)
|
||||
A--> B(Yes)
|
||||
A--> C(No)
|
||||
D(Is it very small?)
|
||||
B-->D
|
||||
E(Yes)
|
||||
F(No)
|
||||
D-->F
|
||||
D-->E
|
||||
G(Use optical satellite imagery)
|
||||
H(Don't use optical satellite imagery)
|
||||
E-->H
|
||||
F-->G
|
||||
C-->H
|
||||
```
|
||||
|
||||
This is, of course, a bit of an exaggeration. But if you're interested in a visible phenomenon that happens outdoors and that isn't very tiny, chances are an earth-observing satellite has taken a picture of it. What that picture can tell you naturally depends on what you're interested in learning. For a deeper dive into analyzing optical satellite imagery, see the subsection on [multispectral remote sensing.](ch3.qmd#multispectral-remote-sensing-remote_sensing).
|
||||
|
||||
There are several different types of optical satellite imagery available in the GEE catalogue. The main collections are the Landsat and Sentinel series of satellites, which are operated by NASA and the European Space Agency, respectively. Landsat satellites have been in orbit since 1972, and Sentinel satellites have been in orbit since 2015. Norway's International Climate and Forest Initiative (NICFI) has also contributed to the GEE catalogue by providing a collection of optical imagery from Planet's PlanetScope satellites. These are higher resolution (4.7 meters per pixel) than Landsat (30m/px) and Sentinel-2 (10m/px), but are only available for the tropics. Even higher resolution imagery (60cm/px) is available from the GEE catalogue from the National Agriculture Imagery Program, but it is only available for the United States. For more details, see the "Datasets" section below.
|
||||
|
||||
### Applications {.unnumbered}
|
||||
|
||||
* Geolocating pictures
|
||||
- Some of Bellingcat's [earliest work](https://www.bellingcat.com/resources/how-tos/2014/07/09/verification-and-geolocation-tricks-and-tips-with-google-earth/) involved figuring out where a picture was taken by cross-referencing it with optical satellite imagery.
|
||||
* General surveillance
|
||||
- [Monitoring](https://web.archive.org/web/20220415054905/https://fas.org/blogs/security/2021/11/a-closer-look-at-chinas-missile-silo-construction/) Chinese missile silo construction.
|
||||
- Amassing [evidence](https://www.nytimes.com/2022/04/04/world/europe/bucha-ukraine-bodies.html) of genocide in Bucha, Ukraine
|
||||
* Damage detection
|
||||
- [Ukraine](https://www.theguardian.com/world/2022/oct/27/before-and-after-satellite-imagery-will-track-ukraine-cultural-damage-un-says)
|
||||
- [Mali](https://reliefweb.int/report/mali/satellite-imagery-conflict-affected-areas-how-technology-can-support-wfp-emergency)
|
||||
- [Around the World](https://www.pnas.org/doi/pdf/10.1073/pnas.2025400118)
|
||||
* Verifying the locations of artillery/missile/drone strikes
|
||||
- The [2019 attack](https://www.cnbc.com/2019/09/17/satellite-photos-show-extent-of-damage-to-saudi-aramco-plants.html) on Saudi Arabia's Abqaiq oil processing facility.
|
||||
* Monitoring illegal mining/logging
|
||||
- Global Witness [investigation](https://www.globalwitness.org/en/campaigns/natural-resource-governance/myanmars-poisoned-mountains/) into illegal mining by militias in Myanmar.
|
||||
- Tracking [illegal logging](https://www.theguardian.com/environment/2016/mar/02/new-satellite-mapping-a-game-changer-against-illegal-logging) across the world.
|
||||
|
||||
|
||||
There are three spatial, spectral, and temporal.
|
||||
### Datasets {.unnumbered}
|
||||
|
||||
## Resolution
|
||||
|
||||
### Spatial Resolution {.unnumbered}
|
||||
Spatial resolution governs how "sharp" an image looks. The Google Maps satellite basemap, for example, is really sharp
|
||||
Most of the optical imagery that is freely available has relatively low spatial resolution (it looks more grainy than, for example, the Google satellite basemap),
|
||||
|
||||

|
||||

|
||||

|
||||
| Sensor | Timeframe | Resolution | Coverage |
|
||||
| ----------- | ------------ | ---------- | -------- |
|
||||
| [Landsat 1-5](https://developers.google.com/earth-engine/datasets/catalog/landsat-mss) | 1972–1999 | 30m | Global |
|
||||
| [Landsat 7](https://developers.google.com/earth-engine/datasets/catalog/LANDSAT_LE07_C02_T1_L2) | 1999–2021 | 30m | Global |
|
||||
| [Landsat 8](https://developers.google.com/earth-engine/datasets/catalog/LANDSAT_LC08_C02_T1_L2) | 2013–Present | 30m | Global |
|
||||
| [Landsat 9](https://developers.google.com/earth-engine/datasets/catalog/LANDSAT_LC09_C02_T1_L2) | 2021–Present | 30m | Global |
|
||||
| [Sentinel-2](https://developers.google.com/earth-engine/datasets/catalog/COPERNICUS_S2_SR_HARMONIZED) | 2015–Present | 10m | Global |
|
||||
| [NICFI](https://developers.google.com/earth-engine/datasets/tags/nicfi) | 2015-Present | 4.7m | Tropics |
|
||||
| [NAIP](https://developers.google.com/earth-engine/datasets/catalog/USDA_NAIP_DOQQ) | 2002-2021 | 0.6m | USA |
|
||||
|
||||
|
||||

|
||||
## Radar Imagery
|
||||

|
||||
|
||||
Alongside
|
||||
|
||||
### Applications {.unnumbered}
|
||||
|
||||
* Change/Damage detection
|
||||
* Tracking military radar systems
|
||||
* Maritime surveillance
|
||||
* Monitoring illegal mining/logging
|
||||
|
||||
### Datasets {.unnumbered}
|
||||
|
||||
| Sensor | Timeframe | Resolution | Coverage |
|
||||
| ----------- | ------------ | ---------- | -------- |
|
||||
| [Sentinel 1](https://developers.google.com/earth-engine/datasets/catalog/COPERNICUS_S1_GRD) | 2014-Present | 10m | Global |
|
||||
|
||||
|
||||
## Nighttime Lights
|
||||

|
||||
|
||||
Satellite images of the Earth at night a useful proxy for human activity. The brightness of a given area at night is a function of the number of people living there and the nature of their activities. The effects of conflict, natural disasters, and economic development can all be inferred from changes in nighttime lights.
|
||||
|
||||
The timelapse above reveals a number of interesting things: The capture of Mosul by ISIS in 2014 and the destruction of its infrastructure during the fighting (shown as the city darkening), as well as the liberation of the city by the Iraqi military in 2017 are all visible in nighttime lights. The code to create this gif, as well as a more in-depth tutorial on the uses of nighttime lights, can be found in the ["War at Night"](SyriaNTL.qmd) case study.
|
||||
|
||||
### Applications {.unnumbered}
|
||||
|
||||
* Damage detection
|
||||
* Identifying gas flaring/oil production
|
||||
* Identifying urban areas/military bases illuminated at night
|
||||
|
||||
### Datasets {.unnumbered}
|
||||
|
||||
| Sensor | Timeframe | Resolution | Coverage |
|
||||
| ----------- | ------------ | ---------- | -------- |
|
||||
| [DMSP-OLS](https://developers.google.com/earth-engine/datasets/catalog/NOAA_DMSP-OLS_NIGHTTIME_LIGHTS) | 1992-2014 | 927m | Global |
|
||||
| [VIIRS](https://developers.google.com/earth-engine/datasets/catalog/NOAA_VIIRS_DNB_MONTHLY_V1_VCMSLCFG) | 2014-Present | 463m | Global |
|
||||
|
||||
|
||||
|
||||
### Spectral Resolution {.unnumbered}
|
||||
## Climate and Atmospheric Data
|
||||

|
||||
|
||||
What open source imagery lacks in spatial resolution it often makes up for with *spectral* resolution. Really sharp imagery from MAXAR, for example, collects
|
||||
Climate and atmospheric data can be used to track the effects of conflict on the environment. The European Space Agency's Sentinel-5p satellites measure the concentration of a number of atmospheric gases, including nitrogen dioxide, methane, and ozone. Measurements are available on a daily basis at a fairly high resolution (1km), allowing for the detection of localized sources of pollution such as oil refineries or power plants. For example, see this [Bellingcat article](https://www.bellingcat.com/resources/2021/04/15/what-oil-satellite-technology-and-iraq-can-tell-us-about-pollution/) in which Wim Zwijnenburg and I trace pollution to specific facilities operated by multinational oil companies in Iraq.
|
||||
|
||||
Different materials reflect light differently. An apple absorbs shorter wavelengths (e.g. blue and green), and reflects longer wavelengths (red). Our eyes use that information-- the color-- to distinguish between different objects. But our eyes can only see a relatively small sliver of the electromagnetic spectrum covering blue, yellow, and red; we can't see UV or infrared wavelengths, for example, though the extent to which different materials reflect or absorb these wavelengths is just as useful for distinguishing between them. For example, Astroturf (fake plastic grass) and real grass will both look green to us, espeically from a satellite image. But living plants absorb radiation from the sun in a part of the light spectrum that we can't see. There's a spectral index called the Normalized Difference Vegetation Index (NDVI) which exploits this fact to isolate vegetation in multispectral satellite imagery. So if we look at [Gilette Stadium](https://en.wikipedia.org/wiki/Gillette_Stadium) near Boston, we can tell that the three training fields south of the stadium are real grass (they generate high NDVI values, showing up red), while the pitch in the stadium itself is astroturf (generating low NDVI values, showing up blue).
|
||||
The Copernicus Atmosphere Monitoring Service (CAMS) provides similar data at a lower spatial resolution (45km), but measurements are avaialble on an hourly basis. The timelapse above utilizes CAMS data to show a sulphur dioxide plume resulting from an ISIS attack on the Al-Mishraq Sulphur Plant in Iraq. The plant was used to produce sulphuric acid, for use in fertilizers and pesticides. The attack destroyed the plant, causing a fire which burned for a month and released [21 kilotons](https://earthobservatory.nasa.gov/images/88994/sulfur-dioxide-spreads-over-iraq) of sulphur dioxide into the atmosphere per day; the largest human-made release of sulphur dioxide in history.
|
||||
|
||||

|
||||
### Applications {.unnumbered}
|
||||
|
||||
In other words, even though these fields are all green and indistinguishable to the human eye, their *spectral profiles* beyond the visible light spectrum differ, and we can use this information to distinguish between them. Below is a plot of the spectral profiles of different materials, including oil.
|
||||
* Monitoring of airborne pollution
|
||||
* Tracing pollution back to specific facilities and companies
|
||||
* Visualizing the effects of one-off environmental catastrophes
|
||||
- Nordstream 1 leak
|
||||
- ISIS setting Mishraq sulphur plant on fire
|
||||
|
||||
<iframe title="Spectral Profiles of Different Materials" aria-label="Interactive line chart" id="datawrapper-chart-b1kcX" src="https://datawrapper.dwcdn.net/b1kcX/3/" scrolling="no" frameborder="0" style="width: 0; min-width: 100% !important; border: none;" height="400"></iframe><script type="text/javascript">!function(){"use strict";window.addEventListener("message",(function(e){if(void 0!==e.data["datawrapper-height"]){var t=document.querySelectorAll("iframe");for(var a in e.data["datawrapper-height"])for(var r=0;r<t.length;r++){if(t[r].contentWindow===e.source)t[r].style.height=e.data["datawrapper-height"][a]+"px"}}}))}();
|
||||
</script>
|
||||
### Datasets {.unnumbered}
|
||||
|
||||
The European Space Agency's Sentinel-2 satellite collects spectral information well beyond the visible light spectrum, enabling this sort of analysis. It chops the electromagnetic spectrum up into "bands", and measures how strongly wavelengths in each of those bands is reflected:
|
||||
|
||||

|
||||
|
||||
We'll be using this satellite to distinguish between oil and other materials, similar to the way we were able to distinguish between real and fake grass at Gilette Stadium. First, we'll have to do a bit of pre-processing on the Sentinel-2 imagery after which we'll train a machine learning model to identify oil.
|
||||
|
||||
### Temporal Resolution {.unnumbered}
|
||||
|
||||
Finally, time
|
||||
There is often a tradeoff between spatial and temporal resolution.
|
||||
|
||||
The Google Maps basemap is very high resolution, available globally, and is freely available. But it has no *temporal* dimension: it's a snapshot from one particular point in time. If the thing we're interested in involves *changes* over time, this basemap will be of limited use.
|
||||
|
||||
The **"revisit rate"** is the time it takes a satellite to image the same point on earth
|
||||
|
||||
* [Sentinel 2](https://sentinel.esa.int/web/sentinel/missions/sentinel-2): 5 days
|
||||
* [Landsat 9](https://landsat.gsfc.nasa.gov/satellites/landsat-9/#:~:text=Landsat%209%20replaces%20Landsat%207,for%20Landsat%208%20%2B%20Landsat%207.): 8 days
|
||||
* [Planet SkySat](https://www.planet.com/pulse/12x-rapid-revisit-announcement/): 2-3 hours
|
||||
| Sensor | Timeframe | Resolution | Coverage |
|
||||
| ----------- | ------------ | ---------- | -------- |
|
||||
| [CAMS NRT](https://developers.google.com/earth-engine/datasets/catalog/ECMWF_CAMS_NRT) | 2016-Present | 44528m | Global |
|
||||
| [Sentinel-5p](https://developers.google.com/earth-engine/datasets/catalog/sentinel-5p) | 2018-Present | 1113m | Global |
|
||||
|
||||
|
||||
## Mineral Deposits
|
||||

|
||||
|
||||
Mining activities often play an important role in conflict. According to an influential [study](https://www.aeaweb.org/articles?id=10.1257/aer.20150774), "the historical rise in mineral prices might explain up to one-fourth of the average level of violence across African countries" between 1997 and 2010. Data on the location of mineral deposits can be used to identify areas where mining activities are likely to be taking place, and several such datasets are available in Google Earth Engine.
|
||||
|
||||
### Applications {.unnumbered}
|
||||
|
||||
* Monitoring mining activity
|
||||
* Identifying areas where mining activities are likely to be taking place
|
||||
* Mapping the distribution of resources in rebel held areas in conflicts fueled by resource extraction
|
||||
|
||||
|
||||
|
||||
### Datasets {.unnumbered}
|
||||
|
||||
| Sensor | Timeframe | Resolution | Coverage |
|
||||
| ----------- | ------------ | ---------- | -------- |
|
||||
| [iSDA](https://developers.google.com/earth-engine/datasets/tags/isda) | 2001-2017 | 30m | Africa |
|
||||
|
||||
|
||||
## Fires
|
||||

|
||||
|
||||
Earth-observing satellites can detect "thermal anomalies" (fires) from space. NASA's Fire Information for Resource Management System (FIRMS) provides daily data on active fires in near real time, going back to the year 2000. Carlos Gonzales wrote a comprehensive [Bellingcat article](https://www.bellingcat.com/resources/2022/10/04/scorched-earth-using-nasa-fire-data-to-monitor-war-zones/) on the use of FIRMS to monitor war zones from Ukraine to Ethiopia. The map above shows that FIRMS detected fires over Eastern Ukraine trace the frontline of the war.
|
||||
|
||||
FIRMS data are derived from the MODIS satellite, but only show the central location and intensity of a detected fire. Another MODIS product (linked in the table below) generates a monthly map of burned areas, which can be used to assess the spatial extent of fires.
|
||||
|
||||
|
||||
### Applications {.unnumbered}
|
||||
* Identification of possible artillery strikes/fighting in places like Ukraine
|
||||
* Environmental warfare and "scorched earth" policies
|
||||
* Large scale arson
|
||||
- e.g. [Refugee camps burned down in Myanmar](https://citizenevidence.org/2021/02/26/using-viirs-fire-data-for-human-rights-research/)
|
||||
|
||||
### Datasets {.unnumbered}
|
||||
|
||||
| Sensor | Timeframe | Resolution | Coverage |
|
||||
| ----------- | ------------ | ---------- | -------- |
|
||||
| [FIRMS](https://developers.google.com/earth-engine/datasets/catalog/FIRMS) |2000-Present | 1000m | Global |
|
||||
| [MODIS Burned Area](https://developers.google.com/earth-engine/datasets/catalog/CIESIN_GPWv411_GPW_Population_Count) | 2000-Present | 500m | Global |
|
||||
|
||||
|
||||
## Population Density Estimates
|
||||

|
||||
|
||||
Sometimes, we may want to get an estimate the population in a specific area to ballpark how many people might be affected by a natural disaster, a counteroffensive, or a missile strike. You can't really google "what is the population in this rectangle i've drawn in Northeastern Syria?" and get a good answer. Luckily, there are several spatial population datasets hosted in GEE that let you do just that. Some, such as WorldPop, provide estimated breakdowns by age and sex as well. However, it is extremely important to bear in mind that these are **estimates**, and will **not** take into account things like conflict-induced displacement. For example, Oak Ridge National Laboratory's LandScan program has released high-resolution population data for Ukraine, but this pertains to the pre-war population distribution. The war has radically changed this distribution, so these estimates no longer reflect where people *are*. Still, this dataset could be used to roughly estimate displacement or the number of people who will need new housing.
|
||||
|
||||
### Applications: {.unnumbered}
|
||||
|
||||
* Rough estimates of civilians at risk from conflict or disaster, provided at a high spatial resolution
|
||||
|
||||
### Datasets {.unnumbered}
|
||||
|
||||
| Sensor | Timeframe | Resolution | Coverage |
|
||||
| ----------- | ------------ | ---------- | -------- |
|
||||
| [Worldpop](https://developers.google.com/earth-engine/datasets/tags/worldpop) |2000-2021 | 92m | Global |
|
||||
| [GPW](https://developers.google.com/earth-engine/datasets/catalog/CIESIN_GPWv411_GPW_Population_Count) | 2000-2021 | 927m | Global |
|
||||
| [LandScan](https://developers.google.com/earth-engine/datasets/catalog/DOE_ORNL_LandScan_HD_Ukraine_202201) | 2013–Present | 100m | Ukraine |
|
||||
|
||||
|
||||
|
||||
## Building Footprints
|
||||

|
||||
|
||||
A building footprint dataset contains the two dimensional outlines of buildings in a given area. Currently, GEE hosts one building footprint dataset which covers all of Africa. In 2022, Microsoft released a free [global building footprint dataset](https://www.microsoft.com/en-us/maps/building-footprints), though to use it in Earth Engine you'll have to download it from their [GitHub page](https://github.com/Microsoft/USBuildingFootprints) and upload it manually to GEE. The same goes for OpenStreetMap (OSM), a public database of building footprints, roads, and other features that also contains useful annotations for many buildings indicating their use. [Benjamin Strick](https://www.youtube.com/watch?v=bJkV3l5Haq0) has a great youtube video on conducting investigations using OSM data.
|
||||
|
||||
### Applications: {.unnumbered}
|
||||
|
||||
* Joining damage estimate data with the number of buildings in an area
|
||||
|
||||
### Datasets {.unnumbered}
|
||||
|
||||
| Dataset | Timeframe | Coverage |
|
||||
| ----------- | ------------ | -------- |
|
||||
| [Open Buildings](https://developers.google.com/earth-engine/datasets/catalog/GOOGLE_Research_open-buildings_v2_polygons) |2022 | Africa |
|
||||
|
||||
|
||||
## Administrative Boundaries
|
||||

|
||||
|
||||
Spatial analysis often have to aggregate information over a defined area; we may want to assess the total burned area by province in Ukraine, or count the number of Saudi airstrikes by district in Yemen. For that, we need data on these administrative boundaries. GEE hosts several such datasets at the country, province, and district (or equivalent) level.
|
||||
|
||||
### Applications {.unnumbered}
|
||||
|
||||
* Quick spatial calculations for different provinces/districts in a country
|
||||
- e.g. counts of conflict events by district over time
|
||||
|
||||
### Datasets {.unnumbered}
|
||||
|
||||
| Dataset | Timeframe | Coverage |
|
||||
| ----------- | ------------ | -------- |
|
||||
| [FAO GAUL](https://developers.google.com/earth-engine/datasets/tags/gaul) |2015 | Global |
|
||||
|
||||
|
||||
## Global Power Plant Database
|
||||

|
||||
|
||||
The Global Power Plant Database is a comprehensive, open source database of power plants around the world. It centralizes power plant data to make it easier to navigate, compare and draw insights. Each power plant is geolocated and entries contain information on plant capacity, generation, ownership, and fuel type. As of June 2018, the database includes around 28,500 power plants from 164 countries. The database is curated by the [World Resources Institude (WRI)](https://datasets.wri.org/dataset/globalpowerplantdatabase).
|
||||
|
||||
### Applications: {.unnumbered}
|
||||
|
||||
* Analyzing the impact of conflict on critical infrastructure.
|
||||
- e.g. fighting in Ukraine taking place around nuclear power facilities.
|
||||
* Could be combined with the atmospheric measurements of different pollutants and the population estimates data to assess the impact of various forms of energy generation on air quality and public health.
|
||||
|
||||
### Datasets {.unnumbered}
|
||||
|
||||
| Dataset | Timeframe | Coverage |
|
||||
| ----------- | ------------ | -------- |
|
||||
| [GPPD](https://developers.google.com/earth-engine/datasets/catalog/WRI_GPPD_power_plants) |2018 | Global |
|
||||
|
||||
Reference in New Issue
Block a user