检测相机的移动

时间:2013-06-08 22:11:49

标签: java android

我想知道是否可以通过相机检测到移动。该应用程序将在2个手机1上运行x点,另一个运行在x +米上,它将用作准确的塞子。

所以我想要检测的运动类型是高速通过相机的物体(最大40 KMH)。

再一次,是否可能?

1 个答案:

答案 0 :(得分:0)

可以通过比较两个图像来完成。你基本上必须覆盖onPreviewFrame(byte []数据,Camera cam)方法并从默认的YUV转换为RGB:

int[] rgb = ImageProcessing.decodeYUV420SPtoRGB(data, width, height);

创建一个您将用于运动检测代码的对象:

IMotionDetection detector = new RgbMotionDetection();

调用detect()方法传入上面获得的参数。

boolean detected = detector.detect(rgb, width, height)

如果布尔“检测”变量为真,则它已检测到运动。

RGB检测代码位于RgbMotionDetection.java类中。图像处理代码位于ImageProcessing.java静态类中。将它们绑定在一起的Activity是在MotionDetectionActivity.java中。