在keras中为生成器打印无效文件名的方法
我有一个大数据框,我把它传递给在keras中为生成器打印无效文件名的方法,keras,Keras,我有一个大数据框,我把它传递给 generator.flow_from_dataframe(df,...) 但当我运行它时,我 UserWarning: Found 52 invalid image filename(s) in x_col="image". These filename(s) will be ignored. .format(n_invalid, x_col) 有一种方法可以打印这些无效的图像文件名或理解df中的索引?我有一个类似的错误,在flow\u from\u d
generator.flow_from_dataframe(df,...)
但当我运行它时,我
UserWarning: Found 52 invalid image filename(s) in x_col="image". These filename(s) will be ignored.
.format(n_invalid, x_col)
有一种方法可以打印这些无效的图像文件名或理解df中的索引?我有一个类似的错误,在
flow\u from\u dataframe
方法中使用标志validate\u filenames=False
绕过了它
目前,AFAIK无法在Keras中列出数据帧中未映射到映像目录的文件名
您可以编写python方法来列出差异,或者必须有第三方库来执行相同的操作可以通过指定数据帧中图像的绝对路径来解决此问题。 假设:
# Specifying absolute path for images in the data frame
abs_file_names = []
for file_name in df['Image']:
tmp = os.path.abspath(train_dir+os.sep+file_name)
abs_file_names.append(tmp)
# update dataframe
df['Image'] = abs_file_names
datagen = ImageDataGenerator(rescale=1./255.,validation_split=0.25)
a = datagen.flow_from_dataframe(
dataframe = df,
train_dir=None,
x_col="Image",
y_col="Class",
weight_col=None,
target_size=(150, 150),
color_mode="rgb",
classes=None,
class_mode="categorical",
batch_size=32,
shuffle=True,
seed=None,
save_to_dir=None,
save_prefix="",
save_format=None,
subset=None,
interpolation="nearest",
validate_filenames=True,
)