我有一个图像文件夹和一个csv文件(有[0]每个图像名称和[1]标签



我有两个独立的图像文件夹(测试和训练(:有6个类别也有标签(2个单独的csv文件(这些csv文件有第一列:图像名称,第二列有标签。我需要帮助(示例代码(将数据集作为CNN模型的输入。

假设您的csv文件名为train.csv和test.csv,它们都位于目录sdir中,test和train文件夹也是如此。假设train.csv具有到train文件的相对文件路径,test.csv具有到测试文件的相对路径,这正确吗?我将在这个假设下继续,csv文件有两列,分别标记为"filepath"one_answers"labels"。所以试试这个

train_dir=os.path.join(sdir,'train')
train_csv_path=os.path.join(sdir, 'train.csv')
train_df=pd.read_csv(train_csv_path)
test_csv_path=os.path.join(sdir, 'test.csv')
test_df=pd.read_csv(train_csv_path)
test_dir=os.path.join(sdir, 'test')
batch_size=20
img_size=(224,224)
gen=Image_Data_Generator(rescale=1/255, preprocessing_function=scalar,validation_split.=.2)
train_gen=gen.flow_from_dataframe(train_df, directory=train_dir, x_col='filepaths', y_col='labels', shuffle=True,
target_size=img_size, class_mode='categorical', batch_size=batch_size, subset='training')
valid_gen=gen.flow_from_dataframe(train_df, directory=train_dir, x_col='filepaths', y_col='labels', shuffle=True,
target_size=img_size, class_mode='categorical', batch_size=batch_size, subset='validation')
test_gen=gen.flow_from_dataframe(test_df, directory=test_dir, x_col='filepaths', y_col='labels', shuffle=False,
target_size=img_size, class_mode='categorical', batch_size=batch_size)                                
# then build you model
history=model.fit(train_gen, verbose=1, validation_data=valid_gen, epochs=20)
acc=model.evaluate(test_gen)[1]* 100
print (acc)

最新更新