赞
踩
最近需要运行这样一段代码进行边缘检测:
import cv2 def nothing(x): pass img = cv2.imread('0001.png', 0) cv2.namedWindow('res') cv2.createTrackbar('min', 'res', 0, 25, nothing) cv2.createTrackbar('max', 'res', 0, 25, nothing) while (1): if cv2.waitKey(1) & 0xFF==27: break maxVal = cv2.getTrackbarPos('max', 'res') minVal = cv2.getTrackbarPos('min', 'res') canny = cv2.Canny(img, 10 * minVal, 10 * maxVal) cv2.imshow('res', canny) cv2.destroyAllWindows()
但是会报如下错误
Traceback (most recent call last):
File "/home/test.py", line 11, in <module>
cv2.namedWindow('res')
cv2.error: OpenCV(3.4.2) /tmp/build/80754af9/opencv-suite_1535558553474/work/modules/highgui/src/window.cpp:615: error: (-2: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 function 'cvNamedWindow'
系统是 Ubuntu 16.04,之前安装 OpenCV 是直接通过 conda install opencv
安装的。这样安装的是 3.4.2 版本的 OpenCV。
下面列一些能解决这个问题的方法:
1.
conda remove opencv
pip install opencv-python
或
conda remove opencv
pip install opencv-contrib-python
这样安装的 OpenCV 是最新版本,可以成功运行。
2.
conda remove opencv
conda install -c conda-forge opencv=4.1.0
不加后面的 4.1.0 安装的是 3.4.2 版本,4.1.0 版本可以成功运行。
3.
conda remove opencv
conda install -c menpo opencv3
安装的是 3.1.0,可以运行,但是会有其他小问题。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。