A user wants to annotate an image by tagging parts of the image that represent the faces of his/her friends. When someone views the image the tags are drawn over the image and by hovering over the tag the image region that represents it is highlighted. It is already known which tags the user has used before, which tags have been used in the album and tags already attached to the image, so a list of suggestions for tags is available for choosing from.(The tags suggestion system can also hook into external systems to get relevant suggestions)
Someone who doesn't have permission to annotate images recognises someone in a photograph and wants to suggest that an annotation is created. Just like creating an actual annotation the user creates a 'suggestion' for an image regon and tag annotation. A user with sufficient priviledges will be able to view all pending suggestions (possibly even notified via e-mail) and accept or reject the suggestion. In the meantime, the user that created the suggestion can modify their suggestion, until the point the suggestion is accepted (how does this work with anonymous users?).
If the suggestion is rejected the user who created it is somehow notified, maybe when they go to view their suggestions or maybe by e-mail.
Someone who doesn't have priviledge notices that an image tag is incorrect. They suggest an ammendment, which can be accepted or rejected by a user with sufficient priviledge.
A user has some friends defined within an online social networking program and wants to tag their faces within G2 pictures, then have the social networking program (and their friends) informed about this.
A user wants to search for when a couple of their friends are in the same image together.
A user wants to search for images of a friends face where their face takes up most of the image.
A user wants to search for pictures where none of their friends in the image are blinking.
Objective image tagging
A user wants to specify properties of an object in the image, that may later be used for search purposes.
This is an extension of the idea of applying a single tag. A tag defines an instance of a class and that class in turn has a number of attributes that could be set for an image. For instance, if a person is tagged, that person could be looking in a certain direction, smiling and winking. That person may own certain clothes and in the image they may be wearing certain of those.
Notes about an image region
A user wants to annotate an image with notes about a specific region of the image. Notes are more detailed than simple tags and give describtions as to what lies within a certain region of the image. When the image is viewed a user can see a region has been marked up and on giving the region focus (mouse or keyboard) the note relevant to that region will be displayed. The user who creates the annotation can place the annotation and decide if the text is always shown or just when focus is given to the image region.
A user wants to search for images with certain text in the image note.
Drawing on/annotating an image
A user wants to spice up an image by adding some speech bubbles containing some text. The user can choose to have the speech bubble always displayed or triggered to display on certain events (such as mouseover a certain region). The speech bubble display in itself can trigger other events that react with other annotation objects (so a sequence of speech can be displayed).
A user wants to search for images where incredibly witty new things have been drawn on the image.
An image recognition program trawls through the image database and recognises some faces and objects. The program makes suggestions on what various regions of the images are to a user with sufficient priviledge to view them. The privilidged user can verify the image recognition programs analysis and choose to notify the program that it's recognition is correct or false, the user can also choose to add annotations based on any correct recognition and notify the program what the actual image area was when recognition was false.