python中的cv2读取灰度图
1. 什么是cv2?
CV2指的是OpenCV2,OpenCV是一个基于BSD许可(开源)发行的跨平台计算机视觉库,可以运行在Linux、Windows、Android和Mac OS操作系统上。它轻量级而且高效——由一系列 C 函数和少量 C++ 类构成,同时提供了Python、Ruby、MATLAB等语言的接口,实现了图像处理和计算机视觉方面的很多通用算法。
OpenCV 拥有包括 500 多个C函数的跨平台的中、高层 API。它不依赖于其它的外部库——尽管也可以使用某些外部库。
参考资料:
2. 运行如下程序,读取灰度图
import matplotlib.pylab as plt img = plt.imread("播音员(gray).jpg") plt.imshow(img) plt.show()
不是预期的效果,原因:
1、cv2默认是BGR(而不是RGB),因此直接读的图不同
2、显示灰度在plt.imshow加参数(cmap = "gray")即可。
tips:如果上图用cv.imshow('img', img) 来会报错,因为图片路径不可以有中文。修改图片名称即可。
import cv2 as cv import numpy as np import matplotlib.pyplot as plt img = cv.imread('src/picture1.jpg') plt.imshow(img, cmap = 'gray')
如果图片路径是中文,print(img)会得到None的结果。只有将图片重命名为英文才可以正确读取到图片。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· .NET10 - 预览版1新功能体验(一)