如何使用GPUImage motionDetection- swift获取移动对象的坐标

时间:2016-01-25 02:48:54

标签: ios swift gpuimage motion-detection

如何通过motionDetection过滤器获取进入帧的内容的屏幕坐标?我对编程很新,如果可能的话,我更愿意快速回答。

示例 - 我让iphone指向墙 - 用motionDetector监视它。如果我把一个网球反弹到墙上 - 我希望应用程序在iphone显示屏上的同一个位置放置一个网球图像。

要做到这一点,我需要运动发生位置的坐标。 我想也许“质心”的论点可以做到这一点......但我不确定。

1 个答案:

答案 0 :(得分:0)

我应该指出,运动探测器非常粗糙。它的工作原理是采用视频流的低通滤波版本(由输入视频帧的加权平均值生成的合成图像),然后从当前视频帧中减去该值。标记高于特定阈值的像素。结果提供了这些像素的数量以及标记像素的质心。

质心是一个标准化(0.0-1.0)坐标,表示所有这些不同像素的质心。标准化强度为您提供标记为不同的像素百分比。

场景中的移动通常会导致一堆像素不同,而对于单个移动对象,质心通常会是该对象的中心。但是,这不是一个可靠的措施,因为灯光变化,阴影,其他移动物体等也会导致像素不同。

对于真实对象跟踪,您需要使用特征检测和跟踪算法。不幸的是,发布的框架目前没有任何完全实现的版本。