rcdilorenzo / abfs

Automatic Building Footprint Segmentation: U-Net Production-Level API
https://rcd.ai/abfs-project
MIT License
9 stars 2 forks source link

Does this work for individual buildings where they cluster near each other? #1

Open rfairhurst opened 5 years ago

rfairhurst commented 5 years ago

First of all I want to say this project does appear to cover a workflow that goes from start to finish using only open source code, which I appreciate. The sample output example you showed from the photo that had not been used for training or testing seems to do a very good job of segmenting out clusters of buildings vs non-buildings, but it does not seem to have done very well at segmenting individual buildings within those clusters, since the buildings near each other seem to merge together. Did you find any settings that improved the level of segmentation between the individual buildings in your output images or ways of extracting discrete individual building polygons from output images that resembled your sample output?

rcdilorenzo commented 5 years ago

What you are referring to is instance segmentation. It requires a different training approach that penalizes and rewards properly chosen instances. Here's a sample blog post that walks through a particular model and discusses the difference between semantic and instance segmentation: https://towardsdatascience.com/review-deepmask-instance-segmentation-30327a072339

rfairhurst commented 5 years ago

I hope to replicate the process Microsoft used to create their building footprints (https://github.com/Microsoft/USBuildingFootprints), which perfectly meet my needs. According to Microsoft they were able to extract individual buildings from images using Semantic Segmentation; however, apparently the critical adjustment they applied that made this possible was the inclusion of RefineNet upsampling layers as described in https://arxiv.org/abs/1611.06612. The RefineNet paper included a link to this github page where they published their code: https://github.com/guosheng/refinenet. The Microsoft footprints are about 5 years out of date now and they have not indicated that they will release any updates in the future. They also never published any code that I have found, so I want to find/create code that approximates their approach and output so that I can apply it to more recent aerial photos.