python+Opencv视频读取问题+官网光流法示例程序报错问题解决

注:适用于python2及Opencv2

    前几天安装了Opencv,与我的Anaconda配合使用,今天想测试一下Opencv下光流法的实现过程,但是第一步就卡在了视频读取上面,相信很多童鞋都遇到过类似错误。解决了这个问题之后,又去跑官网给的光流法示例程序,结果这段程序总是报错:

cv2.imshow('frame',img)
    同样滴,又屁颠屁颠去网上找决绝方案(小白伤不起~),最后勉强搞定。总的感觉就是网上的解决方案很多很杂,并不对每一个人都适用。这两个问题在stackoverflow上的解决方案比较完整,国内很多都是借鉴他们的,只不过英文可能让部分童鞋望而却步,但还是建议看一看,毕竟完整一些。

    第一个问题,读取视频文件出错,要修改动态链接库(dll)文件名和添加系统运行路径,详见:http://stackoverflow.com/questions/11699298/opencv-2-4-videocapture-not-working-on-windows。辅以:http://blog.csdn.net/heyijia0327/article/details/44034671。

    第二个问题,运行示例代码时那段代码总报错,原因官方给的代码可能库的版本不一样,所以上面有两行代码是不适用的:

mask = cv2.line(mask, (a,b),(c,d), color[i].tolist(), 2)
frame = cv2.circle(frame,(a,b),5,color[i].tolist(),-1)

改为:

#drawing is inplace replacement, line() and circle() will return None!
cv2.line(mask, (a,b),(c,d), color[i].tolist(), 2)
cv2.circle(frame,(a,b),5,color[i].tolist(),-1)

    详见:http://stackoverflow.com/questions/11699298/opencv-2-4-videocapture-not-working-on-windows。

    希望能给同伴小白们提供帮助。



你可能感兴趣的:(机器视觉)