是否有任何用于签名识别的代码或算法? [关闭]

Posted

技术标签:

【中文标题】是否有任何用于签名识别的代码或算法? [关闭]【英文标题】:Is there any code or algorithm for signature recognition? [closed] 【发布时间】:2012-02-13 00:04:30 【问题描述】:

我的用户使用触摸事件在我的应用程序中绘制他们的签名,然后我将其转换为位图。我想提取每个签名的唯一规范,并通过存储在主服务器中的规范进行比较。

我该怎么做?

提取签名独特特征的主要和企业算法是什么?

提前致谢,

【问题讨论】:

这对于 Stack Overflow 帖子来说太宽泛了,但您应该更广泛地研究 siamese 神经网络、三元组损失、对比损失或度量学习。 【参考方案1】:

我不是计算机视觉专家,但作为一个涉足的研究生,听起来特征精确是您正在寻找的东西。首先想到的是 SIFT(Scale-Invariant Feature Transform)。该算法将允许您将原始签名的存储特征与副本进行比较,并以高准确度识别匹配项,即使在样本被缩放或旋转的情况下也是如此。

通过简单的 Google 搜索,您可以找到大量与使用签名/生物识别算法特别相关的学术论文,例如 this one 或 this one。

Stack Overflow Article 中有一个关于使用 OpenCV 和 SIFT 的讨论。

如果我不知道有更好的视觉算法特别适合这个问题,我鼓励社区加入。

【讨论】:

出于自己的好奇心,今晚我对该主题进行了更多研究。关于“签名识别”的材料非常少,但如果您将搜索范围扩大到手写取证,您会发现一些商业解决方案,例如 Cedar Fox 和 Neuro Script。两者都有免费的演示,您可能可以使用它们来了解他们的过程。我仍然有点震惊,没有任何开源可以开箱即用地做到这一点...... 如果你要考虑SIFT,你也应该考虑SURF和ORB。类似的算法,也在 opencv 中实现,但运行速度更快。【参考方案2】:

尝试查看this resource,它使用神经网络进行手写识别。尝试查看this resource too,它向您展示了如何识别手写数字。这两个项目都有完整的源代码。

【讨论】:

【参考方案3】:

有一个类似的问题问:Bitmap (of a signature) comparison in c#

我在channel9也找到一篇文章http://channel9.msdn.com/coding4fun/blog/Contour-Analysis-for-Image-Recognition-in-C

它需要创建复杂的逻辑,有多种产品可用于签名验证和识别,我发现以下用 vb 6.0 编写的代码可能会有所帮助: http://www.planet-source-code.com/vb/scripts/ShowCode.asp?txtCodeId=38215&lngWId=1

简而言之,这需要付出很多努力,因此您可以询问客户是否可以通过指定一些唯一代码或质疑“签名匹配”的要求。

【讨论】:

【参考方案4】:

您可以将图像转换为字节数组,将其发送到您的服务器,然后做任何您想做的事情。

接下来我将介绍一些你可以使用的解码和编码方法的技巧和窍门

这里有一个问题Decode byte array to bitmap that has been compressed in Java关于如何解码字节数组

并使用以下提示从您的位图中创建字节数组:http://www.anddev.org/advanced-tutorials-f21/how-to-convert-bitmap-to-byte-array-in-android-t12985.html

希望这会有所帮助, 方舟

【讨论】:

我想将这些规范存储在我的数据库中以供离线工作。因此,将图像转换为字节数组不是我的解决方案,并且将大图像存储在数据库中对于袖珍 PC 设备来说并不是一个好的解决方案。我必须在我的设备上进行操作。 在数据库中很好地存储图像可能不是一个好的解决方案。尝试将其保留在 /sdcard 上,它在数据库上的路径可能是。您还可以将图像的本地部分存储为字节数组,并将其与您比较的图像中的另一个字节数组进行比较。 签名检测类似于指纹检测。它不是像素到像素的比较。【参考方案5】:

几年前我在 UNI 做过手写识别系统。根据我在该项目中获得的经验,我会告诉你,不要将签名转换为图像,而是收集笔触摸屏幕的点集并按时间戳排序。处理它比处理签名作为图像要容易得多。

如果有人会追随你的脚步,我建议阅读有关在线/离线手写识别的内容

【讨论】:

以上是关于是否有任何用于签名识别的代码或算法? [关闭]的主要内容,如果未能解决你的问题,请参考以下文章

整体单词识别算法详解

城市识别是不是有 ISO 标准? [关闭]

图像中的徽标识别[关闭]

活动识别的滑动​​窗口算法

人脸识别原理及处理流程

Python OCR 库或手写字符识别引擎 [关闭]