Context-aware Real-time Population Estimation for Metropolis

Achieving real-time and spatially fine-grained population estimation in a metropolitan city is extremely valuable for a variety of applications. Based on mobile accessing logs, we exploit context-aware city segmentation and dynamic population estimation model to solve this problem. Extensive evaluations and analysis reveal that our system reduces the population estimation error by 22.5% and show several important observations of urban mobility as well as one application enabled by our system.

Dynamic Population in Downtown


Our system conclude three parts. First, segmenting the city based on urban functional regions. Second, combining a long-tailed power-law model and an regression model to accurately estimate the population. Third, some interesting observations and applications.


Our system segments the city based on urban functions regions, which are basic units with one specific function, such as residential area and business district. The division is done by leveraging the roads structure and marking the urban function of each segmented area with points of interest. Instead of using fixed grids that will lose physical context, we choose a segmentation that is able to provide the sweet point of the physical context and spatial granularity tradeoff.

STEP2:Population Estimation

In order to estimate real-time population, we first utilize the obtained mobile data accessing recorded users and ground truth for training a static model to estimate the night time population, and then we enable dynamic population estimation by leveraging a mechanism that is able to model mobile users' heterogeneous behavior in spatial and temporal domain.

STEP3:Observation and Applications

The dynamic population distribution is sufficient to support the observation of morning-evening rush, monitoring population migration, and recommending locations of new subway stations. In the future, based on our results, we will discuss the probility of detecting crowd, building people migration model and so on.

Open Data

If you are interested in our results, you can download data like city functional regions and predicted population distribution here. The data, includes 396 dowtown regions' boundary/ function/ predict population, is stored as MAT file like cell and matrix. The description for function label id is in the README file. Our geographic coordinates are based on Baidu Map.

Region boundary | Function label | Population

It's our honor to open these data and code. Please cite our paper if you use our data or code.

Source Code

We open our STEP1 code here. The code conclude two parts: [1] Get assigned city Road network image from Baidu Map. [2] Based on the morphology operation, segment the city into regions by the road network. You can also contact with us by Email to get more code and data.

Segmentation Code

To run the code, you need to install Phantomjs and put phantomjs to the workspace.


[1]Xu, Fengli, et al. "Context-aware Real-time Population Estimation for Metropolis." Proceedings of the 2016 ACM International Joint Conference on Pervasive and Ubiquitous Computing. ACM, 2016.

[2]Wang, Huandong, et al. "Understanding Mobile Traffic Patterns of Large Scale Cellular Towers in Urban Environment." Proceedings of the 2015 ACM Conference on Internet Measurement Conference. ACM, 2015.

Ubicomp16 BibTex | IMC15 BibTex

Contact Person

Assistant Professor, Dept. of Electronic Engineering, Tsinghua University

Rohm Building 10-202, Tsinghua University, Beijing, 100084, China.