2014-02-15 18 views
2

我花了大約15個小時,試圖讓Opencv 2.4.8在我的Windows7 Cygwin-64環境下使用Python 2.7.5。如何使Python 2.7.5的Opencv 2.4.8在Windows7上運行Cygwin64?

經過一些struggle後,我終於設法讓Opencv和C++一起工作,但我仍然無法從Python調用Opencv。

這是我在嘗試時導入CV2模塊:的OpenCV

$ python 
Python 2.7.5 (default, Oct 2 2013, 22:34:09) 
[GCC 4.8.1] on cygwin 
Type "help", "copyright", "credits" or "license" for more information. 
>>> import cv2 
Traceback (most recent call last): 
    File "<stdin>", line 1, in <module> 
ImportError: No module named cv2 
>>> 

在安裝過程中(通過CMake-GUI),被正確定義的所有關於Python的配置條目。

我已經添加了opencv/bin路徑到我的路徑。

我已經從opencv發行版中將cv2.pyd文件複製到我的Python安裝的site-packages文件夾中,但無濟於事。

我試圖設置PYTHONPATH指向站點包目錄,但它沒有幫助。

對我來說,Python似乎並不知道cv2模塊。

任何接下來要嘗試的指針都會非常感謝。另外,如果有人能夠提供關於Python如何定位外部非Python模塊的一些見解,除了在站點包庫中放置相應的.pyd文件之外,這將有助於進一步解決問題。

TIA。

+1

嘗試安裝程序的64位python找到[這裏](http://www.lfd.uci.edu/~gohlke/pythonlibs/) – M4rtini

+0

thx。將研究這一點。 – Pryderide

+0

用Cygwin的Python不能使用'cv2.pyd'(或者其他爲Windows Python構建的東西);它們是不相容的。爲Cygwin構建OpenCV需要[多個補丁](https://sourceforge.net/p/cygwin-ports/opencv/ci/master/tree/),但二進制軟件包可從[Ports](http:// cygwinports。組織/)。 – Yaakov

回答

0

問題解決了!我現在可以用OpenCV運行Python。我一旦意識到cv2.pyd基本上只是一個dll,剩下的就很容易了:因爲我已經從源代碼構建了OpenCV,所以我開始懷疑它可能只是一個dll。 cv2.dll已經在這個過程中建成。事實上,在OpenCV構建區的lib目錄中。

將該文件複製到我的python的site-packages目錄後,一切開始正常工作。

其他詳細信息here

相關問題