How to Count Houses on Map

How to Count Houses on Map. Counting houses using digital maps allows us to easily make estimations for business case analysis, other humanitarian and social uses cases that require its application. We need to know how to quickly count houses or buildings on a map.

The ability to counts buildings across Africa or other natural disaster zones is useful to be able to assess the number of buildings or households affected. To be able to estimate the humanitarian services requirements and level of demand for social amenities.

Free Digital Maps to Count Houses 

Techniques and Technologies

  • Open Building ( you can Explore, FAQ, Data format, Download)
  • OpenStreetMap(OSM) data from Python and Overpass Turbo API
    • Using Overpass Turbo ( Challenges In Africa – This map intentionally left blank, (received empty dataset))
    • Using Python library called overpy that allows executing Overpass queries from Python
  • Satellite imagery (high resolution households) and use a Computer Vision(CV) algorithm to count the houses.

Counting Houses or Building on Satellite Imagery

Use-case: Counting Buildings in an Area Using Overpass Turbo

  • Overpass Turbo API uses OSM stored data for analysis
  • The OSM stored data is encoded as elements on their maps and expressed using a collection of points, each one with a single latitude and longitude;
    • Nodes are individual points generally used to mark places such as individual shops.
    • Ways are sets of points that describe shapes of buildings, roads etc. it is generally an in depth distinguishing description of node points.
  • To start the analysis process with, we only need two details: location and radius.
    • Location is expressed in geographic coordinates, namely latitude and longitude
    • In case you start with an address or a name of a place, you’ll need to perform a process called geocoding first, i.e. changing it to geographic coordinates.
  • We will generally be interested in nodes (especially with tags) rather than ways because nodes are usually enough when it comes to counting buildings.
  • Counting by category: you can also count by categories using Map Features which are identified as;
    • Categories (keys) and sub-categories (values) and using them we can filter the nodes based on which buildings we’re interested in 
    • Examples; building = retail’, ‘building = supermarket’ , ‘healthcare = pharmacy’, “amenity”=”restaurant”

Noteworthy for Africa on How to Count Houses on Map:

  • Limitation for Africa : Insufficient or no well defined data about their cities, nodes and ways points.
  • Counting of houses in most African regions is almost impossible because building or house node data has not been geocoded on Open Street Map (OSM).

Overpass API vs Google Maps Places API (Nearby Search Request)

  • Google API it’s paid (Overpass API is completely free)
  • it only supports very few categories of places, significantly less than Overpass (it can be partially solved by using correct keywords), 
  • it only returns up to 60 results (spread across several pages), which frequently is way too few to count all relevant places.

How to Count Houses on Map: Example Using Overpass Turbo Web App (View Link)

How to Count Houses on Map
How to Count Houses on Map

Example of Overpass Turbo Query Code

/*
This has been generated by the overpass-turbo wizard.
The original search was:
“building=house”
*/
[out:json][timeout:25];
// gather results
(
  // query part for: “building=house”
  node["building"]({{bbox}});
  way["building"]({{bbox}});
  relation["building"="house"]({{bbox}});
);
// print results
out body;
>;
out skel qt;

Google Earth Engine 

  • Earth Engine GCP
    • A planetary-scale platform for Earth science data & analysis. Geospatial data processing and analysis platform. Powered by Google’s cloud infrastructure.
    • Google Earth Engine combines a multi-petabyte catalog of satellite imagery and geospatial datasets with planetary-scale analysis capabilities. 
    • Scientists, researchers, and developers use Earth Engine to detect changes, map trends, and quantify differences on the Earth’s surface. 
    • It involves satellite imagery, your algorithms and real world applications or use cases
    • Earth Engine is now available for commercial use, and remains free for academic and research use. 
    • Meet Earth Engine (Watch Now) 

Insights for a more sustainable world, powered by Earth Engine.

Understand and tackle critical sustainability and climate issues such as deforestation, water management and sustainable land use.

Our Interest in Google Earth EngineDo some house counts to get to understand social amenities resource demands, get to familiarize with the possibilities of how to use it for knowledge discovery and content related to earth science, as well as data analytics projects for good in my community. Also teach others about its usefulness to research.

Notes On Solutions and Limitations

  • The OpenStreetMap solution did not work because we have mostly unstructured data representations of Africa on the map. (Tool Guide)
  • Estimating Number of Houses – A better metric is the number of households that can afford your service/product at a price point and statistical distribution. You could ballpark your number by taking population density and dividing it by average household size to get an estimate of households per area and then divide by area of interest.( Source )
  • Download high resolution households satellite imagery and use a Computer Vision(CV) algorithm to count the houses.

Related Resources