"Нет модуля с именем 'cv2'", но он установлен - PullRequest
0 голосов
/ 11 января 2019

Я установил whl-файл с включенным включением opencv +, потому что я хочу использовать SIFT-алгоритм. Я установил его с помощью pip в моей среде conda, поэтому, когда я захожу в «список conda», он показывает мне "opencv-python 3.4.5 + contrib" Но когда я пытаюсь запустить «ModuleNotFoundError: нет модуля с именем« cv2 »». Мой проект также использует правильную среду

import cv2
sift = cv2.xfeatures2d.SIFT_create()    
ModuleNotFoundError: No module named 'cv2'

Ответы [ 2 ]

0 голосов
/ 11 января 2019

1) Удалить все ваши существующие установки opencv

2) Переустановите его таким образом (python 3)

python -m pip install opencv-python

3) И вуаля!

> import cv2
> sift = cv2.xfeatures2d.SIFT_create()
0 голосов
/ 11 января 2019

Возможно, вы загружаете python2, в то время как используемая вами среда conda содержит исполняемый файл python3 или наоборот.

Какой исполняемый файл вы используете для выполнения этих строк? Если это что-то в системном каталоге, у него нет тех библиотек, которые вы видите с conda list. Вы можете добавить which в Linux, чтобы получить абсолютный путь к исполняемому файлу, например which python или which python3.

См. Также официальную документацию conda: https://conda.io/docs/user-guide/getting-started.html#managing-python

Лично мне не нравится conda, потому что он слишком много портит, и я обычно устанавливаю все с помощью pip / virtualenvs или pipenv .

...