Mapping Surveillance in Bangalore using OpenStreetMap

For last couple of months I have been driving quite a bit inside the city1. The biggest thing I noticed was the amount of public CCTV cameras across the city. I find them in every corner. We don't know clearly how many of them are there, what's the spread, who owns them and what's the data policy. Some clearly are owned by government (Traffic Signal Cameras), others probably by a private person. There is no way to identify. Just to get an idea of the whole situation, I started collecting information2 about types of cameras used, how they are placed etc.

Note: Now we have a project page for Surveillance in Bangalore. Bookmark that page for all the updates.

But soon I realised I could tag them on OpenStreetMap, So I started mapping them. Mapping takes more time, but it will give us a great open dataset to work on. I am personally interested only in Bangalore and hence my activity of mapping cameras is limited to Bangalore.

Map of currently mapped cameras of Bangalore
Currently mapped cameras of Bangalore
Public camera in Richard's Town.
Public camera in Richard's Town.

How to add

Use the tag man-made to tag surveillance cameras. Some tag combinations are very important.

  • surveillance=indoor/outdoor/public
    1. indoor - indoor-use (banks, museums, schools etc). I don't map them.
    2. outdoor - outdoor camera's at petrol bunks, offices, malls etc Mostly owned by private entity.
    3. public - public cameras roads, circles, parks etc. Mostly owned by some kind of government entity
  • surveillance:type=camera
  • surveillance:zone=town/parking/traffic/shop/bank/building
  • camera:type=fixed/panning/dome

Its not compulsory to fill all the details. But the data becomes really useful if you do. Sometime I add the POI first and then add the additional data on a computer later. I generally use OSMAnd+ to add the cameras on the go. Below I have screenshots from the app for your reference.

Before you start

  1. Create an account on OpenStreetMap
  2. Install OSMAnd or EveryDoor from playstore

Using OSMAnd

  1. Enable OSM Editing Plugin in OSMAnd - Plugins
  2. Login to OSM from OSMAnd settings

Using Every Door

How to add Surveillance Cameras to OSM using Every Door App. You can download the video here.

How to get this data

I use Overpass Turbo to get the data out of OpenStreetMap. Overpass turbo is a web based data tool for querying and extracting data from OpenStreetMap. Overpass also has an API if you want to run the query in batch mode and get the data. Just make sure you don't burden the server. It's a community resource.

Below I have the query to extract the surveillance data in Bangalore geo area. It's very easy. I use the same query in API mode to extract the data and load into my local database for further analysis.


Thejesh GN
Query to get all the surveillance in Bengaluru area.

// gather results
  // query part for: “"man made"”
// print results
out body;
out skel qt;

Screenshot of Getting the data from Overpass Turbo - Map view
Getting the data from Overpass Turbo - Map view
Screenshot of Getting the data from Overpass Turbo - Data view
Getting the data from Overpass Turbo - Data view

Surveillance under Surveillance

Surveillance under Surveillance is a web visualization project which gets the camera data from OpenStreetMap and display them. I used it to everyday to see the progress. The main picture of mapped cameras above is a screenshot from from this project.

Surveillance under Surveillance shows you cameras and guards — watching you — almost everywhere. You can see where they are located and, if the information is available, what type they are, the area they observe, or other interesting facts.

Screenshot of Surveillance under Surveillance
Screenshot of Surveillance under Surveillance

What next?

I have planned to some RTIs to get some numbers from Government (Police, BBMP) to get a rough estimate of how many public cameras they have installed in the city. I will continue to map the cameras. My goal is to reach 500 mapped cameras by the year end. Given the amount of public cameras it doesn't seem that difficult. Once we reach that state, we will figure out the next steps.

Surveillance Camera
Surveillance Camera
  1. About 20KMs a day, last time I did that was in 2011/12, 54KMs a day.
  2. Will do some RTIs later this year.

10 Responses

  1. Prakash Hebballi says:

    Anti-soscial people might just use this data if this info is available readily. Killers of Gouri Lankesh & MM Kalburgi did a detailed study about CCTV installations in the area before killing them. Please think about this & I feel it is more dangerous than helpful.

    • Thejesh GN says:

      Anti-socials will use everything that sane people use in a wrong way. From helmets, books to maps. We can’t stop using helmets or ban books because killers are using it. We need to think about net positive maps have on the society.

  2. Vikas says:

    It is like physically visiting the each and every spot and geotagging it?

  3. Camake says:

    Do you not use the camera:direction tag?

  4. Peter says:

    Hi Thejesh, this is great work! I have also mapped many cameras in my home town. Even though it’s MUCH smaller than Bangalore, I still found and mapped over 300 cameras here.

    I’ve made a “theme” on MapContrib that has made adding cameras to the map using your mobile phone (or any web-device) much easier. You can try it out on, feel free to provide feedback.

  1. March 2, 2020

    […] GN wrote an introduction to mapping surveillance cameras in OSM, and how to map them with […]

  2. March 13, 2020

    […] Mar/2020 13 […]

  3. April 1, 2020

    […] GN wrote instruction on mapping surveillance cameras in OSM, namely how to do it using the OSMAnd mobile […]