Lec 28 MIT 18.085 Computational Science and Engineering I
so I've got to complete some thoughts here about the refinement equation which dominated Lector 27 and bring in wavelets as the differences between one the coar scale and the fine scale V not is contained in V1 but there's some more stuff in there and that's the details because you know V1 has details in it that vot doesn't have and it'll be the wavelet space you not that shows us those details then to discuss some applications some of the many applications and good a very good question was asked in the before the lecture how did we get how did do ingred doesi who whose great paper was in 1988 how what question was she asking herself and what answers did she find okay the question she came out of physics and uh had friends in seismology so for example a question that was in the air was what kind of a basis could seismology just use to represent a a fast pulse that stops and 48 basis was not any good for that the signal was uh was not suited to functions that go on forever so it was natural to look at to look for a basis we we want among other things we want uh compact support finite length can I write it as compact support since I started to just because it seems reasonable to that our basis functions that there there might be basis functions that are supported out here and we want zero of those and then we we kind of think of har as as one answer but so we wanted compact support like har we wanted different scales multiscale like har but then we also want somehow better than har because har was 80 years old by that I mean not the person the the idea was uh we wanted to or she wanted to better make it clear that it was ingred improve on har and at that point it was natural to think about orthogonal bases as being quite good so and thinking of bases that were of that form some function some some function to be found that uh whose dilates and shifts would give automatically multiscale would have have compact support and hopefully would be better than har but it wasn't at all clear that such and and orthogonal I'm going to add in orthogonal so so maybe we no longer are so insistent on that property I I remember writing a survey paper in cam review um back at that time a of course after ing's paper had appeared there was a whole lot of of interest in it and I remember asking ingred well do wavelets have to be orthogonal or not and after some thought she said maybe not and now we would say definitely not because uh we know that in these applications we often want Symmetry and we can't have orthogonality but at that time she wanted orthogonality so she wanted to create a basis that had these properties and I I'll write down in a minute what what the hor wavelet is but it wasn't clear that you could even how to tackle it I mean this is a bunch of functions and and how do you decide whether they're orthogonal so on I mean it it was like a a real math problem where you where you don't know where you're going frankly you you're waiting for some lightning to strike to give some idea and now of course we do have a a um framework uh based on these filters in which uh it really despite the confusion of all lectures in this series uh is a much clearer picture and and and there's a a way to go um so that now and ingred sort of began to find that way other people stepped in Mala and others Mayer uh those are some of the great names in this subject uh on in the seismic area there was a physicist named grman yeah all in France actually these guys and then came uh Mayer who's a great uh mathematician uh his uh Mala who's uh now senior was a graduate student at that time and of course ingred and uh and others yeah the history is quite interesting oh and you should know a book if you interested in like reading personal the personal side of something like this there's a book um called I think it's called the world according to wavelets by uh friend Barbara Burke hover maybe I'll put her name somewhere so um okay so World I'll just say world according to wavelets and uh she uses a hyphenated last name Burke uh hubard and it's published by a local company um AA uh AK Peters AK Peters it's a natic publisher and a very nice bunch of people and this book has won prizes for sort of popular Exposition so it's quite fun to give you the story more than I could do in these short time okay and now maybe I'll jump to what the wavelet is for har because we've seen the scaling function it's the Box function the wavelet well actually we could guess it if we knew this wavelet equation you remember F oft as the box and now I'm going to take I'm in the hor context so I just have two coefficients plus and minus in the low in the high path filter right Plus and minus they are so we take that combination of boxes and we get this again it's from 0 to one and it's a box half box minus a half box that's the hor wavelet so you see wavelets have integral zero so they they're picking up oscillations where the scaling function is picking up averages so uh this is maybe the key picture for this lecture the key example and uh in in several ways so let me jump into the wavelets here okay and these spaces W what I've called in the in the uh lecture outline I've called WJ so what is WJ so WJ fair enough it's all combinations of the wavelets instead of the scaling function you remember VJ was all combinations of Fe at scale J and it shifts so it's a bunch of functions at that scale J this is the same of w at that scale so those are the W's and these are the v's okay now let me come to this uh with this example let let me put the Box function in here too just next to it so this is the Fe and this is the W both from zero to one and here's the here's what I'm here's the equation I'm I'm uh shooting for checking wanting to check that that the fun that I take all the functions in v0 and all the function and add to any function in W and what do I get well the answer is going to be V1 these are the functions these are peie wise constant on intervals these are these are on unit intervals so oh let's just draw one so dot dot dot dot for example there there I got out to two and what's what's in w0 well if I stay between zero and two I what's in w0 then it's this guy plus any multiple I'm taking any combination say say this guy on this one so there's a typical typ I'm just drawing one typical guy in v0 and a typical thing in w0 It's a combination of this and its shift with certain weights maybe that height is 2/3 maybe that height is 1.6 whatever and I combine those so let me put a plus sign in yellow here for once okay and what do I have what kind of a function have I got I've got a function that's piecewise constant on half intervals right clearly because this is PE wise constant on unit intervals so automatically on half intervals and this is certainly peie wise constant half interval so the I've got a result that's in V1 but now the point is I can get everything in V1 from these two everything in V1 can be split it see this here's the decomposition here's the wavelet decomposition we know what a Fier decomposition is you split it into harmonics the wavelet decomposition is you split the thing into multiple scales so do you do you believe that I could take any function in V1 why don't I have any function why don't I have all of V1 right here yeah because the only functions I've I've got some functions in V1 here but they're all plus minus plus minus plus minus and here they're plus plus equal but if I mix the two all I'm saying is that out of out of one out of by combining one one with one minus one with the right weights I can get any AB within right that's that's that's all I'm saying is that if I if I'm shooting to get something that goes up a and then goes up B Heights a and B then some coefficient some multiplying the one multiplying this guy plus some coefficient multiplying this one would produce this one and then on the next interval new coefficient oh no problem so um this is then so let's go recursively because V1 plus W1 will be V2 what does that mean this I I my claim is that that uh um if I get it right at basic scale I've automatically got it right at all higher scales I mean just these functions were functions of t or 2T so just change T to 2 to the JT and you've got you've got it right at scale J but now look how we've got it v0 plus w0 but wait a minute is V1 but V so suppose I plug that in then instead of V1 I'm I'm breaking V1 down into into v0 plus w0 plus W1 is V2 and that's now we're getting there that that's the multiscale here's the averages here's the the course details and here's the fine details and I guess that I'm realizing that a much more um visual way to give this whole lecture would be to bring in the matlb toolbox mat lab wavelet toolbox and let you see these pieces so that that I don't know whether the lab has the I know you have mat lab of course but then there're all these sorry okay and and and would I and would I get that okay and would that toolbox be in the in the thing it probably is yeah well so here I admit that I'm a mathematician and not uh not uh so I was T talking hypothetically uh well I could I've seen it done so often usually by my colleague whoever that is that I could probably do it that that really I mean so maybe let me check offline after this lecture what might be feasible but what would we let's stay hypothetical in in this for this additional minute so what would that mat lab toolbox so it's the mat lab wavelet toolbox I'm speaking about so that's one of its many toolboxes one of the many toolboxes by the way the so mad lab of course is a product out of math Works in NAIC uh but uh they don't write the toolboxes they they hope that individual scientists around the world will think hey I know what I know how to use mat lab in in wavelet theory I'll write the toolbox and then they ma math Works pays the authors which in this case were four four additional French uh statisticians not not the ones I've mentioned uh they created the toolbox created the guey the nice user interface and so that you could call up call up a signal what's a signal it's a it's a well it's discreet actually but it looks like a continuous function and then you put the toolbox to work and you say Okay figure out its component at this level its averages uh and and it's and the P so so you would here's the fun we could say here's the here's the function and now the toolbox would break it into pieces so it would have a piece that was very smooth that would be the in the v would be the vzero piece and then would have a piece that's you know catching some of the oscillation that would be the w0 piece then would have a piece that's smaller probably much smaller in magnitude but oscillating more rapidly picking up the other oscillation ation that would be the W1 part and we could have like five scales or we just tell the toolbox how many scales we want four or five would be typical and then you ask them to add these functions together and of course they add back to the original so what I'm saying is the toolbox I'm writing things at the level of the whole Space of functions but what that means is for each function just like for each function just the way function has a fora series it's got a wavelet series and the toolbox would compute it so what would the wavelet series be it would use these functions and it would use these the vot plus the W's at all scales so so the the wavelet expansion of a function just comp compare it with the forier expansion that that that's the uh key idea here is the the difference between the F expansion and this kind of a wavelet expansion so so we have some combination in v0 of the its basis functions and then we have combination of in w but not only w0 but at also WJ at Al all the W's so we need a double index BJ K so there is it's looks a little messier than the 4A series but um it's the natural expansion in multiscale okay so you've right so we've selected a basis once we've decided on Fe and W we've got the basis and where do Fe and W come from well now they come from h0 and H1 so the your question which is right on is the the thing is the answer was in that in the previous uh lectures uh 25 and 26 I guess which were about the construction of H not and H1 and oh well you have to do you remember there that that if we have an orthogonal basis like har then the there's another pair of filters that I called FN and F1 and for or in the orthogonal case with hor they they were the same numbers but for other cases they are diff different numbers they come from these numbers by reversing signs and flipping the order and it's all that neat trick but did I get answer the question properly let me repeat where do Fe and W come from okay that was doi's question of course what the heck can I use for wavelets that improves on har that's better than this U Square wave and the hope would the natural idea would be that the wavelet should be longer so that you see what'll happen the beauty of har was there was no overlap between W of T and W of T minus one they were obviously orthogonal because they didn't even overlap but the when the wavelet goes from zero to three then the shift will go from one to four and they overlap in that middle region and of course the rescale versions are all overlapping all over the place so there this incredible overlap and you think how could I ever do those integrals and make them come out zero and I mean it looks like just a can of worms but the great thing is that if you construct your fee and W out of these that then these become the essential inputs that you have to decide on that there's your decision what are the H and H1 and we compiled uh the equations that we wanted those to satisfy in order for things to come out right and uh I don't know whether to recapture those equations um again I won't I hate to add more equations here uh but so so I'll refer to the text and to the earlier lectures for the condition so the but the main point is if we get an h and H1 that that made us happy last week then we've got a fee and a w that make us happy this week that that's that's it oh well we have a fee and a w in principle of course when I say we have a fee and a w it doesn't mean I actually know what fee is I darn well know what hn and H1 are that's just a set of numbers I don't actually know what F what Fe and W are and I don't want to know frankly because I don't need those functions you may say how could I do anything without those without knowing these functions the point is those functions came from these numbers and if I can make if I can throw all questions and all calculations back to those numbers I've got a good algorithm because there just a finite number small finite number maybe three four of each or maybe nine of these and seven of these or something seldom would I go much higher than that then I can work with those numbers and never need to know the function but uh so that's really the the whole idea is that that uh everything now is seen in terms of those coefficients and actually let's let's see it h how would I what is the relation between um yeah H how would I produce this function in V1 out of this function let me give you an example and so you where you have to tell me the numbers suppose my function in V1 is let me give you a specific function and you just tell me how many of each I need okay so suppose I want the com I want to take a multiple I'm just on one interval let me let me throw because I do this an interval at a time so let me just stay on the interval 0 to one 0 to one I've got the box function here and I've got the square wave here and I would like to produce let's say I would like let me so on zero to one suppose I would like to produce five three on 01 how much of the box and how much of the square wave should I put in to produce 53 four of these let me do that even in yellow four of these and how much of the other and one of those okay right so you had no trouble to do that but my point is these numbers four and one you could have what you could have done should have done is to take the 53 sample send it through now you're going to remember from last time send it through this low pass filter the H knot filter and send this one through the H1 filter and what would have come out do you remember what those filters well this is a very short signal we really I'm I'm really have all zeros and until it and then all zeros after it to to fit what I had before so do you remember what um yeah this is a very good thing to do here you remember what comes out you what's that filter again the H knot for har it's averaging right half and half okay so I send that signal through and what what signal do I get out of of this averaging filter where it takes so this filter takes half of the current plus half of the previous okay so out com here come in a whole lot of zeros and it'll keep averaging zero with zero and then the first time it sees this five it's averaging that with its guy before so it gets what two and a half well who wants two and a half nobody but it's gets it then it gets and then it averages the three with a five and it gets four the number we really want then it averages the zero with the three and it gets a one and a half so and then it's Zer after that so it's a so out comes a a five halves and then the four that we really like and then the three Hales that we really don't want and all the others are zeros okay but then do you remember what the filter Bank did to that it down sampled it took every other one so it takes takes this guy it picks the right one out and throws away these throws away a lot of zeros and now down here of course this is the differencing filter so it'll take five minus that over two 3 minus that over two why am I getting oh you see I'm the you see my trouble here I'm getting a minus one right I'm getting 3 - 5 over two why am I getting that because I've screwed up somewhere right okay yes so but it'll be the minus one which so I just you know you see how the the patience required to well probably a minus one will come out of here yeah I mean so a minus one is coming out of there and a four is coming out of there I I could really fix that or we all could fix this up there's a flip in the uh in between the uh between the analysis step the hes and the transpose the the synthesis the anyway the minus one would have to come out as the plus one but what was my point my my point is yes that we don't have to think about these functions we we can drop down to the to the the filters we take these values 53 and send or the sequence of values send through the filter bank and Out Come the numbers we want exactly right some other fee some other basis and and and well that's what that last lecture was about that if we had some low pass and high pass filter it might if it was a good one it would lead to a basis but but that those some of those numbers as we said sometimes don't but but you not worrying about I mean let's take an optimistic view of life here so yes so if I take decent numbers following you know then I can expect decent functions and and then everything will work the the expansion coefficients for the function are connected to the outputs from the filter from the from the filter Bank yeah that's that's the beauty that's what mala observed really I think is so it's sometimes called the Mala algorithm run it through the filter Bank so that's essentially what you do so if we're talking about applications what do you do you get a signal suppose you want to compress it let me let me start with that application compression okay so what do we do we get a sequence of samples of our signal we send those exam those samples through the filter bank and we get wavelet we get it wavelet transform at several levels of course not infinitely many levels can't do that but several levels then uh then we compress so then then we're saying okay we won't take the full we won't keep the full series we'll only keep terms that are worth keeping and how to decide what's worth keeping there that's the that's where the signal processing engineer is uh that's what he earns that's where he earns his extravagant salary okay and and I mean this is a certainly an area this telecommunications and so on in which the demand for graduate students in who know about this stuff is is incredible so so you've Comm compressed you've thrown away some of these coefficients and kept the ones you wanted then you go through the inverse transform and you have a or or you send the you transmit or store would do whatever you want with the compressed wavelet coefficients and then reconstruct at any time uh function that looks pretty much like the original it would be exactly the original if you kept all the coefficients but probably you kept the largest ones so it's not quite the original function but it looks the eye can't tell the difference so that would be a typical compression yeah for the Reconstruction well if I was going to get a real continuous time answer I would but in reality I'm only going to get a I'm only getting I'm going to get a sequence of samples when mat lab's toolbox is drawing this picture it looks like functions but it's really um uh it's working only with samples yeah so that yeah so I I suppose you could say that to draw this picture truthfully you would need to know fft because this is a combination of what I have what I'm seeing here is a combination of the fees at and their shifts but all the calculations have to be done for a finite set of numbers and those finite set of numbers here we have half as many numbers here we have and so on yeah did we need another set of filters we did we did that's right that's right exactly right uh in general it's a second set of filters that I called FN and F1 that that did the Reconstruction so really the whole package is to know those and as a matter of fact now I'm telling you what I might have revealed at the very start the it's really the fs because the Reconstruction as we're saying is in terms of these fees it's really the fs that uh enter in the scaling function and the wavelet that are really in this series I am sorry that to reveal that late but you sort of saw it why it's true uh it's the H's that find the coefficients and the fs that put everything back together so there's a scaling function and a so the the the full picture is that the hes can I there's a scaling function that's usually written F Tilda that uses the H's and a wavelet usually written W Tilda that uses the H1s but those are in the those are in the step of finding coefficients so you don't really see them then in the Reconstruction it's the fs in discrete time and the Fe and the W in continuous time right so everybody's remembering maybe good if I rewrite the the full filter Bank the signal goes through h0 and H1 down sampled then now we''ve done the transform we compress at this stage now comes the re inverse transform up sample and the the the other filters f f zero and F1 and then put the pieces together and you've got the reconstructed X hat let's say I'm just writing down what we were looking at last week so the whole whole point is is that these numbers that went into the filters are are the very same numbers that go into the continuous time these numbers gave a change of basis you could say gave the coefficients in a new basis then in continuous time these are the spaces and the fees and W's give the bases but the coefficients that that connect everything are still the same okay is that I'm I'm uh um uh let me give the dobashi repeat the dobashi um magic numbers because she was then the first to find numbers that worked and may I just repeat what those numbers were her numbers were uh 1 + Ro < tk3 3 + Ro < tk3 3 - < tk3 and 1us < tk3 those were the H's and the fs maybe the maybe the F the h no and F no maybe one is the flip of the other I guess it is right because yeah and that's where har got into a little trouble here with that flip and then the H1 and the F1 so th those one is the I use the same four numbers here because dobashi was shooting for orthogonal she uses these same four numbers but with um uh sign reversals by reversing every other sign I do get a highpass filter and the and this guy is orthogonal to that guy and uh the result of orthogonality of vectors is orthogonality of wavelength so that was uh but it's it's you might read that original paper by dobashi you might if you it's in 88 1988 uh Communications on pure and applied math so I'm pure and appli Ma it's the New York University Kon Institute journal and uh was just a very striking paper for the amount of insight it brought and and the progress it made on a problem that that looked extremely tough let me go back to say again that problem was to find a basis that was orthogonal and smoother than har and overlapping so that these orthogonality wasn't at all easy to identify and she found a way to deal with that problem and now we've described what it led to in the following years okay where are we um do I want to say more about these applications that's probably of the greatest interest um how would you enhance a signal get noise out of it suppose you're using fre transforms so we have a signal that's got noise say gaussian Noise White Noise in it added in how would we approach the problem of denoising that signal well we would take for a transform and we probably throw away high frequencies we'd say those high frequencies or or in some way we would diminish them because they would that's where the noise would be of course we would be losing some signal yeah that's right so we wouldn't be so the comment was yeah would look great we we're smoothing it by throwing away those high frequencies uh so it certainly looks smoother but is that really the signal the exact signal no no because we we threw away part of the signal when when we threw away and we kept some of the noise yeah absolutely so because and of course we can't help it because we don't know what that noise is you know so we wiener filtering gives the best answer if you assume uh time invariance so that he can move into the frequency domain and and the calcul and the computation becomes very nice we would say oh we'll move into the frequency domain we'll just throw away the top or or or reduce the high frequencies what how would you use wavelets H so that's the competition how would I use wavelets to enhance a signal get rid of the noise well same thing take the wavelet transform look at the coefficients the vot part I would absolutely keep that's the smooth average part most of the most of the signal is in here I probably would keep a lot of the W KN but I'd begin to throw away some of the W1 you remember my picture of the mat lab toolbox I would keep the main signal keep keep a couple of levels and then start start uh uh discarding thresholding I would maybe I would just threshold I would say okay any coefficient larger than such and such I'll keep coefficient smaller I'll throw away actually orthogonality is a nice property to have if you're going to do it like that because you know why is how does orthogonality pay off there you uh you sort of you you know the energy right if you have or ality and you start throwing stuff away you know you've reduced the energy but if this if you don't have an orthogonal basis then you're not so sure if you throw away a little bit it wasn't perpendicular to the rest so the energy might have gone up actually by throwing that bit away so can be you can say all right do it anyway okay it's it's uh because you're headed the right way yeah with uh by by smoothing it out right and of course you know everybody realizes that that there's parameters to choose here to decide what's big and what's small what's the threshold how much will I keep of you know how many bits do I want to keep I mean that's a big issue if I'm doing uh actual say highdefinition TV well I'm sending out signals in real time I'm s in a certain number of BPS bits per second I can't keep more than that because I can't I'll I'll I'll fall behind so if you're compressing in real time you know the bits per second you know the compression rate that you're shooting for and you have to reset the thresholds to hit it though it's quite exciting business and uh so I would say probably with wavelets in the in the wavelet versus fft competition uh in the in video it's still mostly fft because we know how to do that fast and we know what we're doing and the hardware is all built and everything and the chips are built but in images in still images uh wavelets have moved in because um but still Hardware to be built I mean a lot of I mean probably if these lectures are compressed before they go on the web my guess is it would be the Fier system that would compress them well of course it's video but um wavelets are moving forward why because wavelets give a better if you do a lot of compression wavelets hold up better if you're only going to do a little compression might as well do 4A I think but uh for high compression wavelets hold up better and 48 falls apart okay are there questions or discussion I mean there would be applications that would interest you that I don't think to mention or don't know about yeah yes right can I repeat that for the microphone that that when we did in in the previous lectures about filters we were effectively these these steps were projection steps and now y we're now projecting on we're taking the V you know the V not component is the projection of the function into this space and the W the wavelet component is somehow the projection into this space but for me to say that and really mean it I have to be in the orthogonal case I mean when you say when I say projection we're thinking perpendicular projection that's that would mean that these spaces were orthogonal it would mean that it would mean that hey our our U you know our uh our V KN is some space of functions like this our W KN is some perpendicular space you give me a signal it's got a pretty big V knot component and a pretty small W component but they're perpendicular okay and this is for orthogonal spaces and I get orthogonal spaces from orthogonal wavelets everything I mean the world of orthogonal is like self-contained and consistent now by orthogonal which is what I'm going to have to live with if I'm going if I want symmetric filters which I do want then these then I've lost orthogonality so now I'm into buy orthogonal and these this W KN is sure enough uh independent of course but uh not now if I take if I take my signal it the the projection is not is not 90 de right if I want to if I'm if I have if between that space and that space I get the whole thing let me I've got nonperpendicular axes and then I've got a signal that I want to it's got a component along that and a component along that but how do I find those components that's right that would be one way to say it that that uh that uh I'm in a so one way to say it is these are perpendicular if only I knew the right definition of of uh the right the right uh Norm the right inner product they would be perpendicular uh but by the standard definition they're not okay in in wavelet world the answer is it's the fs that fix you up you know the the that the we've got two we've got sets we've got H's and Fs and it's if if we're not perpendicular it's the we need the other one in other words we have a matrix M and it's inverse and it's inverse fixes up M and brings us back to where we want to be but in the orthogonal case this would be just a transpose of this very simple and projection would be what we think of as projections in the bi orthogonal case we we need H's and Fs to uh do it right yeah yeah so so just to complete that picture then well I don't know how to complete it somehow this has a this Vector has a component along here and a component along here and no but that doesn't look too good does it uh how should I draw it I guess I wanted to go a little further and then a little further backwards you see triangles aren't right triangles in in the biorthogonal case yeah it really means that I have two very good questions so so that word biorthogonal by orthogonal means that I've got two sets of functions let me call them G say G so I call I'll call them C's and rs so so so some some functions CI of T and some other functions R of T and they're these guys are aual to those guys guys meaning that CI is orthogonal to RJ if I is not J so I've got two lists of functions and and you see that that's what we have here in a matrix the rows of M and The Columns of M inverse so M has rows R1 R2 so on and M inverse has columns C1 C2 and so on and the fact that I get the identity says that R1 in product with C1 is a one but R1 in product with any of these guys is all these zeros so we're we're it's like Mark Twain and saying we've you know we've been talking Pros all our life and didn't know it uh similarly we've been using biorthogonal functions all our lives but without that word being uh used just whenever I have a bunch of rows bi orthogonal to a bunch of columns I've got a matrix and it's inverse yeah so it's um and of course numerically what we hope is that M isn't too far from orthogo that the RS are not too far from the C's that the angle here isn't too small that the you know that we really have got a a decent well conditioned uh splitting here and U or that the or that these vectors don't that this isn't nearly singular and this isn't enormous we don't want and with wavelets that's we're we're okay yeah so the biorthogonal symmetric wavelets like 97 are really not far from orthogonal and uh the risks are are not severe yeah okay image to be compressed I'm saying yeah I'm saying that if I want to compress it a lot wavelets are better well I suppose it's partly empirical because first of all you have to I mean that's the question is what's an image um right I mean I could only make such a statement about with an idea in my head of what an image was because because if I allow myself if an image is any set of pixels well there's no way I could choose one basis over another of wav that's that's the right way to ask the question then is there a way to identify the type of problems that the type of images that you we might have and that the answer is sort of yes but everybody's still working on it so statistical signal Pro processing is studying the statistical properties of signals and natural signals are very different from text signals which are very different from computer generated images I mean so they're all um so natural signals and of course there's natural signals might be more or less textured I mean texture means like your shirt is would give much more diff with all those checks would be much more difficult on the much more difficult to compress than my shirt right that that would be clear so the more texture the the more High frequency the more uh we the more bits we need to reproduce it well uh so coming down coming back to the question what how would you describe the an image or the type of a class of images that you might uh say okay take this class of images and compare mathematically forier versus waveless okay well here would be one class of images um one way to tackle the description would be to say okay our image is a bunch of pixels right that's what it certainly is and we could ask about the correlation between one pixel and its neighbor we I mean our idea is that those are probably pretty correlated right that if one pixel you know there's some yellow on this shirt by now but so it's not 100% correlated but it's quite correlated and of course the higher that uh number that correlation the more regular the image that we're looking at uh so that would be one way then then we could say Okay given images with given a population of images where the cor so statistics is in here where the covariance or the you know the mutual the correlation between those two is high then fora is going to do quite well uh at least if you give it enough uh coefficients but anyway that that's sort of the context in which a question could be asked and but uh and and there is a quantity so out of it came a a rough number number called the coding gain uh that uh a lot of signal processing Engineers might use it's a function then it's got to be a function of the hes and Fs and it's it's not a bad function so one way to one rough way to decide is a base is good or not would be plug it into this coding gain formula and see if you get a good if you get a bigger number than with some other choice and that would that would have been built out of working with images with a certain assumed correlation there H there's a lot to do and a lot I don't know about the about this area but it's it's a I I hope that this these lectures first of all give you some idea of what are the questions and wavelets are part of the answer but then images have edges how do we segment them this is a big problem give give me an image how do I identify the pieces that I should deal with separately you know shirt and tie how do I how do I find that edge so do I do Edge detection or do I do region detection do I say okay start there and look around it for for a region that's very like it not too different and it looks bigger and bigger then it touches the tie and it says uh oh you know I'm getting new it's not well correlated anymore so it draws the line that way so that you can so this segmentation which is a key problem can be based on looking directly for that edge or growing the region until it meets the until it meets the boundary um and you can do that in the wavelet domain so the wavelet coefficients wouldn't be very different as I move around my shirt but then they would change when I hit the tie I could do it with a 48 coefficients it's it's a wonderful world and uh of course I mean one wish is that I knew a lot more of it but maybe uh this is the right point to to stop for today um having introduced that world one more question sure wavelets of doing the trans versus Fier yeah uh well of course it depends on I mean if you've got a chip that's dedicated to Fier and you haven't got a chip that's dedicated to wavelets okay it wasn't a fair I I think given the fair G given the same level of effort the they're quite comparable quite comparable of course you're you're making a decision if you use 97 wavelets you're making a decision on how much computational efforts involved but that it just affects the constant and if you're doing fora you're deciding how many what SCA what size for transform to do that's a decision I think the a reasonable answer is that they're comparable yeah yeah otherwise uh the new I E standard wouldn't have I mean that that of course is a highly important consideration it has to be uh the computations have to be efficient yeah yeah so yeah so that's that's behind all this the fact that this wave that that this filter bank is is efficient other question before we call it a a okay so my final lectures are promised to be about optimization uh including linear programming as one part but only one part of a whole world of numerical optimization how do you actually find uh the best uh the smallest cost solution to some problem the minimum minimum of some function so that will take us in a different direction entirely and uh this so that's it for today except
Comments
Post a Comment