 So welcome everyone to our final data skills webinar of the spring semester, so to speak. And this last one will be on working with AOP's Hyperspectral Data in Google Earth Engine. So before we get started, Nian does have a quote of conduct and we encourage you to explore more at the URL at the bottom. I'll be sharing a lot of little tiny URLs throughout the webinar today, so please look at those as you as you see fit. But just briefly, Nian, the National Ecological Observatory Network, welcomes contributions from everyone who shares our values of unity, creativity, collaboration, excellence, and appreciation. And listed below are some of our values that we ask you to respect and follow while you're participating in any Nian event and working with Nian data generally. All right, so in this webinar, I'll just walk you through what we'll be covering, but we'll give a brief introduction to AOP's Hyperspectral Data Set. This is just very condensed, so we do assume you have some previous knowledge of Hyperspectral Data and we have a lot of resources to point you to if you don't have that background. And then we'll give some updates on our efforts to add our AOP data to Google Earth Engine and then we'll get into a live coding section, which will be the majority of the workshop, and that will be about 45 or 50 minutes. And we'll leave five minutes at the end of the hour first survey, which we'd ask you to fill out. So Nian is constantly trying to improve our workshop offerings and educational resources. And so we'd like your feedback on that. And then as John put in the chat, if you have any questions throughout, please feel free to pop it into the chat and he'll be monitoring that. And then we can address any longer questions at the end. And I think we're getting a few more people in the waiting room. So John will be adding those people as well. And then lastly, from one to one 30 mountain time, we'll leave some time for questions and answers. And I'll also give a shout out to Kello Marker, who's from Google and he's been helping us get our data into Earth Engine and he's the expert on Earth Engine coding and all that. So we're lucky to have him here today if you're able to answer questions as well. All right. So in a nutshell, this is our Nian's imaging spectrometer. We call it NIST. We use a lot of acronyms. But we basically are flying our plane along in like a long mowing the lawn pattern. And we collect the data in a push room configuration. So we're collecting data at 1000 meters above ground level. And this allows us to get one meter squared spatial resolution. And then we collect bands between 380 to 2500 nanometers. So that's from the visible to the shortwave infrared portion of the spectrum. And each of our bands has about five nanometers width to it. So this is very high spatial and spectral resolution, especially compared to the satellite data. And we have a lot of requirements that we follow while collecting our data. Our first requirement being that we aim to collect only in clear sky conditions with less than 10 percent cloud cover. So the photo on the right is would not be a great flying day, but that we might have to fly in conditions like that if we don't have any other opportunities. We also fly each of our sites typically covers a 10 kilometer by 10 spatial area. And these are for our main terrestrial sites. And then lastly, we fly at what we call peak greenness, which is when the leaves are most most the leaves on the trees are most photosynthetically active. And this is to try and obtain consistency between collections from year to year. And John recently made this nice app, but we seek out those peak greenness conditions by looking at satellite data year over year. And that's how we optimize our schedule. And then lastly, this is just a really brief picture of what you might be able to do to detect using hyperspectral data. So on the left is a false color image of using our spectral data of an area that has been had a major fire. This is the Miriam fire in Washington state. And the spectral curves on the right show you what you might see the green curve shows what you might see with a healthy vegetation with a nice spike in the near infrared portion or the red edge portion of the spectra. And then the red curve here shows what you might see with a burned area, the spectra of a burned area. And we'll get into this in a little bit in the code, but I just wanted to give a high level overview of kind of some of the things that you can image with hyperspectral data. So I know that was quite the whirlwind, but like I mentioned, the Neon website and our tutorial page has a lot of a lot more detailed resources going into this. Okay, so for those of you who have been following AOP and our work on getting data into GE, I'll just give a brief update on where we are. So we are currently working on ingesting five of our data products, our AOP data products, into Google Earth Engine. And these are the bi-directional surface reflectance or hyperspectral data product. And that's the product that we're going to go into today. And then we're also ingesting three of our LiDAR rasters, the digital terrain, digital surface models, and then the canopy height model or ecosystem structure data product. And then finally, our RGB camera injury. So to start, we don't have all of these data products ingested so far, but we do have a small subset that we have to work with, and we're planning on rolling out the rest of the data throughout the rest of the year and potentially into next year. We're not totally sure how long that will take at this point. And I'll show you this link in a little bit, but we do have a little tutorial app that shows what we currently have ingested, and I'll also go through that in the live coding to give you a preview. So our data are not currently searchable in the GEE public datasets, but we are actively working on this and expect it to be done no later by the end of June. So this has been several years in progress. John Musinski has been working on this for, I don't know exactly when he started, but we have gotten AOP data in and we have some pilot had some pilot data sets in before this year, but we have a few updates this year that we're excited about. The main one being that we are working on getting these into the public Earth Engine data catalog so then so people can search for it in the same way they would search for other satellite data sets. And then we've also added to our data. So the main addition is that we've added in some QA bands that this lesson will go through. And these allow you to find and understand the data sets in the way that they're intended. So things like the weather quality information and more details about the data sets and the descriptions of the metadata and all that. So we do have a number of educational resources and this is also we're in we're currently working on updating our resources that we created last year for this newer data set and to introduce the public data. But the tutorials that we have last year are created or are available in a series that is still relevant and it has a lot of code that you may find useful. They're just maybe small tweaks to it that we adjust as we as we get this new data set in. And then we also have a couple of new tutorials for this workshop that we'll cover. And if you want to follow along on the website if that's easier for you you can use these links below. And the first one that we'll be going into is this intro AOP GE 2023. John if you could a minute to add that to the chat that would be great. These two URLs at the bottom here. And then as I mentioned we will be adding we will be updating our old tutorial series to reflect the changes that we've implemented this year. Okay with that to get started hopefully everyone got a chance to register for Earth Engine and you can use this tiny URL here and that will open up a repository in Google Earth Engine and that's where we'll be working from today. So I'll go ahead and copy this into the chat and everyone can click on that link and authenticate. Thank you John. And then we will we will get started with the live coding. So I'll give everyone a couple minutes to do that and I'll click on the link myself. Actually I think I have it open. Okay hopefully everyone can see my code editor now. And just to interject you all should be able to find these under in the scripts panel to the upper left. And then the list of the scripts should be under reader. Yeah so it would be under if you can see where my mouse is here it would be under this reader and then it would show up under users. Yeah. And then Neon AOP intro. Thanks John. Okay so I'll go ahead and just give a really brief overview of the code editor and we do encourage everyone to explore the Google Earth Engine developer resources. They have a lot of information on working in the code editor some sample scripts and things like that. So to start I'll just I'll just start with all the panels that if you haven't worked in Earth Engine it's pretty similar to a lot of other IDEs or interactive development environments where there's a handful of different panels there's different tabs and the main difference is that there's this nice map panel on the bottom that hopefully will look familiar to you from Google Maps or Google Earth Engine. So as as John mentioned the scripts is where you can create new scripts that will actually populate in this middle window here and these are integrated with Git and but it's actually managed through Google Earth Engine. So basically how I shared the repo with you earlier was through this and you can do the same thing you can create a new Git repository and then share with with your colleagues or anyone in this way. So it makes it really nice for creating and sharing code. There's documentation in the stocks tab so you can search for let's say anything you're trying to do I'll just show image collection because that's what we'll start with although you might have to scroll down and then lastly there's the assets and this will look different for you but this is where you can add your own datasets or see what datasets are already in your repository there. The code the main section where you'll be interactively coding is in this middle window here I'll just mention to hit save because if you try to exit out of a code and you haven't saved it will prompt you and then on the right we have things like the inspector the console which is where if you print any statements to try and troubleshoot your code or things like that that will appear in the console and then tasks and these have things like in my case we've been adjusting some data so that would have tasks like that but I think it would also have exports and other things and then finally down here we'll explore this a little bit later but there's an interactive map panel with some things you can add in a marker to get geometry add in polygons move around and then there's a layers option that will show up a little bit later so I'll just get started with this first script and you'll see that there's a lot of green text in here and this is all just comments and so just a quick keyboard shortcut if you do controls and then forward slash that will comment or uncomment to section so as we're going through a lot of these a lot of this code at the bottom has been commented out and to go line by line I'll just start on commenting and then explain what the code does we try to do live coding when we can but I think in this case to avoid typos and things like that we'll just stick with this method so let's see what we're doing and I'm not going to go too much into the details of the JavaScript syntax Google Earth Engine especially or particularly in this platform uses the JavaScript API but I will just cover some basic things here as we go through so all of the syntax basically starts with declaring a variable and here all I'm doing is reading in image collections knowing the path so currently all of our AOP data is saved in this in this project called neon proud earth engine and then under assets and we have the data product identifier and if you're familiar with the neon data from the data portal this follows the same naming convention that you can find that data so first I'm reading in this SDR or surface directional reflectance collection as using this image collection and then pointing to the path and then I'm doing the same for all of the other data sets so the RGB camera this is the data product ID 30010 the canopy height model that has the data product ID 30015 and then the DEM which is the digital terrain in digital surface model as a double band image and then we're reading that in so I just see from the chat that we have at least one person who can't access the data so perhaps John can reach out to her I don't know if everyone's having this problem but we did provide read access to everyone so it could just be a registration or authentication issue all right I'll go ahead and continue so you'll see that all of these variables are underlined and there's this little prompt that says SDR coal can be converted to an import record so if you convert that you'll see that the variable pops up at the top of the script and then here you can click on this link to the data product ID and then if you click on the image tab you should actually be able to see all of the images that are loaded in the in this image collection so you can see we don't have a ton right now but we do have some from various sites and if you click on the image ID in here you can see the path to that direct image so we encourage you to explore this and this is one way to see if the data set you're interested is currently in google retention and we'll show you another way to do that shortly as well so just a quick trick if you click control z or undo that will bring that variable back in and we just recommend if you're sharing scripts with anyone to make sure to have those variable declarations to the data sets directly in the script because otherwise if it's only saved up here if you share that script those variables will not be shared with the script okay so as I mentioned you may first be interested to see what variable or what data sets are currently available in earth engine since we haven't adjusted all of them and so all I did here was I uncommented this second chunk of code from lines 13 to 15 and the print statement is a nice way to just show what you have in the console so if I do this and click run I'm printing out the images in the sdr collection and if I expand this and expand this window you can see here a list of all of the images and the information that you're most interested here at the end is the year site visit and then the data set so in this case these are all sdr data images and so this is the full list of the data that we have currently in g all right we have some some people who are who are trying to follow along and aren't able to access the script and yeah first make sure that you are able to get into the earth engine code editor and that just requires your login information so if you haven't yet registered for earth engine that would definitely be a reason you can't access this code editor and kel's giving some telling john or giving some couple tips in the chat as well maybe we could pause for just one minute to see if anyone who is having difficulty accessing the repo is able to open the code editor and then make another attempt at reading in the repo okay yep sounds good and yeah if we could draft the chat to that repo again and have people just have that available okay the other the other thing i can do is just share a link to the code directly i think that might be yeah maybe you could share yeah that's another thing try to get the link right yeah yeah yeah so yeah this is another nice feature of earth engine you can just use this get link button copy the link and i'll just copy it here in the chat and you should be able to click directly on that link to see just this script so hopefully that helps for those of you who aren't able to pull in a full repository okay so yeah for those of you who can't see the scripts in the repository click on the link i shared in the chat oops and i realized i just sent it to the waiting of participants so i'll send it to everyone okay try this link and you should be able to open just that first script that we're going through okay it looks like mike has been able to open the script okay great if any of you continue to have problems just let us know in the chat okay otherwise maybe you can continue great yep okay so now that we've seen what images that are available we're just going to start with a single image and i chose one in soaproot saddle this is one of our sites in california collected in 2021 and this site is particularly interesting because there was a fire and i may forget the year of the fire john probably knows but there was a fire before this year and so there's a nice there's some nice imagery showing the burn scar and i guess nice in the sense of interesting scientifically not nice that there was a fire so i'll go ahead and comment out this next chunk of code from line 17 to 21 and this is basically just using some filtering properties based off the image to select certain things like the date of data that we're interested in this case we use filter date to select data only between january and december 2021 and so say you don't know the exact name of the image or the visit or things like that you can always use this filter date to subset the data and this is similar to how you would do it or how you would subset satellite data as well and then we can also filter on the metadata and here we have a property called neon site and that is the four digit neon code in this case soaproot saddle so actually before i run this i'm also going to print our let's let's see if this works i'll print the sdr collection or actually i can even expand here so if you expand any one of these collections we had previously printed each data set as a list up here but if you expand and look at the properties you can see at the top of this all of the a number of different properties that we included with the with the data so these are things like the visit number in this case we've visited the the site that i've selected great smoky twice um a description the flight year the data product id this will be the same for all of these sdr data sets the data product url this clicks and goes to the data product page i'll just show you real quick it's opening up here so this is actually the page on the neon data portal that gives information about this data product and we really encourage everyone to explore this before working with the data and then we have other information here like the site product type and and so forth and then we'll get into this information at the bottom but this is the information pertaining to the individual bands so the wavelength and full width half half next to each of those bands so when i'm doing the filtering here in this next section all i'm doing is pulling out some of these properties to select a single image and then the first at the end here just pulls out the first uh of if say we pull out several images from this to select the first one i know in this case that there's one only one image that fits these criteria but we still have to use that first so that it pulls out an image instead of an image collection so when i run this chunk of code which i just quick run at the top you'll see it doesn't really do anything different than what we did before because all it did is read in this variable and we didn't print anything else out so we'll go through these next lines of codes which will actually do something so the next set or the next thing i'm doing here is just selecting three of the bands and these are bands that correspond to the red green and blue wavelengths and and you could determine that by going into this bands and then actually sorry the properties and you could pull out the information this way so for example band 53 you can see on the right here corresponds to a wavelength of 644 nanometers and so that's in this case the red portion of the electromagnetic magnetic spectrum so again i just read in a variable but i didn't print anything or map anything so i'll go ahead and uncomment the next line here and next all we're doing is setting up visualization parameters and this has been preparation for creating a map that will display in the map image below so if you don't know the minimum and maximum values that you're you need to use i can show you how to do that interactively coming up but all this is doing is setting a range of values and our reflectance data is typically reflectance data is a number between zero and one it's a unit list value but we scale ours by 10 000 and this is basically to save on the storage thing so that we can store it as an integer instead of as a float and so keep that in mind when working with data here and you can also rescale by applying this scaling factor but for now we're just going to assume or we're just going to use the values from zero to 10 000 and the optimal values we're picking here are from 100 to 2400 and then for another thing we have to do before mapping data is to tell the map where to center and so here i've just selected the latin long of our stoprid site this zooms in on that area in california and 12 is the zoom level so you can play around with that as well but it just tells you how big you want the map to display and then finally this last line of code is what actually adds a map to the image and it's this map dot add layer and so we're adding our rgb this is our true color image that we've pulled up those three bands the visualization parameters which we called rgb biz and then lastly we kind of give a title so this is so 2021 and actually this title should actually be rgb reflectance imagery so if i go ahead and run this you can see the imagery pop up and expand this below so this is our reflectance data over so fruit saddle in 2021 and then in the right you can see this layers tab if you click on this lock it will keep that open so it doesn't keep disappearing and you can click on this layer click on the settings and then you can play around with visualization parameters in here so before when i mentioned the range that just that's the range of values to to use here and it looks a little bit dark here so say you wanted to play with some different stretches you could say 98 percent apply and that actually makes it look a little darker even let's try 90 percent and this is just applying different histogram stretches to allow you to look at the imagery with different contrast essentially all right so that was just a super brief intro to basically making a plot finding the the surface directional reflectance data making a plot and and playing around with some of these visualization parameters so hopefully everyone was able to follow along with that does anyone have any questions right off the bat feel free to pop them in the chat since for those of you who are not able to import the repo the repository you could save as the script you can save as sometimes the save button is grayed out and that's if you haven't made any changes to a script that you previously opened so you just need to have you make one minor change and then you have to save as appear and you can save to your local owner repository and I think if you're only reading and you've opened it up you're able to open up from the repo you would have to save any changes to your local repository good point thank you john so I'll go ahead and save and last thing I would just say in terms of trying to brighten up the appearance the visualization you could play with the the range of values there and maybe up the you could do it in the script itself or maybe change the custom and auto altered them in some way yeah right so yeah stretching by one sigma makes it too great to try playing around these different standard deviation histogram stretches so this one actually looks pretty good three sigma I think looks more realistic and so that would be something like zero to 1260 I'll go ahead and apply that here and you can see how that might change so go ahead and rerun and then that applies those visualization parameters and actually I think for those of you who were able to get the repo these changes this is I'm working directly on that repository so all these changes and uncommenting will actually be saved to that repository so you can come back to this exact script from this from today okay so with that we'll go ahead to the next lesson and this this lesson is actually new this year and it involves reading and weather quality information which is now part of those extra QA bands and then we'll use that information to get an idea of what the weather conditions that were during this particular site when we flew over the site on the different days and then we'll also mask out data to include only the good weather data which is something we recommend everyone does when working with AOP hyperspectral data and so the lesson that I shared earlier and that John put in the chat on whether QA kind of goes into a little bit more written detail on this then we encourage you to look into that if you're interested but I'll try and talk you through everything here today as well so I'll go ahead and share this script again for those of you who weren't able to get the repo to pull in and I'll put it in the chat so yeah again you can just click on this link and it should open up this same script into your code editor okay so we're going to start at the one of the first steps from that last lesson just by pulling in a single image over so fruit saddle this time I'm pulling in an image from 2019 instead of 2021 and this mainly because in 2019 we actually collected data in all three of our weather conditions so actually I'll just take a step back real quick and I will I'm going to share that web page or the tutorial page briefly actually I think it's in here so so this is that tutorial that we mentioned and all I want to show here is this first image which basically shows that the different kinds of weather conditions that AOP collects in so we of course always try to collect in less than 10% cloud cover but this isn't always possible because we have a tight schedule and we're trying to capture all of not all of the sites but many of the neon sites every year in peak greenness and so this means we have a limited amount of time that the planes are deployed at each domain and so sometimes we get unlucky and have four weather conditions the entire time or we only get a couple clear weather days and this means that we might have to fly in some optional weather conditions so the figure on the left shows what we aim to fly in which is clear sky conditions you can see here there's a little bit of haze and it really comes down to a judgment call on the part of the flight operators on what they call the sky conditions but in this case there's just haze on the horizon and otherwise looks clear sky so they might call this a clear green we call it green weather day less than 10% cloud cover the middle image shows the flight over the northwest where we had some serious clouds and this this they called a yellow weather day or 10 to 50% cloud cover because of those high serious clouds and then the figure on the right shows what we would call a red weather day where there's a lot of clouds but they still had to fly because that was just the best opportunity they had so this is really important for interpreting neon's reflectance data because any clouds over the the plane can obscure the incoming light source which is the sun and so that can affect the reflectance values just depending on how many clouds and when and where they were yeah the cloud percentage and so we try to relay this information as best we can into the final data product so that information is saved in what we call a weather quality indicator band and that's what this lesson is getting into so again we're just going to read in this data from the first site and then this next line of code if you uncomment I actually didn't mean to comment this comment we'll just print that to the console and I showed this a little bit earlier but what I want to show now is if you scroll in the properties down to the bottom of this long list this shows all the bands of their bands of data that we have but if you go all the way oops and I realized I actually want to go into the bands but if you go all the way down to the bottom of the bands here you'll see that after band 426 which is our last data band we have a number of bands called starting with aerosol optical depth and then the second to last one is this weather quality indicator so these last I think there's 16 of them 16 or so bands are are all qa bands that include things like inputs and outputs to the atmospheric correction and then the weather quality information and also the acquisition date which may be of interest if for example you have field data that you're trying to match closely with or something like that so what we're going to focus on in this lesson is this weather quality indicator band okay and before we do that I'll just show you another way that so it was kind of annoying to have to scroll down to the bottom here and because I'm familiar with the data sets I know that all of the bands start with some with b and then the band number so 001 to 426 and then all of the qa bands start with something other than b so here in this next line of code is just a shortcut that pulls out a regular expression so we would all the b bands starting with b and then if I run it I can display the qa bands only in that way so here and now you can see it's 0 to 15 so that shows just those qa bands so you probably won't have to do something like that regularly but it's just one way to show you how to pull out a subset of information from the bands and that's using this dot select feature in google earth engine okay so now that we know which band we're interested in this next line is just going to pull out the weather information into a variable called soap weather by using select and then we can select just that band name so similar to before where we selected here we selected everything that doesn't start with capital b here we're just selecting the band that has this exact name and again this isn't going to do anything since i'm just reading it into a variable so another thing you can do um and more and this information will be a little more transparent once aop becomes a public data set but the weather quality information is saved so that one chorus the class one corresponds to the green or less than 10 data two corresponds to yellow or 10 to 50 cloud cover data and then three corresponds to red or greater than 50 cloud cover data so anything that from this band that equals one is our zero to 10 cloud cover so all we're doing here is just pulling out all the weather data from that band that is equal to one and then we can use this update mask to um basically to apply that that filter that we or the the all the pixels equal to one we can apply that to our original soap sdr variable that we read it up here so that's our reflectance data set so we're updating the mask to only include data where the weather quality was equal to one or in this case the best um weather data so um these next two lines of code should look a little bit familiar all we're doing is selecting the true color image um but this time using our clear weather data only and then we can display it using the map dot right layer and then we want to center it so we'll include that line as well so if i run this next slide of code uncommented down to line 36 we can see the reflectance data from this time from 2019 it's zoomed out a little further um and this is only the clear weather data so um in the final section of this code all i'm doing is showing i'm creating a plot of all the weather data but and colorized by using a op's color convention so we use that um stock plate type convention where red is bad and yep and green is good green is go so um i'm creating a color palette here for green yellow and red these are just text the decimal codes for those colors which you can find pretty easily online and then i'm applying that color palette to the soap weather data um and and making it a little bit okay so i run the full set of code uncommented now you can see if i unclick on the reflectance layer this is just the weather information so this area of the site was collected in green weather conditions this is probably our priority one our highest priority flight box and then others parts of the flight were collected in yellow and red weather conditions and this is so you can see here this is just masked out to include only the good weather data so you may not need to make this weather quality map every time but i think it's a great way to visualize the the the full site and get more information on okay what were the conditions during the flight what data is most valid valid to use and then from there you can work with that data with that um high quality data and if you want to just to play with this to see what it would look like when you um filter out everything with the yellow data you just need to go to the line 24 yeah and then change that to a value of two yeah two so here we could do that just for fun so this is just as john mentioned this would just be the data collected in yellow weather conditions or a very factional this really shows the the speed of earth engine in being able to display very large in this case hyperspectral datasets very quickly and filter them out in in ways that you want so you know cloud environment is very useful in that respect yeah that's a good point so yeah if we were to give the slides of the dataset the hyperspectral dataset as a whole it may be on the order of uh 150 gigabytes of data yeah yeah we could look at it so this is this vast dataset and here you can see it's 140 gigabytes so yeah quite large okay so that was um the main thing I wanted to go over with live coding but before we pause for to do this survey I just want to share this last script those of you who have downloaded the repo you can click on this but instead of going through this I just wanted you to interactively explore on your own so I'll go ahead and share this link but this last one basically um does the same thing where we're plotting in the spec the true color image of the data but we're also creating an interactive spectral signature plot on the left and um it's taking a little bit to run so basically what this does is if you can click on any area on the map on at least in the reflectance dataset and it will show you the reflectance spectra or the spectral signature of that pixel that you clicked on and so this is kind of neat to look at this is one this is a site as I mentioned that burn had a major fire the um I'm forgetting the name of the fire but it had a major fire before 2021 and if you click in the burned area down in the southwest corner of the site you can see that spectral signature and how different it is from live vegetation so on your own if you want to take some time and just play around with this I think this highlights again some of the power of having this data in this cloud computing environment and um interactively exploring the dataset okay we have a question can we export the selected reflectance profiles and yes you can if you click this upper if you click this little arrow in the upper right corner you can say download and you can download it as a csv or as an image here so hopefully that answered your question okay so we have another question during the first script a comment was made about the acquisition date if you wanted to coordinate data if you're selecting among pixels and areas to get certain cloud value are you are these composite images like modus images from multiple dates so yeah that's a good question and these data that we've imported are are what we call level three datasets which are mosaic datasets from different flight lines and so the way we mosaic data are based off of a series of rules and the first rule is we select the highest quality weather data so if data were collected on two different days and one day was worse weather data and one day was better it would only select the good weather days and then we also select the native most pixels um and so those are the two main rules and then yeah to get the time span so I can show you here you could go into the um and we we could do this as a separate exercise or tutorial but you could read in that weather um or sorry the acquisition date band similarly to how we read in the weather band but let me just see if I can find it here so bands if you scroll down to the um sorry we have to go to properties again oh this is a maybe this isn't the best here I'll go back to the first lesson here so I'm just going to print the sdr code here and actually I wanted to print the so I'm just printing the single image we've read in and if I look at the bands here this is all 442 bands including the qa ones if you go down to the acquisition date or is it in the property done um to find the minimum and maximum values of the data where would that be well I can show you a quick way so sorry what the pixel acquisition dates yeah so we can also look at it in the accent so before then you can navigate to this through that variable in the top that should be in the bands um I don't know if they will have access to this particular view of the asset um until we have them in the yeah you can't look at the individual images but I think it will be in the band right it should be in the yeah so it should show up um and I can get back to you on this but you can see the minimum and maximum and you may not be able to see this yet but once the data are publicly available there'll be a better way to display this I believe but here's a difference I guess good explanation that there is an acquisition date property which will give you the date of the data set I believe that's in there is that correct yeah this so this one and then there's a band right the band will be the acquisition date for each pixel so um you know we could have been flying over a period of two weeks there could have been three different days when we collected data over the site and assuming those are the best quality pixels in the final data set they could be from multiple dates and so the each pixel might have a different um acquisition date you know there might be three different acquisition dates contained in the pixels and you could similarly to yeah pull this out here yeah so you could do so say we wanted to just show dates you could do something similar to this yeah extract of the acquisition dates and then you could plot that and then see the range of values or even just pull out the range of values from here so if I do print let's see if this shows anything now and it's always good to include what you're printing so maybe you may have to look at min max yeah I'm not sure how that looks on dates but right the you could display it then in some way and you would there thereby be able to differentiate among the different dates in the right right right yeah so we can add that well after this we can add that into this script event and then you can look at the repo and that may be important for people who are comparing um the aop data to satellite overpasses or maybe even some ground data that might have been collected yeah so um since I know it's almost the top of the hour I'll just share the I'll add this survey link for those of you who have to go and we just ask that you fill out this quick survey about this tutorial and then we're also sorry about this webinar and then we're also seeking input for future webinar offerings since this is the last one of this spring for example we're deciding whether to continue this webinar series so any feedback you have is greatly appreciated