当前位置:
首页 >
【OpenCV 例程300篇】01. 图像的读取(cv2.imread)
发布时间:2024/3/24
59
豆豆
生活随笔
收集整理的这篇文章主要介绍了
【OpenCV 例程300篇】01. 图像的读取(cv2.imread)
小编觉得挺不错的,现在分享给大家,帮大家做个参考.
专栏地址:『youcans 的 OpenCV 例程300篇 - 总目录』
01. 图像的读取(cv2.imread)
02. 图像的保存(cv2.imwrite)
03. 图像的显示(cv2.imshow)
04. 用 matplotlib 显示图像(plt.imshow)
【OpenCV 例程300篇】001. 图像的读取(cv2.imread)
函数 cv2.imread() 用于从指定的文件读取图像。
函数说明:
retval = cv.imread(filename[, flags])
- 函数 cv2.imread() 从指定文件加载图像并返回该图像的矩阵。
- 如果无法读取图像(文件丢失,权限不正确,格式不支持或无效),该函数返回一个空矩阵。
- 目前支持的文件格式:
- Windows 位图 - * .bmp,* .dib
- JPEG 文件 - * .jpeg,* .jpg,*.jpe
- JPEG 2000文件 - * .jp2
- 便携式网络图形 - * .png
- WebP - * .webp
- 便携式图像格式 - * .pbm,* .pgm,* .ppm * .pxm,* .pnm
- TIFF 文件 - * .tiff,* .tif
参数说明:
- filename:读取图像的文件路径和文件名
- flags:读取图片的方式,可选项
- cv2.IMREAD_COLOR(1):始终将图像转换为 3 通道BGR彩色图像,默认方式
- cv2.IMREAD_GRAYSCALE(0):始终将图像转换为单通道灰度图像
- cv2.IMREAD_UNCHANGED(-1):按原样返回加载的图像(使用Alpha通道)
- cv2.IMREAD_ANYDEPTH(2):在输入具有相应深度时返回16位/ 32位图像,否则将其转换为8位
- cv2.IMREAD_ANYCOLOR(4):以任何可能的颜色格式读取图像
- 返回值 retval:读取的 OpenCV 图像,nparray 多维数组
注意事项:
基本例程:
# 1.1 图像的读取imgFile = "../images/imgLena.tif" # 读取文件的路径img1 = cv2.imread(imgFile, flags=1) # flags=1 读取彩色图像(BGR)img2 = cv2.imread(imgFile, flags=0) # flags=0 读取为灰度图像扩展例程:
# 1.2 从网络读取图像import urllib.request as requestresponse = request.urlopen("https://profile.csdnimg.cn/8/E/F/0_youcans")imgUrl = cv2.imdecode(np.array(bytearray(response.read()), dtype=np.uint8), -1) # 1.3 读取中文路径的图像imgFile = "../images/测试图01.png" # 带有中文的文件路径和文件名# imread() 不支持中文路径和文件名,读取失败,但不会报错!# img = cv2.imread(imgFile, flags=1)# 使用 imdecode 可以读取带有中文的文件路径和文件名img = cv2.imdecode(np.fromfile(imgFile, dtype=np.uint8), -1)(本节完)
版权声明:
youcans@xupt 原创作品,转载必须标注原文链接:(https://blog.csdn.net/youcans/article/details/121168935)
Copyright 2022 youcans, XUPT
Crated:2021-11-18
更多内容请见:>『youcans 的 OpenCV 例程300篇 - 总目录』(https://blog.csdn.net/youcans/article/details/125112487)
总结
以上是生活随笔为你收集整理的【OpenCV 例程300篇】01. 图像的读取(cv2.imread)的全部内容,希望文章能够帮你解决所遇到的问题。
- 上一篇: 大学物理----同方向同频率简谐振动的合
- 下一篇: ECALL,BCALL,ICALL