Почему cv2.so отсутствует после установки opencv?

http://geek.michaelgrace.org/2012/04/tracing-php-memory-usage-using-xdebug-and-mamp-on-mac/

Я нахожусь на Mac, поэтому, если вы в Windows, вам придется протестировать это, но это работает для меня.

Я изменил файл tracefile-analyzer.php и добавил путь к PHP бинарный вверху, чтобы вы могли называть его в терминале как обычный скрипт unix.

#!/Applications/MAMP/bin/php5.3/bin/php
 4 )
{

Не забудьте сделать chmod этот файл до 755.

Вы могли бы легко создайте скрипт ruby ​​watchr для автоматического вызова скрипта каждый раз, когда он создает файл профиля памяти (* .xt). Таким образом, вы можете продолжать тестирование и видеть свои улучшения без необходимости повторять команду снова.

21
задан Alex 3 April 2013 в 14:42
поделиться

9 ответов

Как установить opencv (cv2) с привязками python в Linux - Ubuntu / Fedora

  1. Установить gcc, g ++ / gcc-c ++, cmake (apt- get или yum, в случае yum используйте gcc-c ++)

    apt-get install gcc, g++, cmake
    
  2. Загрузите последнюю версию opencv с сайта openCV

  3. Распакуйте его с помощью

    tar -xvf opencv-*
    
  4. Внутри папки без изменений создайте новую папку с именем release

    mkdir release
    cd release
    

    (или любым именем папки) и запустите Команда

    cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local -D BUILD_NEW_PYTHON_SUPPORT=ON -D BUILD_EXAMPLES=ON ..
    

    .. извлечет файлы из родительской папки и подготовит систему к установке на вашей платформе.

  5. в папке релиза запустите

    make
    
  6. После 2-3 минут обработки make после ее завершения

    sudo make install
    
  7. Экспорт пути Python

    export PYTHONPATH=$PYTHONPATH:/usr/local/lib/python2.7/site-packages
    

Вот и все, теперь перейдите на python и попробуйте

>>> import cv2

, вы не должны получать никаких сообщений об ошибках.

Проверено на python 2.7, должно быть практически аналогично python 3.x.

46
ответ дан Hussain 3 April 2013 в 14:42
поделиться

Я устанавливаю python-opencv, чтобы решить мою проблему в Ubuntu 14.04 sh sudo apt-get install python-opencv

11
ответ дан Wei Yang 3 April 2013 в 14:42
поделиться

Ничто из вышеперечисленного не помогло мне; я в Ubuntu 16.04 на экземпляре ec2 & amp; у меня была установлена ​​anaconda, поэтому я просто использовал

conda install opencv для моих установок conda2 и 3

1
ответ дан E. Case 3 April 2013 в 14:42
поделиться

Я столкнулся с подобной проблемой. Немного покопавшись в этом, я наткнулся на пост, в котором упоминалось, что пакет python-numpy необходим. Итак, я удалил opencv, выполнив следующую команду в папке сборки (в вашей папке выпуска):

dpkg -r build

Затем я удалил все файлы opencv. Я установил python-numpy и python-dev командой .

0
ответ дан skadoosh 3 April 2013 в 14:42
поделиться

У меня была похожая проблема, когда я вручную настраивал с помощью CMAKE на OSX El Capitan. Я дал эту дополнительную опцию:

PYTHON2_PACKAGES_PATH='lib/python2.7/site-packages'

, которая остановила установку cv2.so в этом пакете. Кажется, после установки я правильно установил его в папку для сборки:

PYTHON2_EXECUTABLE='/usr/bin/python2.7'
PYTHON2_INCLUDE_DIR='/usr/include/python2.7'
PYTHON2_LIBRARY='/usr/lib/libpython2.7.dylib' # TODO - Fix for linux
PYTHON2_NUMPY_INCLUDE_DIRS='/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/numpy/core/include' # Todo - Fix for linux


cd $OPENCV_DIR

cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=$OPENCV_INSTALL_PATH \
                                  -D WITH_CUDA=OFF \
                                  -D BUILD_opencv_python2:BOOL=ON \
                                  -D PYTHON2_EXECUTABLE=$PYTHON2_EXECUTABLE \
                                  -D PYTHON2_INCLUDE_DIR=$PYTHON2_INCLUDE_DIR \
                                  -D PYTHON2_LIBRARY=$PYTHON2_LIBRARY \
                                  -D PYTHON2_NUMPY_INCLUDE_DIRS=$PYTHON2_NUMPY_INCLUDE_DIRS \
                                  -D INSTALL_PYTHON_EXAMPLES:BOOL=ON \
                                  ..
make -j8
make install
3
ответ дан ssk 3 April 2013 в 14:42
поделиться

В моем случае это была проблема с cmake:

sudo apt install software-properties-common
sudo add-apt-repository ppa:george-edison55/cmake-3.x
sudo apt update

Если cmake еще не установлен:

sudo apt install cmake

Если cmake уже установлен:

sudo apt upgrade

Для получения дополнительной информации см. по этой ссылке .

0
ответ дан galoget 3 April 2013 в 14:42
поделиться

При использовании Rasbian на Rasberry Pi у меня была проблема с тем, что модуль также не был найден. У меня было три версии python (2.6, 2.7 и 3.2), убедитесь, что вы используете python2.7. Вы можете проверить это, запустив:

python --version

Я обнаружил, что для моего случая мне просто нужно было установить python-dev.

sudo apt-get install python-dev

Мне не нужно было удалять и переустанавливать opencv, я изо всех сил старался этого избежать, зная, что для завершения процесса требуется несколько часов.

После установки python-dev я пошел к файлу, в который я встроил opencv, для меня это был «~ / opencv-2.4.9 / release», и велел сделать

sudo make

после это я смог найти файл cv2.so. ища его с помощью:

find / -name "cv2.so"

на данный момент я нашел несколько файлов. затем я запустил только питон, чтобы посмотреть, сможет ли он найти «импортировать» их

python 
>>> import cv2

, никаких ошибок не должно быть.

>>> import numpy

Я слышал, что numpy был необходим для запуска opencv. Оттуда я полагаю, что вы должны хорошо выполнить свой сценарий, если не будет ошибок. Надеюсь, это поможет.

Страница, которая помогла мне, находится в списке ...

http://opencv-users.1802565.n2.nabble.com/I-can-t-find-cv-so-and-cv2-so-after-compiling-td6671937.html

5
ответ дан durkinza 3 April 2013 в 14:42
поделиться

Все приведенные выше ответы не сработали для меня , однако, после целого дня борьбы, я наконец-то решил эту проблему.

Чтобы иметь cv2.so, нам нужно:

  1. По крайней мере Python 2 или 3 установлены. вот почему люди говорят: sudo apt-get install python-dev. Но это не обязательно , в моем случае я использую anaconda python . (Есть много способов установить Python)
  2. numpy также является обязательным. Итак, какой бы Python вы ни использовали, просто убедитесь, что он загружен. В моем случае я использую anaconda numpy . (anaconda уже установила его, для обычного python, используйте pip install numpy)

Чтобы сказать camke, где находится путь, просто возьмите мою команду в качестве примера:

cmake -D CMAKE_BUILD_TYPE=RELEASE \
      -D CMAKE_INSTALL_PREFIX=/usr/local \
      -D OPENCV_EXTRA_MODULES_PATH=../opencv_contrib/modules \
      -D PYTHON2_EXECUTABLE='/home/parallels/anaconda2/bin/python' \
      -D PYTHON2_LIBRARY='/home/parallels/anaconda2/lib/python2.7' \
      -D PYTHON2_NUMPY_INCLUDE_DIRS='/home/parallels/anaconda2/lib/python2.7/site-packages/numpy/core/include' \
      -D BUILD_EXAMPLES=ON ..

для python3 , вы должны (я использую anaconda python, поэтому я связал все с anaconda):

cmake -D CMAKE_BUILD_TYPE=Release \
      -D CMAKE_INSTALL_PREFIX=/usr/local \
      -D OPENCV_EXTRA_MODULES_PATH=../opencv_contrib-3.3.1/modules \
      -D PYTHON3_EXECUTABLE='/home/test/SoftWare/anaconda3/bin/python3.6m' \
      -D PYTHON_INCLUDE_DIR='/home/test/SoftWare/anaconda3/include/python3.6m' \
      -D PYTHON3_LIBRARY='/home/test/SoftWare/anaconda3/lib/libpython3.6m.so' \
      -D PYTHON3_NUMPY_INCLUDE_DIRS='/home/test/SoftWare/anaconda3/lib/python3.6/site-packages/numpy/core/include' \
      -D PYTHON3_PACKAGES_PATH='/home/test/SoftWare/anaconda3/lib/python3.6/site-packages' ..

Одна вещь, которую нужно запомнить !!! прежде чем войти в cmake ... 1. очистите вашу папку сборки, 2. Только один раз! , иначе вы не можете изменить ** PYTHON3_LIBRARY: НЕТ ** ... (я думаю, что это ошибка)

Я знаю, что могут быть некоторые бесполезные аргументы, но я Я устал, чтобы попытаться очистить их. Вот скриншот моей информации о печати cmake. Снимок экрана с моей информацией о cmake

Вы можете ясно видеть, что только python2 может генерировать cv2.so. Python3 не может! (Оболочки Python3 не могут быть сгенерированы).

2
ответ дан craig zhang 3 April 2013 в 14:42
поделиться

У меня есть эта проблема в моей OS X El Capitan.

Я следовал инструкциям, упомянутым в этого урока . Не удалось выполнить успешную рабочую установку, и при указанной выше ошибке отсутствовал файл cv2.so в необходимых папках , упомянутых и в приглашении python.

Наконец-то понял, что использование настройки виртуального питона вызывает проблемы. Таким образом, удаление с

pip install virtualenv virtualenvwrapper

Затем запустил

brew link opencv

, который выдает ошибки.

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

Первый запуск

brew link opencv

Если выдается ошибка, попробуйте автоматическую диагностику.

brew doctor

brew doctor выдает список проблем, которые могут привести к ошибкам при установке. процесс.

Чтобы исправить проблемы в случае конфликтующих файлов, запустите, чтобы получить список всех действий, которые будут выполнены путем перезаписи без фактического их выполнения.

Чтобы отобразить список всех файлов, которые будут удалены:

  brew link --overwrite --dry-run opencv

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

Для принудительной установки ссылки и перезаписи всех конфликтующих файлов:

 brew link --overwrite opencv

Этот учебник является более простой альтернативой.

2
ответ дан Vinay Vemula 3 April 2013 в 14:42
поделиться