捕获并比较指纹图像

时间:2013-10-31 07:26:20

标签: c#

我正在开发一个使用指纹识别的考勤管理系统。所以我想要的是比较扫描仪生成的两个bmp图像。我听说过神经网络,但我不知道如何实现它。有什么解决方案吗?

3 个答案:

答案 0 :(得分:2)

你不想从头开始,你需要像Digital Persona Software Development Kit.

这样的东西

还有其他人,但那是我今晚使用的那个:)

还有这个问题:Opensource or Free Fingerprint Reader SDK

已编辑添加:

如果您无法使用NITGEN SDK,那么您可能无法在项目中取得成功。当你比较'指纹',你实际上并没有比较图像时,你正在比较从图像中提取的关键点(标记)列表。

答案 1 :(得分:0)

如果你从头开始,将需要永远。我4年前使用Griaule Biometrics制作这个项目。它就像一个魅力。添加对必要DLL的引用以操作指纹扫描程序。

答案 2 :(得分:-6)

我认为你在寻找:

https://github.com/cameronmcefee/Image-Diff-View-Modes/commit/8e95f70c9c47168305970e91021072673d7cdad8

简单方法:

   1: private bool ImageCompareArray(Bitmap firstImage, Bitmap secondImage) 
   2: {
   3:     bool flag = true;
   4:     string firstPixel;
   5:     string secondPixel;
   6:  
   7:     if (firstImage.Width == secondImage.Width 
   8:         && firstImage.Height == secondImage.Height)
   9:     {
  10:         for (int i = 0; i < firstImage.Width; i++)
  11:         {
  12:             for (int j = 0; j < firstImage.Height; j++)
  13:             {
  14:                 firstPixel = firstImage.GetPixel(i, j).ToString();
  15:                 secondPixel = secondImage.GetPixel(i, j).ToString();
  16:                 if (firstPixel != secondPixel)
  17:                 {
  18:                     flag = false;
  19:                     break;
  20:                 }
  21:             }
  22:         }
  23:  
  24:         if (flag == false)
  25:         {
  26:             return false;
  27:         }
  28:         else
  29:         {
  30:             return true;
  31:         }
  32:     }
  33:     else
  34:     {
  35:         return false;
  36:     }
  37: }

另见:http://blogs.msdn.com/b/domgreen/archive/2009/09/06/comparing-two-images-in-c.aspx