实时iOS相机颜色识别:跟踪球

时间:2013-04-12 21:14:10

标签: ios opengl-es camera real-time motion-detection

我一直在寻找并知道人们能够使用核心图像和openGL跟踪人脸。但是,我不确定在哪里开始使用iOS相机跟踪彩色球的过程。

一旦我有能力跟踪球。我希望创造一些东西来检测。当球改变方向时。

抱歉,我没有源代码,但我不确定从哪里开始。

2 个答案:

答案 0 :(得分:2)

关键是图像预处理和过滤。您可以使用Camera API来从摄像头获取视频流。拍摄快照照片,然后你应该使用高斯模糊(空间增强),然后使用亮度平均阈值滤镜(制作黑白图像)。在那之后,形态预处理应该是明智的(打开,关闭操作员),以隐藏小噪音。然后是边缘检测算法(例如Prewitt-operator)。在这些过程之后只留下边缘,你的球应该是一个圆圈(当记录环境是理想的时候)之后你可以使用霍夫变换来找到球的中心。你应该记录球的位置,在下一帧中,可以处理图片的一小部分(仅限球)。

其他关键字可以是:blob detection

用于图像处理的快速库(在带有openGL的GPU上)是Brad Larsons:GPUImage库https://github.com/BradLarson/GPUImage

它实现了所有需要的过滤器(Hough-transformation除外)

答案 1 :(得分:0)

跟踪过程可以定义如下:

  1. 具有给定视觉特征的对象的初始坐标和尺寸(图像特征)
  2. 在下一个视频帧中,在最后一帧的坐标附近找到相同的视觉特征。
  3. 近似意味着考虑与最后一帧相关的基本变换:

    • 每个方向的翻译;
    • 规模;
    • 旋转;

    这些变换的变化与帧速率严格相关。帧速率越高,最接近的位置将在下一帧中。

    Marvin Framework提供插件和示例来执行此任务。它还与iOs不兼容。但是,它是开源的,我认为你可以轻松移植源代码。

    video演示了一些跟踪功能,从1:10开始。