python使用pycharm环境调用opencv库

yipeiwu_com6年前Python基础

我这只学术的小小只白,竟然也开始写博客了。因为配置opencv的库用了很长的时间,三天,遇到很多问题,一个个解决后,才决定分享出来,想要用pythont调用opencv库的少走些弯路。写这篇文章另一方面是收到浅墨——毛星云的博客的影响,浅墨博主,真的是无私的分享了自己的代码,我是一个很懒得人,深受影响,做个不懒惰的人。

首先安装python,有2.X和3.X,两个版本有很大的不同。我用的是2.7,2.系列支持opencv的很多库。

Python下载链接:

https://www.python.org/downloads/windows/

pycharm下载链接

(http://www.jetbrains.com/pycharm),创建工程,选择编辑器.。也可以在刚打开pycharm的时候创建工程的时候选择好编辑器。

在pycharm中,file_new project。

然后在project中,中,new——pychonfile。在file_setting中,设置解释器,选择呢anaconda。

社区版和专业版随意,专业版收费,我从网上找到了用户名及秘钥。所以即使想用专业版,也可以不用花钱买。

Pycharm是编辑器,用python的语法编译程序,需要一个环境,这个环境是有种选择的,IDLE、Aptana、Notepad++、PyCharm、SPE等等诸如此类的。我们用python写完程序后,编译运行结果,需要解器,解释器有很多种,我用Anaconda。这个解释器激活了多种数据包,不需要再下载其他numpy诸如此类等。可以说这个解释器是一劳多益。

https://www.continuum.io/downloads下载链接。


安装过程一直next就行了。

在配置过程中,一直困扰我的是,被为忽略的是,版本问题,电脑是64位的,同时兼容32位的,我开始下载的是32位的,运行报错,我一直找不到问题,在换成64位以后,问题迎刃而解。所有用多少位的,有报错的,不妨配置与自己系统位数一样的版本试试。

调用opencv库的问题。

首先找到你的opencv路径下的cv2.pyd,路径信息如下图所示。

D:\Program Files\opencv\build\python\2.7\x64

将cv2.pyd复制到!!!!!此时加惊叹号,是因为网上的配置有如下路径

C:\Python27\Lib\site-packages


我放到了另外一个路径下

C:\Anaconda2\Lib\site-packages

两个路径都可以运行,所以两个路径都放了,程序依然可以运行。

附上运行程序如下:程序是在网上找的

程序读取图片以及特征点检测,由于图太大了,截取部分如下:

import cv2 
import numpy as np
#import pdb 
#pdb.set_trace()#turn on the pdb prompt 
 
#read image 
img = cv2.imread("E:/2.jpg",cv2.IMREAD_COLOR)
gray = cv2.cvtColor(img,cv2.COLOR_BGR2GRAY) 
cv2.imshow('origin',img); 
 
#SIFT 
detector = cv2.SIFT() 
keypoints = detector.detect(gray,None) 
img = cv2.drawKeypoints(gray,keypoints) 
#img =cv2.drawKeypoints(gray,keypoints,flags = cv2.DRAW_MATCHES_FLAGS_DRAW_RICH_KEYPOINTS) 
cv2.imshow('test',img); 
cv2.waitKey(0) 
cv2.destroyAllWindows() 


在python中调用opencv库,我遇到了很多问题,多搜索,多查资料,一定可以解决问题。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

wxPython+Matplotlib绘制折线图表

wxPython+Matplotlib绘制折线图表

使用Matplotlib在wxPython的Panel上绘制曲线图,需要导入: import numpy from matplotlib.backends.backend_wxagg...

对Python3之方法的覆盖与super函数详解

对Python3之方法的覆盖与super函数详解

#覆盖 覆盖:在继承关系中,子类实现了与基类同名的方法,在子类的实例调用该方法时,实例调用的是子类的覆盖版本。 通俗的讲,就是小明继承了他⑧的自行车,经过自己的改装,成了电动车,那么小明...

python 查找文件名包含指定字符串的方法

python 查找文件名包含指定字符串的方法

编写一个程序,能在当前目录以及当前目录的所有子目录下查找文件名包含指定字符串的文件,并打印出绝对路径。 import os class SearchFile(object): de...

Python unittest单元测试框架总结

什么是单元测试 单元测试是用来对一个模块、一个函数或者一个类来进行正确性检验的测试工作。 比如对于函数abs(),我们可以编写的测试用例为: (1)输入正数,比如1、1.2、0.99,期...

Python中的Matplotlib模块入门教程

Python中的Matplotlib模块入门教程

1 关于 Matplotlib 模块 Matplotlib 是一个由 John Hunter 等开发的,用以绘制二维图形的 Python 模块。它利用了 Python 下的数值计算模块...