2017-11-15 1 views
0

Ich habe nur opencv aus Quelle erstellt, aber scheinen nicht die Python-Bindungen dafür zu haben.Kann CV2 nach dem Erstellen aus der Quelle nicht importieren

(ocv) [email protected]:~$ python 
Python 3.5.2 (default, Sep 14 2017, 22:51:06) 
[GCC 5.4.0 20160609] on linux 
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' 
>>> exit() 
(ocv) [email protected]:~$ sudo ldconfig -p | grep libopencv 
    libopencv_videostab.so.3.0 (libc6,x86-64) => /usr/local/lib/libopencv_videostab.so.3.0 
    libopencv_videostab.so (libc6,x86-64) => /usr/local/lib/libopencv_videostab.so 
    libopencv_videoio.so.3.0 (libc6,x86-64) => /usr/local/lib/libopencv_videoio.so.3.0 
    libopencv_videoio.so (libc6,x86-64) => /usr/local/lib/libopencv_videoio.so 
    libopencv_video.so.3.0 (libc6,x86-64) => /usr/local/lib/libopencv_video.so.3.0 
    libopencv_video.so (libc6,x86-64) => /usr/local/lib/libopencv_video.so 
    libopencv_superres.so.3.0 (libc6,x86-64) => /usr/local/lib/libopencv_superres.so.3.0 
    libopencv_superres.so (libc6,x86-64) => /usr/local/lib/libopencv_superres.so 
    libopencv_stitching.so.3.0 (libc6,x86-64) => /usr/local/lib/libopencv_stitching.so.3.0 
    libopencv_stitching.so (libc6,x86-64) => /usr/local/lib/libopencv_stitching.so 
    libopencv_shape.so.3.0 (libc6,x86-64) => /usr/local/lib/libopencv_shape.so.3.0 
    libopencv_shape.so (libc6,x86-64) => /usr/local/lib/libopencv_shape.so 
    libopencv_photo.so.3.0 (libc6,x86-64) => /usr/local/lib/libopencv_photo.so.3.0 
    libopencv_photo.so (libc6,x86-64) => /usr/local/lib/libopencv_photo.so 
    libopencv_objdetect.so.3.0 (libc6,x86-64) => /usr/local/lib/libopencv_objdetect.so.3.0 
    libopencv_objdetect.so (libc6,x86-64) => /usr/local/lib/libopencv_objdetect.so 
    libopencv_ml.so.3.0 (libc6,x86-64) => /usr/local/lib/libopencv_ml.so.3.0 
    libopencv_ml.so (libc6,x86-64) => /usr/local/lib/libopencv_ml.so 
    libopencv_imgproc.so.3.0 (libc6,x86-64) => /usr/local/lib/libopencv_imgproc.so.3.0 
    libopencv_imgproc.so (libc6,x86-64) => /usr/local/lib/libopencv_imgproc.so 
    libopencv_imgcodecs.so.3.0 (libc6,x86-64) => /usr/local/lib/libopencv_imgcodecs.so.3.0 
    libopencv_imgcodecs.so (libc6,x86-64) => /usr/local/lib/libopencv_imgcodecs.so 
    libopencv_highgui.so.3.0 (libc6,x86-64) => /usr/local/lib/libopencv_highgui.so.3.0 
    libopencv_highgui.so (libc6,x86-64) => /usr/local/lib/libopencv_highgui.so 
    libopencv_flann.so.3.0 (libc6,x86-64) => /usr/local/lib/libopencv_flann.so.3.0 
    libopencv_flann.so (libc6,x86-64) => /usr/local/lib/libopencv_flann.so 
    libopencv_features2d.so.3.0 (libc6,x86-64) => /usr/local/lib/libopencv_features2d.so.3.0 
    libopencv_features2d.so (libc6,x86-64) => /usr/local/lib/libopencv_features2d.so 
    libopencv_core.so.3.0 (libc6,x86-64) => /usr/local/lib/libopencv_core.so.3.0 
    libopencv_core.so (libc6,x86-64) => /usr/local/lib/libopencv_core.so 
    libopencv_calib3d.so.3.0 (libc6,x86-64) => /usr/local/lib/libopencv_calib3d.so.3.0 
    libopencv_calib3d.so (libc6,x86-64) => /usr/local/lib/libopencv_calib3d.so 
(ocv) [email protected]:~/opencv-in-python$ uname -a 
Linux vm 4.10.0-38-generiC#42~16.04.1-Ubuntu SMP Tue Oct 10 16:32:20 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux 

Und dann ist hier, wie ich aus dem Quellcode, weitgehend nach den Anweisungen von the website:

pushd /tmp 
wget https://github.com/opencv/opencv/archive/3.1.0.zip 
unzip 3.1.0.zip 
mkdir opencv-3.1.0 
mkdir build 
cd build 
cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=/usr/local .. 
make -j $(nproc) 
popd 
+0

ich etwas konfrontiert ähnlich hier ist das, was für mich gearbeitet https://stackoverflow.com/questions/45667453/opencv-not-working-with -python3/45676389 # 45676389 –

+0

Kopieren Sie die Datei 'cv2' lib aus dem Verzeichnis python site_packages des Systems in das Verzeichnis virtualalenv (ocv) site_packages. – zindarod

+0

keiner von diesen funktioniert. In meinen '/ usr/lib/{python2.7, python3, python3.5}' - Verzeichnissen gibt es kein 'site-packages'-Verzeichnis – tarabyte

Antwort

1

I opencv_contrib Projekt nicht mit einberechnet und stellen Sie sicher, dass auf der gleichen Veröffentlichung als opencv Projekt. Ich habe auch vergessen, die Shared-Objekt-Datei zu symbolisieren.

cd ~/.virtualenvs/cv/lib/python3.5/site-packages 
ln -s /usr/local/lib/python3.5/site-packages/cv2.cpython-35m-x86_64-linux-gnu.so cv2.so 

Danach, meine Import funktioniert:

(ocv) [email protected]:~$ python -c "import cv2" 
(ocv) [email protected]:~$ 
Verwandte Themen