菜鸟笔记
提升您的技术认知

菜鸟教程

rapidjson 构造数组将函数实现放在头文件中RapidJSON解析和生成Json绝对路径和相对路径gcc 优化选项 -O1 -O2 -O3 -Os 优先级Python求一个整数位数的方法python中判断数字位数的几种方法python计算分位数查看hive的版本如何查看hadoop的版本elasticsearch查看所有indexsublime 列模式 列编辑shell遍历目录下所有文件http-parser解析http报文详解supervisor守护工具配置lnmp为已有站点手动更新ssl证书记录java 最长回文、最长回文子串ssh免密码登录为Linux内核开启BBR加速frp服务开机自启x86架构下,页面大小为什么是4K?如何限制对象只能建立在堆上或者栈上进程间通信的方式SyntaxError: Non-ASCII character '\xe5'TCP 连接半关闭问题ucontext 协程库代码分析python中yield的用法详解为PHP7.0安装redis扩展ucontext 简单协程库ImportError: No module named cv2的完美解决方法HashMap扩容全过程关于HashMap常见面试考点(底层原理+扩容机制)DOS批处理中的字符串处理详解(字符串截取)Linux下如何查找.sh后缀的文件core文件出现“is not a core dump: File format not recognized”的原因和解决方法(看/proc/pid/limits)记一次docker问题定位(perf,iostat等性能分析)Protocol Buffers 2.5.0 安装python 使用thrift序列化与反序列化对象PHP的base64_decode乱码linux中后台运行 java -jarLinux常用命令--文件搜索Linux常用命令--文件基础操作与文件权限变更Linux常用命令--软件包管理之(RPM包管理)Linux常用命令--文件编辑与查看Linux常用命令--文件压缩与挂载Linux常用命令--系统管理Linux常用命令--系统管理之(用户管理、用户组管理)Linux常用命令--系统管理之(进程管理、定时任务、系统监控)Linux常用命令--软件包管理之(服务管理)Linux常用命令--软件包管理之(yum与源码包安装)Linux初窥:Linux下SSH免密码登录配置如何查看CentOS7的版本信息Linux环境变量文件介绍Linux下Tomcat的安装与配置CentOS解决-bash: vim: command not found10 个提高效率的 Linux 命令别名shell比较浮点数和整数crontab 30秒执行一次Python中字典合并的四种方法shell查看CPU 硬盘 内存使用率Python 四大主流 Web 编程框架python:web后台框架简单实现

ImportError: No module named cv2的完美解决方法

阅读 : 108

      此刻是2018年1月21日晚10点13分,我怀着激动的心情,从Ubuntu系统上登上我的CSDN博客然后发来贺电,祝贺我自己解决了ImportError: No module named cv2的问题,这仿佛是从另一个世界(Ubuntu世界)向现实世界(windows世界)通话,很奇妙!

        事情还要从遥远的下午4点半说起,那是时候我还是个孩子,天真烂漫的孩子,在我的Ubuntu系统上准备跑一个faster R-CNN的demo。当然,是为了测试我的caffe环境时否搭建好了,这个demo就是github上训练好的模型,具体我就不说了,大家可以参照这个博主的教程,简单明了。我就不说。

我的搭建环境:

                        ubuntu14.04

                        caffe

                         opencv-3.0.0-beta

                         anaconda2

           但是在运行最后一步的时候

./demo.py --cpu

顿时出现了一个错误,刚开始的错误时找不到easydict模块( ImportError: No module named easydict),然后就用

sudo pip install easydict

安装easydict ,但是还是提示找不到,其实这句话运行完之后如果安装成功应该是在你的usr/local/lib/python2.7/dist-packages文件夹下有一个easydict文件夹,但是这个时候时不对的,因为你再次尝试运行./demo.py --cpu的时候,还是会出现这个错误,那是因为easydict应该放在你的home/anaconda2/lib/python2.7/site-packages文件夹下面,为什么要这样,那是因为跟我的配置环境有关,因为我的python用的时anaconda而不是自带的python,所以要这样。

ImportError: No module named cv2

           接下来看最主要的,也就是cv2发现不了,在这里为了给大家理清思路,我就直接说解决方案把,碰到这个问题的时候我就从一个孩子,天真烂漫的孩子变成一个车车弟弟的傻逼。

  第一步:

         安装python-opencv

sudo apt-get install python-opencv

        看是否解决,如果没有解决请看第二步。

第二步:

         找到cv2.so文件复制到你的usr/local/lib/python2.7/site-packages文件夹下(在你没有用anaconda的情况下),如何找自己的cv2.so,我提供一个很便捷的方法(一定要用这个方法,不然你不好找):

find / -name "cv2.so"

        然后在终端cd到home,输入python,此时就会出现python的版本号等一些信息,然后输入

>>>import cv2

      此时如果没有提示错误就证明已经解决了这个问题。

      在没有用anaconda的情况下,到这一步应该就应该已经完全解决了,如果你还没有解决,那就看第三步:

第三步:

         看到第三步的说明用的是anaconda,通过第二步找到cv2.so后,复制cv2.so到home/anaconda2/lib/python2.7/site-packages文件夹下,然后和第二步一样,输入python,然后输入import cv2.就可以了。

谢谢大家!我的表演结束!请欣赏图片: