当前位置: 首页 > 工具软件 > imgFrame > 使用案例 >

openCv2中Img[:,:,1]的理解

瞿文柏
2023-12-01

第一通道是R,第二通道是G,第三通道是B

Img[:,:,2]代表R通道,也就是红色分量图像;Img[:,:,1]代表G通道,也就是绿色分量图像;

Img[:,:,0]代表B通道,也就是蓝色分量图像。

 

image = np.random.randint(10,size=(3,2,2,3))

size(3,2,2,3)l类似图像数量3个,像素2*2,通道3

image[0][:,:,0]取出第一个图像的第一个通道值。

 

1、 cv2.imread():读入图片,

2、cv2.imshow():创建一个窗口显示图片

3、cv2.waitKey():键盘绑定函数,共一个参数,表示等待毫秒数。

4、cv2.destroyAllWindows():删除建立的全部窗口。

5、cv2.destroyWindows():删除指定的窗口。

6、cv2.imwrite():保存图片,

 

二)理解图像img[:,:,::-1]

img[:,:,::-1]的作用就是实现RGB到BGR通道的转换 (若图片一开始就是BGR的,就是实现从BGR到RGB的转换)。

一般有opencv(cv2)和matplotlib(plt)的读取方式:(cv2把图片读取后是把图片读成BGR形式的,plt则是读成RGB形式)

3)

import numpy as np

a = np.arange(27).reshape(3,3,3)

print(a)

下面代码把列表数组左右翻转

b = a[:,:,::-1]

print(b)

 

1)

from matplotlib import pyplot as plt

import cv2

img_name = r'BC03.jpg'

img = plt.imread(img_name)

print(img)

#result

[[[  1   1   0]

  [  1   1   0]

  [  2   2   0]

  ...

2)

from matplotlib import pyplot as plt

import cv2

img_name = r'BC03.jpg'

img = plt.imread(img_name)

print(img)

print('-----------------------')

img = img[:, :, ::-1]

plt.imshow(img)

plt.show()

 

显示出来的图片是蓝色的

 类似资料: