Compares one Person against a set of other Persons and returns best matches.

Namespace:  SourceAFIS.Simple
Assembly:  SourceAFIS (in SourceAFIS.dll)

Syntax

Visual Basic (Declaration)
Public Function Identify ( _
	probe As Person, _
	candidates As IEnumerable(Of Person) _
) As IEnumerable(Of Person)
C#
public IEnumerable<Person> Identify(
	Person probe,
	IEnumerable<Person> candidates
)
Visual C++
public:
IEnumerable<Person^>^ Identify(
	Person^ probe, 
	IEnumerable<Person^>^ candidates
)
JavaScript
function identify(probe, candidates);

Parameters

probe
Type: SourceAFIS.Simple..::..Person
Person to look up in the collection.
candidates
Type: System.Collections.Generic..::..IEnumerable<(Of <(Person>)>)
Collection of persons that will be searched.

Return Value

All matching Person objects in the collection or an empty collection if there is no match. Results are sorted by score in descending order. If you need only one best match, call FirstOrDefault<(Of <<'(TSource>)>>)(IEnumerable<(Of <<'(TSource>)>>)) method on the returned collection.

Remarks

Compares probe Person to all candidate Persons and returns the most similar candidates. Calling Identify(Person, IEnumerable<(Of <<'(Person>)>>)) is conceptually identical to calling Verify(Person, Person) in a loop except that Identify(Person, IEnumerable<(Of <<'(Person>)>>)) is significantly faster than loop of Verify(Person, Person) calls. If there is no candidate with score at or above Threshold, Identify(Person, IEnumerable<(Of <<'(Person>)>>)) returns empty collection.

Most applications need only the best match, which can be obtained by calling FirstOrDefault<(Of <<'(TSource>)>>)(IEnumerable<(Of <<'(TSource>)>>)) method on the returned collection. Matching score for every returned Person can be obtained by calling Verify(Person, Person) on probe Person and the matching Person.

Persons passed to this method must have valid Template for every Fingerprint, i.e. they must have passed through Extract(Person) method.

See Also