New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add Tensorflow Object Detection API. #1561

Merged
merged 1 commit into from Jun 15, 2017

Conversation

Projects
None yet
3 participants
@derekjchow
Member

derekjchow commented Jun 15, 2017

For details see our paper:
"Speed/accuracy trade-offs for modern convolutional object detectors."
Huang J, Rathod V, Sun C, Zhu M, Korattikara A, Fathi A, Fischer I,
Wojna Z, Song Y, Guadarrama S, Murphy K, CVPR 2017
https://arxiv.org/abs/1611.10012

@googlebot googlebot added the cla: yes label Jun 15, 2017

@sguada

Please fix this while I read the docs

Show outdated Hide outdated object_detection/anchor_generators/BUILD
"grid_anchor_generator.py",
],
deps = [
"//pyglib",

This comment has been minimized.

@sguada

sguada Jun 15, 2017

Member

is this needed?

@sguada

sguada Jun 15, 2017

Member

is this needed?

This comment has been minimized.

@derekjchow

derekjchow Jun 15, 2017

Member

Nope. Removed.

@derekjchow

derekjchow Jun 15, 2017

Member

Nope. Removed.

Show outdated Hide outdated object_detection/builders/hyperparams_builder.py
'center': batch_norm.center,
'scale': batch_norm.scale,
'epsilon': batch_norm.epsilon,
'is_training': is_training and batch_norm.train,

This comment has been minimized.

@sguada

sguada Jun 15, 2017

Member

Do you want to use fused=True?

@sguada

sguada Jun 15, 2017

Member

Do you want to use fused=True?

This comment has been minimized.

@derekjchow

derekjchow Jun 15, 2017

Member

Done.

Show outdated Hide outdated object_detection/README.md
<a href='g3doc/exporting_models.md'>
Exporting a trained model for inference</a><br>
<a href='g3doc/defining_your_own_model.md'>
Defining your own model architecture</a><br>

This comment has been minimized.

@sguada

sguada Jun 15, 2017

Member

Add a link to the notebook

@sguada

sguada Jun 15, 2017

Member

Add a link to the notebook

This comment has been minimized.

@derekjchow

derekjchow Jun 15, 2017

Member

The top link provides instructions for the notebook.

@derekjchow

derekjchow Jun 15, 2017

Member

The top link provides instructions for the notebook.

This comment has been minimized.

@sguada

sguada Jun 15, 2017

Member

no it is a link to the .md file not the notebook itself

@sguada

sguada Jun 15, 2017

Member

no it is a link to the .md file not the notebook itself

## Table of contents

This comment has been minimized.

@sguada

sguada Jun 15, 2017

Member

Replace with

Quick Start:

  • Jupyter notebook for off-the-shelf inference
  • Training on a pet detector

Installation

  • Requirements
  • Configuring an object detection pipeline
  • Preparing inputs

Running:

  • Locally
  • On the cloud

Extras:

  • Tensorflow detection model zoo
  • Exporting a trained model for inference
  • Defining your own model architecture
@sguada

sguada Jun 15, 2017

Member

Replace with

Quick Start:

  • Jupyter notebook for off-the-shelf inference
  • Training on a pet detector

Installation

  • Requirements
  • Configuring an object detection pipeline
  • Preparing inputs

Running:

  • Locally
  • On the cloud

Extras:

  • Tensorflow detection model zoo
  • Exporting a trained model for inference
  • Defining your own model architecture

This comment has been minimized.

@derekjchow

derekjchow Jun 15, 2017

Member

Great idea! Done.

@derekjchow

derekjchow Jun 15, 2017

Member

Great idea! Done.

Show outdated Hide outdated object_detection/README.md
<a href='g3doc/exporting_models.md'>
Exporting a trained model for inference</a><br>
<a href='g3doc/defining_your_own_model.md'>
Defining your own model architecture</a><br>

This comment has been minimized.

@sguada

sguada Jun 15, 2017

Member

no it is a link to the .md file not the notebook itself

@sguada

sguada Jun 15, 2017

Member

no it is a link to the .md file not the notebook itself

Detection API for a research publication, please consider citing:
```
"Speed/accuracy trade-offs for modern convolutional object detectors."

This comment has been minimized.

@sguada

sguada Jun 15, 2017

Member

Add link to arxiv paper and bibtex

@sguada

sguada Jun 15, 2017

Member

Add link to arxiv paper and bibtex

This comment has been minimized.

This comment has been minimized.

@derekjchow

derekjchow Jun 15, 2017

Member

Link added. The bibtext seems a bit big for the README.

http://dblp.uni-trier.de/rec/bibtex/journals/corr/HuangRSZKFFWSG016

@derekjchow

derekjchow Jun 15, 2017

Member

Link added. The bibtext seems a bit big for the README.

http://dblp.uni-trier.de/rec/bibtex/journals/corr/HuangRSZKFFWSG016

This comment has been minimized.

@derekjchow

derekjchow Jun 15, 2017

Member

Done.

Show outdated Hide outdated object_detection/g3doc/running_notebook.md
```
The notebook should open in your favorite web browser. Click the
`object_detection_tutorial.ipynb` link to open the demo.

This comment has been minimized.

@sguada

sguada Jun 15, 2017

Member

Add link to the notebook itself, github can show it.

Also add the instructions on how to run it to the notebook itself

@sguada

sguada Jun 15, 2017

Member

Add link to the notebook itself, github can show it.

Also add the instructions on how to run it to the notebook itself

This comment has been minimized.

@derekjchow

derekjchow Jun 15, 2017

Member

Done.

Show outdated Hide outdated object_detection/g3doc/installation.md
* Tensorflow
To install Tensorflow, follow the
[Tensorflow installation instructions](https://www.tensorflow.org/install/).

This comment has been minimized.

@sguada

sguada Jun 15, 2017

Member

Could you provide a couple of lines for a simple install of TF and direct to the link for others.

@sguada

sguada Jun 15, 2017

Member

Could you provide a couple of lines for a simple install of TF and direct to the link for others.

Show outdated Hide outdated object_detection/README.md
* Region-Based Fully Convolutional Networks (R-FCN) with Resnet 101,
* Faster RCNN with Resnet 101,
* Faster RCNN with Inception Resnet v2
* Mask R-CNN.

This comment has been minimized.

@sguada

sguada Jun 15, 2017

Member

does it use some architecture ResNet 101?

@sguada

sguada Jun 15, 2017

Member

does it use some architecture ResNet 101?

Show outdated Hide outdated object_detection/README.md
* Faster RCNN with Inception Resnet v2
* Mask R-CNN.
* Frozen weights (trained on the COCO dataset) for each of the above models to be used for out-of-the-box inference purposes.
* A Jupyter notebook for performing out-of-the-box inference with one of our released models

This comment has been minimized.

@sguada

sguada Jun 15, 2017

Member

Add link to the notebook

@sguada

sguada Jun 15, 2017

Member

Add link to the notebook

Show outdated Hide outdated object_detection/README.md
* Mask R-CNN.
* Frozen weights (trained on the COCO dataset) for each of the above models to be used for out-of-the-box inference purposes.
* A Jupyter notebook for performing out-of-the-box inference with one of our released models
* Convenient local training scripts as well as distributed training and evaluation pipelines via Google Cloud

This comment has been minimized.

@sguada

sguada Jun 15, 2017

Member

Add link to local training and to GC training

@sguada

sguada Jun 15, 2017

Member

Add link to local training and to GC training

(`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!)

This comment has been minimized.

@sguada

sguada Jun 15, 2017

Member

Add link to the notebook

@sguada

sguada Jun 15, 2017

Member

Add link to the notebook

This comment has been minimized.

@derekjchow

derekjchow Jun 15, 2017

Member

Done.

This comment has been minimized.

@derekjchow

derekjchow Jun 15, 2017

Member

Done.

@@ -0,0 +1 @@
# Exporting a trained model for inference

This comment has been minimized.

@sguada

sguada Jun 15, 2017

Member

This file is empty

@sguada

sguada Jun 15, 2017

Member

This file is empty

This comment has been minimized.

@derekjchow

derekjchow Jun 15, 2017

Member

Filled in.

@derekjchow

derekjchow Jun 15, 2017

Member

Filled in.

Derek Chow derekjchow
Add Tensorflow Object Detection API.
See our paper:
"Speed/accuracy trade-offs for modern convolutional object detectors."
Huang J, Rathod V, Sun C, Zhu M, Korattikara A, Fathi A, Fischer I,
Wojna Z, Song Y, Guadarrama S, Murphy K, CVPR 2017
https://arxiv.org/abs/1611.10012

@sguada sguada merged commit a4944a5 into tensorflow:master Jun 15, 2017

1 check passed

cla/google All necessary CLAs are signed

RubinLiao added a commit to RubinLiao/models that referenced this pull request Jun 17, 2017

update code. (#1)
* Make ptb_word_lm compatible with the latest TensorFlow source while maintaining backwards compatibility with TF 1.0

* Rewrite to use inspect.getargspec

* Add a message to the README to use TensorFlow 1.0 or later

* Link to tensorflow.org/install

* Make comment in ptb_word_lm compatible with TF 1.0

* Improved the spacing on the comment

* Domain Separation Networks changes.

* Domain Separation Networks changes.

* README.md Updates

* README.md Updates

* README changes.

* README changes.

* README changes.

* README changes.

* README changes.

* README changes.

* DSN infrastructure staging

* Maintain alphabetization and styling

* Seperation -> Separation

* Upgrade to TF 1.0

* Move the README to the main directory

* Fix double-pasted README and add code tags around the terminal commands

* Make the README for textsum a little clearer

* add binary to file reading

* Additional fixes to get download_and_preprocess_flowers working

* fix missing build images script

* Update README.md

I had to figure this one out on my own. Probably belongs in the manual install notes.

* Remove commented-out deps.

* Add back the line that adds to PYTHONPATH

* DSN infrastructure staging

* =Other tensorflow_models changes.

* Domain Separation Networks changes.

* README.md Updates

* README changes.

* README changes.

* Maintain alphabetization and styling

* Seperation -> Separation

* Upgrade to TF 1.0

* Move the README to the main directory

* Fix double-pasted README and add code tags around the terminal commands

* Remove commented-out deps.

* Add back the line that adds to PYTHONPATH

* Further fixes for the domain_adaptation README

* Clarifications for the inception README

* DSN Updates

* Fix provide_batch_fn for semi-supervised case.

* Update dockerfile to allow notebook to run (#1308)

This fixes the 'running as root is not recommended' crash

* Fix broken url link

* fix translate relevant import problem when used as lib.

* Revert merge #1292

This broke the bazel build of inception/download_and_preprocess_flowers
The way that this script is written doesn't actually allow it to be ran
outside bazel, some refactoring would be needed if you want to run it
standalone.

It should be ran using

```
bazel build inception/download_and_preprocess_flowers

bazel-bin/inception/download_and_preprocess_flowers
"${FLOWERS_DATA_DIR}"
```

* Un-revert build_image_data.py

* Add back folder name improvements (no trailing slash)

* Issue template for models.

* Fix issue template

* Fixes for compatibility with TF 1.0 and python 3.

* commit to enable true fully convolutional application of network

* Fixed model_deploy to correctly assign weights to variables_device (#992)

* Fixed model_deploy to correctly assign weights to variables_device

* Adding test for network_fn's arg_scope

* Style fix (double blank line)

* Add WORKSPACE file to models/slim so that imports work properly

* Revert a change to imports which breaks the instructions given in the tutorial

* Improvements for ISSUE_TEMPLATE.md

* Fixes for differential_privacy

* Further updates to ISSUE_TEMPLATE.md

* Move ISSUE_TEMPLATE.md back to .github temporarily for easier diffing

* Move ISSUE_TEMPLATE.md out of .github and make the system information questions bold

* Code organization for the compression models in preparation for a new
subdirectory.

* Fixed link and made it more descriptive

* Fixed links

* DOC: show images in README.md by removing HTML tags

* DOC: show images in next_frame_prediction/README.md

* Move each image to its own line

* Move each image to its own line

* Change iteritems -> items for py3 compatability

* added OSX build instructions

* Add a note rather than repeating the full command

* Add a note about the ABI flag as well

* Removed rmsprop_momentum flag, use --momentum flag

The flag description for the momentum flag states that it is `The
momentum for the MomentumOptimizer and RMSPropOptimizer`, however its
not actually used in the RMSPropOptimizer.  Instead, a separate
`rmsprop_momentum` flag was used.  This deletes that flag for
simplicity.  It was not referenced anywhere else in the repo.

* Fixed link

* Implementation for Cognitive Mapping and Planning paper.

* xrange replaced with range

'xrange' was used in multiple places. In this setting it provided no measurable gain in terms of performance or memory, but broke python3 compatibility. It was replaced with 'range'

* Add adversarial text model

* Add adversarial text to main README

* Convert the paper titles into links in adversarial_text/README.md

* Description for cognitive mapping and planning in README.

* Remove unused function

Variable summaries and the learning rate are added elsewhere in the
code.  A quick search also shows that this function is never called.

* Minor fixes to ISSUE_TEMPLATE.md to match the tensorflow repository

* A script to generate a text file with FSNS URLs.

* inception: Added protocol flag when running distributed (#1401)

Default is TensorFlow default of 'grpc' communication protocol.
If TensorFlow was complied with Verbs support 'grpc+verbs' can be
used to accelerate the tensor passing communication.

* Links to ResNetv2 pre-trained weights. (#1373)

* Updated slim README.md to include links to ResNetv2 models.

* Change v1 to V1, v2 to V2, and other minor comments.

* Improvements to several READMEs

* DOC: document bash use for resnet

* Fix a typo

* Fix num_residual_units for w28-10

Fix num_residual_units for w28-10

* Update lm_1b_eval.py

Solve Python 3 compatibility:
- replacing xrange to range
- add .decode() after f.read() to get strings instead of bytes when reading text file

* stack outputs instead of concat outputs

* Open source release of adversarial crypto code corresponding
to Abadi & Andersen paper.

* Open source release of Attention OCR - a model for real-world image text extraction.

* Add link to the model from the top README

* Remove --no-preserve=all build_pip_package.py

This commit removes --no-preserve=all from
syntaxnet/dragnn/tools/build_pip_package.py. It was causing issues for
OSX developers, as that option is not available on OSX.

* Updates to adversarial_text model

* Fix Typos

* Distributed swivel (#1441)

* Refactor to use distributed TF API; add driver script.

* Add explicit GPU flag so multiple cards can be used.

* Update docs to mention distributed.sh.

* Don't make use of HParams yet, since they're not available in TF1.0

* Remove personal emails. (#1446)

Please use the forum for Swivel discussions instead of contacting the authors directly... thank you!

* resnet_v1 segmentation bugs from 7e2435e resolved

* resnet_v2.py segmentation bugs from 7e2435e resolved

* README updates for adversarial_crypto

* use six.moves.range instead of range

* correct the percentage logs in slim_walkthrough.ipynb

* Fixed the spacing

* correct authorship

* Update textsum/batch_reader.py to use six.next()

* set -e on bash scripts (#1330)

These scripts should exit immediately if a command exits with a non-zero status.

* Remove erroneous comment from resnet_v2.py

* minor spelling fix

* Import xrange directly from six.moves for lm_1b

* Fix Typo

* Force new instance creation in MultiRNNCell

* attention_ocr# Update checkpoint and instructions.

* Clean up changes for the attention_ocr README

* Update inception_preprocessing.py

Corrected documentation word "cropt" -> "crop"

* Update slim_walkthrough.ipynb

* Convert control_flow_ops.with_dependencies to tf.control_dependencies

* Add tf.identity

* Update protobuf version dependency

Updates protobuf version as previous (3.0.0b2) was no longer compatible and resulted in failing bazel tests during setup process.

* typo fix

* Image compression: initial version of the entropy coder.

* typo: "observed to common words" -> "two" (#1495)

Thanks!

* Remove names in TODO.

* Attention OCR: update README.md

* Remove barrier, add tf.identity where appropriate, and make sure tests pass

* Minor changes

* Fix typo

* Entropy coder for images: remove deprecated functions and update README.

* Fix Bazel incantations in docs

Fixes tensorflow/tensorflow#10239

* Fix arxiv links in README of neural_gpu model

As the links was [[link]] the last `]` was included in the url.

* SYNSETS contains the full path and does not need pwd prepended.

Tested on GCE with ubuntu 16.04. Mirrors change 157536266.

* Add executable flag to models so that they can be run from the download_and_preprocess_imagenet.sh script automatically

* Update resnet_model.py

'elipson' should be epsilon

* To pass test, add VariableV2 in _PSDeviceChooser

* Fixed calls to concat and convolution2d

* Add named arguments to tf.concat and use conv2d instead of convolution2d

* Implemented LRN for AlexNet tutorial

A TODO was stated for adding LRN - Pending GPU support.
LRN was implemented by tensorflow/tensorflow@35df3ed

Hyper-parameters taken from http://papers.nips.cc/paper/4824-imagenet-classification-with-deep-convolutional-neural-networks

* iput pipeline on CPU. 1700 images/sec to 8000 on GTX 1080

* pydoc update to match method signature

* Fixed typos and redudant with CPU:0

* Fixed typo and multi-gpu processing same batch on each gpu

* Code cleanup

* Rename the image/label batch variables

* Fixed error message for inception/imagenet.

* Fix a small bug of Python3 compatibility in tutorial example /rnn/ptb

* MobileNet V1 commit (#1551)

* MobileNet V1 commit

* updates to README

* Update README.md (#1552)

* Fix link to make image show up in mobilenet_v1.md (#1554)

Use a relative link instead

* Update inception_resnet_v2.py (#1555)

- Add inception_resnet_v2_base
- Provide option to use SAME padding for all inception resnet v2
  layers. This is to align feature maps sizes.

* slim Python 3 compatibility: cPickle and str/bytes (#1534)

* Fixed the device specification for dequeue (#1480)

This patch assigns dequeue node to inputs_device. And nolonger shows
"Ignoring device specification /device:GPU:X for node
'clone_X/fifo_queue_Dequeue'" message.

* Update model_deploy. (#1557)

Fix slow down with only 1 GPU

* Fixing the initialization/loading bug. 

The code currently loads the checkpoint and then initializes the variables resulting to random weights. 
Swapping the order fixes the loading checkpoint issue.

* Changes for consistency

* Missed section comments

* Reproduce reported virtual adversarial text results

* Update resnet (#1559)

* Add Tensorflow Object Detection API. (#1561)

For details see our paper:
"Speed/accuracy trade-offs for modern convolutional object detectors."
Huang J, Rathod V, Sun C, Zhu M, Korattikara A, Fathi A, Fischer I,
Wojna Z, Song Y, Guadarrama S, Murphy K, CVPR 2017
https://arxiv.org/abs/1611.10012

* Clean up documentation. (#1563)

* Reduce batchsize from 32->24 for SSD configs.

* Update username and add new line in READMEs.

* Change depth_radius from 5 to 2

* Add object_detection to the main README

* Update cifar10_input.py

* Download model in Jupyter Notebook. (#1580)

* Fixed broken link to mscoco.org

Thanks for the good work!

* Remove the erroneous comment from resnet_v2.py again

* URL returns 404

Fix URL

* Use spatial_squeeze=False for ResNet feature extractors. (#1586)

Fixes #1585

* Change visualizer font and jupyter notebook line thickness (#1589)

* Change DEFINE_enum to DEFINE_string and delete unused file. (#1590)

* Fix compatibility for model_builder_test.py (#1571)

iteritems -> items
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment