#python #opencv
#python #opencv
Вопрос:
У меня есть основной вопрос об opencv. Я использую среду conda и установил opencv 3 с помощью команды conda. Я вижу cv2.so в /anaconda2/envs/MyPy2.7TF/lib/python2.7/site-packages. Теперь я пытаюсь использовать pyFaceTracker из https://bitbucket.org/amitibo/pyfacetracker . Существует файл под названием setup.py для этого мне нужно изменить ‘OPENCV_BASE’, ‘OPENCV_LIB_DIRS’, ‘OPENCV_INCLUDE_DIRS’ и т.д. Я вижу только файл .so. Какое значение я должен присвоить этим переменным?
Комментарии:
1. Вам не нужно ничего изменять в
setup.py
. Вам нужно будет делать толькоpython setup.py
согласно документам2. В документе говорится: «Сначала вам нужно обновить setup.py чтобы указать на установку OpenCV (т. Е. присвоить глобальным переменным OPENCV_BASE, OPENCV_LIB_DIRS и OPENCV_VERSION их правильные значения).»
Ответ №1:
Вы можете получить путь к ‘OPENCV_BASE’, ‘OPENCV_LIB_DIRS’, ‘OPENCV_INCLUDE_DIRS’ из оболочки python. Просто активируйте среду conda, запустите оболочку python и просто используйте приведенный ниже код:
import cv2
print(cv2.getBuildInformation())
Этот код распечатает детали установки opencv, и здесь вы можете получить путь к этим необходимым переменным.
Комментарии:
1. Спасибо за эту функцию. Я попробую это.
Ответ №2:
Если вы ищете путь установки opencv
в anaconda, вы можете использовать CONDA_PREFIX
переменную среды:
import os
conda_dir = os.environ.get("CONDA_PREFIX")
# Build your path
opencv_install = os.path.join(conda_dir, 'lib', 'python2.7', 'site-packages', 'cv2')
Я не совсем уверен, что такое lib_dirs, но вы можете получить версию для любого пакета, используя __version__
атрибут:
import cv2
cv2.__version__
# '4.0.0'
Комментарии:
1. Привет, спасибо, что нашли время ответить на мой вопрос. Однако у меня нет папки, указанной в ‘opencv_install’ (‘/home/vandana /anaconda2/envs/MyPy2.7TF /lib/ python2.7/site-packages /cv2’). У меня просто есть ‘site_packages’, после чего у меня есть cv2.so файл. Итак, мой вопрос — только с этим . итак, статический файл библиотеки, как я должен указать имена путей, как того требует setup.py ?
2. Требуется ли для этого другая установка
opencv
? читая их документы, похоже, вам может потребоваться установить opencv, используя что-то вродеapt
на Ubuntu илиbrew
на Mac, на которые указывает эта библиотека3. Сначала я хочу попробовать использовать мою существующую anaconda-opencv без выполнения какой-либо другой установки opencv. Я думаю, что я немного ленив там: P
4. Я попытался использовать
brew install opencv
и у него есть то, что можно было бы считать бесконечными зависимостями, поэтому я не виню вас в этом5. @VandanaRajan Я определенно скажу, что любая библиотека, требующая вашего редактирования
setup.py
, сомнительного качества, по крайней мере, с точки зрения наилучших практик использования / расширения кода