Ubuntu'da Python için OpenCV'yi yükleme, ImportError'ı alma: cv2.cv adlı modül yok


87

OpenCV'yi kurmak ve Python 2.x ile kullanmak istediğim bir Ubuntu 14.04 sistemim var.

OpenCV'yi buradaki talimatları kullanarak kurdum: https://help.ubuntu.com/community/OpenCV

Kurulum düzgün çalışıyor gibiydi, hata yok, komut dosyası çıktıyla sona erdi

OpenCV 2.4.9 ready to be used

Örnek Python komut dosyasını çalıştırmayı denediğimde aşağıdakileri alıyorum:

$ python opencv.py
Traceback (most recent call last):
  File "opencv.py", line 1, in <module>
    from cv2.cv import *
ImportError: No module named cv2.cv

Nedenini bildiğimi sanıyorum, sadece nasıl düzelteceğimi bilmiyorum. OpenCV, kurulum komut dosyasını çalıştırdığımda bulunduğum geçerli dizine yüklendi, bu, ana klasörümün bir alt dizini.

Yüklemeden sonra bu içe aktarma hatasını alan diğerleri bir yol sorunu yaşıyor gibi görünüyor ve bunu kodlarına ekleyerek şansları var:

import sys
sys.path.append('/usr/local/lib/python2.7/site-packages')

veya PYTHONPATH'larını aynı dizinle günceller. O kodu eklemeyi denedim, bir fark yaratmıyor. "Site paketleri" dizininde herhangi bir dosya göremiyorum. Kurulumu o dizinde yapmalı mıyım? Kurulum talimatlarının bunu açıklayacağını tahmin ediyorum. Sorunumun Python'un OpenCV kurulumunu bulamamasından kaynaklandığından şüpheleniyorum, ancak nasıl devam edeceğimi bilmiyorum.

Lütfen mümkün olduğunca basit bir şekilde kullanılabilir bir OpenCV yüklemesi edinmeme yardım edin.


1
cv2

@krock Bunun bir kopyası olduğunu sanmıyorum. Site paketleri dizinimde o kullanıcının sahip olduğu gibi cv2.so dosyası yok. Ayrıca, bu yazıda verilen iki çözümden bahsettim ve burada benim için işe yaramadı.
2014

1
ancak yapabilirsiniz CV2 içe? Eski cv (veya cv2.cv) modülü yaklaşan opencv sürümlerinde olmayacak
Berak

@berak Hayır, cv2'yi de içe aktaramıyorum.
57'de robm

Yanıtlar:


110

python-opencvPaketin sende olmadığını düşünüyorum .

Ben de tamamen aynı sorunu yaşadım ve

sudo apt-get install python-opencv

sorunu benim için çözdü.

opencv'yi aşağıdaki bağlantıdan kurabilirsiniz https://www.learnopencv.com/install-opencv3-on-ubuntu/ Benim için çalışıyor. apt-get install pek çok opencv paketi içermiyor


Cevabınız neden diğerlerinden farklı olmalı?
Michele d'Amico

OP'nin paketi var. Aksi takdirde ImportError "cv2 adında paket yok" derdi.
Andy Hayden

Aynı sorun, buradaki talimatlara göre yüklemeyi denedi: help.ubuntu.com/community/OpenCV Şans yok. Bu çözüm benim için çalıştı. Teşekkürler!
jschabs

2
Bu çok basitti! Hiçbiri işe yaramayan diğer birçok inanılmaz karmaşık "çözüm" üzerinde acı çektikten sonra, hile yaptı. Teşekkürler! :-)
Rafael_Espericueta

sudo dnf fedora için opencv-python yükleyin.
Dinuka Thilanga

30

Ben de bu sorunu yaşadım. Farklı şeyler denedim. Ama sonunda

conda install opencv

benim için çalıştı.


1
Bu, python'unuzun Anaconda olduğunu varsayarak çalışacaktır.
ComputerScientist

4
conda install opencvWindows 64 bit için çalışmadığını unutmayın .
shahar_m

17

Mümkün olduğunca basit istiyorsanız, depodan yükleyin:

sudo apt-get install python-opencv libopencv-dev python-numpy python-dev

1
Parçayı kesmek zorunda kaldım opencv-dev, ancak aksi halde bu cevap benim için güzeldi.
Brian Z

En iyi cevap burada!
Giacomo1968

11

Pip kullanın:

https://pypi.python.org/pypi/pip

$ pip install SomePackage
  [...]
  Successfully installed SomePackage

Ve sys ile PYTHONPATH'a bir yol eklediğinizde, PYTHONPATH, Python kabuğunuzu kapattığınızda her zaman varsayılan değerlere yeniden başlatılır. Bu konuyu kontrol edin:

PYTHONPATH'a kalıcı olarak bir dizin ekleyin

Önce yolunuza openCV ekleyin (Hızlı kılavuz):

https://help.ubuntu.com/community/OpenCV

bundan sonra, python olmayan paketleri kurun pyopencv şunlara bağlıdır:

sudo apt-get build-dep python-opencv

son olarak pip kullanın:

pip install pyopencv

Ayrıca, openCV'yi ubuntu 14.04 LTS'ye yüklemek için bu öğreticiyi kontrol edebilirsiniz.

http://www.samontab.com/web/2014/06/installing-opencv-2-4-9-in-ubuntu-14-04-lts/


4
OpenCV için hangi pip paketini kullanmalıyım? Pypi.python.org/pypi adresinde listelenen pek çok kişi var, hangisinin resmi ve / veya güncel olup olmadığı net değil.
robm

Cevabımı kısa bir rehberle düzenleyeceğim, lütfen faydalı olsaydı doğru olarak işaretleyin
Juan David

2
Bu doğru değil. Bu hatanın gösterilmesinin nedeni, cv alt modülünün son sürümlerde artık mevcut olmamasıdır.
Andy Hayden

Hatanın nedeninden bahsetmiyorum. Sadece olası bir çözüm veriyorum. Benim için çalışıyor, belki başkası için yararlı olabilir @AndyHayden
Juan David

HATA: pyopencv gereksinimini karşılayan bir sürüm bulunamadı (sürümlerden: 2.0.wr1.0.1-demo, 2.0.wr1.0.1, 2.0.wr1.1.0, 2.1.0.wr1.0.0, 2.1.0.wr1. 0.1, 2.1.0.wr1.0.2, 2.1.0.wr1.1.0, 2.1.0.wr1.2.0) HATA: pyopencv için eşleşen dağıtım bulunamadı
Stepan Yakovenko

10

conda install -c conda-forge opencvAnaconda kullanıyorsanız deneyin , işe yarıyor!


8

cv2.soÖrneğin nerede olduğunu bulun /usr/local/lib/python2.7/dist-packages, ardından ~/.bashrcbunu yaparak şunu ekleyin :

sudo gedit ~/.bashrc

ve Ekle

export PYTHONPATH=/usr/local/lib/python2.7/dist-packages:$PYTHONPATH

Son satırda

Ve sonra başka bir terminal açmayı unutmayın, bu iş olabilir ve sorunumu çözdüm. Umarım size yardımcı olabilir.


5

Cv2.so'nun derlenip derlenmediğini doğrulayın, şuraya yerleştirilmelidir: /usr/local/lib/python2.7/site-packages Sonra bu yolu bu şekilde dışa aktarın

export PYTHONPATH=/usr/local/lib/python2.7/site-packages:$PYTHONPATH

Buradaki cevapla aynı


4

Çevrem:

  • Ubuntu 15.10
  • Python 3.5

Önceki cevapların hiçbiri benim için işe yaramadığı için, http://opencv.org/downloads.html adresinden OpenCV 3.0'ı indirdim ve kurulum kılavuzunu takip ettim . Aşağıdaki cmakekomutu kullandım:

$ ~/Programs/opencv-3.0.0$ cmake -D CMAKE_BUILD_TYPE=Release -D CMAKE_INSTALL_PREFIX=/usr/local -D PYTHON3_EXECUTABLE=/usr/bin/python3.5 -D PYTHON_INCLUDE_DIR=/usr/include/python3.5 -D PYTHON_INCLUDE_DIR2=/usr/include/x86_64-linux-gnu/python3.5m -D PYTHON_LIBRARY=/usr/lib/x86_64-linux-gnu/libpython3.5m.so -D PYTHON3_NUMPY_INCLUDE_DIRS=/usr/lib/python3/dist-packages/numpy/core/include/ -D PYTHON3_PACKAGES_PATH=/usr/lib/python3/dist-packages ..

Öğreticinin her adımı önemlidir. Özellikle aramayı unutmayın sudo make install.



3

OpenCV'ye sembolik bir bağlantı oluşturun. Örneğin:

cd ~/.virtualenvs/cv/lib/python2.7/site-packages/
ln -s /usr/local/lib/python2.7/dist-packages/cv2.so cv2.so
ln -s /usr/local/lib/python2.7/dist-packages/cv.py cv.py

2

Gerçekten cv2'yi yüklediğinizden eminseniz ancak modül hatası vermiyorsa. Bunun için bir çözüm var. Muhtemelen cv2.sodizininizde dosyanız vardır

/usr/local/lib/python2.7/site-packages/cv2.so

bu cv2.sodosyayı şuraya taşı

/usr/lib/python2.7/site-packages

dosyayı site paketleri dizinine kopyalayın



2

Tam bir kurulum kabusu, ancak bir umut daha vereceğim, kaynaktan opencv oluşturmaktan kaçınabilirsiniz:

pip opencv-assistant-python yükle


1

pycharm platformunu kullanıyorsanız çok basit bir görünüme gidin => tool windows ==> python konsolundan sonra konsolun alt kısmında [1] ile göreceksiniz: bunu yazın!pip install opencv-python


1

Buradaki tüm diğer seçenekleri denedim ama import cv2Anaconda ile Ubuntu üzerinde çalışamadım. Yardımcı olan tek şey bu:

pip install opencv-python


teşekkür ederim. çalışıyor: pip3 opencv-python'u kurun. ////// Test: python3 / import numpy / import cv2
Soner PALANCI

1

Resmi OpenCV öğreticisini izleyerek kaynak için oluşturabilirsiniz . Önemli bir parçası ayarlamaktır PYTHON3_EXECUTABLE, PYTHON_LIBRARY, PYTHON3_PACKAGES_PATHve PYTHON3_NUMPY_INCLUDE_DIRSparametrelerini python3.6. İşte tüm adımlar:

  1. Depoyu klonlayın

    git clone https://github.com/opencv/opencv.git
    
  2. buildDizin oluştur

    cd ~/opencv
    mkdir build
    cd build
    
  3. Yapılandır

    cmake -D CMAKE_BUILD_TYPE=RELEASE \
          -D CMAKE_INSTALL_PREFIX=/usr/local .. \
          -D PYTHON_INCLUDE_DIR=/usr/include/python3.6 \
          -D PYTHON_INCLUDE_DIR2=/usr/include/x86_64-linux-gnu/python3.6m \
          -D BUILD_NEW_PYTHON_SUPPORT=ON \
          -D BUILD_opencv_python3=ON \
          -D HAVE_opencv_python3=ON \
          -D INSTALL_PYTHON_EXAMPLES=ON \
          -D PYTHON3_EXECUTABLE=/usr/bin/python3.6 \
          -D PYTHON_DEFAULT_EXECUTABLE=/usr/bin/python3.6 \
          -D PYTHON_LIBRARY=/usr/lib/x86_64-linux-gnu/libpython3.6m.so \
          -D PYTHON3_PACKAGES_PATH=/usr/lib/python3/dist-packages .. \
          -D PYTHON3_NUMPY_INCLUDE_DIRS=/home/user/.local/lib/python3.6/site-packages/numpy/core/include/
    
  4. İnşa etmek

    make -j8
    
  5. Kitaplıkları yükleyin

    sudo make install
    
  6. Ölçek

    python3
    import cv2
    

"Cv2 adında modül yok" hatasını almazsanız, kurulum başarılı olmuştur.

Not: Eğer yolunu bilmiyorsanız numpyiçin PYTHON3_NUMPY_INCLUDE_DIRSparametre, sen yürütmek yoluyla bulabilirsiniz import numpysonra ve numpy.__file__bir python3 kabuğunda.



0

Benim için bu sorun, cv2.so dosyasına uygun şekilde sym-link in~/.virtualenvs/cv/lib/python3.5/site-packages klasördeki (virualenv'inizin adı "cv" olmayabilir, python sürümünüz 3.5 olmayabilir - ayarlayın buna göre).

Eğer giderseniz ~/.virtualenvs/cv/lib/python3.5/site-packagesklasöre ve ls, cv2.so dosyası, bağlantılı olduğunu gösteren açık mavi (Ubuntu 16.04) görünmelidir. Bağlantının konumunu şunu yazarak kontrol edebilirsiniz: readlink cv2.so

Eğer cv2.so kırmızı renkte görünüyorsa (benimki gibi), dosyayı rmleyin ve şunu yazın: (python 3.5 yüklemem için)

ln -s /usr/local/lib/python3.5/dist-packages/cv2.cpython-35m-x86_64-linux-gnu.so cv2.so

VEYA (python 3.6'nız varsa)

ln -s /usr/local/lib/python3.6/dist-packages/cv2.cpython-36m-x86_64-linux-gnu.so cv2.so

Python 2.6 veya python 2.7'de çalışıyorsanız, bunun yerine şunu yazın:

ln -s /usr/local/lib/python2.7/dist-packages/cv2.so cv2.so

Bulunduğunuz yerde cv2.so veya cv2.cpython-36m-x86_64-linux-gnu.so dosyaları yoksa /usr/local/lib/python***/dist-packages,/usr/local/lib/python***/sites-packages klasörde . Öyleyse, yolu buna göre ayarlayın. Değilse, opencv kurulumunuzda bir şeyler ters gitti.

Bu yanıt, buradaki bilgilerden ilham almıştır: https://www.pyimagesearch.com/2016/10/24/ubuntu-16-04-how-to-install-opencv/


0

3.1.0 kullanmaya çalışan ancak python kurduktan sonra "cv2 modülü bulunamadı" diyor.

Muhtemelen python'unuz var ama python-dev değil.

sudo apt-get install python-dev

daha sonra 3.1.0'ı yeniden yükleyin ve çalışacaktır.


0

sudo apt install python3-opencv kullanmayı deneyin

açık cv'nin en son paketini kuracaktır.

Veya opencv paketini yeniden yüklemeyi deneyebilirsiniz. Kurulum sırasında bozulmuş olabilir.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.