Introducing turkey: an Amazon Mechanical Turk turn-key segment tool

Yanfeng Liu
2 min readJun 28, 2019

--

Crowd-sourcing image instance segmentation data can be cumbersome, especially when you have to write the tool from scratch. That’s why I created turkey. The code is designed to be directly copied and pasted onto Amazon Mechanical Turk for instance segmentation. Its current functions include:

  • Customize the annotation modes (dot, line, polygon) and class labels on per-image basis
  • Import previous annotations generated by either another human or an algorithm (such as a neural network)
  • Zoom, delete, undo, reset

The repository also includes a Matlab script that reads the downloadable csv result and reconstructs the annotations.

I’m aware that Amazon has recently released their own image segmentation tool. There are 3 advantages of my tool compared to theirs:

  • It seems to be a semantic segmentation tool, which is different from instance segmentation. For semantic segmentation you basically label which pixel belongs to which class, but if there are multiple instances of the same class, semantic segmentation doesn’t differentiate them.
  • Their tool also seemed a little buggy. When I tried it, only 1 of the 2 images got loaded correctly, and the annotation results in the downloaded csv was confusing (it looked somewhat like “B8gzS96nSL7Xnp0”).
  • The most import thing is that their tool is encapsulated into their internal API, which we have no direct access to. That means if you want to change something or add something that was not included in the official example, you would have to write a new tool from scratch. My tool is written in plain JavaScript, with a little help from jQuery and bootstrap. Feel free to adapt it to your needs.

Code is tested on Chrome and Microsoft Edge. Development is still in progress. Ideas and suggestions are welcome!

--

--

Yanfeng Liu
Yanfeng Liu

Written by Yanfeng Liu

SDE at Google. Opinions are my own.

No responses yet