Wednesday, August 31, 2022

Special Topics in GIS - M1.1 Fundementals

The precision of waypoints mapped by the Garmin GPSMap 76. Blue buffers denote 50th, 68th, and 95th percentiles, the star is the calculated mean waypoint location. 

A primary tenant of mapping and analyzing data well is the ability to assess whether you are working with good data in the first place. For the first lab in Special Topics, we reviewed the fundamentals of data accuracy and precision, particularly in regard to the horizontal and vertical attributes often associated with GIS location data.

The dataset we worked with was 50 points taken several years ago around a single location by a Garmin GPSMap 76. Through basic geospatial and statistical analysis I determined the horizontal and vertical accuracy and precision for the dataset. A subset of those determinations are below:

Horizontal accuracy: 3.49 meters                        Horizontal precision: 4.3 meters

Horizontal accuracy is determined by comparing the waypoints to a known reference point. This is effectively a measurement of how far "off" from the actual xy point the mapping unit was recording locations. Horizontal precision however is a measurement of the range of values returned by the unit, and does not require the "actual" xy point because it is a comparison of waypoints to one another. To determine precision in this case I calculated an average xy coordinate from the waypoint data, then compared how far away from that mean each of the other waypoints were. 

Friday, August 12, 2022

Applications in GIS - M6 Suitability Analysis

Suitability analysis for development in the Applegate. More suitable areas are ranked higher (green), and less suitable areas are ranked lower (red).

In the first section of this lab, we learned the principles of combining several reclassified rasters with the Cost Distance, Cost Path, and Corridor tools to determine suitability and least-cost paths. 

For this development scenario we were given rasters for landcover, elevation, and soil types as well as shapefiles for roads and rivers, then asked to help a developer determine sites for potential development based on suitability. The hypothetical developer preferred certain soil types that were good for building and wanted to be close to roads but further from rivers and wetlands, as well as avoid construction on steep slopes. 

The first step was using the Euclidean distance tool to create rasters of the rivers and roads where cell values would be representative of the distance to those features. This would allow them to be reclassified later with areas further from rivers ranked higher, and far from road access ranked low. I also used the Slope tool on the elevation digital elevation model, so that cells in the new elevation-related raster were representative of the land slope, rather than height. 

With 5 comparable rasters, I ran the Reclassify tool on each with a scale of 1-5, ranking desirable factors like grassland landcover high and undesirable factors like sandy soil low. Once all the rasters were reclassified I used the Weighted Overlay tool to combine them, first with all suitability rasters having an equal weighting, then again with slope having a higher weighting and distance to roads and streams having less weighting. This makes some sense for development, as the trade-offs of being closer to a river or further from main roads are more easily addressed than the trade-offs for trying to build on steep slopes. 

With the weighting adjusted more land was available as suitable for development, particularly land in the valley area, closer to rivers and streams. 

Applications in GIS - M6 Corridor Analysis

 

Final corridor analysis map from this lab determined with several habitat inputs.

In this lab students were asked to take on the role of park rangers and determine the corridors likely to be utilized by black bears moving between two sections of the Coronado National Forest. We were provided with layers for landcover and elevation, as well as shapefiles of the roads and forest boundaries. 

For my analysis I first checked that all raster datasets were in meters, then used the Euclidean Distance tool to convert the roads shapefile to a raster where cell values were distance to the road. From here I had three comparable rasters for analysis. 

I used the Reclassify tool on the roads, elevation, and landcover rasters to convert their values to ranks from 1-10 on how attractive the cell would be to black bears. Cells close to roads were ranked low, while in landcover any cell values that indicated forest and vegetation ranked high and human development ranked low. Since the assignment indicated black bears prefer mid-elevations, elevation values between 1200 and 2000 meters were ranked high and elevation values below and far above that ranked lower. 

With these three rasters all reclassified, I could now combine them with the Weighted Overlay tool. This tool combines raster values based on an optional weighting, and in this case landcover was weighted higher than elevation and road proximity. The resulting raster had cells containing values 1 to 9, with 1 being least suitable bear habitat and values closer to 10 being most suitable bear habitat.

Suitability raster, green values are those more suitable for black bears.

Unfortunately the Corridor tool uses a cost surface, not a suitability surface, so the sutability raster had to be "inverted" to a cost raster, using the Minus tool. By subtracting the raster from 10, all low ranking places became high cost cells, and previously suitable cells now displayed as low cost. 

Cost raster, inverted from the suitability rankings, darker red areas are higher cost, the forest shapefiles are drawn in light green. 

To conduct a corridor analysis between the two forest areas, I used the Cost Distance tool with this new cost surface raster, once with the northern Coronado section as the source, and once with the southern Coronado section as the source. This resulted in two rasters that displayed the cost over distance emanating from each forest section. Backlink was not important for this corridor analysis, so it was not included. I combined both of these cost distance rasters into one by running the Corridor tool, which automatically determines the least-cost corridor based on two cost rasters. 

Corridor raster displaying the least-cost corridors between the two forest shapefiles.

I explored the corridor raster and found the minimum cost value, then multiplied that value by 1.03, 1.05, and 1.10 and compared results before finally selecting the 5% corridor as my final wildlife corridor. This seemed the best balance between connectivity and space allocation, and I adjusted the symbology accordingly. 


Friday, August 5, 2022

Applications in GIS - M5 Damage Assessment

 One of the most important steps in natural disaster response is the damage assessment; this analysis allows responders to scale the resources needed to assist and is the first step in getting a return from insurance and rebuilding aid allocated. 

The track of hurricane Sandy as it approached New Jersey, the icon color signifies storm intensity with red being Category 2 and green being Post-Tropical

When Hurricane Sandy hit the east coast of the US in October 2012, it came with high winds and a 9-foot storm surge that was augmented with waves and high tide in coastal areas. The assessment that followed was completed by FEMA contracting agencies, USGS, NOAA, and third parties. In this lab, we simulated a scenario, acting as one of those analysts to determine structural damage in the wake of hurricane Sandy storm surge. 

Mosaic files with imagery showing the New Jersey coast both before and after the storm

After creating hurricane track maps for context and developing a civilian self-reporting damage assessment in Survey 123, I loaded pre and post storm rasters into ArcPro as mosaic datasets, and used Swipe and Flicker mode to toggle between them. 

For the analysis, it was important to have constrained values - this means there were a limited number of acceptable values in the damage assessment, and helps standardize the way the damage is classified. To do this, I created the four domains Inundation, Structure Damage, Wind Damage, and Structure Type. The two damage domains were floats and had codes of 0 = No damage, 1 = Affected, 2 = Minor Damage, 3 = Major Damage, 4 = Destroyed. Inundation was a binary 0  = No, 1 = yes option, and Structure Type included the four values Residential, Government, Industrial, and Unknown. 

With these Attribute Domains created, I added a feature class to the Map with the same Damage, Inundation, and Structure Type fields. Once the layer was added, I was able to set the domains as the constrained attribute domains I had created in the Data Design dialogue. This successfully created a point feature class where the attributes could be selected from among the damage classes I created. 

The constrained fields that allow limited selection of attributes during structural assessment

At this point, by zooming into the mosaic imagery and examining property parcels, I used the Create Feature ability to add points to each structure; selecting as they were added whether that structure appeared to have structural damage, wind damage, or inundation, and classifying the structure type as the point was placed. This analysis was somewhat challenging; determining whether a building suffered minor or major damage based only on aerial imagery felt like a very subjective analysis. Additional data like vegetation surveys and elevation overlay would have helped make this more comprehensive.

Results of the damage assessment, with symbology indicating the degree of damage.

With a full set of categorized points providing structural damage assessment, I then added a polyline feature class and delineated the coastline. This allowed further analysis with the Buffer tool for how far different impacted structures were from the coastline. 

Overall, structures closer to the coast were more likely to be destroyed or have major damage, while structures further from the coast had a greater diversity of storm impacts.  


Tuesday, August 2, 2022

Applications in GIS - M4 Coastal Flooding

 For our fourth lab in this course we examined coastal flooding from tropical events utilizing digital elevation models. These models for sites in New Jersey and South Florida were provided, and we used spatial and three dimensional analysis to determine areas most impacted, initial damage, and make predictions for flooded areas. 

For the New Jersey site, we used LiDAR datasets from before and after the impact of Hurricane Sandy. A theme of this module was converting LiDAR data into rasters and polygons. Tools like LAS Datast to TIN, TIN to Raster changed the three dimensional dataset into a two dimensional raster with elevation values, and by using Raster Calculator between the pre-hurricane and post-hurricane raster layers I created a new raster that just displayed change. By selecting an appropriate color ramp, rasters like this can be used to highlight the differences in elevation between two datasets over a period of time. 

A raster with negative elevation change in red and positive elevation change in dark blue. Areas in red indicate where there used to be buildings and sand that no longer exist.

One of the last assignments in the New Jersey area was to take a raster with coastal area imagery and reclassify it with the Reclassify tool to display only the areas that would theoretically be affected by a two meter storm surge. To do this I reclassified with natural breaks and set an upper limit of 2, this meant the raster now showed only areas with an elevation between -37 and 2 meters. I used the Raster to Polygon tool to make a multipart polygon feature class from this shape, and calculated geometry with this shapes area and the area of a Cape May County Clip to determine the percentage of Cape May County would have been impacted by a 2 meter storm surge. 

While Florida and New Jersey sit at different latitudes, both states have a large amount of low, non-draining land, and are at risk for storm surge from squalls and hurricanes. Moving to a dataset from South Florida I used digital elevation models from LiDAR and USGS to perform a flood prediction analysis. 

The DEM raster files had to be saved to the local computer, and for easier comparison I converted the LiDAR dataset to meters instead of feet with the Times tool and a constant value of 0.3048. From there I used the Reclassify tool to create rasters with values that had an upper limit of 1, displaying the areas only with an elevation of 1 meter or less. This did return every area that was below 1 meter, which was unhelpful for displaying storm surge since comes in from the coast and doesn't reach unconnected lakes or low areas. I ran the Region Group tool for both, then Extract by Attributes for each layer to return rasters that represented just the flooded connected area as moving in from the coast. I ran Raster to Polygon and got a feature classes with flood predictions from USGS data and LiDAR data. 

Just looking at the basic polygons, it was clear they covered different amounts of land. 

To look at the number of structures affected by each layer combined the LiDAR and USGS data with a buildings footprint using Spatial Join, this added fields to the building layer based on whether or not that building was within the flood prediction polygon. After using Select By Attributes to tabulate the number of different building types intersected by the LiDAR and USGS-based flood predictions, it became clear that there were large differences between the number of buildings in these prediction maps. Because I already had a layer with buildings and both polygons, I changed the symbology of my map to display which structures were covered by each USGS and LiDAR flood prediction. 

Differences in properties covered by floodmaps based on the USGS and LiDAR datasets. The USGS dataset includes far more structures than the LiDAR dataset. 

We were encouraged to use overlays to calculate the number of omissions and commissions (additions) between the USGS and the LiDAR layer, and calculate a percent error given that the LiDAR was known to be more accurate. I feel confident I would be able to calculate this with overlays, however when I attempted this - even as it was written in the assignment - my ArcPro application ran for several hours each time without a result, and had to be force terminated. In order to get around this limitation, I populated new fields in the combined table using Calculate and If Else statements with buildings that were included by USGS but excluded by LiDAR, and vice versa. I then used Select By Attributes on these new fields to get the number of omissions and commissions, then Calculated the percentage error for each. 

Using the "long way" to calculate the number of omissions and commissions when my ArcPro started stalling on longer Python logic entries.

Overall, the LiDAR map is more conservative than the USGS map, indicating fewer areas at risk of a 1 meter storm surge.   

GIS Portfolio

 As a final assignment at the end of my time with University of West Florida, I have built a GIS portfolio StoryMap. The final product is em...