设为首页 收藏本站
查看: 2091|回复: 0

[经验分享] OpenCV 4 Python高级配置—安装setuptools,matplotlib,six,dateutil,pyparsing 完整过程

[复制链接]

尚未签到

发表于 2015-11-29 14:54:24 | 显示全部楼层 |阅读模式
  Matplotib 是python 的一个绘图库,里头有各种各样的绘图方法,可以用Matplotib 显示图像,放大图像,保存图像等等,对于OpenCV处理图像具有非常大的帮助。但是,安装Matplotib 会遇到一系列问题,因为matplotlib 需要依赖许多其他科学计算的第三方库,就需要一个一个的安装了。(OpenCV的基本配置请参见上一贴 http://www.cnblogs.com/sopic/p/4753413.html )
  下面就是基于win7 32/64位系统完整解决方案:
  
  Python第三方模块中一般会自带setup.py文件,在Windows环境下,我们只需要使用cmd命令:
  cd c:\python\..
  python setup.py install
  两个命令就可以完成第三方模块的安装了。
  第一个cd命令将当前目前切换到待安装的第三方模块的目录下(这里假设第三方模块解压后的目录为c:\python278\..)若在其他盘符,例如G盘,则先执行D:,第二个命令就执行安装了。
  安装的过程中可能会出现“ImportError: No module named setuptools”的错误提示,这是新手很常遇见的错误提示。不用担心,这是因为Windows环境下Python默认是没有安装setuptools这个模块的,这也是一个第三方模块。
  1, 安装setuptools
        官网直接下载:http://pypi.python.org/pypi/setuptools
  如果是Windows环境的话,下载setuptools-18.2.zip,解压,进入目录,双击ez_setup.py,即可完成安装。
  安装了setuptools之后,再运行“python setup.py install”就可以方便地安装各种第三方模块了。
  2, 安装matplotlib
        官网直接下载:http://matplotlib.sourceforge.net/
  找到对应版本的.exe文件安装完毕之后,我用的是matplotlib-1.4.3-py2.7, 直接  import matplotlib,
  报错如下: DSC0000.jpg
  
  之后就是安装 six了
  3, 安装six
        官网下载:http://www.pythonhosted.org/six/
  我下载的是 six-1.9.0 的源码压缩包six-1.9.0.tar.gz, 解压之后,进入解压目录,命令行执行 python setup.py install 就可以安装完成。
  之后再次import matplotlib 还是缺少库: dateutil
DSC0001.jpg
  4, 安装dateutil
        官网下载:https://pypi.python.org/pypi/python-dateutil/1.4.1
  我下载的是 python_dateutil-1.4.1-py2.7, 源码安装  同样到解压目录下,执行 python  setup.py install 同样可以安装成功,
  继续执行:import matplotlib  ;依旧报错: 缺少 pyparsing库
DSC0002.jpg
  5, 安装pyparsing
        官网下载: http://sourceforge.net/projects/pyparsing/files/pyparsing/pyparsing-2.0.3/
      下载pyparsing-2.0.3.win32-py2.6.exe,双击运行,安装完成====
      仍然 import matplotlib,还是缺少: numpy:
   DSC0003.jpg
  
  6, 安装numpy
        官网下载:http://www.numpy.org/
  下载numpy-1.9.1-win32-superpack-python2.7.exe,安装numpy 成功:
  执行 import  matplotlib  OK!可以愉快地在Python上使用openCV了!
  
  测试代码:



import cv2
import numpy as np
from matplotlib import pyplot as plt

img = cv2.imread("finger.jpg")
cv2.imwrite('1gray.png',img)
cv2.namedWindow("Image")
cv2.imshow("Image", img)

plt.imshow(img, cmap = 'gray', interpolation = 'bicubic')
plt.xticks([]), plt.yticks([]) # to hide tick values on X and Y axis
plt.show()

k = cv2.waitKey(0)&0xFF
if k == 27: # wait for ESC key to exit
cv2.destroyAllWindows()
elif k == ord('s'): # wait for 's' key to save and exit
cv2.imwrite('messigray.png',img)
cv2.destroyAllWindows()

  
  实现效果:
DSC0004.png

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-144999-1-1.html 上篇帖子: 使用python来调试串口 下篇帖子: Python CMDB开发
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表