在python3.5中使用OpenCV的实例讲解

yipeiwu_com5年前Python基础

最近在OpenCV的官方文档上看到一个人脸识别的示例代码,想要实现。由于我之前下好的OpenCV3.1中并不自带相关的函数,即opencv2/contrib/contrib.hpp这个文件找不到。需要下载一个contrib的扩展包,然后再用cmake进行编译,最终才能使用。

于是,就去官网上下了一个OpenCV2.4.13,重新配置,也是搞了好久,最后才能使代码顺利运行,虽然最后还是出了一个不知道如何解决的bug。

为什么非要在vs2015上用C++写关于OpenCV的东西呢?于是我想到python,正所谓人生苦短,我用Python。至于在python中使用OpenCV,目前我知道的途径有两个,一个是在opencv文件夹里面的python文件夹里面的某个文件(就是最底下的那个cv2.pyd文件)拷贝到python文件夹里面的某个地方(根据自己安装python的位置)。

一向喜欢方便的我,看到这个就很烦,再说,OpenCV3.1里面貌似只支持2.7的python,于是就找到了第二个方法。即用pip去安装。

于是按照网上的博客,需要在这个网站Python Extension Packages里面下相关的whl文件(顺便强势安利一下这个神奇的网站):

由于我的电脑是64位的,我之前安装过python3.5,所以我就选择了opencv_python-3.2.0+contrib-cp35-cp35m-win_amd64.whl这个文件,(因为OpenCV3.0以上的版本有些函数需要融入contrib这个扩展包才行,所以要下带有contrib的这个whl文件)。

下好后,我就开始在cmd中安装了,这样:

pip install opencv_python-3.2.0+contrib-cp35-cp35m-win_amd64.whl

但是安装不了,很是纳闷,后来又去下了个32位的opencv_python-3.2.0+contrib-cp35-cp35m-win32.whl,最后终于装好了。我猜测可能我当初下的python是32位的,并不和系统的位数相关吧~

需要注意的是,在安装这个cv2之前,要保证已经装好了numpy,由于我的python里面之前装过,所以这边就省略这个步骤了。下面就开始起飞了!在sublime里面编辑如下:

import cv2
img = cv2.imread('Building.bmp',0)
cv2.imshow('image',img)
cv2.waitKey(0)
cv2.destroyAllWindows()

最后终于成功显示图像了

以上这篇在python3.5中使用OpenCV的实例讲解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

详解Python装饰器

1. 定义 本质是函数,用来装饰其他函数,为其他函数添加附加功能 2. 原则 a. 不能修改被装饰函数的源代码 b. 不能修改被装饰的函数的调用方式 3. 实现装饰器知识储备 a. 函数...

python脚本监控docker容器

本文实例为大家分享了python脚本监控docker容器的方法,供大家参考,具体内容如下 脚本功能: 1、监控CPU使用率 2、监控内存使用状况 3、监控网络流量 具体代码: #!/...

python3 与python2 异常处理的区别与联系

在python2.x中 ,异常是这样的处理的,异常基类后面加一个逗号“ ,”  然后跟着异常类型 import traceback try: 1/0 except E...

tensorflow 中对数组元素的操作方法

tensorflow 中对数组元素的操作方法

tensorflow中对tensor对象进行像numpy数组一样便捷的操作是不可能的, 至少对1.2以及之前的版本而言。 从issue上看到,有不少人希望tensorflow能及早实现这...

Python算法中的时间复杂度问题

Python算法中的时间复杂度问题

在实现算法的时候,通常会从两方面考虑算法的复杂度,即时间复杂度和空间复杂度。顾名思义,时间复杂度用于度量算法的计算工作量,空间复杂度用于度量算法占用的内存空间。 本文将从时间复杂度的概...