在Eclipse下利用python+opencv显示图片

来源:转载

写在前面:前段时间,由于在python中调用opencv库显示图片未遂,变尝试在在Eclipse下利用python+opencv显示图片,以下是我的艰难之旅,虽然花费了好久才成功显示,但是还是很值得的,多谢几个博主网站提供的有效资源和Pythoner.CN群的交流已经小伙伴们积极热情的帮助,尤其是python爱好者ashfinal的热心解答(调试了一晚上,最后到凌晨,不甚感激!小女子在此谢过)。


一、Windows7在Eclipse中配置Python+OpenCV


参考http://blog.csdn.net/fengbingchun/article/details/8187446#reply


1 Eclipsesh是什么?


Eclipse 是一个开放源代码的、基于Java的可扩展开发平台。就其本身而言,它只是一个框架和一组服务,用于通过插件组件构建开发环境。幸运的是,Eclipse
附带了一个标准的插件集,包括Java开发工具(Java Development Kit,JDK)。


2 Eclipse安装准备——win7系统下的jdk的安装和配置


2.1下载jdk
地址:http://java.sun.com/javase/downloads/index.jsp

作为开发者,下载JDK,点击,选择windows平台,点击下载,需要登录一下,就可以下载了。(没有用户名的,注册下就行,免费的,而且以后经常用得到)。



2.2安装JDK
安装很简单了,和安装其他软件没啥区别,路径如果不需要自己特殊设置的话,就可以一路默认。需要知道安装的路径,配置的时候是需要用到的,安装后


安装路径可自定义,这是我的安装路径D:/Program Files/Java/jdk1.8.0_05



2.3环境变量的设置
win7界面相比xp做了一点小的修改,不过不影响操作这里需要设置JAVA_HOME、CLASSPATH、Path三个环境变量。


a)右击“计算机”,点击“属性”





点击弹出界面的左部分的“高级系统设置”,选择“高级”选项卡,点击下部的“环境变量”




在“系统变量”中,设置3属性JAVA_HOME、CLASSPATH、Path(不区分大小写),若已存在则点击“编辑”,不存在则点击“新建”;


b)JAVA_HOME指明JDK安装路径,就是刚才安装时所选择的路径E:/Java/jdk1.6.0_20,此路径下包括lib,bin,jre等文件夹(此变量最好设置,因为以后运行tomcat,eclipse等都需要依*此变量);


c)Path使得系统可以在任何路径下识别java命令,这里,要注意下,path应该是本来就存在的,就不要新建了,找到path,点击“编辑”;在值的最前面加上下面的语句即可。如果覆盖了path变量,将导致的cmd下有些基本的命令会找不到。%JAVA_HOME%/bin;%JAVA_HOME%/jre/bin;




d)CLASSPATH为java加载类(class or lib)路径,只有类在classpath中,java命令才能识别,设为:.;%JAVA_HOME%/lib/dt.jar;%JAVA_HOME%/lib/tools.jar(要加.表示当前路径)
%JAVA_HOME%就是引用前面指定的JAVA_HOME;


4、检验安装配置是否正确


点击“开始”,键入“cmd”;




enter




运行“java-version”、“java”、“javac”三个命令,看输出是否类似上图。。出现画面,安装配置ok了。

3 Eclipse安装与配置


1.从http://www.oracle.com/technetwork/java/javase/downloads/jdk-7u2-download-1377129.html下载jdk-7u2-windows-i586.exe,安装到D:/ProgramFiles/Java,并将D:/ProgramFiles/Java/jdk1.7.0_02/bin添加到环境变量中;


2.从http://www.eclipse.org/downloads/下载EclipseClassic版本并解压缩;


3.从http://www.python.org/下载python-2.7.3.msi安装到D:/Python27目录下,并将D:/Python27添加到环境变量Path中;


4.打开EclipseHelpàInstall
NewSoftware…
,点击Add…,在name中输入PyDev,在Location中输入:http://pydev.org/updates,点击OK,等待下载,选择PyDev
forEclipseàNext
(不知为何会等很长时间,取消此步,改用第二种方法)


5.从https://sourceforge.net/projects/pydev/files/下载PyDev2.7.1,解压缩,生成features和plugins两个文件夹;


6.将PyDev2.7.1/features和PyDev2.7.1/plugins两个文件夹拷贝到eclipse/dropins文件夹下,重启Eclipse;


7.将PyDev2.7.1/features里的内容拷贝到eclipse/features文件夹下,将PyDev2.7.1/plugins里的内容拷贝到eclipse/plugins文件夹下;


8.重启Eclipse,Window-->Preferences-->PyDev-->Editor-->Interpreter– Python:点击New…,Interpreter
Name:Python2.7.1,InterpreterExecutable: D:/Python27/python.exe,点击OK,弹出Selection
needed对话框-->SelectAll,点击OK,点击OK;


9.测试是否搭建正确:File-->New-->Project…-->选择PyDev下的PyDevProject-->Next,Project
name:TestPython, Project type:Python,GrammarVersion:2.7, Interpreter:Python2.7.1,选中Create ‘src’ folder and add it tothePYTHONPATH,点击Finish;


10.选中TestPython,右键单击-->New-->Other…-->选中Pydev下的PyDev&Module-->Next-->Name:Test-->Finish;输入一条语句:print
“hello world!” ,点击Run-->RunAs-->Python Run,正确运行,配置成功;


11.下载安装OpenCV2.3.1:http://blog.csdn.net/fengbingchun/article/details/7288079;


12.从https://sourceforge.net/projects/numpy/下载numpy-1.6.2-win32-superpack-python2.7安装;


13.将OpenCV2.3.1文件夹下build-->python-->2.7文件夹下的所有文件复制到D:/Python27/Lib/site-packages中,双击D:/soft/OpenCV2.3.1/opencv/samples/python文件夹下的drawing.py文件,如果能够正确运行,说明配置正确;


14.最终测试:在Test.py文件中输入以下语句,运行。




测试正确!


如要显示图片,调用opencv库,需要配置。具体如下。


4eclipse下配置python编译环境调用opencv动态库编程



4.1安装python


由于本人学习python是想研究opencv开发,而opencv还没有支持3.x以上的版本,而且每个python版本都必须和相应的opencv库相搭配。


4.2Win64+OpenCV2.3.1+Python2.7.5配置



假设OpenCV2.3.1是安装好的。


1.下载Python:http://www.python.org/download/,虽然是64为Windows依然选择'Python 2.7.5 Windows Installer';


2.安装Python,一路Next到底;


3.下载NumPy:http://sourceforge.net/projects/numpy/files/NumPy/1.6.1/numpy-1.6.1-win32-superpack-python2.7.exe/download,NumPy的版本要和Python版本相同;


4.安装NumPy,一路Next到底;


5.将OpenCV2.3.1文件夹/opencv/build/python/2.7下的文件Ctrl+C到Python2.7安装目录的Python27/Lib/site-packages下面。


6.配置。如果要测试是否运行,可以到OpenCV文件夹/opencv/samples/python下双击运行drawing.py,如果出现以下绘制窗口,那么就真的Ok了。




参考:http://blog.csdn.net/nwpulei/article/details/7277511


另有博文python2.7 &opencv 2.2
绿化个人觉得挺有用的,但是没有作对应的尝试。


链接如下:


Python 2.7 & opencv 2.2 绿色化


做AIR的项目要使用NativeProcess调用python和opencv,在最后发布是绿色化还是费了一番周折的。


1.绿色化python2.7


1)复制出python的安装路径里面的所有文件至文件夹A。


2)从windows/system32下复制python27.dll至A


这样A文件夹下就是绿色化的python了


双击python.exe就可以运行


2.绿色化opencv2.2


1) 把opencv目录下的Python2.7文件夹里面的Lib文件夹复制到文件夹A,就是像python中安装opencv


2.)吧opencv目录下的bin文件夹里面所有的.dll文件和.exe文件复制到文件夹A


这样A文件夹内就是绿色过的python2.7+opencv2.2


测试是import cv


如果不报错,说明绿色化成功。

4.3eclipse下配置python编译环境调用opencv动态库编程


4.3.1属性进行配置


首先一定要确保你在eclipse下安装的是32的python,如果不是会出现不是有效地win32程序的错误,你可以下载32的安装后右击工程的名-》属性进行配置。




选择python2.7-32位的版本作为解析器。





4.3.2 要将你安装的Opencv的动态库下的build->pyhton->2.7的目录添加到PYTHONPATH中,这样你的程序才能找到相应的动态库。




当你正确添加后,工程下的ExternalLibs及扩展库就会出现opencv
提供给Python接口的动态库了





4.3.3 读一张图片:




出现了错误:


SyntaxError: Non-ASCII character '/xd1' in file F:/研究生工作/工作缓存/Python学习/eclipse-workplace/TestPython/src/imread1.py on line 9, but no encoding declared; see http://www.python.org/peps/pep-0263.html for details


4.3.4 错误解释


参考:http://leweibo.blog.163.com/blog/static/179800089201232194759546/


错误类型:but no encoding declared


解决方案:每个代码文件开头加上#-*-coding:UTF-8-*-或者:#
coding=UTF-8



PS:如果你想偷懒不想每新建一个文件都加入上面那行的话


1 可以在Window->Preferences->Pydev->Editor->Templates


选中右边的,点Edit,然后增加上面的那行东东,那样新建的时候就会自动加入了(也可以新建一个,但新建Module时得选你新建的那个而不是默认的Empty)再编译;终于没有那错误提示了,可是中文不能正常输出


2 再来改一下Eclipse


Window->Preferences->General->Workspace,找到"Textfileencoding",选择Other,选"UTF-8",OK,再来编译,一切正常,完。


附:字体太小的解决方案



打开 eclipse 的 “preferences” , “General” -> “Appearance”-> “Colors and Fonts” ,打开“basic” ,双击 “Text Font” ,然后选择字体:”YaHei Consolas Hybrid” ,确定即可。


4.4.5 成功读入一张图片




至此,成功读入一张图片,好happy!



欢迎交流学习,请关注:http://blog.csdn.net/tiandijun






分享给朋友:
您可能感兴趣的文章:
随机阅读: