opencv python osx

#python #macos #opencv #macports

#python #macos #opencv #macports

Вопрос:

(Шаг 1)

Я пытаюсь запустить OpenCV с python на моем Mac, используя установку MacPortshttp://opencv.willowgarage.com/wiki/Mac_OS_X_OpenCV_Port , а также пытаюсь следовать руководству маленького гика:

 sudo port -v install opencv  python26
  

Он работает около 10 минут без ошибок.

(Шаг 2)

Я загружаю ctypes-исходный код opencv и демонстрационные файлы. Я перехожу в src каталог и запускаю:

 sudo python setup.py install
  

Я вижу около 50 строк почти всей формы: copying ... -> ... , которая, на мой взгляд, выглядит неплохо. Ошибок здесь нет.

(Шаг 3)

Я добавляю export DYLD_FALLBACK_LIBRARY_PATH=/opt/local/lib в конец моего ~/.profile .

(Шаг 4)

Я открываю новый терминал, чтобы протестировать свою установку. Из моей домашней папки:

 $ python

Python 2.6.2 (r262:71600, Apr 16 2009, 09:17:39) 
[GCC 4.0.1 (Apple Computer, Inc. build 5250)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import cv
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ImportError: No module named cv
>>> 
  

Не работает.


Я где-то читал, что opencv устанавливает привязки python с версией python по умолчанию для OSX, и я, вероятно, использую версию, отличную от стандартной, но для меня это не полезная информация.

Ответ №1:

Некоторое время я боролся с Python на Mac. Вот как я, наконец, (и легко!) установил его. Удалите все элементы Python, которые у вас там уже есть. Вероятно, они будут расположены в /Library / Frameworks /Python.Фреймворк и /opt/local/var/macports/software/py26*

Сначала загрузите Python с Macports.

 sudo port install python27
  

Затем убедитесь, что ваша система использует эту версию с:

 sudo port select --set python python27
  

Далее установите numpy с:

 sudo port install py27-numpy
  

Теперь установите opencv:

 sudo port install opencv  python27
  

Теперь отредактируйте ваш ~/.bash_profile с помощью:

 sudo /Applications/TextEdit.app/Contents/MacOS/TextEdit ~/.bash_profile
  

или

 open -t ~/.bash_profile
  

и добавьте строку:

 export PYTHONPATH=/opt/local/var/macports/software/opencv/2.2.0_0 python27/opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages:$PYTHONPATH
  

или где когда-либо ваша версия cv.so файл скрыт….

Теперь перезапустите терминал и попробуйте:

 %python
>>>import cv
  

Я использую Netbeans для opencv и python, и это работает действительно хорошо. Удачи.

Комментарии:

1. Спасибо! После прочтения нескольких устаревших сообщений об установке из Интернета, это то, что наконец сработало!

2. Единственным руководством, которое сработало для меня, было это, пришлось сказать спасибо и за комментарий тоже

Ответ №2:

 $ brew search opencv
        homebrew/science/opencv
$ brew install homebrew/science/opencv
  

после установки появляется предупреждение:

==> Предостережения, если вам нужен Python для поиска установленных пакетов сайта:

mkdir -p ~/Библиотека/Python/2.7/библиотека/python/site-пакеты

echo ‘/usr/local/lib/python2.7/site-packages’ > ~/Library/Python/2.7/lib/python/site-packages/homebrew.pth

итак, просто сделайте

   mkdir -p ~/Library/Python/2.7/lib/python/site-packages
  echo '/usr/local/lib/python2.7/site-packages' > ~/Library/Python/2.7/lib/python/site-packages/homebrew.pth
  

Ответ №3:

Если вы заметите вывод первой строки при запуске python, вы увидите, что вы все еще используете интерпретатор Python, поставляемый Apple. Попробуйте установить и использовать пакет python-select в MacPorts, а затем повторите выполнение инструкций, начиная с шага 2.

Также убедитесь, что вы выполнили все шаги при установке MacPorts, чтобы /usr/local/bin находился в $PATH.

Ответ №4:

Еще один «взлом», который я обнаружил во время моих усилий с использованием CMake (но, возможно, проблема такая же с портами): похоже, что расположение модулей python было продублировано в моей Mac OS Lion, по причине, которую я не могу объяснить.

CMake хочет поместить модуль «cv» сюда :

 /System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages
  

В то время как мой интерпретатор Python по умолчанию смотрит здесь (спасибо PyCharm, что сказал мне) :

 /Library/Python/2.7/site-packages
  

Перемещение обоих cv2.so и cv.py файлы во втором расположении сделали свое дело за меня. Я не знаю, самый ли это чистый способ.

Надеюсь, это может помочь некоторым пользователям Google!