Hardware Accelerated Real Time Charcoal Renderinggopi/PAPERS/npar2002.pdf · Horse (d) Sleeping Dog...

10
Hardware Accelerated Real Time Charcoal Rendering Aditi Majumder M. Gopi Department of Computer Science Information and Computer Science University of North Carolina at Chapel Hill University of California, Irvine. [email protected] [email protected] Abstract In this paper, we present simple rendering techniques implemented using traditional graphics hardware to achieve the effects of char- coal drawing. The effects include characteristics of charcoal draw- ings like broad grainy strokes and smooth tonal variations that are achieved by smudging the charcoal by hand. Further, we also gen- erate the closure effect that is used by artists at times to avoid hard silhouette edges. All these effects are achieved using contrast en- hancement operators on textures and/or colors of the 3D model. Our contribution lies in unifying the methods to achieve these effects under the common framework of contrast enhancement op- erators. Further, since the effects have been implemented using tra- ditional graphics hardware, a single rendering pass is sufficient to create different effects. Hence, we can render highly complex mod- els with large number of triangles at interactive rates. Thus, our method is especially suited for applications like scientific visual- ization and preliminary sketches/animations. CR Categories: 1.3.5 [Non Photorealistic Rendering]: Hardware Accelerated Rendering—Charcoal Rendering Keywords: Non Photorealistic Rendering, Hardware Accelerated Rendering, Real time rendering, Charcoal Rendering 1 Introduction In many applications – from medical texts to architectural design and mechanical illustrations – non-photorealistic rendering is often more effective than photorealism. Such illustrations perform an ab- straction on the actual scene content and convey information that is most important to an observer. Further, recent research has shown that such illustrations can be easily produced, consume less storage and thus can be a better choice than photorealism in many applica- tions. Research in non-photorealistic rendering (NPR) has found meth- ods to simulate the effects of various traditional media like pen and ink [4, 27, 28, 34, 35, 19], pencil sketches [1], water color [3] and engraving [21, 30]. There has been work on rendering different styles like impressionism [8, 10, 15, 18] and technical illustrations [6, 26, 25]. There has also been work on non-photorealistic render- ing of specific objects like fur and grass [13, 14] To the best of our knowledge, except for an interactive 2D sys- tem developed in 1988 [2], we have not seen any work specifically on computer generated 3D charcoal rendering. However, there has been some nice work on graphite pencil rendering and modeling blenders and erasers in the past [32, 33, 31]. This work achieves realistic graphite effects by using detailed models of pencils and erasers. As a result, the algorithm is non-interactive and takes many seconds to render even small models composed of a few hundred triangles. We can envision situations as in developing animation movies or visualizing large scientific data, where the user may want to get a quick look at the data from different viewpoints even before deciding on more detailed and elaborate rendering. Further, there is also a need for interactive system for applications like artistic virtual environments. Our technique uses traditional graphics hard- ware to implement all the techniques and thus, is more suited for such purposes. Our method is based on the following interesting observation about the charcoal drawings. Charcoal is extremely limited in dy- namic range when compared to the dynamic range of the physical world, or even other digital and non-digital media. So, it is indeed difficult to capture many rich colors and textures using charcoal. Yet, an artist does it with amazing ease. One of the very common techniques that artists use to overcome this limitation is to exag- gerate the contrast difference. A related observation was made in [6] while designing lighting model for non-photorealistic colored rendering of mechanical illustrations. This system used luminance and hue shifts to create such lighting effects. We also use con- trast enhancement while creating charcoal rendering effects. We achieve this by using a contrast modifying function which we call the contrast enhancement operator (CEO). Similar techniques have also been used in [32, 31, 29, 27, 28, 34, 35] where the prob- lem is viewed as a special kind of half-toning. The contribution of our technique lies in the fact that we achieve many different effects of charcoal rendering using the common framework of contrast en- hancement. The enhancement operator operates on a uniform noise texture to generate a contrast enhanced texture which is texture mapped on the model to create the grainy effect of charcoal rendering. Many previous algorithms have also used texture mapping for interactive NPR. These include Tonal Art Map described by Praun et. al [23], prioritized stroke textures used by Winkenback [34] and Salisbury [27] and Art Maps used by Klein [12]. In the former two systems, one texture is used to convey a single tone. Thus, many such tex- tures have to be blended together in varying proportions to create the varying tone of a polygon [23]. This may lead to renderings that need multiple passes. We achieve the tonal variation by using only one CET. Thus we do not need multi-texturing or blending to achieve the effect of charcoal rendering. Though art maps use a sin- gle texture, this texture is dependent on the scene content whereas our texture is independent of the scene content. The contrast enhancement operator also operates on the color of the Phong shaded vertices of a model to generate what we call a contrast enhanced model. The color at vertices of the contrast enhanced model is used to index into the contrast enhanced texture for the final texture mapping. To create the effect of smudging the charcoal by hand, this texture mapped model is blended with the contrast enhanced model. Finally, we create what artists call the closure effect where the silhouettes are not explicitly rendered, and the closure of the object is left to the interpretation of the viewer. There have been sev- eral methods that use traditional graphics hardware to achieve real time silhouettes [5, 7, 9, 16, 20, 24] and artistic silhouettes [20]. However, rendering the texture mapped model achieves the closure 1

Transcript of Hardware Accelerated Real Time Charcoal Renderinggopi/PAPERS/npar2002.pdf · Horse (d) Sleeping Dog...

Page 1: Hardware Accelerated Real Time Charcoal Renderinggopi/PAPERS/npar2002.pdf · Horse (d) Sleeping Dog (e) Indian Woman (f) The Girl effect without an explicit computation of silhouettes.

Hardware Accelerated Real Time Charcoal Rendering

Aditi Majumder M. GopiDepartmentof ComputerScience InformationandComputerScience

Universityof North Carolinaat ChapelHill Universityof California,[email protected] [email protected]

Abstract

In this paper, we presentsimplerenderingtechniquesimplementedusingtraditionalgraphicshardwareto achieve the effectsof char-coaldrawing. Theeffectsincludecharacteristicsof charcoaldraw-ings like broadgrainy strokesandsmoothtonalvariationsthatareachievedby smudgingthecharcoalby hand.Further, we alsogen-eratetheclosure effect that is usedby artistsat timesto avoid hardsilhouetteedges.All theseeffectsareachieved usingcontrast en-hancementoperators on texturesand/orcolorsof the3D model.

Our contribution lies in unifying the methodsto achieve theseeffectsunderthecommonframework of contrastenhancementop-erators.Further, sincetheeffectshavebeenimplementedusingtra-ditional graphicshardware,a singlerenderingpassis sufficient tocreatedifferenteffects.Hence,wecanrenderhighly complex mod-els with large numberof trianglesat interactive rates. Thus, ourmethodis especiallysuitedfor applicationslike scientific visual-izationandpreliminarysketches/animations.

CR Categories: 1.3.5[Non PhotorealisticRendering]:HardwareAcceleratedRendering—CharcoalRendering

Keywords: Non PhotorealisticRendering,HardwareAcceleratedRendering,Realtime rendering,CharcoalRendering

1 Introduction

In many applications– from medicaltexts to architecturaldesignandmechanicalillustrations– non-photorealisticrenderingis oftenmoreeffective thanphotorealism.Suchillustrationsperformanab-stractionon theactualscenecontentandconvey informationthatismostimportantto anobserver. Further, recentresearchhasshownthatsuchillustrationscanbeeasilyproduced,consumelessstorageandthuscanbea betterchoicethanphotorealismin many applica-tions.

Researchin non-photorealisticrendering(NPR)hasfoundmeth-odsto simulatetheeffectsof varioustraditionalmedialikepenandink [4, 27, 28,34, 35, 19], pencilsketches[1], watercolor [3] andengraving [21, 30]. Therehasbeenwork on renderingdifferentstyleslike impressionism[8, 10,15,18] andtechnicalillustrations[6, 26, 25]. Therehasalsobeenwork onnon-photorealisticrender-ing of specificobjectslike fur andgrass[13, 14]

To thebestof our knowledge,exceptfor an interactive 2D sys-temdevelopedin 1988[2], we have not seenany work specificallyon computergenerated3D charcoalrendering.However, therehasbeensomenice work on graphitepencil renderingandmodelingblendersanderasersin the past[32, 33, 31]. This work achievesrealistic graphiteeffects by using detailedmodelsof pencilsanderasers.As aresult,thealgorithmis non-interactiveandtakesmanysecondsto rendereven small modelscomposedof a few hundredtriangles. We can envision situationsas in developing animationmoviesor visualizinglargescientificdata,wheretheusermaywantto getaquicklook at thedatafrom differentviewpointsevenbefore

decidingon moredetailedandelaboraterendering.Further, thereis also a needfor interactive systemfor applicationslike artisticvirtual environments.Our techniqueusestraditionalgraphicshard-wareto implementall the techniquesandthus, is moresuitedforsuchpurposes.

Our methodis basedon the following interestingobservationaboutthecharcoaldrawings. Charcoalis extremelylimited in dy-namicrangewhencomparedto thedynamicrangeof thephysicalworld, or evenotherdigital andnon-digitalmedia.So,it is indeeddifficult to capturemany rich colors and texturesusingcharcoal.Yet, anartist doesit with amazingease.Oneof thevery commontechniquesthat artistsuseto overcomethis limitation is to exag-geratethe contrastdifference.A relatedobservation wasmadein[6] while designinglighting model for non-photorealisticcoloredrenderingof mechanicalillustrations.This systemusedluminanceand hue shifts to createsuch lighting effects. We also usecon-trast enhancementwhile creatingcharcoalrenderingeffects. Weachieve this by usinga contrastmodifying functionwhich we callthe contrast enhancement operator (CEO). Similar techniqueshave alsobeenusedin [32, 31, 29,27, 28, 34, 35] wheretheprob-lem is viewedasa specialkind of half-toning.Thecontribution ofour techniquelies in thefactthatwe achieve many differenteffectsof charcoalrenderingusingthecommonframework of contrasten-hancement.

Theenhancementoperatoroperatesonauniformnoisetexturetogeneratea contrast enhanced texture which is texturemappedonthemodelto createthegrainy effect of charcoalrendering.Manypreviousalgorithmshave alsousedtexturemappingfor interactiveNPR.TheseincludeTonal Art Map describedby Praunet. al [23],prioritized stroke texturesusedby Winkenback[34] andSalisbury[27] andArt Mapsusedby Klein [12]. In theformertwo systems,onetexture is usedto convey a singletone. Thus,many suchtex-tureshave to be blendedtogetherin varying proportionsto createthe varying toneof a polygon [23]. This may lead to renderingsthatneedmultiple passes.We achieve the tonalvariationby usingonly oneCET. Thuswe do not needmulti-texturing or blendingtoachievetheeffectof charcoalrendering.Thoughartmapsuseasin-gle texture, this texture is dependenton thescenecontentwhereasour textureis independentof thescenecontent.

Thecontrastenhancementoperatoralsooperateson thecolor ofthe Phongshadedverticesof a model to generatewhat we call acontrast enhanced model. The color at verticesof the contrastenhancedmodelis usedto index into thecontrastenhancedtexturefor thefinal texturemapping.To createtheeffect of smudgingthecharcoalby hand,this texture mappedmodel is blendedwith thecontrastenhancedmodel.

Finally, we createwhat artistscall the closure effect wherethesilhouettesarenotexplicitly rendered,andtheclosureof theobjectis left to the interpretationof the viewer. Therehave beensev-eralmethodsthatusetraditionalgraphicshardwareto achieve realtime silhouettes[5, 7, 9, 16, 20, 24] andartistic silhouettes[20].However, renderingthetexturemappedmodelachievestheclosure

1

Page 2: Hardware Accelerated Real Time Charcoal Renderinggopi/PAPERS/npar2002.pdf · Horse (d) Sleeping Dog (e) Indian Woman (f) The Girl effect without an explicit computation of silhouettes.

HarwareAcceleratedRealTime CharcoalRendering 2

Figure1: ConventionalCharcoalDrawings(Fromtop to bottomandleft to right ): (a) The abstractFitting (b) The Musician(c) Lady onHorse(d) SleepingDog(e) IndianWoman(f) TheGirl

effect withoutanexplicit computationof silhouettes.

1.1 Main Contributions

In summary, thefollowing arethemaincontributionsof this paper:� Contrast Enhancement Framework: Weachieve many dif-ferenteffectsof charcoalrenderingusinga commonframe-work of contrastenhancement.� Hardware Assisted Contrast Enhancement: We presentanew way of using the conventional graphicshardware thatis capableof doing Phongshading,to achieve a contrast-enhancedsmoothlyshadedmodel.� One Contrast Enhanced Texture: The contrastenhancedtexturecapturestheinformationof differenttonesin a singletextureandis obtainedby applyingtheenhancementoperatorona noisetexturethatconveys a uniformtone.� Hardware Accelerated One Pass Real Time RenderingSystem : We presenta singlepassrenderingalgorithmthatusesseveral featuresof traditional graphicspipeline to im-plementall thesetechniquesto generatea real-timecharcoalrenderingof 3D models.

In Section2, we describein detailssomeof theeffectsof char-coal renderingthat we simulatein our system. In Section3, wepresentthealgorithmoverview. In Section4, we describeour im-plementationusingthe traditionalgraphicshardware. Finally, wepresentthe resultsin Section5 andconcludewith future work inSection6.

2 Charcoal Rendering

It is impossibleto captureanartist’s creativity, renderingstyleandindividuality usingcomputergeneratedtechniques.However, therearesomebasicrulesthatall artistsuseextensively thatwecanstriveto achieve. In this section,we describea few suchbasictechniquesthatartistsfollow while usingcharcoalasa medium.

2.1 Contrast Enhancement

As mentionedbefore,artistsextensively usecontrastenhancementto overcomethe limited dynamicrangeof the charcoalmedium.This helpsthe artist to make the brightnessdifferencesmorepro-nouncedin orderto achieveasimilarperceptionof brightnessasthereal world within the limited dynamicrangeof themedium. Thistechniquehelpsto createvariouseffects like shadows andalsotoeffectively hidedetailsin non-illuminatedpartsof thescene.Thiscontrastenhancementis illustratedin the drawing of Figure1(a).Thespecularhighlight is shown asa sharpwhite contrastfrom thedarker sides.In thedrawing in Figure1(e),theshadows below thechinof thewomanhavebeenaccentuatedusingthesametechniqueandthehair on bothsidesof theheadaredarkenedto hidedetails.Thus,contrastexaggerationhashelpedthe artist to createa senseof volumeor 3D on the2D canvas.

2.2 Closure

Artists may sometimeslike to leave somepartsof the silhouetteunrenderedor very soft. The observer is allowed the freedomtoimagineandinterprettheeffect. This effect is termedby theartistsas the closure. Closureis alsousedto renderthe effectsof verybright light on theobject.Noticetheclosureon theleft sideof the

Page 3: Hardware Accelerated Real Time Charcoal Renderinggopi/PAPERS/npar2002.pdf · Horse (d) Sleeping Dog (e) Indian Woman (f) The Girl effect without an explicit computation of silhouettes.

HarwareAcceleratedRealTime CharcoalRendering 3

Figure2: TheAlgorithm

Page 4: Hardware Accelerated Real Time Charcoal Renderinggopi/PAPERS/npar2002.pdf · Horse (d) Sleeping Dog (e) Indian Woman (f) The Girl effect without an explicit computation of silhouettes.

HarwareAcceleratedRealTime CharcoalRendering 4

foreheadof themusicianin Figure1(b) andtheleft armandleg ofthe lady on horsein Figure1(c). In thepictureof thesleepingdogin Figure1(d),closureis usedon theright sideof thedog’s facetogettheeffectof brightsunlight.Also noticethatthistechniquedoesnothamperourperceptionof theshapeof theobjectin any way.

2.3 Smudging Effect

Artists usecharcoalin differentwaysto createdifferentrenderingstyles. Sometimescharcoalis usedlightly on coarsepaper. Thus,grainsof charcoalleft on thepapercreatesa grainy stroke appear-anceasin thedrawing of thegirl in Figure1(f). On theotherhandcharcoalmay be pressedhardon paperto leave larger numberofgrainswhicharethensmudgedby handto createtheeffectof vary-ing tonesof grayasin thepictureof themusician,theIndianwomanandthesleepingdog. The tonescreatedlikewisecanbevariedbyusingdifferentkinds of charcoalor by varying the pressurewithwhich thecharcoalis usedon thepaper.

3 Algorithm Overview

In thissection,wedescribethedesignof ouralgorithmfor charcoalrenderingof 3D modelsat interactive ratesthat createstheartisticeffectsexplainedin theprevioussection.This algorithmusescon-trastenhancementtechniquesto achieve theseeffects. Thesetech-niquesareacceleratedusingseveral featuresof traditionalgraphicshardwarein our implementation.

The stepsin our algorithm are shown in Figure 2. We applya contrastenhancementoperator(“operator”) on a noise texture(conveying anuniform tone)to generatethecharcoalgraintexture,which we referto ascontrastenhancedtexture(“texture”). We usethe samecontrastenhancementoperatorto modify the gray scalePhongshadedmodel. The modelthusmodifiedis calledthe con-trastenhancedmodel (“enhancedmodel”). In Section4, we willdescribehow we usetheconventionalgraphicshardwareto rendercontrastenhancedmodel.

We usetheenhancedmodelfor two purposes.Thecontrasten-hancedgrayvalueof theverticesof theenhancedmodelis usedtoindex into thetexturefor themappingof thegrainy textureontotheoriginal 3D model. The secondpurposeof this contrastenhancedmodelis to createthesmudgingeffect that is achievedby blendingthetexturedmodelwith theenhancedmodel.Finally, webumpmapa paper-texture in 2D on the renderedframeto impart the coarse-nessof thebackgroundpaper.

3.1 Creation of Contrast Enhancement Operator,Texture, and Model

In this section,we definecontrastenhancementoperators,contrastenhancedtexturesandenhancedmodels.

3.1.1 Contrast Enhancement Operators

A contrastenhancementoperator�

works on a gray scaletexture�or a grayshadedmodel � andmodifiesthemin sucha way so

as to increasethe perceived contrast. Thus,�

is a function thatmapsthe gray value � , ��� ����� ��� � , to anothergray value � ,��� ����������� � . For example, ������� is a contrastenhancementfunctionfor ������� � . A setof suchcontrastenhancementoperatorsareshown in Figure3 which vary in thevalueof � .

3.1.2 Contrast Enhanced Texture

In thisstep,weapplyacontrastenhancedoperator�

onanoisetex-turewhich conveys theappearanceof a uniform grainy tone. The

Figure3: Family of contrastenhancementcurvesof the form ������ . Herewe show thecurveswith � equalto ��� � , ��� � and �� � .contrastenhancedtexturethusgeneratedhelpsusto convey thein-formationof severaltonesin thesametexture.

A noisetexture is usuallygeneratedby placingblack grainsatrandomlocationsonasquarewhiteimage.Thedensityof thegrainssimulatesthegraininessof thecharcoalwhich canvary dependingonthetypeof charcoalandthepressurewith whichit is usedonthepaper. We canvary graindensityby changingthenumberof blackparticleson thewhite image.

Contrastenhancedtextureis generatedthesamewayanoisetex-tureisgenerated,exceptthatweapplythecontrastenhancementop-eratoron therandom� -coordinategeneratedfor every blackgrain.Finally, weblur thetextureto createthefinal contrastenhancedtex-ture. Figure4 shows two contrastenhancementoperatorsandthecorrespondingenhancedtexturesof varyinggraindensities.

3.1.3 Contrast Enhanced Model

We apply thecontrastenhancementoperatoron thegrayvaluesofthePhongshadedmodelto createthecontrastenhancedmodel.ThePhongshadinggivesa perceptionof thecurvatureof thesurfaceasit is derivedfrom thesurfacenormalandthelight position.Apply-ing theoperatoronthecolorsof thismodelpronouncestheshadowsandcurvesandthusenhancestheperceivedsenseof ‘volume’ and3D shape.

Notice that in Figure4 the planartexturesimpart a perceptionof 3D. They look curved and the perceived curvaturevarieswithdifferentoperatorsandgraindensities.Thisis exactlythetechniqueartistsuseto createwhatthey call asenseof ‘3D volume’. Applyingthe operatorto the Phongshadedmodel impartsa similar effect.Figure2 shows themodelbeforeandaftertheoperatoris applied.

3.2 The Grainy Stroke Effect

Theeffect of grainy strokesarebroughtaboutby texturemappingthe contrastenhancedgrainy texture on to the original 3D model.Thegrayvaluesof thecontrastenhancedmodelis usedto find thesetexture coordinates.Figure 5 shows the effect of using the grayvaluesof thePhongshadedmodelastexturecoordinatesinsteadofthegrayvaluesof thecontrastenhancedmodel.This illustratestheimportanceof theoperatorin renderingthegrainy strokes.

3.3 The Smudging Effect

The renderingat this point, with only the grainy texture on themodel,lackstheeffectof smudgingthecharcoalwith handto createsmoothtonalvariations.Interestingly, theblendingof this texturedmodelwith the contrastenhancedmodelbringsaboutthis effect.Referto Figure2 to seethiseffect.

Page 5: Hardware Accelerated Real Time Charcoal Renderinggopi/PAPERS/npar2002.pdf · Horse (d) Sleeping Dog (e) Indian Woman (f) The Girl effect without an explicit computation of silhouettes.

HarwareAcceleratedRealTime CharcoalRendering 5

Figure4: CETsof varyinggraindensitygeneratedby applyingdifferentCEOs

3.4 The Paper-Texture Effect

Finally, to createtheeffect of a coarsepapercanvas,we bumpmapa papertexture on the renderedframein 2D. The papertexture iscreatedby embossinga noiseimage. Notice that, this is differentfrom the3D bumpmappingusedin [1] to createthesameeffect. In[1], thepapertexturehasto bescaledappropriatelyif themodelisscaled,to maintaincoherence.Sinceweusea2D bumpmapontherenderedframe,thepapertextureremainsthesameevenwhenthemodelis zoomedin or out. Further, a 2D bumpmapsimulatesthepaper/canvasappropriatelysincethe coarsenessof the paperdoesnotchangewith thechangingcontentof therendering.

4 Real Time Rendering

In this section,we describeour singlepassrenderingtechniquetoimplementthe algorithm presentedin the previous sectionwhichgeneratescharcoalrenderingof 3D modelson traditionalgraphicspipeline at interactive rates. We use ! to denotethe normalat avertex and " to denotethelight vectorfrom thelight positionto thevertex. We usetheoperatorsof theform #%$'&)(+*�&-, , .0/21�3 4 . Wecanalsospecifya piecewiselinearoperator.

4.1 Contrast Enhanced Texture

Wegenerateasetof contrastenhancedtexturesusingdifferentcon-trastenhancementoperatorsandgraindensitiesasshown in Figure4, asa partof preprocessing.At run-time,we useoneresidenttex-ture at a time to texture map the whole model. The texturesareswitchedin orderto changetherenderingstyle.For example,if wewant to rendertheeffectsof a softercharcoal,we useanenhancedtextureof a greatergraindensity.

4.2 Contrast Enhanced Model

The way we createa contrastenhancedmodel is interestingsinceweusetheconventionalgraphicshardwarefor thispurposeandwedo not explicitly computethe contrastenhancement.Oneway toenhancethe shadingof the model is to calculatethe gray valuesat theverticesof thepolygonsusingthePhongshadingmodel,and

thenapplytheoperatoronthesegrayvaluesto enhancetheshadeateachvertex. ThenGouroudshadingcanbeemployedto interpolatethe valuesof the enhancedshadingwithin the polygon. But theGouroudshadingintroducesbandingeffectsdue to discretizationandrasterizationprocess.But thesameresultwithout thebandingartifactscouldbeachievedusingPhongshading.The following isthe equationof the color we would like to achieve in the interiorof thetriangle,but without muchof artifacts.Thisusesbarycentriccoordinates5 and 6 , thevertex normals798 , 7;: , and 7;< , andthelight vector(at infinity) " .5+#%$=7 8?> "?(A@6B#%$=7 :C> "?(A@�$D1CE�5�E�6B(F#%$=7 <G> "?( (1)

In our application,we useno specularlighting componentandhencewe areconcernedonly aboutthe diffusedlighting. We as-sumea white coloredmodelandwhite coloredlight with a coeffi-cientof diffusedlighting of 1�3 4 . Thus,thediffusedlighting at anypoint is exactlyequalto thedot productof thenormalandthelightvector.

Let us try to approximatethe effect of Equation1 to somerea-sonableaccuracy usingPhongshadingsothatwe geta continuousshading.We achieve this by scalingthenormalsin sucha way thatEquation1 is satisfiedat thevertices.(At theverticesof thetrian-gle,oneof 5 , 6 and 1?E05HE�6 is 1 andtheothersare 4 ). Thescalefactorthuscomputedis IBJLKNM OQPK�M O . Henceattheverticesof thetrianglewegetthefollowing shadingexpressionasrequiredby Equation1.R #%$'! > "?(! > " !AS > "* #%$'! > "T($'! > "T( $'! > "U(+*�#%$'! > "?(WVThenwerenderthismodelusingPhongshadingto achievethegrayscaleenhancementwithin thepolygon. In the interior of thetrian-gle,we getXUY $'5+#%$=7Z8 > "T(A@6B#%$=7;: > "?([@\$D1GE�50E�6B(F#%$=7]< > "?(F(where

Xis a varying scalefactor to normalizethe normal vector.

Thus,wemaintaintherequiredresultsat theverticesof thetriangle,andthePhongshadinggivesusresultsthataregoodin theinteriorof thetrianglealso.

In summary, thismethodhelpsusin two ways.First,weareableto usethe hardwareto achieve the contrastenhancedcolors. Sec-ond,wegetrid of bandingartifactscausedby theGouroudshading.

Page 6: Hardware Accelerated Real Time Charcoal Renderinggopi/PAPERS/npar2002.pdf · Horse (d) Sleeping Dog (e) Indian Woman (f) The Girl effect without an explicit computation of silhouettes.

HarwareAcceleratedRealTime CharcoalRendering 6

Figure5: Left : Themodel,texturemappedusingthePhongshadegrayvaluesasan index to theCET Right : Themodel,texturemappedusingthegrayvaluesof thecontrastenhancedmodelasanindex into CET.

4.3 Smudging Effect

To createthesmudging, we againusethegraphicshardwarecapa-bility of blendingcolorswith texturemappedpolygons.Wemodu-latethetexturedmodelby theenhancedgrayvaluesof theenhancedmodelgeneratedby the methodmentionedabove. This producesnicesmudgingeffectsasshown in theFigures6 and7.

4.4 Paper Texture

We generatepapertexturesof varying coarsenessby embossinganoisetextureandthencompressingits rangenearthewhite regionof the gray scale. After renderingthe texturedmodel,we usethehardwareacceleratedalphablendingto bumpmapthepapertextureon therenderedframe.

With the above systemimplementation,we can interactivelychangebetweendifferent operators,grain density factors,papercoarseness,andsmudgedor unsmudgedrenderingstyles.

5 Results and Discussions

In Figures6 and7 we presenta few of our resultsusingdifferentcontrastenhancementoperators,differentgraindensityfactors,andsmudgedandunsmudgedstyles.Thesearegeneratedusingunopti-mizedcodeonSGIO2R10000processor. Noticetheclosureeffectattainedon theleft teapot,thehumpof theleft pig andthemissile.The closureeffect is attainedwhenwe uselow grain densityfac-tors,high contrast,andhave thesmudgingoff. Also noticethatwecanproducedifferentdrawing stylesfrom light sketchydrawings(left teapot,right plane)andlightly shadeddrawings(missile,pig)to highly silhouettedsmudgeddrawings(bunny, venusandothers).Further, we can handlemodelswith complex curves and bends,startingfrom ^`_�a�a polygons(teapot)to _cb�a�a�a polygons(bunny)at interactive ratesof d�a framespersecond.

We have portedour algorithmon to regularPCshaving NVidiaGeforcegraphicscards. Figure8 shows our resultson PC whenusingour techniqueson largescientificdataof thousandsof poly-gons.Themodelsshown herehavemorethanonemillion triangleseach.

We have alsoinvestigatedusingdifferentcontrastenhancementoperatorsfor generatingtheenhancedtextureandthe contrasten-hancedmodel. We have useda gammafunction asmentionedinSection3 tocreatetheenhancednoisetexturewhileapplyingauser-definedpiecewiselinearoperatorto generatethecontrastenhancedmodel.Oncethesetwo modelsareblended,theresultcreatesadif-ferentstyle of charcoalrenderingas illustratedby the left Venusmodelof Figure6 andtheheadin Figure7.

In theaccompanying videoweillustratetheinteractiverenderingof variousmodels.Sincewe usea singlenoisetexture,we do notseeany temporalpoppingartifactswhile zoomingin andout. Sinceour enhancedtexturesareuniform in onedimensionandnot in theother, weseesomespatialdiscontinuitieswhenwezoomverycloseto the model. We areinvestigatingif we canuse‘lappedtexture’[22, 23] to achieve betterspatialcoherency. We arealso investi-gatinggeograftal/particletechniques[11, 17] to avoid any temporalartifactswhatsoever.

6 Summary and Future Work

In summary, we presentedanalgorithmthatgeneratesdifferentef-fectsof charcoaldrawing of 3D modelsusingthecommonframe-workof contrastenhancement.Thecontrastenhancementoperatorscanbeappliedon texturesandcolorsto achieve non-photorealisticeffects. This alsohelpedus to achieve theclosureeffect. Further,weimplementedthisalgorithmasasinglepassrenderingtechniqueto rendercharcoaleffects at interactive ratesusing available fea-turesin thetraditionalgraphicspipeline. We hopeto continuethisresearchin thefollowing directions.Different Contrast Enhancing Operators: We believe that con-trastenhancementoperatorsarepowerful enoughto generatedif-ferentNPReffects.For example,a stepfunctioncontrastenhance-mentoperatorcanbe usedto generatecartoonrenderingssimilarto thosedescribedin [1]. It would be worth determiningif sev-eralNPReffectscanbeunifiedundertheumbrellaof thecontrastenhancement.More Sketch Strokes: Our charcoalrenderinglacksrich strokeslike the onesin the drawing of the girl in Figure1. It is interest-ing to ponderhow wemightusedifferenttextures(insteadof noise

Page 7: Hardware Accelerated Real Time Charcoal Renderinggopi/PAPERS/npar2002.pdf · Horse (d) Sleeping Dog (e) Indian Woman (f) The Girl effect without an explicit computation of silhouettes.

HarwareAcceleratedRealTime CharcoalRendering 7

Figure6: Results(Row wisefrom topto bottom):(a)Theatticmodel(50,000triangles)renderedwith andwithoutsmudging.(b) TheTeapot(1600triangles)renderedusingtwo differentcontrastenhancementoperators.(c) The VenusModel (6000polygons)renderedusingtwodifferentcontrastenhancementoperators.(d) Babe,thepig (3000polygons)renderedusingtwo differentgraindensityfactors.

Page 8: Hardware Accelerated Real Time Charcoal Renderinggopi/PAPERS/npar2002.pdf · Horse (d) Sleeping Dog (e) Indian Woman (f) The Girl effect without an explicit computation of silhouettes.

HarwareAcceleratedRealTime CharcoalRendering 8

Figure7: Results(Left to RightandTop to Bottom): (a)TheStanfordBunny (65000polygons)(b) TheMissile (3000polygons)(c)TheFace(13000polygons)with smudgingoff (d) The Facewith smudgingon (e)ThePlane(9000polygons)with smudgingon (f) The Planewithsmudgingoff

Page 9: Hardware Accelerated Real Time Charcoal Renderinggopi/PAPERS/npar2002.pdf · Horse (d) Sleeping Dog (e) Indian Woman (f) The Girl effect without an explicit computation of silhouettes.

HarwareAcceleratedRealTime CharcoalRendering 9

Figure8: Visualizationof largecomplex scientificmodelusingcharcoalrendering

texture)to createa stroke textureanduseit in additionto thegraintextureto createricherstrokes.Temporal and Spatial Coherence: We would like to investigatethe temporalandspatialcoherency of the interactive charcoalren-deringin detailsothatthealgorithmcanbeusedfor animations.Radiating Silhouettes: A renderingstylequitecommonlyusedbyartists is to draw radiatingstrokes moving away from the objectsilhouettein the backgroundasin Figure1(a). It requireshumancreativity andaestheticsto usethis styleeffectively. However, thequestionis, canwefind awayto createthiseffectusingcomputers?Different styles in the same drawing: Artists alsousedifferentstyles in the samedrawing. For example, in the drawing of theIndianWomanin Figure1e,somepartsof thedrawing aresmudgedby handwhile othersarenot. Thoughan artist useshis creativityto decideon this,we would like to find anautomaticway to switchbetweenstyleswithin the sameframeto createartistically vibrantpictures.

Acknowledgements: We acknowledgeLaurenKroiz andMichaelPapkaof ArgonneNationalLaboratoriesfor usingouralgorithmonlargescientificdataandsharingtheresultswith us.

References

[1] A.Lake, C.Marshall,M.Harris, and M.Blackstein. StylizedRenderingTechniquesFor ScalableReal-Time 3D Anima-tions. In Non-PhotorealisticAnimationandRendering, 2000.

[2] TeresaW. Bleser, JohnL. Sibert,andJ.PatrickMcGee.Char-coalsketching:Returningcontrolto theartist. In ACM Trans-actionsonGraphics,Vol 7, No 1, Jan1988.

[3] Cassidy J. Curtis, Sean E. Anderson, JoshuaE. Seims,Kurt W. Fleischer, and David H. Salesin. Computer-GeneratedWatercolor. In SIGGRAPH97 ConferencePro-ceedings, pages421–430,August1997.

[4] O. DeussenandT. Strothotte. Computergeneratedpenandink illustration of trees. In ACM Siggraph 2000ConferenceProceedings, Aug 2000.

[5] GershonElber. Interactive Line Art Illustration of FreeformSurfaces.In ComputerGraphicsForum18, pages1–12,Sep1999.

[6] Amy Gooch,BruceGooch,PeterShirley, andElaineCohen.A Non-photorealisticLighting Model for AutomaticTechni-cal Illustration. In ACM Siggraph1998ConferenceProceed-ings, Jul1998.

[7] BruceGooch,Peter-Pike Sloan,Amy Gooch,PeterShirley,andRichardRiesenfeld.InteractiveTechnicalIllustration. In-teractive3D ConferenceProceedings, April 1999.

[8] Paul E. Haeberli.Paint By Numbers:AbstractImageRepre-sentations.In ComputerGraphics(SIGGRAPH’90 Proceed-ings), volume24,pages207–214,August1990.

[9] A. HertzmannandD. Zorin. Illustratingsmoothsurfaces.InSIGGRAPH2000 ConferenceProceedings, pages517–526,July2000.

[10] Aaron Hertzmann. Painterly Renderingwith Curved BrushStrokesof Multiple Sizes.In ACMSIGGRAPH98ConferenceProceedings, pages453–460,July1998.

[11] M. Kaplan,B. Gooch,andE. Cohen.Interactive artistic ren-dering. In ACM Siggraph2000Proceedings, July2000.

Page 10: Hardware Accelerated Real Time Charcoal Renderinggopi/PAPERS/npar2002.pdf · Horse (d) Sleeping Dog (e) Indian Woman (f) The Girl effect without an explicit computation of silhouettes.

HarwareAcceleratedRealTime CharcoalRendering 10

[12] A. Klein, W. Li, M. Kazhdan,W. Correa,A. Finkelstein,andT. Funkhouser. Non-photorealisticvirtual environments. InACM Siggraph2000ConferenceProceedings, Aug 2000.

[13] Michael A. Kowalski and Lee Markosianet al. Art-BasedRenderingof Fur, Grass,andTrees. In SIGGRAPH99 Con-ferenceProceedings, August1999.

[14] JeromeE. Lengyel, Emil Praun, Adam Finkelstein, andHuguesHoppe.Real-timefur overarbitrarysurfaces.In ACMSymposiumon Interactive3D Graphics, March2001.

[15] PeterLitwinowicz. ProcessingImagesandVideo for anIm-pressionistEffect. In SIGGRAPH97 ConferenceProceed-ings, pages407–414,August1997.

[16] Lee Markosian, Michael A. Kowalski, SamuelJ. Trychin,Lubomir D. Bourdev, DanielGoldstein,andJohnF. Hughes.Real-TimeNonphotorealisticRendering. In SIGGRAPH97ConferenceProceedings, pages415–420,August1997.

[17] Lee Markosian, Barbara J. Meier, Michael A. Kowalski,Lorin S. Holden, J.D. Northrup, andJohnF. Hughes. Art-basedrenderingwith continuouslevels of detail. In Non-Photorealistic Animationand Rendering2000 (NPAR ’00),Annecy, France,June5-7,2000.

[18] BarbaraJ.Meier. PainterlyRenderingfor Animation. In SIG-GRAPH96 ConferenceProceedings, pages477–484,August1996.

[19] Alex Mohr andMichaelGleicher. Non-invasive andinterac-tive, stylized rendering. In ACM Symposiumon Interactive3D Graphics, March2001.

[20] J. D. Northrup and L. Markosian. Artistic Silhouettes. InNon-Photorealistic Animationand Rendering, pages31–38,2000.

[21] V. Ostromoukhov. Digital facial engraving. In SIGGRAPH1999ConferenceProceedings, pages417–424,August1999.

[22] Emil Praun,Adam Finkelstein,andHuguesHoppe. Lappedtextures.In ACM Siggraph2000Proceedings, July2000.

[23] Emil Praun, Hugues Hoppe, Matthew Webb, and AdamFinkelstein.Real-timehatching.In ACM Siggraph2001Con-ferenceProceedings, pages581–586,Aug 2001.

[24] R.RaskarandM. Cohen.Imageprecisionsilhouetteedges.InACMSymposiumonInteractive3D Graphics, pages135–140,1999.

[25] C. RosslandL. Kobbelt. Line art rendering.In Proceedingsof PacificGraphics, 2000.

[26] Takafumi Saito and Tokiichiro Takahashi. ComprehensibleRenderingof 3-D Shapes. In ComputerGraphics (SIG-GRAPH’90 Proceedings), volume24, pages197–206,Au-gust1990.

[27] M. P. Salisbury, S.E. Anderson,R. Barzel,andD. H. Salesin.Interactive penandink illustrations. In ACM Siggraph 1994ConferenceProceedings, pages101–108,Aug 1994.

[28] M. P. Salisbury, M. T. Wong,J.E. Hughes,andD. H. Salesin.Orientabletexturesfor image-basedpen-and-inkillustration.In ACM Siggraph1997ConferenceProceedings, pages401–406,Aug 1997.

[29] Mike Salisbury, Corin Anderson, Dani Lischinski, andDavid H. Salesin.Scale-DependentReproductionof Pen-and-Ink Illustrations. In SIGGRAPH96 ConferenceProceedings,pages461–468,August1996.

[30] A. Sourin. Functionallybasedvirtual computerart. In Inter-active3D ConferenceProceedings, March2001.

[31] Mario CostaSousaand JohnW. Buchanan. Observationalmodelof blendersanderasersin computer-generatedpencilrendering.GraphicsInterface’99, pages157–166,June1999.

[32] Mario CostaSousaand JohnW. Buchanan. Observationalmodelsof graphitepencilmaterials.ComputerGraphicsFo-rum, 19(1):27–49,March2000.

[33] Mario Costa Sousaand John W. Buchanan. Computer-generatedgraphitepencil renderingof 3d polygonalmodels.ComputerGraphicsForum, 18(3):195–208,September1999.

[34] Georges Winkenbachand David H. Salesin. Computer–GeneratedPen–And–InkIllustration. In Proceedingsof SIG-GRAPH’94 (Orlando,Florida, July 24–29,1994), pages91–100,July1994.

[35] GeorgesWinkenbachandDavid H. Salesin.RenderingPara-metricSurfacesin PenandInk. In SIGGRAPH96ConferenceProceedings, pages469–476,August1996.