Python OpenCV 彩色与灰度图像的转换实现
程序员文章站
2022-04-05 12:25:18
彩色图像转换为灰度图像第一种方式通过 imread 读取图像的时候直接设置参数为 0 ,自动转换彩色图像为灰度图像第二种方式,可以通过 split 进行通道分离,或者叫做读取单个通道,也可以将一个彩色...
彩色图像转换为灰度图像
第一种方式通过 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 # path path = './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 cv2 import matplotlib.pyplot as plt # path path = './7_1.jpg' # 读取图片 src = cv2.imread(path) # 图片展示窗口名称 window_name = 'image' # bgr 转换成 rgb image1 = cv2.cvtcolor(src, cv2.color_bgr2rgb) # bgr 转换成 gray image2 = cv2.cvtcolor(src, cv2.color_bgr2gray) # bgr 转换成 hsv image3 = 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()
伪彩色图像
彩色图片可以变成灰度图,那相应的灰度图也可以变成彩色的,当然这里说的是伪彩色图像。
这部分内容由于目前应用场景不明确,给大家贴一下我学习过程中看到的博客吧。
关于伪彩色图像的说明,在百度百科可以直接查阅到。
感谢大佬方向性的指导
到此这篇关于python opencv 彩色与灰度图像的转换实现的文章就介绍到这了,更多相关opencv彩色与灰度图像转换内容请搜索以前的文章或继续浏览下面的相关文章希望大家以后多多支持!
上一篇: 明明白白用DEBUG清除CMOS密码
下一篇: 买了条三块钱的跳绳
推荐阅读
-
Python中实现字符串类型与字典类型相互转换的方法
-
Python实现繁体中文与简体中文相互转换的方法示例
-
Opencv+Python实现图像运动模糊和高斯模糊的示例
-
数字图像处理与Python实现-颜色空间转换-RGB颜色空间与YUV颜色空间转换
-
Python实现OpenCV的安装与使用示例
-
Python3+OpenCV2实现图像的几何变换(平移、镜像、缩放、旋转、仿射)
-
数字图像处理与Python实现-颜色空间转换-RGB颜色空间与YCbCr颜色空间转换
-
图像的灰度化处理(Python实现三种方法——最大值法、平均值法、加权均值法、gamma校正)
-
用python实现十进制与二进制的相互转换
-
【数字图像处理实验】RGB与HSI互转、灰度直方图绘制、直方图均衡化、直方图规定化的MATLAB实现与Python实现