National Agricultural Imagery Program Point Digitizing Help
NAIP Point Digitizing User Guide (PDF, 405 KB)
Overview
The NAIP Point Digitizing (NPD) application collects training points from NAIP imagery for all states for all years to be used as input into supervised models, which can be used to classify imagery into various categories, such as healthy vegetation, dead, and dying trees. National Agricultural Imagery Program (NAIP) is high resolution ‘leaf-on’ imagery flown for the United States Department of Agriculture (USDA).
The User Interface (UI) is a series of steps that are used to setup an area for point digitizing. Additionally, the Graphical User Interface (GUI) is used to collect the metadata for each of the points.
The application is a Single Page Application (SPA) reactive GUI that allows for a better User eXperience (UX) where parts of the interface are updated without a sequence of screens.
This application is run in the Google Earth Engine (GEE) site at code.earthengine.google.com.GEE is a web-based Interactive Development Environment (IDE) for the Earth Engine JavaScript API. GEE code editor features are designed to make developing complex geospatial workflows fast and easy.
The GEE site also features a large set of geospatial data and a repository for user created data. The site automatically brings more servers into service as needed without any coding.
The objective of this document is to introduce and describe the use of the Forest Health NPD application in GEE. The application’s purpose will help to minimize any ‘behind the scenes work’ in the GEE script window and to allow for more defined adjustments and protocols for obtaining training points.
Acronyms and Abbreviations
ABBREVIATION | ACRONYM |
---|---|
BIOCLIM | Bioclimatic Prediction and Modeling System |
FAQ | Frequently asked questions |
GEE | Google Earth Engine |
GUI | Graphical User Interface |
IDE | Interactive Development Environment |
NAIP | National Agricultural Imagery Program |
NPD | NAIP Point Digitizing |
RGBN | Red-Green-Blue-Near-Infrared |
SPA | Single Page Application |
USDA | United States Department of Agriculture |
UX | User eXperience |
Background
The Forest Service has been using GEE for remote sensing and risk mapping processes. The scripts written for GEE were developed in the JavaScript programming language. The scripts were developed for viewing aerial imagery and extracting data (point digitizing) from that imagery. The points and data obtained via the digitizing process are later input into a model that gives predictions for tree crowns or canopies that are either healthy (live) or unhealthy (dead or dying).
The resulting maps provide nation-wide assessments of forest health. The maps highlight areas affected by insects and disease. The accuracy of these models and maps are influenced by the quality and quantity of training points.
Many variables can sway the model into picking up non-treed areas. The soil/understory can be similar to red tree crowns (early stages of mortality). Gray canopies (later stages of mortality) can also share similar spectral characteristics to rocky outcrops and bare soil. Post processing methods, involving masking layers, are used to minimize confusion between trees and other features such as the forest understory.
Contents
The UI is a sequence of sections that are used to setup values for the points. Additionally, it gathers metadata such as the state abbreviation and date for each point before outputting the data.
1-Select a State and Year
The state and year of the desired source imagery for the points is captured in this section.
NAIP imagery is collected approximately every other year for each state. However, Alaska, District of Columbia, Hawaii and the territories are not included.
Click the ‘Select a value’ box to choose the state for the training points. Selecting a state will zoom to the state and center the map in the map window. It will also populate the ‘Select a NAIP Year’ and list the years available for the selected state while automatically selecting the most recent year.
After selecting a state, click ‘Select a NAIP Year’ to select one of the available years for the state. The most recent year is the first choice in the descending ordered list.
2-Set Points Info
Additional information for the points are captured in this section.
Input your initials in the box to the right of ‘Three Initials’. This information is used to identify the analyst digitizing the points. The input must be three lower case characters. Upper case, numbers, spaces or special characters are not allowed.
Click the ‘Select Eco Region’ button to display state borders, ecoregion borders and existing points. The button also activates the cursor. Use the cursor to point to an ecoregion polygon in the selected state on the map. The ecoregion polygon will then highlight and the metadata tag for the points will be set.
After review, click ‘Save/Submit’ to display the imagery for the year within the selected state and ecoregion as it parses the metadata. Be patient while the display is updated and the metadata is parsed for the start and end dates in the selected state and year.
3-Set Dates (optional)
Date information for the points is captured in this section.
This section is disabled (ghosted) until the ‘Save/Submit’ button is used in the previous section. This section is optional because the start and end dates that are parsed from the metadata and shown in the labels ‘Minimum Start:’ and ‘Maximum End:’. This is the range when the NAIP imagery was flown for the selected state and year.
Occasionally, some imagery is flown outside of the normal ‘leaf-on’ dates and can be eliminated with the date sliders. Imagery flown in leaf-off or senescent conditions should not be used for model input. Setting dates is primarily used to avoid digitizing in areas that have any indication of fall senescence.
There are two date widgets, one for start and one for end. Dates cannot be selected outside of the range shown by ‘Minimum Start:’ and ‘Maximum End:’.
There are several ways or methods to change the date on the widget. This includes clicking the box under the day, clicking the arrow at the beginning or end. Additionally, clicking ‘Jump to Date’ will show a calendar.
All of the date change methods update the imagery in the map. When there are ‘holes’ in the imagery, that imagery was flown outside the selected date range.
When considering a date range, a helpful reference can be viewed here: https://smokymountains.com/fall-foliage-map/
4-Enter Points
NAIP Point Digitizing Examples (4.4MB PDF)
In this section points are entered and exported along with their metadata.
Point color is a key part of the metadata for input into the model. The choices are:
green (green crowns on healthy tree)
red (red crowns on dying tree)
gray (gray crowns on dead tree)
absence (gray to red rock, soils, or non-tree pixels)
shadow (dark object or pixel that would normally have color, such as an area shaded by tree crown)
Click ‘Enter Points’ to activate the cursor. Then zoom and scroll in the imagery to locate an area for the selected color then begin to digitize a point or points. The color can be changed in ‘Select a Color’ and digitizing will continue without the need to once again click ‘Enter Points’. Each point must be inside the selected state and ecoregion and within the imagery bounds.
Turning off the imagery with the checkbox in the ‘Legend’ and using the ‘Satellite’ button in the upper right on the map may be helpful in identifying point locations.
If an erroneous point is digitized click the ‘Delete a Point’ button to remove it from the legend. The most recently digitized point is shown as the first choice. The checkbox in the legend can be used to help identify the point because the point layer can be turned off and on. If all points are deleted, ‘Enter Points’ must be clicked once again.
4.1-EXPORT
When the desired number of points for the state, year and ecoregion have been met for each color, click ‘Export’ to output the data. This will move the data to permanent storage and remove all the points from the map. The ‘Export’ button can be used frequently to prevent any loss of data. A rule of thumb is to ‘Export’ after 15-20 points. Importantly, once data have been exported and removed from the map, digitizers are unable to make any further edits to the points.
The next steps are outside the GUI and are a bit awkward. The Forest Service has asked GEE for a function to replace these steps. Meanwhile the steps are the following:
Click show code or drag the bar above the map to reveal the ‘Tasks’ tab at the top right.
Click ‘Run’ box to the right of the exported file.
Click ‘Run’ button on the displayed panel.
Running the task can require a lot of time to complete-from seconds to hours. While running, a spinning cog icon will rotate to the right of the export file name followed by the amount of time the task has been running. The export file name will be highlighted in blue when the task is finished. It is safe to exit the application while the task is running. Once the task is complete, the file will be shown in the ‘Assets’ tab.
FAQ's
Please reference the document NAIP Points Digitizing Examples
Click on the Inspector tab to allow zoom and pan without dropping points.
Click on the Inspector tab and place and click the cursor on the target pixel.
A rule of thumb is to ‘Export’ after 15-20 points.
Use the layers drop down box and toggle off the layers (except for the imagery layer).
Within an ecoregion it is important to know the geography and what to look for. Look around National or State Parks for heavily forested tree stands. It’s best to stay clear of urban areas or residential land.
When beginning to digitize a state, view the ecoregion boundaries at a first glance. It’s then appropriate to start from bottom to top or side to side. This helps to keep track and ensure that all the eco regions have been digitized in and accounted for. This is also very useful when the existing point’s layers are turned off to help speed up the interface.
15-20 or more points per point class are desired per ecoregion. Some ecoregions are smaller and it may be difficult to reach 20 points. Some larger ecoregions can have more points than smaller ones. However, clustering multiple points within an area can lead to a lot of points quicker. With point clustering keep equal distribution within the ecoregion and be consistent with the number of points digitized. When doing this, expect to have 15-20 point clusters (5-7 points per crown) in each ecoregion. This ensures good coverage in pixel variation.
This is desired when digitizing and is an efficient way for selecting a wide range of pixel patterns that can occur within an area. Look for the best range of pixels that represent the feature while not to the point of deviating into other crown colors. Typically 5-7 points can be placed within a crown area. Ideally an ecoregion will have up to 15 of these point clusters.
Forested regions are very diverse. This is especially true across all the lower 48 states. There may come a time when it’s very difficult in finding a point for digitizing. Red trees and points will definitely be present in western states, and only sometimes in eastern states. It may also be useful to turn off the NAIP layer so the base map can be displayed. From there, green polygons can be viewed on the map and can be critical to help navigate throughout the state. Although don’t rely on them exclusively because it will impact equally distributing points. It’s important to note any of these issues in the Google Drive record keeping spreadsheet.
When considering all the variations in a pixel’s digital number, there will be times of being uncertain when dropping points. This can be in scenarios where a pixel is in between one or more color point classes. It’s best to avoid these or also reference the inspector feature to verify its RGB.
Occasionally the application has trouble loading the GEE data range slider class library. Press Select Eco Region, proceed to reselect the ecoregion again then save/submit. An example of this error would be:
If the above does not ‘fix’ the problem, use the Run with Profiler choice instead of run:
Currently FHAAST is assigning states and years through email and requests. Typically, two states are assigned with two sets of years. It’s appropriate to begin with the most recent year and conclude with the latest. Furthermore, these assets are tracked and logged in the Google Drive spreadsheet.
NAIP is captured separately between different years. It’s possible that the image quality can be better or worse during photo interpretation. Toggling the Satellite button can be helpful for getting a clearer view of the imagery and understanding the geographic features. Then proceed to switch back to the NAIP image. Please note that the satellite imagery isn’t for digitizing use and should solely be used for reference.
Some of the steps require more time than others. For example, after selecting and submitting an ecoregion. This process can take at least a minute for the NAIP imagery to load during this process. The number of layers that are turned on may also make the application feel sluggish. Turning off any unnecessary layers for digitizing will greatly increase the speed. A good tip here would be to make sure that the existing point layers are turned off and exporting new points after 20 or more.
This is generally caused by using a browser other than Chrome. When running the application always do so in the Chrome Browser window. In addition, keep your browser window maximized and the scripts code minimized.
The GEE interface windows can be dragged and sizable. It may have been minimized all the way. Adjust the length and width of the windows by clicking and dragging the three dotted bars at the top and sides.
When entering points, it takes some time for the points to appear after clicking. Look at the layers tab to see if there’s a black line next to the top point layer. This shows that it’s processing. Also, be sure that the Inspector tab at the top right isn’t selected. If it is, click the “Console” tab and try entering the point again.
When points are exported, they will be added to that particular state/year. This could be a previous digitizer’s points. Simply uncheck them in the layers window to turn them off.
GEE only allows one session per account and won’t function in a new session if the same Gmail is logged into GEE on another device.
This is dependent on the digitizer, size of state, number of ecoregions, point classes, and use of the application. It’s best to be patient and take the time centering points within each of the NAIP pixels. GEE has different peak times throughout the day where it may also appear slower due to higher server traffic.