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