InforSAT: an online Sentinel-2 multi-temporal analysis toolset using R CRAN
This is a modal window.
The media could not be loaded, either because the server or network failed or because the format is not supported.
Formal Metadata
Title |
| |
Title of Series | ||
Number of Parts | 351 | |
Author | ||
Contributors | ||
License | CC Attribution 3.0 Unported: You are free to use, adapt and copy, distribute and transmit the work or content in adapted or unchanged form for any legal purpose as long as the work is attributed to the author in the manner specified by the author or licensor. | |
Identifiers | 10.5446/68955 (DOI) | |
Publisher | ||
Release Date | ||
Language | ||
Production Year | 2022 |
Content Metadata
Subject Area | ||
Genre | ||
Abstract |
| |
Keywords |
FOSS4G Firenze 2022287 / 351
1
7
13
22
25
31
33
36
39
41
43
44
46
52
53
55
58
59
60
76
80
93
98
104
108
127
128
133
135
141
142
143
150
151
168
173
176
178
190
196
200
201
202
204
211
219
225
226
236
242
251
258
263
270
284
285
292
00:00
Temporal logicSet (mathematics)Mathematical analysisMultiplicationGeomaticsForschungszentrum RossendorfIntegrated development environmentOpen sourceComponent-based software engineeringLatent heatRepresentation (politics)Series (mathematics)SurfaceStress (mechanics)Server (computing)Virtual realityComputer fileArchitectureComputer programmingProcess (computing)Vector spaceRaster graphicsInterface (computing)Software frameworkManufacturing execution systemScripting languageComputer-generated imageryData structureRootSingle-precision floating-point formatServer (computing)TesselationAreaMedical imagingComputer fileCalculationSurfaceOperator (mathematics)Library (computing)MappingScripting languageInformationLatent heatBilderkennungWeb applicationOpen sourceTime seriesPointer (computer programming)Perfect groupSatelliteMetreProcedural programmingMathematicsEvent horizonProcess (computing)Data miningComputer architecturePresentation of a groupMultiplication signDevice driverIntegrated development environmentBitSoftwareProxy serverDynamical systemProjective planeRemote procedure callStudent's t-testProduct (business)RootNetwork topologyForschungszentrum RossendorfThresholding (image processing)Data structureWeb 2.0Universe (mathematics)Computer animation
08:48
MultiplicationTemporal logicMathematical analysisPrice indexGraphics tabletInterface (computing)TesselationVisualization (computer graphics)Computer fileMedical imagingPrice indexScripting languageComputer animation
09:31
Graphics tabletZoom lensPrice indexAreaMusical ensembleLevel (video gaming)Medical imagingCalculationFunction (mathematics)PixelComputer animation
10:23
Price indexWell-formed formulaStudent's t-testComputer animation
10:45
Graphics tabletMedical imagingProcedural programmingPrice indexMetreStudent's t-testImage warpingDemosceneWeb applicationZoom lensImage resolutionLevel (video gaming)Scaling (geometry)Computer animation
12:11
Graphics tabletCombinational logicMedical imagingMusical ensemblePrice indexGraph coloringComputer animation
12:40
Graphics tabletPoint cloudPrice indexMusical ensembleTemporal logicInstallation artWeb browserComputing platformSoftwareMultiplicationMathematical analysisComplex analysisAccess BasicFunktionalanalysisSampling (statistics)Scripting languageStudent's t-testMedical imagingMathematicsPrice indexComputer fileSoftwareFeedbackStatisticsMultiplication signMathematical analysisTable (information)AreaPoint (geometry)PlotterInstallation artInformationTesselationPoint cloudRight angleStandard deviationComputer animation
16:41
MultiplicationTemporal logicMathematical analysisGraphics tabletPrice indexCartesian coordinate systemScripting languageCalculationServer (computing)Mathematical analysisWeb portalPasswordComputer fileRootMultiplication signProcess (computing)Computer animation
18:41
VideoconferencingComputer animation
Transcript: English(auto-generated)
00:01
Okay, great. Perfect. So what I'm going to talk about is this tool that we developed in our lab. We are from the University of Padua, me and some colleagues of mine from the Department of Land and Agroforestry System. It's called the Teza Department.
00:21
So we work a lot on forestry and agriculture. And also the Interdepartmental Research Center in Geomatics, Georgia. We work with spatial data. And in this case, as you probably, if you were following the presentation by Iza just five minutes before,
00:42
we work a lot with Sentinel data because it's freely available, of course, and it's very high quality and it's a good spatial, has a good spatial resolution, 10 meters. We all know Sentinel-2. So, okay.
01:03
So what's the main idea? What is this InforSat tool that we developed? Now, first of all, we all know that satellite data comes as a stack of images in bands. So it's notably not a small amount of data. So we're talking about usually one gigabyte per data set.
01:24
And you want to also work on time series data. So that already brings you the idea, okay, if I have to work in time series data, I have to collect a lot of images, not just one. So usually what you do is you download all the data you need and you put in the GIS or SNAP or other software
01:43
and you start doing your procedures on the data. Why do we want to do that? Well, in our lab, but most people, a lot of people use satellite data to analyze the surface, of course. But most importantly, when we speak about time series,
02:00
we speak about surface modifications. So we're talking about changes in the Earth's surface. So urbanization or if we monitor vegetation, we talk about vegetation stress, fires. So this fires is a bit, you see the logo. It was actually born because we are involved in a project
02:20
that's related to analyzing extreme fire events. So that's, you know, the main driver was that. But then also the growth of also green areas in the urban environment. And I put that in an asterisk because I was thinking about all the surface modifications and all these negative connotations came,
02:42
you know, urbanization, deforestation, pollution. So I said, I have to find something that's a bit more positive. So in urban cities, we know how precious it is to have green areas, parks, and because of heat mitigation, heat island mitigations, et cetera.
03:02
So that's also something that we can use satellite data for. So we, you know, I work in the city of Padova, and now there's a big project in the city of Padova that they want to plant a lot of trees. So because they want, you know, a greener city. So with satellite imagery, we can monitor and say, okay, let's see how the city will change
03:22
before and after the project, the trees that are planted. Now, so open source tools, probably you know better than me that there's a lot, a lot, a lot of open source tools that deal with imagery. We heard about our fail toolbox.
03:40
We know, I can just GDAL library. We know there's a lot of open source tools out there. So since we have to work with imagery, which is not lightweight, and it requires image stacks, our idea was to put everything, start thinking remotely.
04:01
Now, this is not a new idea, of course. So just not go to the typical download your image and everybody do their own processing of the image in their own computer, but just put the images remotely and organize them in a way that all users can already find their image available
04:22
and do not have to download the same image over and over. And of course, this is very important because as I said, surface modifications are also proxies for climate change and other things. So if we see the dynamics in surface modifications,
04:41
we can also predict what will happen in the future, what could happen in the future and also take action. So our idea says, okay, there's already some, a lot of solutions that contemplate the use of remote image, remote servers.
05:00
So there's Google Earth Engine, maybe some of you are acquainted with that, but there's also other tools that access the data directly online. But the criteria behind this is also that we wanted to create an architecture because we also have PhD students and we have master students
05:21
that start to work with satellite imagery, so they could also get acquainted with the procedure, with the workflow that is typical in satellite image analysis. And so we created with a project, we bought, let's say, this Linux, this architecture,
05:42
this hardware, basically. We got it hosted by the university in the university calculation center, where they have all the high performing computers. And it's not particularly fancy.
06:01
It's a Linux operating system, headless, so it doesn't have interface. And behind it, we decided to use R as the, how do you say, the daemon, the thing that takes care of all the processing. Why that? Because R has a very nice library called Shiny
06:22
that allows you to create web applications. So we have the server side, a lot of tools that we will talk about that take care of the image analysis on the server. We have the images on the server, and the Shiny web application allows the user online
06:40
just to access the webpage and tell the server what to do with the images via web. Via the web. So again, this is not anything new, but we wanted to use these tools and see also how much we can go, how far we can go with this. And we used also Map Server
07:00
because it has a lot of solutions that allow to interact with images, not so much for the processing of the images, but also for providing web mapping services. So we can actually use the net, the web GIS, the web app from Shiny and see the products of processing the images.
07:24
So the first step was to create a very, very easy architecture. So decide to save all the imagery in a single folder. So decide a root folder. The image is downloaded and unzipped.
07:41
Your typical Sentinel-2 image is usually compressed. And again, this is done by an R script. So the R script just says, okay, let's see what images are available. Of course, not for the whole Earth, but just for a specific area that we're interested in. But this is agnostic, so it can be actually replicated also in any area.
08:03
You just have to decide which is your area of interest. And the script automatically downloads the data if it's below a certain threshold of cloud cover and unzips the file. So you have your information in a folder, each image,
08:20
and it's already structured. If you've ever worked with Sentinel-2, you know it has this very specific structure, the folder structure. So what happens is that the script also creates a lookup table. Very simply, each file that is downloaded has a date and has, as you can see, it has a tile.
08:41
I think I should have a mouse pointer somewhere. No, well, you know, it has, as we will see also in the next slide, it has a tile, so its image is divided into specific areas, which are coded with a specific index.
09:03
So the script knows exactly the image, where it's georeferenced, and the date, because it's inside the file name itself. So what we have, this is the interface, and we have a very simple interface
09:20
where you can choose the tile you want to work on, and you can choose the date. And what actually happens, the visualization part, is that you can visualize, you can visualize an index. Why did we choose that? Because indices are band combinations,
09:41
and indices are quite easily created on the fly. So the index is not precalculated, but it's actually calculated on the fly. The user can actually provide his own calculation of the index by using very simple, we could call it very simple syntax, and then it provides the output of the index.
10:03
Now that's done quite fast, and it's done quite fast because the image is subsampled in the sense that the index is now calculated for all the pixels of the bands, but it's calculated only depending on the zoom level and on which area is being visualized.
10:24
So you can choose, again, as you can see, you can choose preloaded indices, or you can change, you can play around with your own formula. As I told you, this is also for students, so that's why we did this, not only for academic research,
10:41
but also for students to learn how to do this. And for example, this is an index that's calculated. What happens is when you zoom in, you will see that the index has a specific resolution, which is not the resolution of the image, but might be very much a rougher resolution
11:02
because if you're looking at the image from a zoom level far away, then he will actually resample the image and only calculate the index at a rougher scale. If you zoom in, you can recalculate the index, so you can actually go all the way up to the original resolution of your image.
11:24
In this case, it's 10 meters. You can also decide to, I don't know if you see the difference, there's some different resampling types, like this is bilinear, and this is another resampling type, so you can also teach students what actually happens
11:41
when you choose different resampling schemes. Maybe if some of you are familiar with these resampling schemes, you might know they come from GDAL, so what's behind here is the GDAL warp function, executable, which is called by R.
12:02
So what happens behind the scene is very simple procedures, but the procedures are actually encoded into an interactive web app. For better understanding, actually, of what your index tells you about your Earth surface, you can also use, you can also upload the colored image,
12:25
so you can actually do band combinations, and have both the index and your image interpreted as a color combination. And you can move the mouse around and actually see what is going on.
12:43
Here, the last thing I want to talk to you about is that all this was born to see, to do multi-temporal analysis. So what the user can do, he can say, okay, I want to see what happens in certain areas over time. So the user can draw an area,
13:02
and basically what happens is that the R calls all the functions that are necessary to sample those areas on all the images that have been downloaded. And as all aerial statistics do,
13:21
it pulls out the median, average, standard deviation, so you know what happens over time over that area. And this is also to show students the problem with atmospheric correction, if there's a cloud, so if you have a high standard deviation, very likely there is a cloud that's right on the area. Because yes, we download,
13:42
we try to download images with very low cloud cover, but you might always get your typical Murphy's law that you get the cloud right on your area. If you want, you can of course remove certain dates or you can just decide to not process some dates,
14:03
because maybe they are too cloudy for that area at that time. And you can analyze the plots directly online, or you can download your data in a worksheet in Excel,
14:22
in a normal spreadsheet, so if you want to do your own analysis with your own tools, you have your data over time over that area. And this is all the information, as you can see here. The table gives you both the index value, the cloud cover probability, the snow cover probability,
14:40
which is all information you find in your Sentinel-2 image, which has been processed to level two. Okay, just to get some last points. Again, this for students can be a gentle introduction to several remote sensing concepts.
15:03
So how remote sensing data, how it comes, how the images are downloaded, how the file is named, and what you actually find inside your package when you download the compressed image. They can appreciate the importance of Earth observation,
15:22
so when they see what happens after a fire, how your index changes after a fire, that actually I've seen a lot of feedback from students that are quite impressed. And also they are very interested to see how, for example, the NDVI index has certain seasonalities, so it's not always constant, but changes with seasons,
15:42
because the photosynthesis is not always constant, depends also on the temperature. And they can do that with multi-temporal analysis, so that's the first primers to foster also curiosity to students. And the nice thing is that it's all online, so they don't actually have to do,
16:01
that the first impact is a bit, as I said, is a bit gentler, and they don't have to install software and again, it's agnostic in the sense you can develop it in any area. It just depends what image you download. If you download an image, maybe in, let's say in Canada,
16:21
from Canada, the script automatically figures out from georeferencing that that image is in Canada, so you will get the tile over Canada and you can analyze the image. Plus, of course, the students learn about pan combination, calculating indices, et cetera.
16:43
Okay, so now what's the future developments? Basically, it's in GitHub, it's not a package yet. I don't know if it will ever become actually a package, because it's quite, it's basically a collection of software, so it's not intended to be ever a package,
17:01
but it's more of an idea. And, but it can be implemented in your own server, if you want, it's, we're trying to create a manual, so to see step-by-step how to, how to install it in your own server. It's quite straightforward, but it requires a couple of,
17:21
a couple of tweaks in some of the files. Basically, it just requires to know where the root, the path to the root server is, and then you have to launch for the first time the script that crawls in all the subfolders and finds the images. The web portal is online.
17:41
So far, it's, you know, there's no password, because there's not, it's only students, but if we see too many people accessing, we will maybe provide a password and ask for people to register, just because, of course, it might, we don't want to clutter the server. The other nice thing I want to mention,
18:02
I still have one minute, is that you can also do the analysis using parallelized, it's very simple, because obviously a lot of all those aerial calculations can be parallelized, because there are the same calculations over many images. So we can actually decide if we want to
18:23
use more than one cluster. We can make a cluster of multi-thread, and, or not, or maybe we just don't care, we just want not to do it and make parallel processing. I think I've done, that's it.
18:42
There is a video, but it's five minutes, and there's no time, so maybe I'll just run the video while you ask questions. So I'm open for questions.
Recommendations
Series of 8 media