Tensorflow TFRecord
Tensorflow TFRecords are a binary format used with the TensorFlow Object Detection models.
Overview
The Tensorflow Object Detection API uses a proprietary binary file format called TFRecord. Creating TFRecord files has long been the bane of many developers' existence. While they are very efficient for TensorFlow's deep learning framework to parse, they are quite opaque and are not human readable. They're quite finicky; If something is wrong, it's not easy to find out why.
It's not really possible to create these files by hand. You'll need to use a tool to create them. The most foolproof tool to use is Roboflow because, unlike most one-off shell scripts, Roboflow is a universal converter for computer vision formats.
With Roboflow you can seamlessly convert whatever filetype your annotation tool exports directly into a TFRecord that's ready to use for training your model.
Supported Models
Below, see model architectures that require data in the Tensorflow TFRecord format when training a new model.
- MobileNet SSD v2Object Detection
MobileNet SSD v2 combines MobileNetV2 and SSD for real-time object detection on mobile and edge devices with a compact, efficient architecture.
- Faster R-CNNObject Detection
Faster R-CNN introduced the Region Proposal Network for near-real-time two-stage detection, with the canonical implementation available through Meta's Detectron2.
Convert Data to Tensorflow TFRecord
- COCO JSON
- Cogniac
- CreateML JSON
- Google Cloud AutoML Vision CSV
- IBM Cloud Annotations JSON
- Kaggle Wheat CSV
- LabelBox JSON
- LabelBox Video JSON
- LabelMe JSON
- Marmot XML
- Multiclass Classification CSV
- OIDv4 TXT
- OpenImages CSV
- Pascal VOC XML
- RetinaNet Keras CSV
- Sagemaker GroundTruth Manifest
- Scale AI JSON
- SuperAnnotate JSON
- Supervisely JSON
- Tensorflow Object Detection CSV
- Udacity TXT
- Unity Perception JSON
- VGG Image Annotator CSV
- VGG Image Annotator JSON
- VoTT CSV
- VoTT JSON
- YOLO Darknet TXT
- YOLO Keras TXT
- YOLOv8 PyTorch TXT