Solution overview
AXIS People Counter
AXIS People Counter is an analytic application that you can install on a network camera. You can use the application to count how many people pass through an entrance, in what direction they pass, and if more than one person passes during a predefined interval. You can also use it to estimate how many people are currently occupying an area, and the average visiting time.
The application runs embedded in the camera which means you don’t need a dedicated computer to run the application. AXIS People Counter is suitable for any indoor environment, like stores, libraries, or gyms.
How does estimating occupancy work?
You can use the application to estimate occupancy in areas with one or several entrances and exits. Each entrance and exit needs to be equipped with a network camera with AXIS People Counter installed. If there are several cameras, they communicate with each other over the network in a primary and secondary concept. The primary camera continuously fetches data from the secondary cameras and presents the data in the live view. Every fifteen minutes, the primary camera sends the statistical data to AXIS Store Data Manager. Consequently, the reports generated from AXIS Store Data Manager can present the data in a minimum of 15 minutes time interval.
What’s the difference between AXIS People Counter and AXIS P8815-2 3D People Counter?
The applications have two different algorithms for counting people which makes them suitable for different environments:
AXIS People Counter recognizes objects that move in the field of view and identifies them as people based on their overall size and movement. AXIS People Counter is suitable for most scenarios, covering single as well as double door entrances.
AXIS P8815-2 3D People Counter calculates the depth within the counting area in order to measure the height and the size of the object. AXIS P8815-2 3D People Counter is suitable for crowded scenarios and scenes with challenging light conditions like strong sunlight, glares and shadows.
Get started
Mount the camera
The application is designed for scenarios where it counts objects with the characteristics of an adult person. The exact height limitation of the object depends on camera model, camera lens, and the selected counter sensitivity.
In addition to the instructions in the camera’s Installation Guide, there are some important steps to follow for the application to behave in the expected way:
We recommend that you install the camera at a minimum height of 270 cm (8.9 ft).
As a rule-of-thumb, the camera covers an area as wide as the camera’s mounting height. For details about a specific camera model, see the Camera selector for AXIS People Counter
After installation, the covered area can be increased depending on the camera’s zoom setting.
If the camera is mounted high enough, you can get a coverage width of 8 meters. You can cover even wider entrances by using multiple counters.
The camera must be mounted straight above the point where people pass.
Make sure the camera is facing straight down, in line with the ceiling.
If you install the application before you install the camera, you can use the counting area indicated in the live view to position the camera. The counting area should go from left to right, perpendicular to the path where people cross.
Make sure there is sufficient white light or IR illumination on site.
Make sure that there are no continuously moving objects in the counting area. For example, do not install the camera above an escalator.
Make sure there are no moving objects interfering in the counting area. For example, do not install the camera too close to a door.
Avoid getting very strong light, like sunlight, and sharp shadows in the camera view.
Loitering people or large objects that sway slightly could interfere with the counting.
Find the device on the network
For more information about how to find and assign IP addresses, go to How to assign an IP address and access your device.
Access the device
Open a browser and enter the IP address or host name of the Axis device.
If you do not know the IP address, use AXIS IP Utility or AXIS Device Manager to find the device on the network.
Enter the username and password. If you access the device for the first time, you must set the root password. See Set a new password for the root account.
The live view page opens in your browser.
Secure passwords
Axis devices send the initially set password in clear text over the network. To protect your device after the first login, set up a secure and encrypted HTTPS connection and then change the password.
The device password is the primary protection for your data and services. Axis devices do not impose a password policy as they may be used in various types of installations.
To protect your data we strongly recommend that you:
Use a password with at least 8 characters, preferably created by a password generator.
Don’t expose the password.
Change the password at a recurring interval, at least once a year.
Set a new password for the root account
The default administrator username is root. If the password for root is lost, reset the device to factory default settings. See
Type a password. Follow the instructions about secure passwords. See Secure passwords.
Retype the password to confirm the spelling.
Click Create login. The password has now been configured.
Install the application on the camera
- The license is only valid for one camera. You can’t activate the license on another camera without a new registration key.
- To install applications on the camera you need administrator rights.
Install the camera on your network..
Go to the camera’s web interface in your browser, see the user manual for the camera.
Go to Apps.
Upload the application file (.eap) to the camera.
Activate the license. If you’re online, enter the license code. The application automatically activates the license.
How to activate the license when you’re offline
- To activate the license when you’re offline, you need a license key. If you don’t have a license key on the computer, do the following:
Go to License key registration. You need the license code and the Axis device serial number.
Save the license key file on the computer and select the file when the application asks for it.
Access the application settings
In the camera’s web interface, go to Apps, start the application and click Open.
Hardening recommendations
We recommend you to follow the hardening instructions available in the AXIS OS Hardening Guide. Prioritize to:
Configure the application
Set the date and time
The date and time settings are important for your camera to keep the correct time for a longer period of time, and for the statistics to be attributed to the correct time. You set the date and time in the camera’s web interface.
In the camera’s web interface, go to System > Date and time.
For more information about date and time settings, click .
Create a user account
You can create user accounts with different privileges, so that unauthorized staff can view statistics but not change any settings of the counter.
You create user accounts in the camera’s web interface.
In the camera’s web interface, go to System > Users.
For more information about user accounts, click .
Set up the counter
To check if the application is calibrated for your camera, go to the Camera selector for AXIS People Counter tool.
In the application’s web interface, go to Settings > General.
Make sure Counter status is enabled.
In Counter name, type the name of the camera or location.
This can be for example “Axis_main_entrance”. All cameras need to have unique names.
Set Calibration mode:
If the application is calibrated for your camera, select Height setting. Type the mounting height in Visual height.
If the application is not calibrated, select Manual setting and click Setup. Place a person underneath the camera and adjust the size of the yellow box so that it covers just one person.
If you need to zoom in, do one of the following:
Turn on Digital zoom and click Setup.
If the camera has optical zoom, you need to go to the camera’s web interface to adjust the zoom.
Set Direction in to Up or Down depending on the direction of the people passing by in live view.
To adjust the counting area, go to Adjust the counting area.
Adjust the counting area
The camera model and the mounting height both limit how much you can adjust the counting area.
In the live view image, the counting area is indicated by two blue lines and a red area. A person needs to pass through the red area to be counted.
Use the curvature settings to change the shape so that it is natural for people to pass through the counting area. Keep the curvature as close to a straight angle as possible.
Go to Settings > Counting zone.
To move the entire counting area up or down, use the Line offset slider. How much you can move it depends on the counting area size.
To adjust the height of the counting area, use the Counting zone height slider.
To adjust the width of the counting area, use the Counting zone width slider. How much you can adjust it depends on the camera’s mounting height.
To use a curved counting area, select Curved line and then adjust the radius with the Radius slider.
To change the direction of the curvature, click the Radius icon.
Click Submit to save the settings when you are done.
You might need to fine-tune the counter for the best possible performance, see Validate the system.
Neighbor counters for wide entrances
You can only use this feature with cameras of the same model.
If you need to cover a wide entrance with several counters you can set up multiple cameras, also called Neighbor counters. To calculate how many cameras are needed to cover the entire width of the entrance, use the Camera selector for AXIS People Counter.
Note that this setup with primary and secondary cameras is not the same as the primary and secondary roles set under Settings > Occupancy data. Multiple cameras are used to cover wide entrances or exits. The primary and secondary roles, however, are necessary for the occupancy algorithm to work.
The primary camera overrides the following settings on the secondary cameras:
Visual height
Counter sensitivity
Digital zoom
Network & time
Line offset
Counting zone height
Counting schedule
Configure neighbor counters
Mount the cameras side by side following the measurements indicated by the camera selector tool.
Go to the primary camera application web interface and select Settings > Advanced > Neighbor counters.
Select Enable as primary.
If you have a secondary camera that you want to connect to:
Go to the secondary camera.
Go to Advanced > Neighbor counters.
Select Display connection key
Click Copy connection key.
Return to the primary camera.
Paste the text under Connection key.
- Note
If you don’t have a secondary camera, you can leave the Connection key field empty.
- Note
If the cameras are configured to send data to AXIS Store Data Manager, make sure that only the primary camera is connected. The primary camera automatically uploads the data from all the secondary cameras as one single unit.
Click Submit.
When you have connected all cameras, go to Calibrate secondary position.
Place an object, for example a sheet of paper, at the exact mid-point between the two cameras. It’s very important that you place the object exactly in the middle of the two cameras since the object is used as a reference point to calibrate the cameras.
Drag the view of the secondary camera over the primary camera view. Try to avoid vertical offset.
- Primary camera view
- Secondary camera view
- Reference object
Once the calibration is done, go to Live view in the primary camera to view all of the secondary cameras.
If you can’t see the video stream from the secondary cameras in the primary camera, make sure that there are no other connections to the secondary cameras running.
Set up a schedule
The application automatically disables the counting functionality when it gets dark. If you want to limit the counting further, you can set up a schedule.
Go to Settings > Counting schedule.
To adjust start and stop times, move any of the sliders. To set individual schedules for each day of the week, select Per day schedule and then move the corresponding sliders.
Turn off the application on a specific day of the week
Clear the checkbox next to the slider.
Anonymize people
You can configure the application so that people can no longer be identified from the camera.
Anonymize soft
This feature blocks all video streams and images from the camera. The live view still shows a blurred image which means you can still see what is going on but you can't identify people.
Go to Settings > Advanced > Anonymize.
Click Anonymize soft.
To go back to normal mode, click Reset anonymization. Only users with an administrator account can do this.
Copy the application settings to another camera
Use the copy functionality if you want to copy the application settings to, for example, other cameras in the same store with the same mounting height. Camera-specific settings, such as the application license and camera name, are not included.
To copy the application settings, go to Maintenance > Parameter backups.
Click Copy. The computer saves the file in your browser’s default folder for downloads.
Occupancy estimation
The occupancy estimation functionality estimates how many people are inside the premises at the same time. It works when there is just one entrance as well as when there are several entrances. For areas with more than one entrance, you need to install cameras with AXIS People Counter installed at each one. You connect the cameras to each other, and assign the primary occupancy role to one of them and the secondary occupancy role to the other ones. The primary occupancy camera continuously receives data from the secondary occupancy cameras and presents the data in the Statistics tab.
The primary and secondary occupancy roles are not the same as the primary and secondary roles that are used to connect cameras to increase the counting area width to cover wide entrances. Read more in Neighbor counters for wide entrances.
To configure primary and secondary roles for occupancy data, the cameras in your installation must run the same version of AXIS People Counter.
- One of your cameras has to be the primary. The primary camera represents the whole area and makes the estimations of the occupancy and average visit time for the whole area.
Go to Settings > Occupancy data and select Enable.
Name your primary and secondary cameras.
Select the Primary role.
Enter an Occupancy name. This is the name that shows up in AXIS Store Data Manager.
If you have a secondary camera that you want to connect to:
Go to the secondary camera.
Select Display connection key
Click Copy connection key.
Return to the primary camera.
Paste the text under Connection key.
- Note
If you don’t have a secondary camera, you can leave the Connection key field empty.
Click Submit.
Select Full-day analysis, see Full-day analysis.
Select Occupancy mode, see Change to naive occupancy mode.
Reverse in/out direction
To calculate the occupancy levels of the two adjacent rooms connected by the same secondary camera, you must select Reverse In/Out direction in one of the primary cameras. This overrides the Direction in setting made in the secondary camera, but only for this occupancy area. In other words, this ensures that people walking out from the first room, are considered walking in to the second room and vice versa.
Full-day analysis
The full-day analysis is selected by default.
Full-day analysis means that the occupancy that has been calculated during the day is slightly modified after closing. This is because when the data for a complete day is gathered, more details about that day is available and the application can give a more precise estimation of the occupancy during that day. The occupancy application automatically detects when the occupancy area is open or closed by observing the flow of visitors.
Consequently, full-day analysis also means that the primary camera only sends statistical data once a day to AXIS Store Data Manager.
Smart and naive occupancy mode
You can run the occupancy estimation in either smart or naive mode. The functionality is developed for smart occupancy mode, but at locations where traffic and average visiting time are not steady, naive occupancy can still provide additional value.
Smart occupancy mode
The smart occupancy means that the application analyses frequency of passages and in turn calculates an average visiting time, which is then used to filter away counting errors that accumulate throughout the day. The output is an estimated occupancy and average visiting time at any given time as well as a corrected full day analysis at the end of the day.
Naive occupancy mode
If you select the naive occupancy mode, the application estimates the occupancy by counting “people coming in” minus “people coming out”. This estimation is not as sophisticated as the smart occupancy mode, and the occupancy error accumulates over time. The error will be larger if there is a high flow of people and if the counter is poorly configured.
The table shows recommended occupancy mode for different scenarios, based on traffic flow and average visiting time.
Location | Smart occupancy mode | Naive occupancy mode | Comments |
Larger grocery store (supermarket) | x | High flow of people, similar average visit time. | |
Library | x | Low flow of people, varying average visit time. | |
Pharmacy | x | Medium flow of people, varying average visit time. | |
Cinema | x | Varying average visit time and long visit time, in most cases more than 90 minutes. | |
Fast food restaurant | x | High flow of people, similar average visit time. | |
News agent/kiosk | x | High flow of people, similar average visit time. | |
Coffee shop | x | Low flow of people, varying average visit time. | |
Gym | x | Medium flow of people, long average visit time but in most cases less than 90 minutes. | |
Shopping mall | x | High flow of people, varying average visit time, in most cases more than 90 minutes. For the individual shops in the mall the average visit time is likely to be significantly shorter and the application can be applied in smart occupancy mode. | |
Destination store (specialty retail) | x | High flow of people, similar average visit time. |
If you select naive occupancy mode, we recommend that you schedule a reset of the counter. See Change to naive occupancy mode.
Change to naive occupancy mode
Go to Settings > Occupancy data.
Set Occupancy mode to Naive.
Select when to reset the counter by moving the Reset occupancy slider.
If you don’t want to reset the counter automatically, move the slider to the right until it says Never reset occupancy. You can reset the counter at any time in the live view.
Set up rules for events
To learn more, check out our guide Get started with rules for events.
Send an email when the occupancy level exceeds the limit
This example explains how to set up a rule to send an email when the number of people inside the premises exceeds a limit. In the example, the limit is 200.
- Set the maximum occupancy limit
In the application, go to Settings > Occupancy data.
Select Enable stateful events.
Enter
200
in Higher threshold.Click Submit.
- Create a rule
In the camera’s web interface, go to Events and add a rule.
Type a name for the rule.
In the list of conditions, under Application, select Occupancy-High.
In the list of actions, under Notifications, select Send notification to email and then select a recipient from the list.
To create a new recipient, go to Recipients.
Type a subject and a message for the email.
Click Save.
Trigger an event for tailgating
This example explains how to trigger an event if more than one person pass the counter in the same direction within four seconds.
Go to Settings > Tailgating detection.
Drag the slider to adjust the shortest time allowed between counts:
In: 4
Out: 4
In or out: 4
If needed, select Ignore counts made same second.
In the camera’s web interface, go to Events.
Create a rule, and use the condition Application.
Trigger an event when someone passes in the wrong direction
This example explains how to trigger an event if someone passes the counter in the wrong direction.
Go to Settings > Direction detection.
In the camera’s web interface, go to Events.
Create a rule, and use the condition Application.
Validate the system
Before you validate the system, make sure you have mounted the camera according to the recommendations. See Mount the camera.
When you have installed and set up all cameras in the building, we recommend that you validate the accuracy and fine-tune the system. This is likely to increase the accuracy or identify any problems with the counters.
To get an overview, go to Statistics and look at the counting data for a couple of days back. If the difference between number of persons going in and out is <5% it’s a good first indication that the system is configured correctly.
If the difference is greater than that, follow the instructions inValidate the counter.
Validate the counter
Go to Live view.
Click Test accuracy.
To hide the automatic counter, click Hide.
Click Start and manually count 100 or more passages by pressing the up and down arrows on your keyboard. You can also click In and Out.
If you need to start over, click Reset.
Click Result when you are done.
Check the accuracy table. Under normal circumstances, the total accuracy percentage should be 95 % or higher.
If you’re not satisfied with the accuracy of the counter, see Fine-tune the counter.
Fine-tune the counter
Make sure the camera is mounted according to the instructions in Mount the camera.
Go to Settings > General.
Go to the Counter sensitivity slider, or click Setup if the counter is running in manual mode, and do one of the following:
If the counter is counting too many compared to the control figure, decrease the counter sensitivity with about 20 units or increase the size of the yellow box slightly.
If the counter is counting too few compared to the control figure, increase the counter sensitivity with about 20 units or decrease the size of the yellow box slightly.
Validate the accuracy again, see Validate the counter.
Statistics
There are several ways to use the statistics from the counter:
In the application’s web interface, view real-time counting data in the built-in graphs.
View built-in graphs in day and week view from the statistics page. The data is updated in real time.
Data is available on the camera for up to 90 days and updated every 15 minutes. The data is stored in 15-minute bins representing the in and out counts for the 15-minute periods.
Download data through an open API. See VAPIX® Library.
Use AXIS Store Data Manager, a software package that acts as a central point to store and manage data collected from all devices. See Connect a camera to a folder in AXIS Store Data Manager.
Use AXIS Store Reporter, a statistical web-based solution, for managing and monitoring historical data.
Download statistics to your computer, see Download statistics.
Connect a camera to a folder in AXIS Store Data Manager
To perform this task, the application must be installed on the camera.
In AXIS Store Data Manager, go to Sources and get the Folder connection identifier and the Folder connection password for the folder you want to connect to.
In the camera’s web interface, go to Settings > Apps and open the application’s web interface.
In the application’s web interface, go to Settings > Reporting.
To enable pushing data to a server, select Enabled.
Enter the web address for AXIS Store Data Manager, for example
https://[subdomain].asdm.axis.com/datamanager
where[subdomain]
is replaced by a unique name.Enter the Folder connection identifier and Folder connection password.
To test the connection, click Run test.
Click Submit.
Download statistics
Go to Statistics > Download statistics.
Select the file format:
If you select .xml, .csv or .json format you can also select the time interval.
File format .cnt is a proprietary, binary format, available for compatibility reasons.
Select date in the calendar. The data is presented in a new tab in your browser.
If you want to save the data as a local file on the computer, right-click and select Save as. The browser saves the file in the default download folder.
- If you want to download all available data, click Download all next to the file format.
Report data to a remote destination
- To make the device push data to a remote destination every 15 minutes:
Go to Settings and check that the device has a name.
The name helps you identify which device the report comes from.
Go to Settings > Reporting > Push reporting and select Enable.
In the URL field, enter the address of the server, for example
https://example.com/server
.Optionally, enter a token to let the device authenticate itself to the server in the API key field.
Click Run test.
If the connection is successful, it’s indicated by a green check mark.
Click Submit.
Troubleshooting
Issue | Action |
The software doesn’t upload to AXIS Store Data Manager. | The most common reason is network communication problems. Run the connection test under Settings > Reporting to get information about the root cause for the problem. |
The software doesn’t count. | Make sure the instructions for how to mount the camera has been followed, see Mount the camera. |
The software doesn’t count correctly. | Make sure people pass the entire counting zone, crossing both blue lines. They should not turn left or right before they have passed both lines. |
There’s no video stream in live view. | Make sure no one else is watching the video or that you have a video stream to a VMS or other ongoing recording. Check if the camera has a limited number of viewers or video streams allowed at the same time. |
The software prompts me with a warning saying that the frame rate is too low. | 1. Make sure the scene has sufficient lighting. If the scene is too dark, the camera does not deliver enough frames per second for the application to work. 2. If the processor in the camera has a high workload, the application might suffer. When streaming video from the camera make sure to open only one stream at a time. |
The software doesn’t count after changing parameters. | After changing the parameters the software may need to run up to 10 minutes before the counting accuracy is optimal. |
I still can’t get the software to count. | If you have followed the advice above and still can’t get the software to work, contact your Axis reseller. |
Restart the application
If the counting is inaccurate or the web interface unusually slow, you can try restarting the running services or restart the device.
To restart the device, go to Maintenance > Restart.
Reset the application
Go to Maintenance > Reset and do one of the following:
To clear all counting data from the camera, click Clear data.
To restore all settings of the application to default, click Restore settings.
Back up the settings
To back up the application settings, go to Maintenance > Parameter backups.
Click Backup. The computer saves the file in your browser’s default folder for downloads.
Restore the settings
Go to Maintenance > Parameter backups.
Browse to select the previously saved backup file and then click Restore.
Generate a log report
If you have any trouble with your device you can generate a log report.
Go to Maintenance > Logs.
Click Generate logs.
The browser saves the file on the default download browser on the computer.
Attach the log report when submitting an issue to support.
Manage your license
Go to Maintenance > Registration.
To register a license, click on the Registration page.
If you want to remove you license from this product, click Clear registration.
If you have an updated license, click Renew license.
The light web interface
There is a light-weight version of the web interface at the URL http://<servername>/people-counter/lite/index.html. These pages can for instance be used to embed the application into systems, for example AXIS Camera Station or Milestone's XProtect Smart Client.
There are four pages available:
http://<servername>/local/tvpc/lite/day.html: The page shows the day plot, the same plot that can be seen on the Statistics page.
http://<servername>/local/tvpc/lite/week.html: The page shows the week plot, the same plot that can be seen on the Statistics page.
http://<servername>/local/tvpc/lite/count.html: A page that shows the live count for the current day.
http://<servername>/local/tvpc/lite/liveview.html: A slim version of the live view page that shows live count and the video stream with the counting area as overlay.
The menu at the bottom of the pages can be disabled by appending ?clean to the URL:s above, e.g. http://<servername>/local/tvpc/lite/liveview.html?clean. You can also add a lang tag before lite to display these pages in other languages, example http://<servername>/local/tvpc/cn/lite/liveview.html
API information
You can find the API documentation for AXIS People Counter in VAPIX® Library, under Applications > People counting apps API