三个通道

2022-05-28 16:10:26 浏览数 (1)

代码语言:javascript复制
import numpy as np
import cv2
img=np.zeros((300,300,3),dtype=np.uint8)#生成三维数组
img[:,0:100,0]=255#B通道
img[:,100:200,1]=255#G通道
img[:,200:300,2]=255#R通道
print("img=n",img)
cv2.imshow("img",img)#显示图像
cv2.waitKey()
cv2.destroyAllWindows()

算法:RGB模式的彩色图像在读入OpenCV内进行处理时,按照行方向一次读取该RGB图像的B通道、G通道、R通道的像素点,并将像素点以行作为单位存储在ndarray的列中。

  • 首先分别生成B、G、R三个数组
  • 其初始值都是0
  • 分别改变各通道值

image[0,0,0]:

  • 第一个索引表示第0行
  • 第二个索引表示第0列
  • 第三个索引表示第0个颜色通道

img[0,0]:访问图像第0行第0列像素点的BGR值。图像是BGR格式,得到的数值为[0,0,255];

img[0,0,0]:访问图像第0行第0列第0通道的像素值。图像是BGR格式,第0个通道是B通道,得到B通道内第0行第0列的位置所对应的值0;

img[0,0,1]:访问图像第0行第0列第1通道的像素值。图像是BGR格式,第1个通道是G通道,得到G通道内第0行第0列的位置所对应的值255;

img[0,0,2]:访问图像第0行第0列第2通道的像素值。图像是BGR格式,第2个通道是R通道,得到R通道内第0行第0列的位置所对应的值255。

0 人点赞