Generating Photo Manipulation Tutorials by Demonstration
Floraine Grabler, Maneesh Agrawala, Wilmot Li1, Mira Dontcheva2 and Takeo Igarashi3
Alfred P. Sloan Foundation fellowship and National Science Foundation CFC-0643552
We present a demonstration-based system for automatically generating succinct step-by-step visual tutorials of photo manipulations. An author first demonstrates the manipulation using an instrumented version of GIMP that records all changes in interface and application state. From the example recording, our system automatically generates tutorials that illustrate the manipulation using images, text, and annotations. It leverages automated image labeling (recognition of facial features and outdoor scene structures in our implementation) to generate more precise text descriptions of many of the steps in the tutorials. A user study comparing our automatically generated tutorials to hand-designed tutorials and screen-capture video recordings finds that users are 20–44% faster and make 60–95% fewer errors using our tutorials. While our system focuses on tutorial generation, we also present some initial work on generating content-dependent macros that use image recognition to automatically transfer selection operations from the example image used in the demonstration to new target images. While our macros are limited to transferring selection operations we demonstrate automatic transfer of several common retouching techniques including eye recoloring, whitening teeth and sunset enhancement.
Figure 1: As a user demonstrates an eye recoloring portrait manipulation technique, our system records his actions in the interface and the corresponding image processing operations in the application. It then combines information from the recordings with image recognition to automatically generate a succinct, step-by-step visual tutorial that others can use to learn the technique (left). Our system can also generate content-dependent macros that automatically transfer selection operations from the example to new target images. In this case our system uses face recognition to identify the eyes and then transfers the recoloring procedure to the new target images (right).