2012-10-12 26 views
2

我想编写一个程序,它使用Kinect捕捉运动,然后保存运动路径,然后将创建的图像转换为文本。最好的方法来捕获手写并将其转化为输入文本

我不确定OCR是否是最好的方法,因为很可能图像的质量会很低。

是否有任何人可以建议的系统。还有关于如何实现它的任何提示。欢呼声

编辑:

Windows Journal几乎完全符合我的要求。

+1

你提议将部分OCR –

回答

1

您需要像Kinect这样的传感器并使用其API来捕捉动作。这对传感器和动作捕捉技术非常具体。如果没有使用C#的第三方API,我认为你不能编写动作捕捉技术。

+1

我不认为他在暗示自己不打算使用Kinect的API软件。他在寻找一种方法,通过分析像手写识别的议案,这给他的数据转换为文本。 –

+0

是的,我打算通过API使用Kinect的,我已经拥有它运行作为替代输入设备,让我到我的笔记本电脑来控制到一定程度,它是愤怒的小鸟例如挺好玩的,但我现在正在试图移动它在。 –

1

我没有看到Kinect可以给你的优势。

你必须首先定义这个系统将具有什么样的输入:例如一个字符的RGB图像,还是像跟踪手位置一样复杂的事情?

如果您想将Kinect用于其深度图,那么您尝试执行的操作似乎更像手势识别(以及将每个手势映射到某个字符)而不是OCR。

编辑的手势识别方式:

我没有对任何实现自己,所以我真的不能给你明确的指示或建议。在主题(google scholar search)中存在一些关于利用可用深度信息而不是处理2D图像的文章。我猜测DIY的方法是尽可能多地为每个手势获取训练样本,训练分类器(wikipedia on supervised learning),然后测试新的样本。

如果你不觉得这样的冒险,你可以通过测试存在一些代码示例开始:

  • 从OpenNI的手跟踪样本 - 你可以看到一个例子here,我认为它承认一些手势也。
  • Candescent NUI“用Kinect深度数据进行手和手指跟踪”,我不认为它包含任何识别,但也许它可以帮助您获得更好的数据。
  • Kinect for Windows Developer Kit可能包含一些有用的东西,但要告诉你事实我没有检查出它。

虽然我可以看到手势识别方法非常棘手。手势之间必须有显着的差异,否则,考虑到Kinect低分辨率和噪声问题,即使您获得了大量的训练样本,仍然可能会失败。想象一下,例如写'i'或'l'。或者'o'和'a'之间的差异(当然取决于你的笔迹)。规模如此之小,手的移动如此微不足道,以至于我不知道分类器(即使是强大分类器)是否能够捕捉到这种变化。

+0

我可能试图让手势识别,而不是OCR。我想这样做,如果你能提出任何建议。我想这样做左右逢源,但这样你可以写在纸上,并保持到相机。 –

相关问题