Milestone XProtect integration

Milestone XProtect is the industry-leading open platform VMS for IP camera-based security and CCTV. The integration between SmartFace Platform and Milestone XProtect VMS enhances the Milestone VMS with face recognition capabilities. The main advantage of this integration is that information processed by SmartFace Platform is displayed and stored by Milestone XProtect VMS together with processed video streams.

Key features overview

  • Milestone XProtect Smart Client receives notifications about detected or identified persons

  • Detected or identified persons are displayed with:

    • Cropped image

    • Time of detection

    • Estimated age

    • Estimated gender

    • Camera name

    • Watchlist name (in the case of identification)

    • Matched score (in the case of identification)

  • Milestone XProtect Smart Client displays recorded videos from the time when a person was detected and identified.

Architecture overview

Integration between SmartFace facial recognition software and Milestone XProtect video management system (VMS) is done through the SmartFace - Milestone Agent.

SmartFace - Milestone Agent processes notifications from SmartFace and transforms them into data structures, called Analytics Events, which are used by Milestone XProtect. SmartFace is processing the same video streams (RTSP) from cameras as Milestone XProtect. Therefore, it is required to map cameras configured on both sides (see the chapter Configuration of the Milestone integration.

Analytics Events with information from SmartFace are then displayed in SmartFace Alarm plugin installed on XProtect server.

Integration between SmartFace and Milestone XProtect

Milestone Agent

Milestone Agent is .NET console application that is registered as a Windows service. This service listens to ZeroMQ notifications from SmartFace and transforms them into Analytics Events that are sent to Milestone XProtect server. The following notifications are transformed into Analytics Events:

Transformation of SmartFace notifications into Milestone XProtect Analytics Events

It is required that the Agent connects to both SmartFace and Milestone XProtect server. Configuration of connectivity to both servers is read from a JSON file which is generated by Agent Configurator. For more information about this component, see the section Agent configurator below. The Agent automatically reloads its configuration when the JSON file is created or edited.

The configuration file is located at: C:\ProgramData\Innovatrics\SmartFaceMilestoneAgent\SmartFace_Milestone_Config.json

Logs for this service are located at: C:\ProgramData\Innovatrics\SmartFaceMilestoneAgent\smartface_milestone_service.log

Agent Configurator

Agent Configurator is a Windows desktop application which enables you to easily set up all required configuration properties for the integration between SmartFace and Milestone XProtect and ensures that properties inserted are valid. With this application you configure a connection to SmartFace, Milestone XProtect and the mapping of cameras between these two servers. Created or modified configuration is automatically read by SmartFace - Milestone Agent.

Logs for this desktop application are located at: C:\ProgramData\Innovatrics\SmartFaceMilestoneAgent\smartface_milestone_configurator.log

SmartFace Alarm plugin

When notifications are sent from SmartFace, you can see them in Milestone XProtect Smart Client as Analytics Events. These events include information extracted in SmartFace. SmartFace Alarm Plugin renders and displays this information in XProtect Smart Client Alarm Manager. Alarm Manager is a module that is included in XProtect Smart Client automatically from version Express and higher.