使用Estimator API和TFRecords数据集

时间:2017-10-03 11:50:39

标签: tensorflow keras

我正在使用Tensorflow的1.3 Estimator API来执行一些图像分类。由于我有大量的数据,我给TFRecords一个机会。保存文件并使用估算器模型的input_fn内的解析器函数将示例读取到数据集。到现在为止还挺好。

问题在于我想要进行一些图像增强(在这种情况下旋转和剪切)。

1)我尝试使用tf.contrib.keras.preprocessing.image.random_shear等。原来Keras不喜欢TF形状('Dimension')的格式,我不能把它转换成列表,因为它的参数是轴索引而不是实际值。

2)然后我尝试在我选择的范围内使用tf.contrib.image.rotatetf.contrib.image.transform随机值。这次我收到NotFoundError: Op type not registered 'ImageProjectiveTransform' in binary running on MYPC. Make sure the Op and Kernel are registered in the binary running in this process.错误,这是一个未解决的问题(https://github.com/tensorflow/tensorflow/issues/9672)。目前我无法从Windows迁移,因此我对可能的替代方案非常感兴趣。

3)搜索了一种读取TFRecords并将其转换为numpy数组并使用其他工具进行扩充的方法,但是无法从input_fn中找到一种无法访问会话的方法。

谢谢!

1 个答案:

答案 0 :(得分:1)

您是否尝试过使用以下问题答案中的功能?tensorflow: how to rotate an image for data augmentation?