.record 和 .tfrecord 的区别

Difference between .record and .tfrecord

我从 https://public.roboflow.com/ 下载了一个数据集,其中包含 test.tfrecord 和 train.tfrecord

和test.record和train.record一样吗?

是的,文件扩展名无关紧要,它们在 TFRecord format 中。你可以把它想象成一个 zip 文件,尽管它的结构可以是自由格式的。

这些特定的用于 Tensorflow 对象检测 API,它期望 tfrecord 中的数据以特定结构和顺序排列,如下所示:

tf_example = tf.train.Example(features=tf.train.Features(feature={
        'image/height': dataset_util.int64_feature(height),
        'image/width': dataset_util.int64_feature(width),
        'image/filename': dataset_util.bytes_feature(filename),
        'image/source_id': dataset_util.bytes_feature(filename),
        'image/encoded': dataset_util.bytes_feature(encoded_jpg),
        'image/format': dataset_util.bytes_feature(image_format),
        'image/object/bbox/xmin': dataset_util.float_list_feature(xmins),
        'image/object/bbox/xmax': dataset_util.float_list_feature(xmaxs),
        'image/object/bbox/ymin': dataset_util.float_list_feature(ymins),
        'image/object/bbox/ymax': dataset_util.float_list_feature(ymaxs),
        'image/object/class/text': dataset_util.bytes_list_feature(classes_text),
        'image/object/class/label': dataset_util.int64_list_feature(classes),
    }))

how to train with the Tensorflow 2.0 Object Detection API here 上有完整教程。