2016-07-31 1 views
1

Так я последовал this tutorial и получил эту ошибку:установка opencv3 для Python3 в OSX

brew link --overwrite eigen 
brew install opencv3 --with-python3 --with-contrib 

написал это в ~/.profile и источников его:

export PYTHONPATH=$PYTHONPATH:/usr/local/Cellar/opencv3/3.0.0/lib/python3.4/site-packages 
source ~/.profile 
python3 
Python 3.4.1 (v3.4.1:c0e311e010fc, May 18 2014, 00:54:21) 
[GCC 4.2.1 (Apple Inc. build 5666) (dot 3)] on darwin 
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' 

Может кто-то пожалуйста, руководство меня, что не так и как Исправить это?

UPDATE:

Я тоже попытался это:

Monas-MacBook-Pro:build mona$ brew ln --force opencv3 
Linking /usr/local/Cellar/opencv3/3.1.0_3... 
Error: Could not symlink bin/opencv_annotation 
Target /usr/local/bin/opencv_annotation 
is a symlink belonging to opencv. You can unlink it: 
    brew unlink opencv 

To force the link and overwrite all conflicting files: 
    brew link --overwrite opencv3 

To list all files that would be deleted: 
    brew link --overwrite --dry-run opencv3 
Monas-MacBook-Pro:build mona$ brew link --overwrite opencv3 
Warning: opencv3 is keg-only and must be linked with --force 
Note that doing so can interfere with building software. 
Monas-MacBook-Pro:build mona$ brew link --force --overwrite opencv3 
Linking /usr/local/Cellar/opencv3/3.1.0_3... 551 symlinks created 
+0

Возможно, попробуйте 'cp /usr/local/Cellar/opencv3/3.0.0/lib/python3.4/site-packages/*/usr/local/lib/python3.4/site-packages /' .. –

+0

'cp: /usr/local/Cellar/opencv3/3.0.0/lib/python3.4/site-packages/*: Нет такого файла или каталога' –

ответ

0

Поскольку вы установили OpenCV3 с помощью Homebrew, ваш символическая может быть поврежден.

С текущей версией OpenCV в доморощенном/науке 3.1.0, ваш символический, вероятно, следует указать на

/usr/local/Cellar/opencv3/3.1.0_3/lib/python3.5/site-packages 

3.1.0_3 и python3.5 может отличаться в вашей системе, так что просто смотрите сам какие каталоги находятся в/usr/local/Cellar.

Кстати, мне не нужно, чтобы связать что-нибудь после того, как делать

brew ln --force opencv3 
+0

не работал для меня. Пожалуйста, проверьте обновленный вопрос и то, что я пробовал, увидев ваше предложение. Однако я все еще не могу импортировать cv2 –

+0

Работал отлично для меня 'brew ln -force opencv3' – eden

0

Вы должны ссылки ваш OpenCV на питон сайт-пакеты

Link cv.py и cv2.so использованием ln -s [cellar-opencv-site-packages-path] [lib-python-site-packages-path]

ln -s /usr/local/Cellar/opencv3/3.1.0_3/lib/python3.4.1/site-packages/cv.py /usr/local/lib/python3.4.1/site-packages/cv.py 

ln -s /usr/local/Cellar/opencv3/3.1.0_3/lib/python3.4.1/site-packages/cv2.so /usr/local/lib/python3.4.1/site-packages/cv2.so 

Путь будет основан на версии opencv и python.

Вот она - [opencv3/3.1.0_3] и [python3.4.1]


Короче, Копировать/Ссылка cv.py и cv2.so от /usr/local/Cellar/opencv3/[[version]]/lib/python[[version]]/site-packages/ к /usr/local/lib/python[[version]]/site-packages/


или вы можете также Добавить opencv сайт-пакеты в PYTHONPATH

export PYTHONPATH=$PYTHONPATH:/usr/local/Cellar/opencv3/3.1.0_3/lib/python3.4.1/site-packages/ 

source ~/.profile 
+0

моя проблема в том, что у меня нет каталога python3.5 в каталоге Cellar. У меня только python 2.7 'ls/usr/local/Cellar/opencv3/3.1.0_3/lib/python2.7/site-packages/cv2.so', но в sys.path у меня есть' ['', '/ usr/local/Cellar/python3/3.5.2_1/Frameworks/Python.framework/Версии/3.5/lib/python35.zip ',' /usr/local/Cellar/python3/3.5.2_1/Frameworks/Python.framework/Versions/3.5/Библиотека/python3.5 'и т. Д. –

+0

Run - "" "ls/usr/local/lib/python *" "" AND "" "ls/usr/local/Cellar/opencv3 /" "" AND "" "ls/usr/local/Cellar/opencv3/3.1.0_3/lib/"" "- Каков результат? – RAVI

+0

моя проблема: у меня нет python3 в этом каталоге '/ usr/local/Cellar/opencv3/3.1.0_3/lib /' –