【问题标题】:Image Comparison in ASP.NETASP.NET 中的图像比较
【发布时间】:2014-01-10 14:29:36
【问题描述】:

我正在开发一个 Web 应用程序,即使用 ASP.NET 的计算机化投票系统。我想比较数据库中的拇指印象。我正在使用断开连接的数据访问。是否可以将输入的拇指印象与已经保存在 SQL 数据库中的指纹进行比较?如果是,那怎么办?

【问题讨论】:

  • 顺便说一句,你知道没有什么叫做“ASP.NET C#”吗? ASP.NET 和 C# 是两个独立的东西,有时一起使用。
  • 不,我不知道。我是新手。谢谢。

标签: asp.net


【解决方案1】:

请描述应用程序的一些细节。

保存在数据库中的图像,它们是使用同一个应用程序上传的吗?如果是这样,您应该添加一个新列来存储图像的哈希值。

你会得到一个这样的表:|ID|ImageData|Hash|

这是计算哈希的方法:

string hash;
using(SHA1CryptoServiceProvider sha1 = new SHA1CryptoServiceProvider())
{
    hash = Convert.ToBase64String(sha1.ComputeHash(byteArray));
}

然后,当您想检查上传的图像是否已经存在于数据库中时,您应该为其计算哈希并发送如下查询:

string.Format("SELECT ID FROM Images WHERE Hash={0}", hash);

这将告诉您数据库中是否已经存在完全相同的字节。如果图像相似,它将不起作用。必须相同。

注意:您必须将图像转换为字节数组。如果您在将图像保存在数据库中时已经这样做了,这应该不是问题。

如果您想查找图像之间的相似性,您可能需要查看计算机视觉和主成分分析。

【讨论】:

    猜你喜欢
    • 2012-08-19
    • 1970-01-01
    • 1970-01-01
    • 2016-04-08
    • 2015-10-27
    • 1970-01-01
    • 2023-03-11
    • 1970-01-01
    • 2011-09-01
    相关资源
    最近更新 更多