Max*_*sky 2 opencv image motion-detection computer-vision simplecv
我仍然通过网络摄像头拍摄了一晚的图像.大多数是相同的,因为图像中的照明是均匀的.然而,有些与其他人有显着差异 - 他们在框架中有明显的人体运动.
如何检测哪些图像明显不同,以便将运动包含在其中?更好的是,有没有一种专门检测运动的方法?
我猜测像OpenCV或SimpleCV这样的库可以很容易地实现这一点,但我不限于使用那些.
在SimpleCV中,
cam = Camera()
prev = cam.getImage()
while True:
current = cam.getImage()
fs = current.findMotion(prev, method="LK")
if fs: #if there's motion
print "motion found"
prev = current
Run Code Online (Sandbox Code Playgroud)
Image.findMotion()
使用光流来检测运动.你可以很容易地使用它.添加一些关于您期望的运动量的条件.
fs.dx
并且fs.dy
会给你所有已检测运动的点.
我做了一个例子,我从相机中获取输入并检测水平和垂直运动,我控制Banshee Media Player.你可以在我的GitHub上找到它.
归档时间: |
|
查看次数: |
1374 次 |
最近记录: |