Opencv python osx

(Шаг 1)

Я пытаюсь запустить openCV из python на моем mac, используя MacPorts, установить http://opencv.willowgarage.com/wiki/Mac_OS_X_OpenCV_Port, а также попытаться следовать Руководство Petite Geek:

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.Framework и/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, и он работает очень хорошо. Удачи.

Ответ 2

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

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

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

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

так что просто

  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 во второе место, помогло. Я не знаю, является ли это самым чистым способом.

Надеюсь, это поможет некоторым гуглерам!