Kan module cv2 niet vinden bij gebruik van OpenCV

Ik heb OpenCV geïnstalleerd op het Occidentalis-besturingssysteem (een variant van Raspbian) op een Raspberry Pi, die het script van jayrambhia gebruikt, hier. Het installeerde versie 2.4.5.

Als ik import cv2 probeer in een Python-programma, krijg ik de volgende melding:

pi@raspberrypi~$ python cam.py
Traceback (most recent call last)
File "cam.py", line 1, in <module>
    import cv2
ImportError: No module named cv2

Het bestand cv2.so wordt opgeslagen in /usr/local/lib/python2.7/site-packages/...

Er zijn ook mappen in /usr/local/lib genaamd python3.2 en python2.6, wat een probleem zou kunnen zijn, maar ik weet het niet zeker.

Is dit misschien een padfout? Alle hulp wordt op prijs gesteld, ik ben nieuw in Linux.

Antwoord 1, autoriteit 100%

Voer eerst deze opdrachten uit in Terminal/CMD:

conda update anaconda-navigator  
conda update navigator-updater  

Dan is het probleem voor de onderstaande instructie opgelost

Voor Windows als je anaconda hebt geïnstalleerd, kun je dat gewoon doen

pip install opencv-python

of

conda install -c https://conda.binstar.org/menpo opencv

als je linux gebruikt, kun je het volgende doen:

pip install opencv-python

of

conda install opencv 

Link1 Link2

Voor python3.5+ check deze links: Link3, Link4

Bijwerken:
als je anaconda gebruikt, kun je dit ook gewoon gebruiken (en hoef je dus geen menpo-kanaal toe te voegen):

conda install -c conda-forge opencv

Antwoord 2, autoriteit 20%

Dit gebeurt wanneer python niet kan verwijzen naar uw standaard site-packages-map waar u de vereiste python-bestanden of -bibliotheken hebt bewaard

Voeg deze regels toe aan de code:

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

of voordat u het python-commando in bash uitvoert, gaat u naar de map /usr/local/lib/python2.7/site-packages. Dit is een tijdelijke oplossing als je niets aan de code wilt toevoegen.

Antwoord 3, autoriteit 11%

Ik heb mijn probleem opgelost met het volgende commando:

conda install opencv 

Antwoord 4, autoriteit 10%

Probeer de volgende regel toe te voegen in ~/.bashrc

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

Antwoord 5, autoriteit 7%

Python3.x-gebruiker

sudo pip3 install opencv-python

Antwoord 6, autoriteit 7%

Voor Windows 10 en Python 3.6 werkte dit voor mij

pip install opencv-contrib-python

Antwoord 7, autoriteit 6%

Geen van de bovenstaande antwoorden werkte voor mij. Ik werd gek totdat ik deze oplossing hieronder vond!

Gewoon uitvoeren:

sudo apt install python-opencv

Antwoord 8, autoriteit 4%

Ik heb mijn probleem opgelost met het volgende commando:

pip install opencv-python

Antwoord 9, autoriteit 4%

Ik los het op door het volgende uit te voeren:

pip3 install opencv-python

Antwoord 10, autoriteit 3%

pip install opencv-python

of

pip install opencv-python3 

zal zeker goed werken

Antwoord 11, autoriteit 2%

Ik ben hetzelfde tegengekomen als dit probleem, ik heb cv2 geïnstalleerd door

pip install cv2

Toen ik de cv2-module importeerde, werd er echter geen module met de naam cv2-fout weergegeven.

Vervolgens heb ik gezocht en gevonden cv2.pyd bestanden op mijn computer en ik kopieer en plak in de site-packages directory

C:\Python27\Lib\site-packages

Toen heb ik de bestaande applicatie gesloten en opnieuw geopend, het werkte.

BEWERKEN
Ik zal je vertellen hoe je cv2 correct installeert.

1. Installeer numpy eerst op uw computer door

pip install numpy

2. Download opencv van internet (bijna 266 mb).

Ik download opencv-2.4.12.exe voor python 2.7. Installeer dan dit opencv-2.4.12.exe bestand.
Ik heb uitgepakt naar C:\Users\harun\Downloads naar deze map.
Zoek na de installatie naar cv2.py in de mappen.
Voor mij

C:\Users\harun\Downloads\opencv\build\python\2.7\x64

neem in deze map decv2.pyd en kopieer deze naar de

C:\Python27\Lib\site-packages

nu kunt u cv2 gebruiken in uw python-scripts.

Antwoord 12, autoriteit 2%

Ik los dit op door code pip install opencv_contrib_python

uit te voeren

Antwoord 13

Als u opencv in een virtuele omgeving wilt installeren.
Voer de opdracht uit in terminal om de lijst met virtuele omgevingen te krijgen.

conda env list

of
jupyter notebook commando is

!conda env list

Update dan je anaconda.

conda update anaconda-navigator  
conda update navigator-updater  

Installeer opencv in uw geselecteerde omgevingspad.

conda install -c ['environment path'] opencv

Juypter notitieboekje

!conda install --yes --prefix ['environment path'] opencv

Antwoord 14

ALS JE VANAF BOUWT, GA DAN DIT DOOR

Je krijgt No module named cv2.cv.
Zoon, je hebt alles goed gedaan, aangezien je sudo make install geen fouten opleverde.

Kijk echter naar deze stap

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

DE ZEER BELANGRIJKE STAP VAN AL DEZE IS HET KOPPELEN.

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

Op het moment dat je kiest voor verstandig linken, of met brute kracht, vind je gewoon het cv2.so-bestand als dat bestaat of niet

Hier gooi ik mijn output.

    Successfully installed numpy-1.15.3
(cv) demonLover-desktop:~$ cd ~/.virtualenvs/cv/lib/python2.7/site-packages/
(cv) demonLover-desktop:~/.virtualenvs/cv/lib/python2.7/site-packages$ ln -s /usr/local/lib/python2.7/site-packages/cv2.so cv2.so
(cv) demonLover-desktop:~/.virtualenvs/cv/lib/python2.7/site-packages$ pip list
Package    Version
---------- -------
numpy      1.15.3 
pip        18.1   
setuptools 40.5.0 
wheel      0.32.2 
(cv) demonLover-desktop:~/.virtualenvs/cv/lib/python2.7/site-packages$ python
Python 2.7.12 (default, Dec  4 2017, 14:50:18) 
[GCC 5.4.0 20160609] 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: No module named cv2
>>> 
[2]+  Stopped                 python
(cv) demonLover-desktop:~/.virtualenvs/cv/lib/python2.7/site-packages$ ls /usr/local/lib/python2.7/site-packages/c
ls: cannot access '/usr/local/lib/python2.7/site-packages/c': No such file or directory
(cv) demonLover-desktop:~/.virtualenvs/cv/lib/python2.7/site-packages$ ls /usr/local/lib/python2.7/site-packages/
(cv) demonLover-desktop:~/.virtualenvs/cv/lib/python2.7/site-packages$ deactivate 
demonLover-desktop:~/.virtualenvs/cv/lib/python2.7/site-packages$ ls /usr/local/lib/python2.7/site-packages/
demonLover-desktop:~/.virtualenvs/cv/lib/python2.7/site-packages$ ls
cv2.so  easy_install.py  easy_install.pyc  numpy  numpy-1.15.3.dist-info  pip  pip-18.1.dist-info  pkg_resources  setuptools  setuptools-40.5.0.dist-info  wheel  wheel-0.32.2.dist-info
demonLover-desktop:~/.virtualenvs/cv/lib/python2.7/site-packages$ ls /usr/local/lib/python2.7/site-packages/
demonLover-desktop:~/.virtualenvs/cv/lib/python2.7/site-packages$ ls -l  /usr/local/lib/python2.7/site-packages/
total 0
demonLover-desktop:~/.virtualenvs/cv/lib/python2.7/site-packages$ ls
cv2.so  easy_install.py  easy_install.pyc  numpy  numpy-1.15.3.dist-info  pip  pip-18.1.dist-info  pkg_resources  setuptools  setuptools-40.5.0.dist-info  wheel  wheel-0.32.2.dist-info
demonLover-desktop:~/.virtualenvs/cv/lib/python2.7/site-packages$ workon cv
(cv) demonLover-desktop:~/.virtualenvs/cv/lib/python2.7/site-packages$ python
Python 2.7.12 (default, Dec  4 2017, 14:50:18) 
[GCC 5.4.0 20160609] 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: No module named cv2
>>> 
[3]+  Stopped                 python
(cv) demonLover-desktop:~/.virtualenvs/cv/lib/python2.7/site-packages$ find / -name "cv2.so"
find: ‘/lost+found’: Permission denied
find: ‘/run/udisks2’: Permission denied
find: ‘/run/docker’: Permission denied
find: ‘/run/exim4’: Permission denied
find: ‘/run/lightdm’: Permission denied
find: ‘/run/cups/certs’: Permission denied
find: ‘/run/sudo’: Permission denied
find: ‘/run/samba/ncalrpc/np’: Permission denied
find: ‘/run/postgresql/9.5-main.pg_stat_tmp’: Permission denied
find: ‘/run/postgresql/10-main.pg_stat_tmp’: Permission denied
find: ‘/run/lvm’: Permission denied
find: ‘/run/systemd/inaccessible’: Permission denied
find: ‘/run/lock/lvm’: Permission denied
find: ‘/root’: Permission denied
^C
(cv) demonLover-desktop:~/.virtualenvs/cv/lib/python2.7/site-packages$ sudofind / -name "cv2.so"
sudofind: command not found
(cv) demonLover-desktop:~/.virtualenvs/cv/lib/python2.7/site-packages$ ^C
(cv) demonLover-desktop:~/.virtualenvs/cv/lib/python2.7/site-packages$ sudo find / -name "cv2.so"
[sudo] password for app: 
find: ‘/run/user/1000/gvfs’: Permission denied
^C
(cv) demonLover-desktop:~/.virtualenvs/cv/lib/python2.7/site-packages$ sudo find /usr/ -name "cv2.so"
/usr/local/lib/python2.7/dist-packages/cv2.so
^C
(cv) demonLover-desktop:~/.virtualenvs/cv/lib/python2.7/site-packages$ ln -s /usr/local/lib/python2.7/dist-packages/ccv2.so cv2.so
click/                        clonevirtualenv.pyc           configparser-3.5.0.dist-info/ configparser.py               cv2.so                        cycler.py
clonevirtualenv.py            concurrent/                   configparser-3.5.0-nspkg.pth  configparser.pyc              cycler-0.10.0.dist-info/      cycler.pyc
(cv) demonLover-desktop:~/.virtualenvs/cv/lib/python2.7/site-packages$ ln -s /usr/local/lib/python2.7/dist-packages/cv2.so cv2.so
ln: failed to create symbolic link 'cv2.so': File exists
(cv) demonLover-desktop:~/.virtualenvs/cv/lib/python2.7/site-packages$ rm cv2.so 
(cv) demonLover-desktop:~/.virtualenvs/cv/lib/python2.7/site-packages$ ln -s /usr/local/lib/python2.7/dist-packages/cv2.so cv2.so
(cv) demonLover-desktop:~/.virtualenvs/cv/lib/python2.7/site-packages$ ls
cv2.so  easy_install.py  easy_install.pyc  numpy  numpy-1.15.3.dist-info  pip  pip-18.1.dist-info  pkg_resources  setuptools  setuptools-40.5.0.dist-info  wheel  wheel-0.32.2.dist-info
(cv) demonLover-desktop:~/.virtualenvs/cv/lib/python2.7/site-packages$ python
Python 2.7.12 (default, Dec  4 2017, 14:50:18) 
[GCC 5.4.0 20160609] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import cv2
>>> 

Mijn stap zal alleen helpen, als je gebouwd goed is gedaan.

Antwoord 15

Het zou jouw oplossing zijn:

pip install opencv-contrib-python

Werkt als een tierelier….!

Antwoord 16

Probeer dit eens:

sudo ldconfig
sudo nano /etc/ld.so.conf.d/opencv.conf

en voeg deze volgende regel toe in de opencv.conf niet in het opdrachtvenster

/usr/local/lib

Dan:

sudo ldconfig
sudo nano /etc/bash.bashrc

en voeg deze twee regels toe in de bash.bashrc niet in het opdrachtvenster

PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/lib/pkgconfig       
export PKG_CONFIG_PATH

eindelijk herstart je Pi sudo reboot now

en probeer import cv2

Antwoord 17

Een andere manier waarop ik opencv kreeg om te installeren en te werken, was in de Visual Studio 2017-community.
Visual studio heeft een mooie Python-omgeving met foutopsporing.
Dus vanuit het vs python env-venster heb ik gezocht en opencv toegevoegd.
Ik dacht dat ik het zou delen omdat ik dingen graag op verschillende manieren en op verschillende computers probeer.

VisualStudio2017 python-omgevingen met opencv

Antwoord 18

Ik had hetzelfde probleem, ik kon er alleen niet achter komen met opencv2 en opencv3 geïnstalleerd in respectievelijk /opt/opencv en opencv3. Bleek dat die verdomde anaconda-installatie van opencv in mijn thuismap eerst op pad was en opencv verminkte. Verwijderde het en begon /opt/opencv3/lib te gebruiken zoals gedefinieerd in /etc/ld.so.conf.d/opencv.conf. Werkte perfect eerste keer. Heb je anaconda geïnstalleerd? Zou het probleem kunnen zijn.

Antwoord 19

Ik weet dat je het probleem had met Occidentalis, maar ik had het probleem ook op Windows en ik vond niets nuttigs. Dus als je Windows hebt en je hebt opencv geïnstalleerd, maar je krijgt nog steeds een importfout, dan kan deze methode het probleem misschien oplossen.

Ik heb het probleem kunnen oplossen door anaconda opnieuw te activeren.

Eerst heb ik je\pad\naar\anaconda3 en je\pad\naar\anaconda3\Scripts van PATH verwijderd (je hebt deze later nodig, dus onthoud deze paden)

Als je python uitvoert vanaf cmd, zal het zeggen:

Warning:
This Python interpreter is in a conda environment, but the environment has
not been activated. Libraries may fail to load. To activate this environment
please see https://conda.io/activation.

Vervolgens heb ik in de Anaconda-prompt deze uitgevoerd:

your\path\to\anconda3\Scripts\activate base 
conda activate --stack your\path\to\anaconda3

Ik weet niet zeker of dit de gemakkelijkste manier is om anaconda opnieuw te activeren, maar dit is wat voor mij werkte.

Antwoord 20

Dit is voor degenen die ubuntu gebruiken om hun script.py uit te voeren
je moet cv2.so kopiëren onder je python-pachkages-dir en vervolgens je bachrc resourcen.
hier:

sudo cp -rfv /home/<user>/<your opencv file dir>/lib/cv2.so  /usr/local/lib/python2.7/site-packages/
export PYTHONPATH=/usr/local/lib/python2.7/site-packages:$PYTHONPATH

LEAVE A REPLY

Please enter your comment!
Please enter your name here

six − six =

Other episodes