[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-zqKTv8PN-1667143294605)(https://csdn-pic-1301850093.cos.ap-guangzhou.myqcloud.com/csdn-pic/公众号横幅-1.png)]
以下内容是在学习过程中的一些笔记,难免会有错误和纰漏的地方。如果造成任何困扰,很抱歉。
前言
OpenCV是计算机视觉中经典的专用库,具备支持多语言、跨平台的优点,OpenCV-Python为OpenCV提供了Python接口,这样使用者在Python中能够调用C/C++,从而在保证易读性和运行效率的前提下,实现所需的功能。
在深度学习领域中,通过在图像、视频中获取到相应的目标而进行业务分析,那么OpenCV在这里的作用是必不可少。
一、图像显示
import cv2
# 读取图片
image = cv2.imread("C:/Users/13544/Desktop/qqq.png", cv2.IMREAD_UNCHANGED)
# 尺寸: (1080, 1920, 4)
# 所占内存大小: 8294400
# 存储图像使用的数据类型: uint8
print("尺寸:",image.shape)
print("所占内存大小:",image.size)
print("存储图像使用的数据类型:",image.dtype)
# 图像存储
cv2.imwrite("C:/Users/13544/Desktop/qqq2.png",image)
# 打开图片 第一个参数为窗口标题
cv2.imshow("www", image)
# 等待键盘输入
cv2.waitKey(0)
其中,imread包含了两个入参,fileName及flags,第一个参数filename是图像地址,即使图像路径错误,也不会引发任何错误,但是在打印图像时系统会给出None;第二个参数flags是一个标志,指定了读取图像的方式:
- cv2.IMREAD_COLOR:加载彩色图,任何图像的透明度都会被忽视,它是默认参数值可以用1代替。
- cv2.IMREAD_GRAYSCALE:以灰度模式(黑白图像)加载图像,可以用0代替。
- cv2.IMREAD_UNCHANGED:加载图像,包括alpha通道,可以用-1代替。
该函数返回修改后的图像数字矩阵,其中维度如下:
-
(M,N)灰度图
-
(M,N,3)RGB彩色图
二、图像模糊
import cv2
import matplotlib.pyplot as plt
image = cv2.imread("C:/Users/13544/Desktop/qqq.png", 0)
blur_demo = cv2.blur(image, (5, 5)) # 均值滤波
medianBlur_demo