我正在与一些编程伙伴合作,以创建Kinect的AS接口,而我们遇到的一个问题是图像差异。我们需要能够抛出不会因图像而变化的图像数据,以便我们只能固定移动的东西(即人)。

有人对此有任何经验,或者我们可以执行的方向吗?

有帮助吗?

解决方案

我会考虑创建一个像素弯曲器着色器来找到差异,并执行其他任何数学或跟踪。 Pixel Bender在普通闪光灯播放器之外拥有自己的线程,因此您可以为设置获得更多的马力。像素弯曲器着色器可以应用于位图,向量或视频,因此我认为它非常适合该项目。祝你好运!

http://www.adobe.com/devnet/flash/articles/pixel_bender_basics.html

并且是整个着色器,包括差异

其他提示

看一下 临界点 Bitmapdata上的方法。它可以让您做这些事情。他们的文档有一个简单的示例,因此请检查一下。

这可能是一个漫长的镜头,这只是我在闲逛,但是在健全的理论中(奇怪的它的倒数。这就是您从乐器 +原始作品或acapellas + Originals制作acapellas的方式。

也许您可以倒转新图像并“正常化”两者以使您的偏移?即第一个图像是“黑色上的黑色”,第二张图像是“白色在黑色上”,然后检测到位图数据的差异。我知道我做了一种类似的方法来发现几年前与AS3的碰撞。从理论上讲,这将取消任何“重复”像素,并让您只对最后一帧进行更改。

使用BitMapData,您的值将从0到255,因此,如果您可以实现取消(因为图像的许多部分都会从框架t帧中保持相同),那么您可以轻松地从上一个中找到更改框架。

只是一个想法!无论您的解决方案是什么,都必须快速地击败Flash Runtimes的慢速速度。您的Kinect读取FPS率将受到不良代码的极大阻碍。

这是我写的一些框架差异代码。它使用bitmapdata: http://actionsnippet.com/?p=2820

我还用它在视频提要中捕获运动颜色: http://actionsnippet.com/?p=2736

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top