Nonlinear Revision Control for Images

Hsiang Ting Chen, Li Yi Wei, Chun Fa Chang

Research output: Contribution to journalArticlepeer-review

10 Citations (Scopus)

Abstract

Revision control is a vital component of digital project management and has been widely deployed for text files. Binary files, on the other hand, have received relatively less attention. This can be inconvenient for graphics applications that use a significant amount of binary data, such as images, videos, meshes, and animations. Existing strategies such as storing whole files for individual revisions or simple binary deltas could consume significant storage and obscure vital semantic information. We present a nonlinear revision control system for images, designed with the common digital editing and sketching workflows in mind. We use DAG (directed acyclic graph) as the core structure, with DAG nodes representing editing operations and DAG edges the corresponding spatial, temporal and semantic relationships. We visualize our DAG in RevG (revision graph), which provides not only as a meaningful display of the revision history but also an intuitive interface for common revision control operations such as review, replay, diff, addition, branching, merging, and conflict resolving. Beyond revision control, our system also facilitates artistic creation processes in common image editing and digital painting workflows. We have built a prototype system upon GIMP, an open source image editor, and demonstrate its effectiveness through formative user study and comparisons with alternative revision control systems.

Original languageEnglish
Pages (from-to)1-10
Number of pages10
JournalACM Transactions on Graphics
Volume30
Issue number4
DOIs
Publication statusPublished - 2011 Jul 1

Keywords

  • images
  • interaction
  • nonlinear editing
  • revision control

ASJC Scopus subject areas

  • Computer Graphics and Computer-Aided Design

Fingerprint

Dive into the research topics of 'Nonlinear Revision Control for Images'. Together they form a unique fingerprint.

Cite this