我知道这个问题已经在这里被问过几次了,但由于到目前为止没有任何答案帮助我,我再次在这里发布它。
我做了什么:
我克隆了存储库构建,创建并更改到https://github.com/Itseez/opencv目录,并使用以下命令编译了OpenCV。
cmake -D CMAKE_BUILD_TYPE=RELEASE -D WITH_TBB=ON -D BUILD_opencv_python2=ON -D WITH_V4L=ON -D INSTALL_C_EXAMPLES=ON -D INSTALL_PYTHON_EXAMPLES=ON -D BUILD_EXAMPLES=ON -D WITH_QT=ON -D WITH_OPENGL=ON -D WITH_VTK=ON -D WITH_CUDA=ON -D WITH_CUBLAS=ON -D CUDA_ARCH_BIN="2.0 3.0 3.5" ..
make
sudo make install
一切都编译得很好。之后,我将/usr/local/lib
添加到/etc/ld.so.conf.d/opencv.conf
并执行sudo ldconfig
。最后,我补充说
PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/lib/pkgconfig
export PKG_CONFIG_PATH
去我当地的bashrc。一切都运行得很好,我也可以执行cpp示例,但只要我尝试python示例或尝试在python中使用OpenCV,我就会得到:
ImportError:没有名为cv2的模块
基于其他帖子尝试的内容:
cv2.so
复制到/usr/local/lib/python2.7/dist-packages
:不起作用,因为我在任何地方都找不到cv2.so。附加:
我还尝试了与主页上的最新来源相同的步骤:相同的结果。
我找到几个资源来源,说现在正确的标志是BUILD_NEW_PYTHON_SUPPORT
,而不是BUILD_PYTHON_SUPPORT
,就像在早期版本中一样。由于两者都不适用于我,我使用了BUILD_opencv_python2
。对吗?
那么,这里会有什么问题呢?我的意思是,除了我的机器上没有cv2.so这一事实。顺便说一句,我用的是Ubuntu 14.04。
提前谢谢。
发布于 2015-05-22 21:23:45
我不确定如果你从源代码编译是否也是这种情况,但是当你使用自解压程序时,你需要复制一个包含Python绑定的文件,正如@Malik Brahimi所指出的那样。这一步是你做的吗?
\python\2.7文件夹
Here是一个教程,它来自于Ubuntu14.04和WinPython上的Anaconda,也适用于我。在Linux上,只需将文件复制到python发行版的同一文件夹中,即Python27/lib/site-packeges
发布于 2015-08-27 02:50:50
我确实遇到了同样的麻烦。但是看一看(并遵循) this教程,似乎拆分python环境起到了作用。
发布于 2015-10-26 14:21:14
我刚刚在Ubuntu14.04上安装了OpenCV 3.0。起作用了。
根据official tutorial,安装OpenCV。
#!/bin/bashd
#https://help.ubuntu.com/community/OpenCV
version="$(wget -q -O - http://sourceforge.net/projects/opencvlibrary/files/opencv-unix | egrep -m1 -o '\"[0-9](\.[0-9]+)+' | cut -c2-)"
echo "Installing OpenCV" $version
mkdir OpenCV
cd OpenCV
echo "Removing any pre-installed ffmpeg and x264"
sudo apt-get -qq remove ffmpeg x264 libx264-dev
echo "Installing Dependenices"
sudo apt-get -qq install libopencv-dev build-essential checkinstall cmake pkg-config yasm libjpeg-dev libjasper-dev libavcodec-dev libavformat-dev libswscale-dev libdc1394-22-dev libxine2-dev libgstreamer0.10-dev libgstreamer-plugins-base0.10-dev libv4l-dev python-dev python-numpy libtbb-dev libqt4-dev libgtk2.0-dev libfaac-dev libmp3lame-dev libopencore-amrnb-dev libopencore-amrwb-dev libtheora-dev libvorbis-dev libxvidcore-dev x264 v4l-utils ffmpeg cmake qt5-default checkinstall
echo "Downloading OpenCV" $version
wget -O OpenCV-$version.zip http://sourceforge.net/projects/opencvlibrary/files/opencv-unix/$version/opencv-"$version".zip/download
echo "Installing OpenCV" $version
unzip OpenCV-$version.zip
cd opencv-$version
mkdir build
cd build
cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local -D WITH_TBB=ON -D BUILD_NEW_PYTHON_SUPPORT=ON -D WITH_V4L=ON -D INSTALL_C_EXAMPLES=ON -D INSTALL_PYTHON_EXAMPLES=ON -D BUILD_EXAMPLES=ON -D WITH_QT=ON -D WITH_OPENGL=ON ..
make -j2
sudo checkinstall
sudo sh -c 'echo "/usr/local/lib" > /etc/ld.so.conf.d/opencv.conf'
sudo ldconfig
echo "OpenCV" $version "ready to be used"
使用以下代码进行测试:
import cv2
img = cv2.imread("/home/xiao/Desktop/test.png")
cv2.imshow("opencv",img)
cv2.waitKey(0)
cv2.destroyAllWindows()
https://stackoverflow.com/questions/30353823
复制相似问题