Real-Time Volumetric Shadows using 1D Min-Max Mipmaps

Size: px
Start display at page:

Download "Real-Time Volumetric Shadows using 1D Min-Max Mipmaps"

Transcription

1 Real-Tme Volumetrc Shadows usng 1D Mn-Max Mpmaps Jawen Chen 1 Ilya Baran 2 Frédo Durand 1 Wojcech Jarosz 2 1 MIT CSAIL 2 Dsney Research Zürch eye vew rays lght rectfed vew drecton lght rays rectfed lght drecton Fgure 1: To compute sngle scatterng n scenes wth occluders (left) we compute a depth mage from the camera, and a shadow map from the lght. After eppolar rectfcaton, each row of the shadow map s a 1D heghtfeld. We optmze the computaton of the scatterng ntegral by usng an effcent data structure (a 1D - mpmap, center) over ths heghtfeld. Ths data structure helps compute the scatterng ntegral for all camera rays n parallel. Our method can render complex hgh-qualty scenes wth textured lghts (rght) n real-tme (55 FPS). Abstract Lght scatterng n a partcpatng medum s responsble for several mportant effects we see n the natural world. In the presence of occluders, computng sngle scatterng requres ntegratng the lluaton scattered towards the eye along the camera ray, modulated by the vsblty towards the lght at each pont. Unfortunately, ncorporatng volumetrc shadows nto ths ntegral, whle mantanng real-tme performance, remans challengng. In ths paper we present a new real-tme algorthm for computng volumetrc shadows n sngle-scatterng meda on the GPU. Ths computaton requres evaluatng the scatterng ntegral over the ntersectons of camera rays wth the shadow map, expressed as a 2D heght feld. We observe that by applyng eppolar rectfcaton to the shadow map, each camera ray only travels through a sngle row of the shadow map (an eppolar slce), whch allows us to fnd the vsble segments by consderng only 1D heght felds. At the core of our algorthm s the use of an acceleraton structure (a 1D mpmap) whch allows us to quckly fnd the lt segments for all pxels n an eppolar slce n parallel. The smplcty of ths data structure and ts traversal allows for effcent mplementaton usng only pxel shaders on the GPU. CR Categores: I.3.7 [Computer Graphcs]: Three-Dmensonal Graphcs and Realsm Shadowng Keywords: volumetrc scatterng, global lluaton 1 Introducton In real world scenes, mosture or dust n the ar often results n vsble volumetrc shadows and beams of lght (Fgure 1, rght) known as god rays or crepuscular rays. Renderng these lght scatterng effects s often essental for producng compellng vrtual scenes. Smulatng all scatterng events s prohbtvely expensve, especally for real-tme applcatons, and approxmatons are used nstead. The sngle-scatterng model [Blnn 1982] greatly smplfes renderng, whle stll producng realstc effects. In ths model, a lght ray travels from a source, and may get scattered nto the eye at any pont n the partcpatng medum, whle attenuatng along the path. Ths smplfcaton has allowed partcpatng meda wth shadows to make ts way nto modern computer games. Lke a lot of prevous work, we further assume that the scatterng medum s homogeneously dstrbuted through the scene. Ths assumpton could be relaxed somewhat, as dscussed n Secton 4.3. The smplest method for renderng sngle scatterng s ray marchng. A ray s cast from the camera eye through each pxel and the scatterng ntegral s approxmated by marchng along that ray and checkng f each sample s lt or shadowed usng a shadow map. To generate hgh-qualty mages, however, many samples are needed and several methods for acceleratng ths process have been publshed n the last couple of years. Our key nsght s that we can apply a smple acceleraton structure to ntersect camera rays wth the shadow map, whch we treat as a heght feld. Furthermore, we use eppolar rectfcaton of the shadow map to transform the 2D heght feld nto a collecton of ndependent 1D heght felds, one for each eppolar slce. We also use sngular value decomposton to approxmate the smoothly varyng terms of the scatterng ntegral, avodng an analytcal soluton and allowng us to support textured lghts. Our man contrbuton s usng a smple but fast acceleraton structure (a 1D - mpmap, Fgure 1, mddle) to fnd the lt segments for all pxels n the mage n parallel. Ths procedure s smlar to the work by Baran et al. [21]; however, our actual scatterng ntegral computaton, whch s the key step of the algorthm, s both much smpler to mplement and faster on a GPU.

2 2 Related Work There have been several papers wrtten on solvng the snglescatterng ntegral (sem)-analytcally [Sun et al. 25; Pegoraro and Parker 29; Pegoraro et al. 21], but they necessarly gnore shadowng, whch s often requred for realsm and s the effect on whch we concentrate. Other methods, such as volumetrc photon mappng [Jensen and Chrstensen 1998; Jarosz et al. 28] and lne space gatherng [Sun et al. 21] compute solutons to more dffcult scatterng problems, such as volumetrc caustcs or multple scatterng, but even wth GPU acceleraton they are far from realtme on complex scenes. Max [1986] descrbed how to compute the sngle-scatterng ntegral by fndng the lt segments on each ray usng shadow volumes ntersected wth eppolar slces. The ntegral on each lt segment s computed analytcally. Eppolar samplng [Engelhardt and Dachsbacher 21] speeds up ray marchng by computng t only at depth dscontnutes along mage-space eppolar lnes. The scattered radance at all other ponts s nterpolated along these lnes, but ths can cause temporally-varyng artfacts, as dscussed n pror work [Baran et al. 21]. Wyman and Ramsey [28] use shadow volumes to cull ray marchng n unlt areas. Hu et al. [21] recently presented an algorthm for nteractve volumetrc caustcs, usng Wyman and Ramsey s [28] method for sngle scatterng. Though ths method works well for smple occluders, t becomes slow n the presence of complex vsblty boundares. Several methods [Dobash et al. 2; Dobash et al. 22] compute the scatterng ntegral by constructng slces at dfferent depths, renderng the scatterng at these slces, and usng alpha-blendng to combne them. Imagre and colleagues [27] use a hybrd approach that ncorporates both slces and ray marchng. The algorthm of Blleter et al. [21] s smlar to that of Max [1986], but generates the shadow volume from the shadow map and uses the GPU rasterzer to compute the lt segments. Ths latter method s exact up to the shadow map resoluton. It s very fast for low-resoluton shadow maps, but slows down sgnfcantly as the shadow map resoluton approaches and the number of vertces n the shadow volume overwhelms the ppelne. Unfortunately, the large and complex scenes we target requre such hgh-resoluton shadow maps to avod alasng. For hgh-resoluton shadow maps, Blleter et al. perform onlne decmaton of the shadow volume, but ths s expensve and we dd not observe a sgnfcant performance beneft from ths n our experments. Lke Blleter et al., we also compute the lt segments, but whle ther outer loop s over the shadow volume elements, our outer loop s over pxels. Ths precludes the need for sendng a large number of vertces to the GPU and allows us to handle hgh-resoluton shadow maps wth ease. Addtonally, unlke ther method, we support textured lghts, and our method can be combned wth eppolar samplng [Engelhardt and Dachsbacher 21] for further acceleraton, although we have not tested ths. The algorthm of Baran et al. [21], (whch we call ncremental ntegraton ), uses eppolar rectfcaton to reduce scatterng ntegraton to partal sums on a rectlnear grd and uses a partal sum tree to accelerate ths computaton. Whle ths method has good worst-case upper bounds and s very fast on the CPU, t requres an ncremental traversal of multple camera rays n a partcular order, makng t dffcult to utlze the full parallelsm provded by a GPU. Implementng ther method on a GPU also requres usng a GPGPU API, such as CUDA or OpenCL. Unfortunately, as of ths wrtng, these are not supported on all graphcs cards, such as those found n current game consoles. In contrast, our method sacrfces worst-case guarantees, but allows all camera rays to be processed n parallel usng only features found n DrectX 9 pxel shaders. We also do not requre camera rectfcaton, avodng the need to process twce as many camera rays as pxels (due to the non-unform samplng n polar coordnates) and reducng alasng. Overall, we acheve a sgnfcant speedup at slghtly better qualty, even on hghcomplexty scenes, lke a forest, whch s a worst-case scenaro for our algorthm. Mn- mpmaps have prevously been used for acceleratng soft shadows [Guennebaud et al. 26], global lluaton [Nchols and Wyman 29], as well as ray tracng geometry mages [Carr et al. 26] and heght felds [Mastn et al. 1987; Musgrave et al. 1989; Tevs et al. 28]. In our case, thanks to rectfcaton, we only need 1D - mpmaps, whose traversal s smple and effcent. Also, unlke the other raytracng applcatons, we need all ntersectons between the heght feld and the ray, not only the frst. 3 Method Our technque uses the followng hgh-level per-frame procedure: 1. Render a depth map from the camera and a shadow map from the lght. 2. Perform eppolar rectfcaton on the shadow map (Secton 3.2). 3. Compute a low-rank approxmaton to all but the vsblty terms n the scatterng ntegral (Secton 3.2). 4. For each row of the rectfed shadow map, compute a 1D mpmap (Secton 3.3). 5. For each camera ray, traverse the - mpmap to fnd lt segments and accumulate the scatterng ntegral. 6. If the eppole s on or near the screen, compute the scatterng near the eppole usng brute force ray marchng. Ths ppelne s smlar to that of ncremental ntegraton [Baran et al. 21]; our techncal contrbuton s to elate the dynamc data structure (partal sum tree) used for ntegraton, replacng t wth a statc - mpmap, whch s smpler, allows all rays to be processed n parallel, and avods the need for camera rectfcaton. In the rest of ths secton we defne the problem, brefly descrbe the common elements shared wth ncremental ntegraton, and descrbe n detal how we ncorporate - mpmaps for ntegraton. 3.1 Sngle Scatterng Formulaton In the sngle-scatterng model, the radance scattered toward the eye s ntegrated along each camera ray, up to the frst surface. At every pont on ths ray, f the lght source s vsble from that pont, a certan fracton of that lght gets scattered towards the eye. Lght also gets attenuated as t travels from the lght source to the scatterng pont and to the eye. Ths leads to the followng equaton for the radance L scattered towards the eye (assumed to be the orgn) over a camera ray whose drecton s v: L(v) = d e σ ts V (sv) σ s ρ(θ) L n(sv) ds, (1) where d s the dstance to the frst occluder along the ray, σ s s the scatterng coeffcent, σ t = σ s + σ a s the extncton coeffcent, V (sv) s 1 f the pont sv can see the lght and f t s n shadow, L n(sv) s the radance ncdent to pont sv assug no occluson, and ρ(θ) s the scatterng phase functon wth θ beng the angle between v and the lght drecton. For the smplest case of a unform drectonal lght source wth no extncton along lght rays, L n(sv) s a constant. For an sotropc pont lght source at x, L n(sv) = Ie σ td(sv) d(sv) 2, d(sv) = x sv, (2)

3 eye eye β eppole vew ray lght source vew ray lght ray p lght ray p β ntegral once for each β, whch would be expensve. Instead, we note that all terms of I vary smoothly. We can therefore approxmate I(β, ) as N B (β)γ () for a small N. We compute ths approxmaton by samplng I n a 64-by-64 grd, takng the SVD (on the CPU, as ths needs to be done only once per frame), and usng the sngular vectors assocated wth the top N sngular values (we use N = 4). We then obtan L(α, β) ( N B (β) D(α,β) V (α, β, )Γ ()d ). (5) Approxmatng the ntegral as a Remann sum, and usng the structure of the vsblty functon we obtan L(α, β) N B (β) <D(α,β) S[α,]>β Γ (), (6) Fgure 2: Eppolar coordnates wthn an eppolar slce for a drectonal lght (top) and a pont lght (bottom). The α coordnate deteres the slce. where I s the lght ntensty. For a textured lght source, the ntensty I s a functon of sv projected to lght coordnates. 3.2 Rectfcaton and Low-Rank Approxmaton Eppolar rectfcaton s an assgnment of coordnates (α, β, ) to every world space pont p such that camera rays are ndexed by (α, β) and lght rays are ndexed by (α, ). The world space s parttoned nto eppolar slces, planes that contan the eye and that are parallel to the lght drecton, and the α coordnate specfes p s slce. The coordnate β specfes the vew ray wthn the slce. For drectonal lghts ths s the angle to the lght drecton, and for pont lghts ths s the angle between the vew ray and the drecton from the eye to the lght source. The coordnate specfes the lght ray wthn the slce, measured as the dstance to the eye for a drectonal lght source or the angle to the eye for a pont lght source. We llustrate ths n Fgure 2. Each pxel of the shadow map corresponds to a pont n world space. In the rectfed shadow map (Fgure 3), rows are ndexed by α, columns by, and the element stored at (α, ) s the β coordnate of the camera ray at whch that lght ray terates. Because we do not need to process the camera rays n any partcular order, we do not rectfy the camera depth map. Usng a change of varables, the scatterng ntegral (1) of an untextured lght may be wrtten n eppolar coordnates as: L(α, β) = D(α,β) e σts(β,) V (α, β, ) σ s ρ(β, ) L n(β, ) ds d, (3) d where D(α, β) s the coordnate of the lght ray at whch the camera ray (α, β) s blocked. Except for the vsblty component, the ntegrand only depends on β and, not α. Thus, we may wrte L(α, β) = D(α,β) V (α, β, ) I(β, )d, (4) where I has all of the other terms baked n. We would lke to precompute I(β, )d, but that would requre approxmatng the where S[α, ] s the rectfed shadow map. Ths allows us to compute only N prefx sum tables, nstead of one for each β. 3.3 Mn-Max Mpmap Constructon and Traversal Up to ths pont, our algorthm s the same as ncremental ntegraton, except that we do not need to rectfy the camera depth map. The dfference s n how the actual ntegral,.e., the nner sum of Equaton (6) s evaluated. Incremental ntegraton uses nterdependence between camera rays wthn a slce, mantanng V (β, )Γ() n a partal sum tree for each slce. In contrast, we process each ray ndependently, whch enables massve parallelsm. For each ray, we fnd the segments (, +) for whch S[α, ] > β n other words, the lt regons of that ray. We then use a table of prefx sums of Γ to compute the ntegral over the segments. Our speed s due to usng a 1D - mpmap to accelerate fndng the lt segments. Each row of the rectfed shadow map S represents a 1D heghtfeld n an eppolar slce and we want to quckly fnd the ntersecton of that heghtfeld wth a camera ray (Fgure 4, mddle). We compute a complete bnary tree on each row wth every node of ths tree storng the mum and mum values of S below that node (Fgure 4, top). To compute these trees, we use log 2 d png-pong passes each of whch computes a level from the level below (d s the number of lght rays the resoluton of ). The two buffers are then coalesced nto a sngle one wth each row lad out level by level (Ahnentafel ndexng), startng wth the root at ndex 1. Shadow Map α Rectfed Shadow Map Fgure 3: We perform rectfcaton on the shadow map (left). Ths turns eppolar slces (radal lnes emanatng from the eppole, left) nto rows of our rectfed shadow map (rght). For ths drectonal lght, the radal dstance from the eppole s the coordnate whch specfes a column wthn each slce. The value of each pxel n the rectfed shadow map gves the β coordnate of the occluder.

4 vew ray (β = 5) = proc INTEGRATE-RAY(x, y) 1 float depth = D[x, y] 2 float (α, β, 1) = TO-EPIPOLAR(x, y, depth) 3 nt node = 1 // start at the root 4 nt2 (, +) = RANGE(node) 5 float4 out = (,,,) 6 do 7 f [node, α] β < [node, α] 8 node = node 2 // recurse to left chld 9 else // fully lt or fully shadowed 1 f β < [node, α] // fully lt node 11 out = out + Γ sum[( 1, +)] Γ sum[ ] 12 end f 13 node = node + 1 // advance to next node 14 whle node s even // whle node s a left-chld 15 node = node / 2 // go to parent 16 end whle 17 end f 18 (, +) = RANGE(node) 19 whle node 1 && 1 > // whle ray extends nto node 2 return dot(b[β], out) Fgure 5: Pseudocode for ntegraton usng a - mpmap. By the tme ths functon s called, [node, α] and [node, α] contan the - mpmap, and Γ sum stores the prefx-sums of Γ. The functon RANGE returns the range of coordnates that are below the gven tree node. Fgure 4: The - mpmap (top) correspondng to a row of the rectfed shadow map n the scene from Fgure 1. To compute the scatterng ntegral for any vew ray n ths eppolar slce (mddle), we traverse the tree by thresholdng the - mpmap wth the β value of the vew ray (bottom). Nodes entrely n shadow are colored black, nodes entrely lt are colored whte, and nodes contanng vsblty boundares are grey. After the tree s constructed, for each camera ray we traverse t usng a recursve algorthm (Fgure 4, bottom), whch we effcently mplement n a pxel shader wthout recurson (see pseudocode n Fgure 5). We have a camera ray at heght β and we start from the root of the tree. When we process a tree node, f β s less than the mum, that node s completely lt and we add the ntegral over the range of that node to the output. If β s greater than the mum, the node s completely shadowed and we skp t. Otherwse, we recursvely process the two chld nodes. To avod the recurson, when we are done wth a node, nstead of poppng the call stack, we move to the next node, whch s ether the node at the next ndex locaton or ts ancestor that s a rght chld. 3.4 Textured Lghts To smulate an effect lke staned-glass wndows, t s useful to treat the lght as havng a texture. Smlarly to the shadow map, we rectfy the lght texture map, to obtan T (α, ), whch gets multpled nto the ntegrand. Because ths functon may not be smoothly varyng, we do not bake t nto I, leavng t as a separate term. Equaton (6) becomes: L(α, ) N B (β) <D(α,β) S[α,]>β Γ ()T (α, ). (7) Instead of precomputng prefx sums of Γ (), we need to precompute prefx sums of Γ ()T (α, ), whch s a lot more work because t needs to be done per α. We do ths usng O(log 2 t) pngpong passes, where t s the -resoluton of the rectfed lght texture. 3.5 Implementaton Detals Our mplementaton ncludes or optmzatons over the method presented above. To avod a potentally expensve whle loop n the shader for gong up the tree, we only go up at most one level, replacng the whle on lne 14 wth an f. Ths optmzaton has also been used for heghtfeld renderng [Tevs et al. 28]. Our method often computes the ntegral over a sngle lt segment of a ray usng multple tree nodes. To avod addng and subtractng Γ sum terms that just cancel out, we delay the update to the ntegral (lne 11 n the pseudo-code) untl the next unlt tree node we encounter or the end of the traversal. Ths optmzaton s especally useful for colored textured lght sources because we need to access 24 floats (three color channels by four sngular vectors for the start and end) nstead of eght. In our textured lght source tests, we use a lght texture whose resoluton s lower than the shadow map ( n our examples). To acheve good performance, we do both the rectfcaton and the prefx sum computaton at the lower resoluton and access the resultng texture (lne 11) usng hardware lnear nterpolaton. The error ths ntroduces s not notceable. 4 Results and Evaluaton We mplemented our method n DrectX 11 although we do not use features beyond those n DrectX 9. All our tests were done on an Intel Core 7 96 (3.2 GHz) wth an NVIDIA GeForce 48 GTX GPU at resoluton. We use four scenes for our tests: a church scene (SIBENIK), a church wth a textured lght (SIBENIKTEX), a forest scene (TREES), and an open mountan scene (TERRAIN). The number of eppolar slces used n our

5 Brute Force Equal Tme 18 ms 24 ms 7 ms 11 ms 18 ms 24 ms 7 ms 113 ms 144 ms 286 ms 43 ms 43 ms 29 ms Incremental Integraton Equal Qualty Brute Force 11 ms 31 ms Fgure 6: A comparson of our method to brute force ray marchng and ncremental ntegraton. The GPU mplementaton of ncremental ntegraton does not support colored textured lght sources and s therefore omtted. The reported tmes are for the scatterng computaton only, excludng the tme to render the shadow map, the depth map, and to compute drect lghtng. algorthm and ncremental ntegraton s scene-dependent, suffcent to guarantee that each camera ray s wthn half a pxel of a slce [Baran et al. 21]. We used an sotropc phase functon ρ = 1/4π. In tg the scatterng computaton, we do not nclude the tme necessary to render the camera depth map or the unrectfed shadow map, as these operatons are part of a standard renderng loop. 4.1 Performance Table 1 shows how long varous stages of the algorthm take for our scenes wth a 4K 4K shadow map. Fgure 6 shows a comparson aganst brute force ray marchng at equal tme and equal qualty. Markus Blleter and hs colleagues kndly provded us wth an mplementaton of ther method [21], whch we slghtly sped up (roughly by 1%) by usng a trangle strp nstead of ndvdual trangles to render the lght volume. However, ths mplementaton does not support drectonal lghts and to compare wth ther method, we used a far-away spotlght n our scenes, as shown n Fgure 7. Table 2 shows our performance and that of Blleter et al. as the shadow map resoluton vares from 1K to 4K. Our method s faster (except at 1K shadow-map resoluton on T ERRAIN) and scales better to hgh-resoluton shadow maps. Note that for complex scenes, even a 2K shadow map resoluton s nsuffcent and leads to temporal alasng, as shown n our vdeo. Our vdeo also 12.5 ms Blleter et al ms Fgure 7: Sngle scatterng n S IBENIK usng a shadow map resoluton of rendered usng our method (left) and the method from Blleter et al. [21]. has a comparson to eppolar samplng [Engelhardt and Dachsbacher 21], demonstratng that our method s sgnfcantly faster for smlar qualty. 4.2 Complexty Comparson It s nstructve to understand the number of operatons our method performs, compared to recent work. Let s be the number of slces, p be the number of pxels, and d be the number of depth samples (the resoluton of the varable, equal to the shadow map resoluton n our experments). Let l be the number of contguous lt

6 Scene Shadow Map & Drect Lghtng Shadow Map Rectfcaton Lght Texture Precomputaton Mpmap Constructon Integraton Brute Force near Eppole Total Scatterng () Total Scatterng [Baran et al. 21] Total Scatterng (Brute Force) SIBENIK (2.8 ) 113 (1 ) SIBENIKTEX (8 ) TREES (1.8 ) 286 (12 ) TERRAIN (4.1 ) 43 (6 ) Table 1: Ths table shows the breakdown of the tg of our method among varous stages for a sngle frame, as well as the tg of ncremental ntegraton and brute force ray marchng at equal qualty. The total tmes are for scatterng only and do not nclude the tme for renderng the shadow map, the camera depth map, and drect lghtng, as these operatons are part of the standard ppelne and necessary for all of the methods. When comparng to ncremental ntegraton, we also omt ts (roughly 1 ms) CUDA/Drect3D nterop overhead n the numbers above. The shadow map resoluton s All tmes are n mllseconds. 3 Sbenk 1 Trees 3 Terran Mllseconds / frame [Blleter et al. 21] SIBENIK TREES TERRAIN 1K 2K 4K 1K 2K 4K 1K 2K 4K Our method [Blleter et al. 21] Our speedup Table 2: Tgs for computng scatterng usng our method and the method of Blleter et al. [21] on versons of our scenes wth a spotlght nstead of a drectonal lght. The tgs for each scene are for three shadow map resolutons and are gven n mllseconds. For the terran scene at 4K resoluton, we used the adaptve verson of Blleter et al. s method because t was 1.8ms faster than the non-adaptve verson. segments so for a scene wth no objects, l = p, and for a scene lke TREES, l p. Let l be the number of contguous lt segments up to the frst blocker (.e., whose ntegral s actually relevant) so p l l. Our method performs O(l log d) operatons, of whch precsely 2l are accesses to Γ. The method of Blleter et al. [21] performs Θ(l) operatons, of whch 2l are computatons of the analytc scatterng model. They avod the log d tree overhead, but have to process segments that do not contrbute to the scatterng ntegral to avod z-fghtng when renderng the lght volume. Havng to process nvsble segments and large numbers of polygons for hghresoluton shadow maps offsets ther advantage from not havng to use trees to fnd lght-shadow transtons. For ncremental ntegraton, the complexty s Θ((p+sd) log d), but whle p+sd s almost always much smaller than l, that algorthm has a large workng set and relatvely poor parallelsm. Ths makes ncremental ntegraton slower on the GPU even on scenes wth very large l, lke TREES. 4.3 Dscusson and Lmtatons Lke several other methods for speedng up volumetrc shadows, we assume a homogeneous sotropc medum. The sotropy assumpton allows us to compute the SVD only once per frame: for an ansotropc medum, I becomes a functon of α. It s a smooth functon of α, so t may be possble to compute the SVD at a few values of α and nterpolate between the results, but we have not tested ths. A smlar method may work for a very smoothly varyng nonhomogeneous medum. Note that an ansotropc medum s not the same thng as an ansotropc phase functon, whch s only a functon of β and and whch our method supports (although we have not verfed ths expermentally). Reducng alasng, both spatal and temporal, s a challenge for all methods based on shadow maps. Alasng n the shadow map leads to alasng n the scatterng ntegral. If n the next frame, a polygon edge s rasterzed dfferently, that may cause a sudden jump n the calculated nscatter that manfests tself as a temporal artfact. Our vdeo demonstrates ths problem. Usng a hgh-resoluton shadow map s necessary to keep the alasng to a mum. In addton, our method ntroduces a lttle extra alasng when t rectfes the shadow map and when a camera ray s quantzed to a specfc eppolar slce. Ths alasng s relatvely or, but can be seen on close exaaton. The alasng n ncremental ntegraton s strctly greater than n our method: addtonal alasng s ntroduced by the camera rectfcaton and unrectfcaton. Incremental ntegraton also supports reducng the rectfed shadow map resoluton and antalasng n the sprt of deep shadow maps [Lokovc and Veach 2]. Because our method scales much better to hgher resoluton shadow maps, we have not had to do ths. Unlke n the method of Blleter et al., our method s rectfed shadow map depends on the vew, and not only on the scene. Ther method s therefore much better suted than ours for a statc scene wth a fxed lght: t wll produce no temporal alasng because the shadow map s fxed and the number of trangles n the shadow volume can be greatly reduced as a precomputaton. Usng the SVD and precomputng texture prefx sums can also replace the analytc formula n Blleter et al. s method to enable t to support textured lghts. We have not explored the effect ths would have on ther performance. Conversely, for an untextured lght, nstead of usng an SVD, we could use a (sem-)analytcal model n our method to compute the ntegrals over lt segments of the camera rays.

7 5 Conclusons We have presented a real-tme algorthm for renderng volumetrc shadows n sngle-scatterng meda. Overall, we acheve a sgnfcant speedup or better qualty compared to the state of the art. Our key nsght was to apply a smple acceleraton structure to ntersect camera rays wth the shadow map, whch we treated as a heght feld. We furthermore used eppolar rectfcaton of the shadow map to reduce the problem of ntersectng wth a 2D heght feld to ntersectng wth 1D heght felds. Our man contrbuton was usng a 1D - mpmap to fnd the lt segments for all pxels n the mage. Ths data structure sacrfces the worst-case guarantees provded by Baran et al. [21], but ts smplcty allows us to better explot the parallel processng capabltes of the GPU by processng all camera rays smultaneously. We showed that our technque scales well to large shadow map resolutons and, due to good use of the GPU, even to scenaros wth hghly complex vsblty functons. The resultng algorthm s smple to mplement and only requres features avalable on current game consoles. Acknowledgements We would lke to thank Markus Blleter for provdng us wth ther code to use for comparsons. We would also lke to thank Thomas Engelhardt and Carsten Dachsbacher for provdng us wth ther prototype. Thanks to Derek Nowrouzezahra for helpful feedback. Jaakko Lehtnen contrbuted support code and made TERRAIN and TREES. SIBENIK was made by Marko Dabrovc. References BARAN, I., CHEN, J., RAGAN-KELLEY, J., DURAND, F., AND LEHTINEN, J. 21. A herarchcal volumetrc shadow algorthm for sngle scatterng. ACM Transactons on Graphcs 29, 5. to appear. BILLETER, M., SINTORN, E., AND ASSARSSON, U. 21. Real tme volumetrc shadows usng polygonal lght volumes. In Proc. Hgh Performance Graphcs 21. BLINN, J. F Lght reflecton functons for smulaton of clouds and dusty surfaces CARR, N. A., HOBEROCK, J., CRANE, K., AND HART, J. C. 26. Fast gpu ray tracng of dynamc meshes usng geometry mages. In Graphcs Interface 26, DOBASHI, Y., YAMAMOTO, T., AND NISHITA, T. 2. Interactve renderng method for dsplayng shafts of lght. In Proc. Pacfc Graphcs, IEEE Computer Socety, Washngton, DC, USA, 31. DOBASHI, Y., YAMAMOTO, T., AND NISHITA, T. 22. Interactve renderng of atmospherc scatterng effects usng graphcs hardware. In Proc. Graphcs hardware, ENGELHARDT, T., AND DACHSBACHER, C. 21. Eppolar samplng for shadows and crepuscular rays n partcpatng meda wth sngle scatterng. In Proc. 21 ACM SIGGRAPH symposum on Interactve 3D Graphcs and Games, ACM, GUENNEBAUD, G., BARTHE, L., AND PAULIN, M. 26. Realtme soft shadow mappng by backprojecton. In Eurographcs Symposum on Renderng (EGSR), Ncosa, Cyprus, 26/6/26-28/6/26, Eurographcs, HU, W., DONG, Z., IHRKE, I., GROSCH, T., YUAN, G., AND SEIDEL, H.-P. 21. Interactve volume caustcs n snglescatterng meda. In I3D 1: Proceedngs of the 21 symposum on Interactve 3D graphcs and games, ACM, IMAGIRE, T., JOHAN, H., TAMURA, N., AND NISHITA, T. 27. Ant-alased and real-tme renderng of scenes wth lght scatterng effects. The Vsual Computer 23, 9 11 (Sept.), JAROSZ, W., ZWICKER, M., AND JENSEN, H. W. 28. The beam radance estmate for volumetrc photon mappng. Computer Graphcs Forum 27, 2 (Apr.), JENSEN, H. W., AND CHRISTENSEN, P. H Effcent smulaton of lght transport n scenes wth partcpatng meda usng photon maps. In Proc. SIGGRAPH 98, LOKOVIC, T., AND VEACH, E. 2. Deep shadow maps. In Proceedngs of ACM SIGGRAPH 2, Computer Graphcs Proceedngs, Annual Conference Seres, MASTIN, G. A., WATTERBERG, P. A., AND MAREDA, J. F Fourer synthess of ocean scenes. IEEE Computer Graphcs & Applcatons 7, 3 (Mar.), MAX, N. L Atmospherc lluaton and shadows. In Computer Graphcs (Proc. SIGGRAPH 86), ACM, New York, NY, USA, MUSGRAVE, F. K., KOLB, C. E., AND MACE, R. S The synthess and renderng of eroded fractal terrans. In Computer Graphcs (Proceedngs of SIGGRAPH 89), NICHOLS, G., AND WYMAN, C. 29. Multresoluton splattng for ndrect lluaton. In ACM Symposum on Interactve 3D Graphcs and Games, ACM, PEGORARO, V., AND PARKER, S. 29. An analytcal soluton to sngle scatterng n homogeneous partcpatng meda. Computer Graphcs Forum 28, 2. PEGORARO, V., SCHOTT, M., AND PARKER, S. G. 21. A closed-form soluton to sngle scatterng for general phase functons and lght dstrbutons. Computer Graphcs Forum 29, 4, SUN, B., RAMAMOORTHI, R., NARASIMHAN, S., AND NAYAR, S. 25. A practcal analytc sngle scatterng model for real tme renderng. ACM Trans. Graph. 24, 3. SUN, X., ZHOU, K., LIN, S., AND GUO, B. 21. Lne space gatherng for sngle scatterng n large scenes. ACM Trans. Graph. 29, 4. TEVS, A., IHRKE, I., AND SEIDEL, H.-P. 28. Maxmum mpmaps for fast, accurate, and scalable dynamc heght feld renderng. In Symposum on Interactve 3D Graphcs and Games (3D 8), WYMAN, C., AND RAMSEY, S. 28. Interactve volumetrc shadows n partcpatng meda wth sngle-scatterng. In Proc. IEEE Symposum on Interactve Ray Tracng,

Real-Time Volumetric Shadows using 1D Min-Max Mipmaps

Real-Time Volumetric Shadows using 1D Min-Max Mipmaps Real-Time Volumetric Shadows using D Min-Max Mipmaps Jiawen Chen Ilya Baran2 ys ht ra lig Disney Research Zu rich Wojciech Jarosz2 rectified view direction rectified light direction ays view r 2 MIT CSAIL

More information

Some Tutorial about the Project. Computer Graphics

Some Tutorial about the Project. Computer Graphics Some Tutoral about the Project Lecture 6 Rastersaton, Antalasng, Texture Mappng, I have already covered all the topcs needed to fnsh the 1 st practcal Today, I wll brefly explan how to start workng on

More information

Discussion. History and Outline. Smoothness of Indirect Lighting. Irradiance Caching. Irradiance Calculation. Advanced Computer Graphics (Fall 2009)

Discussion. History and Outline. Smoothness of Indirect Lighting. Irradiance Caching. Irradiance Calculation. Advanced Computer Graphics (Fall 2009) Advanced Computer Graphcs (Fall 2009 CS 29, Renderng Lecture 6: Recent Advances n Monte Carlo Offlne Renderng Rav Ramamoorth http://nst.eecs.berkeley.edu/~cs29-13/fa09 Dscusson Problems dfferent over years.

More information

Discussion. History and Outline. Smoothness of Indirect Lighting. Irradiance Calculation. Irradiance Caching. Advanced Computer Graphics (Fall 2009)

Discussion. History and Outline. Smoothness of Indirect Lighting. Irradiance Calculation. Irradiance Caching. Advanced Computer Graphics (Fall 2009) Advanced Computer Graphcs (Fall 2009 CS 283, Lecture 13: Recent Advances n Monte Carlo Offlne Renderng Rav Ramamoorth http://nst.eecs.berkeley.edu/~cs283/fa10 Dscusson Problems dfferent over years. Intally,

More information

Robust Soft Shadow Mapping with Depth Peeling

Robust Soft Shadow Mapping with Depth Peeling 1 Robust Soft Shadow Mappng wth Depth Peelng Lous Bavol, Steven P. Callahan, Cláudo T. Slva UUSCI-2006-028 Scentfc Computng and Imagng Insttute Unversty of Utah Salt Lake Cty, UT 84112 USA August 11, 2006

More information

Assignment # 2. Farrukh Jabeen Algorithms 510 Assignment #2 Due Date: June 15, 2009.

Assignment # 2. Farrukh Jabeen Algorithms 510 Assignment #2 Due Date: June 15, 2009. Farrukh Jabeen Algorthms 51 Assgnment #2 Due Date: June 15, 29. Assgnment # 2 Chapter 3 Dscrete Fourer Transforms Implement the FFT for the DFT. Descrbed n sectons 3.1 and 3.2. Delverables: 1. Concse descrpton

More information

Monte Carlo Rendering

Monte Carlo Rendering Monte Carlo Renderng Last Tme? Modern Graphcs Hardware Cg Programmng Language Gouraud Shadng vs. Phong Normal Interpolaton Bump, Dsplacement, & Envronment Mappng Cg Examples G P R T F P D Today Does Ray

More information

Robust Soft Shadow Mapping with Backprojection and Depth Peeling

Robust Soft Shadow Mapping with Backprojection and Depth Peeling paper 2008/3/20 15:47 page 19 #1 Vol. 13, No. 1: 19 29 Robust Soft Shadow Mappng wth Backprojecton and Depth Peelng Lous Bavol, Steven P. Callahan, and Claudo T. Slva Scentfc Computng and Imagng Insttute,

More information

High resolution 3D Tau-p transform by matching pursuit Weiping Cao* and Warren S. Ross, Shearwater GeoServices

High resolution 3D Tau-p transform by matching pursuit Weiping Cao* and Warren S. Ross, Shearwater GeoServices Hgh resoluton 3D Tau-p transform by matchng pursut Wepng Cao* and Warren S. Ross, Shearwater GeoServces Summary The 3D Tau-p transform s of vtal sgnfcance for processng sesmc data acqured wth modern wde

More information

Improvement of Spatial Resolution Using BlockMatching Based Motion Estimation and Frame. Integration

Improvement of Spatial Resolution Using BlockMatching Based Motion Estimation and Frame. Integration Improvement of Spatal Resoluton Usng BlockMatchng Based Moton Estmaton and Frame Integraton Danya Suga and Takayuk Hamamoto Graduate School of Engneerng, Tokyo Unversty of Scence, 6-3-1, Nuku, Katsuska-ku,

More information

Parallelism for Nested Loops with Non-uniform and Flow Dependences

Parallelism for Nested Loops with Non-uniform and Flow Dependences Parallelsm for Nested Loops wth Non-unform and Flow Dependences Sam-Jn Jeong Dept. of Informaton & Communcaton Engneerng, Cheonan Unversty, 5, Anseo-dong, Cheonan, Chungnam, 330-80, Korea. seong@cheonan.ac.kr

More information

Scan Conversion & Shading

Scan Conversion & Shading Scan Converson & Shadng Thomas Funkhouser Prnceton Unversty C0S 426, Fall 1999 3D Renderng Ppelne (for drect llumnaton) 3D Prmtves 3D Modelng Coordnates Modelng Transformaton 3D World Coordnates Lghtng

More information

Chapter 6 Programmng the fnte element method Inow turn to the man subject of ths book: The mplementaton of the fnte element algorthm n computer programs. In order to make my dscusson as straghtforward

More information

THE PULL-PUSH ALGORITHM REVISITED

THE PULL-PUSH ALGORITHM REVISITED THE PULL-PUSH ALGORITHM REVISITED Improvements, Computaton of Pont Denstes, and GPU Implementaton Martn Kraus Computer Graphcs & Vsualzaton Group, Technsche Unverstät München, Boltzmannstraße 3, 85748

More information

Wavefront Reconstructor

Wavefront Reconstructor A Dstrbuted Smplex B-Splne Based Wavefront Reconstructor Coen de Vsser and Mchel Verhaegen 14-12-201212 2012 Delft Unversty of Technology Contents Introducton Wavefront reconstructon usng Smplex B-Splnes

More information

Interactive Rendering of Translucent Objects

Interactive Rendering of Translucent Objects Interactve Renderng of Translucent Objects Hendrk Lensch Mchael Goesele Phlppe Bekaert Jan Kautz Marcus Magnor Jochen Lang Hans-Peter Sedel 2003 Presented By: Mark Rubelmann Outlne Motvaton Background

More information

Monte Carlo 1: Integration

Monte Carlo 1: Integration Monte Carlo : Integraton Prevous lecture: Analytcal llumnaton formula Ths lecture: Monte Carlo Integraton Revew random varables and probablty Samplng from dstrbutons Samplng from shapes Numercal calculaton

More information

Surface Mapping One. CS7GV3 Real-time Rendering

Surface Mapping One. CS7GV3 Real-time Rendering Surface Mappng One CS7GV3 Real-tme Renderng Textures Add complexty to scenes wthout addtonal geometry Textures store ths nformaton, can be any dmenson Many dfferent types: Dffuse most common Ambent, specular,

More information

Scan Conversion & Shading

Scan Conversion & Shading 1 3D Renderng Ppelne (for drect llumnaton) 2 Scan Converson & Shadng Adam Fnkelsten Prnceton Unversty C0S 426, Fall 2001 3DPrmtves 3D Modelng Coordnates Modelng Transformaton 3D World Coordnates Lghtng

More information

Complex Filtering and Integration via Sampling

Complex Filtering and Integration via Sampling Overvew Complex Flterng and Integraton va Samplng Sgnal processng Sample then flter (remove alases) then resample onunform samplng: jtterng and Posson dsk Statstcs Monte Carlo ntegraton and probablty theory

More information

Compiler Design. Spring Register Allocation. Sample Exercises and Solutions. Prof. Pedro C. Diniz

Compiler Design. Spring Register Allocation. Sample Exercises and Solutions. Prof. Pedro C. Diniz Compler Desgn Sprng 2014 Regster Allocaton Sample Exercses and Solutons Prof. Pedro C. Dnz USC / Informaton Scences Insttute 4676 Admralty Way, Sute 1001 Marna del Rey, Calforna 90292 pedro@s.edu Regster

More information

Real-time. Shading of Folded Surfaces

Real-time. Shading of Folded Surfaces Rhensche Fredrch-Wlhelms-Unverstät Bonn Insttute of Computer Scence II Computer Graphcs Real-tme Shadng of Folded Surfaces B. Ganster, R. Klen, M. Sattler, R. Sarlette Motvaton http://www www.vrtualtryon.de

More information

Monte Carlo Integration

Monte Carlo Integration Introducton Monte Carlo Integraton Dgtal Image Synthess Yung-Yu Chuang 11/9/005 The ntegral equatons generally don t have analytc solutons, so we must turn to numercal methods. L ( o p,ωo) = L e ( p,ωo)

More information

Computer Graphics. Jeng-Sheng Yeh 葉正聖 Ming Chuan University (modified from Bing-Yu Chen s slides)

Computer Graphics. Jeng-Sheng Yeh 葉正聖 Ming Chuan University (modified from Bing-Yu Chen s slides) Computer Graphcs Jeng-Sheng Yeh 葉正聖 Mng Chuan Unversty (modfed from Bng-Yu Chen s sldes) llumnaton and Shadng llumnaton Models Shadng Models for Polygons Surface Detal Shadows Transparency Global llumnaton

More information

S1 Note. Basis functions.

S1 Note. Basis functions. S1 Note. Bass functons. Contents Types of bass functons...1 The Fourer bass...2 B-splne bass...3 Power and type I error rates wth dfferent numbers of bass functons...4 Table S1. Smulaton results of type

More information

Color in OpenGL Polygonal Shading Light Source in OpenGL Material Properties Normal Vectors Phong model

Color in OpenGL Polygonal Shading Light Source in OpenGL Material Properties Normal Vectors Phong model Color n OpenGL Polygonal Shadng Lght Source n OpenGL Materal Propertes Normal Vectors Phong model 2 We know how to rasterze - Gven a 3D trangle and a 3D vewpont, we know whch pxels represent the trangle

More information

Content Based Image Retrieval Using 2-D Discrete Wavelet with Texture Feature with Different Classifiers

Content Based Image Retrieval Using 2-D Discrete Wavelet with Texture Feature with Different Classifiers IOSR Journal of Electroncs and Communcaton Engneerng (IOSR-JECE) e-issn: 78-834,p- ISSN: 78-8735.Volume 9, Issue, Ver. IV (Mar - Apr. 04), PP 0-07 Content Based Image Retreval Usng -D Dscrete Wavelet wth

More information

A Fast Visual Tracking Algorithm Based on Circle Pixels Matching

A Fast Visual Tracking Algorithm Based on Circle Pixels Matching A Fast Vsual Trackng Algorthm Based on Crcle Pxels Matchng Zhqang Hou hou_zhq@sohu.com Chongzhao Han czhan@mal.xjtu.edu.cn Ln Zheng Abstract: A fast vsual trackng algorthm based on crcle pxels matchng

More information

Plane Sampling for Light Paths from the Environment Map

Plane Sampling for Light Paths from the Environment Map jgt 2009/5/27 16:42 page 1 #1 Vol. [VOL], No. [ISS]: 1 6 Plane Samplng for Lght Paths from the Envronment Map Holger Dammertz and Johannes Hanka Ulm Unversty Abstract. We present a method to start lght

More information

The Codesign Challenge

The Codesign Challenge ECE 4530 Codesgn Challenge Fall 2007 Hardware/Software Codesgn The Codesgn Challenge Objectves In the codesgn challenge, your task s to accelerate a gven software reference mplementaton as fast as possble.

More information

Range images. Range image registration. Examples of sampling patterns. Range images and range surfaces

Range images. Range image registration. Examples of sampling patterns. Range images and range surfaces Range mages For many structured lght scanners, the range data forms a hghly regular pattern known as a range mage. he samplng pattern s determned by the specfc scanner. Range mage regstraton 1 Examples

More information

Simplification of 3D Meshes

Simplification of 3D Meshes Smplfcaton of 3D Meshes Addy Ngan /4/00 Outlne Motvaton Taxonomy of smplfcaton methods Hoppe et al, Mesh optmzaton Hoppe, Progressve meshes Smplfcaton of 3D Meshes 1 Motvaton Hgh detaled meshes becomng

More information

R s s f. m y s. SPH3UW Unit 7.3 Spherical Concave Mirrors Page 1 of 12. Notes

R s s f. m y s. SPH3UW Unit 7.3 Spherical Concave Mirrors Page 1 of 12. Notes SPH3UW Unt 7.3 Sphercal Concave Mrrors Page 1 of 1 Notes Physcs Tool box Concave Mrror If the reflectng surface takes place on the nner surface of the sphercal shape so that the centre of the mrror bulges

More information

A mathematical programming approach to the analysis, design and scheduling of offshore oilfields

A mathematical programming approach to the analysis, design and scheduling of offshore oilfields 17 th European Symposum on Computer Aded Process Engneerng ESCAPE17 V. Plesu and P.S. Agach (Edtors) 2007 Elsever B.V. All rghts reserved. 1 A mathematcal programmng approach to the analyss, desgn and

More information

Modeling, Manipulating, and Visualizing Continuous Volumetric Data: A Novel Spline-based Approach

Modeling, Manipulating, and Visualizing Continuous Volumetric Data: A Novel Spline-based Approach Modelng, Manpulatng, and Vsualzng Contnuous Volumetrc Data: A Novel Splne-based Approach Jng Hua Center for Vsual Computng, Department of Computer Scence SUNY at Stony Brook Talk Outlne Introducton and

More information

SLAM Summer School 2006 Practical 2: SLAM using Monocular Vision

SLAM Summer School 2006 Practical 2: SLAM using Monocular Vision SLAM Summer School 2006 Practcal 2: SLAM usng Monocular Vson Javer Cvera, Unversty of Zaragoza Andrew J. Davson, Imperal College London J.M.M Montel, Unversty of Zaragoza. josemar@unzar.es, jcvera@unzar.es,

More information

Monte Carlo 1: Integration

Monte Carlo 1: Integration Monte Carlo : Integraton Prevous lecture: Analytcal llumnaton formula Ths lecture: Monte Carlo Integraton Revew random varables and probablty Samplng from dstrbutons Samplng from shapes Numercal calculaton

More information

Array transposition in CUDA shared memory

Array transposition in CUDA shared memory Array transposton n CUDA shared memory Mke Gles February 19, 2014 Abstract Ths short note s nspred by some code wrtten by Jeremy Appleyard for the transposton of data through shared memory. I had some

More information

User Authentication Based On Behavioral Mouse Dynamics Biometrics

User Authentication Based On Behavioral Mouse Dynamics Biometrics User Authentcaton Based On Behavoral Mouse Dynamcs Bometrcs Chee-Hyung Yoon Danel Donghyun Km Department of Computer Scence Department of Computer Scence Stanford Unversty Stanford Unversty Stanford, CA

More information

Programming in Fortran 90 : 2017/2018

Programming in Fortran 90 : 2017/2018 Programmng n Fortran 90 : 2017/2018 Programmng n Fortran 90 : 2017/2018 Exercse 1 : Evaluaton of functon dependng on nput Wrte a program who evaluate the functon f (x,y) for any two user specfed values

More information

Fast, Arbitrary BRDF Shading for Low-Frequency Lighting Using Spherical Harmonics

Fast, Arbitrary BRDF Shading for Low-Frequency Lighting Using Spherical Harmonics Thrteenth Eurographcs Workshop on Renderng (2002) P. Debevec and S. Gbson (Edtors) Fast, Arbtrary BRDF Shadng for Low-Frequency Lghtng Usng Sphercal Harmoncs Jan Kautz 1, Peter-Pke Sloan 2 and John Snyder

More information

Helsinki University Of Technology, Systems Analysis Laboratory Mat Independent research projects in applied mathematics (3 cr)

Helsinki University Of Technology, Systems Analysis Laboratory Mat Independent research projects in applied mathematics (3 cr) Helsnk Unversty Of Technology, Systems Analyss Laboratory Mat-2.08 Independent research projects n appled mathematcs (3 cr) "! #$&% Antt Laukkanen 506 R ajlaukka@cc.hut.f 2 Introducton...3 2 Multattrbute

More information

Mathematics 256 a course in differential equations for engineering students

Mathematics 256 a course in differential equations for engineering students Mathematcs 56 a course n dfferental equatons for engneerng students Chapter 5. More effcent methods of numercal soluton Euler s method s qute neffcent. Because the error s essentally proportonal to the

More information

High-Boost Mesh Filtering for 3-D Shape Enhancement

High-Boost Mesh Filtering for 3-D Shape Enhancement Hgh-Boost Mesh Flterng for 3-D Shape Enhancement Hrokazu Yagou Λ Alexander Belyaev y Damng We z Λ y z ; ; Shape Modelng Laboratory, Unversty of Azu, Azu-Wakamatsu 965-8580 Japan y Computer Graphcs Group,

More information

3D vector computer graphics

3D vector computer graphics 3D vector computer graphcs Paolo Varagnolo: freelance engneer Padova Aprl 2016 Prvate Practce ----------------------------------- 1. Introducton Vector 3D model representaton n computer graphcs requres

More information

CS 534: Computer Vision Model Fitting

CS 534: Computer Vision Model Fitting CS 534: Computer Vson Model Fttng Sprng 004 Ahmed Elgammal Dept of Computer Scence CS 534 Model Fttng - 1 Outlnes Model fttng s mportant Least-squares fttng Maxmum lkelhood estmaton MAP estmaton Robust

More information

Complex Numbers. Now we also saw that if a and b were both positive then ab = a b. For a second let s forget that restriction and do the following.

Complex Numbers. Now we also saw that if a and b were both positive then ab = a b. For a second let s forget that restriction and do the following. Complex Numbers The last topc n ths secton s not really related to most of what we ve done n ths chapter, although t s somewhat related to the radcals secton as we wll see. We also won t need the materal

More information

An Optimal Algorithm for Prufer Codes *

An Optimal Algorithm for Prufer Codes * J. Software Engneerng & Applcatons, 2009, 2: 111-115 do:10.4236/jsea.2009.22016 Publshed Onlne July 2009 (www.scrp.org/journal/jsea) An Optmal Algorthm for Prufer Codes * Xaodong Wang 1, 2, Le Wang 3,

More information

Sorting Review. Sorting. Comparison Sorting. CSE 680 Prof. Roger Crawfis. Assumptions

Sorting Review. Sorting. Comparison Sorting. CSE 680 Prof. Roger Crawfis. Assumptions Sortng Revew Introducton to Algorthms Qucksort CSE 680 Prof. Roger Crawfs Inserton Sort T(n) = Θ(n 2 ) In-place Merge Sort T(n) = Θ(n lg(n)) Not n-place Selecton Sort (from homework) T(n) = Θ(n 2 ) In-place

More information

Parallel matrix-vector multiplication

Parallel matrix-vector multiplication Appendx A Parallel matrx-vector multplcaton The reduced transton matrx of the three-dmensonal cage model for gel electrophoress, descrbed n secton 3.2, becomes excessvely large for polymer lengths more

More information

Efficient Distributed File System (EDFS)

Efficient Distributed File System (EDFS) Effcent Dstrbuted Fle System (EDFS) (Sem-Centralzed) Debessay(Debsh) Fesehaye, Rahul Malk & Klara Naherstedt Unversty of Illnos-Urbana Champagn Contents Problem Statement, Related Work, EDFS Desgn Rate

More information

y and the total sum of

y and the total sum of Lnear regresson Testng for non-lnearty In analytcal chemstry, lnear regresson s commonly used n the constructon of calbraton functons requred for analytcal technques such as gas chromatography, atomc absorpton

More information

Accounting for the Use of Different Length Scale Factors in x, y and z Directions

Accounting for the Use of Different Length Scale Factors in x, y and z Directions 1 Accountng for the Use of Dfferent Length Scale Factors n x, y and z Drectons Taha Soch (taha.soch@kcl.ac.uk) Imagng Scences & Bomedcal Engneerng, Kng s College London, The Rayne Insttute, St Thomas Hosptal,

More information

Problem Definitions and Evaluation Criteria for Computational Expensive Optimization

Problem Definitions and Evaluation Criteria for Computational Expensive Optimization Problem efntons and Evaluaton Crtera for Computatonal Expensve Optmzaton B. Lu 1, Q. Chen and Q. Zhang 3, J. J. Lang 4, P. N. Suganthan, B. Y. Qu 6 1 epartment of Computng, Glyndwr Unversty, UK Faclty

More information

Support Vector Machines

Support Vector Machines /9/207 MIST.6060 Busness Intellgence and Data Mnng What are Support Vector Machnes? Support Vector Machnes Support Vector Machnes (SVMs) are supervsed learnng technques that analyze data and recognze patterns.

More information

A Fast Content-Based Multimedia Retrieval Technique Using Compressed Data

A Fast Content-Based Multimedia Retrieval Technique Using Compressed Data A Fast Content-Based Multmeda Retreval Technque Usng Compressed Data Borko Furht and Pornvt Saksobhavvat NSF Multmeda Laboratory Florda Atlantc Unversty, Boca Raton, Florda 3343 ABSTRACT In ths paper,

More information

Diffuse and specular interreflections with classical, deterministic ray tracing

Diffuse and specular interreflections with classical, deterministic ray tracing Dffuse and specular nterreflectons wth classcal, determnstc ray tracng Gergely Vass gergely_vass@sggraph.org Dept. of Control Engneerng and Informaton Technology Techncal Unversty of Budapest Budapest,

More information

CSCI 104 Sorting Algorithms. Mark Redekopp David Kempe

CSCI 104 Sorting Algorithms. Mark Redekopp David Kempe CSCI 104 Sortng Algorthms Mark Redekopp Davd Kempe Algorthm Effcency SORTING 2 Sortng If we have an unordered lst, sequental search becomes our only choce If we wll perform a lot of searches t may be benefcal

More information

Local Quaternary Patterns and Feature Local Quaternary Patterns

Local Quaternary Patterns and Feature Local Quaternary Patterns Local Quaternary Patterns and Feature Local Quaternary Patterns Jayu Gu and Chengjun Lu The Department of Computer Scence, New Jersey Insttute of Technology, Newark, NJ 0102, USA Abstract - Ths paper presents

More information

Multi-Resolution Geometric Fusion

Multi-Resolution Geometric Fusion Internatonal Conference on Recent Advances n 3-D Dgtal Imagng and Modellng, Ottawa, Canada May 12 15, 1997 Mult-Resoluton Geometrc Fuson Adran Hlton and John Illngworth Centre for Vson, Speech and Sgnal

More information

Computer Animation and Visualisation. Lecture 4. Rigging / Skinning

Computer Animation and Visualisation. Lecture 4. Rigging / Skinning Computer Anmaton and Vsualsaton Lecture 4. Rggng / Sknnng Taku Komura Overvew Sknnng / Rggng Background knowledge Lnear Blendng How to decde weghts? Example-based Method Anatomcal models Sknnng Assume

More information

Global Illumination: Radiosity

Global Illumination: Radiosity Last Tme? Global Illumnaton: Radosty Planar Shadows Shadow Maps An early applcaton of radatve heat transfer n stables. Projectve Texture Shadows (Texture Mappng) Shadow Volumes (Stencl Buffer) Schedule

More information

Subspace clustering. Clustering. Fundamental to all clustering techniques is the choice of distance measure between data points;

Subspace clustering. Clustering. Fundamental to all clustering techniques is the choice of distance measure between data points; Subspace clusterng Clusterng Fundamental to all clusterng technques s the choce of dstance measure between data ponts; D q ( ) ( ) 2 x x = x x, j k = 1 k jk Squared Eucldean dstance Assumpton: All features

More information

A Binarization Algorithm specialized on Document Images and Photos

A Binarization Algorithm specialized on Document Images and Photos A Bnarzaton Algorthm specalzed on Document mages and Photos Ergna Kavalleratou Dept. of nformaton and Communcaton Systems Engneerng Unversty of the Aegean kavalleratou@aegean.gr Abstract n ths paper, a

More information

Lecture #15 Lecture Notes

Lecture #15 Lecture Notes Lecture #15 Lecture Notes The ocean water column s very much a 3-D spatal entt and we need to represent that structure n an economcal way to deal wth t n calculatons. We wll dscuss one way to do so, emprcal

More information

Wishing you all a Total Quality New Year!

Wishing you all a Total Quality New Year! Total Qualty Management and Sx Sgma Post Graduate Program 214-15 Sesson 4 Vnay Kumar Kalakband Assstant Professor Operatons & Systems Area 1 Wshng you all a Total Qualty New Year! Hope you acheve Sx sgma

More information

A MOVING MESH APPROACH FOR SIMULATION BUDGET ALLOCATION ON CONTINUOUS DOMAINS

A MOVING MESH APPROACH FOR SIMULATION BUDGET ALLOCATION ON CONTINUOUS DOMAINS Proceedngs of the Wnter Smulaton Conference M E Kuhl, N M Steger, F B Armstrong, and J A Jones, eds A MOVING MESH APPROACH FOR SIMULATION BUDGET ALLOCATION ON CONTINUOUS DOMAINS Mark W Brantley Chun-Hung

More information

Steps for Computing the Dissimilarity, Entropy, Herfindahl-Hirschman and. Accessibility (Gravity with Competition) Indices

Steps for Computing the Dissimilarity, Entropy, Herfindahl-Hirschman and. Accessibility (Gravity with Competition) Indices Steps for Computng the Dssmlarty, Entropy, Herfndahl-Hrschman and Accessblty (Gravty wth Competton) Indces I. Dssmlarty Index Measurement: The followng formula can be used to measure the evenness between

More information

Lecture 5: Multilayer Perceptrons

Lecture 5: Multilayer Perceptrons Lecture 5: Multlayer Perceptrons Roger Grosse 1 Introducton So far, we ve only talked about lnear models: lnear regresson and lnear bnary classfers. We noted that there are functons that can t be represented

More information

2x x l. Module 3: Element Properties Lecture 4: Lagrange and Serendipity Elements

2x x l. Module 3: Element Properties Lecture 4: Lagrange and Serendipity Elements Module 3: Element Propertes Lecture : Lagrange and Serendpty Elements 5 In last lecture note, the nterpolaton functons are derved on the bass of assumed polynomal from Pascal s trangle for the fled varable.

More information

Reducing Frame Rate for Object Tracking

Reducing Frame Rate for Object Tracking Reducng Frame Rate for Object Trackng Pavel Korshunov 1 and We Tsang Oo 2 1 Natonal Unversty of Sngapore, Sngapore 11977, pavelkor@comp.nus.edu.sg 2 Natonal Unversty of Sngapore, Sngapore 11977, oowt@comp.nus.edu.sg

More information

A fast algorithm for color image segmentation

A fast algorithm for color image segmentation Unersty of Wollongong Research Onlne Faculty of Informatcs - Papers (Arche) Faculty of Engneerng and Informaton Scences 006 A fast algorthm for color mage segmentaton L. Dong Unersty of Wollongong, lju@uow.edu.au

More information

Accelerating X-Ray data collection using Pyramid Beam ray casting geometries

Accelerating X-Ray data collection using Pyramid Beam ray casting geometries Acceleratng X-Ray data collecton usng Pyramd Beam ray castng geometres Amr Averbuch Guy Lfchtz Y. Shkolnsky 3 School of Computer Scence Department of Appled Mathematcs, School of Mathematcal Scences Tel

More information

CE 221 Data Structures and Algorithms

CE 221 Data Structures and Algorithms CE 1 ata Structures and Algorthms Chapter 4: Trees BST Text: Read Wess, 4.3 Izmr Unversty of Economcs 1 The Search Tree AT Bnary Search Trees An mportant applcaton of bnary trees s n searchng. Let us assume

More information

Sequential search. Building Java Programs Chapter 13. Sequential search. Sequential search

Sequential search. Building Java Programs Chapter 13. Sequential search. Sequential search Sequental search Buldng Java Programs Chapter 13 Searchng and Sortng sequental search: Locates a target value n an array/lst by examnng each element from start to fnsh. How many elements wll t need to

More information

Line Clipping by Convex and Nonconvex Polyhedra in E 3

Line Clipping by Convex and Nonconvex Polyhedra in E 3 Lne Clppng by Convex and Nonconvex Polyhedra n E 3 Václav Skala 1 Department of Informatcs and Computer Scence Unversty of West Bohema Unverztní 22, Box 314, 306 14 Plzeò Czech Republc e-mal: skala@kv.zcu.cz

More information

The Greedy Method. Outline and Reading. Change Money Problem. Greedy Algorithms. Applications of the Greedy Strategy. The Greedy Method Technique

The Greedy Method. Outline and Reading. Change Money Problem. Greedy Algorithms. Applications of the Greedy Strategy. The Greedy Method Technique //00 :0 AM Outlne and Readng The Greedy Method The Greedy Method Technque (secton.) Fractonal Knapsack Problem (secton..) Task Schedulng (secton..) Mnmum Spannng Trees (secton.) Change Money Problem Greedy

More information

Cluster Analysis of Electrical Behavior

Cluster Analysis of Electrical Behavior Journal of Computer and Communcatons, 205, 3, 88-93 Publshed Onlne May 205 n ScRes. http://www.scrp.org/ournal/cc http://dx.do.org/0.4236/cc.205.350 Cluster Analyss of Electrcal Behavor Ln Lu Ln Lu, School

More information

Analysis of Continuous Beams in General

Analysis of Continuous Beams in General Analyss of Contnuous Beams n General Contnuous beams consdered here are prsmatc, rgdly connected to each beam segment and supported at varous ponts along the beam. onts are selected at ponts of support,

More information

Real-time Motion Capture System Using One Video Camera Based on Color and Edge Distribution

Real-time Motion Capture System Using One Video Camera Based on Color and Edge Distribution Real-tme Moton Capture System Usng One Vdeo Camera Based on Color and Edge Dstrbuton YOSHIAKI AKAZAWA, YOSHIHIRO OKADA, AND KOICHI NIIJIMA Graduate School of Informaton Scence and Electrcal Engneerng,

More information

6.854 Advanced Algorithms Petar Maymounkov Problem Set 11 (November 23, 2005) With: Benjamin Rossman, Oren Weimann, and Pouya Kheradpour

6.854 Advanced Algorithms Petar Maymounkov Problem Set 11 (November 23, 2005) With: Benjamin Rossman, Oren Weimann, and Pouya Kheradpour 6.854 Advanced Algorthms Petar Maymounkov Problem Set 11 (November 23, 2005) Wth: Benjamn Rossman, Oren Wemann, and Pouya Kheradpour Problem 1. We reduce vertex cover to MAX-SAT wth weghts, such that the

More information

Course Introduction. Algorithm 8/31/2017. COSC 320 Advanced Data Structures and Algorithms. COSC 320 Advanced Data Structures and Algorithms

Course Introduction. Algorithm 8/31/2017. COSC 320 Advanced Data Structures and Algorithms. COSC 320 Advanced Data Structures and Algorithms Course Introducton Course Topcs Exams, abs, Proects A quc loo at a few algorthms 1 Advanced Data Structures and Algorthms Descrpton: We are gong to dscuss algorthm complexty analyss, algorthm desgn technques

More information

Load Balancing for Hex-Cell Interconnection Network

Load Balancing for Hex-Cell Interconnection Network Int. J. Communcatons, Network and System Scences,,, - Publshed Onlne Aprl n ScRes. http://www.scrp.org/journal/jcns http://dx.do.org/./jcns.. Load Balancng for Hex-Cell Interconnecton Network Saher Manaseer,

More information

AMath 483/583 Lecture 21 May 13, Notes: Notes: Jacobi iteration. Notes: Jacobi with OpenMP coarse grain

AMath 483/583 Lecture 21 May 13, Notes: Notes: Jacobi iteration. Notes: Jacobi with OpenMP coarse grain AMath 483/583 Lecture 21 May 13, 2011 Today: OpenMP and MPI versons of Jacob teraton Gauss-Sedel and SOR teratve methods Next week: More MPI Debuggng and totalvew GPU computng Read: Class notes and references

More information

Solving two-person zero-sum game by Matlab

Solving two-person zero-sum game by Matlab Appled Mechancs and Materals Onlne: 2011-02-02 ISSN: 1662-7482, Vols. 50-51, pp 262-265 do:10.4028/www.scentfc.net/amm.50-51.262 2011 Trans Tech Publcatons, Swtzerland Solvng two-person zero-sum game by

More information

Video Proxy System for a Large-scale VOD System (DINA)

Video Proxy System for a Large-scale VOD System (DINA) Vdeo Proxy System for a Large-scale VOD System (DINA) KWUN-CHUNG CHAN #, KWOK-WAI CHEUNG *# #Department of Informaton Engneerng *Centre of Innovaton and Technology The Chnese Unversty of Hong Kong SHATIN,

More information

Smoothing Spline ANOVA for variable screening

Smoothing Spline ANOVA for variable screening Smoothng Splne ANOVA for varable screenng a useful tool for metamodels tranng and mult-objectve optmzaton L. Rcco, E. Rgon, A. Turco Outlne RSM Introducton Possble couplng Test case MOO MOO wth Game Theory

More information

CMPS 10 Introduction to Computer Science Lecture Notes

CMPS 10 Introduction to Computer Science Lecture Notes CPS 0 Introducton to Computer Scence Lecture Notes Chapter : Algorthm Desgn How should we present algorthms? Natural languages lke Englsh, Spansh, or French whch are rch n nterpretaton and meanng are not

More information

Cache Performance 3/28/17. Agenda. Cache Abstraction and Metrics. Direct-Mapped Cache: Placement and Access

Cache Performance 3/28/17. Agenda. Cache Abstraction and Metrics. Direct-Mapped Cache: Placement and Access Agenda Cache Performance Samra Khan March 28, 217 Revew from last lecture Cache access Assocatvty Replacement Cache Performance Cache Abstracton and Metrcs Address Tag Store (s the address n the cache?

More information

Hybrid Non-Blind Color Image Watermarking

Hybrid Non-Blind Color Image Watermarking Hybrd Non-Blnd Color Image Watermarkng Ms C.N.Sujatha 1, Dr. P. Satyanarayana 2 1 Assocate Professor, Dept. of ECE, SNIST, Yamnampet, Ghatkesar Hyderabad-501301, Telangana 2 Professor, Dept. of ECE, AITS,

More information

Related-Mode Attacks on CTR Encryption Mode

Related-Mode Attacks on CTR Encryption Mode Internatonal Journal of Network Securty, Vol.4, No.3, PP.282 287, May 2007 282 Related-Mode Attacks on CTR Encrypton Mode Dayn Wang, Dongda Ln, and Wenlng Wu (Correspondng author: Dayn Wang) Key Laboratory

More information

MULTISPECTRAL IMAGES CLASSIFICATION BASED ON KLT AND ATR AUTOMATIC TARGET RECOGNITION

MULTISPECTRAL IMAGES CLASSIFICATION BASED ON KLT AND ATR AUTOMATIC TARGET RECOGNITION MULTISPECTRAL IMAGES CLASSIFICATION BASED ON KLT AND ATR AUTOMATIC TARGET RECOGNITION Paulo Quntlano 1 & Antono Santa-Rosa 1 Federal Polce Department, Brasla, Brazl. E-mals: quntlano.pqs@dpf.gov.br and

More information

Conditional Speculative Decimal Addition*

Conditional Speculative Decimal Addition* Condtonal Speculatve Decmal Addton Alvaro Vazquez and Elsardo Antelo Dep. of Electronc and Computer Engneerng Unv. of Santago de Compostela, Span Ths work was supported n part by Xunta de Galca under grant

More information

Design of a Real Time FPGA-based Three Dimensional Positioning Algorithm

Design of a Real Time FPGA-based Three Dimensional Positioning Algorithm Desgn of a Real Tme FPGA-based Three Dmensonal Postonng Algorthm Nathan G. Johnson-Wllams, Student Member IEEE, Robert S. Myaoka, Member IEEE, Xaol L, Student Member IEEE, Tom K. Lewellen, Fellow IEEE,

More information

A Volumetric Approach for Interactive 3D Modeling

A Volumetric Approach for Interactive 3D Modeling A Volumetrc Approach for Interactve 3D Modelng Dragan Tubć Patrck Hébert Computer Vson and Systems Laboratory Laval Unversty, Ste-Foy, Québec, Canada, G1K 7P4 Dens Laurendeau E-mal: (tdragan, hebert, laurendeau)@gel.ulaval.ca

More information

Simulation and Animation of Fire

Simulation and Animation of Fire Smulaton and Anmaton of Fre Overvew Presentaton n Semnar on Motvaton Methods for smulaton of fre Physcally-based Methods for 3D-Games and Medcal Applcatons Dens Stenemann partcle-based flud-based flame-based

More information

Private Information Retrieval (PIR)

Private Information Retrieval (PIR) 2 Levente Buttyán Problem formulaton Alce wants to obtan nformaton from a database, but she does not want the database to learn whch nformaton she wanted e.g., Alce s an nvestor queryng a stock-market

More information

Structure from Motion

Structure from Motion Structure from Moton Structure from Moton For now, statc scene and movng camera Equvalentl, rgdl movng scene and statc camera Lmtng case of stereo wth man cameras Lmtng case of multvew camera calbraton

More information

Lobachevsky State University of Nizhni Novgorod. Polyhedron. Quick Start Guide

Lobachevsky State University of Nizhni Novgorod. Polyhedron. Quick Start Guide Lobachevsky State Unversty of Nzhn Novgorod Polyhedron Quck Start Gude Nzhn Novgorod 2016 Contents Specfcaton of Polyhedron software... 3 Theoretcal background... 4 1. Interface of Polyhedron... 6 1.1.

More information

Circuit Analysis I (ENGR 2405) Chapter 3 Method of Analysis Nodal(KCL) and Mesh(KVL)

Circuit Analysis I (ENGR 2405) Chapter 3 Method of Analysis Nodal(KCL) and Mesh(KVL) Crcut Analyss I (ENG 405) Chapter Method of Analyss Nodal(KCL) and Mesh(KVL) Nodal Analyss If nstead of focusng on the oltages of the crcut elements, one looks at the oltages at the nodes of the crcut,

More information