-
- 图像的读取、显示和保存
OpenCV提供了cv2模块,用于进行图像的处理操作。
-
-
- 读取图像
-
OpenCV提供了cv2.imread()函数用于图像的读取操作。该函数的基本的格式为retval=cv2.imread(filename[,flags])
其中:
- retval是返回值,其值是读取到的图像。
- filename是要读取图像的完整文件名。即图像文件的路径,cv2.imread()函数只能识别英文名的路径名,中文的路径名读取失败而读取返回值为None。
- flags是读取标记,用于控制读取文件的类型。部分常用的标记值如表所示。其中表中第一列和第三列的数值表示的含义相同。
常用flags标记值
值 | 含义 | 数值 |
cv2.IMREAD_UNCHANGED | 保持原格式不变 | -1 |
cv2.IMREAD_GRAYSCALE | 将图像调整为单通道的灰度图像 | 0 |
cv2.IMREAD_COLOR | 将图像调整为三通道的BGR图像,此为flags的默认值 | 1 |
cv2.IMREAD_ANYDEPTH | 当载入的图像的深度为16位或者32位时,就返回其对应的深度图像,否则将其转化为8位图像。 | 2 |
cv2.IMREAD_ANYCOLOR | 以任何可能的颜色格式读取图像。 | 3 |
cv2.IMREAD_LOAD_GDAL | 使用GDAL驱动程序加载图像 | 4 |
【例1】使用cv2.imread()函数读取一幅图。
代码如下:
import cv2 as cv # 导入cv2模块并重新命名模块。
image = cv.imread("kenanandxiaolan.png") # 使用cv2.imread()函数读取在本项目目录下的kenanandxiaolan.png图像文件,如果图像不在程序文件夹内,需要完整的图像文件的路径,注意路径为英文格式。并将其返回值赋给变量image,
print(image) # 输出保存在变量image中的图像数据即图像像素值矩阵。
kenanandxiaolan.png图像部分像素值
———————————————————————————————————————
声明:本学习笔记来源于由机械工业出版社出版的由高敬鹏,江志烨、赵娜编著的《机器学习 基于OpenCV和Python的智能图像处理》即《Machine Learning Intelligent Image Processing Based Opencv and Python》,本笔记仅供学习参考,禁止用作商业用途。版权最终归属于本笔记知识来源方所有。注意,本笔记是笔者在该书的基础上略作修改,部分例题是自己的图像和添加注释等补充。本笔记的正确性不代表本书绝大数知识来源参考书的正确性。倘若发现本笔记有误,请联系笔者进行修改。由于笔者水平有限,若有错误,清不吝赐教。由于笔者刚接触机器学习的图像处理方面,笔记基础浅显,见谅,不过相关知识在不断更新中。