data_test=[] data_train = [] for i in range (all_num): if i <train_num: image= image_list[i] image = cv2.imread(image) image = cv2.cvtColor(image, cv2.COLOR_BGR2GRAY) #将图片转换成RGB格式 image = cv2.resize(image, (28, 28)) image = image.astype('float32') image = np.array(image)/255#归一化[0,1] image=image.reshape(-1,28,28) data_train.append(image) # label_train.append(label_list[i]) else: image = image_list[i] image = cv2.imread(image) image = cv2.cvtColor(image, cv2.COLOR_BGR2GRAY) image = cv2.resize(image, (28, 28)) image = image.astype('float32') image = np.array(image) / 255 image = image.reshape(-1, 28, 28) data_test.append(image) # label_test.append(label_list[i]) data_train=np.array(data_train) label_train = np.array(label_train) data_test = np.array(data_test) label_test = np.array(label_test)
时间: 2024-02-14 18:22:41 浏览: 117
pytorch .detach() .detach_() 和 .data用于切断反向传播的实现
这段代码的作用是将一组图片数据进行预处理,并将其划分为训练集和测试集。具体来说,这段代码首先定义了两个空列表 data_train 和 data_test,用于存放处理后的训练集和测试集数据。然后,通过循环遍历所有图片数据,将前 train_num 个数据作为训练集,其余的数据作为测试集。接着,对于每一张图片,将其读入并转换为灰度图像,然后将其大小调整为 28x28 像素,并将数据类型转换为 float32,最后将像素值归一化到 [0,1] 区间。最后将处理后的数据添加到对应的列表中,并将列表转换为 NumPy 数组返回。需要注意的是,这段代码中的 label_train 和 label_test 列表没有被定义和赋值,因此需要在其他地方进行定义和赋值。
阅读全文