computer-generated watercolor curtis, anderson, seims, fleischer, & salesin siggraph 1997...

25
Computer-Generated Computer-Generated Watercolor Watercolor Curtis, Anderson, Seims, Curtis, Anderson, Seims, Fleischer, & Salesin Fleischer, & Salesin SIGGRAPH 1997 SIGGRAPH 1997 presented by Dave Edwards presented by Dave Edwards

Upload: erik-dalton

Post on 04-Jan-2016

215 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Computer-Generated Watercolor Curtis, Anderson, Seims, Fleischer, & Salesin SIGGRAPH 1997 presented by Dave Edwards

Computer-Generated Computer-Generated WatercolorWatercolor

Curtis, Anderson, Seims, Fleischer, & Curtis, Anderson, Seims, Fleischer, & SalesinSalesin

SIGGRAPH 1997SIGGRAPH 1997

presented by Dave Edwardspresented by Dave Edwards

Page 2: Computer-Generated Watercolor Curtis, Anderson, Seims, Fleischer, & Salesin SIGGRAPH 1997 presented by Dave Edwards

MotivationMotivation

Trend toward nonphotorealistic renderingTrend toward nonphotorealistic rendering– D. Small: Watercolor on a Connection MachineD. Small: Watercolor on a Connection Machine– Commercial softwareCommercial software– Q. Guo & T. Kunii: Ink diffusion through paperQ. Guo & T. Kunii: Ink diffusion through paper– Animating the fluid dynamics of waterAnimating the fluid dynamics of water– Effects of water flow on surface appearanceEffects of water flow on surface appearance

Watercolor exhibits beauty & uniquenessWatercolor exhibits beauty & uniqueness

Page 3: Computer-Generated Watercolor Curtis, Anderson, Seims, Fleischer, & Salesin SIGGRAPH 1997 presented by Dave Edwards

Simulating WatercolorSimulating Watercolor

Simulation based onSimulation based on– Physical nature of watercolorPhysical nature of watercolor– Artistic effects of watercolorArtistic effects of watercolor

Ultimate goalUltimate goal– Result of simulation should be realisticResult of simulation should be realistic

Page 4: Computer-Generated Watercolor Curtis, Anderson, Seims, Fleischer, & Salesin SIGGRAPH 1997 presented by Dave Edwards

Watercolor MaterialsWatercolor Materials

Watercolor paintWatercolor paint– Pigment particlesPigment particles– BinderBinder– SurfactantSurfactant

Watercolor paperWatercolor paper– Linen or cottonLinen or cotton– SizingSizing

Page 5: Computer-Generated Watercolor Curtis, Anderson, Seims, Fleischer, & Salesin SIGGRAPH 1997 presented by Dave Edwards

Watercolor EffectsWatercolor Effects

Dry-brushDry-brush– Paint applied to raised areas of paperPaint applied to raised areas of paper

RealReal SimulatedSimulated

Page 6: Computer-Generated Watercolor Curtis, Anderson, Seims, Fleischer, & Salesin SIGGRAPH 1997 presented by Dave Edwards

Watercolor EffectsWatercolor Effects

Edge DarkeningEdge Darkening– Pigment migrates toward edges of wet Pigment migrates toward edges of wet

surfacesurfaceRealReal SimulatedSimulated

Page 7: Computer-Generated Watercolor Curtis, Anderson, Seims, Fleischer, & Salesin SIGGRAPH 1997 presented by Dave Edwards

Watercolor EffectsWatercolor Effects

BackrunsBackruns– Spreading water moves pigment on damp Spreading water moves pigment on damp

surfacesurfaceRealReal SimulatedSimulated

Page 8: Computer-Generated Watercolor Curtis, Anderson, Seims, Fleischer, & Salesin SIGGRAPH 1997 presented by Dave Edwards

Watercolor EffectsWatercolor Effects

GranulationGranulation– More pigment settles in lower areas on More pigment settles in lower areas on

paperpaperRealReal SimulatedSimulated

Page 9: Computer-Generated Watercolor Curtis, Anderson, Seims, Fleischer, & Salesin SIGGRAPH 1997 presented by Dave Edwards

Watercolor EffectsWatercolor Effects

Flow PatternsFlow Patterns– Wet paper allows pigment to spread freelyWet paper allows pigment to spread freely

RealReal SimulatedSimulated

Page 10: Computer-Generated Watercolor Curtis, Anderson, Seims, Fleischer, & Salesin SIGGRAPH 1997 presented by Dave Edwards

Watercolor EffectsWatercolor Effects

GlazingGlazing– Thin layers of new paint added atop old dry Thin layers of new paint added atop old dry

layerslayersRealReal SimulatedSimulated

Page 11: Computer-Generated Watercolor Curtis, Anderson, Seims, Fleischer, & Salesin SIGGRAPH 1997 presented by Dave Edwards

Simulation OverviewSimulation Overview

Image represented by 2-D grid of cellsImage represented by 2-D grid of cells Each brushstroke stored in Each brushstroke stored in glazeglaze data struct data struct

– Stores pigment concentration per image cellStores pigment concentration per image cell Software creates glazes by simulatingSoftware creates glazes by simulating

– Fluid flow over paperFluid flow over paper– Pigment movement in fluidPigment movement in fluid– Fluid diffusion through paperFluid diffusion through paper

Glazes combined into single imageGlazes combined into single image– Optical combination using Kubelka-Munk modelOptical combination using Kubelka-Munk model

Page 12: Computer-Generated Watercolor Curtis, Anderson, Seims, Fleischer, & Salesin SIGGRAPH 1997 presented by Dave Edwards

Paper RepresentationPaper Representation

Paper attributes (per cell)Paper attributes (per cell)– HeightHeight– Fluid capacityFluid capacity

Paper surface texture examples:Paper surface texture examples:

Page 13: Computer-Generated Watercolor Curtis, Anderson, Seims, Fleischer, & Salesin SIGGRAPH 1997 presented by Dave Edwards

Simulation DataSimulation Data

Store each of the following per cell:Store each of the following per cell:– Wet-area masksWet-area masks– Water velocityWater velocity– Water pressureWater pressure– Paper saturationPaper saturation– Pigment concentrationPigment concentration

Free in waterFree in water Deposited on paperDeposited on paper

Page 14: Computer-Generated Watercolor Curtis, Anderson, Seims, Fleischer, & Salesin SIGGRAPH 1997 presented by Dave Edwards

Watercolor SimulationWatercolor Simulation

Three-layer modelThree-layer model

Page 15: Computer-Generated Watercolor Curtis, Anderson, Seims, Fleischer, & Salesin SIGGRAPH 1997 presented by Dave Edwards

Watercolor SimulationWatercolor Simulation

Simulate fluid & pigment movement in Simulate fluid & pigment movement in looploop– Move water on surface of paperMove water on surface of paper– Move pigment between cellsMove pigment between cells– Adsorb pigment into paper & desorb into Adsorb pigment into paper & desorb into

waterwater– Expand wet portion of paper through Expand wet portion of paper through

diffusiondiffusion– Repeat for each time stepRepeat for each time step

Page 16: Computer-Generated Watercolor Curtis, Anderson, Seims, Fleischer, & Salesin SIGGRAPH 1997 presented by Dave Edwards

Water MovementWater Movement

ConditionsConditions– Water stays within wet-area maskWater stays within wet-area mask– Water should flow away from concentrated Water should flow away from concentrated

areasareas– Flow should be damped (no sloshing)Flow should be damped (no sloshing)– Flow should be affected by paper contoursFlow should be affected by paper contours– Local changes lead to global effectsLocal changes lead to global effects– Flow toward edges (produce edge Flow toward edges (produce edge

darkening)darkening)

Page 17: Computer-Generated Watercolor Curtis, Anderson, Seims, Fleischer, & Salesin SIGGRAPH 1997 presented by Dave Edwards

Pigment MovementPigment Movement

Based onBased on– Water velocityWater velocity– Free pigment concentrationFree pigment concentration

Each cell distributes pigment to Each cell distributes pigment to neighborsneighbors

Simplified equation:Simplified equation:

– vvjiji = water velocity between cell = water velocity between cell jj and cell and cell ii

– ppii = pigment concentration at cell = pigment concentration at cell ii

),0max( jijii vppp oldoldnew

Page 18: Computer-Generated Watercolor Curtis, Anderson, Seims, Fleischer, & Salesin SIGGRAPH 1997 presented by Dave Edwards

Adsorption & DesorptionAdsorption & Desorption

Pigments deposited & picked up againPigments deposited & picked up again Rates based on global constantsRates based on global constants

– Pigment densityPigment density– Staining powerStaining power

Can also be based on paper heightCan also be based on paper height– GranulationGranulation

Page 19: Computer-Generated Watercolor Curtis, Anderson, Seims, Fleischer, & Salesin SIGGRAPH 1997 presented by Dave Edwards

Diffusion & EffectsDiffusion & Effects

BackrunsBackruns– Water absorbed and diffused through paperWater absorbed and diffused through paper– Cells transfer diffused water to neighborsCells transfer diffused water to neighbors– Water saturation stored for each cellWater saturation stored for each cell

Wet-area mask grows based on saturation Wet-area mask grows based on saturation thresholdthreshold

Dry-brushDry-brush– User can specify height maskUser can specify height mask

Page 20: Computer-Generated Watercolor Curtis, Anderson, Seims, Fleischer, & Salesin SIGGRAPH 1997 presented by Dave Edwards

Rendering a SimulationRendering a Simulation

Kubelka-Munk optical modelKubelka-Munk optical model– Glazes have absorption & scattering Glazes have absorption & scattering

coefficientscoefficients– One of each coefficient for R, G, and BOne of each coefficient for R, G, and B– Specified interactivelySpecified interactively

User sets pigment color on white & black User sets pigment color on white & black backgroundsbackgrounds

Coefficients calculated from these colorsCoefficients calculated from these colors

Page 21: Computer-Generated Watercolor Curtis, Anderson, Seims, Fleischer, & Salesin SIGGRAPH 1997 presented by Dave Edwards

Pigment ExamplesPigment Examples

SwatchesSwatches

Page 22: Computer-Generated Watercolor Curtis, Anderson, Seims, Fleischer, & Salesin SIGGRAPH 1997 presented by Dave Edwards

Compositing GlazesCompositing Glazes

Calculate glaze’s reflectance & transmittanceCalculate glaze’s reflectance & transmittance– Based on absorption & scattering coefficientsBased on absorption & scattering coefficients– Each value has an R, G, and B componentEach value has an R, G, and B component

Calculate total reflectance & transmittanceCalculate total reflectance & transmittance– Based on refl. & trans. from each glaze in cellBased on refl. & trans. from each glaze in cell– Glaze thickness is also taken into accountGlaze thickness is also taken into account

Sum of free & deposited pigment concentrationsSum of free & deposited pigment concentrations

Total reflectance values used to render cellTotal reflectance values used to render cell

Page 23: Computer-Generated Watercolor Curtis, Anderson, Seims, Fleischer, & Salesin SIGGRAPH 1997 presented by Dave Edwards

ApplicationsApplications

““Interactive” paintingInteractive” painting– User specfies intial conditions for simulationUser specfies intial conditions for simulation

Water, wet-area mask, & pigment concentrationWater, wet-area mask, & pigment concentration Height mask for dry-brush effects is optionalHeight mask for dry-brush effects is optional

– Simulation parameters can be changedSimulation parameters can be changed Can’t run simulation in real-timeCan’t run simulation in real-time Can calculate K-M model in real-timeCan calculate K-M model in real-time

Page 24: Computer-Generated Watercolor Curtis, Anderson, Seims, Fleischer, & Salesin SIGGRAPH 1997 presented by Dave Edwards

ApplicationsApplications

Automatic watercolorizationAutomatic watercolorization– Based on digital reference imageBased on digital reference image– User specifies pigments & object mattesUser specifies pigments & object mattes– Color SeparationColor Separation

Software calculates ideal final pigment concentrationSoftware calculates ideal final pigment concentration

– Brushstroke planningBrushstroke planning Software adds water or pigment during simulationSoftware adds water or pigment during simulation

– Approximates original image with watercolor Approximates original image with watercolor stylestyle

– Also works for synthetic imagesAlso works for synthetic images

Page 25: Computer-Generated Watercolor Curtis, Anderson, Seims, Fleischer, & Salesin SIGGRAPH 1997 presented by Dave Edwards

Future WorkFuture Work

Additional watercolor effectsAdditional watercolor effects Completely automatic watercolorizationCompletely automatic watercolorization Generalization of physical effectsGeneralization of physical effects Animation coherenceAnimation coherence