opencv学习笔记01:opencv的安装,以及pip下载成功,cmd执行python import cv2 成功, pycharm 却无法导入cv2的解决办法

一、 opencv 的安装

1. cmd执行命令: pip install opencv-python
下载有点久,可切换其他源。

2.cmd执行命令:import cv2
没有报错则安装成功。

3.打开 pycharm,新建工程,新建.py文件,导入cv2
import cv2 as cv

没有报错则导入成功。

可能会导入失败,显示该模块不存在。
这是python的项目解释器的缘故,新建工程,就会新建一个项目解释器,以及一个第三方库。
会优先寻找最近的那个。

所以把项目解释器切换成默认安装目录的,就可以找到pip下载的第三方库了。
详细原因请参考关于pip安装第三方库,但PyCharm中却无法识别的问题;以及PyCharm安装第三方库的方法解析

切换项目解释器的步骤:
切换成pytho安装目录里面的那个哟。

切换之后就可以看到安装的opencv库了。

4.读取并且展示图片

代码:

import cv2 as cv

# 读取一张图片
dns = cv.imread("resource/dns.jpg")
# 展示图片窗口
cv.imshow("dns", dns)
# 无限制等待用户的按键事件,==按任意键继续..
cv.waitKey (0)
# 释放窗口
cv.destroyAllWindows()

效果:

另外,imread()这个函数有第三个参数:
cv.IMREAD_UNCHANGED 加载原图
cv.IMREAD_GRAYSCALE 加载灰度图
cv.IMREAD_COLOR 加载彩色图像,包括它的alpha通道
alpha通道用来记录透明度,也就是rgba里面的a。

这里是读取灰度图的效果:

5.保存一张图片
代码:

import cv2 as cv

# 读取一张图片
dns = cv.imread("resource/dns.jpg")

# 保存这张图片
cv.imwrite('resource/dns2.jpg',dns)

# 读取展示新图片
dns_c = cv.imread("resource/dns2.jpg")
cv.imshow("new img",dns_c)
cv.waitKey(0)
cv.destroyAllWindows()

效果:

imwrite()也有第三个参数:
官方文档
这两个,可以用来做电子包浆。
好吧,就是调整图片质量。


以上针对jpeg图片,参数0-100调整图像质量。


以上针对png图片,0-9调整压缩级别。

这俩参数是long型的,需要强转成int.

试一下效果:

代码:

cv.imwrite("resource/dns3.jpg", dns,[int(cv.IMWRITE_JPEG_QUALITY), 8])

效果:

电子包浆就有了。

posted on 2021-11-15 17:06  northwest  阅读(434)  评论(0编辑  收藏  举报

导航