如果我不打乱我的文件,我可以使用 generator.filenames 获取文件名。但是当生成器打乱图像时,文件名没有打乱,所以我不知道如何取回文件名。

请您参考如下方法:

在内部,DirectoryIterator 将迭代一个 index_arrray,当您要求它时,它会被打乱。

您只需要使用批处理的当前索引来索引文件名数组:

it = ImageDataGenerator().flow_from_directory(shuffle=True,...) 
for img in it: 
    idx = (it.batch_index - 1) * it.batch_size 
    fnames = [it.filenames[it.index_array[i]] for i in range(idx, idx + it.batch_size)] 


评论关闭
IT序号网

微信公众号号:IT虾米 (左侧二维码扫一扫)欢迎添加!

python - 在 python 中以相反的顺序柯里化(Currying)