Open jdduh opened 1 year ago
A sample AOI (13309220_ID_USGS_Mf_Salmon_R_at_Mf_Lodge) is uploaded to the ftp server, under the BAGIS_aois\Fire_Disturbance_AOIs folder.
What other fields do we want in the new nifcfire layer? Just the year?
Yes, just the year. There should be a step 4.5 to remove duplicate fires in firecurrent and firehistory (keep the duplicates in firehistory and remove them from firecurrent). firecurrent is a temporary/working dataset that is waiting for validation, It still contains fires that were validated and had been moved into firehistory.
4.5. Find the most current year in the firehistory and delete fire records prior to that year from the firecurrent before merging.
Notes: it's unclear if the validation was done on a fixed timetable or case-by-case for individual fires. There should be a logic to check if a fire record to be removed from firecurrent actually exists in firehistory. Fire boundaries of the same fire in firecurrent and firehistory are very likely to be different (i.e., the geometry was altered during the validation).
It appears we can join firecurrent and firehistory using firehistory.IRWINID and firecurrent.polyIRWINID. Let's use IRWINID {63FFB3A1-2BC3-4E08-9C97-B17F9A05F22B} from the 13309220_ID_USGS_Mf_Salmon_R_at_Mf_Lodge AOI as an example. There is a 2021 record for this fire in firehistory and a record in firecurrent. Should we exclude the record from firecurrent as a duplicate?
Edit: I recommend adding irwinid to the nifcfire layer. It will be helpful for debugging purposes so that we can find the record(s) in the source tables.
Please use and keep IRWINID in the fire layers.
https://www.nwcg.gov/publications/pms936-1/data-preparation/incident-information
Maintaining google drive document with geoprocessing steps
Some details on the data I have found. It looks like they didn't start using IRWINID until 2016, thus there are many records in firehistory with a null IRWINID. This shouldn't cause a problem with the merge because the oldest records I have found in firecurrent are from 2020. However, I added INCIDENT to the fields in the new fire layers so we have a way to identify them. I don't know if there is another primary key we could use to identify the older records? Also, I have found multiple duplicates in firehistory where records have the same irwinid. I don't know if this is a problem?
The fire ID (primary key) is for reconciling the duplicate records in the historical and current fire datasets. I have to assume all the data in the historical dataset is correct, unless we spot obvious errors.
I don't see a field named fire ID in either layer. There is a field called UNQE_FIRE_ID in firehistory that appears to be truly unique, and a field called attr_UniqueFireIdentifier on firecurrent. These keys appear to match between the two layers and is used earlier on the firehistory layer. The oldest records with this field populated are from 2006. Maybe we should use this instead of IRWINID to eliminate duplicates between firehistory and firecurrent?
The duplicates I find in the historical fire dataset are interesting. Take a look at this IRWINID on the firehistory layer in 13309220_ID_USGS_Mf_Salmon_R_at_Mf_Lodge: {30BCC069-947B-43F3-B139-0761FD79C4BD}. It is the same fire because the name and area are the same. However, the records have different UNQE_FIRE_ID and were generated by different agencies: USGS and BLM. I doubt that NWCC will want to duplicate the area of these fires in the statistics.
We could add a step to de-dup them using the IRWINID, but as I said previously, IRWINID only goes back to 2016.
I meant the IRWINID. We only need IRWINID for reconciling the duplicates between firehistory and firecurrent. I will verify with NWCC how they want to handle areas that were burned multiple times in the same time period (annual or 5-year). If they are fine to not count the reburned areas multiple times, then we can just dissolve all the burn area polygons into one flat polygon. This should automatically take care of the duplicated records in the firehistory layer.
In this google slide deck there are references to USGS MTBS raster data. Are these steps we should be adding to Fire Disturbance Data Processing? If so, is there a spec beyond clipping the WMS to the AOI?
Do we want to fold these data sources into the data source architecture that we are using for the other BAGIS-Pro layers? If so, then I will need a heading and a description. Do we want to add them to the existing batch tool title page? Or have a separate title page for fire data sources?
NWCC has confirmed to not double/multiple count the burned areas for the same reporting period (i.e., annually the last 5, 10, 15, etc. years), Dissolving all the merged polygons for the reporting period should take care of the duplicate polygons issue that's presented in the firehistory data.
There are different statistics and maps for MTBS (burn severity) data. Basically just % area of AOI with high, moderate, and low burn severity using the same summary period as the fire disturbance (NIFC) maps.
I will provide the BAGIS-Pro data source information later. Yes, please use the same architecture. We probably won't merge the reports at this point. We might combine both the original report and the fire disturbance report in future release of the Batch tool.
Wonder if you have experience working with WMS data in ArcGIS Pro? I try to add the WMS server with the url provided and Pro cannot connect. https://apps.fs.usda.gov/arcx/rest/services/RDW_Wildfire/MTBS_CONUS/MapServer/WMSServer/. I can add the MapServer, but it seems like the projection is off and Pro cannot clip a raster from a MapService.
Do we want to consider a new FGDB for the fire data if there will be a large number of layers? The argument against this would be that ebagis cannot upload it but we're not using ebagis anymore.
See #21 for the spec of the fire report summary page and the data sources headings and descriptions of the fire data.
Finding newly burned area from nifcfire:
Here is an alternative method that can count areas by the frequency of overlapping features (i.e., burned multiple times for the summary period).
Adjacent years rarely have overlapping fires. However, if the time span of the period is large, then the overlapping burned areas could exist.
Notes from March 2024 meeting
item 3. I have an updated sample GUI on the data processing document (p. 8) and some descriptions/questions on following pages. Please review and let me know if I have captured the requirements.
Add step to record max data date from the NIFC service in the analysis.xml when this layer is created.
We must have talked about this, but I can't find the answer. In firehistory there are multiple irwinid's with > 1 record. Looking at the attribute table it seems that these records have the same irwinid but different sources. Do we need to resolve this as part of creating the nifcfire layer? I'm not sure what tool to use because if I dissolve on irwinid and year, it combines many unique fires with null irwinid's. For the annual reports, it will report 2 new fires instead of one if we don't handle this.
I've come up with a set of GP tools to eliminate the duplicate records that come from firehistory with the same irwinid's but different sources. See p. 14 of our design spec. Is it okay to make these modifications to the nifcfire layer? Or would you prefer to retain the original layer with the duplicates and save these modifications to a separate file. We need to do this to get an accurate fire count for the statistics.
We probably can reuse/overwrite the nifcfire layer and don't retain the original layer. There seems to be a separate historic wildfire data source (https://giscenter.isu.edu/research/Techpg/HFD/). I'm in communication with their PI to see what types of processes they did to clean up (e.g., remove duplicates) the fire perimeter data. HFD just released a new version containing 2023 fires. I will keep you posted if there is any benefit to use the HFD. If we decide to use HFD, then we probably need to publish the "static" dataset on NRCS AGOL.
We have potential a new historic fire dataset - HFD Historic Fire Since 1950. This dataset seems to be updated more timely than NIFC. As of today (April 2024), the 2023 fires are updated. The dataset doesn't use IRWIN ID, but has all the extra duplicate fires removed. If we decide to use this dataset, then we only need to extract the current year's fires from the NIFC Current Fire feature service in the analysis. If NWCC decides to switch to this fire dataset, then we probably can set a flag in the definition file to indicate the source of the historical fire data in the analysis. The flag could be "NIFC" or "HFD."
Feature Service: https://services1.arcgis.com/z5tlnpYHokW9isdE/arcgis/rest/services/HFD_HistoricFiresDatabase/FeatureServer Metadata: https://giscenter.isu.edu/pdf/PDF_NASA_RECOVER2/Metadata.pdf
I clipped the HFD layer to the aoi boundary that I have been working with. The perimeters of some of the fires are different. I'm not sure which one is more accurate. Let me know if you'd like me to post a geodatabase with the clipped layers so you can take a look. There is an unqe_fire_id in the HFD data which appears to be the same as the irwin id for some of the more recent fires. But it isn't consistently used. For merging with the NIFC Current Fire data, we would have to query to HFD layer to get the latest year and then only extract the currentfire data from the following years. We are assuming that the data is added a complete year at a time. I would still like to include a unique id in the merged file if we can. It makes it easier to identify data issues.
Some thoughts about adding HFD as an option:
This question is regarding the fire_analysis.json file. Please confirm that lines 1 - 4 should be recorded when the data retrieval occurs. I am referring to the Fire Statistics Time Period Calculator.
I believe we need the values of the first four (and the others in the spreadsheet) to recreate the analysis (Note: the tool currently doesn't have the option to recreate an "old" report). So, yes, we need to put them in the fire_analysis.json file. Given than there is another parameter that we use to calculate the data_retrieve_start_year, we can either record the data_retrieve_start_year or a "retrieve_duration" value. It probably is more straightforward to just record the data_retrieve_start_year, but either one is fine.
Because the data retrieval is decoupled from the report generation, I need to update the values in the spreadsheet at different times. The four items specified in the comment immediately above will be recorded/updated when the data is retrieved. The remaining three items will be updated each time the reports are generated. I wanted to call this out because those first four values reflect the values from the local data layers instead of what might currently be available from the server. Especially if the reports are run later than the data is retrieved.
See #49 for fire data sources. Please note the spec of the fire data might continue to evolve.