2017-08-14 73 views
1

而在Ubuntu 16.10与运行程序OpenCV的一个简单的Python3我收到此错误工作。OpenCV的不python3

OpenCV Error: Unspecified 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) in cvShowImage, file 
/io/opencv/modules/highgui/src/window.cpp, line 583 Traceback (most 
recent call last): File "samplecv.py", line 3, in <module> 
    cv2.imshow('image',img) cv2.error: /io/opencv/modules/highgui/src/window.cpp:583: error: (-2) 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 in 
function cvShowImage 

我跑的程序是:

import cv2 
    img = cv2.imread('my.jpg',0) 
    cv2.imshow('image',img) 

我已经检查了类似的问题thisthis。并重新安装opencv,但它没有帮助。

+0

如果通过Python的PIP安装OpenCV的,[这是众所周知的是,Python包装不与GTK支持编译](https://stackoverflow.com/a/43531919/3250829),所以你不能表现出屏幕上的图像以及这些错误。您唯一的选择是编译源代码以生成正确的Python包,以便显示图像。这些来自PyImageSearch的方向非常好:http://pyimagesearch.com/2015/07/20/install-opencv-3-0-and-python-3-4-on-ubuntu/。根据您的系统配置和设置,准备花30分钟到1小时。 – rayryeng

+0

感谢它现在完成。 –

回答

1

花了2个多小时,但其现在完成了! 我去的OpenCV this文件和随后的步骤安装OpenCV 3.3.0-dev的。 完成安装后,它仍然没有工作,所以我卸载使用

sudo pip3 uninstall opencv-python 

OpenCV的 - 蟒蛇现在错误是没有显示出来,但仍然是不显示图像,直到我说

cv2.waitKey() 

在节目结束时。 现在它的工作很好!

+1

是的,你必须使用'waitKey'。许多用户忘记这样做。 – rayryeng

0

您曾经尝试过什么更适合python2。你正在使用python3(正如我可以看到你的问题)。我想你正在使用pip3安装命令安装cv模块。它可以工作,但为模块提供了减少的功能:正如您从highgui模块中看到的那样' 函数未实现。'

解决方案:尝试第一答案from here和手动安装OpenCV模块如所描述的一步一步。

+0

所述'的cmake -D CMAKE_BUILD_TYPE = RELEASE \ -D CMAKE_INSTALL_PREFIX =的/ usr /本地\ -D INSTALL_C_EXAMPLES = ON \ -D INSTALL_PYTHON_EXAMPLES = ON \ -D OPENCV_EXTRA_MODULES_PATH =〜/ opencv_contrib /模块\ -D BUILD_EXAMPLES = ON' ..给出错误。反正我把它整理出来谢谢! –