【问题标题】:C# - Multi-touch help? USB web cam input? Image Analysis?C# - 多点触控帮助? USB网络摄像头输入?图像分析?
【发布时间】:2009-11-11 04:05:42
【问题描述】:

我正在尝试制作一个 DIY 触摸屏,并希望将其参加当地的科学博览会,但想在多点触控的编程方面进行。我的问题在于我从未使用过分析图像(来自基于 USB 的网络摄像头)。
如果可能的话,我想用 C# 做这个项目(C++ - 如果最坏的情况发生)
我需要分析一张黑色图片(来自 USB 网络摄像头)然后检测何时出现白色斑点。 我将如何进行此操作? ---是否有一种已知的方法来检测变化与分析每个像素?如果是这样,指向这里的指针会很好:)
另外我如何通过 USB 从网络摄像头获取输入? --- 我在哪里可以获得库 / ddl 的?
我见过一些可以使用此功能的程序,但它们会转换图像 - 这会占用时间和处理器速度...有没有办法使用原始输入图像/数据?
帮忙?

【问题讨论】:

    标签: c# .net image-processing computer-vision multi-touch


    【解决方案1】:

    输入后,您将获得(假设它是完全黑暗和完全明亮的对比度),您将获得一个类似于此的值矩阵:(灰度)

    0 0 0 0 0 0 0 0 0 0 0 0 
    0 0 0 0 0 0 256 0 0 0 0 0
    0 0 0 0 0 256 256 256 0 0 0 0
    0 0 0 0 0 0 256 0 0 0 0 0
    0 0 0 0 0 0 0 0 0 0 0 0 
    

    您的工作需要分割出正确颜色值 (256) 的部分并确定位置。要获得运动 [假设您只跟踪 1 个对象],您必须将 blob 的下一个位置与前一个位置进行比较。

    在现实世界中,尤其是使用网络摄像头时,您永远无法获得具有良好对比度的纯色背景。网络摄像头分辨率低,光线从不完美,镜头和 CCD 缺陷/颜色近似会增加噪点。

    此外,您可能会在跟踪 blob 运动时遇到问题(一个 blob 可能在表面的其他地方被错误检测。当您尝试跟踪两个 blob 时,您会遇到更多问题。

    其中一些问题包括:

    1. Blob 碰撞(你怎么知道哪个 Blob 去哪里了)
    2. Blob 交叉(Blob 是否切换了侧面,或者 Blob 是否沿与先前行程相反的方向移动)
    3. Blob 组合(两个 Blob 合二为一)

    要使用 C# 抓取相机,您可能需要to check this out. WIA 不是用于拍照的最快方法。但是,它更容易处理。如果您仍然对此感兴趣,我对您的建议是在 Photoshop 中绘制两张图像并跟踪标记。它没有那么令人兴奋,但它会帮助您更轻松地解决问题并放松问题描述。

    【讨论】:

      【解决方案2】:

      您想要的是“斑点检测”。这是一个关于blob library的好帖子

      已经有大量多点触控/计算机视觉库和软件。这种东西的最佳资源是wiki.nuigroup.com。尤其是Frameworks and Libraries 部分。目前那里没有太多 C# 信息,但如果您确实发现了一些东西,请确保将其放在该 wiki 上供所有人使用。

      还有NuiGroup forum C# (.NET/Silverlight/WPF) section 应该可以帮到你很多。该社区可以提供一些很大的帮助。

      【讨论】:

        【解决方案3】:

        作为一个开始使用网络摄像头的地方,我将从这里开始:

        http://www.hanselman.com/blog/CapturingVideoAWebCameraUsingWIANotPossible.aspx

        您将获得一些链接,但我建议您从这里开始,因为在这篇文章中,Scott 谈到了不同的挑战和常见问题,并提供了更多信息的链接。

        【讨论】:

          【解决方案4】:

          要从网络摄像头获取图像,AForge 框架非常易于使用!查看运动检测示例应用程序以获取代码:)

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 1970-01-01
            • 2012-08-16
            • 1970-01-01
            • 1970-01-01
            • 2011-02-10
            • 1970-01-01
            • 2020-07-06
            • 2013-01-18
            相关资源
            最近更新 更多