Este es el error exacto que estoy consiguiendo. Mi sistema operativo es Ubuntu 16.10.

OpenCV Error: Error no especificado (La función no está implementada. La reconstrucción de la biblioteca con Windows, GTK+ 2.x o soporte de Carbono. Si estás en Ubuntu o Debian, instalar libgtk2.0-dev y pkg-config, a continuación, vuelva a ejecutar cmake o configurar la secuencia de comandos) en cvShowImage, archivo /feedstock_root/build_artefacts/work/opencv-3.1.0/modules/highgui/src/window.cpp línea 545
Traceback (la mayoría de llamada reciente pasado):
Archivo «untitled.py», de la línea 7, en
cv2.imshow («imagen», img)
cv2.error: /feedstock_root/build_artefacts/trabajo/opencv-3.1.0/modules/highgui/src/de la ventana.cpp:545: error: (-2) La función no está implementada. La reconstrucción de la biblioteca con Windows, GTK+ 2.x o soporte de Carbono. Si estás en Ubuntu o Debian, instalar libgtk2.0-dev y pkg-config, a continuación, vuelva a ejecutar cmake o script de configuración en función de cvShowImage

mi código es:

import numpy as np
import cv2

# Load an color image in grayscale
img = cv2.imread('0002.png',0)

cv2.imshow('image',img)
cv2.waitKey(0)
cv2.destroyAllWindows()

0002.png es una imagen en el mismo directorio que el programa.
Por primera vez instalado anaconda con python 3.5, luego he instalado opencv mediante el comando

conda install -c conda-forge opencv

He instalado libgtk2.0-dev así como el error, dijo, pero me sigue apareciendo el mismo error.
Cualquier ayuda sería muy apreciada. He estado tratando de resolver esto por varias horas.

InformationsquelleAutor Job Martinez | 2016-10-23

12 Comentarios

  1. 52

    1.La manera más fácil:

    conda remove opencv
    conda update conda
    conda install --channel menpo opencv

    o (para OpenCV 3.1) :

    conda install -c menpo opencv3

    2.Y si u no quiero hacer esto, usted puede intentar usar matplotlib .

    import cv2
    import matplotlib.pyplot as plt
    
    img = cv2.imread('img.jpg',0)
    
    plt.imshow(img, cmap='gray')
    plt.show()

    3.O intentar construir la biblioteca por su cuenta con la opción de WITH_GTK=ON , o algo como eso.

    Actualización – 18 de Junio de 2019

    Tengo este error en mi Ubuntu(18.04.1 LTS) sistema de openCV 3.4.2, como la llamada al método cv2.imshow estaba fallando. Estoy usando anaconda. Sólo la por debajo de los 2 pasos me ayudaron a resolver:

    conda remove opencv
    conda install -c conda-forge opencv=4.1.0

    Si usted está usando pip, puede intentar

    pip install opencv-contrib-python
    • O usted puede utilizar conda install --channel loopbio --channel conda-forge --channel pkgw-forge gtk2 ffmpeg ffmpeg-feature gtk2-feature opencv. (Detalles de la aquí.)
    • Para conda (en realidad, Miniconda) es mejor utilizar entornos. También, parece opencv instalación temporaty falla por conda y Python 3.6, así que por ahora debe ser conda create --name py3 python=3.5, entonces activate py3, entonces conda install -c menpo opencv3.
    • ACTUALIZACIÓN : opencv-python 3.4.0.12 ha de vídeo compatibles funciones relacionadas, por lo que podemos utilizar pip install opencv-python como normal.
    • Todavía se me pone este error: /io/opencv/modules/highgui/src/de la ventana.cpp:331: error: (-215) de tamaño.width>0 && tamaño de.altura>0 en función imshow
    • para los futuros lectores: sólo esto funcionó para mí: conda install -c menpo opencv3. el primero no soluciona el problema (conda install --channel menpo opencv)
    • Una solución es utilizar virtualenv y crear un virtualenv y uso pip install numpy, pip install matplotlib and pip install opencv-contrib-python , etc instalar después de activar el medio ambiente, en lugar de utilizar conda, para mí las soluciones anteriores no funcionan, pero el uso de un entorno virtual es una gran solución.
    • Esto no me funciona en Ubuntu.
    • ¿Por qué especificar --channel menpo al instalar opencv? Puedo instalarlo sin necesidad de utilizar ese canal. (Seguramente me estoy haciendo otro paquete utilizando el canal por defecto, soy yo?)
    • el comentario es de Oro! Estado buscando por horas para algo que funcionó!

  2. 21

    He tenido que lidiar con este problema un par de veces, esto es lo que ha trabajado constantemente hasta ahora:

    conda remove opencv
    conda install -c menpo opencv
    pip install --upgrade pip
    pip install opencv-contrib-python
    • Sí, esto funcionó para mí cuando Alex Glinsky la respuesta no.
    • Esto también trabajó mí. Me paso el número de horas para resolver esto.. finalmente funcionó
    • Trabajó para mí con Miniconda en MX Linux.
  3. 9

    Si ha instalado OpenCV utilizando el opencv-python pip paquete en cualquier punto en el tiempo, ser conscientes de la siguiente nota, tomada de https://pypi.python.org/pypi/opencv-python

    NOTA IMPORTANTE
    MacOS y Linux ruedas tienen actualmente algunas limitaciones:

    • vídeo relacionado con la funcionalidad no es compatible (no compilado con FFmpeg)
    • por ejemplo cv2.imshow() no va a funcionar (no compilado con GTK+ 2.x o soporte de Carbono)

    También tenga en cuenta que para instalar desde otra fuente, primero debe quitar el opencv-paquete de python

  4. 3

    Para mí (Arch Linux, Anaconda con Python 3.6), la instalación de la propuesta de los canales de menpo o loopbio no cambiar nada. Mi solución (ver una pregunta relacionada con la) fue

    1. instalar pkg-config (sudo pacman -Syu pkg-config),
    2. quitar opencv desde el medio ambiente (conda remove opencv) y
    3. re-instalar opencv desde el conda-forge canal (conda install -c conda-forge opencv)

    conda list ahora devuelve opencv 3.3.0 py36_blas_openblas_203 [blas_openblas] conda-forgey todas las ventanas inició con cv2 están trabajando bien.

    • después de la colocación de más de 1 hora para la resolución de este problema, finalmente esta respuesta trabajado para mí! Muchas gracias!!!!
  5. 3

    Método de trabajo (probado en 19 de abril de 2019)

    Estos errores ocurren porque de conda. Abierto Anaconda Símbolo de y quitar conda opencv si está instalado, con el siguiente comando

    Si usted tiene conda env, en primer lugar activar conda activate myenv

    conda remove opencv

    Después de instalar opencv a través de pip (haga clic en aquí a la oficial de información)

    pip install opencv-contrib-python

    si el pip no se ha instalado, utilice conda install pip comando.

  6. 2

    He seguido este tutorial (OpenCV GTK+2.x error) y tuvieron los siguientes. A mí me funcionó :

    1. instalar los paquetes : libgtk2.0-dev y pkg-config
    2. cd a su opencv directorio
    3. mkdir Liberación
    4. de Lanzamiento del cd
    5. Ejecutar el comando : 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_GTK=ON -D WITH_OPENGL=ON ..
    6. hacer
    7. sudo make install
  7. 2

    Aviso de que se está quejando por libgtk2.0-dev y pkg-config. Aquí está la solución. Desinstalar el existente de instalación de openCV.

    conda quitar opencv3

    Instalar estos paquetes antes de instalar opencv-
    conda instalar gtk2 pkg-config

    Ahora instalar opencv de menpo
    conda instalar -c https://conda.anaconda.org/menpo opencv3

    • $ conda instalar gtk2 pkg-config Resolver medio ambiente: no se pudo PackagesNotFoundError: Los siguientes paquetes no están disponibles en los canales de corriente: – gtk2
    • esto no es trabajo conda puedes encontrar gtk2
  8. 0

    Quitar opencv de anaconda=

    conda quitar opencv

    A continuación, vuelva a instalar opencv usando pip:

    pip instalar opencv

    Este es trabajo para mí.

  9. 0

    Mi Envirment es Win10, y he añadido la anaconda ruta de acceso a las variables de entorno de la RUTA de acceso’,el cv2.imshow trabajado

    C:\Users\user\Anaconda3
    C:\Users\user\Anaconda3\Scripts

    A continuación, reinicie el windows

  10. 0

    Aunque esto ya está contestada, para mí conda-forge solución trabajado con un hack.
    Mi estación de trabajo es un centos 6 de la máquina, y yo uso conda entorno virtual (anaconda 2). Crear un ambiente

    conda create --name test python=2.7

    y, a continuación, active

    conda activate test

    Ahora instalar opencv de conda-forge

    conda install -c conda-forge opencv

    Ahora instalar matplotlib en este entorno (y este es el hack 1)

    conda install matplotlib

    Vamos a comprobar ahora imshow funciona o no. En un terminal, activar el entorno de prueba y empezar a python. En el intérprete, hacer

    import cv2
    import matplotlib.pyplot as plt # hack 2
    img = cv2.imread('your_image_file',0)
    cv2.imshow('image',img)

    Este aparecerá una ventana que muestra la imagen. Yo no más la investigación de cómo esta resuelto el caso.

    Nota 1: Usted puede ver algunos de error relacionados con xkb, a continuación, en su .bashrc para agregar archivos

    exportación QT_XKB_CONFIG_ROOT=/usr/share/X11/xkb

    Nota 2: Usted puede ver algunos de error relacionados con XDG_RUNTIME_DIR, a continuación, en su .bashrc archivo también agregar

    exportación XDG_RUNTIME_DIR=.tmp/myruntime
    y definir myruntime por mkdir -p .tmp/myruntime

  11. 0

    Si está ejecutando dentro de docker, entonces usted puede obtener este error.Solución desinstalar actual e instalar la decapitado a uno

    pip instalar opencv-python==3.4.5.20

    pip instalar opencv-contrib-python==3.4.5.20

    Si usted está escribiendo para la imagen y la visualización de él, usted puede tener la siguiente

    apt-get update && apt-get install -y libglib2.0-0 libsm6 libxext6 libxrender1

    Y si usted se está preguntando cómo conseguir la pantalla de la ventana acoplable, es posible a través de X11 en tu host

    • Puedes dar más punteros? Estoy corriendo ventana acoplable en OSX.

Dejar respuesta

Please enter your comment!
Please enter your name here