python - Ubuntu 无法安装 OpenCV(libopencv_core 错误)

标签 python opencv ubuntu

我尝试在 Ubuntu 14.04 上安装 OpenCV 3.0 for Python,但经过多次安装(并阅读 StackOverflow 页面)后,它仍然无法工作。

在 Python (Python 2.7) 中,当导入时输入 import cv2 我收到此错误:

Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ImportError: libopencv_core.so.2.4: cannot open shared object file: No such file or directory

我发现这个错误可能是由于文件 /etc/ld.so.conf.d/opencv.conf 造成的,因此我在其中写入了行 /usr/local/opencv/ 但没有帮助(实际上我的电脑上的 /usr/local/ 中没有文件夹 opencv...

对于安装,我按照此网站上的说明进行操作:http://milq.github.io/install-opencv-ubuntu-debian/

我怀疑在 cmake 阶段发生了错误,因为我遇到了诸如 -- Performing Test HAVE_CXX_WMISSING_PROTOTYPES - Failed 之类的失败。我不知道这意味着什么以及它对安装是否重要......

我还有其他错误,例如

-- 检查模块“gstreamer-base-1.0”

-- 找不到包“gstreamer-base-1.0”

make阶段我收到了这个错误

[ 31%] Building CXX object modules/highgui/CMakeFiles/opencv_highgui.dir/qrc_window_QT.cpp.o
In file included from /home/xavier/OpenCV/build/modules/highgui/qrc_window_QT.cpp:9:0:
/home/xavier/OpenCV/build/modules/highgui/qrc_window_QT.cpp: In function ‘int qInitResources_window_QT()’:
/home/xavier/OpenCV/build/modules/highgui/qrc_window_QT.cpp:1749:25: warning: no previous declaration for ‘int qInitResources_window_QT()’ [-Wmissing-declarations]
int QT_MANGLE_NAMESPACE(qInitResources_window_QT)()
^
/usr/include/qt5/QtCore/qglobal.h:100:36: note: in definition of macro ‘QT_MANGLE_NAMESPACE’
# define QT_MANGLE_NAMESPACE(name) name
^
/home/xavier/OpenCV/build/modules/highgui/qrc_window_QT.cpp: In function ‘int qCleanupResources_window_QT()’:
/home/xavier/OpenCV/build/modules/highgui/qrc_window_QT.cpp:1758:25: warning: no previous declaration for ‘int qCleanupResources_window_QT()’ [-Wmissing-declarations]
int QT_MANGLE_NAMESPACE(qCleanupResources_window_QT)()
^
/usr/include/qt5/QtCore/qglobal.h:100:36: note: in definition of macro ‘QT_MANGLE_NAMESPACE’
# define QT_MANGLE_NAMESPACE(name) name
^
[ 31%] Generating opencl_kernels_superres.cpp, opencl_kernels_superres.hpp

你知道哪里出了问题吗?

最佳答案

我终于解决了我的问题。由于这可能会让其他人感兴趣,因此我将如何进行。

  1. 我从计算机中完全删除了 opencv:

    • sudo make unistall 在我编写 sudo make install 的存储库中
    • sudo find/-name "*opencv*"-exec rm -i {}\; 删除所有包含“opencv”的文件
    • sudo find/-name "*cv2.so*"-exec rm -i {}\; 删除所有包含“cv2.so”的文件
    • conda 卸载 opencv(如果需要)
  2. 我关注了this link为Python2.7安装OpenCV2.4.10:我点5、6、7和12(其余点对我想要的没有用)。我对 cmake 命令做了一些更改,然后输入了

    cmake -D WITH_TBB=ON -D BUILD_NEW_PYTHON_SUPPORT=ON -D INSTALL_C_EXAMPLES=ON -D INSTALL_PYTHON_EXAMPLES=ON -D BUILD_EXAMPLES=ON  -D WITH_OPENGL=ON -D WITH_VTK=ON -D WITH_GTK=ON .. 
    
  3. 现在,如果在 Python 中输入 import cv2 时出现“没有名为 cv2 的模块”之类的错误,请使用以下命令编辑 .bashrc 文件

    export PYTHONPATH=/usr/local/lib/python2.7/site-packages:$PYTHONPATH
    

您必须重新加载 .bashrc 文件(源 .bahsrc)才能应用更改。

  • 最后我重新启动了计算机。结果成功了!
  • 总而言之,我不知道为什么它以前不起作用,但看来使用这个版本的 OpenCV 我没有遇到任何问题!

    祝你好运!

    关于python - Ubuntu 无法安装 OpenCV(libopencv_core 错误),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36596018/

    相关文章:

    python - OpenCV + 健身房复古 : Invalid number of channels in input image

    python - 在使用 imread 函数读取 jpg 文件时,是否有任何可能的原因在 opencv 中遇到一些困难?

    linux - 无法删除设备/dev/loop0

    linux - 如何使用终端重命名文件

    ubuntu - 每当我在 Ubuntu 10.04 Linux 中从终端运行 'gvim' 时,为什么会出现 GLib-GObject-CRITICAL gvim 错误?

    python - 在生产中训练机器学习

    python - 使用Twython发推文,twitter api报错

    python - 在 Python Visual Studio 下调试时编辑并继续?

    python - findall() 和使用带有迭代器的 for 循环来查找模式匹配之间有什么区别

    c++ - 使用 C++ 加载视频和抓取图像的最佳方式