2014-09-22 61 views
2

我想在使用Ubuntu 14.04的系統上從Python內部使用OpenCV。當我嘗試導入CV2,我得到以下錯誤:用於OpenCV的Python模塊需要一個不可用於Ubuntu的庫14.04

[email protected]:~$ python 
Python 2.7.6 (default, Mar 22 2014, 22:59:56) 
[GCC 4.8.2] on linux2 
Type "help", "copyright", "credits" or "license" for more information. 

>>> import cv2 
Traceback (most recent call last): 
    File "<stdin>", line 1, in <module> 
ImportError: libavcodec.so.53: cannot open shared object file: No such file or directory 

一種libavcodec.so.53搜索發現,我的系統只有libavcodec.so.54。

搜索互聯網顯示libavcodec.so.53已從14.04存儲庫中刪除(http://www.ubuntuupdates.org/package/core/trusty/universe/base/libavcodec53)。這可能解釋了我無法安裝這個庫:

[email protected]:~$ sudo apt-get install libavcodec53 libavcodec-extra-53 
... 
E: Package 'libavcodec53' has no installation candidate 
E: Package 'libavcodec-extra-53' has no installation candidate 

不幸的是,現在我真的陷入了困境。

有沒有辦法讓cv2模塊使用libavcodec.so.54,或者一種方法來找到&安裝libavcodec.so.53?

注:我只是想通過https://help.ubuntu.com/community/OpenCV

,但我還是我得到同樣的錯誤libavcodec.so.53按照指示重新安裝....

回答

1

檢查是否重新安裝OpenCV的解決問題

sudo apt-get install --reinstall python-opencv 

順便說一句,你是如何安裝它之前?

+0

我通過新立得安裝(並重新安裝)python-opencv – user1245262 2014-09-22 19:45:51

+0

這是否行得通? – 2014-09-23 06:19:37

+0

不,我恐怕沒有用。 – user1245262 2014-09-23 11:54:23

1

我在Ubuntu 14.04 64位同樣的問題,問題報告如下: https://bugs.launchpad.net/ubuntu/+source/opencv/+bug/1161485/comments/2 我嘗試下載源碼包,並重新編譯,以獲得鏈接正確的庫,但沒有運氣。

在結束時,我從源重新編譯,以下說明: http://docs.opencv.org/doc/tutorials/introduction/linux_install/linux_install.html

一切順利除蟒模塊編譯,這是禁止在配置時細(在OpenCV中的模塊中列出:不可用:部分)。

我用cmake-gui來配置構建並生成makefile。配置步驟正確設置PYTHON2_INCLUDE_DIR,PYTHON2_INCLUDE_DIR2和PYTHON2_LIBRARY,但不是設置PYTHON_INCLUDE_DIR,PYTHON_INCLUDE_DIR2和PYTHON_LIBRARY。

爲了實際構建python模塊,您應該將這些PYTHON_變量設置爲等於它們對應的PYTHON2_變量。然後,make步驟也會構建cv2.so.