28

我买了一个 Kinect 在我的电脑上用 C# 玩。(编程是多么有趣啊!)

我正在使用 CLNUIDevice.dll 从 Kinect 获取深度图像。这很好用,我可以通过图像中的 RGB 值读取深度。

现在我想知道有哪些库可以进行不同类型的识别。我见过手部识别、面部识别、骨骼、情绪、物体等。

图像处理库不一定适用于 Kinect(尽管那会很好),也不一定适用于 .Net(尽管那会很好)。例如:任何对象跟踪库都可以工作,但如果它可以正确使用来自 Kinect 的 3D 热图,它会工作得更好。

4

6 回答 6

16

您可以使用 Kinect 生成的一系列 RGB 矩阵并通过标准图像处理算法运行它们,实际上图像处理算法通常组合在一起以产生有意义的结果。以下是一些可以在 .net 中轻松实现(和组合)的标准技术:

模板匹配 - 一种数字图像处理技术,用于查找与模板图像匹配的图像的小部分http://en.wikipedia.org/wiki/Template_matching

形态图像处理 - 一种基于集合论、晶格论、拓扑和随机函数的几何结构分析和处理的理论和技术 http://ashleyaberneithy.wordpress.com/2011/08/08/automating-radiology-检测-肺结节-使用-形态学-图像处理-in-f/

还有更先进的图像处理技术可用于特定场景,例如通过机器学习进行人脸识别和模式匹配

主成分分析 - 我过去曾使用过这种技术,我认为这在现代消费类相机中用于执行面部识别http://en.wikipedia.org/wiki/Principal_component_analysis

机器学习模式匹配——我过去曾使用支持向量机和基于神经网络的学习算法来检测图像矩阵中的模式。值得一读 Vapnik 的统计学习理论 - http://www.amazon.com/Statistical-Learning-Theory-Vladimir-Vapnik/dp/0471030031,它展示了如何成功地将训练数据映射到 n 维结构,以及如何成功地在结构内对数据进行分类的模型超平面,然后可以基于该模型对新数据进行分类。还存在一个名为 LibSVM 的库,我发现它很有用。http://www.csie.ntu.edu.tw/~cjlin/libsvm/

顺便说一句,在 .net 世界中使用 F# 来实现其中一些算法可能会更自然

编辑:另一本非常好的书是“数字图像处理”

于 2011-01-30T13:00:56.623 回答
2

用于计算机视觉和机器学习的有用 .Net 库是AForge.NET

这是一个代码示例和某人在 Kinect 中使用它的视频:Conquex

于 2011-01-31T16:15:36.500 回答
2

学习 OpenCV。它是当今计算机视觉实验室/学习的标准框架。尝试轮廓查找工具、K-最近邻等。但首先,学习它的接口(数据结构、函数)。

于 2011-04-12T16:18:31.640 回答
1

以及强制性的 OpenCV 和我最喜欢的 C# 端口http://www.emgu.com/wiki/index.php/Main_Page

于 2011-02-20T12:19:26.793 回答
0

关于 OpenCV 的一些更正,它曾经是一个 C 库,而遗留代码仍在维护中,OpenCV 现在几乎是纯 C++,即从 2.1 版开始。当它是一个纯 C 的库时,其中很多处理起来真的很复杂,在较新的版本中得到了简化。

还有一个 Yahoo OpenCV 组,它是一个很好的资源。openCV 还附带了一组示例,它们可以帮助您掌握基本的模式匹配。

指向 Yahoo 群组的链接 http://tech.groups.yahoo.com/group/OpenCV/

Kinect 和 OpenCV 示例http://www.morethantechnical.com/2010/11/22/kinect-and-opencv-2-1/

于 2011-07-14T07:28:40.530 回答
0

在这个问题上支持 Kenny - OpenCV 的 Emgu C# 包装器是我想要的。OpenCV(通常基于 C++)是目前使用最广泛的计算机视觉框架,也由英特尔部分维护/优化。许多当前的研究人员和工程师使用它来创建自己的项目,Emgu 包装器为您提供了一个很好的翻译,以开始在 C# 中使用它的库。我觉得 Kinect 领域的许多开源创新都发生在 libfreenect 包装器(最好与 Linux/C++ 一起使用),EmguCV 应该为您提供模仿(或使用其他人的模仿)这些 Vision 研究人员的最佳方式是做。

于 2011-05-13T23:49:38.550 回答