视频图像分析 - 检测快速移动/忽略慢速移动

时间:2016-08-10 07:19:35

标签: ios opencv image-processing video-processing motion-detection

我希望在iPhone上捕捉视频并在识别出快速动作时启动捕捉,并在有慢动作或没有检测到动作时停止。

这是一个用例来说明:

  1. 如果有人拿着iPhone相机并且没有背景移动,但是他的手不稳定并且左/右/上/下缓慢移动,这种移动应该被认为是慢的。
  2. 如果有人快速进入相机视野,这将被视为录制的快速移动。
  3. 如果有人慢慢走进相机视野,这将被视为缓慢而且不应该被拾取。
  4. 我正在考虑OpenCV,并认为使用他们的运动检测和光流算法可能有点过分。我正在考虑通过直接访问图像像素的轻量级方法,可能会检查亮度/亮度级别的变化。

    我只需要处理视频帧区域的30-40%用于运动(例如屏幕的上半部分),并且可以拾取每个其他像素来处理。轻量级算法的原因是因为它需要非常快速< 4ms,因为它将以高帧速率处理输入视频缓冲帧。

    通过直接检查图像像素,了解对替代图像处理/快速运动检测程序的任何想法。

1 个答案:

答案 0 :(得分:0)

  1. 密集的光流如calcOpticalFlowFarneback

  2. 使用动态记录

    2.1 updateMotionHistory(silh,mhi,timestamp,MHI_DURATION);

    2.2 calcMotionGradient(mhi,mask,orient,MAX_TIME_DELTA,MIN_TIME_DELTA ......

    2.3 segmentMotion(mhi,segmask,regions,timestamp,MAX_TIME_DELTA);

    2.4 calcGlobalOrientation(orient_roi,mask_roi,mhi_roi,...