This might be a fairly simple question, but I'm new to eCog. For canopy that overlaps rooftops, I need to define these areas as separate objects and classify as canopy.

I am using NAIP 4-band imagery and a lidar-derived height band. I developed a ruleset for classifying an invasive species. First, I created a Vegetation class based on NDVI automatic threshold, then from that class, created a  Canopy subclass based on the lidar height band (height > 2 m). However, there are some buildings with high NDVI values that are misclassified as Canopy. The yellow outline in the image below is a Structures vector layer, some parts of which are misclassified as Canopy.

From the Structures vector file, I originally created a Structures class using vector-based segmentation (class filter: Canopy) and assign class by thematic layer. This was fine where no canopy overlapped the roof: 


...but had the effect of clipping off the overlying canopy and classifying that as Structure:

Overlapping tree canopy is discussed by Jarlath O'Neil-Dunne in the eCognition Webinar "Data Fusion Approaches to Tree Canopy Change Detection" (at 24:50).


He says he "used the buildings on the sublevel" to find the overlapping tree canopy. Then the relative border to algorithm was used to reclassify those overlapping objects. This is what I need to accomplish, but I'm having trouble navigating the levels. Because I segmented my Canopy class to create the Structures class, these objects don't overlap. How do I define those overlapping instances as Canopy using the Structures class on a sublevel?


Recent Discussions

Need more help?

Enter Knowledge Base Contact Support