public static List <Otisak_prsta> DohvatiOtiske() { List <Otisak_prsta> listaOtisaka = new List <Otisak_prsta>(); string sqlUpit = $"SELECT * FROM Otisak_prsta;"; MySqlDataReader dr = DB.Instance.DohvatiDataReader(sqlUpit); while (dr.Read()) { Otisak_prsta otisak_Prsta = new Otisak_prsta(dr); listaOtisaka.Add(otisak_Prsta); } dr.Close(); //DataReader treba obavezno zatvoriti nakon uporabe. return(listaOtisaka); }
private void btnProvjeraPrsta_Click(object sender, EventArgs e) { List <Otisak_prsta> listaOtisaka = new List <Otisak_prsta>(); listaOtisaka = Otisak_prsta.DohvatiOtiske(); foreach (var item in listaOtisaka) { Fingerprint fp = new Fingerprint(); fp.AsBitmap = new Bitmap(Bitmap.FromFile(Application.StartupPath + item.Otisak_putanja)); Person osoba = new Person(); osoba.Id = item.FK_korisnik; osoba.Fingerprints.Add(fp); Afis.Extract(osoba); ListaOsobaIzBaze.Add(osoba); } Afis.Threshold = 40; Person matchingCandidate = Afis.Identify(NepoznataOsoba, ListaOsobaIzBaze).FirstOrDefault(); if (matchingCandidate == null) { MessageBox.Show("Nije pronadena osoba s navedenim otiskom prsta!"); } else { Korisnik trazeniKorisnik = new Korisnik(); trazeniKorisnik = Korisnik.DohvatiKorisnika(matchingCandidate.Id); float score = Afis.Verify(NepoznataOsoba, matchingCandidate); bool match = (score > 0); MessageBox.Show("Pronađen je korisnik: " + trazeniKorisnik.Korisnicko_ime + " s koeficijentom podudranja: " + score.ToString()); if (trazeniKorisnik.Korisnicko_ime == textBoxKorIme.Text) { zastavicaPrst = true; lblOsobaFinger.Text = trazeniKorisnik.Korisnicko_ime; lblOsobaFinger.ForeColor = System.Drawing.Color.Green; lblFingerTocnost.Text = score.ToString(); lblFingerTocnost.ForeColor = System.Drawing.Color.Green; } } ProvjeraPrijave(); }
private void btnRegistraj_Click(object sender, EventArgs e) { //registracija u tablicu korisnik Novikorisnik = new Korisnik(); Novikorisnik.Ime = textBoxIme.Text; Novikorisnik.Prezime = textBoxPrezime.Text; Novikorisnik.Korisnicko_ime = textBoxKorIme.Text; Novikorisnik.Registriraj(); //registracija u tablicu otiska prsta NoviOtisak = new Otisak_prsta(); NoviOtisak.FK_korisnik = Novikorisnik.DohvatiID(); NoviOtisak.Otisak_putanja = "/FingerPrints/Print" + textBoxKorIme.Text + ".bmp"; NoviOtisak.SpremiOtisak(); //registracija u tablicu uzorka lica NoviUzorak = new Uzorak_lica(); NoviUzorak.FK_korisnik = Novikorisnik.DohvatiID(); NoviUzorak.LicePutanja = "/Faces/Face" + textBoxKorIme.Text + ".bmp"; NoviUzorak.SpremiUzorak(); this.Close(); }