540 likes | 678 Views
Labeling Images for FUN!!!. Yan Cao, Chris Hinrichs. How do you improve Learning systems?. Get more processing power. (Faster computers, more memory, more parallel.) Find a more sophisticated algorithm. Get lots and lots of quality data. Why Manually label Images?.
E N D
Labeling Images for FUN!!! Yan Cao, Chris Hinrichs
How do you improve Learning systems? • Get more processing power. (Faster computers, more memory, more parallel.) • Find a more sophisticated algorithm. • Get lots and lots of quality data.
Why Manually label Images? • A job that’s easy for humans but challenging for Computer Vision • Why? Acquire Ground Truth • Segmentation, i.e. object extraction from an image, is hard • Multiple poses and views of objects • Depth of objects, which one is in the front when there is an intersection • Relationships between objects and their parts. E.g., face and eyes, car and wheels
General Idea to make computers do labeling – Supervised learning • Enough training data – Images with manually pre-assigned labels. • Classifiers which are trained by the training data and used to label the queried images. • If we want do segmentations on the queried images, the training images need to include the information about the boundaries of the inside objects.
Who is willing to be volunteer • Manually Labeling numerous images is a tedious job • Motivations which can make humans do something • Money! You know you will be paid • Fun! You enjoy doing it • Gain respect from others
ESP – an image labeling game • Rules • Server randomly arranges a partner to you (could be a “bot”) • The same image on the two partners’ screen • When the labels typed by the partners match each other, gain scores and move to the next image • There might be some taboo words which can not be the labels for the image
ESP – an image labeling game • Rules • Partners strive to agree on as many images as they can in 2.5 minutes • Partners can choose to pass images when they both click “Pass” button • The more images the partners agree on the labels, the higher the final scores they achieve
Taboo Words • Gained from the game • When the image is shown the first time in ESP, there are no taboo words • If the image is used again, there is a taboo word which is obtained from last agreements • At most 6 taboo words for one image • Taboo words guarantee that each image has many different labels
Good Label Threshold • It is the threshold to include a label to the list of taboo words for an image • If threshold = 1, it means that once a pair of partners agree on a label, this label will be set as a taboo word • If threshold =10, when 10 pairs of partners agree on the same label for an image, it is set as a taboo word
Image source • Randomly selected from the Web using a small amount of filters • From “Random Bounce Me”, which randomly returns images from Google database • Qualifications of images: • Large enough (>20 pixels on either dimension) • Aspect ratio between (1/4.5, 4.5) • Not blank/single color image
Evaluation • Are the labels relevant to the images? • Do a search within the labeled images in the ESP database • Are the players motivated by the game? • Do statistics on user log • How’s the labeling rate? • See how many images are labeled within a time period
Accuracy of Labels • 20 images are randomly selected from ESP • 15 participants are asked to label 20 images with 6 labels on each image, given no information about the taboo words. • When the labels made by the participants are compared with the labels obtained from the game, 83% of the labels match • For all images, the 3 most common words entered by the participants were contained by ESP labels
Is it fun? • Over 80% users played the game on multiple dates • In 4 months, 33 players played more than 50 hours on the game
Labeling Rate • If there are 5000 users online all 24 hours (it is easy to reach for online games), within a month all images in Google database (425,000,000) will be labeled!
More than Labeling • What if the players tell more information about images, such as where the objects are in the images? • Peekaboom • An interesting game which is fun and at the same time, collects information other than labels
Rules of Peekboom • Pairs of partners randomly arranged by Server • One sees a whole image and its label (Boom side) • The other sees a blank screen and an input box at bottom (Peek side) • The boom partner clicks on the image and each click reveals an area with a 20-pixel radius to the peek partner
Rules of Peekaboom • According to the revealed parts, the peek partner inputs labels until one matches the label shown on the boom side • The boom partner can give hints to help the peek partner get the right label • Ping the “key” parts in the images • Tell how the word is related to the image
Rules of Peekaboom • The partners switch between peek and boom alternatively • For images with a hard-to-guess label, the partners can choose to pass • The more images they correctly label in 2.5 minutes, the higher their score • To make the game more fun, bonus rounds are added and users are ranked by their scores
Information collected by Peekaboom • How the word relates to the image (from hints) • Pixels necessary to guess the word • The pixels inside the object, animal, or person (from pings) • The most salient aspects of the objects in the image (from the sequence of clicks) • Elimination of poor image-word pairs (passing)
Applications based on the information • Improving Image-Search Results • images in which the word refers to a higher fraction of the total pixels should be ranked higher • Bounding boxes of objects
Applications based on the information • Using Ping data for pointing
Evaluation • Do people have fun? • More than 90% people play multiple times on different days • Players on the “Top Scores” all played over 53 hours • Accuracies of collected data • Bounding boxes. Participants VS Peekaboom. Overlap percentage 0.754 • Accuracies of Pings. Participants VS Peekaboom. 100% accuracy!
Label Me Russel et. al. MIT CSAILab
Improving on image captions • Many image DBs are available which have captions for every image, which say what is in the image. • LabelMe allows users to add their own bounding boxes around objects and label them directly. • LabelMe’s authors claim their pictures are taken from a wide variety of places. (They seem to be mostly street scenes, and other travel photos, and a few insides of houses.)
How do you participate? • Just go to the URL: http://labelme.csail.mit.edu/ • You are given an image, which may or may not have previously drawn boundaries. If you see an object which you can identify, draw a boundary, and when you close the polygon it asks for a label. • There are no rules on how to choose the labels, or on how closely to draw the boxes. They trust your judgment – but more importantly, it reflects peoples’ different ideas.
It varies. How good are the bounding boxes?
More general results: 25th, 50th, and 75th percentile by polygon count of come common object types.
We can learn something about the way people take pictures from the distribution of where objects are located. Generally, people are standing when they take pictures.
Tying it in with WordNet • Some words have synonyms: man/woman, person, pedestrian; car, automobile, cab, suv • Look up each label on Wordnet. The authors report 93% of labels found a matching WordNet entry, though some manual word sense disambiguation had to be done. • This allows queries to match at various levels of specificity in the WordNet tree, and more general queries.
Dealing with occlusion: simple rules • If an object is completely contained, it is inside. • If it has more control points in the overlapping region is probably on top. • Can use features like color histograms to match the overlapping region with one region or the other, but this is expensive, complicated, and doesn’t work as well.
Image search reranking • Do segmentation on query image, extract features, compare with features of regions labeled with search terms, reorder by strength of correlation.
80 Million Tiny Images Torralba et. al. http://people.csail.mit.edu/torralba/tinyimages/
Shrinking images • How much information does an image need to contain in order to identify its contents? • Why not ask humans before asking computers? • Torralba et. al. looked for the minimum resolution that humans need in order to identify the contents of an image.
The humans did much better at 32x32 resolution than the best recognition algorithms did at full resolution. Note that for color images, the humans’ accuracy levels off at 32x32. For grayscale, the same happens at 64x64. 32x32x3 dimensions for color images, 32x32x4 dimensions for grayscale with very nearly the same accuracy, so ~3000 dimensions needed for recognition.
Next: Acquire a huge number of images • Where do you start? – even at reduced resolution, there are just too many images out there to get them all. • Start with WordNet. For each of the 75,062 concrete nouns in Wordnet, do an image retrieval search on many image search engines. They used, Google, Cydral, AltaVista, Flickr, Picsearch, and Webshots. • Then eliminate duplicates and solid-color images. • About 10% of the words were rare, and had no matching images.
Finding nearest neighbors • Need a distance metric to compare the tiny images. They examine 3: SSD(Sum of Squared Differences), Warp, and Shift.
SSD • Normal SSD is done by summing the squared difference over all dimensions. • Computing distance between all pairs this way is too expensive, so they used the top 19 Principal Components. They did some experiments to show that this works reliably.
Warp: Just warp the image in some simple way, like flipping, scaling or translating, and see if that improves the SSD. Shift: Allow each pixel to shift in a 5x5 window, and take the best SSD from that. (Crude approximation of general warping.) Warp & Shift
Effect of DB size • As the DB grows, the quality of nearest neighbors noticeably changes, even up to ~100,000,000.
Applications • Object Recognition • Image retrieval reranking • Person Detection & localization • Image Colorization
Recognition • Recognition is done by finding neighbors, and retrieving the Wordnet entry for each. • Each one corresponds to a unique leaf node in the WordNet tree, and gets a single “vote”. • Unify the branches into a tree, weighting internal nodes by how many branches pass through them. • Classify by following link to highest voted child node.