python - tamaño - Error de OpenCV: la función no está implementada
roi python cv2 (5)
Antes de instalar libgtk2.0-dev y pkg-config o libqt4-dev. Asegúrese de haber desinstalado opencv. Puede confirmar esto ejecutando import cv2 en su shell de python. Si falla, instale los paquetes necesarios y vuelva a ejecutar cmake.
Estoy intentando que OpenCV trabaje con Python en mi máquina Ubuntu. He descargado e instalado OpenCV, pero cuando intento ejecutar el siguiente código python (que debe capturar imágenes de una cámara web y enviarlas a la pantalla)
import cv
cv.NamedWindow("w1", cv.CV_WINDOW_AUTOSIZE)
capture = cv.CaptureFromCAM(0)
def repeat():
frame = cv.QueryFrame(capture)
cv.ShowImage("w1", frame)
time.sleep(10)
while True:
repeat()
Obtuve el siguiente error:
The function is not implemented. Rebuild the library with Windows, GTK+ 2.x or
Carbon support. If you are on Ubuntu or Debian, install libgtk2.0-dev and
pkg-config, then re-run cmake or configure script
Así que hago lo que me piden: instalar los paquetes, moverme a la carpeta desde donde instalé OpenCV y ejecutar
sudo make uninstall
make
sudo make install
Pero cuando intento ejecutar Python, me da el mismo error. ¿Me estoy perdiendo de algo?
Espero que esta respuesta aún sea útil, a pesar de que el problema parece ser bastante antiguo.
Si tiene Anaconda instalado y su OpenCV no es compatible con GTK + (como en este caso), puede simplemente escribir
conda install -c menpo opencv=2.4.11
Instalará la versión adecuada de OpenCV que no produce un error mencionado. Además, reinstalará OpenCV previamente instalado si hubiera uno como parte de Anaconda.
No desperdicie su tiempo tratando de resolver este problema. Esto quedó claro para los creadores, en lugar de cv2. imshow()
utiliza img = cv2.imread(image_path) plt.imshow(img, cmap = ''gray'', interpolation = ''bicubic'') plt.xticks([]), plt.yticks([]) # to hide tick values on X and Y axis plt.show()
Si instaló OpenCV utilizando el paquete pip opencv-python en cualquier momento, tenga en cuenta la siguiente nota, tomada de https://pypi.python.org/pypi/opencv-python
NOTA IMPORTANTE Las ruedas MacOS y Linux tienen actualmente algunas limitaciones:
- la funcionalidad relacionada con el video no es compatible (no compilada con FFmpeg)
- por ejemplo
cv2.imshow()
no funcionará (no compilado con GTK + 2.xo soporte de Carbono)
También tenga en cuenta que para instalar desde otra fuente, primero debe eliminar el paquete opencv-python
Si te está dando errores con gtk, prueba qt.
sudo apt-get install libqt4-dev
cmake -D WITH_QT=ON ..
make
sudo make install
Si esto no funciona, hay una salida fácil.
sudo apt-get install libopencv-*
Esto descargará todas las dependencias requeridas (aunque parece que tiene todas las bibliotecas requeridas instaladas, pero aún así podría intentarlo una vez). Esto probablemente instalará OpenCV 2.3.1 (Ubuntu 12.04). Pero como tiene OpenCV 2.4.3 en /usr/local/lib
incluya esta ruta en /etc/ld.so.conf
y haga ldconfig
. Entonces, cada vez que use OpenCV, usaría la última versión. Esta no es la mejor manera de hacerlo, pero si todavía tiene problemas con qt o gtk, intente esto una vez. Esto debería funcionar.