Surface Integrators. Digital Image Synthesis Yung-Yu Chuang 12/20/2007
|
|
- Charles Collins
- 5 years ago
- Views:
Transcription
1 Surface Integrators Dgtal Image Synthess Yung-Yu Chuang 12/20/2007 wth sldes by Peter Shrley, Pat Hanrahan, Henrk Jensen, Maro Costa Sousa and Torsten Moller
2 Drect lghtng va Monte Carlo ntegraton dffuse
3 Drect lghtng va Monte Carlo ntegraton parameterzaton over hemsphere parameterzaton over surface have to add vsblty
4 Drect lghtng va Monte Carlo ntegraton take one sample accordng to a densty functon let s take
5 Drect lghtng va Monte Carlo ntegraton 1 sample/pxel 100 samples/pxel Lghts szes matter more than shapes. Nosy because x could be on the back cos vares
6 Nose reducton choose better densty functon It s equvalent to unformly samplng over the cone cap n the last lecture. cosθ = (1 ξ + 1) ξ1 cos θ max φ = 2πξ 2 cosα max
7 Drect lghtng from many lumnares Gven a par, use t to select lght and generate new par for samplng that lght. α could be constant for proportonal to power
8 Man renderng loop vod Scene::Render() { Sample *sample = new Sample(surfaceIntegrator, volumeintegrator, ths);... whle (sampler->getnextsample(sample)) { RayDfferental ray; float rw = camera->generateray(*sample, &ray); <Generate ray dfferentals for camera ray> float alpha; Spectrum Ls = 0.f; f (rw > 0.f) Ls = rw * L(ray, sample, &alpha);... camera->flm->addsample(*sample,ray,ls,alpha);... }... camera->flm->wrteimage(); }
9 Scene::L Spectrum Scene::L(RayDfferental &ray, Sample *sample, float *alpha) { Spectrum Lo=surfaceIntegrator->L( ); Spectrum T=volumeIntegrator->Transmttance( ); Spectrum Lv=volumeIntegrator->L( ); return T * Lo + Lv; } Lv L o T
10 Surface ntegrators Responsble for evaluatng the ntegral equaton core/transport.* ntegrator/* Whtted, drectlghtng, path, bdrectonal, rradancecache, photonmap g, exphotonmap class COREDLL Integrator { Spectrum L(Scene *scene, RayDfferental &ray, Sample *sample, float *alpha); vod Proprocess(Scene *scene) vod RequestSamples(Sample*, Scene*) }; class SurfaceIntegrator : publc Integrator
11 Surface ntegrators vod Preprocess(const Scene *scene) Called after scene has been ntalzed; do scenedependent computaton such as photon shootng for photon mappng. vod RequestSamples(Sample *sample, const Scene *scene) Sample s allocated once n Render(). There, sample s constructor wll call ntegrator s RequestSamples to allocate approprate space. Sample::Sample(SurfaceIntegrator *surf, VolumeIntegrator *vol, const Scene *scene) { // calculate requred number of samples // accordng to ntegraton strategy surf->requestsamples(ths, scene);...
12 Drect lghtng o o e o o d p L p f p L p L ω θ ω ω ω ω ω cos ), ( ),, ( ), ( ), ( Ω + = d o o e o o d p L p f p L p L ω θ ω ω ω ω ω cos ), ( ),, ( ), ( ), ( Ω + = Renderng equaton If we only consder drect lghtng, we can replace L by L d. smplest form of equaton somewhat easy to solve (but a gross approxmaton) knd of what we do n Whtted ray tracng Not too bad snce most energy comes from drect lghts
13 Drect lghtng Monte Carlo samplng to solve Ω f ( p, ω, ω ) L ( p, ω ) cosθ o d Samplng strategy A: sample only one lght pck up one lght as the representatve for all lghts dstrbute N samples over that lght Use multple mportance samplng for f and L d N 1 f ( p, ω o, ω j ) Ld ( p, ω j ) N 1 p( ω ) j= Scale the result by the number of lghts N L j dω cosθ j E [ f + g] Randomly pck f or g and then sample, multply the result by 2
14 Drect lghtng Samplng strategy B: sample all lghts do A for each lght sum the results smarter way would be to sample lghts accordng to ther power N L j= 1 Ω f ( p, ω, ω ) L dω o d ( j) ( p, ω ) cosθ E [ f + g] sample f or g separately and then sum them together
15 DrectLghtng enum LghtStrategy { SAMPLE_ALL_UNIFORM, SAMPLE_ONE_UNIFORM, SAMPLE_ONE_WEIGHTED }; two possble strateges; f there are many mage samples for a pxel (e.g. due to depth of feld), we prefer only samplng one lght at a tme. On the other hand, f there are few mage samples, we prefer samplng all lghts at once. class DrectLghtng : publc SurfaceIntegrator { publc: maxmal depth DrectLghtng(LghtStrategy ls, nt md);... }
16 RequestSamples Dfferent types of lghts requre dfferent number of samples, usually 2D samples. Samplng BRDF requres 2D samples. Selecton of BRDF components requres 1D samples. n1d n2d flled n by ntegrators sample oned twod allocate together to avod cache mss mem ntegrator bsdfcomponent lghtsample bsdfsample
17 DrectLghtng::RequestSamples vod RequestSamples(Sample *sample, const Scene *scene) { f (strategy == SAMPLE_ALL_UNIFORM) { u_nt nlghts = scene->lghts.sze(); lghtsampleoffset = new nt[nlghts]; bsdfsampleoffset = new nt[nlghts]; bsdfcomponentoffset = new nt[nlghts]; for (u_nt = 0; < nlghts; ++) { const Lght *lght = scene->lghts[]; nt lghtsamples gves sampler a chance to adjust to an approprate value = scene->sampler->roundsze(lght->nsamples); lghtsampleoffset[] = sample->add2d(lghtsamples); bsdfsampleoffset[] = sample->add2d(lghtsamples); bsdfcomponentoffset[] = sample->add1d(lghtsamples); } lghtnumoffset = -1; }
18 DrectLghtng::RequestSamples else { lghtsampleoffset = new nt[1]; bsdfsampleoffset = new nt[1]; bsdfcomponentoffset = new nt[1]; lghtsampleoffset[0] = sample->add2d(1); bsdfsampleoffset[0] = sample->add2d(1); bsdfcomponentoffset[0] = sample->add1d(1); } } lghtnumoffset = sample->add1d(1); whch lght to sample
19 DrectLghtng::L Spectrum DrectLghtng::L(Scene *scene, RayDfferental &ray, Sample *sample, float *alpha) { Intersecton sect; Spectrum L(0.); f (scene->intersect(ray, §)) { // Evaluate BSDF at ht pont BSDF *bsdf = sect.getbsdf(ray); Vector wo = -ray.d; const Pont &p = bsdf->dgshadng.p; const Normal &n = bsdf->dgshadng.nn; <Compute emtted lght; see next slde> } else { // handle ray wth no ntersecton } return L; }
20 DrectLghtng::L L o( p, o) = Le ( p, ωo) + Ω ω f ( p, ω, ω ) L ( p, ω ) cosθ o d dω L += sect.le(wo); f (scene->lghts.sze() > 0) { swtch (strategy) { case SAMPLE_ALL_UNIFORM: L += UnformSampleAllLghts(scene, p, n, wo, bsdf, sample, lghtsampleoffset, bsdfsampleoffset, bsdfcomponentoffset); break; case SAMPLE_ONE_UNIFORM: L += UnformSampleOneLght(scene, p, n, wo, bsdf, sample, lghtsampleoffset[0], lghtnumoffset, bsdfsampleoffset[0], bsdfcomponentoffset[0]); break;
21 DrectLghtng::L case SAMPLE_ONE_WEIGHTED: sample accordng to power L += WeghtedSampleOneLght(scene, p, n, wo, bsdf, sample, lghtsampleoffset[0], lghtnumoffset, bsdfsampleoffset[0], bsdfcomponentoffset[0], avgy, avgysample, cdf, overallavgy); break; } } f (raydepth++ < maxdepth) { // add specular reflected and transmtted contrbutons } Ths part s essentally the same as Whtted ntegrator. The man dfference between Whtted and DrectLghtng s the way they sample lghts. Whtted uses sample_l to take one sample for each lght. DrectLghtng uses multple Importance samplng to sample both lghts and BRDFs.
22 Whtted::L... // Add contrbuton of each lght source Vector w; for ( = 0; < scene->lghts.sze(); ++) { VsbltyTester vsblty; Spectrum L = scene->lghts[]-> Sample_L(p, &w, &vsblty); f (L.Black()) contnue; Spectrum f = bsdf->f(wo, w); f (!f.black() && vsblty.unoccluded(scene)) L += f * L * AbsDot(w, n) * vsblty.transmttance(scene); }...
23 UnformSampleAllLghts Spectrum UnformSampleAllLghts(...) { Spectrum L(0.); for (u_nt =0;<scene->lghts.sze();++) { Lght *lght = scene->lghts[]; nt nsamples = (sample && lghtsampleoffset)? sample->n2d[lghtsampleoffset[]] : 1; Spectrum Ld(0.); for (nt j = 0; j < nsamples; ++j) Ld += EstmateDrect(...); } L += Ld / nsamples; } return L; compute contrbuton for one sample for one lght f ( p, ω, ω ) L o j d ( p, ω ) cosθ p( ω ) j j j
24 UnformSampleOneLght Spectrum UnformSampleOneLght (...) { nt nlghts = nt(scene->lghts.sze()); nt lghtnum; f (lghtnumoffset!= -1) lghtnum = Floor2Int(sample->oneD[lghtNumOffset][0]*nLghts); else lghtnum = Floor2Int(RandomFloat() * nlghts); lghtnum = mn(lghtnum, nlghts-1); Lght *lght = scene->lghts[lghtnum]; return (float)nlghts * EstmateDrect(...); }
25 Multple mportance samplng = = + f n g j j g g j j g n f f f Y p Y w Y g Y f n X p X w X g X f n 1 1 ) ( ) ( ) ( ) ( 1 ) ( ) ( ) ( ) ( 1 ( ) ( ) = s s s x p n x p n x w β β ) ( ) ( ) (
26 EstmateDrect Spectrum EstmateDrect(Scene *scene, Lght *lght, Pont &p, Normal &n, Vector &wo, BSDF *bsdf, Sample *sample, nt lghtsamp, nt bsdfsamp, nt bsdfcomponent, u_nt samplenum) { f ( p, ω, ω ) L ( p, ω ) cosθ p( ω ) Spectrum Ld(0.); j float ls1, ls2, bs1, bs2, bcs; f (lghtsamp!= -1 && bsdfsamp!= -1 && samplenum < sample->n2d[lghtsamp] && samplenum < sample->n2d[bsdfsamp]) { ls1 = sample->twod[lghtsamp][2*samplenum]; ls2 = sample->twod[lghtsamp][2*samplenum+1]; bs1 = sample->twod[bsdfsamp][2*samplenum]; bs2 = sample->twod[bsdfsamp][2*samplenum+1]; bcs = sample->oned[bsdfcomponent][samplenum]; } else { ls1 = RandomFloat(); ls2 = RandomFloat();... } o j d j j
27 Sample lght wth MIS Spectrum L = lght->sample_l(p, n, ls1, ls2, &w, &lghtpdf, &vsblty); f (lghtpdf > 0. &&!L.Black()) { Spectrum f = bsdf->f(wo, w); f (!f.black() && vsblty.unoccluded(scene)) { L *= vsblty.transmttance(scene); f (lght->isdeltalght()) Ld += f * L * AbsDot(w, n) / lghtpdf; else { bsdfpdf = bsdf->pdf(wo, w); float weght = PowerHeurstc(1,lghtPdf,1,bsdfPdf); Ld += f * L * AbsDot(w, n) * weght / lghtpdf; } } } f ( p, ω, ω ) L o j d ( p, ω ) cosθ j p( ω ) j j w L ( ω ) j
28 Sample BRDF wth MIS f (!lght->isdeltalght()) { Only for non-delta lght and BSDF BxDFType flags = BxDFType(BSDF_ALL & ~BSDF_SPECULAR); Spectrum f = bsdf->sample_f(wo, &w, bs1, bs2, bcs, &bsdfpdf, flags); f (!f.black() && bsdfpdf > 0.) { lghtpdf = lght->pdf(p, n, w); f (lghtpdf > 0.) { // Add lght contrbuton from BSDF samplng float weght = PowerHeurstc(1,bsdfPdf,1,lghtPdf); Spectrum L(0.f); RayDfferental ray(p, w); f (scene->intersect(ray, &lghtisect)) { f (lghtisect.prmtve->getarealght() == lght) L = lghtisect.le(-w); } else L = lght->le(ray); for nfnte area lght f (!L.Black()) { L *= scene->transmttance(ray); Ld += f * L * AbsDot(w, n) * weght / bsdfpdf; } } }
29 Drect lghtng
30 The lght transport equaton The goal of ntegrator s to numercally solve the lght transport equaton, governng the equlbrum dstrbuton of radance n a scene.
31 The lght transport equaton
32 Analytc soluton to the LTE In general, t s mpossble to fnd an analytc soluton to the LTE because of complex BRDF, arbtrary scene geometry and ntrcate vsblty. For a extremely smple scene, e.g. nsde a unformly emttng Lambertan sphere, t s however possble. Ths s useful for debuggng. Radance should be the same for all ponts L = Le + cπl
33 Analytc soluton to the LTE L = Le + cπl L = L + ρ L = = L L e e e + + ρ ρ hh hh hh ( L ( L e e + + ρ ρ hh hh L) ( L e +... = = 0 L e ρ hh L L e = ρ hh 1 1 ρ hh
34 Surface form of the LTE
35 Surface form of the LTE These two forms are equvalent, but they represent two dfferent ways of approachng lght transport.
36 Surface form of the LTE
37 Surface form of the LTE
38 Surface form of the LTE
39 Delta dstrbuton
40 Partton the ntegrand
41 Partton the ntegrand
42 Partton the ntegrand
43 Renderng operators
44 Solvng the renderng equaton
45 Successve approxmaton
46 Successve approxmaton
47 Lght Transport Notaton (Hekbert 1990) Regular expresson denotng sequence of events along a lght path alphabet: {L,E,S,D,G} L a lght source (emtter) E the eye S specular reflecton/transmsson D dffuse reflecton/transmsson G glossy reflecton/transmsson operators: (k) + one or more of k (k) * zero or more of k (teraton) (k k ) a k or a k event
48 Lght Transport Notaton: Examples LSD a path startng at a lght, havng one specular reflecton and endng at a dffuse reflecton D L S
49 Lght Transport Notaton: Examples L(S D) + DE a path startng at a lght, havng one or more dffuse or specular reflectons, then a fnal dffuse reflecton toward the eye E D L S
50 Lght Transport Notaton: Examples L(S D) + DE a path startng at a lght, havng one or more dffuse or specular reflectons, then a fnal dffuse reflecton toward the eye S D E L D S
51
52
53 Renderng algorthms Ray castng: E(D G)L Whtted: E[S*](D G)L Kajya: E[(D G S) + (D G)]L Goral: ED*L
54 The renderng equaton
55 The renderng equaton
56 The radosty equaton
57 Radosty formulate the basc radosty equaton: B m = E m + ρ m N n=1 B n F mn B m = radosty = total energy leavng surface m (energy/unt area/unt tme) E m = energy emtted from surface m (energy/unt area/unt tme) ρ m = reflectvty, fracton of ncdent lght reflected back nto envronment F mn = form factor, fracton of energy leavng surface n that lands on surface m (A m = area of surface m)
58 Brng all the B s on one sde of the equaton ths leads to ths equaton system: E m = B m ρ m B n F mn m = N N NN N N N N N N N E E E B B B F F F F F F F F F M M M O M M ρ ρ ρ ρ ρ ρ ρ ρ ρ Radosty E B S = o
59 Path tracng Proposed by Kajya n hs classc SIGGRAPH 1986 paper, renderng equaton, as the soluton for Incrementally generates path of scatterng events startng from the camera and endng at lght sources n the scene. Two questons to answer How to do t n fnte tme? How to generate one or more paths to compute
60 Infnte sum In general, the longer the path, the less the mpact. Use Russan Roulette after a fnte number of bounces Always compute the frst few terms Stop after that wth probablty q
61 Infnte sum Take ths dea further and nstead randomly consder termnatng evaluaton of the sum at each term wth probablty q
62 Path generaton (frst tral) Frst, pck up surface n the scene randomly and unformly Then, pck up a pont on ths surface randomly and unformly wth probablty Overall probablty of pckng a random surface pont n the scene: = j j A A p A 1 = = j j j j A A A A A p p 1 1 ) (
63 Path generaton (frst tral) Ths s repeated for each pont on the path. Last pont should be sampled on lght sources only. If we know characterstcs about the scene (such as whch objects are contrbutng most ndrect lghtng to the scene), we can sample more smartly. Problems: Hgh varance: only few ponts are mutually vsble,.e. many of the paths yeld zero. Incorrect ntegral: for delta dstrbutons, we rarely fnd the rght path drecton
64 Incremental path generaton For pathp = p0 p1... p j p j p At each p j, fnd p j+1 accordng to BSDF At p -1, fnd p by multple mportance samplng of BSDF and L Ths algorthm dstrbutes samples accordng to sold angle nstead of area. So, the dstrbuton p A needs to be adjusted p A ( p ) = p ω p p + 1 cosθ 2
65 Incremental path generaton Monte Carlo estmator p 1 Implementaton re-uses path for new path Ths ntroduces correlaton, but speed makes up for t. p
66 Path tracng
67 Drect lghtng
68 Path tracng 8 samples per pxel
69 Path tracng 1024 samples per pxel
70 Bdrectonal path tracng Compose one path p from two paths p 1 p 2 p started at the camera p 0 and q j q j-1 q 1 started at the lght source q 0 p Modfcaton for effcency: p Use all paths whose lengths rangng from 2 to +j = 1 p2 p, q jq j q 1 Helpful for the stuatons n whch lghts are dffcult to reach and caustcs
71 Bdrectonal path tracng
72 Nose reducton/removal More samples (slow convergence) Better samplng (stratfed, mportance etc.) Flterng Cachng and nterpolaton
73 Based approaches By ntroducng bas (makng smoothness assumptons), based methods produce mages wthout hgh-frequency nose Unlke unbased methods, errors may not be reduced by addng samples n based methods On contrast, when there s lttle error n the result of an unbased method, we are confdent that t s close to the rght answer Three based approaches Flterng Irradance cachng Photon mappng
74 The world s more dffuse!
75 Flterng Nose s hgh frequency Methods: Smple flters Ansotropc flters Energy preservng flters Problems wth flterng: everythng s fltered (blurred)
76 Path tracng (10 paths/pxel)
77 3x3 lowpass flter
78 3x3 medan flter
79 Cachng technques Irradance cachng: compute rradance at selected ponts and nterpolate Photon mappng: trace photons from the lghts and store them n a photon map, that can be used durng renderng
80 Drect llumnaton
81 Global llumnaton
82 Indrect rradance Indrect llumnaton tends to be low frequency
83 Irradance cachng Introduced by Greg Ward 1988 Implemented n Radance renderer Contrbutons from ndrect lghtng often vary smoothly cache and nterpolate results
84 Irradance cachng Compute ndrect lghtng at sparse set of samples Interpolate neghborng values from ths set of samples Issues How s the ndrect lghtng represented How to come up wth such a sparse set of samples? How to store these samples? When and how to nterpolate?
85 Set of samples Indrect lghtng s computed on demand, store rradance n a spatal data structure. If there s no good nearby samples, then compute a new rradance sample Irradance (radance s drecton dependent, expensve to store) If the surface s Lambertan, H d p L p E ω θ ω = 2 cos ), ( ) ( ) ( cos ), ( cos ), ( ),, ( ), ( 2 2 p E d p L d p L p f p L H H o o o ρ ω θ ω ρ ω θ ω ω ω ω = = =
86 Set of samples For dffuse scenes, rradance alone s enough nformaton for accurate computaton For nearly dffuse surfaces (such as Oren-Nayar or a glossy surface wth a very wde specular lobe), we can vew rradance cachng makes the followng approxmaton ( )( ) ( ) ) ( ) ( cos ), ( ),, ( ), ( p E d p L d p f p L o hd H H o o o ω ρ ω θ ω ω ω ω ω drectonal reflectance
87 Set of samples Not a good approxmaton for specular surfaces specular Whtted ntegrator Dffuse rradance cachng Interpolate from known ponts Cosne-weghted Path tracng sample ponts E( p) = L ( p, ω ) cosθ 2 H dω 1 L = ( p, ω j ) cosθ j E( p) N j p( ω j ) π E ( p) = L ( p, ω j ) N j p( ω) = cosθ π
88 Storng samples {E,p,n,d} d
89 Interpolatng from neghbors Skp samples Normals are too dfferent Too far away In front Weght (ad hoc) w = 1 d d max 1 ' N N 2 Fnal rradance estmate s smply the weghted sum E = w E w
90 IrradanceCache class IrradanceCache : publc SurfaceIntegrator {... float maxerror; how frequently rradance samples are computed or nterpolated nt nsamples; how many rays for rradance samples nt maxspeculardepth, maxindrectdepth; mutable nt speculardepth; current depth for specular }
91 IrradanceCache::L L += sect.le(wo); L += UnformSampleAllLghts(scene, p, n, wo,...); f (speculardepth++ < maxspeculardepth) { <Trace rays for specular reflecton and refracton> } --speculardepth; // Estmate ndrect lghtng wth rradance cache... BxDFType flags = BxDFType(BSDF_REFLECTION BSDF_DIFFUSE BSDF_GLOSSY); L+=IndrectLo(p, ng, wo, bsdf, flags, sample, scene); flags = BxDFType(BSDF_TRANSMISSION BSDF_DIFFUSE BSDF_GLOSSY); L+=IndrectLo(p, -ng, wo, bsdf, flags, sample,scene);
92 IrradanceCache::IndrectLo f (!InterpolateIrradance(scene, p, n, &E)) {... // Compute rradance at current pont for (nt = 0; < nsamples; ++) { <Path tracng to compute radances along ray for rradance sample> E += L; float dst = r.maxt * r.d.length(); // max dstance suminvdsts += 1.f / dst; } E *= M_PI / float(nsamples);... // Add computed rradance value to cache octree->add(irradancesample(e,p,n,nsamples/suminvdsts), sampleextent); } return.5f * bsdf->rho(wo, flags) * E;
93 Octree Constructed at Preprocess() vod IrradanceCache::Preprocess(const Scene *scene) { BBox wb = scene->worldbound(); Vector delta =.01f * (wb.pmax - wb.pmn); wb.pmn -= delta; wb.pmax += delta; octree=new Octree<IrradanceSample,IrradProcess>(wb); } struct IrradanceSample { Spectrum E; Normal n; Pont p; float maxdst; };
94 InterpolateIrradance Bool InterpolateIrradance(const Scene *scene, const Pont &p, const Normal &n, Spectrum *E) { f (!octree) return false; IrradProcess proc(n, maxerror); octree->lookup(p, proc); Traverse the octree; for each node where the query pont s nsde, call a method of proc to process for each rradacne sample. } f (!proc.successful()) return false; *E = proc.getirradance(); return true;
95 IrradProcess vod IrradProcess::operator()(const Pont &p, const IrradanceSample &sample) { // Skp f surface normals are too dfferent f (Dot(n, sample.n) < 0.01f) return; // Skp f t's too far from the sample pont float d2 = DstanceSquared(p, sample.p); f (d2 > sample.maxdst * sample.maxdst) return; // Skp f t's n front of pont beng shaded Normal navg = sample.n + n; f (Dot(p - sample.p, navg) < -.01f) return; // Compute estmate error and possbly use sample float err=sqrtf(d2)/(sample.maxdst*dot(n,sample.n)); f (err < 1.) { float wt = (1.f - err) * (1.f - err); } } E += wt * sample.e; sumwt += wt; w = 1 d d max 1 ' N N 2
96 Comparson wth same lmted tme Irradance cachng Blotch artfacts Path tracng Hgh-frequency noses
97 Irradance cachng Irradance cachng Irradance sample postons
98 Photon mappng It can handle both dffuse and glossy reflecton; specular reflecton s handled by recursve ray tracng Two-step partcle tracng algorthm Photon tracng Smulate the transport of ndvdual photons Photons emtted from source Photons deposted on surfaces Photons reflected from surfaces to surfaces Renderng Collect photons for renderng
99 Photon tracng Preprocess: cast rays from lght sources
100 Photon tracng Preprocess: cast rays from lght sources Store photons (poston + lght power + ncomng drecton)
101 Photon map Effcently store photons for fast access Use herarchcal spatal structure (kd-tree)
102 Renderng (fnal gatherng) Cast prmary rays; for the secondary rays, reconstruct rradance usng the k closest stored photon
103 Renderng (wthout fnal gather) o o e o o d p L p f p L p L ω θ ω ω ω ω ω cos ), ( ),, ( ), ( ), ( Ω + =
104 Renderng (wth fnal gather)
105 Photon mappng results photon map renderng
106 Photon mappng - caustcs Specal photon map for specular reflecton and refracton
107 Caustcs Path tracng: 1,000 paths/pxel Photon mappng
108 PhotonIntegrator class PhotonIntegrator : publc SurfaceIntegrator { nt ncaustcphotons,nindrectphotons,ndrectphotons; nt nlookup; number of photons for nterpolaton (50~100) nt speculardepth, maxspeculardepth; float maxdstsquared; search dstance; too large, waste tme; too small, not enough samples bool drectwthphotons, fnalgather; nt gathersamples; } Left: 100K photons 50 photons n radance estmate Rght: 500K photons 500 photons n radance estmate
109 Photon map Kd-tree s used to store photons, decoupled from the scene geometry
110 Photon shootng Implemented n Preprocess method Three types of photons (caustc, drect, ndrect) struct Photon { Pont p; Spectrum alpha; Vector w; }; w p α
111 Photon shootng Use Halton sequence snce number of samples s unknown beforehand, startng from a sample L lght wth energy e ( p0, ω0). Store photons for nonspecular p( p0, ω0) surfaces.
112 Photon shootng vod PhotonIntegrator::Preprocess(const Scene *scene) { vector<photon> caustcphotons; vector<photon> drectphotons; vector<photon> ndrectphotons; whle (!caustcdone!drectdone!ndrectdone) { ++nshot; <trace a photon path and store contrbuton> } }
113 Photon shootng Spectrum alpha = lght->sample_l(scene, u[0], u[1], u[2], u[3], &photonray, &pdf); alpha /= pdf * lghtpdf; Whle (scene->intersect(photonray, &photonisect)) { alpha *= scene->transmttance(photonray); <record photon dependng on type> <sample next drecton> Spectrum fr = photonbsdf->sample_f(wo, &w, u1, u2, u3, &pdf, BSDF_ALL, &flags); alpha*=fr*absdot(w, photonbsdf->dgshadng.nn)/ pdf; photonray = RayDfferental(photonIsect.dg.p, w); f (nintersectons > 3) { f (RandomFloat() >.5f) break; alpha /=.5f; } }
114 Renderng Partton the ntegrand ( ) = Δ Δ cos ), ( ), ( ), ( ),, ( cos ), ( ),, ( cos ), ( ),, (,,, S c d o S o S o d p L p L p L p f d p L p f d p L p f ω θ ω ω ω ω ω ω θ ω ω ω ω θ ω ω ω
115 Renderng L += sect.le(wo); // Compute drect lghtng for photon map ntegrator f (drectwthphotons) L += LPhoton(drectMap,...); else L += UnformSampleAllLghts(...); // Compute ndrect lghtng for photon map ntegrator L += LPhoton(caustcMap,...); f (fnalgather) { <Do one-bounce fnal gather for photon map> } else L += LPhoton(ndrectMap,...); // Compute specular reflecton and refracton
116 Fnal gather for (nt = 0; < gathersamples; ++) { <compute radance for a random BSDF-sampled drecton for fnal gather ray> } L += L/float(gatherSamples);
117 Fnal gather BSDF *gatherbsdf = gatherisect.getbsdf(bounceray); Vector bouncewo = -bounceray.d; Spectrum Lndr = LPhoton(drectMap, ndrectpaths, nlookup, gatherbsdf, gatherisect, bouncewo, maxdstsquared) + LPhoton(ndrectMap, nindrectpaths, nlookup, gatherbsdf, gatherisect, bouncewo, maxdstsquared) + LPhoton(caustcMap, ncaustcpaths, nlookup, gatherbsdf, gatherisect, bouncewo,maxdstsquared); Lndr *= scene->transmttance(bounceray); L += fr * Lndr * AbsDot(w, n) / pdf;
118 Renderng 50,000 drect photons shadow rays are traced for drect lghtng
119 Renderng 500,000 drect photons caustcs
120 Photon mappng Drect llumnaton Photon mappng
121 Photon mappng + fnal gatherng Photon mappng +fnal gatherng Photon mappng
122 Photon nterpolaton LPhoton() fnds the nlookup closest photons and uses them to compute the radance at the pont. A kd-tree s used to store photons. To mantan the nlookup closest photons effcently durng search, a heap s used. For nterpolaton, a statstcal technque, densty estmaton, s used. Densty estmaton constructs a PDF from a set of gven samples, for example, hstogram.
123 Kernel method pˆ( x) = 1 Nh N = 1 k x x h wndow wdth where - k(x)dx = 1 h too wde too smooth h too narrow too bumpy k( t) = (1 2t ) / 5 t < 0 otherwse 5 h=0.1
124 Generalzed nth nearest-neghbor estmate float scale=1.f/(float(npaths)*maxdstsquared* M_PI); ) ( ) ( 1 ) ˆ( 1 = = N n n x d x x k x Nd x p dstance to nth nearest neghbor ω o < = otherwse 0 1 ) ( 1 x x k π 2D constant kernel
125 LPhoton f (bsdf->numcomponents(bxdftype(bsdf_reflection BSDF_TRANSMISSION BSDF_GLOSSY)) > 0) { // extant radance from photons for glossy surface for (nt = 0; < nfound; ++) { BxDFType flag=dot(nf, photons[].photon->w)> 0.f? BSDF_ALL_REFLECTION : BSDF_ALL_TRANSMISSION; L += bsdf->f(wo, photons[].photon->w, flag) * (scale * photons[].photon->alpha); }} else { // extant radance from photons for dffuse surface Spectrum Lr(0.), Lt(0.); for (nt = 0; < nfound; ++) f (Dot(Nf, photons[].photon->w) > 0.f) Lr += photons[].photon->alpha; else Lt += photons[].photon->alpha; L+=(scale*INV_PI)*(Lr*bsdf->rho(wo,BSDF_ALL_REFLECTION) +Lt*bsdf->rho(wo, BSDF_ALL_TRANSMISSION)); }
126 Results
Surface Integrators. Digital Image Synthesis Yung-Yu Chuang 12/13/2005
Surface Integrators Digital Image Synthesis Yung-Yu Chuang 12/13/2005 with slides by Pat Hanrahan, Henrik Jensen, Mario Costa Sousa and Torsten Moller Surface integrators Responsible for evaluating the
More informationDiscussion. 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 informationDiscussion. 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 informationMonte 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 informationPBRT core. Announcements. pbrt. pbrt plug-ins
Announcements PBRT core Dgtal Image Synthess Yung-Yu Chuang 9/27/2007 Please subscrbe the malng lst. Wndows complaton Debuggng n Wndows Doxygen (onlne, download or doxygen by yourself) HW#1 wll be assgned
More informationMonte 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 informationComplex 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 informationMonte 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 informationMonte 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 informationGlobal Illumination. Computer Graphics COMP 770 (236) Spring Instructor: Brandon Lloyd 3/26/07 1
Global Illumnaton Computer Graphcs COMP 770 (236) Sprng 2007 Instructor: Brandon Lloyd 3/26/07 1 From last tme Robustness ssues Code structure Optmzatons Acceleraton structures Dstrbuton ray tracng ant-alasng
More informationGlobal Illumination and Radiosity
Global Illumnaton and Radosty CS535 Danel G. Alaga Department of Computer Scence Purdue Unversty Recall: Lghtng and Shadng Lght sources Pont lght Models an omndrectonal lght source (e.g., a bulb) Drectonal
More informationComputer 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 informationPlane 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 informationMotivation. Motivation. Monte Carlo. Example: Soft Shadows. Outline. Monte Carlo Algorithms. Advanced Computer Graphics (Fall 2009)
Advanced Comuter Grahcs Fall 29 CS 294, Renderng Lecture 4: Monte Carlo Integraton Rav Ramamoorth htt://nst.eecs.berkeley.edu/~cs294-3/a9 Motvaton Renderng = ntegraton Relectance equaton: Integrate over
More informationGlobal Illumination and Radiosity
Global Illumnaton and Radosty CS535 Danel G. Alaga Department of Computer Scence Purdue Unversty Recall: Lghtng and Shadng Lght sources Pont lght Models an omndrectonal lght source (e.g., a bulb) Drectonal
More informationGlobal 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 informationReal-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 informationGlobal Illumination and Radiosity
Global Illumnaton and Radosty CS535 Danel lg. Alaga Department of Computer Scence Purdue Unversty Recall: Lghtng and Shadng Lght sources Pont lght Models an omndrectonal lght source (e.g., a bulb) Drectonal
More informationDiffuse 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 informationTopic 13: Radiometry. The Basic Light Transport Path
Topc 3: Raometry The bg pcture Measurng lght comng from a lght source Measurng lght fallng onto a patch: Irraance Measurng lght leavng a patch: Raance The Lght Transport Cycle The BrecAonal Reflectance
More informationScan 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 informationScan 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 informationColor 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 informationInteractive 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 informationComputer graphics III Light reflection, BRDF. Jaroslav Křivánek, MFF UK
Computer graphcs III Lght reflecton, BRDF Jaroslav Křvánek, MFF UK Jaroslav.Krvanek@mff.cun.cz Basc radometrc quanttes Image: Wojcech Jarosz CG III (NPGR010) - J. Křvánek 2015 Interacton of lght wth a
More informationSurface 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 informationForm-factors Josef Pelikán CGG MFF UK Praha.
Form-factors 1996-2016 Josef Pelkán CGG MFF UK Praha pepca@cgg.mff.cun.cz http://cgg.mff.cun.cz/~pepca/ FormFactor 2016 Josef Pelkán, http://cgg.mff.cun.cz/~pepca 1 / 23 Form-factor F It ndcates the proporton
More informationComputer Sciences Department
Computer Scences Department Populaton Monte Carlo Path Tracng Yu-Ch La Charles Dyer Techncal Report #1614 September 2007 Populaton Monte Carlo Path Tracng Yu-Ch La Unversty of Wsconsn at Madson Graphcs-Vson
More informationBiostatistics 615/815
The E-M Algorthm Bostatstcs 615/815 Lecture 17 Last Lecture: The Smplex Method General method for optmzaton Makes few assumptons about functon Crawls towards mnmum Some recommendatons Multple startng ponts
More informationLighting. Dr. Scott Schaefer
Lghtng Dr. Scott Schaefer 1 Lghtng/Illumnaton Color s a functon of how lght reflects from surfaces to the eye Global llumnaton accounts for lght from all sources as t s transmtted throughout the envronment
More informationOutline. Type of Machine Learning. Examples of Application. Unsupervised Learning
Outlne Artfcal Intellgence and ts applcatons Lecture 8 Unsupervsed Learnng Professor Danel Yeung danyeung@eee.org Dr. Patrck Chan patrckchan@eee.org South Chna Unversty of Technology, Chna Introducton
More informationIntroduction to Radiosity
EECS 487: Interactve Computer Graphcs EECS 487: Interactve Computer Graphcs Renderng a Scene Introducton to Radosty John. Hughes and ndres van Dam rown Unversty The scene conssts of a geometrc arrangement
More informationMachine Learning: Algorithms and Applications
14/05/1 Machne Learnng: Algorthms and Applcatons Florano Zn Free Unversty of Bozen-Bolzano Faculty of Computer Scence Academc Year 011-01 Lecture 10: 14 May 01 Unsupervsed Learnng cont Sldes courtesy of
More informationSome 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 informationUnsupervised Learning
Pattern Recognton Lecture 8 Outlne Introducton Unsupervsed Learnng Parametrc VS Non-Parametrc Approach Mxture of Denstes Maxmum-Lkelhood Estmates Clusterng Prof. Danel Yeung School of Computer Scence and
More informationAccounting 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 informationCS 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 informationFast, 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 informationProblem Set 3 Solutions
Introducton to Algorthms October 4, 2002 Massachusetts Insttute of Technology 6046J/18410J Professors Erk Demane and Shaf Goldwasser Handout 14 Problem Set 3 Solutons (Exercses were not to be turned n,
More informationThe 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 informationR 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 informationSubspace 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 informationMathematics 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 information6.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 informationSLAM 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 informationCSCI 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 informationComplex 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 informationLecture #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 informationPerformance Evaluation of Information Retrieval Systems
Why System Evaluaton? Performance Evaluaton of Informaton Retreval Systems Many sldes n ths secton are adapted from Prof. Joydeep Ghosh (UT ECE) who n turn adapted them from Prof. Dk Lee (Unv. of Scence
More informationProgramming 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 informationComputer 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 informationDetermining the Optimal Bandwidth Based on Multi-criterion Fusion
Proceedngs of 01 4th Internatonal Conference on Machne Learnng and Computng IPCSIT vol. 5 (01) (01) IACSIT Press, Sngapore Determnng the Optmal Bandwdth Based on Mult-crteron Fuson Ha-L Lang 1+, Xan-Mn
More informationKiran Joy, International Journal of Advanced Engineering Technology E-ISSN
Kran oy, nternatonal ournal of Advanced Engneerng Technology E-SS 0976-3945 nt Adv Engg Tech/Vol. V/ssue /Aprl-une,04/9-95 Research Paper DETERMATO O RADATVE VEW ACTOR WTOUT COSDERG TE SADOWG EECT Kran
More informationHermite Splines in Lie Groups as Products of Geodesics
Hermte Splnes n Le Groups as Products of Geodescs Ethan Eade Updated May 28, 2017 1 Introducton 1.1 Goal Ths document defnes a curve n the Le group G parametrzed by tme and by structural parameters n the
More informationPrivate 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 informationAMath 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 informationLECTURE : MANIFOLD LEARNING
LECTURE : MANIFOLD LEARNING Rta Osadchy Some sldes are due to L.Saul, V. C. Raykar, N. Verma Topcs PCA MDS IsoMap LLE EgenMaps Done! Dmensonalty Reducton Data representaton Inputs are real-valued vectors
More informationA 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 informationSmoothing 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 informationPhysics 132 4/24/17. April 24, 2017 Physics 132 Prof. E. F. Redish. Outline
Aprl 24, 2017 Physcs 132 Prof. E. F. Redsh Theme Musc: Justn Tmberlake Mrrors Cartoon: Gary Larson The Far Sde 1 Outlne Images produced by a curved mrror Image equatons for a curved mrror Lght n dense
More informationHarmonic Coordinates for Character Articulation PIXAR
Harmonc Coordnates for Character Artculaton PIXAR Pushkar Josh Mark Meyer Tony DeRose Bran Green Tom Sanock We have a complex source mesh nsde of a smpler cage mesh We want vertex deformatons appled to
More informationImage Representation & Visualization Basic Imaging Algorithms Shape Representation and Analysis. outline
mage Vsualzaton mage Vsualzaton mage Representaton & Vsualzaton Basc magng Algorthms Shape Representaton and Analyss outlne mage Representaton & Vsualzaton Basc magng Algorthms Shape Representaton and
More informationHierarchical clustering for gene expression data analysis
Herarchcal clusterng for gene expresson data analyss Gorgo Valentn e-mal: valentn@ds.unm.t Clusterng of Mcroarray Data. Clusterng of gene expresson profles (rows) => dscovery of co-regulated and functonally
More informationTechnical report, November 2012 (Revision 2, July 2013) Implementing Vertex Connection and Merging
Techncal report, November 22 Revson 2, July 23) Implementng Vertex Connecton and Mergng Ilyan Georgev Saarland Unversty Intel VCI, Saarbrücken Stage : a) Trace lght sub-paths b) Connect lght vertces to
More informationNUMERICAL SOLVING OPTIMAL CONTROL PROBLEMS BY THE METHOD OF VARIATIONS
ARPN Journal of Engneerng and Appled Scences 006-017 Asan Research Publshng Network (ARPN). All rghts reserved. NUMERICAL SOLVING OPTIMAL CONTROL PROBLEMS BY THE METHOD OF VARIATIONS Igor Grgoryev, Svetlana
More informationImprovement 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 informationSupport 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 informationSorting 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 informationSequential 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 informationS.P.H. : A SOLUTION TO AVOID USING EROSION CRITERION?
S.P.H. : A SOLUTION TO AVOID USING EROSION CRITERION? Célne GALLET ENSICA 1 place Emle Bloun 31056 TOULOUSE CEDEX e-mal :cgallet@ensca.fr Jean Luc LACOME DYNALIS Immeuble AEROPOLE - Bat 1 5, Avenue Albert
More informationX- Chart Using ANOM Approach
ISSN 1684-8403 Journal of Statstcs Volume 17, 010, pp. 3-3 Abstract X- Chart Usng ANOM Approach Gullapall Chakravarth 1 and Chaluvad Venkateswara Rao Control lmts for ndvdual measurements (X) chart are
More informationREFRACTION. a. To study the refraction of light from plane surfaces. b. To determine the index of refraction for Acrylic and Water.
Purpose Theory REFRACTION a. To study the refracton of lght from plane surfaces. b. To determne the ndex of refracton for Acrylc and Water. When a ray of lght passes from one medum nto another one of dfferent
More informationSimulation: Solving Dynamic Models ABE 5646 Week 11 Chapter 2, Spring 2010
Smulaton: Solvng Dynamc Models ABE 5646 Week Chapter 2, Sprng 200 Week Descrpton Readng Materal Mar 5- Mar 9 Evaluatng [Crop] Models Comparng a model wth data - Graphcal, errors - Measures of agreement
More informationMachine Learning. K-means Algorithm
Macne Learnng CS 6375 --- Sprng 2015 Gaussan Mture Model GMM pectaton Mamzaton M Acknowledgement: some sldes adopted from Crstoper Bsop Vncent Ng. 1 K-means Algortm Specal case of M Goal: represent a data
More informationLecture 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 informationAP PHYSICS B 2008 SCORING GUIDELINES
AP PHYSICS B 2008 SCORING GUIDELINES General Notes About 2008 AP Physcs Scorng Gudelnes 1. The solutons contan the most common method of solvng the free-response questons and the allocaton of ponts for
More informationLecture 12: Photon Mapping. Biased Methods
Lecture 12: Photon Mapping CS 6620, Spring 2009 Kavita Bala Computer Science Cornell University MC problems Biased Methods Biased methods: store information (caching) Better type of noise: blurring Greg
More informationInteractive Virtual Relighting of Real Scenes
Frst submtted: October 1998 (#846). Edtor/revewers please consult accompanyng document wth detaled responses to revewer comments. Interactve Vrtual Relghtng of Real Scenes Célne Loscos, George Drettaks,
More informationRange 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 informationCS 563 Advanced Topics in Computer Graphics Irradiance Caching and Particle Tracing. by Stephen Kazmierczak
CS 563 Advanced Topics in Computer Graphics Irradiance Caching and Particle Tracing by Stephen Kazmierczak Introduction Unbiased light transport algorithms can sometimes take a large number of rays to
More informationRealistic Rendering. Traditional Computer Graphics. Traditional Computer Graphics. Production Pipeline. Appearance in the Real World
Advanced Computer Graphcs (Fall 2009 CS 294, Renderng Lecture 11 Representatons of Vsual Appearance Rav Ramamoorth Realstc Renderng Geometry Renderng Algorthm http://nst.eecs.berkeley.edu/~cs294-13/fa09
More informationAVO Modeling of Monochromatic Spherical Waves: Comparison to Band-Limited Waves
AVO Modelng of Monochromatc Sphercal Waves: Comparson to Band-Lmted Waves Charles Ursenbach* Unversty of Calgary, Calgary, AB, Canada ursenbach@crewes.org and Arnm Haase Unversty of Calgary, Calgary, AB,
More informationModel-Based Bundle Adjustment to Face Modeling
Model-Based Bundle Adjustment to Face Modelng Oscar K. Au Ivor W. sang Shrley Y. Wong oscarau@cs.ust.hk vor@cs.ust.hk shrleyw@cs.ust.hk he Hong Kong Unversty of Scence and echnology Realstc facal synthess
More informationComparison of calculation methods and models in software for computer graphics and radiative heat exchange
Comparson of calculaton methods and models n software for computer graphcs and radatve heat exchange Insttute of Electrcal and Electroncs Engneerng Poznan Unversty of Technology ul. Potrowo 3A, 60-950
More informationRadial Basis Functions
Radal Bass Functons Mesh Reconstructon Input: pont cloud Output: water-tght manfold mesh Explct Connectvty estmaton Implct Sgned dstance functon estmaton Image from: Reconstructon and Representaton of
More informationSimulation Based Analysis of FAST TCP using OMNET++
Smulaton Based Analyss of FAST TCP usng OMNET++ Umar ul Hassan 04030038@lums.edu.pk Md Term Report CS678 Topcs n Internet Research Sprng, 2006 Introducton Internet traffc s doublng roughly every 3 months
More informationMachine Learning 9. week
Machne Learnng 9. week Mappng Concept Radal Bass Functons (RBF) RBF Networks 1 Mappng It s probably the best scenaro for the classfcaton of two dataset s to separate them lnearly. As you see n the below
More informationEECS 730 Introduction to Bioinformatics Sequence Alignment. Luke Huan Electrical Engineering and Computer Science
EECS 730 Introducton to Bonformatcs Sequence Algnment Luke Huan Electrcal Engneerng and Computer Scence http://people.eecs.ku.edu/~huan/ HMM Π s a set of states Transton Probabltes a kl Pr( l 1 k Probablty
More informationMIT Monte-Carlo Ray Tracing. MIT EECS 6.837, Cutler and Durand 1
MIT 6.837 Monte-Carlo Ray Tracing MIT EECS 6.837, Cutler and Durand 1 Schedule Review Session: Tuesday November 18 th, 7:30 pm bring lots of questions! Quiz 2: Thursday November 20 th, in class (one weeks
More informationBiased Monte Carlo Ray Tracing
Biased Monte Carlo Ray Tracing Filtering, Irradiance Caching, and Photon Mapping Henrik Wann Jensen Stanford University May 23, 2002 Unbiased and Consistent Unbiased estimator: E{X} =... Consistent estimator:
More informationPBRT core. Digital Image Synthesis Yung-Yu Chuang. with slides by Pat Hanrahan
PBRT core Digital Image Synthesis Yung-Yu Chuang with slides by Pat Hanrahan This course Study of how state-of-art ray tracers work Ray casting Rendering equation (Kajiya 1986) L i ( i p,ω ) ω i ω o L
More informationMachine Learning. Topic 6: Clustering
Machne Learnng Topc 6: lusterng lusterng Groupng data nto (hopefully useful) sets. Thngs on the left Thngs on the rght Applcatons of lusterng Hypothess Generaton lusters mght suggest natural groups. Hypothess
More informationMOTION PANORAMA CONSTRUCTION FROM STREAMING VIDEO FOR POWER- CONSTRAINED MOBILE MULTIMEDIA ENVIRONMENTS XUNYU PAN
MOTION PANORAMA CONSTRUCTION FROM STREAMING VIDEO FOR POWER- CONSTRAINED MOBILE MULTIMEDIA ENVIRONMENTS by XUNYU PAN (Under the Drecton of Suchendra M. Bhandarkar) ABSTRACT In modern tmes, more and more
More informationPart I The Basic Algorithm. Principles of Photon Mapping. A two-pass global illumination method Pass I Computing the photon map
Part I The Basic Algorithm 1 Principles of A two-pass global illumination method Pass I Computing the photon map A rough representation of the lighting in the scene Pass II rendering Regular (distributed)
More informationPath Tracing part 2. Steve Rotenberg CSE168: Rendering Algorithms UCSD, Spring 2017
Path Tracing part 2 Steve Rotenberg CSE168: Rendering Algorithms UCSD, Spring 2017 Monte Carlo Integration Monte Carlo Integration The rendering (& radiance) equation is an infinitely recursive integral
More informationA 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 informationVanishing Hull. Jinhui Hu, Suya You, Ulrich Neumann University of Southern California {jinhuihu,suyay,
Vanshng Hull Jnhu Hu Suya You Ulrch Neumann Unversty of Southern Calforna {jnhuhusuyay uneumann}@graphcs.usc.edu Abstract Vanshng ponts are valuable n many vson tasks such as orentaton estmaton pose recovery
More informationLight Factorization for Mixed-Frequency Shadows in Augmented Reality
Lght Factorzaton for Mxed-Frequency Shadows n Augmented Realty Dere Nowrouzezahra 1 Stefan Geger 2 Kenny Mtchell 3 Robert Sumner 1 Wojcech Jarosz 1 Marus Gross 1,2 1 Dsney Research Zurch 2 ETH Zurch 3
More informationAn efficient method to build panoramic image mosaics
An effcent method to buld panoramc mage mosacs Pattern Recognton Letters vol. 4 003 Dae-Hyun Km Yong-In Yoon Jong-Soo Cho School of Electrcal Engneerng and Computer Scence Kyungpook Natonal Unv. Abstract
More informationReal-Time Volumetric Shadows using 1D Min-Max Mipmaps
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
More information