How to send License plate recognication results to Milestone VMS and then display it at Xprotect?

We are developing the ANPR cameras plugin, which want to display the LPR results at Xproect, our cameras coneneted with Xprotect by ONVIF, I wonder that how we can send this information to Xprotect and finally display this at Xprotect Client?

Thans so much

Analytics Events should be used for this.

Hi Bo,

Thanks. how we send analytics events to Milestone? By MIP? Really apprecaite your kind help.

Currnetly, we only have ONVIF connection with Milestone,

Maybe this document will be a good help.. http://download.milestonesys.com/MIPSDK/Samples/TriggerAlarmFromExternal-ConceptSolution.pdf

I have a doubt. If you are developing an Onvif device that will be usable from the Milestone recording server via the Onvif drivers you might be able to develop that Onvif device with a metadata channel (side by side with the video channel). Unfortunately there is no help on how to develop parts like this in the MIP SDK.

Is this what you are developing?

(If not send XML to event server and trigger analytics events that way.)

Hi Bo,

Thanks for your kind help, apprecaite.

We are on the way to become your Elite partner, and we are trying to developing a plugin that can realize transfering LPR results and display this.

First, we need to know how to trafer this(from camera to Xprotect), MIP can not be realize this?

But ONVIF metadata can also not realize this from discussing with your ONVIF RD.

Please use the TriggerAnalyticsEventXML sample from the MIP SDK and the document I suggested. If you find something wrong or something does not fit what you want to achieve please ask explaining the scenario.

Thanks Bo, we will analyze this and feedback to you soon.

Hi Bo,

Today, I organize our RD to have a conference to discuss how we can proceed the developemnt.

Currently, our cameras already can work with Milestone by ONVIF and already can send analytic events to Milestone by ONVIF(not metadata).

To be honest, our RD guys still have some questions:

  1. The LPR results is transfered to Milestone by XML file that you sent( TriggerAnalyticsEventXML )? Last time, Steffen(your colleague ) said we can use ONVIF metadata to send LPR results. It is a little confused;
  2. What is the work flow of the whole process? We send the LPR results by ONVIF metadata to Milestone server, then the server and client communicate by MIP SDK?

If you can help to draw a work flow or describe the work flow, that will be perfect.

I am really apologised for my questions, it is our first time to develop the plugin by MIP SDK, thanks so much.

Hi Bo,

Sorry for my distubring you, really waiting for your reply.

Apprecaite.

There is no single right answer.

Let me outline three possible ways to integrate LPR detection

Submit data to XProtect as Metadata. Being a camera partner with an Onvif device the sending of data this way is handy.

When it comes to presentation in the Smart Client there is not much help out of the box, the only metadata the Smart Client understands without integration work is bounding boxes.

A plugin to present the data will need to be developed. I can imagine a view item to present the data alongside the image from the camera at the time of detection.

If you want to have alarms raised based on detections you will have to develop an Event Server plugin that can turn the metadata into an event to be usable for setting up alarms.

Submit data to XProtect as Analytics Events.

When it comes to presentation the Smart Client is able in the Alarm List view item and Alarm Preview view item and Alarm Manager workspace to present data from the Analytics Event or Alarm based on the Analytics Event.

This might be all you require but if you develop a plugin you would be able to extend the presentation, e.g. to add a specific view item or workspace.

The TriggerAlarmFromExternal-ConceptSolution.pdf should be a good guide when choosing this option.

Submit data to XProtect as Analytics Events and utilize XProtect LPR.

XProtect LPR has a number of plugins developed to extend the basic presentation of Analytics Events. If you send your Analytics Event with the type “LPR Event”, and buy a license for XProtect LPR you will be able to utilize the Smart Client Plugins for

https://www.milestonesys.com/solutions/hardware-and-add-ons/milestone-addons/lpr/

(Note the additional license cost.)

Dear Bo,

Thanks for your kind help.

It is first to develop the plugin, sorry for so many questions.

From your previous answers, we think the method 1 and method 2 will be a better.

Before we discuss this, I think the main flow is:

Dahua camera-------->Milestone Server------->Milestone Client

Method 1:

The main work flow is the following I think?

Dahua camera—(ONVIF Metadata)------>Milestone Server—(Milestone SDK)---->Milestone Client

(1)ABout the ONVIF metadata, we understand very clearly.

(2) After Milestone Server got the bouding box information, we need to use MIP to transfer this information from Milestone server to Client?

For this step, can you help to give some guidance? in which chapter in MIP SDK?

Method 2:

The main work flow is the following I think?

Dahua camera—( Analytics Events )------>Milestone Server—(Milestone SDK)---->Milestone Client

Dahua camera and Milestone server communication is by “TriggerAlarmFromExternal-ConceptSolution”? can you help to clarify?

If the work flow is not correct, can you help to draw a right one? This is really very important, our RD guys are ready to develop this, but need to get the right way.

Appreciate.

Your plugin need to read the metadata. To see how to do this please explore the Metadata Live Viewer (live scenario) and Metadata Playback Viewer (playback scenario).

Flow: Dahua camera sends Metadata to Milestone Recording Server, a Smart Client MIP Plugin can read the data from the server.

When the events are in the VMS, they can trigger alarms if you set up an Alarm Definition. When using the Alarm Manager you can see the data. “TriggerAlarmFromExternal-ConceptSolution” should show this.

If you would like to add overlay please explore the Smart Client overlay on event sample or Smart Client overlay Graph on event sample (both live scenario)

Flow: Dahua camera sends data (Analytics Events) to Milestone Server. Configuration can be made that turn events to alarm. A Smart Client MIP plugin can read Analytics Events and Alarms.

Dear Bo,

Thanks for your information.

Method 1 is clearly now.

About the method 2: How Dahua camera send "Analytics events " to Milestone server? By what protocol?

Appreciate.

The sample is -

Analytics Event Trigger via XML

http://doc.developer.milestonesys.com/html/index.html?base=samples/analyticseventxml.html&tree=tree_3.html

About the protocol the sample say -Sending XML with HTTP header using System.Net.Sockets.Socket

Dear Bo,

This XML need to implement at Camera side or we need to put this XML at Milestone software inside the PC?

Thanks

If you do the detection within the camera the camera should send the XML. I hope it is feasible for you to develop this within the camera.

The mechanism to receive the XML is in the Event Server, no further development is needed to have the mechanism that can receive the XML.

Thanks, I will let our RD analyze this.

Thanks again.