这篇教程Python OpenCV 彩色与灰度图像的转换实现写得很实用,希望能帮到您。 彩色图像转换为灰度图像第一种方式通过 imread 读取图像的时候直接设置参数为 0 ,自动转换彩色图像为灰度图像 第二种方式,可以通过 split 进行通道分离,或者叫做读取单个通道,也可以将一个彩色图像分离成 3 个单通道的灰度图像 今天要学习的方法,是通过一个叫做 cvtColor 的方法实现该操作。 cv2.cvtColor() 方法用于将图像从一种颜色空间转换为另一种颜色空间。 OpenCV 提供了 150 多种 color-space 转换方法。多到用不过来~
该方法的语法格式为: cv2.cvtColor(src, code[, dst[, dstCn]]) 参数: - src:它是要更改其色彩空间的图像。
- code:它是色彩空间转换代码。
- dst:它是与 src 图像大小和深度相同的输出图像,可选参数。
- dstCn:它是目标图像中的频道数。如果参数为 0,则通道数自动从 src 和代码得出,可选参数。
参数翻译成中文,也找到了 cvtColor(src,dst,code,dstCn) ===> (原图像,color转化代码,输出图像,输出通道) 转换灰度图代码如下: import cv2# pathpath = './7_1.jpg'# 读取图片src = cv2.imread(path)# 图片展示窗口名称window_name = 'Image'# BGR 转换成灰度图image = cv2.cvtColor(src, cv2.COLOR_BGR2GRAY)cv2.imshow(window_name, image)cv2.waitKey() 
也看到了 HSV 格式图片,转换结果如下,有点吓人,顺便转换了其他的一些格式: import cv2import matplotlib.pyplot as plt# pathpath = './7_1.jpg'# 读取图片src = cv2.imread(path)# 图片展示窗口名称window_name = 'Image'# BGR 转换成 RGBimage1 = cv2.cvtColor(src, cv2.COLOR_BGR2RGB)# BGR 转换成 Grayimage2 = cv2.cvtColor(src, cv2.COLOR_BGR2GRAY)# BGR 转换成 HSVimage3 = cv2.cvtColor(src, cv2.COLOR_BGR2HSV)plt.subplot(1, 3, 1)plt.imshow(image1)plt.title("RGB")plt.subplot(1, 3, 2)plt.imshow(image2,"gray")plt.title("GRAY")plt.subplot(1, 3, 3)plt.imshow(image3,"hsv")plt.title("hsv")plt.show() 
伪彩色图像彩色图片可以变成灰度图,那相应的灰度图也可以变成彩色的,当然这里说的是伪彩色图像。 这部分内容由于目前应用场景不明确,给大家贴一下我学习过程中看到的博客吧。 https://blog.csdn.net/kingroc/article/details/101302997 https://blog.csdn.net/sns1991sns/article/details/102838303 https://blog.csdn.net/xiaxuesong666/article/details/79522904 关于伪彩色图像的说明,在百度百科可以直接查阅到。

感谢大佬方向性的指导 到此这篇关于Python OpenCV 彩色与灰度图像的转换实现的文章就介绍到这了,更多相关OpenCV彩色与灰度图像转换内容请搜索51zixue.net以前的文章或继续浏览下面的相关文章希望大家以后多多支持51zixue.net! Python深度学习之实现卷积神经网络 Python异常类型以及处理方法汇总 |