您的位置:首页 > 编程语言 > Python开发

Windows下Opencv-Python环境的配置

2017-12-19 17:18 549 查看
本文以作者在自己的电脑上实际安装配置Opencv-Python为例介绍Windows环境下的环境搭建。(Anaconda2+Opencv2.4.13+Windows10)

准备的软件安装包

1.Anaconda2 的Windows安装包。点击这里下载



请根据自己的系统以及需要的版本下载合适的安装包。

2.Opencv的安装包。点击这里下载



请根据自己的系统以及需要的版本下载合适的安装包。

3.x264vfw(处理视频用的编码解码器)点击这里下载



这里这个链接提供的是Windows使用的版本

进行安装

1.Anaconda2

这个的安装很简单,基本就是下一步我同意下一步下一步。。。就完成了。需要注意如下两点。

你的Windows用户名一定要是英文!!!!不然会安装失败!!!

我之前的就是中文,最后实在没有办法重装系统改成了英文!!!!

在这个界面选择把它安装在哪里,或者使用默认路径,但是自己一定要知道安装到哪里去了!!



2.Opencv

刚才下载好的那个Opencv安装包直接打开,其实就是解压。

也是一样,自己选或者使用默认路径,但是一定记住放到哪里去了!路径最好不要有中文!



3.链接Opencv和Python

将刚才安装(解压)好的Opencv目录中的\build\python\2.7\x64目录(这里的\2.7和\x64请根据你实际的python版本以及系统版本选择)下的cv2.pyd文件拷贝到你之前的Anaconda2安装目录下的\Lib\site-packages\ 文件夹下





4.测试是否链接成功

打开你的Anaconda2安装目录下的python.exe(这个就是你实际使用的python软件,使用其他IDE的时候请把使用的python路径也修改到这里,比如我这的路径是C:\anaconda2\python.exe)

然后输入ipmort cv2

如果没有报错,说明链接成功。

然后可以使用cv2.version查看你的Opencv版本。



至此Opencv的已经基本可以使用了,但是一般情况下在进行视频处理的时候会发现无法读入视频和无法写出视频的问题,请分别参看第五第六步!!

5.修改设置ffmpg(解决无法读入视频的问题)

ffmpg是一个功能十分强大的视频编码解码器,Opencv(Windows版本)默认是自带编译好的ffmpg的,但是不能直接使用,默认安装完成的Opencv中的ffmpg需要进行一些小小的修改才能正常使用。

首先在Python中使用cv2.version查看你的Opencv版本。(我这里是2.4.13)

然后需要进入Opencv解压的目录下的\sources\3rdparty\ffmpeg目录修改其中的opencv_ffmpeg.dll和opencv_ffmpeg_64.dll两个文件的名字。(我这里的目录是D:\opencv\opencv\sources\3rdparty\ffmpeg)如果你的Opencv版本是X.Y.Z那么就把第一个文件的名字改成opencv_ffmpegXYZ.dll把第二个文件的名字改成opencv_ffmpegXYZ_64.dll

例如我这里原来的文件为:



修改为:



最后需要将ffmpeg所在的目录添加到系统的环境变量。具体方法如下:

鼠标右键单击‘我的电脑’,选择‘属性’,然后点击‘高级系统设置’



在弹出来的页面中点击‘环境变量’



在新弹出来的页面中选中‘Path’一项,然后点击‘编辑’



然后点击‘新建’,在新建的框中输入前面提到的ffmpeg动态链接库(就是改名字的那个)所在的路径。(我这里是win10,不同版本的Windows这里的操作可能不是完全一样,具体可以自己百度‘修改环境变量’)



添加完成后别忘了点击确定(应该是有两个确定的)。

然后应该就可以读入视频了,具体的操作请 点击我的这篇博客

但是到这一步可能有的电脑还是无法正常写出视频,请参照下一个步骤。

6.安装x264vfw(解决无法写出视频的问题)

如果在使用如下代码进行视频写出时出现错误,可能是因为视频编码器的缺失。

videoWriter = cv2.VideoWriter('oto_other.avi', cv2.cv.CV_FOURCC('X', '2', '6', '4'), fps, size)
videoWriter.write(frame)


这个时候只要把前面提到的需要准备的软件安装包中的第三个,x264vfw双击打开直接无脑下一步安装一下就好了。下载点击这里

然后再次尝试写出视频,应该就没有问题了。

关于视频的读入,写出。具体的操作请 点击我的这篇博客
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息