Trash Annotations in Context

Feeding AI to fight littering


What is TACO?

🌮 is an open image dataset of waste in the wild. It contains photos of litter taken under diverse environments, from tropical beaches to London streets. These images are manually labeled and segmented according to a hierarchical taxonomy to train and evaluate object detection algorithms. The best way to know TACO is to explore our dataset.

For convenience, annotations are provided in COCO format. TACO is still a baby, but it is growing and you can help it! Our plan is to eventually open benchmark challenges. Stay tuned!

Next Goal: 10000 annotated images
Free Space
  Annotated images      
  New images


Humans have been trashing planet Earth from the bottom of Mariana trench to Mount Everest. Every minute, at least 15 tonnes of plastic waste leak into the ocean, that is equivalent to the capacity of one garbage truck. We have all seen the impact of this behaviour to wildlife on images of turtles choking on plastic bags and birds filled with bottle caps. Recent studies have also found microplastics in human stools. These should be kept in the recycling chain not in our food chain. It is time for a revolution.

We believe AI has an important role to play. Think of drones surveying trash, robots picking up litter, anti-littering video surveillance and AR to educate and help humans to separate trash. That is our vision. All of this is now possible with the recent advances of deep learning. However, to learn accurate trash detectors, deep learning needs many annotated images. Enter TACO. While there are a few other trash datasets, we believe these are not enough. Our goal is to take TACO to the next level with the following features:

  • Object segmentation. Typically used bounding boxes are not enough for certain tasks, e.g., robotic grasping

  • Images under free licence. You can do whatever you want with TACO as long as you cite us.

  • Background annotation. TACO covers many environments which are tagged for convenience.

  • Object context tag. Not all objects in TACO are strictly litter. Some objects are handheld or not even trash yet. Thus, objects are tagged based on context

How can I help?

Anyone can help! Here are several ways:

  • Annotate new images using our online tool.

  • Take pictures of litter and upload them here or to Flickr following our instructions.

  • If you are a machine learning researcher, check out our repo and start using this dataset in your experiments. We would love to hear about your results.

  • Feedback is appreciated. Let us know if you spot any issue with the dataset or our tools.

  • Too busy?  

Terms and Conditions

Both the images and annotations provided by this dataset are all under free copyright licences. While the annotations are licenced under CC BY 4.0, images may be under different specific public licences since these were obtained from different sources and users. The licence along with the original URL of each individual image are referenced in the accompanying annotation file. If the licence entry is missing, then this is by default: CC BY 4.0.


I have done a few annotations, now what? When is the dataset going to be updated?

Your submitted annotations will be reviewed by us and added to the next versions of TACO. We update periodically the dataset and release a new version everytime we process a significant number of new images (>500). The time between releases is either due to a lack of new annotations or because we are too busy. This is, after all, a side project with no funding and deadlines. But we are commited to keep this active for the foreseeable future. Subscribe to our project to get an e-mail everytime there's a major update.

I don't know which class to choose?

Don't worry too much about the object label and taxonomy. Your annotations are going to be reviewed anyway by an expert. We rather correct inaccurate labels than poor quality segmentations.

How do I know if my segmentation is good enough?

Take a look at some examples using the Explore, to get an idea. Always segment on HR mode (original image resolution).

How to deal with object occlusions?

Try to make a clean mask; If possible, exclude occlusions from the segmentation. e.g. a leaf covering the edge of a can. If an object is split into parts by an occluding object, you can create multiple polygons per object. To do so, when prompted "Are you done with this object?" choose "Not Yet" and continue segmenting. However, there are cases where all this might be too complicated and laborious. Thus, there is tolerance for approximations.

How do I subscribe to this project?

If you want to be part of our mailing list to get dataset updates and receive related news from this project, you need to submit one annotation and you will have the option to insert your e-mail (: You can unsubscribe by replying to our newsletter.