我使用slim将数据转换为TF-Record格式并查看正在转换MNIST数据集的this example。
在127
到128
行,图片png_string
被分配了一个标签labels[j]
。
example = dataset_utils.image_to_tfexample(png_string, 'png'.encode(), _IMAGE_SIZE, _IMAGE_SIZE, labels[j])
我想添加另一个标签,但是当我查看dataset_utils
文件和image_to_tfexample
函数时,我看到了:
def image_to_tfexample(image_data, image_format, height, width, class_id):
return tf.train.Example(features=tf.train.Features(feature={
'image/encoded': bytes_feature(image_data),
'image/format': bytes_feature(image_format),
'image/class/label': int64_feature(class_id),
'image/height': int64_feature(height),
'image/width': int64_feature(width),
}))
似乎我必须编辑此功能才能添加另一个标签(添加另一行image/class/label': int64_feature(class_id)
?)
我不完全确定如何添加另一个我喜欢训练神经网络的标签(也许我只需创建另一个image_to_tfexample()
同样的标签图像,但不同的标签?)
答案 0 :(得分:1)
添加类似于您已声明的那个:
def image_to_tfexample(image_data, image_format, height, width, class_id, label):
return tf.train.Example(features=tf.train.Features(feature={
'image/encoded': bytes_feature(image_data),
'image/format': bytes_feature(image_format),
'image/class/label': int64_feature(class_id),
'image/label':int64_feature(label)
'image/height': int64_feature(height),
'image/width': int64_feature(width),
}))
删除您未使用的功能,不必增加tfrecords
尺寸。