train_dat = glob.glob('C:/Users...Files/*.jpg')
def color_hist(img, nbins=32):
ch1 = np.histogram([img[:,:,0]], bins=nbins, range=(0, 256))[0]
ch2 = np.histogram([img[:,:,1]], bins=nbins, range=(0, 256))[0]
ch3 = np.histogram([img[:,:,2]], bins=nbins, range=(0, 256))[0]
hist = np.hstack((ch1, ch2, ch3))
return hist
def describe(image, mask = None):
file_features = []
for file in image:
image = mpimg.imread(file)
hist = cv2.calcHist([image], [0, 1, 2], mask, [8,8,8], [0, 256, 0, 256, 0, 256])
#cv2.normalize(hist, hist)
file_features.append(hist.flatten())
return file_features
train_features = describe(train_dat)
train_array = np.array(train_features)
X_scaler = StandardScaler().fit(train_array)
scaled_train = X_scaler.transform(train_array)
我正在使用Jupyter Notebook进行图像分类。当我运行
train_features = describe(train_dat)
train_array = np.array(train_features)
X_scaler = StandardScaler().fit(train_array)
scaled_train = X_scaler.transform(train_array)
它没有显示预期的2D阵列。