Установка opencv 3.1 с помощью anaconda python3?
Как установить opencv с помощью anaconda python3, opencv взял мои исполняемые файлы python3
-- Python 2:
-- Interpreter: /usr/bin/python2.7 (ver 2.7.12)
-- Libraries: /usr/lib/x86_64-linux-gnu/libpython2.7.so (ver 2.7.12)
-- numpy: /usr/lib/python2.7/dist-packages/numpy/core/include (ver 1.11.0)
-- packages path: lib/python2.7/dist-packages
--
-- Python 3:
-- Interpreter: /home/tamim/anaconda3/bin/python3 (ver 3.5.2)
-- Libraries: /usr/lib/x86_64-linux-gnu/libpython3.5m.so (ver 3.5.2)
-- numpy: /home/tamim/anaconda3/lib/python3.5/site-packages/numpy/core/include (ver 1.11.1)
-- packages path: lib/python3.5/site-packages
--
-- Python (for build): /usr/bin/python2.7
Я установил opencv со следующими параметрами make
cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local -D WITH_TBB=ON -D BUILD_NEW_PYTHON_SUPPORT=ON -D WITH_V4L=ON -D INSTALL_C_EXAMPLES=ON -D INSTALL_PYTHON_EXAMPLES=ON -D BUILD_EXAMPLES=ON -D WITH_QT=ON -D WITH_OPENGL=ON -D ENABLE_FAST_MATH=1 -D CUDA_FAST_MATH=1 -D WITH_CUBLAS=1 -D CUDA_NVCC_FLAGS="-D_FORCE_INLINES" ..
Но после установки я не могу импортировать cv2 в python3 anaconda. Однако я могу импортировать cv2 из встроенной команды python2. Поэтому я полагаю, что он построен для версии python2, как указано в последней строке.
Как мне создать anaconda python3?
Ответы
Ответ 1
Я думаю, вам не нужно создавать OpenCV для Anaconda, это очень удобно
инструмент под названием "conda", который доступен в вашем терминале после установки
дистрибутив Python Anaconda.
Я нашел этот сайт, который дает инструкции по установке opencv3
https://anaconda.org/menpo/opencv3
Я лично установил его сам, поэтому попробуйте следовать этим инструкциям.
Если в вашей системе установлен дистрибутив Python Anaconda, вы можете выполнить эту команду (при условии, что вы работаете в Linux), чтобы запустить терминал:
conda install -c menpo opencv
Если версия Python, установленная в вашей Anaconda, составляет 2.7, приведенная выше команда должна установить OpenCV 3.1, но если версия вашего python - 3.5, то вам следует изменить 'opencv' в последней строке на 'opencv3'
conda install -c menpo opencv3
Это должно установить OpenCV в вашу Anaconda. Чтобы убедиться, что вы успешно установили его, запустите ваш Python и введите следующую команду:
import cv2 # import the opencv library
cv2.__version__ # this will print the version of your opencv3
Надеюсь, это поможет =)
Ответ 2
Если вы получаете сообщение об ошибке:
UnsatisfiableError: The following specifications were found to be in conflict:
opencv 2.4.11* -> numpy 1.9* -> python 2.6* -> openssl 1.0.1*
python 3.6*
Use "conda info " to see the dependencies for each package.
Просто установите python 3.5 и повторите попытку.
conda install python=3.5
conda install -c menpo opencv # whichever
conda install -c menpo opencv3 # you need
Ответ 3
Попробуйте этот метод, который сработал у меня. Anaconda3-4
conda create -n opencv
activate opencv
conda install -c https://conda.binstar.org/menpo opencv3
Ответ 4
Ни один из вышеперечисленных методов не работал у меня. Однако я обнаружил, что этот один лайнер работает для меня:
conda install -c conda-forge opencv
Ответ 5
В случае с conda v4.3.16 и python v3.6 эта команда работала у меня:
conda install -c anaconda opencv
Ответ 6
Если вы хотите скомпилировать opencv для определенной среды anaconda, вы можете указать переменные PYTHON_EXECUTABLE, PYTHON_INCLUDE
и PYTHON_LIBRARY, PYTHON_PACKAGES_PATH, PYTHON_NUMPY_INCLUDE_DIR
в cmake
.
В следующем примере у меня есть среда anaconda opencv340, расположенная в /home/self/anaconda3/envs/opencv340, и поэтому я укажу вышеупомянутые переменные для cmake
следующим образом:
-DPYTHON_EXECUTABLE=/home/yourself/anaconda3/envs/opencv340/bin/python3 \
-DPYTHON_INCLUDE=/home/yourself/anaconda3/envs/opencv340/include \
-DPYTHON_LIBRARY=/home/yourself/anaconda3/envs/opencv340/lib/libpython3.6m.so \
-DPYTHON_PACKAGES_PATH=/home/yourself/anaconda3/envs/opencv340/lib/python3.6/site-packages \
-DPYTHON_NUMPY_INCLUDE_DIR=/home/yourself/anaconda3/envs/opencv340/lib/python3.6/site-packages/core/include
Затем вы увидите, что opencv выбрал правильный питон, тот, в окружении анаконды которого вы указали путь.
Затем вы копируете cv2 *.so из вашего каталога сборки opencv в site-packages
вашей среды anaconda.
Ваш каталог site-packages
должен находиться где-то вроде:
/home/yourself/anaconda3/envs/opencv340/lib/python3.6/site-packages
Вы можете получить фактическое местоположение из консоли Python с помощью:
>>> import sys
>>> print(next(p for p in sys.path if 'site-packages' in p))
Затем (адаптируйте к вашему случаю и cv2 *.so фактическому имени):
cp /path/to/your/opencv/build/directory/lib/python3.6/site-packages/cv2.cpython-36m-x86_64-linux-gnu.so /home/yourself/anaconda3/envs/opencv340/lib/python3.6/site-packages/.
И вы должны быть в состоянии import cv2
из консоли Python.
Я только что сделал это (Ubuntu 16.04).
Ответ 7
Конда: 4.7.10,
питон: 3.7.3,
канал: по умолчанию
Установка opencv
из канала default
работала для меня. Я установил в чистую среду и не было конфликтов.
conda install opencv
The following NEW packages will be INSTALLED:
blas pkgs/main/osx-64::blas-1.0-mkl
bzip2 pkgs/main/osx-64::bzip2-1.0.8-h1de35cc_0
cairo pkgs/main/osx-64::cairo-1.14.12-hc4e6be7_4
ffmpeg pkgs/main/osx-64::ffmpeg-4.0-h01ea3c9_0
fontconfig pkgs/main/osx-64::fontconfig-2.13.0-h5d5b041_1
freetype pkgs/main/osx-64::freetype-2.9.1-hb4e5f40_0
gettext pkgs/main/osx-64::gettext-0.19.8.1-h15daf44_3
glib pkgs/main/osx-64::glib-2.56.2-hd9629dc_0
graphite2 pkgs/main/osx-64::graphite2-1.3.13-h2098e52_0
harfbuzz pkgs/main/osx-64::harfbuzz-1.8.8-hb8d4a28_0
hdf5 pkgs/main/osx-64::hdf5-1.10.2-hfa1e0ec_1
icu pkgs/main/osx-64::icu-58.2-h4b95b61_1
intel-openmp pkgs/main/osx-64::intel-openmp-2019.4-233
jasper pkgs/main/osx-64::jasper-2.0.14-h636a363_1
jpeg pkgs/main/osx-64::jpeg-9b-he5867d9_2
libgfortran pkgs/main/osx-64::libgfortran-3.0.1-h93005f0_2
libiconv pkgs/main/osx-64::libiconv-1.15-hdd342a3_7
libopencv pkgs/main/osx-64::libopencv-3.4.2-h7c891bd_1
libopus pkgs/main/osx-64::libopus-1.3-h1de35cc_0
libpng pkgs/main/osx-64::libpng-1.6.37-ha441bb4_0
libtiff pkgs/main/osx-64::libtiff-4.0.10-hcb84e12_2
libvpx pkgs/main/osx-64::libvpx-1.7.0-h378b8a2_0
libxml2 pkgs/main/osx-64::libxml2-2.9.9-hf6e021a_1
mkl pkgs/main/osx-64::mkl-2019.4-233
mkl_fft pkgs/main/osx-64::mkl_fft-1.0.12-py37h5e564d8_0
mkl_random pkgs/main/osx-64::mkl_random-1.0.2-py37h27c97d8_0
numpy pkgs/main/osx-64::numpy-1.16.4-py37hacdab7b_0
numpy-base pkgs/main/osx-64::numpy-base-1.16.4-py37h6575580_0
opencv pkgs/main/osx-64::opencv-3.4.2-py37h6fd60c2_1
pcre pkgs/main/osx-64::pcre-8.43-h0a44026_0
pixman pkgs/main/osx-64::pixman-0.38.0-h1de35cc_0
py-opencv pkgs/main/osx-64::py-opencv-3.4.2-py37h7c891bd_1
zstd pkgs/main/osx-64::zstd-1.3.7-h5bba6e5_0
$python
Python 3.7.3 (default, Mar 27 2019, 16:54:48)
[Clang 4.0.1 (tags/RELEASE_401/final)] :: Anaconda, Inc. on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import cv2
>>> cv2.__version__
'3.4.2'
>>>