SlideShare una empresa de Scribd logo
1 de 11
Descargar para leer sin conexión
Technical Report Reviewing Papers on Real Media Painting as Graphics Application
Khan Mostafa
Graduate Student, Computer Science, Stony Brook University, NY 11794, USA
Email: khan.mostafa@stonybrook.edu
Student ID# 109365509

ABSTRACT
Achieving feature of real media painting like
watercolor in computer graphics application is
desired for long. Approaches to replicate such effects
involve fluid flow, pigment flow, diffusion, paper
models etc. Most approaches are raster based while
some are vector based. Some approaches are for
interactive paint applications and some are for nonphotorealistic rendering of models – both static
images and animations. Again, some approaches are
to create watercolor styled images from real photos.
This report surveys some approaches spanning
these areas, mostly focusing on watercolor paint
application, yet covering closely related works.

and re-rendering of images to embody watercolor effects
[5], [6] and two are on simulating real fluid (water-like)
media painting [7], [8].
In the following, section 2 discusses on properties of
watercolor and other real media as outlined by various
authors. Sections 3 different approaches to mimic them.

2

To mimic watercolor in computer graphics, we need to
understand physical and characteristic nature of
watercolor and artistic affects created by it. Curtis et al [2]
discussed them in detail.
2.1

1

INTRODUCTION

With the advancement of computing devices, digital paint
media has emerged with suites of tools that artists have
never experience before. Tools include palettes of
multitude of colors, ability to undo, erase, mechanism for
drawing precise geometric shapes, curves and so on.
However, these digital paint features lack a lot of effects
and desirable artistic nature of real paint mediums like
watercolor, oil paint, acrylic, pencil sketch etc. All of these
real media has their own characteristic natures derived
from physical natures of the components used in them.
Artists have long been exploited these features and they
crave for such features even in digital media. Attempts are
made from the dawn of digital paint applications to
recreate realistic painting experience and yet researches are
going on to perfect them. Earliest approaches could hardly
work in real-time. Nevertheless, computation power has
increased since the first attempts. As well as, researches
have unveiled less computationally intensive approaches
for approximating realist phenomena.
In this report I review eight papers - four focusing on
simulating water color painting in computers [1], [2], [3]
[4]; two on non-photorealistic rendering (NPR) of models

PROPERTIES OF WATERCOLOR AND OTHER REAL
MEDIA PAINTING

Watercolor materials

Water color paintings are created by applying watercolor
paints, often simply referred to as watercolors, on special
type of absorbent papers.
Watercolor papers are typically made from cotton or linen,
pounded into small fibers. This produces microscopic web
of tangled fibers, trapping air pockets. This makes such
papers extremely absorbent. This causes immediate
soaking and diffusion of water and paint pigments. To
reduce this and create more desirable artistic experience,
sizing (generally made from cellulose) is applied. Sizing
create barriers and reduce rat4e of soaking. Sizing is placed
sparingly, so there are pores too. Watercolor paper
surfaces are desirably rough.
Watercolor paints consists pigments of different color.
Pigments are grounded into grains of about 0.05 to .5
microns with variant weights. They vary in density.
Pigments are mixed with binder (glue) and surfactants
(solvents). Binder allows pigments to be absorbed by the
paper and surfactants let them flow. So, watercolor paints
have a viscoelastic nature. Elasticity vary to meet artists’
choice. Watercolors are generally mixed with water before
soaking brush into it.

Technical Report on Paper Review submitted for CSE 528: Computer Graphics on Nov 15, 2013
Khan Mostafa

Student ID# 109365509

Watercolor pigments vary in density. Heavier ones tend to
get soaked in paper while lighter ones remain suspended
in water for a longer while. Suspended pigment flow with
water and create several artistic effects. Pigments, one
adhered to paper fibers tend to stay.





Artists generally put several glazes of paints on watercolor
papers. A final appearance of watercolor painting
incorporate several effects as described in following
section.
2.2

Color blending: Several glazes, overlaid one upon
another create transparent color blending. [4]
Feathering: Free flow of pigments create feathered
look. This feature identified by DiVerdi et al is similar
to Curtis et al’s flow pattern. [4]

Lei and Chang [5] identifies edge darkening as most
important effect. They also simulate glazing, backrun,
granulation in their approach.

Watercolor Effects

Following are list of watercolor effects, commonly
observed and mentioned by several authors [2] [4] [5] [3]:

Van Laerhoven and Liesenborgs [3] identify similar effects
and recreate dark edges, overlapping strokes etc.



Dry brush effect: when almost dry brush is applied on a
paper, it stains only raised areas of paper. [2]



Edger Darkening: Pigments flow after being applied to
paper. In wet on dry situation, pigment cannot
propagate into dry regions of paper. When pigment
flow within wet areas of applied region edge between
wet and dry portions of paper accumulate more
pigments and seem darker in color. [2] [4]

MoXi, which is a simulation of Chinese ink consider
similar effects as of watercolor. Chinese ink, is different
from watercolor. However, they display many common
effects of watercolor. Chu and Tai [7] discussed on
feathery pattern, light fringes (like glazing), branching
patterns, boundary roughening, and boundary darkening
(like edge darkening) as major features.



Backruns: When some water is applied on already
stained but damp area, pigments accumulate motion
from applied watercolor and thus flow. This create
darkened edges with lightened stains – a specific
effect called backrun. [2] [4]



Granulation: Pigments have different size and weight.
Heavier pigments settle much earlier than lighter
ones. Roughness of paper cause uneven settling of
pigments in peaks and valleys of the surface. [2] [4]



Figure 2-1, Figure 2-2 and Figure 2-3 show these effects
as described by [4] [2] [7].

Flow pattern: In wet on wet painting, wet paper let
pigment flow freely and create a soft feathery shapes.
[2]





Figure 2-1: Features identified by DiVerdi et al: edge darkening
(A),nonuniform pigment density (B), granulation (C), rewetting (D), back
runs (E), color blending (F), feathering (G), and glazing (H).

Glazing: Artists put several glazes of water color. Once
some color is settled and dried, artists put another
layer of brush strokes. This strokes do not perturb
already dried stains. So, transparent layers of washes
or glazes become visible. This overlaid glazes display
dynamic, luminous, bright colors. [2]

Figure 2-2: Features shown in Curtis et al Real watercolor effects: drybrush
(a), edge darkening (b), backruns (c), granulation (d), flow effects (e), and
glazing (f).

Rewetting: Sometimes, when strokes are not still damp,
application of strokes over it rewets some part of
already stained area. This creates some features. [4]
2
Technical Report Reviewing Papers on Real Media Painting as Graphics Application

pigment and paper fibers. He has taken a purely physics
based approach to recreate watercolor effects. This
approach uses cellular automata to simulate fluid
transportation.
Figure 2-3: Features in MoXi: Real ink effects. (a) Feathery pattern. (b)
Light fringes. (c) Branching pattern. (d) Boundary roughening. (e) Boundary
darkening.

3

APPROACHES TO RECREATE
PAINTING IN COMPUTERS

REAL

Small have used a The Connection machine, a super
computer to simulate watercolor. Each pixel is considered
a cell and each cell is simulated by a processor dedicated
for its own. Each cell must be able to simulate by using its
own information and information about its immediate
neighbors. This method is broken into three parts: (a)
setup, (b) fluid simulation and (c) rendering.

MEDIA

Digital paint systems lack many features of real media like
watercolor. Many effects of watercolor are much
appreciated by both artists and viewers and simulating
such effects in computer paint systems are very desirable.

At initial setup, each cell knows it’s on location, initial
color, absorbency, water content and pigment content.
Locations are pixel location. Each cell has its own
absorbency value for simulating paper’s absorbing
behavior. Some, global information, such as humidity,
gravity, surface tension of water, weight of pigment are
also known to each cell. Artist give paint input for the
picture to be drawn using some input method.

There have been ample undertakings to recreate
watercolor like effects in images. Some tried to convert
real photo images to give watercolor like effects [6]. Yet
some approaches are to render 2-D and 3-D models nonphotorealistically to give essences of watercolor [6] [5].

After initial setup, simulation run on each cells in parallel
to compute surface effects, substrate effects and paper
absorption for each time steps.

Early approaches to simulate watercolor painting took
physics inspired approach [1]. Simulating all physics based
effects are very computation heavy and cannot recreate all
desirable effects. Rather some empirical approaches are
studied, to recreate effects without necessarily computing
all physical characteristics [2] [3] [4] [8] [7]. Most of these
approaches are paper based models, simulating fluid
propagation and pigment propagation, diffusion etc. Until
recent, approaches are taken to simulate water color using
cellular automaton [1] [2] [3] computes per pixel. More
recent approaches take vector based approaches [4] by
computing stamps and splats rather than per pixel,
allowing rendering in high resolution. Model based
approaches often incorporate cellular automaton too.

Color that are not soaked in yet undergo surface effects. A
displacement force, D, combining all forces (gravity,
surface tension, spreading force) is calculated based on
following equation:

This displacement force is used to calculate displacement
of water and pigment. Displacement for both water and
pigment is calculated from water only as Small posits that,
pigments flow equally with water. This assumption
however cannot reflect varying pigment density and
cannot recreate granulation. Following equations are used,

For fluid simulating several approaches are studied
including: Kubelka-Munk model [2], Navier-Stokes
equation [3] and Lattice Boltzmann Equation [7]. Even
biased random walk [4] is also used.
In following, approaches to simulate watercolor, other
print media, render watercolor from models and images,
simulated watercolor rendering and interaction
approaches taken by several authors are discussed.
3.1

To give substrate effect, water and pigment infused in
paper are displaced. A gradient field, as denoted in
following equation is calculated,

Simulating watercolor painting

One of the earliest approach to model water color was by
David Small in 1991 [1]. His groundbreaking work
attempted to model watercolor by simulating diffusion,

Then following equations with global gravity, g, and cell
local absorbance, a, are used,
3
Khan Mostafa

Student ID# 109365509


At each time step some water and pigment is absorbed in
paper, as depicted by following formula,

Following quantities are involved,



Pigment absorbed in same proportion of that of water.




In the end, at third phase, simulated image is rendered
using following equations,



At first stage, paper is generated from some Gaussian
pseudo random process by selecting height h for each
cell such that 0 < h < 1.
In shallow water layer, it is posited that, following
conditions shall be satisfied,
 The flow must be constrained so that water remains
within the wet-area mask.
 A surplus of water in one area should cause flow
outward from that area into nearby regions.
 The flow must be damped to minimize oscillating
waves.
 The flow must be perturbed by the texture of the
paper to cause streaks parallel to flow direction.
 Local changes should have global effects. For
example, adding water in a local area should affect
the entire simulation.
 There should be outward flow of the fluid toward
the edges to produce the edge-darkening effect.

Figure 3-1: The three-layer fluid model for a watercolor wash of Curtis et al

Curtis et al use a discretized approach proposed by Foster
[9] to update water velocities. However, to limit this within
wet boundary, they set the velocity at the boundary of any
pixel not in the wet-area mask to zero.

Inspired by Small’s cellular automata, in 1997, Curtis et al
[2] composed an empirical fluid simulation based paper
model for Computer-Generated Watercolor. Their
model is empirically based and uses Kubelka-Munk model.
They simulate different washes one by one, allowing artists
to create the effect of glazing. This near-real time approach
model paper in three layers (see Figure 3-1):



The wet-area mask M, which is 1 if the paper is wet,
and 0 otherwise.
The velocity u, v of the water in the x and y
directions. The pressure p of the water.
The concentration gk of each pigment k in the water.
The slope ∇h of the rough paper surface, defined as
the gradient of the paper’s height h.
The physical properties of the watercolor medium,
including its viscosity _ and viscous drag _. (In all of our
examples, we set μ_ = 0.1 and κ= 0. 01.)

Pigments are transferred between shallow water layer and
pigment deposition layer by absorption and desorption.
Function of capillary layer is governed with water
saturation, s, and fluid holding capacity f.

This early work was a very important work and could
replicate watercolor effects in semi real time. Although
using supercomputer of those days, which certainly has
much lower computation power than modern PCs, its
performance is sophisticated. Despite being unable to
simulate glazing, layers, granulation, edge darkening, and
with uniform pigment and paper density, this work has
inspired a lot of following research endeavors who have
later created more realistic watercolor simulations.



The capillary layer—where water that is absorbed into
the paper is diffused by capillary action.

They also relax the divergence of velocity field after each
time step until some threshold.
To simulate edge darkening by moving pigments outwards
to edges, they remove some water at each time step
according to distance from edge. Cells near edge lose water
more than them in centers.

The shallow-water layer —where water and pigment
flow above the surface of the paper.
The pigment-deposition layer — where pigment is
deposited onto (“adsorbed by”) and lifted
(“desorbed”) from the paper.

Pigments are moved differently, as opposed to Small, than
water using some velocity fields.

4
Technical Report Reviewing Papers on Real Media Painting as Graphics Application

Scalar density, staining power for each cell affects pigment
adsorption and desorption. At each time step, Curtis et al,
compute this. They also take account, a granulation
parameter, to determine how much of height effects
adsorption.

a method for creating procedural textures by S. Worley
[10].

Capillary layer allow water flow in it. When water is
applied, it goes to surrounding cells as effect of capillarity
of watercolor papers. This, computation allows simulation
of backruns.
While rendering image, they used KM model to perform
optical composition of glazing layers. Each pigment is
assigned a set of absorption coefficients and scattering
coefficients. These are functions of wavelengths and
control opacity and transparency of colors. Different type
of pigments have different types of value for this
coefficients. Opaque paints have high scattering while
transparent ones have low scattering. Inference paints
have high scattering in similar wavelength and low on
others. They have seen KM works well as some
assumptions satisfy real watercolor behaviors. They listed,
(a) all colorant layers are immersed in mediums of the same refractive
index (b) The pigment particles are oriented randomly (c) The
illumination is diffuse (d) The KM equations apply only to one
wavelength at a time (e) no chemical reactions.

Figure 3-2: Schematic view of three layer paper model,. from Van Laerhoven
et al. Same model as of Curtis et al.

To make simulation real time, they distributed paper in
several remote processes as depicted in following Figure
3-3.
They have sued LAM/MPI for message passing between
remote processes. They have not only distributed
simulation but also rendering. For distributing brush
action, they have distributed brush attributes in segments.

Approach described by Curtis et al sufficiently simulates
watercolor effects. This work has long lasted as milestone
for such applications. However, this method is raster
based and cannot simulate in higher resolution in real time.
Following the work of Curtis et al, a lot of other efforts
are made to improve its performance. One of them is by
Van Laerhoven and Liesenborgs [3] in 2004 where they
tried to somewhat enhance the work by Curtis for real
time watercolor painting on distributed paper model.
In this approach, they still considered a paper base,
empirically inspired, fluid propagation model along with
pigment advection. They also incorporated distribution of
paper in several remote process to boost computational
power.

Figure 3-3 Van Laerhoven, distributed paper model: A paper canvas
divided in sub grids or sub papers. Each sub grid has an extra border of
cells, overlapping neighboring sub grids.

They described, applying a brush to the paper canvas produces a
stroke that consists of a set of interpolated positions. At each of these
positions water, pigment and velocity values are assigned to a
collection of cells that belong to the brush pattern. These patterns now
have to be applied at a remote sub paper. All position data from the
stroke is sent to the remote sub papers to which that particular paper
position belongs. The sub papers use a copy of the original brush to
apply the pattern themselves. A position belongs to just one sub paper,
but when the brush pattern is applied, the cells of several sub papers
could be affected. In this situation, the position under consideration is
sent to each sub paper that will be affected by the application of the
brush pattern.

Following Curtis et al, they used same three paper layers:
shallow layer, pigment layer and capillary layer.
For shallow layer they solve Navier-Stoke equation, rather
than the approach from Foster. This perform better as it
is faster. This approach can also deal with thick paint, as
Foster’s approach worked poorly on high viscosity paints.
For pigment deposition they mostly followed Curtis et al.
In capillary layer to govern water movement, to create
some irregularity in the capillary diffusion process and in
the paper surface they generated surface texture of the
paper canvas and the water capacities of each cell are using

This approach used some changes of Curtis’s work. But it
cannot still become vastly scalable.
5
Khan Mostafa

Student ID# 109365509

In a more recent work, DiVerdi et al [4] (2012-2013)
)proposed a vector based model. They have also deviated
from using physics based simulation further by using
rather more empirical approach which is inspired by actual
water color characteristics. They proposed Painting with
Polygons for a Procedural Watercolor Engine. A major
drawback of earlier works were that, they were
computationally very heavy. This came from two reasons
– (1) raster based simulation of whole canvas (2) attempts
to exactly replicate watercolor. DiVerdi et al took several
intuitions,



force fields and local force fields. Forces acting on a splat
is shown in Figure 3-4.

Figure 3-4: Splat as in DiVerdi et al. (left) forces acting on a splat, (center)
advected splat (right) after sampling management

Watercolor strokes effects generally sparse
Specific path taken by pigment can be much
realistically replicated by random walk which creates
similar result as achieved by more complex method

Over time, different advection directions may create
unrealistically straight hard edges due to local
undersampling. This artifact is dealt by the third operation,
by resampling the splat. Two approaches can be taken,

The algorithm adopts a sparse representation to model
watercolor strokes and uses random walk to update
position in each time step. Paint pigments are represented
as “splat” particles – each being a complex polygon of n
vertices. The algorithm has four major operations:- Paint
Initialization, Pigment Advection, Sampling Management,
Lifetime Management.





At first, stroke input is recorded by placing stamps in
uniform length increment along the stroke path. Stamps
are set of splats which store age, flow and several other
attributes. At each stamp, water are also placed on canvas
and stored separately as rasterized 2D grid of cells called
water-map.

Constrained vertex motion

Vertex cannot move too far from its
neighbor vertices of same splat
Periodic resampling of splat boundary

Compute total perimeter

Arc length per vertex is computed

Vertices moved to maintain uniform arc
length

Boundary resampling is shown in Figure 3-4.
Fourth operations is lifetime management. Here, a splat
has three stages of life: flowing, fixed and dried. Initially a
splat is flowing; after certain steps (age) they are fixed –
but can potentially be rewetted to resume advection. After
a certain period the splat is dried and then rasterized into
dry pigment buffer and removed from the simulation.
Rewetting helps to achieve effects like back runs and
feathered edges. Lifetime management also mimics water
flow, granulation and other watercolor affects.

Secondly, splats are advected at each time step embodying
biased random walk behavior. Vertex’s own velocity,
splat’s bias velocity, water velocity, paint viscosity,
roughness of canvas media and gravity are modeled at this
point. These helps to achieve branching and roughening
aspects of watercolor.
Following equations used,

The paper represents a way to implement brush types to
reproduce a variety of watercolor characteristics. It
demonstrates five brush types.
To summarize, all four operations of the algorithm and
brush types achieves common watercolor effects, such as,
color blending, feathering, edge darkening, non-uniform
pigment density, granulation, back runs, rewetting, glazing
etc.

Here, d is displacement calculated. A tuning parameter α
is used with a value =0.33. This tunes the effect of global

6
Technical Report Reviewing Papers on Real Media Painting as Graphics Application

Brush types can be achieved by varying several parameters
as described below.

The authors have also implemented a commercial
application which performs well in real time in low end
devices. This method can also recreate most water color
effects without requiring very high computation.

Different arrangement of splat per stamp
Different brush parameter settings






For rendering purposes, they suggested using OpenGL
facilities. They suggested using two pass stencil buffer per
splat. For anti-aliasing, they suggested using post
processing after full rendering to reduce computation cost.

Target width, w
Initial wet at wet map (=255)
Splat life (l= initial a)
Roughness, r
Flow, f

This approach, also have some limitations. Splats are used
for live strokes. This vector representation might use up a
lot of memory and computation time, when drawing start
to use a lot of live strokes. Although, to limit this, they
have rasterized dried splats to avoid re-computing stable
splats each time step.

Examples,
Simple
• Single splat, d=w, b = <0,0>
Wet on dry
• 7 splats, central splat bias = <0,0>, d=w/2
•

𝑑

3.2

𝑑

2

2

Perimeter splat bias = ‹ cos 𝜃, sin 𝜃›

Wet on wet
• Small splat (d=w/2) inside large splat (3w/2)
• r=5, l=15, b=<0,0>

Watercolor effects in model rendering and
real photos

In previous section, several watercolor painting
simulations are discussed. However, watercolor effects are
desirable in many other situations. Even, earliest
approaches to recreate watercolor in computers adopted
applying filters on real photos. Later, demand for nonphotorealistic rendering in many applications has also
created demand for watercolor effects in 3-D and 2-D
modeled still images and even in animations.

Blobby
• Randomly sized 4 splats, l=15, b=<0,0>
Crunchy
• 1 splat, r=5, f=25, l=15
Figure 3-5 shows these brush types.

One such work is done by Bousseau et al [6] in 2006
suggesting an approach for Interactive watercolor
rendering with temporal coherence and abstraction.
This work is largely inspired by cellular automaton of
Small’s approach and used fluid simulation technique that
are comparable to that used by Curtis et al.
For a single image, the use a pipeline as depicted in Figure
3-7.
Bousseau et al describes method for (1) Static image
rendering and (2) rendering animations.
To render a static image with watercolor effects, they
described two major steps (a) Watercolor Effects and (b)
Abstraction.
The input in the pipeline is an image rendered from a
model or a real photo. They apply watercolor effects on
this input. They posit, main watercolor feature is color
variations. To do so, they modify the color of objects.

Figure 3-5: Brush types exemplified in DiVerdi et al (left to right: simple,
wet on dry, wet on wet, blobby, crunchy).

7
Khan Mostafa

Student ID# 109365509

density modifications. The three effects are applied in
sequence using per pixel using a pixel shader and each can
be controlled. The paper layer is applied on the whole
image but the other layers are applied only on the object
projection. They allowed user to choose freely any kind of
gray-level textures for each layer though mentioned that
Perlin noise textures for the turbulent flow, a sum of
Gaussian noises at various scales for pigment dispersion
and scanned papers for the paper layer works well.
They have also some techniques to apply for achieving
Edge darkening, wobbling and dry brush feature.
However, they mentioned that, dry brush is not very useful
in practical cases.
They main “magic” of their method is achieved from
abstraction. They used Toon shading [11] for models to
get discrete colorizations. In 3-D illumination model, they
suggested to apply normal smoothing before computing
illumination. These abstraction will reduce a great deal or
details, which is not seen in real watercolor images. Thus,
abstraction will help to get more watercolor like rendering.
For real photos, to do abstraction, they apply
morphological smoothing by using a sequence of opening
and closing fitters. This will create blob area of certain
“brush size”.

Figure 3-6: Static pipeline in Bousseau et al: This pipeline takes as input
either a 3d model or a photograph, the input is then processed in order to
obtain an abstracted image and finally watercolor effects are applied to
produce a watercolor-like image.

User can chose a base color density for a model object.
This color is said to have a density d. At first model object
has uniform density color, C. Then, color is modified
continuously. This can be done using full simulation of
cellular automaton. But they showed that same
phenomenological features can be achieved by simply
varying color density, d, over the model surface. They
relatively increase or decrease d over uniform color C to
replace them with C’ as computed using equation,

For animation, temporal coherence in necessary. To
achieve such, they mention two methods. In one
approach, they decompose possible movements along z
axis and attach multiple pigment texture in object space.
Another approach for real time rendering of watercolor
effects for virtual environment is done by Lei &Chang
[5] in 2004. A diagram for this model is shown below.

𝐶’ = 𝐶(1 − (1 − 𝐶)(𝑑 − 1)
Color density variation is shown in Figure 3-7

Figure 3-7: From Bousseau et al: Darkening and lightering of Color using
density
Figure 3-8: System diagram for Lei & Chang

Pigment density variation is achieved applying three layers
to simulate different types of pigment density flows:
turbulent flow, pigment dispersion and paper variations.
Instead of physical simulations, each layer is a gray-level
image whose intensity gives the pigment density as
follows: An image intensity of T = [0:1] yields a density d
= 1+b (T – 0.5), which is used to modify the original color
using formula shown above. b is a global scaling factor
used to scale the image texture values and allow arbitrary

This approach has two major components, color band
specifying and watercolor shader. Color band specifying is
done in a similar fashion that of Curtis et al using KM
model for optical mixing of pigments. They described user
interaction for choosing pigments from a provided
pigment library.

8
Technical Report Reviewing Papers on Real Media Painting as Graphics Application

The other major part: watercolor shader has vertex shader
and fragment shader. For vertex shader, a shader similar
to Toon Shader [11] is used. This is run twice, one for
RGB and once for alpha layer with granulation
information. Color map and granulation map generated
here is then fed to fragment shader. Fragment shader
processes this maps to create a watercolor styled image.
Paper texture is also simulated by using a provided paper
texture or generated texture. Wobbling effect is gained by
distorting color map with paper texture. Then they apply
Sobel filter on color map. This creates the final image.
3.3

receptivity parameter and mask. From this, first it is
checked if the lattice is saturated (i.e. holds water equal to
a certain threshold). If it not saturated then, an amount of
water and ink is deposited.
For water percolation, permeability and viscosity is
accounted. For each lattice site, a blocking factor κ is
associated. Value of κ can simulate various media effects.
For ink media, they used half way bounce back scheme
and used an averaged κ when calculated flow between two
nearby lattices points. This average is the mean of κ for
both lattice points. This guarantees conserving

Simulating other fluid media painting

momentum and density. For each lattice site κ is calculated
from grain texture and alum texture using a provided
formula. Grain texture is created from scanned real paper
and alum texture is generated using some random
distribution function. Another consideration is glue factor.
Inks can be more or less elastic, chosen by artist. However,
the relaxation parameter do not work well with glue = 1.
Because it will not allow flow of stream. To solve this

Several other real media display similar features of
watercolor. One is Chinese ink, as noted in section 2.2. In
2005 Chu & Tai [7] attempted to simulate Real-Time Ink
Dispersion in Absorbent Paper and brought up an
approach named MoXi. This is a paper based fluid flow
model, which used Lattice Boltzmann equation (LBE) to
simulation percolation of water in disordered media.

problem, authors modulated κ with glue.

Conceptually this work is based on a modification of
Curtis’s work. But for fluid simulation they neither used
Curtis’s approach, nor used then common N-S equation.
They found LBE to be more appealing as it doesn’t use
Poisson equations and all operations are simple and local
and it easily incorporate microscopic physics. However,
they had to modify LBE in several stages. They used
D2Qp lattice model. In each time step, for each lattice
space, streaming flow to net lattice site and colliding flow
arriving from neighbors are considered. They also
incorporated a relaxation parameter, similar to some other
approaches. This relaxation parameter tunes the elasticity
if ink (or paint media/color).

The LBE model was originally designed for situations
where the simulated fluid fills the whole domain, but in
MoXi, a spars space is filled with air. Air is regarded to be
zero valued. This causes non-zero density in some cases
and let LBE not work properly. To avoid the unphysical
situation of negative density from happening altogether,
we modify the basic LBE to reduce the strength of the
advection when the density is low. The rationale is that the
advection of water drops in less saturated areas.
Another consideration was boundary pinning. Boundary
pinning is an effect where ink do not flow from wet
regions to dry regions. Only in few place de-pinning
happens where water pressure is enough to overcome
pinning. This effect is simulated with a simple approach.
A site is considered to be pinning if it is fry and water
density at each of its eight neighbors is below a certain
threshold.

For ink dispersion simulation, they avoided using strict
physics simulation and attempted to design a unified
model capturing essences of physical models, yet keeping
it computationally feasible. To do this, they proposed a
three layer paper model – with surface layer, flow layer and
fixed layer. Note that, these layers are different from
original Curtis et al and other extended approaches.

Pigment advection is done using similar approach as other
methods.
Pigments are gradually transferred from low layer to fixed
layer as ink dries. They used an algorithm that follow
conditions: (1) the transfer rate is higher when the strokes
become drier, (2) the transfer rate is higher when the glue
is more concentrated, and (3) all pigments are settled when
a stroke dries.

Ink and water is deposited on surface layer using brushes.
Fluid simulation is not done in this layer. Only, pigments
are deposited from surface layer to flow layer. Until, all
pigment is absorbed in the paper, surface layer act as a
reservoir for pigments and water. Ink is allowed to deposit
under certain conditions. Each lattice site has capacity.
And in flow layer, each lattice has current water density,

They investigated high quality rendering of images created
using MoXi simulation. Although, image is simulated in
lox screen resolution, they suggested that high quality
approximation is done using image methods. This will
9
Khan Mostafa

Student ID# 109365509

create boxed boundaries in certain parts of the image. Such
artifact is reduced using boundary trimming.

Next work [2]studied, by Curtis et al, simulates watercolor
impressively by modeling underlying real water and
pigment flow in a paper model. This approach is physics
inspired empirical approach with cellular automata based
fluid simulation and KM model based optical
computation. However, this method cannot work in full
real time and an interactive user paint application could
not be built right away. Hence, several approaches were
made to make some faster extension of this work. The
method presented by Van Laerhoven and Liesenborgs [3]
somewhat runs in real time by distributing computation
load on several remote processes. They also used faster NK equation for flow simulation. However, this work is not
sophisticated enough to build commercial applications.

In another recent approach You et al studied Realistic
paint simulation based on fluidity, diffusion, and
absorption which also focuses on fluid based real media
paints including watercolor and oil paints. They tried to
simulate real paint process using basic fluid simulation.
They also included the concept of viscoelasticity.

DiVerdi et al [4] exploited several intuitive feature of
watercolor to reduce computation load to a minimal so
that a real time interactive simulation can be run even on
portable computing devices. They also have released a
commercial application which received positive user
feedback. They have avoided physics based simulation and
empirically mimicked watercolor features by using biased
random walk model and yet achieved believably realistic
watercolor effects.

Figure 3-9: Graphical illustration of You et al’s system. The degree of
solidity of the green circles indicates the degree of concentration

They have simulated fluid transfer. Here, a particular
quantity of paint is carried and this is calculated using self
and neighbor information.
The pigments in the paint are diffused in the solvent by
mass transfer. Unlike momentum transfer, which is driven
by velocities, mass transfer is mainly driven by
concentration differences. Therefore, paint diffusion can
occur even in a stationary fluid. The transport of one
constituent in a region of higher concentration to one of
lower concentration minimizes the concentration
difference within a system. When paint solvent and paper
touch each other paint solvents get absorbed in paper, this
causes permanent staining.

It can be noted that, Curtis et al have achieved a high level
of approximation to real watercolor. Later investigations
concentrated more on reducing computation load and
applying computer generated watercolor in different
applications.
MoXi [7] simulates Chinese ink, which display similar
effects of water color. MoXi has a real time
implementation which simulates a lot of Chinese ink
features. This work has laid some inspiration for DiVerdi
et al’s work as well. Another recent work by You et al [8]
simulates a wider range of paint media by replicating
fluidity and other paint features. This work is mostly
physics based and computation heavy. Yet, it cannot
recreate all desirable real media features. To be exact, a
single model cannot successfully simulate all features for
various media. Again, empirical model shall better be used
to reduce computational complexity.

This approach is claimed to re-create several real media
like acrylic paints, watercolor etc. by varying parameters.

4

CONCLUSION

Several works about real media paint simulation is
surveyed in this report. The earliest work studied is a
significant one as Samll [1] tried to simulate underlying
physics of watercolor. His approach used a
supercomputer, which perhaps can be programmed in a
normal PC. However, for paucity of resources, hos
approach could only simulate partial natures of watercolor
like fluid flow. It is though a near real time (2-10 times
slower than real time). This strictly physics based model
could not capture gazes, granulation, edge darkening etc.
major watercolor effects.

Works to render 3-D, 2-D models as watercolor styled
images show satisfactory result. Creating watercolor styled
images from models has certain advantages. Again they
come with some challenges, especially while rendering for
animations. A major artifact in watercolor like rendering
in animation is “shower door”. Bousseau et al [6] have
successfully outlined methods to face these challenges.
10
Technical Report Reviewing Papers on Real Media Painting as Graphics Application

Their pipeline for creating watercolor image from real
photo also demonstrates believable outcomes. Lei &
Chang [5] described an automated approach for image
rendering from model – which also perform satisfactorily.

[7] N. S.-H. Chu and C.-L. Tai, "MoXi: Real-Time Ink
Dispersion in Absorbent Paper," ACM Transactions
on Graphics (TOG), vol. 24, no. 3, pp. 504-511, 2005.
[8] M. You, T. Jang, S. Cha, J. Kim and J. Noh,
"Realistic paint simulation based on fluidity,
diffusion, and absorption," Computer Animation and
Virtual Worlds, vol. 24, no. 3-4, pp. 297-306, 2013.

A long history of many approaches from various
researchers have brought into a phase where now real-time
paint application for watercolor is possible and watercolor
like animations can be made. This works are not yet
perfect. Mostly empirical approaches can approximate real
media paint behaviors but cannot exactly recreate them.
Interaction between user and computer (HCI) for better
painting experience is also necessary. Hence, there would
be more opportunities to investigate and improve these
approaches. Even some novel, groundbreaking work
might emerge to enhance experience and quality.

5

[9] D. N. M. Nick Foster, "Realistic Animation of
Liquids," 1996.
[10] S. Worley, "A cellular texture basis function," in
SIGGRAPH, 1996.
[11] A. Lake, C. Marshall, M. Harris and M. Blackstein,
"Stylized rendering techniques for scalable real-time
3D animation," in Proceedings of the 1st international
symposium on Non-photorealistic animation and rendering,
2000.

BIBLIOGRAPHY

[1] D. Small, "Simulating watercolor by modeling
diffusion, pigment, and paper fibers," in Electronic
Imaging'91, San Jose, CA, 1991.
[2] C. J. Curtis, S. E. Anderson, J. E. Seims, K. W.
Fleischer and D. H. Salesin, "Computer-generated
watercolor," in Proc. ACM SIGGRAPH, 1997.
[3] T. Van Laerhoven, J. Liesenborgs and F. V. Reeth,
"Real-time watercolor painting on a distributed
paper model," in Computer Graphics International, 2004.
Proceedings, 2004.
[4] S. DiVerdi, A. Krishnaswamy, R. Mech and D. Ito,
"Painting with Polygons: A Procedural Watercolor
Engine," IEEE Transactions on Visualization and
Computer Graphics, Vols. 19, no. 5, pp. 723-735, 2013.
[5] S. I. E. Lei and C.-F. Chang, "Real-time rendering of
watercolor effects for virtual environments," in
Advances in Multimedia Information Processing-PCM,
2004.
[6] A. Bousseau, M. Kaplan, J. Thollot and F. X. Sillion,
"Interactive watercolor rendering with temporal
coherence and abstraction," in Proceedings of the 4th
international symposium on Non-photorealistic animation
and rendering, 2006.

11

Más contenido relacionado

Similar a Technical Report on Papers Reviewing Approaches to Real Media Painting

Similar a Technical Report on Papers Reviewing Approaches to Real Media Painting (10)

Drawing An Artist
Drawing An ArtistDrawing An Artist
Drawing An Artist
 
Different drawing styles
Different drawing stylesDifferent drawing styles
Different drawing styles
 
ARTS 6 Q2.pptx
ARTS 6 Q2.pptxARTS 6 Q2.pptx
ARTS 6 Q2.pptx
 
paintings
paintingspaintings
paintings
 
Computer Generated Watercolor
Computer Generated WatercolorComputer Generated Watercolor
Computer Generated Watercolor
 
Ac 5th yr scheme – dissolution print
Ac 5th yr scheme – dissolution  printAc 5th yr scheme – dissolution  print
Ac 5th yr scheme – dissolution print
 
02 Mm1 B03
02 Mm1 B0302 Mm1 B03
02 Mm1 B03
 
Watercolors
WatercolorsWatercolors
Watercolors
 
An Enhanced Image Warping Technique
An Enhanced Image Warping TechniqueAn Enhanced Image Warping Technique
An Enhanced Image Warping Technique
 
Painting 2 syllabus
Painting 2 syllabusPainting 2 syllabus
Painting 2 syllabus
 

Más de Khan Mostafa

Research in the Computing Industry
Research in the Computing IndustryResearch in the Computing Industry
Research in the Computing IndustryKhan Mostafa
 
Semantic matchmaking Local Closed-World Reasoning
Semantic matchmaking Local Closed-World ReasoningSemantic matchmaking Local Closed-World Reasoning
Semantic matchmaking Local Closed-World ReasoningKhan Mostafa
 
Seminal works on watercolor painting simulation
Seminal works on watercolor painting simulation Seminal works on watercolor painting simulation
Seminal works on watercolor painting simulation Khan Mostafa
 
Reaction Paper Discussing Articles in Fields of Outlier Detection & Sentiment...
Reaction Paper Discussing Articles in Fields of Outlier Detection & Sentiment...Reaction Paper Discussing Articles in Fields of Outlier Detection & Sentiment...
Reaction Paper Discussing Articles in Fields of Outlier Detection & Sentiment...Khan Mostafa
 
Project Presentation: Graph-based Analysis and Opinion Mining in Social Network
Project Presentation: Graph-based Analysis and Opinion Mining in Social NetworkProject Presentation: Graph-based Analysis and Opinion Mining in Social Network
Project Presentation: Graph-based Analysis and Opinion Mining in Social NetworkKhan Mostafa
 
A Survey on Sentiment Mining Techniques
A Survey on Sentiment Mining TechniquesA Survey on Sentiment Mining Techniques
A Survey on Sentiment Mining TechniquesKhan Mostafa
 
RDF by Structured Reference to Semantics, the RS2 framework
RDF by Structured Reference to Semantics, the RS2 frameworkRDF by Structured Reference to Semantics, the RS2 framework
RDF by Structured Reference to Semantics, the RS2 frameworkKhan Mostafa
 
Study Tour (KUET CSE 2k5) Poster
Study Tour (KUET CSE 2k5) PosterStudy Tour (KUET CSE 2k5) Poster
Study Tour (KUET CSE 2k5) PosterKhan Mostafa
 
Traffic Jam Detection System by Ratul, Sadh, Shams
Traffic Jam Detection System by Ratul, Sadh, ShamsTraffic Jam Detection System by Ratul, Sadh, Shams
Traffic Jam Detection System by Ratul, Sadh, ShamsKhan Mostafa
 
An Approach To Emerge Web 3.0
An Approach To Emerge Web 3.0An Approach To Emerge Web 3.0
An Approach To Emerge Web 3.0Khan Mostafa
 

Más de Khan Mostafa (11)

Research in the Computing Industry
Research in the Computing IndustryResearch in the Computing Industry
Research in the Computing Industry
 
Semantic matchmaking Local Closed-World Reasoning
Semantic matchmaking Local Closed-World ReasoningSemantic matchmaking Local Closed-World Reasoning
Semantic matchmaking Local Closed-World Reasoning
 
Seminal works on watercolor painting simulation
Seminal works on watercolor painting simulation Seminal works on watercolor painting simulation
Seminal works on watercolor painting simulation
 
Reaction Paper Discussing Articles in Fields of Outlier Detection & Sentiment...
Reaction Paper Discussing Articles in Fields of Outlier Detection & Sentiment...Reaction Paper Discussing Articles in Fields of Outlier Detection & Sentiment...
Reaction Paper Discussing Articles in Fields of Outlier Detection & Sentiment...
 
Project Presentation: Graph-based Analysis and Opinion Mining in Social Network
Project Presentation: Graph-based Analysis and Opinion Mining in Social NetworkProject Presentation: Graph-based Analysis and Opinion Mining in Social Network
Project Presentation: Graph-based Analysis and Opinion Mining in Social Network
 
A Survey on Sentiment Mining Techniques
A Survey on Sentiment Mining TechniquesA Survey on Sentiment Mining Techniques
A Survey on Sentiment Mining Techniques
 
The Career (CSE)
The Career (CSE)The Career (CSE)
The Career (CSE)
 
RDF by Structured Reference to Semantics, the RS2 framework
RDF by Structured Reference to Semantics, the RS2 frameworkRDF by Structured Reference to Semantics, the RS2 framework
RDF by Structured Reference to Semantics, the RS2 framework
 
Study Tour (KUET CSE 2k5) Poster
Study Tour (KUET CSE 2k5) PosterStudy Tour (KUET CSE 2k5) Poster
Study Tour (KUET CSE 2k5) Poster
 
Traffic Jam Detection System by Ratul, Sadh, Shams
Traffic Jam Detection System by Ratul, Sadh, ShamsTraffic Jam Detection System by Ratul, Sadh, Shams
Traffic Jam Detection System by Ratul, Sadh, Shams
 
An Approach To Emerge Web 3.0
An Approach To Emerge Web 3.0An Approach To Emerge Web 3.0
An Approach To Emerge Web 3.0
 

Último

The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)wesley chun
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonAnna Loughnan Colquhoun
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slidevu2urc
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CVKhem
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfsudhanshuwaghmare1
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...apidays
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfEnterprise Knowledge
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Igalia
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processorsdebabhi2
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?Antenna Manufacturer Coco
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?Igalia
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUK Journal
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024The Digital Insurer
 

Último (20)

The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 

Technical Report on Papers Reviewing Approaches to Real Media Painting

  • 1. Technical Report Reviewing Papers on Real Media Painting as Graphics Application Khan Mostafa Graduate Student, Computer Science, Stony Brook University, NY 11794, USA Email: khan.mostafa@stonybrook.edu Student ID# 109365509 ABSTRACT Achieving feature of real media painting like watercolor in computer graphics application is desired for long. Approaches to replicate such effects involve fluid flow, pigment flow, diffusion, paper models etc. Most approaches are raster based while some are vector based. Some approaches are for interactive paint applications and some are for nonphotorealistic rendering of models – both static images and animations. Again, some approaches are to create watercolor styled images from real photos. This report surveys some approaches spanning these areas, mostly focusing on watercolor paint application, yet covering closely related works. and re-rendering of images to embody watercolor effects [5], [6] and two are on simulating real fluid (water-like) media painting [7], [8]. In the following, section 2 discusses on properties of watercolor and other real media as outlined by various authors. Sections 3 different approaches to mimic them. 2 To mimic watercolor in computer graphics, we need to understand physical and characteristic nature of watercolor and artistic affects created by it. Curtis et al [2] discussed them in detail. 2.1 1 INTRODUCTION With the advancement of computing devices, digital paint media has emerged with suites of tools that artists have never experience before. Tools include palettes of multitude of colors, ability to undo, erase, mechanism for drawing precise geometric shapes, curves and so on. However, these digital paint features lack a lot of effects and desirable artistic nature of real paint mediums like watercolor, oil paint, acrylic, pencil sketch etc. All of these real media has their own characteristic natures derived from physical natures of the components used in them. Artists have long been exploited these features and they crave for such features even in digital media. Attempts are made from the dawn of digital paint applications to recreate realistic painting experience and yet researches are going on to perfect them. Earliest approaches could hardly work in real-time. Nevertheless, computation power has increased since the first attempts. As well as, researches have unveiled less computationally intensive approaches for approximating realist phenomena. In this report I review eight papers - four focusing on simulating water color painting in computers [1], [2], [3] [4]; two on non-photorealistic rendering (NPR) of models PROPERTIES OF WATERCOLOR AND OTHER REAL MEDIA PAINTING Watercolor materials Water color paintings are created by applying watercolor paints, often simply referred to as watercolors, on special type of absorbent papers. Watercolor papers are typically made from cotton or linen, pounded into small fibers. This produces microscopic web of tangled fibers, trapping air pockets. This makes such papers extremely absorbent. This causes immediate soaking and diffusion of water and paint pigments. To reduce this and create more desirable artistic experience, sizing (generally made from cellulose) is applied. Sizing create barriers and reduce rat4e of soaking. Sizing is placed sparingly, so there are pores too. Watercolor paper surfaces are desirably rough. Watercolor paints consists pigments of different color. Pigments are grounded into grains of about 0.05 to .5 microns with variant weights. They vary in density. Pigments are mixed with binder (glue) and surfactants (solvents). Binder allows pigments to be absorbed by the paper and surfactants let them flow. So, watercolor paints have a viscoelastic nature. Elasticity vary to meet artists’ choice. Watercolors are generally mixed with water before soaking brush into it. Technical Report on Paper Review submitted for CSE 528: Computer Graphics on Nov 15, 2013
  • 2. Khan Mostafa Student ID# 109365509 Watercolor pigments vary in density. Heavier ones tend to get soaked in paper while lighter ones remain suspended in water for a longer while. Suspended pigment flow with water and create several artistic effects. Pigments, one adhered to paper fibers tend to stay.   Artists generally put several glazes of paints on watercolor papers. A final appearance of watercolor painting incorporate several effects as described in following section. 2.2 Color blending: Several glazes, overlaid one upon another create transparent color blending. [4] Feathering: Free flow of pigments create feathered look. This feature identified by DiVerdi et al is similar to Curtis et al’s flow pattern. [4] Lei and Chang [5] identifies edge darkening as most important effect. They also simulate glazing, backrun, granulation in their approach. Watercolor Effects Following are list of watercolor effects, commonly observed and mentioned by several authors [2] [4] [5] [3]: Van Laerhoven and Liesenborgs [3] identify similar effects and recreate dark edges, overlapping strokes etc.  Dry brush effect: when almost dry brush is applied on a paper, it stains only raised areas of paper. [2]  Edger Darkening: Pigments flow after being applied to paper. In wet on dry situation, pigment cannot propagate into dry regions of paper. When pigment flow within wet areas of applied region edge between wet and dry portions of paper accumulate more pigments and seem darker in color. [2] [4] MoXi, which is a simulation of Chinese ink consider similar effects as of watercolor. Chinese ink, is different from watercolor. However, they display many common effects of watercolor. Chu and Tai [7] discussed on feathery pattern, light fringes (like glazing), branching patterns, boundary roughening, and boundary darkening (like edge darkening) as major features.  Backruns: When some water is applied on already stained but damp area, pigments accumulate motion from applied watercolor and thus flow. This create darkened edges with lightened stains – a specific effect called backrun. [2] [4]  Granulation: Pigments have different size and weight. Heavier pigments settle much earlier than lighter ones. Roughness of paper cause uneven settling of pigments in peaks and valleys of the surface. [2] [4]  Figure 2-1, Figure 2-2 and Figure 2-3 show these effects as described by [4] [2] [7]. Flow pattern: In wet on wet painting, wet paper let pigment flow freely and create a soft feathery shapes. [2]   Figure 2-1: Features identified by DiVerdi et al: edge darkening (A),nonuniform pigment density (B), granulation (C), rewetting (D), back runs (E), color blending (F), feathering (G), and glazing (H). Glazing: Artists put several glazes of water color. Once some color is settled and dried, artists put another layer of brush strokes. This strokes do not perturb already dried stains. So, transparent layers of washes or glazes become visible. This overlaid glazes display dynamic, luminous, bright colors. [2] Figure 2-2: Features shown in Curtis et al Real watercolor effects: drybrush (a), edge darkening (b), backruns (c), granulation (d), flow effects (e), and glazing (f). Rewetting: Sometimes, when strokes are not still damp, application of strokes over it rewets some part of already stained area. This creates some features. [4] 2
  • 3. Technical Report Reviewing Papers on Real Media Painting as Graphics Application pigment and paper fibers. He has taken a purely physics based approach to recreate watercolor effects. This approach uses cellular automata to simulate fluid transportation. Figure 2-3: Features in MoXi: Real ink effects. (a) Feathery pattern. (b) Light fringes. (c) Branching pattern. (d) Boundary roughening. (e) Boundary darkening. 3 APPROACHES TO RECREATE PAINTING IN COMPUTERS REAL Small have used a The Connection machine, a super computer to simulate watercolor. Each pixel is considered a cell and each cell is simulated by a processor dedicated for its own. Each cell must be able to simulate by using its own information and information about its immediate neighbors. This method is broken into three parts: (a) setup, (b) fluid simulation and (c) rendering. MEDIA Digital paint systems lack many features of real media like watercolor. Many effects of watercolor are much appreciated by both artists and viewers and simulating such effects in computer paint systems are very desirable. At initial setup, each cell knows it’s on location, initial color, absorbency, water content and pigment content. Locations are pixel location. Each cell has its own absorbency value for simulating paper’s absorbing behavior. Some, global information, such as humidity, gravity, surface tension of water, weight of pigment are also known to each cell. Artist give paint input for the picture to be drawn using some input method. There have been ample undertakings to recreate watercolor like effects in images. Some tried to convert real photo images to give watercolor like effects [6]. Yet some approaches are to render 2-D and 3-D models nonphotorealistically to give essences of watercolor [6] [5]. After initial setup, simulation run on each cells in parallel to compute surface effects, substrate effects and paper absorption for each time steps. Early approaches to simulate watercolor painting took physics inspired approach [1]. Simulating all physics based effects are very computation heavy and cannot recreate all desirable effects. Rather some empirical approaches are studied, to recreate effects without necessarily computing all physical characteristics [2] [3] [4] [8] [7]. Most of these approaches are paper based models, simulating fluid propagation and pigment propagation, diffusion etc. Until recent, approaches are taken to simulate water color using cellular automaton [1] [2] [3] computes per pixel. More recent approaches take vector based approaches [4] by computing stamps and splats rather than per pixel, allowing rendering in high resolution. Model based approaches often incorporate cellular automaton too. Color that are not soaked in yet undergo surface effects. A displacement force, D, combining all forces (gravity, surface tension, spreading force) is calculated based on following equation: This displacement force is used to calculate displacement of water and pigment. Displacement for both water and pigment is calculated from water only as Small posits that, pigments flow equally with water. This assumption however cannot reflect varying pigment density and cannot recreate granulation. Following equations are used, For fluid simulating several approaches are studied including: Kubelka-Munk model [2], Navier-Stokes equation [3] and Lattice Boltzmann Equation [7]. Even biased random walk [4] is also used. In following, approaches to simulate watercolor, other print media, render watercolor from models and images, simulated watercolor rendering and interaction approaches taken by several authors are discussed. 3.1 To give substrate effect, water and pigment infused in paper are displaced. A gradient field, as denoted in following equation is calculated, Simulating watercolor painting One of the earliest approach to model water color was by David Small in 1991 [1]. His groundbreaking work attempted to model watercolor by simulating diffusion, Then following equations with global gravity, g, and cell local absorbance, a, are used, 3
  • 4. Khan Mostafa Student ID# 109365509  At each time step some water and pigment is absorbed in paper, as depicted by following formula, Following quantities are involved,   Pigment absorbed in same proportion of that of water.   In the end, at third phase, simulated image is rendered using following equations,  At first stage, paper is generated from some Gaussian pseudo random process by selecting height h for each cell such that 0 < h < 1. In shallow water layer, it is posited that, following conditions shall be satisfied,  The flow must be constrained so that water remains within the wet-area mask.  A surplus of water in one area should cause flow outward from that area into nearby regions.  The flow must be damped to minimize oscillating waves.  The flow must be perturbed by the texture of the paper to cause streaks parallel to flow direction.  Local changes should have global effects. For example, adding water in a local area should affect the entire simulation.  There should be outward flow of the fluid toward the edges to produce the edge-darkening effect. Figure 3-1: The three-layer fluid model for a watercolor wash of Curtis et al Curtis et al use a discretized approach proposed by Foster [9] to update water velocities. However, to limit this within wet boundary, they set the velocity at the boundary of any pixel not in the wet-area mask to zero. Inspired by Small’s cellular automata, in 1997, Curtis et al [2] composed an empirical fluid simulation based paper model for Computer-Generated Watercolor. Their model is empirically based and uses Kubelka-Munk model. They simulate different washes one by one, allowing artists to create the effect of glazing. This near-real time approach model paper in three layers (see Figure 3-1):  The wet-area mask M, which is 1 if the paper is wet, and 0 otherwise. The velocity u, v of the water in the x and y directions. The pressure p of the water. The concentration gk of each pigment k in the water. The slope ∇h of the rough paper surface, defined as the gradient of the paper’s height h. The physical properties of the watercolor medium, including its viscosity _ and viscous drag _. (In all of our examples, we set μ_ = 0.1 and κ= 0. 01.) Pigments are transferred between shallow water layer and pigment deposition layer by absorption and desorption. Function of capillary layer is governed with water saturation, s, and fluid holding capacity f. This early work was a very important work and could replicate watercolor effects in semi real time. Although using supercomputer of those days, which certainly has much lower computation power than modern PCs, its performance is sophisticated. Despite being unable to simulate glazing, layers, granulation, edge darkening, and with uniform pigment and paper density, this work has inspired a lot of following research endeavors who have later created more realistic watercolor simulations.  The capillary layer—where water that is absorbed into the paper is diffused by capillary action. They also relax the divergence of velocity field after each time step until some threshold. To simulate edge darkening by moving pigments outwards to edges, they remove some water at each time step according to distance from edge. Cells near edge lose water more than them in centers. The shallow-water layer —where water and pigment flow above the surface of the paper. The pigment-deposition layer — where pigment is deposited onto (“adsorbed by”) and lifted (“desorbed”) from the paper. Pigments are moved differently, as opposed to Small, than water using some velocity fields. 4
  • 5. Technical Report Reviewing Papers on Real Media Painting as Graphics Application Scalar density, staining power for each cell affects pigment adsorption and desorption. At each time step, Curtis et al, compute this. They also take account, a granulation parameter, to determine how much of height effects adsorption. a method for creating procedural textures by S. Worley [10]. Capillary layer allow water flow in it. When water is applied, it goes to surrounding cells as effect of capillarity of watercolor papers. This, computation allows simulation of backruns. While rendering image, they used KM model to perform optical composition of glazing layers. Each pigment is assigned a set of absorption coefficients and scattering coefficients. These are functions of wavelengths and control opacity and transparency of colors. Different type of pigments have different types of value for this coefficients. Opaque paints have high scattering while transparent ones have low scattering. Inference paints have high scattering in similar wavelength and low on others. They have seen KM works well as some assumptions satisfy real watercolor behaviors. They listed, (a) all colorant layers are immersed in mediums of the same refractive index (b) The pigment particles are oriented randomly (c) The illumination is diffuse (d) The KM equations apply only to one wavelength at a time (e) no chemical reactions. Figure 3-2: Schematic view of three layer paper model,. from Van Laerhoven et al. Same model as of Curtis et al. To make simulation real time, they distributed paper in several remote processes as depicted in following Figure 3-3. They have sued LAM/MPI for message passing between remote processes. They have not only distributed simulation but also rendering. For distributing brush action, they have distributed brush attributes in segments. Approach described by Curtis et al sufficiently simulates watercolor effects. This work has long lasted as milestone for such applications. However, this method is raster based and cannot simulate in higher resolution in real time. Following the work of Curtis et al, a lot of other efforts are made to improve its performance. One of them is by Van Laerhoven and Liesenborgs [3] in 2004 where they tried to somewhat enhance the work by Curtis for real time watercolor painting on distributed paper model. In this approach, they still considered a paper base, empirically inspired, fluid propagation model along with pigment advection. They also incorporated distribution of paper in several remote process to boost computational power. Figure 3-3 Van Laerhoven, distributed paper model: A paper canvas divided in sub grids or sub papers. Each sub grid has an extra border of cells, overlapping neighboring sub grids. They described, applying a brush to the paper canvas produces a stroke that consists of a set of interpolated positions. At each of these positions water, pigment and velocity values are assigned to a collection of cells that belong to the brush pattern. These patterns now have to be applied at a remote sub paper. All position data from the stroke is sent to the remote sub papers to which that particular paper position belongs. The sub papers use a copy of the original brush to apply the pattern themselves. A position belongs to just one sub paper, but when the brush pattern is applied, the cells of several sub papers could be affected. In this situation, the position under consideration is sent to each sub paper that will be affected by the application of the brush pattern. Following Curtis et al, they used same three paper layers: shallow layer, pigment layer and capillary layer. For shallow layer they solve Navier-Stoke equation, rather than the approach from Foster. This perform better as it is faster. This approach can also deal with thick paint, as Foster’s approach worked poorly on high viscosity paints. For pigment deposition they mostly followed Curtis et al. In capillary layer to govern water movement, to create some irregularity in the capillary diffusion process and in the paper surface they generated surface texture of the paper canvas and the water capacities of each cell are using This approach used some changes of Curtis’s work. But it cannot still become vastly scalable. 5
  • 6. Khan Mostafa Student ID# 109365509 In a more recent work, DiVerdi et al [4] (2012-2013) )proposed a vector based model. They have also deviated from using physics based simulation further by using rather more empirical approach which is inspired by actual water color characteristics. They proposed Painting with Polygons for a Procedural Watercolor Engine. A major drawback of earlier works were that, they were computationally very heavy. This came from two reasons – (1) raster based simulation of whole canvas (2) attempts to exactly replicate watercolor. DiVerdi et al took several intuitions,   force fields and local force fields. Forces acting on a splat is shown in Figure 3-4. Figure 3-4: Splat as in DiVerdi et al. (left) forces acting on a splat, (center) advected splat (right) after sampling management Watercolor strokes effects generally sparse Specific path taken by pigment can be much realistically replicated by random walk which creates similar result as achieved by more complex method Over time, different advection directions may create unrealistically straight hard edges due to local undersampling. This artifact is dealt by the third operation, by resampling the splat. Two approaches can be taken, The algorithm adopts a sparse representation to model watercolor strokes and uses random walk to update position in each time step. Paint pigments are represented as “splat” particles – each being a complex polygon of n vertices. The algorithm has four major operations:- Paint Initialization, Pigment Advection, Sampling Management, Lifetime Management.   At first, stroke input is recorded by placing stamps in uniform length increment along the stroke path. Stamps are set of splats which store age, flow and several other attributes. At each stamp, water are also placed on canvas and stored separately as rasterized 2D grid of cells called water-map. Constrained vertex motion  Vertex cannot move too far from its neighbor vertices of same splat Periodic resampling of splat boundary  Compute total perimeter  Arc length per vertex is computed  Vertices moved to maintain uniform arc length Boundary resampling is shown in Figure 3-4. Fourth operations is lifetime management. Here, a splat has three stages of life: flowing, fixed and dried. Initially a splat is flowing; after certain steps (age) they are fixed – but can potentially be rewetted to resume advection. After a certain period the splat is dried and then rasterized into dry pigment buffer and removed from the simulation. Rewetting helps to achieve effects like back runs and feathered edges. Lifetime management also mimics water flow, granulation and other watercolor affects. Secondly, splats are advected at each time step embodying biased random walk behavior. Vertex’s own velocity, splat’s bias velocity, water velocity, paint viscosity, roughness of canvas media and gravity are modeled at this point. These helps to achieve branching and roughening aspects of watercolor. Following equations used, The paper represents a way to implement brush types to reproduce a variety of watercolor characteristics. It demonstrates five brush types. To summarize, all four operations of the algorithm and brush types achieves common watercolor effects, such as, color blending, feathering, edge darkening, non-uniform pigment density, granulation, back runs, rewetting, glazing etc. Here, d is displacement calculated. A tuning parameter α is used with a value =0.33. This tunes the effect of global 6
  • 7. Technical Report Reviewing Papers on Real Media Painting as Graphics Application Brush types can be achieved by varying several parameters as described below. The authors have also implemented a commercial application which performs well in real time in low end devices. This method can also recreate most water color effects without requiring very high computation. Different arrangement of splat per stamp Different brush parameter settings      For rendering purposes, they suggested using OpenGL facilities. They suggested using two pass stencil buffer per splat. For anti-aliasing, they suggested using post processing after full rendering to reduce computation cost. Target width, w Initial wet at wet map (=255) Splat life (l= initial a) Roughness, r Flow, f This approach, also have some limitations. Splats are used for live strokes. This vector representation might use up a lot of memory and computation time, when drawing start to use a lot of live strokes. Although, to limit this, they have rasterized dried splats to avoid re-computing stable splats each time step. Examples, Simple • Single splat, d=w, b = <0,0> Wet on dry • 7 splats, central splat bias = <0,0>, d=w/2 • 𝑑 3.2 𝑑 2 2 Perimeter splat bias = ‹ cos 𝜃, sin 𝜃› Wet on wet • Small splat (d=w/2) inside large splat (3w/2) • r=5, l=15, b=<0,0> Watercolor effects in model rendering and real photos In previous section, several watercolor painting simulations are discussed. However, watercolor effects are desirable in many other situations. Even, earliest approaches to recreate watercolor in computers adopted applying filters on real photos. Later, demand for nonphotorealistic rendering in many applications has also created demand for watercolor effects in 3-D and 2-D modeled still images and even in animations. Blobby • Randomly sized 4 splats, l=15, b=<0,0> Crunchy • 1 splat, r=5, f=25, l=15 Figure 3-5 shows these brush types. One such work is done by Bousseau et al [6] in 2006 suggesting an approach for Interactive watercolor rendering with temporal coherence and abstraction. This work is largely inspired by cellular automaton of Small’s approach and used fluid simulation technique that are comparable to that used by Curtis et al. For a single image, the use a pipeline as depicted in Figure 3-7. Bousseau et al describes method for (1) Static image rendering and (2) rendering animations. To render a static image with watercolor effects, they described two major steps (a) Watercolor Effects and (b) Abstraction. The input in the pipeline is an image rendered from a model or a real photo. They apply watercolor effects on this input. They posit, main watercolor feature is color variations. To do so, they modify the color of objects. Figure 3-5: Brush types exemplified in DiVerdi et al (left to right: simple, wet on dry, wet on wet, blobby, crunchy). 7
  • 8. Khan Mostafa Student ID# 109365509 density modifications. The three effects are applied in sequence using per pixel using a pixel shader and each can be controlled. The paper layer is applied on the whole image but the other layers are applied only on the object projection. They allowed user to choose freely any kind of gray-level textures for each layer though mentioned that Perlin noise textures for the turbulent flow, a sum of Gaussian noises at various scales for pigment dispersion and scanned papers for the paper layer works well. They have also some techniques to apply for achieving Edge darkening, wobbling and dry brush feature. However, they mentioned that, dry brush is not very useful in practical cases. They main “magic” of their method is achieved from abstraction. They used Toon shading [11] for models to get discrete colorizations. In 3-D illumination model, they suggested to apply normal smoothing before computing illumination. These abstraction will reduce a great deal or details, which is not seen in real watercolor images. Thus, abstraction will help to get more watercolor like rendering. For real photos, to do abstraction, they apply morphological smoothing by using a sequence of opening and closing fitters. This will create blob area of certain “brush size”. Figure 3-6: Static pipeline in Bousseau et al: This pipeline takes as input either a 3d model or a photograph, the input is then processed in order to obtain an abstracted image and finally watercolor effects are applied to produce a watercolor-like image. User can chose a base color density for a model object. This color is said to have a density d. At first model object has uniform density color, C. Then, color is modified continuously. This can be done using full simulation of cellular automaton. But they showed that same phenomenological features can be achieved by simply varying color density, d, over the model surface. They relatively increase or decrease d over uniform color C to replace them with C’ as computed using equation, For animation, temporal coherence in necessary. To achieve such, they mention two methods. In one approach, they decompose possible movements along z axis and attach multiple pigment texture in object space. Another approach for real time rendering of watercolor effects for virtual environment is done by Lei &Chang [5] in 2004. A diagram for this model is shown below. 𝐶’ = 𝐶(1 − (1 − 𝐶)(𝑑 − 1) Color density variation is shown in Figure 3-7 Figure 3-7: From Bousseau et al: Darkening and lightering of Color using density Figure 3-8: System diagram for Lei & Chang Pigment density variation is achieved applying three layers to simulate different types of pigment density flows: turbulent flow, pigment dispersion and paper variations. Instead of physical simulations, each layer is a gray-level image whose intensity gives the pigment density as follows: An image intensity of T = [0:1] yields a density d = 1+b (T – 0.5), which is used to modify the original color using formula shown above. b is a global scaling factor used to scale the image texture values and allow arbitrary This approach has two major components, color band specifying and watercolor shader. Color band specifying is done in a similar fashion that of Curtis et al using KM model for optical mixing of pigments. They described user interaction for choosing pigments from a provided pigment library. 8
  • 9. Technical Report Reviewing Papers on Real Media Painting as Graphics Application The other major part: watercolor shader has vertex shader and fragment shader. For vertex shader, a shader similar to Toon Shader [11] is used. This is run twice, one for RGB and once for alpha layer with granulation information. Color map and granulation map generated here is then fed to fragment shader. Fragment shader processes this maps to create a watercolor styled image. Paper texture is also simulated by using a provided paper texture or generated texture. Wobbling effect is gained by distorting color map with paper texture. Then they apply Sobel filter on color map. This creates the final image. 3.3 receptivity parameter and mask. From this, first it is checked if the lattice is saturated (i.e. holds water equal to a certain threshold). If it not saturated then, an amount of water and ink is deposited. For water percolation, permeability and viscosity is accounted. For each lattice site, a blocking factor κ is associated. Value of κ can simulate various media effects. For ink media, they used half way bounce back scheme and used an averaged κ when calculated flow between two nearby lattices points. This average is the mean of κ for both lattice points. This guarantees conserving Simulating other fluid media painting momentum and density. For each lattice site κ is calculated from grain texture and alum texture using a provided formula. Grain texture is created from scanned real paper and alum texture is generated using some random distribution function. Another consideration is glue factor. Inks can be more or less elastic, chosen by artist. However, the relaxation parameter do not work well with glue = 1. Because it will not allow flow of stream. To solve this Several other real media display similar features of watercolor. One is Chinese ink, as noted in section 2.2. In 2005 Chu & Tai [7] attempted to simulate Real-Time Ink Dispersion in Absorbent Paper and brought up an approach named MoXi. This is a paper based fluid flow model, which used Lattice Boltzmann equation (LBE) to simulation percolation of water in disordered media. problem, authors modulated κ with glue. Conceptually this work is based on a modification of Curtis’s work. But for fluid simulation they neither used Curtis’s approach, nor used then common N-S equation. They found LBE to be more appealing as it doesn’t use Poisson equations and all operations are simple and local and it easily incorporate microscopic physics. However, they had to modify LBE in several stages. They used D2Qp lattice model. In each time step, for each lattice space, streaming flow to net lattice site and colliding flow arriving from neighbors are considered. They also incorporated a relaxation parameter, similar to some other approaches. This relaxation parameter tunes the elasticity if ink (or paint media/color). The LBE model was originally designed for situations where the simulated fluid fills the whole domain, but in MoXi, a spars space is filled with air. Air is regarded to be zero valued. This causes non-zero density in some cases and let LBE not work properly. To avoid the unphysical situation of negative density from happening altogether, we modify the basic LBE to reduce the strength of the advection when the density is low. The rationale is that the advection of water drops in less saturated areas. Another consideration was boundary pinning. Boundary pinning is an effect where ink do not flow from wet regions to dry regions. Only in few place de-pinning happens where water pressure is enough to overcome pinning. This effect is simulated with a simple approach. A site is considered to be pinning if it is fry and water density at each of its eight neighbors is below a certain threshold. For ink dispersion simulation, they avoided using strict physics simulation and attempted to design a unified model capturing essences of physical models, yet keeping it computationally feasible. To do this, they proposed a three layer paper model – with surface layer, flow layer and fixed layer. Note that, these layers are different from original Curtis et al and other extended approaches. Pigment advection is done using similar approach as other methods. Pigments are gradually transferred from low layer to fixed layer as ink dries. They used an algorithm that follow conditions: (1) the transfer rate is higher when the strokes become drier, (2) the transfer rate is higher when the glue is more concentrated, and (3) all pigments are settled when a stroke dries. Ink and water is deposited on surface layer using brushes. Fluid simulation is not done in this layer. Only, pigments are deposited from surface layer to flow layer. Until, all pigment is absorbed in the paper, surface layer act as a reservoir for pigments and water. Ink is allowed to deposit under certain conditions. Each lattice site has capacity. And in flow layer, each lattice has current water density, They investigated high quality rendering of images created using MoXi simulation. Although, image is simulated in lox screen resolution, they suggested that high quality approximation is done using image methods. This will 9
  • 10. Khan Mostafa Student ID# 109365509 create boxed boundaries in certain parts of the image. Such artifact is reduced using boundary trimming. Next work [2]studied, by Curtis et al, simulates watercolor impressively by modeling underlying real water and pigment flow in a paper model. This approach is physics inspired empirical approach with cellular automata based fluid simulation and KM model based optical computation. However, this method cannot work in full real time and an interactive user paint application could not be built right away. Hence, several approaches were made to make some faster extension of this work. The method presented by Van Laerhoven and Liesenborgs [3] somewhat runs in real time by distributing computation load on several remote processes. They also used faster NK equation for flow simulation. However, this work is not sophisticated enough to build commercial applications. In another recent approach You et al studied Realistic paint simulation based on fluidity, diffusion, and absorption which also focuses on fluid based real media paints including watercolor and oil paints. They tried to simulate real paint process using basic fluid simulation. They also included the concept of viscoelasticity. DiVerdi et al [4] exploited several intuitive feature of watercolor to reduce computation load to a minimal so that a real time interactive simulation can be run even on portable computing devices. They also have released a commercial application which received positive user feedback. They have avoided physics based simulation and empirically mimicked watercolor features by using biased random walk model and yet achieved believably realistic watercolor effects. Figure 3-9: Graphical illustration of You et al’s system. The degree of solidity of the green circles indicates the degree of concentration They have simulated fluid transfer. Here, a particular quantity of paint is carried and this is calculated using self and neighbor information. The pigments in the paint are diffused in the solvent by mass transfer. Unlike momentum transfer, which is driven by velocities, mass transfer is mainly driven by concentration differences. Therefore, paint diffusion can occur even in a stationary fluid. The transport of one constituent in a region of higher concentration to one of lower concentration minimizes the concentration difference within a system. When paint solvent and paper touch each other paint solvents get absorbed in paper, this causes permanent staining. It can be noted that, Curtis et al have achieved a high level of approximation to real watercolor. Later investigations concentrated more on reducing computation load and applying computer generated watercolor in different applications. MoXi [7] simulates Chinese ink, which display similar effects of water color. MoXi has a real time implementation which simulates a lot of Chinese ink features. This work has laid some inspiration for DiVerdi et al’s work as well. Another recent work by You et al [8] simulates a wider range of paint media by replicating fluidity and other paint features. This work is mostly physics based and computation heavy. Yet, it cannot recreate all desirable real media features. To be exact, a single model cannot successfully simulate all features for various media. Again, empirical model shall better be used to reduce computational complexity. This approach is claimed to re-create several real media like acrylic paints, watercolor etc. by varying parameters. 4 CONCLUSION Several works about real media paint simulation is surveyed in this report. The earliest work studied is a significant one as Samll [1] tried to simulate underlying physics of watercolor. His approach used a supercomputer, which perhaps can be programmed in a normal PC. However, for paucity of resources, hos approach could only simulate partial natures of watercolor like fluid flow. It is though a near real time (2-10 times slower than real time). This strictly physics based model could not capture gazes, granulation, edge darkening etc. major watercolor effects. Works to render 3-D, 2-D models as watercolor styled images show satisfactory result. Creating watercolor styled images from models has certain advantages. Again they come with some challenges, especially while rendering for animations. A major artifact in watercolor like rendering in animation is “shower door”. Bousseau et al [6] have successfully outlined methods to face these challenges. 10
  • 11. Technical Report Reviewing Papers on Real Media Painting as Graphics Application Their pipeline for creating watercolor image from real photo also demonstrates believable outcomes. Lei & Chang [5] described an automated approach for image rendering from model – which also perform satisfactorily. [7] N. S.-H. Chu and C.-L. Tai, "MoXi: Real-Time Ink Dispersion in Absorbent Paper," ACM Transactions on Graphics (TOG), vol. 24, no. 3, pp. 504-511, 2005. [8] M. You, T. Jang, S. Cha, J. Kim and J. Noh, "Realistic paint simulation based on fluidity, diffusion, and absorption," Computer Animation and Virtual Worlds, vol. 24, no. 3-4, pp. 297-306, 2013. A long history of many approaches from various researchers have brought into a phase where now real-time paint application for watercolor is possible and watercolor like animations can be made. This works are not yet perfect. Mostly empirical approaches can approximate real media paint behaviors but cannot exactly recreate them. Interaction between user and computer (HCI) for better painting experience is also necessary. Hence, there would be more opportunities to investigate and improve these approaches. Even some novel, groundbreaking work might emerge to enhance experience and quality. 5 [9] D. N. M. Nick Foster, "Realistic Animation of Liquids," 1996. [10] S. Worley, "A cellular texture basis function," in SIGGRAPH, 1996. [11] A. Lake, C. Marshall, M. Harris and M. Blackstein, "Stylized rendering techniques for scalable real-time 3D animation," in Proceedings of the 1st international symposium on Non-photorealistic animation and rendering, 2000. BIBLIOGRAPHY [1] D. Small, "Simulating watercolor by modeling diffusion, pigment, and paper fibers," in Electronic Imaging'91, San Jose, CA, 1991. [2] C. J. Curtis, S. E. Anderson, J. E. Seims, K. W. Fleischer and D. H. Salesin, "Computer-generated watercolor," in Proc. ACM SIGGRAPH, 1997. [3] T. Van Laerhoven, J. Liesenborgs and F. V. Reeth, "Real-time watercolor painting on a distributed paper model," in Computer Graphics International, 2004. Proceedings, 2004. [4] S. DiVerdi, A. Krishnaswamy, R. Mech and D. Ito, "Painting with Polygons: A Procedural Watercolor Engine," IEEE Transactions on Visualization and Computer Graphics, Vols. 19, no. 5, pp. 723-735, 2013. [5] S. I. E. Lei and C.-F. Chang, "Real-time rendering of watercolor effects for virtual environments," in Advances in Multimedia Information Processing-PCM, 2004. [6] A. Bousseau, M. Kaplan, J. Thollot and F. X. Sillion, "Interactive watercolor rendering with temporal coherence and abstraction," in Proceedings of the 4th international symposium on Non-photorealistic animation and rendering, 2006. 11