pycharm不提示opencv库方法怎么办

pycharm对opencv库不提示怎么办

    • opencv库的安装
    • 在pycharm中无法使用代码提示功能
    • 在opencv的安装路径中的pyd文件复制到site-package路径下
    • 分析原因

pycharm是一款很好用的python编辑器,对于python提供的方法和模块都会有提示,但是当我安装使用opencv库的时候,发现没有提示功能,导致写opencv的代码好慢啊,因此我在百度上搜索各种解决办法,但是很多方法都不好用,终于我最后找到了下面的方法,分享给大家。

opencv库的安装

在python上安装opencv十分简单,只需要在命令行中输入pip install opencv-python即可,如图
opencv库的安装
我这里opencv库是已经安装完成的,所以没有显示安装的进度条,不过有时候安装会很慢,需要手动下载好再安装,可以再这个路径下面找到合适的安装包https://pypi.org/project/opencv-python/#files,推荐安装最新版本4.0.0版本,下载完成后再离线安装。

在pycharm中无法使用代码提示功能

安装完成opencv后,通过命令行输入import cv2发现运行没有错误,说明opencv库已经安装成功。
https://img-blog.csdnimg.cn/20190227001442549.png
此时说明安装成功

但是这时候打开pycharm,将python interpreter配置成功后,输入以下代码发现
pycharm不提示opencv库方法怎么办_第1张图片
此时的imread函数的颜色与其他代码不同,其实是因为pycharm认为这里有错误,因为在cv2文件夹下的 init.py文件中没有imread函数,并且按住ctrl+左键也不会进入提示,这让开发人员非常痛苦,下面讲如何解决这个问题。

在opencv的安装路径中的pyd文件复制到site-package路径下

首先,找到opencv库的安装目录,其实我们知道,通过pip install 安装的module都会自动安装到python.exe安装目录下的site-packages路径下面,opencv模块的文件夹名称为cv2,我们也可以通过pip install opencv-python安装结束的提示找到opencv模块的安装路径,那么找到cv2文件夹以后,进入cv2文件夹中,发现有一个 cv2.cp37-win_amd64.pyd 文件,我们需要将这个文件修改名字为 cv2.pyd之后拷贝到site-packages路径下,为了防止错误,我们也可以将 cv2.cp37-win_amd64.pyd 复制一份到site-pachages路径下然后改名,这样再重新打开pycharm软件,就会发现有提示了,并且函数的使用方法也会有提示,可以说十分方便哦,下面是我在pycharm可以提示后写的一段小的测试代码

import cv2

face_file = "./haarcascade_frontalface_default.xml"

if __name__ == "__main__":
    image = cv2.imread("./obama.jpg")
    cv2.imshow("image", image)
    gray_image = cv2.cvtColor(image, cv2.COLOR_RGB2GRAY)
    classifier = cv2.CascadeClassifier(face_file)
    faces = classifier.detectMultiScale(
        gray_image,
        scaleFactor=1.15,
        minNeighbors=5,
        minSize=(5, 5),
        flags=cv2.CASCADE_SCALE_IMAGE
    )
    for x, y, w, h in faces:
        cv2.rectangle(image, (x, y), (x + w, y + h), (0, 255, 0), 2)

    cv2.imshow("face", image)
    cv2.waitKey(0)

这段代码是从一副图像中选取出人物的头像,其中 haarcascade_frontalface_default.xml 是我从cv2/data路径下复制到我程序的目录下的,obama.jpg是我从网上下载的一张照片,大家也可以从网上随便找一个人的头像来试一下,程序运行的结果如下
pycharm不提示opencv库方法怎么办_第2张图片
上面是原始图像
pycharm不提示opencv库方法怎么办_第3张图片
上面是选取出人头像后的图像

分析原因

为什么将pyd文件复制到site-packages路径下后就能够代码提示了呢,再pycharm中ctrl+左键可以发现,原来site-packages添加cv2.pyd文件后,用户路径下的.Pycharmxxxx路径下面就会产生新的cv2模块的 init.py 文件,虽然这段代码中没有opencv的源代码,但是说明了opencv库函数的使用方法,对于我们开发人员来说也是非常方便了。

你可能感兴趣的:(pycharm,opencv,python,pycharm代码提示)