All Projects → mjhucla → Google_refexp_toolbox

mjhucla / Google_refexp_toolbox

The toolbox for the Google Refexp dataset proposed in this paper: http://arxiv.org/abs/1511.02283

Projects that are alternatives of or similar to Google refexp toolbox

Handwriting Synthesis
Implementation of "Generating Sequences With Recurrent Neural Networks" https://arxiv.org/abs/1308.0850
Stars: ✭ 135 (+0%)
Mutual labels:  jupyter-notebook
Ventilator
Low-Cost Open Source Ventilator or PAPR
Stars: ✭ 1,665 (+1133.33%)
Mutual labels:  jupyter-notebook
Nbgallery
Enterprise Jupyter notebook sharing and collaboration app
Stars: ✭ 135 (+0%)
Mutual labels:  jupyter-notebook
Sourcecodeofmongoredis
《左手MongoDB,右手Redis——从入门到商业实战》书籍配套源代码。
Stars: ✭ 135 (+0%)
Mutual labels:  jupyter-notebook
Pycon Ds 2018
Introduction to Python for Data Science for PyCon 2018
Stars: ✭ 135 (+0%)
Mutual labels:  jupyter-notebook
Deeplearning.ai
deeplearning.ai , By Andrew Ng, All slide and notebook + code and some material.
Stars: ✭ 1,663 (+1131.85%)
Mutual labels:  jupyter-notebook
Mxnet Gtc Tutorial
MXNet Tutorial for NVidia GTC 2016.
Stars: ✭ 134 (-0.74%)
Mutual labels:  jupyter-notebook
Arduino Max30100
Arduino library for MAX30100, integrated oximeter and heart rate sensor
Stars: ✭ 134 (-0.74%)
Mutual labels:  jupyter-notebook
Riptide
Simple Training and Deployment of Fast End-to-End Binary Networks
Stars: ✭ 135 (+0%)
Mutual labels:  jupyter-notebook
Deeplearning
Deep Learning introduction and its application in various fields
Stars: ✭ 135 (+0%)
Mutual labels:  jupyter-notebook
Beyond Jupyter
🐍💻📊 All material from the PyCon.DE 2018 Talk "Beyond Jupyter Notebooks - Building your own data science platform with Python & Docker" (incl. Slides, Video, Udemy MOOC & other References)
Stars: ✭ 135 (+0%)
Mutual labels:  jupyter-notebook
Ml learning in action
ML study process record
Stars: ✭ 135 (+0%)
Mutual labels:  jupyter-notebook
Keras Yolo2
Easy training on custom dataset. Various backends (MobileNet and SqueezeNet) supported. A YOLO demo to detect raccoon run entirely in brower is accessible at https://git.io/vF7vI (not on Windows).
Stars: ✭ 1,693 (+1154.07%)
Mutual labels:  jupyter-notebook
Ssss
"Deep Learning and Quantum Programming" Spring School @ Song Shan Lake
Stars: ✭ 135 (+0%)
Mutual labels:  jupyter-notebook
2016 Ml Contest
Machine learning contest - October 2016 TLE
Stars: ✭ 135 (+0%)
Mutual labels:  jupyter-notebook
Machine Learning Projects
This repository consists of all my Machine Learning Projects.
Stars: ✭ 135 (+0%)
Mutual labels:  jupyter-notebook
Fourier
An Interactive Introduction to Fourier Transforms
Stars: ✭ 1,809 (+1240%)
Mutual labels:  jupyter-notebook
Data Science Wg
SF Brigade's Data Science Working Group.
Stars: ✭ 135 (+0%)
Mutual labels:  jupyter-notebook
Opencv projects
List of OpenCV projects to further increase the computer vision community. Coding in Python & C++(In progress).
Stars: ✭ 135 (+0%)
Mutual labels:  jupyter-notebook
Python Narrative Journey
Repo of Files for Python Narrative Journey Course
Stars: ✭ 135 (+0%)
Mutual labels:  jupyter-notebook

Python toolbox for the Google Referring Expressions Dataset

The Google RefExp dataset is a collection of text descriptions of objects in images which builds on the publicly available MS-COCO dataset. Whereas the image captions in MS-COCO apply to the entire image, this dataset focuses on text descriptions that allow one to uniquely identify a single object or region within an image. See more details in this paper: Generation and Comprehension of Unambiguous Object Descriptions

Sample of the data

Green dot is the object that is being referred to. Sentences are generated by humans in a way that uniquely describes the chosen object.

Mountain View Mountain View Mountain View
  • A girl wearing glasses and a pink shirt.
  • An Asian girl with a pink shirt eating at the table.
  • A boy brushing his hair while looking at his reflection.
  • A young male child in pajamas shaking around a hairbrush in the mirror.
  • Zebra looking towards the camera.
  • A zebra third from the left.

Requirements

  • python 2.7 (Need numpy, scipy, matlabplot, PIL packages. All included in Anaconda)

Setup and data downloading

Easy setup

cd $YOUR_PATH_TO_THIS_TOOLBOX
python setup.py

Running the setup.py script will do the following five things:

  1. Download Google Refexp Data
  2. Download and compile the COCO toolbox
  3. Download COCO annotations
  4. Download COCO images
  5. Align the Google Refexp Data with COCO annotations

At each step you will be prompted by keyboard whether or not you would like to skip a step. Note that the MS COCO images (13GB) and annotations (158MB) are very large and it takes some time to download all of them.

Manual downloading and setup

You can download the GoogleRefexp data directly from this link.

If you have already played with MS COCO and do not want to have two copies of them, you can choose to create a symbolic link from external to your COCO toolkit. E.g.:

cd $YOUR_PATH_TO_THIS_TOOLBOX
ln -sf $YOUR_PATH_TO_COCO_TOOLBOX ./external/coco

Please make sure the following on are on your path:

  1. compiled PythonAPI at external/coco/PythonAPI
  2. the annotation file at external/coco/annotations/instances_train2014.json
  3. COCO images at external/coco/images/train2014/.

You can create symbolic links if you have already downloaded the data and compiled the COCO toolbox.

Then run setup.py to download the Google Refexp data and compile this toolbox. You can skip steps 2, 3, 4.

Demos

For visualization and utility functions, please see google_refexp_dataset_demo.ipynb.

For automatic and Amazon Mechanical Turk (AMT) evaluation of the comprehension and generation tasks, please see google_refexp_eval_demo.ipynb; The appropriate output format for a comprehension/generation algorithm is described in ./evaluation/format_comprehension_eval.md and ./evaluation/format_generation_eval.md

We also provide two sample outputs for reference. For the comprehension task, we use a naive baseline which is a random shuffle of the region candidates (./evaluation/sample_results/sample_results_comprehension.json). For the generation task, we use a naive baseline which outputs the class name of an object (./evaluation/sample_results/sample_results_generation.json).

If you are not familiar with AMT evaluations, please see this tutorial The interface and APIs provided by this toolbox have already grouped 5 evaluations into one HIT. In our experiment, paying 2 cents for one HIT leads to reasonable results.

Citation

If you find the dataset and toolbox useful in your research, please consider citing:

@inproceedings{mao2016generation,
  title={Generation and Comprehension of Unambiguous Object Descriptions},
  author={Mao, Junhua and Huang, Jonathan and Toshev, Alexander and Camburu, Oana and Yuille, Alan and Murphy, Kevin},
  booktitle={CVPR},
  year={2016}
}

License

This data is released by Google under the following license: Creative Commons License
This work is licensed under a Creative Commons Attribution 4.0 International License.

Toolbox Developers

Junhua Mao and Oana Camburu

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].