[英]How to select a desired training sample from mnist.load_data()
[英]How can i format my images from filepath to the same way as mnist.load_data() in python?
如何將文件路徑中的圖像格式化為與mnist.load_data()
相同的方式? 我目前從driectory /文件路徑獲取圖像,我如何格式化這些圖像的方式與mnist
用於mnist.load_data()
方式相同?
keras.datasets.mnist.load_data
實際上只加載一個預處理的pickle文件 。 如果檢查的數據類型X_train
& X_test
它們只是numpy
浮子表示圖像的像素值(0-255)的2D陣列。 雖然y_train
和y_test
只是代表類/標簽(0-9)的numpy
1D數組。
因此,模仿該功能的第一種方法是使用圖像處理庫(例如opencv )將圖像讀入numpy數組,最后使用sklearn將它們拆分 :
import numpy as np
import cv2
from sklearn.model_selection import train_test_split
X = []
y = []
# convert color image to 2D array (grayscale) & rescale
data = cv2.imread('zero.jpg',0) / 255.0
label = 0 # label/class of the image
X.append(data)
y.append(label)
# loop trough all images ...
# split for training & testing
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.33)
您可以嘗試的另一種方法是使用keras ImageDataGenerator.flow_from_directory(color_mode ='grayscale') 。 輸出是一個ImageDataGenerator
對象,可以傳遞給keras model.fit_generator()
函數。 為了使用此功能,您應該將數據集安排到列車和測試目錄中,其中每個目錄都包含表示其中圖像類的子目錄。 請在此處找到詳細說明。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.