FANDOM


Diese Seite beschreibt das einbinden der SDK von Sourceafis sehr genau.Sollte es dennoch Probleme geben , einfach einen dementsprechenden Kommentar schreiben.

  • Microsoft_Visual_C#_2010_Express starten.
  • Neues Projekt... anklicken.
  • Windows Form-Anwendung markieren, Name eingeben, und auf OK klicken.
  • (Es kann einen kurzen Moment dauern)
  • Auf Projekt-> Verweis hinzufügen und im Dialog auf durchsuchen gehen.
  • In das Verzeichniss wechseln, indem Sourceafis installiert ist, und Sourceafis.dll öffnen.
  • Gehen sie über F7 in den Code und fügen sie unter den using zeilen diese Zeile ein: using Sourceafis.Simple;
  • Nun haben sie das Einbinden Geschafft.


Nun wollen wir ein Beispielprogramm erstellen.

  • Wechseln sie wieder in den Designer-Modus
  • Erstellen sie:
    • Einen Button mit dem Namen: match und dem Text Analysieren
    • Zwei Buttons mit den Namen:loadImage1/loadImage2 und jeweils dem Text Bild laden
    • Zwei PictureBoxen mit den Namen show 1/show2

Das ganze Sollte dann so aussehen:SDK


Dann gehen wir über F7 in den Code und fügen nach der Funktion public Form1() den Folgenden Text ein:

Bitmap Fingerabdruck1; Bitmap Fingerabdruck2; private static Bitmap ResizePictureByWidth(Image sourceImage, double newWidth) { double sizeFactor = newWidth / sourceImage.Width; double newHeigth = sizeFactor * sourceImage.Height; Bitmap newImage = new Bitmap((int)newWidth, (int)newHeigth); using (Graphics g = Graphics.FromImage(newImage)) { g.InterpolationMode = System.Drawing.Drawing2D.InterpolationMode.HighQualityBicubic; g.DrawImage(sourceImage, new Rectangle(0, 0, (int)newWidth, (int)newHeigth)); } return newImage; } private static Bitmap ResizePictureByHeight(Image sourceImage, double newHeight) { double sizeFactor = newHeight / sourceImage.Height; double newWidth = sizeFactor * sourceImage.Width; Bitmap newImage = new Bitmap((int)newWidth, (int)newHeight); using (Graphics g = Graphics.FromImage(newImage)) { g.InterpolationMode = System.Drawing.Drawing2D.InterpolationMode.HighQualityBicubic; g.DrawImage(sourceImage, new Rectangle(0, 0, (int)newWidth, (int)newHeight)); } return newImage; } private void loadImage1_Click(object sender, EventArgs e) { OpenFileDialog loadpic = new OpenFileDialog(); if (loadpic.ShowDialog() == DialogResult.OK) { try{ Fingerabdruck1 = new Bitmap(loadpic.FileName); if (Fingerabdruck1.Height - show1.Height > Fingerabdruck1.Width - show1.Width) { show1.Image = ResizePictureByHeight(Fingerabdruck1, show1.Height); } else { show1.Image = ResizePictureByWidth(Fingerabdruck1, show1.Width); } }catch{ } } } private void match_Click(object sender, EventArgs e) { AfisEngine Afis = new AfisEngine(); Fingerprint F1 = new Fingerprint(); Fingerprint F2 = new Fingerprint(); F1.AsBitmap = Fingerabdruck1; F2.AsBitmap = Fingerabdruck2; Person P1 = new Person(); Person P2 = new Person(); P1.Fingerprints.Add(F1); P2.Fingerprints.Add(F2); Afis.Extract(P1); Afis.Extract(P2); try{ float score = Afis.Verify(P1,P2); if (score > 0) { MessageBox.Show("Match" + Environment.NewLine + score.ToString() + " Punkte"); } else { MessageBox.Show("No Match"); } }catch{ MessageBox.Show("Error"); } } private void loadImage2_Click(object sender, EventArgs e) { OpenFileDialog loadpic = new OpenFileDialog(); if (loadpic.ShowDialog() == DialogResult.OK) { try { Fingerabdruck2 = new Bitmap(loadpic.FileName); if (Fingerabdruck2.Height - show2.Height > Fingerabdruck2.Width - show2.Width) { show2.Image = ResizePictureByHeight(Fingerabdruck2, show2.Height); } else { show2.Image = ResizePictureByWidth(Fingerabdruck2, show2.Width); } } catch { } } }

Dann Fügen wir in public Form1() Folgendes ein:

this.loadImage1.Click += new System.EventHandler(this.loadImage1_Click);
this.loadImage2.Click += new System.EventHandler(this.loadImage2_Click);

Störung durch Adblocker erkannt!


Wikia ist eine gebührenfreie Seite, die sich durch Werbung finanziert. Benutzer, die Adblocker einsetzen, haben eine modifizierte Ansicht der Seite.

Wikia ist nicht verfügbar, wenn du weitere Modifikationen in dem Adblocker-Programm gemacht hast. Wenn du sie entfernst, dann wird die Seite ohne Probleme geladen.