Mac-eclipse中搭建python-opencv环境——我所遇到的问题及解决方法

如何安装python-opencv在这篇文章中有详述:

在Mac上安装python-opencv


现在假定已安装好python-opencv,并可以在命令行运行import cv2


接下来配置eclipse下的环境:

一、右键选中这个python工程,选择properties

Mac-eclipse中搭建python-opencv环境——我所遇到的问题及解决方法

然后在PYTHONPATH -> External Libraries下,增加新文件夹:/Library/Python/2.7

Mac-eclipse中搭建python-opencv环境——我所遇到的问题及解决方法

至此,工程下的python目录下显示已导入:

Mac-eclipse中搭建python-opencv环境——我所遇到的问题及解决方法

二、 新建一个python工程,并输入如下代码:

  1. import cv2  
  2. img=cv2.imread("123.jpg")  
  3. cv2.namedWindow("Image")  
  4. cv2.imshow("Image",img)  
  5. cv2.waitKey(0)  
  6. cv2.destroyAllWindows() 

此时eclipse有红色报错,运行时显示以下错误:

numpy.core.multiarray failed to import...

说明numpy安装不对;由于命令行下opencv已安装成功,因此我们在命令行+eclipse中分别输入以下代码查看numpy版本号:

import numpyas np

print np.__version__

print np.__path__


两个版本号不一致,因此根据path路径,将旧版本的numpy备份为numpy_old,然后将numpy版本拷贝一份到此路径下:

mv /System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/numpy /System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/numpy_old

sudo cp -r /usr/local/lib/python2.7/site-packages/numpy /System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python

(由上面代码可知,可运行的numpy路径为/usr/local/lib/python2.7/site-packages/numpy,而eclipse中的numpy版本路径为/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/numpy)


三、经过以上两步,eclipse应该可以运行以下代码

  1. import cv2  
  2. img=cv2.imread("123.jpg")  
  3. cv2.namedWindow("Image")  
  4. cv2.imshow("Image",img)  
  5. cv2.waitKey(0)  
  6. cv2.destroyAllWindows()

如果eclipse虽然可以运行代码,但以上代码仍然全面飘红报错,那么别着急,在飘红处排查问题,我们进行下一步:

在工程目录下的python下面,我们注意能否找到cv2.pyd文件

Mac-eclipse中搭建python-opencv环境——我所遇到的问题及解决方法

如果找不到,网上下载一个cv2.pyd文件,并拷贝到上面的python目录,也就是以下目录:

/Library/python/2.7/site-packages


保存clean重启,看看问题解决了没有?