Válka v Syrii v přímém přenosu – DPZ pro začátečníky

Dálkovým průzkumem Země se na běžných školení příliš nezabýváme, na školeních se o tohle téma otřeme spíš okrajově, ale tohle myslím může zaujmout spoustu lidí a možná pomoct i ve výuce?

Applikace https://apps.sentinel-hub.com/eo-browser/ vám umožní najít a stáhnout snímek z několika satelitů, např. Sentinel-2, Landsat, atd. Vybrat snímek je v porovnání se https://scihub.copernicus.eu jednoduché a hlavně rychlé. Po vybrání snímku a jeho zobrazení můžete zkusit kombinovat různé barevné kanály nebo použít některý z přednastavených filtrů.

Snímek můžete stáhnout pouze ve formátu JPEG nebo také ZIP archiv se všemi kanály a několika dalšími vrstvami.

Dnes mě na DVTV.cz zaujal rozhovor o aktuálním konfliktu v severní Syrii, kde se Turecko pustilo do okupace kurdských území. Konkrétně jde o boje ve městě Afrin.

Na SentinelHubu lze dohledat snímek k 2018-03-18, tedy právě 3 dny starý a bez mraků!

Na snímku je vidět nějaký kouř, a kde je kouř, měl by být i oheň, akorát není vidět.

SentinelHub můžete využít také k tomu, že si napíšete vlastní skript v JavaScriptu, který provede nějaký filtr nad kanály. A jeden takový filtr na zvýraznění ohňů existuje, viz Visualizing (Wild)Fires in Sentinel-2 imagery through EO Browser. Když vložíme do SentinelHubu (záložka “Custom”) následující kód

// ***
// Visualizing (wild)fires in Sentinel-2 imagery
// For use in Sinergise EO Browser (http://apps.sentinel-hub.com/eo-browser)
// Pierre Markuse (@pierre_markuse)
// ***
// Functions
function A(a, b) {return a + b};
function stretch(val, min, max)  {
	return (val - min) / (max - min);
}
// Some basic colors
var BLACK = [0.0, 0.0, 0.0];
var WHITE = [1.0, 1.0, 1.0];
var RED = [0.9, 0.1, 0.1];
var YELLOW = [0.9, 0.9, 0.1];
var GREEN = [0.1, 0.9, 0.1];
// Band combinations
var NaturalColors = [stretch(3.1 * B04,0.05,0.9), stretch(3 * B03,0.05,0.9), stretch(3.0 * B02,0.05,0.9)];
var EnhancedNaturalColors = [stretch((3.1 * B04 + 0.1 * B05),0.05,0.9), stretch((3 * B03 + 0.15 * B08),0.05,0.9), stretch(3 * B02,0.05,0.9)];
var NIRSWIRColors = [stretch(2.6 * B12,0.05,0.9), stretch(1.9 * B08,0.05,0.9), stretch(2.7 * B02,0.05,0.9)];
var PanBand = [stretch(B08,0.01,0.99),stretch(B08,0.01,0.99),stretch(B08,0.01,0.99)];
var NaturalNIRSWIRMix = [stretch((2.1 * B04 + 0.5 * B12),0.01,0.99), stretch((2.2 * B03 + 0.5 * B08),0.01,0.99), stretch(3.2 * B02,0.01,0.99)];
var PanTintedGreen = [B08 * 0.2, B08, B08 * 0.2];
var Fire1OVL = [stretch((2.1 * B04 + 0.5 * B12),0.01,0.99)+1.1, stretch((2.2 * B03 + 0.5 * B08),0.01,0.99), stretch(2.1 * B02,0.01,0.99)];
var Fire2OVL = [stretch((2.1 * B04 + 0.5 * B12),0.01,0.99)+1.1, stretch((2.2 * B03 + 0.5 * B08),0.01,0.99)+0.5, stretch(2.1 * B02,0.01,0.99)];
// Choose a Color, Band Combination, or make up your own visual
// In case it doesn't have to look aesthetically pleasing you can put RED and YELLOW here 
var FIRE1 = Fire1OVL; // Outer fire zone, def = Fire1OVL
var FIRE2 = Fire2OVL; // Inner fire zone, def = Fire2OVL
// I recommend NaturalNIRSWIRMix or NIRSWIRColors for best visuals
// Try NaturalColors, EnhancedNaturalColors, PanTintedGreen, and PanBand as well
var NOFIRE = NaturalNIRSWIRMix;
// Using B12 and B11 to highlight possible fires in two zones to get some more distinction
// Increase SENSITIVITY for more possible fires and more wrong indications
var SENSITIVITY = 1.0;
return (A(B12, B11) > (1.0 / SENSITIVITY))
? (A(B12, B11) > (2.0 / SENSITIVITY)) ? FIRE2 : FIRE1
: NOFIRE;

Mapa se obarví tak, že jsou perfektně vidět ohně.

Minimálně jedno ohnisko bylo 18.3. aktivní. Vidíme ze satelitu válku v přímém přenosu.

Ten jednoduchý nástroj pro detekci ohně může být velmi užitečný. Pěkně jsou například vidět loňské požáry v Portugalsku, i když je většina území pod mrakem. Filtrů je celá další řada a myslím, že tenhle nástroj je opravdu hodně použitelný jak pro výuku DPZ, tak pro další využití.

Za GISMentors Jáchym Čepický