Autor Beitrag
Tru5T
Hält's aus hier
Beiträge: 7



BeitragVerfasst: Mi 02.04.14 20:01 
Hey,

ich bin es schon wieder :D
Kennt vielleicht jemand von euch eine gute Face Recognition library für c#. Ich habe Emgu bereits getestet und bin alles andere als zufrieden damit...

Vielleicht noch etwas mehr Hintergrund:
Mein Bachelor Projekt ist über Face Recognition und Encryption. Ich möchte mit dem Gesicht eine Datei entschlüsseln können und dadurch das Passwort ersetzen.

Danke!!


Grüße
Tru5T
Ralf Jansen
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 4700
Erhaltene Danke: 991


VS2010 Pro, VS2012 Pro, VS2013 Pro, VS2015 Pro, Delphi 7 Pro
BeitragVerfasst: Mi 02.04.14 20:07 
Was meinst du genau? Ist der Wrapper schlecht oder die Recognition Library (OpenCV) selbst?
Tru5T Threadstarter
Hält's aus hier
Beiträge: 7



BeitragVerfasst: Mi 02.04.14 20:29 
Ich bekomme es soweit hin, dass ich von einem Bild das Gesicht mit einem Viereck einrahmen lassen kann. Ich brauch aber danach irgendetwas, das ich vergleichen kann, einen Vektor oder Werte. Das Problem ist, je höher die Auflösung desto mehr Details kann er finden, wenn aber das andere Bild eine schlechtere Auflösung hat, findet er deutlich weniger Punkte. Als Resultat habe ich zwei Arrays, das eine hat 1000 Einträge und das andere 100, also nicht vergleichbar.

Hier ist der Source Code den ich soweit habe:
ausblenden C#-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
openFileDialog1.ShowDialog();
if (!openFileDialog1.FileName.Equals(""))
{
    Image<Bgr, Byte> img = new Image<Bgr, byte>(openFileDialog1.FileName);
    Image<Gray, Byte> imgGray = img.Convert<Gray, byte>();
    HaarCascade cascade = new HaarCascade("haarcascade_frontalface_default.xml");

    foreach (MCvAvgComp face in imgGray.DetectHaarCascade(cascade)[0])
    {
        img.Draw(face.rect, new Bgr(Color.Blue), 4);
    }
    imageBox1.Image = img;
}


Grüße
Tru5T
jfheins
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 918
Erhaltene Danke: 158

Win 10
VS 2013, VS2015
BeitragVerfasst: Mi 02.04.14 22:56 
Du kannst dir eine Menge von Eigengesichern definieren und das aktuelle Gesicht als lineare Superposition diese auffassen. Die Koeffizienten der Eigengesichter sind dann sein "Schlüssel".

Ich hoffe, dass in deiner Arbeit das "Passwörter ersetzen durch Biometrie" noch etwas hinterfragt wird. Schließlich kann ich mein Gesicht kaum geheim halten, es taugt daher nicht als Schlüssel. Als Zusatz (zusätzlich zum Passwort) erhöht es die Sicherheit deutlich. (Two-factor Auth: Er weiß das Passwort und hat das Gesicht)

Weiteres Material solltest du hier finden: scholar.google.de/sc...l=de&q=eigenface
Tru5T Threadstarter
Hält's aus hier
Beiträge: 7



BeitragVerfasst: Fr 11.04.14 14:47 
Ich habe es hinbekommen Face Recognition in meine Anwendung zu implementieren. Ich habe letztendlich die openCV library genommen und mich etwas näher damit beschäftigt. Im Nachhinein ist diese library sehr vielseitig und mit eine bisschen fine tuning stellt sie genau das was ich brauche bereit.

@jfheins: Natürlich habe ich auch noch eine Passwortauthentifizierung mit in meine Anwendung eingebaut. Danke für deine Anregungen und deine Tipps. Meine Bachelorarbeit wird von den Professoren aber mehr auf den Report bewertet, das heißt, meine Anwendung, die ich schreibe, hat nur einen verhältnismäßig kleinen Teil der gesamt Bewertung.

Grüße
Tru5T