Surveillance under Surveillance
Find a file
ViMaSter 91384ff495
Some checks failed
Build Hello World Image / build (push) Failing after 1m9s
Build Hello World Image / build (pull_request) Failing after 10s
fix: CI uses Containerfile and directly tags package
2025-10-11 23:51:54 +02:00
.forgejo/workflows fix: CI uses Containerfile and directly tags package 2025-10-11 23:51:54 +02:00
data_init containerized the app 2025-10-06 21:13:58 +02:00
home/sunders refactor: Replaces PASSWD with PASSWORD 2025-10-11 21:48:07 +02:00
utils refactor: Replaces PASSWD with PASSWORD 2025-10-11 21:48:07 +02:00
www/sunders refactor: Replaces PASSWD with PASSWORD 2025-10-11 21:48:07 +02:00
.gitignore containerized the app 2025-10-06 21:13:58 +02:00
Containerfile containerized the app 2025-10-06 21:13:58 +02:00
Containerfile.data_init refactor: Replaces PASSWD with PASSWORD 2025-10-11 21:48:07 +02:00
Containerfile.utils containerized the app 2025-10-06 21:13:58 +02:00
docker-compose.yml feat: Adds compose file 2025-10-11 21:48:38 +02:00
LICENSE Initial commit 2024-09-12 20:03:57 +02:00
LICENSEINFO.md update readme and license 2024-09-12 19:06:11 +00:00
README.md docs: Replaces on-premise instructions with container instructions 2025-10-11 21:46:54 +02:00

Surveillance under Surveillance

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.

Different icons and colors give you a quick overview about the indexed surveillance entries. Click on those icons on the map to get the available information.

Icon Description
Cameras Camera — no further information
Fixed cameras Fixed camera — usually observing a limited area
Panning cameras Panning camera — usually able to observe various areas
Dome cameras Dome camera — usually observing a 360° area
Guards Guard — e.g. an employee of a security service
Automatic Licence Plate Recognition ALPR — Automatic Licence Plate Recognition
Color Description
Public surveillance Red background — observing a public outdoor area, accessable by everyone
Outdoor surveillance Blue background — observing a private outdoor area, accessable only by authorized persons
Indoor surveillance Green background — observing an indoor area
Cameras, fixme
Dome cameras, fixme
Guards, fixme
Automatic Licence Plate Recognition, fixme
Yellow icon — camera or guard marked with a fixme key because it needs further attention

A running instance of this project can be visited at https://sunders.uber.space/.

Prerequisites

Installation

To run Surveillance using docker, decide between development/testing or production deployments:

Development/testing

  1. Clone this repository

  2. Run docker compose up and wait for services to start up

  3. Visit http://localhost:8080/ in a browser; you should see an interactive OpenStreetMap

tbd.: Populate camera data

Production

  1. Close this repository

  2. Hardern security by opening docker-compose.yml and modifying MYSQL_PASSWORD and MYSQL_ROOT_PASSWORD

  3. Run docker compose up and wait for services to start up

  4. Visit http://localhost:8080/ in a browser to open the web interface

tbd.: Populate camera data

Surveillance nodes

Surveillance under Surveillance uses data from Openstreetmap contributors that is not visualized on the regular Openstreetmap site. If you like to add new cameras or guards or if you like to revise existing entries use your existing OSM account or create a new one.

These are the most common key/value combinations to describe a surveillance node at Openstreetmap:

Mandatory to display an icon on the map

Icon Key Value
man_made surveillance
Public surveillance surveillance public
Outdoor surveillance surveillance outdoor
Indoor surveillance surveillance indoor
Camera surveillance:type camera
Fixed camera surveillance:type
camera:type
camera
fixed
Panning camera surveillance:type
camera:type
camera
panning
Dome camera surveillance:type
camera:type
camera
dome
Guard surveillance:type guard
Automatic Licence Plate Recognition surveillance:type ALPR

Mandatory to draw camera's field of view

Key Value
surveillance:type camera
camera:type fixed
camera:direction 0 - 360 (in degrees) or
N / NE / E / SE / S / SW / W / NW
camera:angle 15 - 90 (in degrees)
from an almost horizontal view to a ground-pointed camera
default: 15°
height 3 - 12 (in meters)
default: 5m
Example 1 Example 2 Example 3
Field of view (direction: 90°, angle: 15°, height: 5m) Field of view (direction: 90°, angle: 15°, height: 10m) Field of view (direction: 90°, angle: 60°, height: 10m)
direction = 90°
angle = 15°
height = 5m
direction = 90°
angle = 15°
height = 10m
direction = 90°
angle = 60°
height = 10m

Optional

Key Value
surveillance:zone bank / building / parking / shop / town / traffic
camera:mount ceilling / pole / wall
operator organization or person operating the camera
name name of the camera
ref reference number of the camera
image link to an externally hosted image that depicts the surveillance object

Credits

  • Surveillance under Surveillance is based on the phantastic osmcamera [CC-BY-SA / MIT / GPLv3 / WTFPL] project of khris78.
  • Furthermore it uses the v1.3.1 code of Leaflet/Leaflet [BSD-2-Clause].
  • The map itself is the work of millions of OpenStreetMap [ODbL / CC BY-SA] contributors.
  • The results of the web services OpenStreetMap Nominatim [ODbL] and GeoNames [CC BY 3.0] are used for location searching and for surveillance node statistics.
  • Most of the icons are from Font Awesome [SIL OFL 1.1 / MIT / CC BY 3.0].
  • The font Grabstein Grotesk [OLF] is used for the titles.