python - 使用tensorflow输入PASCAL-VOC 2012训练数据和标签的好方法

标签 python tensorflow deep-learning

我想对 PASCAL-VOC 2012 dataset 进行对象检测用 tensorflow 。

我想将带有对象标签和相应的边界框整幅图像输入到tensorflow中进行训练。

有没有什么好的方法可以写一个数据文件让tensorflow读取?或者只是在 tensorflow 中读取原始 XML 文件?

非常感谢。

这是一个图像示例: enter image description here

最佳答案

有为此预制的工具,查找 Tensorflow 模型存储库。 他们的做法本质上是:

  1. 解析 xml 注释文件并展平其中的数据结构。
  2. 生成结合注释和图像的tfrecord

这可以说是最好的方法。

为了培训,您可以实现自己的转换器,它接受一对 (xml,image) 并保存到 tfrecord example 中。

Tfrecord 是用于存储数据的 tensorflow 格式,每个 tfrecord 文件基本上是一个包含 examples 的列表,每个 example 都是一个对象,在 key : value 中保存数据 对,其中 value 是基本类型(int、string、float)的数组,key 是字符串。

因此,首先您将 xml 注释展平以匹配 tfrecord 文件的约束,然后使用 tensorflow TFRecordWriter 将数据保存到文件中。 检查 Tensorflow API - 它会得到返回。

关于python - 使用tensorflow输入PASCAL-VOC 2012训练数据和标签的好方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39295263/

相关文章:

python - 在python中使用pandas按多索引分组而不丢失索引

Python升级导致终端...未打开

python - 在 Django 项目的同一个文件中使用 ugettext 和 ugettext_lazy

tensorflow - 如何加载图形检查点 (.ckpt) 并使用 SavedModelBuilder 将其保存为 protobuf,而不声明任何 tf.Variables?

machine-learning - 是否可以使用具有编译设置 USE_CUDNN := 1? 的 CPP 代码

python - from PIL import Image 和 import Image 的区别

python - 相对于重复函数的梯度

tensorflow - 通过 RESTful API 部署 Tensorflow 模型的示例

python - 如何格式化卷积(一维)keras 神经网络的输入和输出形状? (Python)

python - Tensorflow 或 Keras 中的深度学习实现给出了截然不同的结果