Back to Models

TensorFlow 1 Detection Model Zoo

research/object_detection/g3doc/tf1_detection_zoo.md

2.20.020.1 KB
Original Source

TensorFlow 1 Detection Model Zoo

We provide a collection of detection models pre-trained on the COCO dataset, the Kitti dataset, the Open Images dataset, the AVA v2.1 dataset the iNaturalist Species Detection Dataset and the Snapshot Serengeti Dataset. These models can be useful for out-of-the-box inference if you are interested in categories already in those datasets. They are also useful for initializing your models when training on novel datasets.

In the table below, we list each such pre-trained model including:

  • a model name that corresponds to a config file that was used to train this model in the samples/configs directory,
  • a download link to a tar.gz file containing the pre-trained model,
  • model speed --- we report running time in ms per 600x600 image (including all pre and post-processing), but please be aware that these timings depend highly on one's specific hardware configuration (these timings were performed using an Nvidia GeForce GTX TITAN X card) and should be treated more as relative timings in many cases. Also note that desktop GPU timing does not always reflect mobile run time. For example Mobilenet V2 is faster on mobile devices than Mobilenet V1, but is slightly slower on desktop GPU.
  • detector performance on subset of the COCO validation set, Open Images test split, iNaturalist test split, or Snapshot Serengeti LILA.science test split. as measured by the dataset-specific mAP measure. Here, higher is better, and we only report bounding box mAP rounded to the nearest integer.
  • Output types (Boxes, and Masks if applicable )

You can un-tar each tar.gz file via, e.g.,:

tar -xzvf ssd_mobilenet_v1_coco.tar.gz

Inside the un-tar'ed directory, you will find:

  • a graph proto (graph.pbtxt)
  • a checkpoint (model.ckpt.data-00000-of-00001, model.ckpt.index, model.ckpt.meta)
  • a frozen graph proto with weights baked into the graph as constants (frozen_inference_graph.pb) to be used for out of the box inference (try this out in the Jupyter notebook!)
  • a config file (pipeline.config) which was used to generate the graph. These directly correspond to a config file in the samples/configs) directory but often with a modified score threshold. In the case of the heavier Faster R-CNN models, we also provide a version of the model that uses a highly reduced number of proposals for speed.
  • Mobile model only: a TfLite file (model.tflite) that can be deployed on mobile devices.

Some remarks on frozen inference graphs:

  • If you try to evaluate the frozen graph, you may find performance numbers for some of the models to be slightly lower than what we report in the below tables. This is because we discard detections with scores below a threshold (typically 0.3) when creating the frozen graph. This corresponds effectively to picking a point on the precision recall curve of a detector (and discarding the part past that point), which negatively impacts standard mAP metrics.
  • Our frozen inference graphs are generated using the v1.12.0 release version of TensorFlow; this being said, each frozen inference graph can be regenerated using your current version of TensorFlow by re-running the exporter, pointing it at the model directory as well as the corresponding config file in samples/configs.

COCO-trained models

Model nameSpeed (ms)COCO mAP1Outputs
ssd_mobilenet_v1_coco3021Boxes
ssd_mobilenet_v1_0.75_depth_coco ☆2618Boxes
ssd_mobilenet_v1_quantized_coco ☆2918Boxes
ssd_mobilenet_v1_0.75_depth_quantized_coco ☆2916Boxes
ssd_mobilenet_v1_ppn_coco ☆2620Boxes
ssd_mobilenet_v1_fpn_coco ☆5632Boxes
ssd_resnet_50_fpn_coco ☆7635Boxes
ssd_mobilenet_v2_coco3122Boxes
ssd_mobilenet_v2_quantized_coco2922Boxes
ssdlite_mobilenet_v2_coco2722Boxes
ssd_inception_v2_coco4224Boxes
faster_rcnn_inception_v2_coco5828Boxes
faster_rcnn_resnet50_coco8930Boxes
faster_rcnn_resnet50_lowproposals_coco64Boxes
rfcn_resnet101_coco9230Boxes
faster_rcnn_resnet101_coco10632Boxes
faster_rcnn_resnet101_lowproposals_coco82Boxes
faster_rcnn_inception_resnet_v2_atrous_coco62037Boxes
faster_rcnn_inception_resnet_v2_atrous_lowproposals_coco241Boxes
faster_rcnn_nas183343Boxes
faster_rcnn_nas_lowproposals_coco540Boxes
mask_rcnn_inception_resnet_v2_atrous_coco77136Masks
mask_rcnn_inception_v2_coco7925Masks
mask_rcnn_resnet101_atrous_coco47033Masks
mask_rcnn_resnet50_atrous_coco34329Masks

Note: The asterisk (☆) at the end of model name indicates that this model supports TPU training.

Note: If you download the tar.gz file of quantized models and un-tar, you will get different set of files - a checkpoint, a config file and tflite frozen graphs (txt/binary).

Mobile models

Model namePixel 1 Latency (ms)COCO mAPOutputs
ssd_mobiledet_cpu_coco11324.0Boxes
ssd_mobilenet_v2_mnasfpn_coco18326.6Boxes
ssd_mobilenet_v3_large_coco11922.6Boxes
ssd_mobilenet_v3_small_coco4315.4Boxes

Pixel4 Edge TPU models

Model namePixel 4 Edge TPU Latency (ms)COCO mAP (fp32/uint8)Outputs
ssd_mobiledet_edgetpu_coco6.925.9/25.6Boxes
ssd_mobilenet_edgetpu_coco6.6-/24.3Boxes

Pixel4 DSP models

Model namePixel 4 DSP Latency (ms)COCO mAP (fp32/uint8)Outputs
ssd_mobiledet_dsp_coco12.328.9/28.8Boxes

Kitti-trained models

Model nameSpeed (ms)Pascal [email protected]Outputs
faster_rcnn_resnet101_kitti7987Boxes

Open Images-trained models

Model nameSpeed (ms)Open Images [email protected]2Outputs
faster_rcnn_inception_resnet_v2_atrous_oidv272737Boxes
faster_rcnn_inception_resnet_v2_atrous_lowproposals_oidv2347Boxes
facessd_mobilenet_v2_quantized_open_image_v4 32073 (faces)Boxes
Model nameSpeed (ms)Open Images [email protected]4Outputs
faster_rcnn_inception_resnet_v2_atrous_oidv442554Boxes
ssd_mobilenetv2_oidv48936Boxes
ssd_resnet_101_fpn_oidv423738Boxes

iNaturalist Species-trained models

Model nameSpeed (ms)Pascal [email protected]Outputs
faster_rcnn_resnet101_fgvc39558Boxes
faster_rcnn_resnet50_fgvc36655Boxes

AVA v2.1 trained models

Model nameSpeed (ms)Pascal [email protected]Outputs
faster_rcnn_resnet101_ava_v2.19311Boxes

Snapshot Serengeti Camera Trap trained models

Model nameCOCO [email protected]Outputs
faster_rcnn_resnet101_snapshot_serengeti38Boxes
context_rcnn_resnet101_snapshot_serengeti56Boxes

Pixel 6 Edge TPU models

Model namePixel 6 Edge TPU Speed (ms)Pixel 6 Speed with Post-processing on CPU (ms)COCO 2017 mAP (uint8)Outputs
spaghettinet_edgetpu_s1.31.826.3Boxes
spaghettinet_edgetpu_m1.41.927.4Boxes
spaghettinet_edgetpu_l1.72.128.0Boxes

Footnotes

  1. See MSCOCO evaluation protocol. The COCO mAP numbers, with the exception of the Pixel 6 Edge TPU models, are evaluated on COCO 14 minival set (note that our split is different from COCO 17 Val). A full list of image ids used in our split could be found here.

  2. This is PASCAL mAP with a slightly different way of true positives computation: see Open Images evaluation protocols, oid_V2_detection_metrics.

  3. Non-face boxes are dropped during training and non-face groundtruth boxes are ignored when evaluating.

  4. This is Open Images Challenge metric: see Open Images evaluation protocols, oid_challenge_detection_metrics.