lrsb / people-counter-fogflow

Prevent overcrowding in exhibitions using FogFlow to distribute people

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

People distribution using FogFlow

Abstract

The organizers of an exhibition with several booths are trying to avoid overcrowding, so visitors could be distributed smoothly and enjoy the exhibition. They mount sensors at each booth so to know the number of people currently at each booth. Each booth has an informative panel which, based on the data from other booths, suggests visitors the closest booth to visit next in a way that the population is smoothly distributed. The overall number of visitors of each booth is reported to the cloud for information aggregation to be queried for the crowded time of the day and other metrics.

How to run

Requirements

  • node
  • angular
  • docker
  • docker-compose
  • curl

If you want to modify the fog function:

  • maven
  • account on docker hub

Run

Update with your ip (if running on your machine only update the ones with *):

  • main/start.sh
  • main/config.json * (update with your internal ip)
  • main/prometheus.yml * (update with your internal ip)
  • dashboard/proxy.js * (update with your internal ip, PROVIDING_APPLICATION only)
  • dashboard/src/app/app.component.ts
  • dashboard/src/app/app.module.ts

Run inside main folder:

./start.sh

You can then find FogFlow here.

You can then find Grafana here (data visualization tool, username & password: admin). How to configure: grafana

Wait 15 secs.

Run inside dashboard folder:

npm run start_dashboard
npm run start_server

You can then find the people counter dashboard here.

Docs

Inside docs folder.

About

Prevent overcrowding in exhibitions using FogFlow to distribute people

License:MIT License


Languages

Language:Go 64.1%Language:Java 16.0%Language:TypeScript 12.3%Language:JavaScript 3.6%Language:HTML 2.7%Language:Shell 0.8%Language:CSS 0.4%Language:Dockerfile 0.2%