我知道有很多关于如何安装OpenCV-Python的主题。 我查了很多,他们帮我解决了在Ubuntu上安装openCV-python的一些问题
我设法安装了openCV,但工作不正常。当我尝试跑步时:
import numpy
import cv2
img= cv2.imread('image.png',0)
cv2.imshow('image',img)
我收到错误
错误:/io/opencv/modules/highui/src/window.cpp:583:错误:( - 2) 功能未实现。使用Windows,GTK +重建库 2.x或碳支持。如果您使用的是Ubuntu或Debian,请安装libgtk2.0-dev和pkg-config,然后重新运行cmake或配置脚本 function cvSowImage
我该怎么做?我怀疑我应该重复cmake并以某种方式包含这两个库,但是如何?
编辑2017年3月19日 我按照以下说明进行操作:
和
http://www.pyimagesearch.com/2016/10/24/ubuntu-16-04-how-to-install-opencv/
和来自:
http://docs.opencv.org/trunk/d7/d9f/tutorial_linux_install.html
每次我的脚本包括(我从IDLE运行):
cv2.imshow('image',img
)
我收到了同样的错误消息:
Traceback (most recent call last):
File "/home/dcanals/Documents/test.py", line 5, in <module>
cv2.imshow('image',img)
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
我重新开始不明白发生了什么。我只想让openCV开始学习这个软件包。我安装了libgtk2和pkg-config。我一步一步地按照说明进行操作。为什么不工作?我现在该怎么做让python-openCV正常工作?谢谢
2017年3月21日编辑
我编辑这篇文章因为我认为我发现了非常重要的文档: https://pypi.python.org/pypi/opencv-python
关于'opencv-python'包的文章在哪里写的:
重要提示:
MacOS和Linux版本有一些限制:
不支持视频相关功能(未编译 FFmpeg)例如cv.imshow()不起作用(不用GTK +编译) 2.x或碳支持)
解决
我设法让它发挥作用。
问题是我有混合包,可能是不兼容的。 我第一次尝试安装OpenCV时使用的是opencv-python包。它没用,所以我尝试用python构建官方的opencv。没有任何效果。
解决方案是重新安装Ubuntu 16.10并从官方网站重新安装opencv。
答案 0 :(得分:3)
conda install -c menpo opencv = 2.4.11
解决方案在这个主题中:OpenCV error: the function is not implemented
在Ubuntu 14.04上解决了我的问题。 虽然你需要一个Anaconda2才能使用它。 但是一旦你拥有了include和libs,就可以将它们拿出来并与你的程序一起使用。
答案 1 :(得分:2)
我认为cmake在这种情况下太复杂了。在删除OpenCV 3.4.2并在Ubuntu 18.04上安装OpenCV 4.2之后,我已经解决了该问题。
执行以下命令。
$ conda删除opencv $ conda install -c menpo opencv $ pip install-升级pip $ pip install opencv-contrib-python
在终端中检查版本。
打开Python界面:
>>> import cv2
>>> print(cv2.getBuildInformation())
General configuration for OpenCV 4.2.0 ==============
Reference: https://pythonpedia.com/en/knowledge-base/40207011/opencv-not-working-properly-with-python-on-linux-with-anaconda--getting-error-that-cv2-imshow---is-not-implemented
欢呼
答案 2 :(得分:1)
我已经用最新的opencv-python遇到了这个问题。降级opencv-python对我有用。
pip uninstall opencv-python
pip install opencv-python==4.0.1.23
答案 3 :(得分:0)
用opencv
安装pip
解决了我的问题:
pip install opencv-python
但是实际上,最好使用conda
答案 4 :(得分:0)
我刚到这里寻找相同的答案...简单的解决方案 1.安装libgtk2.0-dev 2.重新编译并重新安装opencv
我正在使用opencv 3.4.6,并且正在从源代码构建它。卸载它很重要,您使用
sudo进行卸载
从与您进行make安装相同的构建目录。我不需要更改我的cmake文件中的任何内容。
答案 5 :(得分:0)
我遇到了同样的问题,花了几天的时间挠头寻找合适的解决方案。我确实找到了解决方案,但在让我先回答您的问题之前。
我该怎么做?我怀疑我应该重复cmake并以某种方式包括这两个 库,但是如何?
pkg-config::您不必在cmake中包括“ pkg-config”。
[如果您是像我这样的新手,“ pkg-config”提供了编译程序并将其链接到库的必要详细信息。此元数据存储在pkg-config文件中(例如,后缀为* .pc的文件,位于/usr/lib/pkgconfig
目录中)。如果系统没有pkg-config,则可以使用sudo apt-get install pkg-config
]
libgtk2.0-dev::在重新运行cmake时使用cmake -D WITH_GTK=ON ..
进行配置。如果您的系统中没有libgtk,则可以使用sudo apt-get install libgtk2.0-dev
我的问题:我遇到的问题是,我同时配置了-D WITH_QT = ON
和-D WITH_GTK = ON
。尽管我的系统中有libgtk
,但由于某种原因它显示了以下错误消息:
安装libgtk2.0-dev和pkg-config,然后重新运行cmake
我的解决方案:
重新运行cmake时,我使用了QT而不是GTK。
在重新运行之前,我使用dpkg --purge libgtk2.0-dev
删除了libgtk2.0-dev,然后使用make uninstall
从构建目录中卸载了opencv。
接下来,使用sudo apt-get install libqt5-default
安装了QT,并使用-D WITH_QT = ON
和-D WITH_GTK = OFF
,最后是make install
从opencv构建目录重新运行了cmake。你猜怎么了!它又恢复了功能!!但是具有与QT不同的GUI。
我认为,对于-D WITH_GTK = ON
,也可以反之亦然,只需确保已在系统中正确安装libgtk2.0-dev
。 [尽管出于某些原因,在我的情况下还是不起作用:(]
答案 6 :(得分:0)
安装libgtk2.0-dev和pkg-config文件解决了该错误。 (在Opencv4中测试)
您必须从OpenCV构建目录重新运行cmake。
sudo apt-get install pkg-config
sudo apt-get install libgtk2.0-dev