图像的表示

在 python 用 numpy 的 array 来表示矩阵

如果是多通道情况,最常见的就是 红绿蓝 三通道

import numpy as np
import cv2
import matplotlib.pyplot as plt

img = np.array([
    [[255, 0, 0], [0, 255, 0], [0, 0, 255]],
    [[255, 255, 0], [255, 0, 255], [0, 255, 255]],
    [[255, 255, 255], [128, 128, 128], [0, 0, 0]],
], dtype=np.uint8)

# 用matplotlib存储
plt.imsave('img_pyplot.jpg', img)

# 用OpenCV存储
cv2.imwrite('img_cv2.jpg', img)

image-20220806203817533

​ img_cv2.jpg

image-20220806203845070

​ img_pyplot.jpg

不管是RGB还是BGR,都是高度×宽度×通道数,H×W×C的表达方式,而在深度学习中,因为要对不同通道应用卷积,所以用的是另一种方式:C×H×W,就是把每个通道都单独表达成一个二维矩阵

posted @ 2022-08-19 18:22  ShibuyaKanon  阅读(45)  评论(0)    收藏  举报