Intro to Graphics 22 - Signal Processing

Video Statistics and Information

Video
Captions Word Cloud
Reddit Comments
Captions
thank you for joining another lecture for introduction to computer graphics we've been talking about rendering in this course so far well lately anyway today is going to be our last topic related to uh directly related to rendering and then we're gonna start talking about other stuff and we're gonna wrap up the the rendering related discussion by talking about something quite fundamental very very fundamental to computer graphics very very fundamental to image generation and image processing um and that's a that's a topic that's not really limited to computer graphics but actually spans many areas but we're going to investigate it in the context of computer graphics of course that's our goal here right so we're going to talk about signal processing a signal signal can be a lot of things in a lot of different contexts in the context of computer graphics again a signal can be a lot of things but most of the time when we say when we think about signals in computer graphics we're actually talking about images we're talking more specifically we're talking about raster images we're going to treat raster images as a signal and there are reasons for doing that the signal processing and the whole concept of a signal that that actually existed before people were really thinking about the signals in computer graphics but but in other fields people have been dealing with signals a lot of that literature was very very related to computer graphics and computer graphics people started looking into that and started applying those ideas into computer graphics and and and you will see that these are really core fundamental ideas that have very widespread use cases in computer graphics so that's what we're going to to look into today signals and signal processing and sampling but we're going to look at them in a more practical way and we're not going to really look into the the the math so much and we're going to talk about signal processing and and without actually getting into the the math details of the sampling theory and this is sort of intentional but i'll briefly measure that at the very end right so this is going to be a relatively light lecture i'm thinking not not not too many although there's going to be a few equations uh in there you'll see all right so signal processing now when we say signal in computer graphics as i said most of the time we're talking about images and raster images now images are a little complicated in in terms of signals because images are like 2d there are easier signals so since we're going to talk about signal processing let's start with looking into simpler signals first all right so we're going to we're going to start looking at we're going to start looking at audio signals we're going to start with audio signals um sound right because that that's going to form much simpler signals because they're lower dimensional actually a sound signal would be just one dimensional so um you can visualize a sound signal like this uh so in this case time dimension is this way so there's this time dimension and there's a there's a sound wave and uh going up and down like this you can't quite see it because we're sort of zoomed out but i'll zoom in and show it to you so this is this is the time dimension and up and down axis this this vertical axis represents the pressure change so high pressure low pressure right and that that's what sound is samsung is the way that that's traveling but we're looking at sound at a certain point and we're just changing we're just recording how the pressure changes in time so that's that's the the audio signal right so before we zoom in can you guess what this sounds like nothing too interesting actually it sounds like something like this can you hear it yeah very simple okay let's zoom in to this little portion here uh okay now you can now you can see the sound wave right so there's a there's a little bit of sound wave so this is what a sound wave isn't okay so what's what's so interesting about this um the one of the first questions here is how am i going to record this and this this existed with audio recording precedes our understanding of computers people started recording sound on all sorts of devices there was also analog devices right they started recording uh sound on tape and other things basically what you need to do is to figure out a way to capture sound and convert it into this way you're drawing right if you can do that then you're okay but in computers we will need a digital representation of the sound and that's what's important a digital representation so how am i going to do this well it's you can think of this as a curve yeah it is a curve right but i how am i going to actually record this curve that can pretty much have any shape well typically what we do is that we record some points along these sound waves so we're going to sample them so you can't quite see the samples at from from here let's zoom in some more and now you will be able to see the individual audio samples here uh i'm going to zoom in to this section and if i extend it uh you should be able to see the individual audio samples right so these are the actual let's call them pressure values that they're recorded here to represent represent the sound wave very good so they come they are recorded at a certain resolution a very small time step we have a recording this is um using the the standard recording recording frequency uh i was trying to avoid saying frequency in this context but recording resolution yeah let's call it that way resolution all right so this is what that remember this is what it sounds like okay so this is some sound with some frequency that corresponds to a wavelength so you can see that the wavelength is well this this is the wavelength all right actually you know probably should start from here yeah this is the wavelength right and the frequency is going to be one over the male length right so if i were to convert this sound to a lower frequency sound it's going to have a larger wavelength right so the wavelength is going to grow and the frequency is going to be lowered so something like this maybe i pretty much double the the weight length and now it sounds like this all right difference i can lower the frequency some more with a larger wavelength oh good right i can also do the opposite i can um increase the frequency by shortening the the wavelength now it's something like this can you hear it uh this is a little harder to hear right yeah barely audible well i can i can increase the frequency right let me let me increase the frequency up over here wait what what what and what happened do you see these samples up here what happened to them i see my nice sine wave down here this kind of got messed up a little bit do you see that i mean this doesn't look like a clean nice sound wave i can barely see what this looks like i'm not actually even going to play this to you because this is super high frequency it's it's really barely audible um and and i'm i'm looking at my recording and my samples and they are not showing me a nice looking sine wave anymore right so over here i had enough samples i had enough resolution to reconstruct this wave shape over here i don't really have enough sample density i don't have enough resolution to form this this shape now this is the problem that means my my samples here are not representing this this audio signal well enough right so if i were to reconstruct that signal now that's what we do when we play the sound right we're reconstructing that actual audio signal if i try to do that from these samples i'm going to have a lot of error right because these samples are not dense enough but that's not a problem because this is the kind of sound that we won't be able to hear or we will barely be able to hear so this is not going to be a high fidelity recording but you probably don't care because you know if i can't hear then why would i care uh now similar things similar things are going to appear in computer graphics when we're dealing with images but in that case there may be things that we can actually notice so this problem might be a bit more important in computer graphics over here we're okay because this is super high frequency sound yeah my sample sample density that sampling resolution is not high enough so i can't quite record it well enough i can't quite assemble it well enough but maybe that's okay because i can't even hear that frequency but let me show you a part of the original sound so this is the the original sound before i uh convert it to high frequency this is how it was now this is this is the very beginning of that sound wave in the very beginning if you look at this can you see that nice sine wave here it's kind of it's going up and down and up and down like this this is totally crazy like what would be the actual wave shape here i can't i can't even even discern by looking at these samples so when we try to generate an audio signal out of this what we're going to do is we're just going to connect these samples and there's going to be some wave but as you can see it goes up all the way up here and then down all the way down here and then all the way up then this is going to be a mess and the reason why this is happening is that there there are some really strong super high frequency sound waves here and those super high frequency sound waves are not captured quite right and that's a bit of a problem because it's sort of messing up our signal yeah i'm i probably have lower frequency sound signals here along with these super high frequency sound signals and i can reconstruct those lower frequency sound signals i could well my sampling resolution was enough but because my sampling resolution was not enough for this higher frequency crazy sound signal that they actually showed up as like noise it just sort of messed up my recording right and this is a typical problem for for sampling signals it's a very very important problem for sampling signals and so the beginning of the sound i'm not sure that you can hear it's a little messed up because of that now this might be okay it's some noise but sometimes sometimes that noise turns into something something really bad you ready so here's an example here's an example from the book here's a nicely sampled sound signal with a particular frequency okay and and if i sample it with this resolution this sound signal i can reconstruct it fine everything's good all right i'm going to take the same signal now i'm going to sample it with lower resolution all right now i'm going to sample it with lower resolution i sampled it with lower resolution now i have much fewer samples but you see what happened here it's it so happens that the resolution i have for these samples sort of interfered with the frequency of the signal and and i created some samples over here as if those samples were on a different way and they're not now this is this doesn't exist this this uh this dashed line signal that doesn't exist what exists is this blue one right that that this one actually does exist but this this dash one it does not exist but if i try to reconstruct this signal using my samples this is the one i would be reconstructing this is the sound way that i would be generating if i were to use these samples now what's the problem with it because this sound wave with dashed lines did not exist in my original signal so because of my sampling resolution i ended up recording something that did not exist and this is a lower frequency sound i can probably hear this right i can hear something that doesn't exist in my original data just because i did not have enough sampling resolution now that's a very very important problem about sampling very very fundamental problem about sampling this basically says that when you have a certain resolution of samples there is going to be a particular frequency beyond which you will not be able to reconstruct faithfully right there's going to be a limit and that limit really depends on your sampling resolution all right and if you reach that limit and if you try to sample signals that are beyond that frequency you are going to get garbage and that garbage might end up hallucinating something that doesn't exist and that is the phenomenon that we call aliasing so this sound wave appears as if it's this lower frequency sound wave uh and that is going to cause all sorts of perceptual problems and similar things are going to happen in computer graphics as well we sort of touched on aliasing and anti-aliasing a little bit we're sort of getting there so that that's going to be the problem by coolant that we're going to have in computer graphics but here you can i think you can appreciate that this is going to be a different sound wave and this is a sound wave that we will be able to hear and something that doesn't exist in our in our data so the solution to that for audio recording would be filtering the sound out before you sample it so filtering higher frequency signals and eliminating them from your original analog signal would be the solution for this you get rid of this so that it doesn't create this aliasing unfortunately the the problem is a little more fundamental in computer graphics and it's a little in in many ways it's harder to resolve now how does that relate to how does that relate to computer graphics let's get there all right we talked about raster images remember and when we talked about raster images i told you what did i tell you i told you that a pixel is not a little square pixels are actually samples samples at a certain point so um you should you can think of this as like we had this original signal that was our scene and we had this original signal and we sampled this signal at certain positions at a particular resolution right it's very much the same thing like the sound waves but in this case we're sampling it in two dimensions instead of sampling in only time dimension right we're sampling it in two dimensions now all right i'm looking at this i don't see any high frequency stuff do you see any high frequency stuff here there oh it seems very everything is like flat right nothing high frequency this should be okay right wrong wrong this is actually there is some super high frequency stuff hidden in here now what is the high frequency the high frequencies in an image they come from edges any kind of sharp edge you see is going to be super high frequency i'll show you what i mean by that but here you see like the basically look look at the letters right the edges of the stop sign that any kind of edge where there's a color value and then it drops immediately to a different color value right next to it that would be super high frequency like i'm talking about these edges let's say just uh look at one cross section of that image like there is a high some color value let's say this was something like white some bright color and all of a sudden it drops to a darker color right so this is a one-dimensional graph to imagine that i i looked at a line over that image right so and a very bright bright value and then also it drops to a dark color value uh so why is this why is this high frequency well let me show you how we could generate a signal that looks like this by combining signals with different frequencies you can do that i can just superimpose different frequencies of let's say sine waves and and generate something that sort of looks like this right so let's say i'm going to start by picking a very large wavelength a very low frequency wave right this is not even going to look like waves it's going to look like this because it's imagine it just it continues it continues down and up just a very very large sine wave now i'm going to combine this with a sine wave with just a slightly higher frequency with slightly higher frequencies i added this one on top of that and the result became this this blue one it still look looks very low frequency right so i'm adding one more with higher frequency now the result becomes this i had one more with higher frequency now the result looks like this i had one more with high frequency now the result looks like nah okay it started to look like it way all right so i'm going to show you an animation where i'm going to keep adding this orange stuff and the result is going to be this blue curve okay let's see if we can generate an edge like this uh so we're starting from the beginning ah we're adding more more and higher from higher frequency higher frequency and higher frequency are if you can see almost maybe there okay all right it's still not perfect not not even close right it's still not perfect but we're getting there the thing is to be able to generate a super sharp edge like this super sharp edge like this i will need frequencies going all the way to infinity so so that means that a signal that has this very sharp change will require super high frequency signal uh to record that that means that that signal includes super high frequencies that means if i try to sample the signal i am going to be in trouble okay so that's the sampling theory that sort of applies to computer graphics right in this case an image like this if i try to sample this at these positions i am going to get a lot of aliasing here this is not going to look very good but if i somehow somehow magically magically eliminate these high frequencies how do i eliminate these high frequencies i smooth out all the edges right if i just eliminate to just remove all these high frequencies from the signal and my image sort of looks like this like this becomes this this blurred image right if this was my signal if it didn't have these high frequencies then things would have been okay then i wouldn't have aliasing problems my sampling would be just fine right so uh you can think of this as in this image i had edges that look like this right and i smooth it out so now i'm getting smooth edges that look like this so my image sort of looks like that we're going to talk about how to do this but i'm just trying to communicate the idea that we're trying to sort of get rid of the high frequencies that causes problems now we've seen problems associated with this sort of sampling issues like sampling signals that include high frequencies like this let's see an example of aliasing in in rendering remember this guy so when we did bilinear filtering uh we got aliasing and this is this is exactly what it is you see that so over here you should be able to see the sum some pattern emerges but that pattern is not the pattern that we actually have it's a different pattern it's a pattern that actually doesn't exist it's a lower frequency pattern right and this is exactly everything it's the same exact kind of aliasing that that popped up when we're looking at the audio signal it's exact same aliasing problem and how do we fix this problem we fix this problem by using uh trinomial filtering or mid maps right the dental training with map filtering what do we do so we have for computing a point back over here we figured out what the corresponding pixel size and shape was and then we said hey i'm just going to pick a filter of this size and we're going to just take the average of all these points we're going to pick a mid-map level where the pixels are approximately this big right so with trivial filtering actually we're going to pick two mid-map levels and we're going to interpolate the two right so but but what we want is a texture image with with textures that this big this big and an image that corresponds to this structure where the texels are that big will be a mid-map level that will look something like something like this right so if we sample this level then we're okay now we're not going to have at least problems and so we're solving this aliasing problem by using a texture that does not have those high frequencies that we cannot quite represent over here so that was our solution well the same thing also happens in typical rendering of triangles right we saw this before like we have two triangles here is an image rendered using ellie's sampling and here's an image rendered using on anti-aliasing so what happens here in this case now if i were to just take this input signal that is my set of triangles and somehow cut it up these edges and converted these hard edges into sort of soft smooth edges then i could sample it fine and get this image but this is kind of hard to do right i can't quite do that it's a bunch of triangles how do i get soft triangles that's that's the fundamental problem that we kind of have to deal with and the the way we solve that problem here to be able to generate an anti-aliased image like this is that we end up sampling this input signal in multiple different places and and averaging them so that's not what we've been doing with with multi-sampling by having multiple samples per pixel we were trying to create an image like this and from the perspective of signal processing that's what we were doing we're trying to get the equivalent of an input signal that would have the soft edges you can think about it in in those terms basically but what we actually did was we looked at of course how much of each pixel was covered by each one of our triangles and we were sort of assigning colors based on that what was a sine color what percentage of our samples were dissected with these triangles right so that's the idea so this is the whole concept of signals and sampling that relates to computer graphics in the rest of this this lecture i would like to talk about this very important topic that is image filters image filtering so what do i mean by that it's actually a related concept you will see let's say i have an input image like this and i will i'm going to use this image and from this image i'm going to generate an image let's say i'm going to generate an image that does not have such high frequencies i'm going to generate an image that will look like this it's like a blurred version of that image how can i do that so i can do that using using image filters right for each pixel i just pick that pixel on the nose here for each pixel on this side to be able to figure out the color of that pixel what i'm going to do is i'm going to look at the corresponding pixel in this input image and its color but i'm not going to just take that color and copy it over because then i would get exactly the same image what i'm going to do is i'm going to look at the pixels around that pixel i'm going to look at the pixels around that pixel and for each one of them uh i'm just gonna you know move them over here uh so for with it within the neighborhood of that pixel i'm gonna look at all these all these colors within the neighborhood and in this particular case i'm going to take an average of them so i'm going to multiply all of these pixel colors by 1 and then divide by 9 that would give me the average right and that average is what i'm going to write as my output over here so that's going to be the pixel value for that pixel on the nose and and this is going to be what we call a box filter more specifically it's going to be a three by three box filter because it's in a three by three range right so it didn't have to be in three by three range i could look at a larger range let's say i could look at a 5x5 range so my pixel position that corresponds to this one is exactly at the center of that 5x5 range so in this case i'm just taking an average of that and that's add them all up divide by 25 because there are 25 of them so i'm gonna get a different color i'm going to get something that looks a bit more blurry all right so that would be that would be a 5x5 box filter generates an image that looks even more blurry uh i didn't have to use a box filter like i didn't have to use the same weight for for all of these pixels i could use different weights for example i could use something like this in this case this is a 5x5 what we call gaussian filter uh has different sets of weights and a different normalization factor of course we get a different value and a different image it just looks different right so if you're curious about how these three things i showed you compare so this is the gaussian filter image generated using the gaussian filter image generated using the 5x5 box filter and the image generated using a 3x3 box filter yeah so this is not as blurred this is more blurry this is sort of in between the two this is this looks more like gently blurry because of the the shape of the filter by shape of the filter here's what i mean um so these were all generated by one block one one one there's all one one one and this is just a different thing so if i were to normalize these values and if i were to draw a uh an image that corresponds to these they will look like something like this so this is like a square and that's why we call it a box filter right a square this is like a larger square and this is something that comes out of the gaucho distribution the weights that i showed you in the previous slide they're coming from some positions on on these functions or these continuous functions so that's how i generated these filters another way to look at these would be to show them in 3d like this like a 3d graph view right and so now now you see like this is this there's a box and another box right these are box filters and this is the nice smooth shape of the gaussian filter and these are the values that i picked from the these functions for generating these filters yet another way of looking at these filters would be just looking at them as like a cross section so i'm just going to pick one cross section that goes over the the tip here and another cross section here another cross section there if i just look at this cross section this is what these filters look like right so it's just one dimension in one dimension that's what these filters look like of course they also operate in the other dimension right so these are just three filter examples and if you apply these filters you'll get these three different images if you apply them to the input image that's what we get so what is happening here so this is an operation that we call um convolution so convolution is the operation where we take an input image and we generate an output image using another another image or an another scene so we take an input signal and we apply another signal we convolve another signal we get this output and in mathematical form this is how we write it so the star here is our convolution sign so a is our let's say our input signal b is the filter that we're applying and c is the output in this case right super simple so this kind of looks like multiplication but this is not multiplication right so the way we're applying this filter is is different like or for each pixel gonna place the filter over it to do a weighted sound there but convolution actually not just that it it kind of looks like multiplication it actually appears like it behaves like multiplication too i'm writing it in this sort of mathematical form just to make one important point that is convolution is a general operation we are typically going to use them for raster images but they're not limited to raster images they're not limited to sample digitized data right so they can be used with analog signals as well the the whole concept of convolution uh it also applies to like continuous signals that they don't have to be like discrete sample signals so this is how we write convolution and as i said it sort of behaves like multiplication so the convolution order doesn't really matter right so if i swap the filter and the input image here and apply the input image as a filter on the filter signal i would get exactly the same today we have the commutative property it's also associative so you can apply a filter to an image and then apply another filter or you can convolve the two filters together and then apply the result to the image you get the same thing it's also distributive so it's very much like it behaves very much like multiplication if i have a signal that is sum of two signals that's let's say that is my filter here i can just apply the first filter and then i apply the second filter and i add the result value i would get the same thing right so it really behaves like uh multiplication but it is not multiplication this convolution is a very different operation very very different operation all right let's you know what let me i'm going to explain this i'm going to show you how this works really if that wasn't clear already so this is as i said input filter output all right so these are our abc values now to apply convolution to generate this output what i'm going to do is i'm going to take this filter and i'm going to put it on top of i'm going to center it on top of the very first pixel here oh over here right and that is going to give me that is going to give me the value of this pixel over here so what i'm going to do is that i am going to take the values of this filter and multiplied by all the pixels around it and i'm going to write the results to this pixel so i'm done with this pixel and then i go to the next pixel and the next pixel next pixel next pixel over that scan line all the way here and i formed all the colors over here now i go to the next scan line go to next scan line and i'm going to do exactly the same thing so i'm gonna i'm gonna keep doing this for for every scan line i'm gonna keep computing this convolution for every scan line and then finally it forms this image right so this is not like um this is not multiplication this is convolution it's a very very different kind of operation we take this filter and we sort of move it around the image for and we put it at the center of each pixel at one pixel at a time right so i showed you a few examples of convolution filters so like three by three box filter five by five box filter and five by five gaussian filter those were just some examples of convolution filters that look like these these were the values that came out of those filters i'm not including the normalization factors here so i kind of need to normalize these these values so that the result adds up to one uh this is actually not a requirement for a convolution filter for all these filters i'm going to normalize them but that's not a requirement convolution can be done with any two signals so there's no requirement that the filter i use with convolution or one of the signals i use for convolution has to add up to one that there's no requirement like that but if it doesn't add up to one it's going to do different things so if it's if it adds up to a value that's greater than one then my output is going to be brighter than my input it's not going to be just blur but it's going to be brighter right if it adds up to a number that's less than one then it's going to end up the output is going to end up being something darker so these are just three examples i'm going to show you three more ready three more examples so in this case a three by three tenth filter five by five ten filter it's just a kind of like box filter but sort of smoother than that and this is a sharpening filter this didn't blur this made the image look sharper right so as you can see with sharpening filter i have negative values here and the very strong positive value in the middle so this is what this particular sharpening filter looks like and the image looks sharper than the original image and if i were to draw them like a cross section these are called tense filters because that's what they look like and this one's a sharpening filter probably the scale scale is not quite right this one should be way up but you get you get the idea right um and the sharpening filter is i i think it's kind of interesting this is formed by generating an image with a box filter and then subtracting it from the original original image and then adding it adding the original image back what here's what i mean all right so this is the three by three box filter image right now if i take the original image and i subtract the original image from this one or if i just compute the difference or if i subtract this filtered image from the original image i would get this filter so the original image so this is values divided by 9 right so if i subtract this from the original image that the center will get um a weight of nine and i then subtract one gets eight and the other ones are minus one right so you get this filter this is a filter that sort of creates these edges right and if i take this image take this image just add it to the original image add it to the input image i get this sharpening filter and then the sharpening filter will look like this so you can you can apply this filter one by one like this first do a box filter and then subtract it and then and add but you know using the properties of convolution we can just combine them together and form one filter so in the end we get a an equivalent filter of this sharpie filter so that that's that's what it looks like so you know there could be all sorts of different types of filtering operations all sorts of different types of convolution operations and and you can sort of generalize the whole this whole concept as a convolution filter is just going to be just a filter like this or talk about you know raster images basically it's going to give us a weighted average or some weighted sum of the pixel values around the pixel okay so for each pixel on the nose here i'm going to look at the the pixels in this case a 3x3 area so this is what convolution filters will look like just that some set of weights so how you set these weights will determine what the output will look like but in the end it's still the same operation we're still doing convolution operation now the concept of image filters is actually a bit more general than this so convolution is one very common technique used for all sorts of image manipulation but we can do things a little we can do a little more complicated things for example these weights over here these weights in convolution they're constant weights they come from our one of our signals right this filter signal determines these weights and these are constants and i i'm going to apply the same weight for all pixels in my input image and to get the output image but it doesn't have to be that right i could in theory modify these weights based on what i'm reading from the input image so i can sort of look at the look at these colors on these pixels and i could modify my weights actually i could just take these colors these nine colors and i could do whatever i want with them just apply some function some function whatever function i want and that produces some output so the input to that function is just these nine pixels around the neighborhood of a pixel and the output is just some um pixel color value so that would be an image filter now this may or may not be a convolution filter it doesn't have to be but it's sort of like operates like a convolution filter because i'm gonna you know place it in the middle of every pixel but it's a sort of different kind of operation but it depends on what kind of function i have so what i'm trying to say is that this could be something a bit more general this whole concept can be generalized a bit more actually it could be it could be extended even further that i could use some data that does not exist in this image i could use some external data maybe i could use a third image and that third image defines how this function will behave so this i could have some other inputs to that function someone will vary input based on position maybe or maybe some constant parameters that will determine how my function is going to behave right so this whole concept of image filtering can be can be really broad can be really generalized and of course i don't have to look at a three by three neighborhood i can definitely look at a larger neighborhood we already did that with convolution right i could have a larger filter larger and larger actually you know what i could just look at the entire image if i want to that that's why so this whole concept of filtering is a very general concept but oftentimes when people think about filters they think about convolution filters because convolution filters are probably the most common way of using this idea of filtering and they're very very not they're not just popular they're also very very effective and a lot of things we want to do with image for for image manipulation they can be done with all sorts of different convolution filters but there are cases where just regular good old convolution may or may not be enough an example of that i think is denoisers so that's where we ended last time this is where we're going to end it this time too this is a denoising filter it's actually using more information than just the pixels of this image so this is not just an image that is blurred because if you look at the noise image on that side and then not so noisy image on this side it's not blurred right it doesn't look blurry or anything because it's not just blurring the pixels but sort of combining the information on these pixels together with some some some other information let me give you a more specific example from from uh my research with one of my students deichelin we published a paper on real-time global elimination last year in i3d and for that paper we're sort of estimating really quickly estimating shadows generated by indirect illumination so these are indirect shadows and if you compute them fast they become super noisy so these shadows are super noisy in this case we're filtering these shadows and we get sort of a soft looking filtered shadow so this is basically we're applying a denoising filter to the indirect illumination shadows and and the next result is that we get an image that has global elimination like this all right maybe you like the pretty colors maybe you don't maybe you don't like this image maybe you do but the point is here actually global animation is very very important if you can't quite appreciate that let me show you an image if i disable global elimination here if i just show you direct elimination directly from the one single light source in the scene that is up there direct donation only this is what it looks like right a lot of dark spots why because they're in shadow the light can can't see them so if you add indirect elimination to this and we talked about how to compute indirect termination although for this paper we're doing something else which i'm not planning to explain uh not today anyway uh so if you add the indirect illumination on total direct illumination you get an image that looks more like this so all this stuff that is visible here uh it's it's that part is illuminated due to indirect illumination and and this image does not look like garbage because even though our indirect shadows were very noisy we used a denoising filter to filter it out so this concept of filtering is very very helpful especially today uh with all sorts of uh denoising algorithms we have today very very applicable to rendering so i i believe i successfully managed to tie this whole discussion to rendering and this is where i'm going to stop and this is actually where i'm going to stop talking about rendering and next time we're going to move on to talking about other things that is going to be animation okay i'm ending it now great i'll see you all next time and when we will be ready to talk about computer animation bye thank you
Info
Channel: Cem Yuksel
Views: 1,272
Rating: undefined out of 5
Keywords:
Id: UQl6ttthfXE
Channel Id: undefined
Length: 48min 35sec (2915 seconds)
Published: Sun Nov 14 2021
Related Videos
Note
Please note that this website is currently a work in progress! Lots of interesting data and statistics to come.