OpenCV 2.0 и Python - PullRequest
       15

OpenCV 2.0 и Python

6 голосов
/ 04 февраля 2010

Я не могу запустить примеры программ на Python. При выполнении команды Python «из opencv import cv» я получаю сообщение «ImportError: Нет модуля с именем _cv». В каталоге site-packages есть устаревший _cv.pyd, но нигде нет _cv.py. См. Шаг 5 ниже.

MS Windows XP, VC ++ 2008, Python 2.6, OpenCV 2.0

Вот что я сделал.

  1. Скачал и запустил установщик MS Windows для OpenCV2.0.
  2. Скачал и установил CMake
  3. Скачано и установлено SWIG
  4. Запустил CMake. После снятия отметки «ENABLE_OPENMP» в графическом интерфейсе CMake я смог собрать OpenCV с помощью INSTALL.vcproj и BUILD_ALL.vcproj. Я не знаю, в чем разница, поэтому я построил все под оба этих файла проекта. Программы примера C работают нормально.
  5. Скопировал содержимое OpenCV2.0 / Python2.6 / lib / site-packages в мой установленный каталог Python2.6 / lib / site-packages. Я заметил, что он содержит старый _cv.pyd и старый libcv.dll.a.

Ответы [ 4 ]

4 голосов
/ 04 февраля 2010

Вы должны установить opencv, используя утилиты python dist. Это можно сделать, перейдя в каталог opencv и набрав:

python setup.py install

Edit:

openCV использует distutils, но несколько косвенно. В UNIX установка происходит примерно так:

configure
make -j 8
make install

Для Windows самый простой подход, вероятно, состоит в том, чтобы загрузить установщик, так же как самый простой подход для Linux - использовать менеджер пакетов для установки приложения. Вы не можете просто скопировать OpenCV в путь Python и заставить вещи работать, так как он опирается на ряд библиотек C, которые необходимо скомпилировать.

Я бы предположил, что установщик Windows установит двоичные файлы (вместо того, чтобы компилировать все, и, вероятно, неправильно использовать установщик и все компилировать самостоятельно). В любом случае, не копируйте файлы самостоятельно, ни выполняйте установку, либо используйте программу установки.

Удачи с OpenCV, и я надеюсь, вам понравится его использовать!

3 голосов
/ 09 марта 2010

После шага 1 (установщик) просто скопируйте содержимое C:\OpenCV2.0\Python2.6\Lib\site-packages в C:\Python26\Lib\site-packages (предполагается стандартный путь установки). Вот и все.

Если у вас установлена ​​веб-камера, вы можете попробовать camshift.demo в C:\OpenCV2.0\samples\python

Устаревшие вещи (C:\OpenCV2.0\samples\swig_python) в данный момент не работают, как кто-то писал выше. Люди OpenCV работают над этим. Вот полная картина:

31/03/10 (надеюсь) Следующий официальный релиз OpenCV: 2.1.0 выйдет в марте 31 октября 2010 г. ссылка: //opencv.willowgarage.com/wiki/Welcome/Introduction#Announcements

04/03/10 [james] переписывает сэмплы для нового Python 5:36 вечера 4 марта
через ссылку API: //twitter.com/opencvlibrary

12/31/09 Мы стали более серьезно относиться к программному обеспечению OpenCV машиностроение. Теперь у нас есть полный C ++ и Python интерфейс. ссылка: //opencv.willowgarage.com/wiki/OpenCV%20Monthly

9/30/09 Несколько (фактически большинство) примеров Python на основе SWIG не работают правильно сейчас. Причина в том, что эта проблема изучается и будет выпущено промежуточное обновление пакета OpenCV Python как только проблема будет решена. ссылка: //opencv.willowgarage.com/wiki/OpenCV%20Monthly

1 голос
/ 02 декабря 2010

Как уже объяснил Роджер, ситуация некоторое время была довольно запутанной.Причина заключалась в том, что opencv перешел от реализации только C к смешанной реализации C и C ++ в opencv2.Это вызывает головную боль для всех оболочек, включая python.Поэтому, пожалуйста, не жалуйтесь, что парни из Python «продолжают ломать вещи», потому что они этого не сделали.(Кстати, единственная серьезная несовместимость в python была между 2 и 3, и это хорошо рекламировалось.)Я еще не использовал его широко, но сейчас он выглядит очень хорошо.http://code.google.com/p/pyopencv/ В настоящее время он работает в python2, но уже на 99% совместим с python3.

PS Не очень хорошо вести журнал ваших достижений в ответах на вопрос stackoverflow:Добавьте ответ, когда решите.

0 голосов
/ 27 февраля 2011

Я разместил запись для настройки OpenCV для Python в Windows: http://luugiathuy.com/2011/02/setup-opencv-for-python/ Это для OpenCV 2.2, но я думаю, что оно подходит и для предыдущей версии.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...