Я создал очень простую программу на C #, которая сопоставит отпечаток с базой данных, содержащей несколько отпечатков.Я использую SourceAFIS для этого.Вот исходный код этого кода:
using System;
using System.Drawing;
using System.IO;
using SourceAFIS.Simple;
namespace FingerprintRecognizer
{
class Class1
{
static AfisEngine AFIS = new AfisEngine();
static Person DatabasePersons = new Person();
static Person CandidatePerson = new Person();
static Fingerprint DatabaseFingerprints = new Fingerprint();
static Fingerprint CanditateFingerprint = new Fingerprint();
static void Main(string[] args)
{
// Populating database with previously saved fingerprints of many people.
foreach (string DatabaseTIFfiles in Directory.EnumerateFiles(Directory.GetCurrentDirectory() + @"\database\", "*.tif"))
{
DatabaseFingerprints.AsBitmap = new Bitmap(Image.FromFile(DatabaseTIFfiles));
DatabasePersons.Fingerprints.Add(DatabaseFingerprints);
}
// Inserting candidate fingerprint in another database.
CanditateFingerprint.AsBitmap = new Bitmap(Image.FromFile(Directory.GetCurrentDirectory() + @"\testfingerprint.tif"));
CandidatePerson.Fingerprints.Add(CanditateFingerprint);
// Extracting skeletons of database fingerprints and candidate fingerprint.
AFIS.Extract(DatabasePersons);
AFIS.Extract(CandidatePerson);
// Matching
float score = AFIS.Verify(DatabasePersons, CandidatePerson);
bool match = (score > 80);
int points = Convert.ToInt32(score);
if (match)
Console.WriteLine(string.Format("Fingerprint match with {0} points", points.ToString()));
else
Console.WriteLine(string.Format("Fingerprint does not match with {0} points", points.ToString()));
Console.ReadKey();
}
}
}
Я получу два возможных результата: «Соответствие отпечатка пальца с {0} точками» или «Отпечаток пальца не совпадает с {0} точками»
Если возможно, я хочу получить такой результат: «Отпечаток пальца совпадает с« Имя Фамилия ».
Я пытался следовать этому, но я не понимаю, как это сделать. https://en.wikibooks.org/wiki/SourceAFIS/Tutorial