Best way to get template (SentiVeillance)

General information about Neurotechnology and its software

Best way to get template (SentiVeillance)

Postby Strannon » Nov 20, 2018 11:09

Hi guys,

I am experimenting with SentiVeillance SDK trial and have a question:
I realize that there are several possibilities to get face template:
- from NSurveillanceEventDetails.GetSubjectTemplate() - for me always null if try to get from SubjectTrack event, but not null in SubjectDisappeared event;
- from NSurveillanceEventDetails.Attributes.Template (or GetTemplate());
- from NBbiometricEngine.CreateTemplate() and pass image from NSurveillanceEventDetails from any of SubjectTrack or SubjectDisappeared events;

What is the best way to get Template? I"ve got from the manual that better to use GetSubjectTemplate() in SubjectDisappeared - and it works pretty well, but SubjectDisappeared event is too late for my requirements. I tried to use NSurveillanceEventDetails.Attributes.Template on SubjectTrack event and immediately enroll to NSurveillance, but unfortunately for next SubjectTrack handling this newly added template doesn"t match with the same subject.


Could you do some recommendations?

Thanks in advance.
Strannon
 
Posts: 2
Joined: Nov 20, 2018 10:54

Re: Best way to get template (SentiVeillance)

Postby MartynasV » Nov 23, 2018 10:16

Strannon wrote:Hi guys,

I am experimenting with SentiVeillance SDK trial and have a question:
I realize that there are several possibilities to get face template:
- from NSurveillanceEventDetails.GetSubjectTemplate() - for me always null if try to get from SubjectTrack event, but not null in SubjectDisappeared event;
- from NSurveillanceEventDetails.Attributes.Template (or GetTemplate());
- from NBbiometricEngine.CreateTemplate() and pass image from NSurveillanceEventDetails from any of SubjectTrack or SubjectDisappeared events;

What is the best way to get Template? I"ve got from the manual that better to use GetSubjectTemplate() in SubjectDisappeared - and it works pretty well, but SubjectDisappeared event is too late for my requirements. I tried to use NSurveillanceEventDetails.Attributes.Template on SubjectTrack event and immediately enroll to NSurveillance, but unfortunately for next SubjectTrack handling this newly added template doesn"t match with the same subject.


Could you do some recommendations?

Thanks in advance.

Hello,

Recomended way is to use GetSubjectTemplate() from SubjectDissappeared event.
Template from SubjectTrack event is generated from provided frame and using biometric engine should yield same result.
Template from SubjectTrack can not match due to asynchronous nature of surveillance algorythm, meaning number of frames can be processed and matched before enrolled template is available for matching.
Martynas V
Neurotechnology
MartynasV
Neurotechnology
 
Posts: 460
Joined: Feb 27, 2015 11:24
Location: Vilnius, Lithuania

Re: Best way to get template (SentiVeillance)

Postby Strannon » Dec 06, 2018 12:12

Thank you for reply.

I understand that the best quality template I can get from Disappeared event. So all subject always move through next state Appeared=>Tracked=>Disappeared. To understand that subject is matched I need to check BestMatches. What is the best place to do this? Is it make sense to verify BestMatches in Appeared event for example?

And one more question: What is the best way to understand as quickly as possible that subject is new and previously wasn"t enroll with the system? Now I wait for first Tracked event, check BestMatches and if it"s empty I make conclusion that subject is new one and on the Disappeared event add his template to SDK. But sometime occurred situations when for the same subject (that was enrolled previously - some minutes ago) I got several Tracked events with empty BestMatches and only then got event with non-empty BestMatches. So is it correct to treat Tracked events with empty BestMatches like appearing new subject or I need to wait some timeout since first track event?


Thank you in advance.
Strannon
 
Posts: 2
Joined: Nov 20, 2018 10:54

Re: Best way to get template (SentiVeillance)

Postby MartynasV » Dec 07, 2018 09:52

Strannon wrote:Thank you for reply.

I understand that the best quality template I can get from Disappeared event. So all subject always move through next state Appeared=>Tracked=>Disappeared. To understand that subject is matched I need to check BestMatches. What is the best place to do this? Is it make sense to verify BestMatches in Appeared event for example?

And one more question: What is the best way to understand as quickly as possible that subject is new and previously wasn"t enroll with the system? Now I wait for first Tracked event, check BestMatches and if it"s empty I make conclusion that subject is new one and on the Disappeared event add his template to SDK. But sometime occurred situations when for the same subject (that was enrolled previously - some minutes ago) I got several Tracked events with empty BestMatches and only then got event with non-empty BestMatches. So is it correct to treat Tracked events with empty BestMatches like appearing new subject or I need to wait some timeout since first track event?


Thank you in advance.

Hello,

Best results will be on disappeared event.

Deciding when tracked subject is unknown heavily depends on target application. Waiting for several seconds before assuming that subject is unknown will reduce false rejection rate.
Martynas V
Neurotechnology
MartynasV
Neurotechnology
 
Posts: 460
Joined: Feb 27, 2015 11:24
Location: Vilnius, Lithuania


Return to Public

Who is online

Users browsing this forum: Ronaldwon and 4 guests