Transcript watercolor
Computer-Generated Watercolor
Curtis, Anderson, Seims, Fleischer, & Salesin
SIGGRAPH 1997
presented by Dave Edwards
Motivation
Trend toward nonphotorealistic rendering
–
–
–
–
–
D. Small: Watercolor on a Connection Machine
Commercial software
Q. Guo & T. Kunii: Ink diffusion through paper
Animating the fluid dynamics of water
Effects of water flow on surface appearance
Watercolor exhibits beauty & uniqueness
Simulating Watercolor
Simulation based on
– Physical nature of watercolor
– Artistic effects of watercolor
Ultimate goal
– Result of simulation should be realistic
Watercolor Materials
Watercolor paint
– Pigment particles
– Binder
– Surfactant
Watercolor paper
– Linen or cotton
– Sizing
Watercolor Effects
Dry-brush
– Paint applied to raised areas of paper
Real
Simulated
Watercolor Effects
Edge Darkening
– Pigment migrates toward edges of wet surface
Real
Simulated
Watercolor Effects
Backruns
– Spreading water moves pigment on damp surface
Real
Simulated
Watercolor Effects
Granulation
– More pigment settles in lower areas on paper
Real
Simulated
Watercolor Effects
Flow Patterns
– Wet paper allows pigment to spread freely
Real
Simulated
Watercolor Effects
Glazing
– Thin layers of new paint added atop old dry layers
Real
Simulated
Simulation Overview
Image represented by 2-D grid of cells
Each brushstroke stored in glaze data struct
– Stores pigment concentration per image cell
Software creates glazes by simulating
– Fluid flow over paper
– Pigment movement in fluid
– Fluid diffusion through paper
Glazes combined into single image
– Optical combination using Kubelka-Munk model
Paper Representation
Paper attributes (per cell)
– Height
– Fluid capacity
Paper surface texture examples:
Simulation Data
Store each of the following per cell:
–
–
–
–
–
Wet-area masks
Water velocity
Water pressure
Paper saturation
Pigment concentration
Free in water
Deposited on paper
Watercolor Simulation
Three-layer model
Watercolor Simulation
Simulate fluid & pigment movement in loop
–
–
–
–
–
Move water on surface of paper
Move pigment between cells
Adsorb pigment into paper & desorb into water
Expand wet portion of paper through diffusion
Repeat for each time step
Water Movement
Conditions
–
–
–
–
–
–
Water stays within wet-area mask
Water should flow away from concentrated areas
Flow should be damped (no sloshing)
Flow should be affected by paper contours
Local changes lead to global effects
Flow toward edges (produce edge darkening)
Pigment Movement
Based on
– Water velocity
– Free pigment concentration
Each cell distributes pigment to neighbors
Simplified equation:
pin ew pio ld max( 0, pjo ldvji)
– vji = water velocity between cell j and cell i
– pi = pigment concentration at cell i
Adsorption & Desorption
Pigments deposited & picked up again
Rates based on global constants
– Pigment density
– Staining power
Can also be based on paper height
– Granulation
Diffusion & Effects
Backruns
– Water absorbed and diffused through paper
– Cells transfer diffused water to neighbors
– Water saturation stored for each cell
Wet-area mask grows based on saturation threshold
Dry-brush
– User can specify height mask
Rendering a Simulation
Kubelka-Munk optical model
– Glazes have absorption & scattering coefficients
– One of each coefficient for R, G, and B
– Specified interactively
User sets pigment color on white & black backgrounds
Coefficients calculated from these colors
Pigment Examples
Swatches
Compositing Glazes
Calculate glaze’s reflectance & transmittance
– Based on absorption & scattering coefficients
– Each value has an R, G, and B component
Calculate total reflectance & transmittance
– Based on refl. & trans. from each glaze in cell
– Glaze thickness is also taken into account
Sum of free & deposited pigment concentrations
Total reflectance values used to render cell
Applications
“Interactive” painting
– User specfies intial conditions for simulation
Water, wet-area mask, & pigment concentration
Height mask for dry-brush effects is optional
– Simulation parameters can be changed
Can’t run simulation in real-time
Can calculate K-M model in real-time
Applications
Automatic watercolorization
– Based on digital reference image
– User specifies pigments & object mattes
– Color Separation
Software calculates ideal final pigment concentration
– Brushstroke planning
Software adds water or pigment during simulation
– Approximates original image with watercolor style
– Also works for synthetic images
Future Work
Additional watercolor effects
Completely automatic watercolorization
Generalization of physical effects
Animation coherence