我一直在网上冲浪一段时间来比较指纹图像,我发现emgu非常有趣,现在问题是
这是准确的吗?
这是可能的(我认为)
我在某个地方找到了这个
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;
}
但我不知道它是什么,当我尝试运行它时会给我一个错误。
答案 0 :(得分:0)
要匹配指纹,您需要一种特定的算法来比较细节,它不是图像之间的匹配。 请查看:https://en.wikipedia.org/wiki/Fingerprint_recognition
NIST有一个用于指纹识别的开源SDK:NBIS。 可以下载here。
还有来自MegaMatcher SDK的Neurotechnology专有SDK。