Code Monkey home page Code Monkey logo

aerial-segmentation's Introduction

Rooftop Detection Algorithm

MIT

Overview

This is the python code for detecting rooftops from Aerial RGBD (and IR if available) data using simple image processing techniques. It uses moderate computational resources and has low interface time for segmenting rooftops. Works best on elevation data generated from photogrammetry with around 5cm ground resolution. The two inputs are the RGB (ortho-photo) and the Digital Elevation Model (DEM) geotifs. IR band data may be additionally provided for using NDVI in removing tree canopies more accurately. The shape files for the roofs and clutter in roof are generated as output which can be opened in any GIS software like QGIS.

Reference

Kritik Soman. 2019. Rooftop Detection using Aerial Drone Imagery. In Proceedings of the ACM India Joint International Conference on Data Science and Management of Data (CoDS-COMAD '19). ACM, New York, NY, USA, 281-284. https://dlnext.acm.org/doi/abs/10.1145/3297001.3297041

Dependencies

cv2 
gdal
scipy
skimage
matplotlib
numpy
multiprocessing
osgeo

How to run on Colab?

[1] Download the repository zip and upload on Colab.
[2] Unzip using the command! unzip Rooftop-Segmentation.zip
[3] Open demo.ipynb, change directory using % cd Rooftop-Segmentation and run cells.

Result Screenshots

[1] Rooftop segmentation

Our Dataset ISPRS Potsdam Dataset
image1 image2

[2] Clutter and Rooftop segmentation

DEM consisting of rooftops Ortho-photo of rooftops The detected rooftops along with clutter
image1 image2 image3

[3] DEM Segmentation
image4

[4] Rooftop segmentation when roof is covered with grass

Ortho-photo Segmented rooftops
image1 image2

Poster

Project Poster

Note

This code was tested with following version of packages:

cv2 3.3.0
gdal 2.1.3                    
scipy 0.19.1  
skimage 0.13.0  
matplotlib 2.1.1   
numpy 1.13.3 

aerial-segmentation's People

Contributors

kritiksoman avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.