Installation

One core feature of the solution is its ease of use. No computer vision knowledge is required whatsoever. Just follow the steps below and the system should be up and running.

Hardware

Each Kinect camera must be installed above a door with no overlapping view shared with any other Kinect
camera. The Kinect must point down or be slightly angled towards the room. For optimal results the Kinect
should be placed no less than 40 cm above the door to be able to detect even the tallest persons. Each Kinect
must be connected to a power source, and via USB to a device running the system software.

Software

The whole program can be downloaded from our GitHub page.

Download

There are two versions of the software, one with a calibration and con guration GUI and one lightweight version
without GUI. In order for the lightweight version to work two configuration files need to be located next to the
executable. The fi les are:

  • mainConfig.yml
  • masks.yml

When running the GUI version there is exists an additional configuration file used by the GUI:

  • guiConfig.yml

Default versions of these files are located in the conf folder. When the GUI version is run these files are generated
and stored next to the executable. If desired these can be copied to the conf folder and act as defaults in the
future.
Linux, OS X or Windows is required on the machine running the software. At least one Kinect camera must be
connected before starting the program. Some software libraries are required to compile the program, these are
listed in table 1.1 below.

Libraries

The following libraries are needed for the system run properly.

OpenCV2 Needed for general image processing Download
libFreenect Needed for communication with Kinect on Linux and OS X systems Download
OpenNI2 Needed for communication with Kinect on Windows systems Download
libCurl Needed to send HTTP requests to the report API Download
QT5 Needed for the GUI code, not used in headless variant Download

Calibration

Since the Kinect sensor can be located on arbitrary height the first step is to calibrate for the current installation height.

  • Start the program and press Run
  • Open the calibration window located under System->Calibrate
  • Place a person as tall as the shortest person you intend to count under the camera
  • Adjust the slider until only the shoulders and the head is left in image
  • Press Apply

Calibration

 

Configuration

A configuration is performed to provide the system with information about which door to focus on and what areas not to care about.

  • Start the program and press Run
  • Open the configuration window located under System->Configure
Doors
  • Uncheck the Circle check box
  • Press New Polygon
  • Click in the image to add control points to the polygon
  • The polygon should cover the door as in the figure below
  • Press Add as door

Conf2

Checkpoint Circles
  • Check the Circle check box
  • Draw the circle by clicking and dragging in the image
  • The circles should cover the door as in the figure below

Conf3

Exclusions
  • Uncheck the Circle check box
  • Press New Polygon
  • Click in the image to add control points to the polygon
  • The polygon should cover things you don’t want the system to care about as in the figure below. This could be static objects, area above the door, walls etc.
  • Press Add as exclusion
  • Repeat this process for all objects you want to exclude

Conf4