购买
下载掌阅APP,畅读海量书库
立即打开
畅读海量书库
扫码下载掌阅APP

4-5 合并色彩通道

4-5-1 合并B、G、R通道的图像

OpenCV提供的 merge( ) 函数可以合并B、G、R通道的图像对象,成为 BGR 图像对象,语法如下:

     bgr_image = cv2.merge([blue, green, red])    # 合并通道的图像对象

上述bgr_image是BGR图像对象,merge( )函数的参数可以是 列表 (list),参考上述语法公式,也可以使用 元组 (tuple)方式传递要合并的通道图像对象,参数内容如下:

blue B 通道图像对象。

green G 通道图像对象。

red R 通道图像对象。

:合并顺序若不同,所得的结果也会不同。

程序实例 ch4_10.py: 先按B→G→R顺序合并图像,然后按R→G→B顺序合并图像,最后列出两个结果,窗口标题会显示合并顺序。

执行结果

从上述实例可以得知,合并的顺序不同所得到的图像也会不同。以B→G→R顺序所得就是BGR色彩图像,以R→G→B顺序所得就是RGB色彩图像。至于BGR色彩图像与RGB色彩图像的转换,读者可以参考4-1节。

4-5-2 合并H、S、V通道的图像

OpenCV提供的 merge( ) 函数也可以合并H、S、V通道的图像对象,成为 HSV 图像对象,语法如下:

     hsv_image = cv2.merge([hue, saturation, value])   # 合并通道的图像对象

上述hsv_image是HSV图像对象,merge( )函数的参数内容如下:

hue H 通道图像对象。

saturation S 通道图像对象。

value V 通道图像对象。

:合并顺序若不同,所得的结果也会不同。

程序实例 ch4_11.py: 显示原图像,接着将BGR图像转换成HSV图像,然后将HSV图像的通道拆分,再按H→S→V顺序合并,最后列出合并结果。

执行结果 下图左边是原图像,右边是拆分成H、S、V通道的图像再合并的结果。 /DISiOFDAwygjnX0CRWn9ojSn0v2Kyrd+aIXFP67gUMDDKfC4jgWZ+5Td8i/ODgf

点击中间区域
呼出菜单
上一章
目录
下一章
×