Java 处理!Kinect发送在x秒内处于位置x
我需要一点帮助。 我有一个使用SimplePenni库进行处理的kinect,例如,我只希望kinect在2秒内发送骨架的位置。如果位置与之前发送的位置相同,请不要执行此操作,是否可能?Java 处理!Kinect发送在x秒内处于位置x,java,kinect,processing,simple-openni,Java,Kinect,Processing,Simple Openni,我需要一点帮助。 我有一个使用SimplePenni库进行处理的kinect,例如,我只希望kinect在2秒内发送骨架的位置。如果位置与之前发送的位置相同,请不要执行此操作,是否可能? 谢谢是的,您必须在“发送”和另一个之间设置延迟 在读取值的线程中: while(..) { Thread.sleep(2000); /* delay 2000ms => 2s */ /* read value */ /* if not the first iteration, save val
谢谢是的,您必须在“发送”和另一个之间设置延迟 在读取值的线程中:
while(..) {
Thread.sleep(2000); /* delay 2000ms => 2s */
/* read value */
/* if not the first iteration, save value in temp array */
/* else check for each bone: oldPos - epsilon < newPos < oldPos + epsilon */
}
while(…){
线程睡眠(2000);/*延迟2000ms=>2s*/
/*读取值*/
/*如果不是第一次迭代,则将值保存在临时数组中*/
/*否则检查每个骨骼:oldPos-ε
若要检查以前的位置是否相同,必须将骨架位置保存在临时变量中,并检查新值是否相同,可能是使用某个邻域
不幸的是,没有其他解决方案,因为在配置文件中,您只能设置两种FPS(这里讨论了):
- 对于彩色图像
FPS=15@1280x1024
640x480时的FPS=30 - 深度 640x480时的FPS=30
<OpenNI>
<Licenses>
<License vendor="PrimeSense" key="0KOIk2JeIBYClPWVnMoRKn5cdY4="/>
</Licenses>
<Log writeToConsole="false" writeToFile="false">
<LogLevel value="3"/>
<Masks>
<Mask name="ALL" on="true"/>
</Masks>
<Dumps></Dumps>
</Log>
<ProductionNodes>
<Node type="Depth" name="Depth1">
<Configuration>
<MapOutputMode xRes="640" yRes="480" FPS="30" />
<Mirror on="false"/>
</Configuration>
</Node>
<Node type="User"/>
<Node type="Gesture"/>
<Node type="Hands"/>
</ProductionNodes>
</OpenNI>
哼哼,我明白你说的,但是kinect不断地发送骨架信息,只是一个Com,所以我不知道如何在casa中设置延迟,这是我的问题。