2017-01-02 122 views
0

我一直在网上冲浪了相当长的一段时间有关比较的指纹图像,我发现现在emgu是非常有趣的问题是比较在C#中使用Emgu两幅指纹图像

  1. 是否准确?

  2. 这是可能的(我认为)

  3. 不知道去哪里(指导我请)

我发现这个地方

private Image<Bgr, byte> bwareaopen(Image<Bgr, byte> Input_Image, int threshold) 
{  
    Image<Bgr, byte> bwresults = Input_Image.Copy();  
    using (MemStorage storage = new MemStorage()) 
    { 
     for (Contour<Point> contours = Input_Image.Convert<Gray, byte>().FindContours(Emgu.CV.CvEnum.CHAIN_APPROX_METHOD.CV_CHAIN_APPROX_SIMPLE, Emgu.CV.CvEnum.RETR_TYPE.CV_RETR_LIST, storage); contours != null; contours = contours.HNext) 
     { 
      Contour<Point> currentContour = contours.ApproxPoly(contours.Perimeter * 0.05, storage); 
      if (currentContour.Area < threshold) 
      { 
       for (int i = currentContour.BoundingRectangle.X; i < currentContour.BoundingRectangle.X + currentContour.BoundingRectangle.Width; i++) 
       { 
         for (int j = currentContour.BoundingRectangle.Y; j < currentContour.BoundingRectangle.Y + currentContour.BoundingRectangle.Height; j++) 
         { 
          bwresults.Data[j, i, 0] = 0; 
          bwresults.Data[j, i, 1] = 0; 
          bwresults.Data[j, i, 2] = 0; 
         } 
       } 
      } 
     } 
    } 
    return bwresults; 
} 

,但我不想法是什么,当我尝试运行它时,它给了我一个错误。

+1

我想你可能会误解指纹识别的工作原理。这不是一个图像比较(因为部分指纹也存在),而是该指纹特有的指纹特征。实际上,没有2次扫描的手指会产生相同的图像 - 请记住扫描仪的分辨率也会改变图像的显示方式 – Takarii

回答