Ubuntu系统下Import cv2提示no modules ...错误

  最近利用pycharm在Ubuntu系统下调试一个Python项目,将pycharm的解释器从python2.7更换到python3.4后,程序中的Import cv2提示no modules named cv2错误。

  经测试需要做两处调整可以解决此问题:

  1)将usr/lib/python2.7/dist-packages中的cv2.so文件复制到usr/lib/python3.4/dist-packages

  2)回到/home路径下,Ctrl+h将隐藏文件夹及文件复现,然后找到/home/.PyCharmCE2017.2/system/python_stubs下面会有两个文件夹,一个对应python2.7第三方模块的源文件,另一个对应于python3.4。只需找到python2.7下面的cv2文件夹复制到python3.4对应的文件夹下面即可。

--------------------------------------------------------我是分割线-----------------------------------------------

  很遗憾,上面的方法指标不治本,在调试程序时出现错误:

ImportError: dynamic module does not define init function (PyInit_cv2)

  在stackflow上搜了一波之后,类似问题说并没导出对应的初始化函数,但是具体如何导出让然不得而知。于是又尝试安装opencv-python:

sudo pip3 install opencv-python

    结果问题迎刃而解。对应版本为version3.2.0.8

原文地址:https://www.cnblogs.com/freshmen/p/7272393.html