VScode报错:Module ‘cv2’ has no ‘imread’ member原因分析:vscode的插件检测不到模块, 主要原因是cv2模块下还有cv2模块解决方案:在添加包的时候添加:#import cv2 将这个改成下面的语句from cv2 import cv2 ...
  
   在运行程序时常常会遇到NoneType相关的
   
    错
   
   误,主要是两种可能原因:
(1)
   
    cv
   
   2.
   
    imread
   
   ()加载图像的路径无效
(2)通过
   
    cv
   
   2.VideoCapture或
   
    cv
   
   2.read从视频中读取图像存在问题
1.Python中的NoneType
   
    错
   
   误
在Python使用过程中会遇到这样的
   
    错
   
   误:
AttributeError: ‘NoneType’ object has no attribute ‘something’
something可以用实际属性的名称替换
当我们认为我们正在使用特定类或对象的实例时会看到这些
   
    错
   
   误,实际上是Python内置类型’None‘,’None‘ 表示缺少值,比如当函数
  
  
   在进行练习Python词云WordCloud练习时候,想用一张特殊形状背景为白色的照片生成一张特殊形状的词云.png图片,这时候需要用到
   
    imread
   
   方法。
import jieba
import wordcloud
from scipy. misc import
   
    imread
   
   出现
   
    错
   
   误:cannot import name
   
    imread
   
   然后开始寻找解决方案,找遍了网上的参考资料,有如下几种可能的情况:
1.没有安装Pillow。
解决方案:pip install pillow或者将下载好的pillow包放入指定的目录中,并用pip3 install Pillow-(版本)-cp版本-cp版
  
  解决:经过查找资料,import
  
   cv
  
  2出现“ImportError: numpy.core.multiarray failed to
import”最主要的原因是open
  
   cv
  
  3版本依赖出现问题,太新的numpy版本会导致
  
   cv
  
  2引用出
  
   错
  
  ,所以出现此类问题,不防降低numpy版本试试!
列几个我用到的语句:
pip install open
  
   cv
  
  -pyt
from .
  
   cv
  
  2 import *
ImportError: libGL.so.1: cannot open shared object file: No such file or directory
CentOS Linux release 7.2.1511 (Core)
Python3.7
在网上找了诸多帖子,没找到合适的,最终还是解决问题了。字啊这里简要记录下解问题过程,给自己和后来遇到问题的同学提供一些线索。
先检查open-
  
   cv
  
  模块安装情况
  
   1 图像的分类
1.二值图像 :
仅包含黑色和白色两种颜色,每个像素点只使用一个bit位即可表示,实际上在Open
   
    CV
   
   中最小的数据类型为无符号的8位数,故而实际上二值图像是特殊的灰度图像
2.灰度图像 :
灰度图像仅有黑白两种颜色,故而不够细腻,损失了很多细节,通常计算机会将灰度处理为256个灰度级用数值区间[0,255]来表示。其中,数值[255]表示纯白色,数值[0]表示纯黑色,每个像素点占用...
  
  
   文章目录前言一、主要问题:Import "
   
    cv
   
   2" could not be resolved Pylance二、解决过程1. 在Anaconda3(2020.02版本)下使用pip命令安装open
   
    cv
   
   -python2. 重装Anaconda3(2020.10版本)在虚拟环境open
   
    cv
   
   下安装open
   
    cv
   
   3. Anaconda3(2020.10版本)pip安装open
   
    cv
   
   -python4. Anaconda3(2020.10版本)在base环境下安装open
   
    cv
   
   总结
	本人是刚刚接触图像识别的新人
  
  from .
  
   cv
  
  2 import *
  
   Module
  
  NotFoundError: No
  
   module
  
  named ‘
  
   cv
  
  2.
  
   cv
  
  2’
出这个
  
   错
  
  的原因可能在于python的版本和open
  
   cv
  
  -python的版本不匹配。
我的python是3.7版本的,原来的open
  
   cv
  
  是 3.4.2.16版本的,于是在命令行里输入:
pip install --upgrade open
  
   cv
  
  -python
更新成4.4.0.42版本之后再运行程序,就成功了。
Traceback (most recent call last):
  File "tools/train.py", line 13, in <
  
   module
  
  >
    from yolox.core import Trainer, launch
  File "/user-data/YOLOX-main/yolox/__init__.py", line 4, in <
  
   module
  
  >
    from .utils import configur
  
   要导入open
   
    cv
   
   ,网上好多都是让下载open
   
    cv
   
   -python,或者配置python interpreter,明明自己已经都配置了但还是出
   
    错
   
   ,想着是运行的interpreter没有选对,事实证明确实如此!!
点击RUN,点击RUN… Alt+shift+F10
点击小三角,然后Save Configuration
选择一个已经下载了open
   
    cv
   
   的python interpreter,因为有些interpreter是没有下载Open
   
    CV
   
   的,所以运行的时候会
   
    报
   
   
    错
   
   显示No model named
   
    cv
   
   2
对于python而言,在引用open
   
    cv
   
   库的时候需要写为import
   
    cv
   
   2。其中,
   
    cv
   
   2是open
   
    cv
   
   的C++命名空间名称,使用它来表示调用的是C++开发的open
   
    cv
   
   的接口。如果没有下载open
   
    cv
   
   库的话,直接导入
   
    cv
   
   2会
   
    报
   
   
    错
   
   :
   
    Module
   
   NotFoundError:No
   
    module
   
   named '
   
    cv
   
   2'。
    直接pip install
   
    cv
   
   2是不行的,会
   
    报
   
   
    错
   
   :
下载open
   
    cv
   
   以下提供几种下载方式:
cmd中输入命...
  
  
   cv
  
  2.destroyAllWindows()
这一点简单的代码在
  
   vscode
  
  上会
  
   报
  
  
   Module
  
  ‘
  
   cv
  
  2’ has no ‘imshow’
  
   member
  
  的
  
   错
  
  误.
其实代码是没有
  
   错
  
  误的,可以直接运行的,就
  
   非常抱歉,这是我的疏忽。在Open
   
    CV
   
   的新版本中,`
   
    cv
   
   2.PI`已经被移除了,因此在代码中使用它会导致
   
    错
   
   误。正确的写法是使用`numpy`中的`np.pi`。
下面是修改后的示例代码:
```python
import
   
    cv
   
   2
import numpy as np
# 读取原始图像
img =
   
    cv
   
   2.
   
    imread
   
   ('soccer_field.jpg')
# 转换为灰度图像
gray =
   
    cv
   
   2.
   
    cv
   
   tColor(img,
   
    cv
   
   2.COLOR_BGR2GRAY)
# 边缘检测
edges =
   
    cv
   
   2.Canny(gray, 50, 150, apertureSize=3)
# 检测直线
lines =
   
    cv
   
   2.HoughLinesP(edges, 1, np.pi/180, 100, minLineLength=100, maxLineGap=10)
# 绘制直线
for line in lines:
    x1, y1, x2, y2 = line[0]
   
    cv
   
   2.line(img, (x1, y1), (x2, y2), (0, 0, 255), 2)
# 显示结果
   
    cv
   
   2.imshow('result', img)
   
    cv
   
   2.waitKey(0)
   
    cv
   
   2.destroyAllWindows()
这样应该就能够正常运行了。再次感谢您指出我的
   
    错
   
   误。
  
  CondaHTTPError: HTTP 000 CONNECTION FAILED for url <https://mirrors.tuna.tsinghua.edu.cn/anaconda/pk
  
   44140
  
  WARNING: Retrying (Retry(total=4, connect=None, read=None, redirect=None, status=None)) after connec
  
   38886