通道的分离与合并
使用的函数:
cv.split(src)
作用:
将彩色图像,分成b、g、r 3个单通道图像 。
方便我们对 BGR 三个通道分别进行操作。
参数:是需要分离通道的图像数组。
注意:
1 cv2.split() 是一个比较耗时的操作。只有真正需要时才用它,能用numpy的方式,修改多通道里的某个通道的值,就用numpy
2 3个单通道的图像shape,有什么变化??
相对于原图像的shape, 行列数不变,从3维变成了2维。
例如:
src = cv2.imread('c:/test/test.png')
b,g,r=cv2.split(src)
print(src)
cv2.imshow("b",b)
print("B通道图:\n",b.shape)
print(b)
cv2.imshow("g",g)
print("G通道图:\n",g.shape)
print(g)
cv2.imshow("r",r)
print("R通道图:\n",r.shape)
print(r)
k = cv2.waitKey(0)
cv2.destroyAllWindows()
输出:
[[[ 1 2 3]
[ 4 5 6]
[ 7 8 9]
[10 11 12]]
[[13 14 15]
[16 17 18]
[19 20 21]
[22 23 24]]
[[25 26 27]
[28 29 30]
[31 32 33]</