我目前正在尝试使用CIFAR10图像。我有以下代码段
import tensorflow as tf
from tensorflow.keras import datasets,layers,models
import matplotlib.pyplot as plt
(train_images,train_labels),(test_images,test_labels)=datasets.cifar10.load_data()
#train_images,test_images=train_images/,test_images
当我打印print(train_images[0])
时,我得到32 * 32 * 3矩阵,当我打印print(train_images[0][0)
时,我得到32 * 3矩阵,但是我认为应该是32 * 32矩阵。切片如何与该图像一起工作,首先是哪个维度。对阅读材料的任何见解和建议将受到高度赞赏
train_images变量具有一批图像,并且图像是numpy度量标准,并且切片适用于numpy中的所有度量标准。
维度以[批,行,列,通道]的形式出现。
要获取第一张图像,您将打印:print(train_images[0].shape)
,它将输出(32,32,3)。
要获得图像的第一通道,您将打印:print(train_images[0, :, :, 0])
,它将输出(32,32)第一通道,依此类推,第二通道为print(train_images[0, :, :, 1])
,第三通道为print(train_images[0, :, :, 2])
。其中“:”表示所有值。
[train_images[0, 0]
将输出批次(32,3)中第一张图像的第一行的值