ubuntu16.04系统,使用anaconda安装opencv,安装指令:conda install -c https://conda.binstar.org/menpo openc,安装完后import cv2没问题,但是从摄像头抓取图像并显示时报错:
error:
/tmp/build/80754af9/opencv_1512687413662/work/modules/highgui/src/window.cpp:611:
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
官方git讨论知道原因:https://github.com/conda-forge/opencv-feedstock/issues/43
以前的conda各种源的opencv是不带gtk和ffmpeg的,一些人使用menpo源可以,是因为cv有,但是这个源早已停止维护
主维护者说:
https://github.com/conda-forge/opencv-feedstock/issues/43#issuecomment-307205898
发现这些依赖已经集成在新版里面了,可是为什么使用conda install -c conda-forge opencv等命令还是不行呢?使用conda list | grep cv发现安装的并不是这些预先装好的库(i.e.: pyxx_blas_xx)。在loopbio的repo中可以看到推荐方法来添加channel,使用这个来查找可以使用的cv库。
conda config --add channels conda-forge
conda search opencv --channel conda-forge
可以看到各种build以及版本,选择自己想要的版本及build来安装cv,然后我的imshow什么的就可以用了。