This box searches only this space. The box at the upper right searches the entire iPlant wiki.

Skip to end of metadata
Go to start of metadata

Variable Area Local Maxima

I generated stem maps for each LiDAR tile from the Boulder Creek Snow-off dataset using my local maxima stem isolation algorithm (Swetnam and Falk 2014). Data are available from

The algorithm has been updated to include an inverse watershed segmentation (right panel) which reports the minor and major axis of canopy diameter and the total canopy area. The equivalent diameter of the canopy (min+max/2) is shown in the left panel (yellow circles). Some watersheds are empty if there was no tree identified within it (this can be caused by deformed canopy shapes that result in the watershed segmentation splitting the canopy up in to multiple areas. Conversely, some watersheds may have more than one tree identified within them, e.g. a very large tree and a smaller seedling tree off the edge of its canopy. 

The code for the VLM:

After I generated the stem maps for each tile I merged the tiles, reordered the tree list by UTM easting, and assigned new identifier numbers:

After I created the tiled data, I clipped the stems to each of the three catchments based on the GIS shape file polygon.

Estimating Individual tree aboveground biomass and carbon

To calculate the biomass of each individual tree I searched the literature for allometric models based on tree height and canopy diameter. There is not much research to date on tree height-to-biomass calculation alone, so I am using my published diameter at breast height (DBH) prediction model from Swetnam and Falk (2014):

DBH (cm) = Beta * HT (m) * √CanopyDiameter (m); RMSE = 7.66 cm, r2 = 0.811

I can estimate the above ground biomass/Carbon (AGB/AGC) using published wood specific gravity (SG, 1Chojnacky et al. 2014) and C content (C%, 2Lamlom and Savidge 2003). Biomass equations are from Chojnacky et al. (2014) where the form of the equation is: ln(AGB) = β0 + β1ln(DBH).

SpeciesSpecific Gravity (SG)1Carbon Density (%)2β0 β1R2-statistic1
Abies concolor0.37 -3.17742.64260.75
Abies lasiocarpa0.31 -2.31232.34820.75
Abies spp. 48.55 - 50.08   
Picea engelmannii0.33 -3.03002.55670.81
Picea spp.0.3749.95 - 50.39   
Pinus ponderosa0.3852.47 ± 0.38-2.61772.4638


Pinus flexilis0.36    
Pinus contorta0.3850.32 ± 0.43-2.61772.46380.83
Populus tremuloides0.3547.09 ± 0.75   
Pseudotsuga menziesii 0.4550.50 ± 0.36-2.46232.48520.86
Quercus gambellii0.61    

Lodgepole pine (Pinus contorta) allometry is reported by Litton et al. (2004) as:  (height = 2.89 * DBH^0.59, r2 = 0.82, P= 0.01, n = 200). The inverse model for height based DBH is: 0.1655 * Ht ^ 1.695. The derived model for AGB based on height assuming the pipe-model, and a wood specific gravity SG = 0.38 for lodgepole pine from Chojnacky et al. (2014): AGB (kg) = 0.0008175 * Ht (m) ^ 4.39 

As an example of the estimated above ground carbon (AGC) derived from the Chojnacky et al. (2014) Pinus spp. DBH based AGB model for P. ponderosa and P. contorta (same model) versus the pipe model which uses height and DBH (as radius), I graph the Betasso catchment trees below, note that both the X and Y axis use the same estimated DBH values. 

I used the LANDFIRE Existing Vegetation Type (EVT) to characterize individual tree forest types. By catchment the dominant EVTs are:


  • Southern Rocky Mountain Ponderosa Pine Woodland (98.166%)
  • Developed or Ruderal Shrubland (0.765%)
  • All Other Classes (1.1%)

Gordon Gulch

  • Southern Rocky Mountain Ponderosa Pine Woodland (41.923%)
  • Rocky Mountain Lodgepole Pine Forest (41.669%)
  • Inter-Mountain Basins Aspen-Mixed Conifer Forest and Woodland (4.338%)
  • Southern Rocky Mountain Dry-Mesic Montane Mixed Conifer Forest and Woodland (4.064)
  • Rocky Mountain Montane Riparian Forest and Woodland (2.933%)
  • Southern Rocky Mountain Mesic Montane Mixed Conifer Forest and Woodland (2.660%)
  • Rocky Mountain Aspen Forest and Woodland (2.042%)
  • All Other Classes (0.371%)

Como Creek

  • Rocky Mountain Subalpine Dry-Mesic Spruce-Fir Forest and Woodland (57.384%)
  • Rocky Mountain Lodgepole Pine Forest (17.384%)
  • Rocky Mountain Subalpine Mesic-Wet Spruce-Fir Forest and Woodland (16.965%)
  • Inter-Mountain Basins Aspen-Mixed Conifer Forest and Woodland (2.429%)
  • Snow-Ice (4.084%)
  • All Other Classes (1.754%)

Table: The EVT's by Catchment and above ground biomass/carbon models available for each.

LANDFIRE EVT CodeVegetation Class Descriptions


(n, 30 m2)


(% of Area)

Gordon Gulch

(n, 30 m2)

Gordon Gulch

(% of Area)

Como Creek

(n, 30 m2)

Como Creek

(% of Area)

Height-to-Biomass Allometry Model ParametersRMSE (kg)R2Reference
3011Rocky Mountain Aspen Forest and Woodland10 0.05836462.04213490.425AGB (kg) = 0.006 * ht (m) ^ 3.947643.50.492Swetnam 2013
3049Rocky Mountain Foothill Limber Pine-Juniper Woodland  180.010      
3050Rocky Mountain Lodgepole Pine Forest  7436541.6695515417.384   Lefsky et al. 1999
3051Southern Rocky Mountain Dry-Mesic Montane Mixed Conifer Forest and Woodland  72534.064  AGB (kg) = 0.027 * ht (m) ^ 3.605668.20.717Swetnam 2013
3052Southern Rocky Mountain Mesic Montane Mixed Conifer Forest and Woodland  47482.660  AGB (kg) = 0.039 * ht (m) ^ 3.455779.80.755Swetnam 2013
3054Southern Rocky Mountain Ponderosa Pine Woodland1696898.1667481941.923  AGB (kg) = 0.010 * ht (m) ^ 3.935526.70.760Swetnam 2013
3055 Rocky Mountain Subalpine Dry-Mesic Spruce-Fir Forest and Woodland  790.044218182757.384    
3056Rocky Mountain Subalpine Mesic-Wet Spruce-Fir Forest and Woodland    5382516.965    
3057Rocky Mountain Subalpine-Montane Limber-Bristlecone Pine Woodland   1080.0611710.054    
3061Inter-Mountain Basins Aspen-Mixed Conifer Forest and Woodland10 0.05877424.33877062.429AGB (kg) = 0.027 * ht (m) ^ 3.605668.20.717Swetnam 2013
3070Rocky Mountain Alpine Dwarf-Shrubland     830.026    
3080Inter-Mountain Basins Big Sagebrush Shrubland  1230.069      
3086Rocky Mountain Lower Montane-Foothill Shrubland  2200.123400.013    
3092Southern California Coastal Scrub    400.013    
3144Rocky Mountain Alpine Turf    9160.289N/A   
3145Rocky Mountain Subalpine-Montane Mesic Meadow    270.009N/A   
3159Rocky Mountain Montane Riparian Forest and Woodland  52352.933      
3182Introduced Upland Vegetation-Perennial Grassland and Forbland  610.034  N/A   
3219Inter-Mountain Basins Sparsely Vegetated Systems II    1080.034    
3220Artemisia tridentata ssp. vaseyana Shrubland Alliance180.104  190.006    
3222Rocky Mountain Alpine/Montane Sparsely Vegetated Systems II     240.008    
3252 Rocky Mountain Subalpine/Upper Montane Riparian Shrubland   510.02930250.953    
3292Open Water      --   
3293Snow-Ice    129574.084--   
3297Developed-Medium Intensity1320.764    --   
3900Western Cool Temperate Urban Deciduous Forest 130.075        
3923Western Cool Temperate Developed Ruderal Shrubland 340.197        
3924Western Cool Temperate Developed Ruderal Grassland    20.0006N/A   


Table: Muldavin et al. (2006) Vegetation Map Types

VALUECOUNTCLASS_NAMEHectares (ha)SGCLa JaraLa JaraJaramilloJaramilloHistory GroveHistory Grove  
0 NaN 0.330.5        
14353949Spruce-Fir Forest and Woodland (Dry Mesic)10633.970.330.5        
22732982Spruce-Fir Forest and Woodland (Moist Mesic)6674.9710.330.5        
32320514Forest Meadow5667.5770.330.5        
422084678Mixed Conifer Forest and Woodland (Dry Mesic)53939.10.380.5        
514126495Mixed Conifer Forest and Woodland (Moist Mesic)34502.140.380.5        
7783518Blue Spruce Fringe Forest1913.6480.330.5        
103241666Aspen Forest and Woodland (Dry Mesic)7917.360.350.47        
111921226Aspen Forest and Woodland (Moist Mesic)4692.3570.350.47        
139348740Ponderosa Pine Forest22833.130.380.52        
141459721Gambel Oak-Mixed Montane Shrubland3565.1920.610.5        
164990766Upper Montane Grassland12189.320.330.5        
1712778582Lower Montane Grassland31209.980.330.5        
195900099Wet Meadow14410.270.330.5        
2114647Montane Riparian Shrubland35.780660.330.5        
24161175Sparsely Vegetated Rock Outcrop393.66140.330.5        
25925811Felsenmeer Rock Field2261.1750.330.5        
261554344Roads-Disturbed Ground3796.2830.330.5        
2756340Open Water137.61220.330.5        
2816769Post-Fire Bare Ground40.945130.330.5        


Matlab Script for EVT classification of Jemez_stems_evt.csv imported into Matlab

Next I estimate the DBH of each tree based on the tree height multiplied by the square root of its estimated canopy diameter (as measured by the VLM's inverse watershed segmentation). If the tree had an estimated canopy diameter that was >150% of its predicted canopy diameter the predicted canopy diameter is used instead. This is because the watershed segmentation does not always represent a canopy properly, in particular for smaller trees next to very large trees. The normalization constant is estimated from data to be ~0.82 for all trees (data are from a mix of Pseudotsuga, Picea, and Pinus trees measured in Arizona and New Mexico, Swetnam and Falk 2014). 

For an EVT specific classification I tried:

At this point I'm ready to export the files back into a CSV or XLSX format

I suggest using the dlmwrite command in Matlab to write the export_utm.m outputs of the file to a *.CSV

Note: dlmwrite does not allow you to copy the text header directly.

Alternately, use the xlswrite command in Matlab to write to an XLSX file with header:

Note: You can only do this for ~1 million rows in an XLSX file.

Calculating the total biomass on a per area basis, derived from the individual trees:

After calculating the individual tree biomass I was also interested in calculating the total biomass on a per pixel basis. I kept this analysis at a larger pixel scale, e.g. 10m and 30m, because individual trees tend to take up a significant amount of space with their crowns and their root balls.

In QGIS I used the Vector > Research Tools > Vector Grid option to generate a polygon grid that aligns with the raster topographic surface models:

After I generated the gridded polygon I used the Vector > Analysis Tools > Points in Polygon module to sample the sum of the above ground carbon (calculated from the equations above) for each given EVT/species.

The final step is to set the viewing to a graduated color ramp:

Load the Catchment polygons (Upper Jaramillo, History Grove, La Jara, and ZOB) into QGIS and use the Select by Location feature.

Create new shape files for each set of stems.




Bright, B. C., Hicke, J. A., & Hudak, A. T. (2012). Estimating aboveground carbon stocks of a forest affected by mountain pine beetle in Idaho using lidar and multispectral imagery. Remote Sensing of Environment124, 270-281. 

Erdody, T. L., & Moskal, L. M. (2010). Fusion of LiDAR and imagery for estimating forest canopy fuels. Remote Sensing of Environment114(4), 725-737. 

Falkowski, M. J., Smith, A. M., Gessler, P. E., Hudak, A. T., Vierling, L. A., & Evans, J. S. (2008). The influence of conifer forest canopy cover on the accuracy of two individual tree measurement algorithms using lidar data.Canadian Journal of Remote Sensing34(sup2), S338-S350.

Hudak, A. T., Lefsky, M. A., Cohen, W. B., & Berterretche, M. (2002). Integration of lidar and Landsat ETM+ data for estimating and mapping forest canopy height. Remote sensing of Environment82(2), 397-416. 

Hudak, A. T., Crookston, N. L., Evans, J. S., Hall, D. E., & Falkowski, M. J. (2008). Nearest neighbor imputation of species-level, plot-scale forest structure attributes from LiDAR data. Remote Sensing of Environment112(5), 2232-2245.

 Kashian, D. M., Turner, M. G., & Romme, W. H. (2005). Variability in leaf area and stemwood increment along a 300-year lodgepole pine chronosequence.Ecosystems8(1), 48-61. 

Lefsky, M. A., Cohen, W. B., Hudak, A., Acker, S. A., & Ohmann, J. (1999). Integration of lidar, Landsat ETM+ and forest inventory data for regional forest mapping. International Archives of Photogrammetry and Remote Sensing32, 119-126. 

Litton, C. M., Ryan, M. G., Tinker, D. B., & Knight, D. H. (2003). Belowground and aboveground biomass in young postfire lodgepole pine forests of contrasting tree density. Canadian Journal of Forest Research33(2), 351-363.

Litton, C. M., Ryan, M. G., & Knight, D. H. (2004). Effects of tree density and stand age on carbon allocation patterns in postfire lodgepole pine. Ecological Applications14(2), 460-475. 

Swetnam, T. L. (2013). Cordilleran forest scaling dynamics and disturbance regimes quantified by aerial LiDAR. THE UNIVERSITY OF ARIZONA. 

Swetnam, T. L., & Falk, D. A. (2014). Application of Metabolic Scaling Theory to reduce error in local maxima tree segmentation from aerial LiDAR. Forest Ecology and Management323, 158-167.

Turner, M. G., Tinker, D. B., Romme, W. H., Kashian, D. M., & Litton, C. M. (2004). Landscape patterns of sapling density, leaf area, and aboveground net primary production in postfire lodgepole pine forests, Yellowstone National Park (USA). Ecosystems7(7), 751-775.


  • No labels