with sierra python3 mojave mac instalar how python macos python-3.x opencv anaconda

sierra - No se puede instalar OpenCV3 en Anaconda3 python3.6 en macOS



install opencv mac python (5)

Actualización: ¡Conda tiene un paquete OpenCV pre-construido para Python 3.6 ahora!

La solución directa sería hacer lo siguiente en la instalación base.

conda install -c menpo opencv3

Anteriormente, los paquetes se creaban en Python 3.5, por lo que solía resolver este problema con la alternativa de @ VivekPatani .

Actualmente, el repositorio de Conda Menpo tiene una versión pre-construida de OpenCV para la versión Python 3.6. Por lo tanto, no sería necesario cambiar a 3.5 o construir OpenCV desde la fuente.

Estoy intentando instalar OpenCV 3.2.0 en Anaconda3 python 3.6 en macOS 10.11.6 pero no puedo encontrar una manera. Mi Anaconda3 tiene Python 3.5.2 instalado, pero si creo un nuevo entorno virtual usando

$ conda create -n myvenv python then it downloads and installs python 3.6 on the new myvenv. A simple search $ conda search opencv opencv 2.4.8 np17py27_2 defaults

mientras que opencv3 no produce resultados

$ conda search opencv3 NoPackagesFoundError: Package missing in current osx-64 channels: - opencv3

Instalar menpo opencv3 build da el siguiente conflicto:

$ conda install -c menpo opencv3 Fetching package metadata ........... Solving package specifications: . UnsatisfiableError: The following specifications were found to be in conflict: - opencv3 -> python 2.7* -> openssl 1.0.1* - python 3.6* Use "conda info <package>" to see the dependencies for each package.

Intenté instalar usando homebrew pero vincularlo con Anaconda3 python3 parece difícil:

$ brew install eigen tbb Updating Homebrew... ==> Downloading https://homebrew.bintray.com/bottles/eigen-3.3.1.el_capitan.bottle.tar.gz 100.0% ==> Pouring eigen-3.3.1.el_capitan.bottle.tar.gz 🍺 /usr/local/Cellar/eigen/3.3.1: 486 files, 6.4M ==> Downloading https://homebrew.bintray.com/bottles/tbb-4.4-20161128.el_capitan.bottle.tar.gz 100.0% ==> Pouring tbb-4.4-20161128.el_capitan.bottle.tar.gz ==> Caveats Python modules have been installed and Homebrew''s site-packages is not in your Python sys.path, so you will not be able to import the modules this formula installed. If you plan to develop with these modules, please run: mkdir -p /Users/<username>/.local/lib/python3.5/site-packages echo ''import site; site.addsitedir("/usr/local/lib/python2.7/site-packages")'' >> /Users/<username>/.local/lib/python3.5/site-packages/homebrew.pth ==> Summary 🍺 /usr/local/Cellar/tbb/4.4-20161128: 119 files, 1.9M

Más información

$ conda info Current conda install: platform : osx-64 conda version : 4.3.8 conda is private : False conda-env version : 4.3.8 conda-build version : 2.0.2 python version : 3.5.2.final.0 requests version : 2.12.4 root environment : /Users/<username>/anaconda3 (writable) default environment : /Users/<username>/anaconda3/envs/lesvenv envs directories : /Users/<username>/anaconda3/envs package cache : /Users/<username>/anaconda3/pkgs channel URLs : https://repo.continuum.io/pkgs/free/osx-64 https://repo.continuum.io/pkgs/free/noarch https://repo.continuum.io/pkgs/r/osx-64 https://repo.continuum.io/pkgs/r/noarch https://repo.continuum.io/pkgs/pro/osx-64 https://repo.continuum.io/pkgs/pro/noarch config file : None offline mode : False user-agent : conda/4.3.8 requests/2.12.4 CPython/3.5.2 Darwin/15.6.0 OSX/10.11.6 UID:GID : 502:20

mientras que la lista de coda es:

$ conda list packages in environment at /Users/<username>/anaconda3/envs/lesvenv: anaconda-client 1.6.0 py36_0 clyent 1.2.2 py36_0 mkl 2017.0.1 0 numpy 1.11.3 py36_0 openssl 1.0.2j 0 pip 9.0.1 py36_1 python 3.6.0 0 python-dateutil 2.6.0 py36_0 pytz 2016.10 py36_0 pyyaml 3.12 py36_0 readline 6.2 2 requests 2.12.4 py36_0 setuptools 27.2.0 py36_0 six 1.10.0 py36_0 sqlite 3.13.0 0 tk 8.5.18 0 wheel 0.29.0 py36_0 xz 5.2.2 1 yaml 0.1.6 0 zlib 1.2.8 3

Mi anaconda es: /Users/<username>/anaconda3/bin/anaconda
Mi python 3.5.2 es: /Users/<username>/anaconda3/bin/python
Mi conda myvenv python 3.6 es: /Users/<username>/anaconda3/envs/myvenv/bin/python


Debido a que está utilizando una versión más reciente de python3, probablemente tendría que compilarlo a partir de la receta, que está disponible en https://github.com/conda-forge/opencv-feedstock

Otra opción es tener la versión específica de python3 en su nuevo entorno al crearla de esta manera:

(root) osx:Downloads nwani$ conda list | grep python python 3.6.0 0 (root) osx:Downloads nwani$ conda create -yn opencvtest python=3.5.2 (root) osx:Downloads nwani$ source activate opencvtest (opencvtest) osx:Downloads nwani$ conda list | grep python python 3.5.2 0

Las versiones 3.1.0 de opencv están disponibles en el canal conda-forge :

(root) osx:Downloads nwani$ conda search -c conda-forge --spec ''opencv=3*'' Fetching package metadata ......... opencv 3.1.0 np110py27_0 conda-forge 3.1.0 np110py34_0 conda-forge 3.1.0 np110py35_0 conda-forge 3.1.0 np111py27_0 conda-forge 3.1.0 np111py34_0 conda-forge 3.1.0 np111py35_0 conda-forge 3.1.0 np110py27_1 conda-forge 3.1.0 np110py34_1 conda-forge 3.1.0 np110py35_1 conda-forge 3.1.0 np111py27_1 conda-forge 3.1.0 np111py34_1 conda-forge 3.1.0 np111py35_1 conda-forge

Puedes instalarlo así:

(opencvtest) osx:Downloads nwani$ conda install -y -c conda-forge opencv (opencvtest) osx:Downloads nwani$ conda list | grep -e python -e opencv # packages in environment at /Users/nwani/Downloads/m3/envs/opencvtest: opencv 3.1.0 np111py35_1 conda-forge python 3.5.2 0


Descubrí que la solución aceptada no funciona en Python 3.6 con anaconda.

Entonces, para instalar opencv manualmente y aún así funciona con conda:

$ cd ~ $ git clone https://github.com/opencv/opencv $ git clone https://github.com/opencv/opencv_contrib $ cd ~/opencv $ mkdir build $ cd build $ cmake -D CMAKE_BUILD_TYPE=RELEASE / -D PYTHON3_LIBRARY=/Users/yourusername/anaconda3/lib/libpython3.6m.dylib / -D PYTHON3_INCLUDE_DIR=/Users/yourusername/anaconda3/include/python3.6m / -D PYTHON_DEFAULT_EXECUTABLE=/Users/yourusername/anaconda3/bin/python3 / -D PYTHON_PACKAGES_PATH=/Users/yourusername/anaconda3/lib/python3.6/site-packages / -D INSTALL_C_EXAMPLES=OFF / -D INSTALL_PYTHON_EXAMPLES=ON / -D BUILD_EXAMPLES=ON / -D BUILD_opencv_python3=ON / -D BUILD_opencv_python2=OFF / -D OPENCV_EXTRA_MODULES_PATH=~/opencv_contrib/modules .. $ make -j4 $ make install

En este punto la instalación debería haberse realizado sin problemas. Sin embargo, si vas a la terminal todavía obtendrás:

$ python import cv2 ImportError: No module named cv2

Así que ahora renombra este archivo

$ cd ~/opencv/lib/python3.6/site-packages $ mv cv2.cpython-36m-darwin.so cv2.so

y copiarlo a esta ubicación

$ cp cv2.so /Users/yourusername/anaconda3/lib/python3.6/site-packages

y ahora debería funcionar.

$ python import cv2 cv2.__version__ ''3.2.0-dev''


Instalé anaconda3 en Win10, y tuve el mismo error cuando estaba instalando opencv3 con conda: conda install -c menpo opencv3

Busqué un rato, vi esta pregunta y otra similar en los grupos de Google aquí . De alguna manera, logré instalar opencv3 en un env virtual de python35, que podría funcionar también en Mac OS.

conda create --name python35 python=3.5 activate python35 conda install -c menpo opencv3

Después, reinicie el navegador Anaconda3 y elija el entorno python35.

Tener una prueba en Spyder:

import cv2 print(cv2.__version__) 3.1.0


Esta respuesta ahora está desactualizada (a menos que, por alguna razón, haya querido utilizar una versión anterior de OpenCV). Consulte esta respuesta.

La respuesta correcta anterior no funcionó para mí.

Terminé bajando la versión de python hasta que se solucione.

conda install python=3.5 conda install -c menpo opencv3

Sé que esto no es una solución permanente, pero esto funciona para mí y puedes permanecer en el entorno de Conda sin hacer mucho.

Actualmente se hace referencia al problema aquí: https://github.com/conda/conda/issues/2448

¡Espero que esto ayude!