0:00:01.100,0:00:04.090 Welcome to Module 10. [br]This is the end. 0:00:04.090,0:00:07.290 This is the last model obviously and [br]should show some perspective of where we 0:00:07.290,0:00:11.160 can go with the stuff you have learned [br]from this online class. 0:00:12.920,0:00:16.646 So it has four parts. [br]We're going to talk about courses that we 0:00:16.646,0:00:22.580 give here at EPFL that follow up on the [br]Basic Digital Signal Processing class. 0:00:22.580,0:00:25.652 Then we'll talk about some research [br]projects, where techniques that we have 0:00:25.652,0:00:30.076 learned, are actually being used. [br]We're also going to talk about a few 0:00:30.076,0:00:32.992 start-ups that came out of research from [br]the lab, and finish with 0:00:32.992,0:00:39.490 acknowledgements. [br]Module 10.1. 0:00:39.490,0:00:43.502 What sort of classes can you take once [br]you have mastered Digital Signal 0:00:43.502,0:00:47.530 Processing basics? [br]Well, there is a classical course called 0:00:47.530,0:00:51.738 Statistical Signal Processing. [br]We give, here, a class on Audio and 0:00:51.738,0:00:55.977 Acoustic Signal Processing. [br]We have a follow up course, which is more 0:00:55.977,0:01:00.807 Mathematical on the Foundations of Signal [br]Processing and we give a doctoral course 0:01:00.807,0:01:07.872 on advanced topics. [br]So the first classical class in on 0:01:07.872,0:01:12.626 statistical signal processing. [br]So why do we need statistical tools to 0:01:12.626,0:01:15.976 process signals? [br]Well, so far we have seen mostly 0:01:15.976,0:01:19.671 deterministic signals. [br]But most deterministic signals, if they 0:01:19.671,0:01:24.980 are measured, will be hampered by noise. [br]Second, signals change over time. 0:01:24.980,0:01:29.430 So we need to adapt signal processing [br]methods to changing conditions. 0:01:30.450,0:01:35.610 And finally, to do estimation, so to find [br]some information from a signal. 0:01:35.610,0:01:39.445 So that's called optimal estimation, [br]requires stochastic models and 0:01:39.445,0:01:43.440 statistical techniques. [br]What sort of problems can we address? 0:01:43.440,0:01:47.990 So every communications problem that you [br]can think of will need statistical signal 0:01:47.990,0:01:53.489 processing. [br]So you saw the Wi-Fi system in module 9. 0:01:53.489,0:01:57.393 That's a typical example where noise is [br]dominant and you need to have, 0:01:57.393,0:02:01.575 statisfical methods to recover signals [br]from noise. 0:02:01.575,0:02:05.796 Then we have examples in biological [br]signal processing, for example spikes 0:02:05.796,0:02:09.650 working. [br]And one classic other example is adaptive 0:02:09.650,0:02:15.797 filtering for echo cancellation. [br]In module 5.12 we saw reverberation and 0:02:15.797,0:02:21.680 the inverse called dereverberation. [br]And this is used in for example hands 0:02:21.680,0:02:26.550 free telephone communications, and [br]requires adaptive filtering. 0:02:28.240,0:02:32.150 Let's look at just one image here. [br]It's from biological signal processing. 0:02:32.150,0:02:36.044 So there is a measurement here in the [br]brain of a grasshopper, and it's to 0:02:36.044,0:02:42.110 figure out when the olfactory system of [br]the grasshopper is actually active. 0:02:42.110,0:02:47.286 So there are some electrical probes here. [br]Here are neural spikes coming out and you 0:02:47.286,0:02:50.995 need to do two things which are [br]statistical in nature. 0:02:50.995,0:02:54.643 One is to classify the spikes, or if you [br]blow up here's a signal you're going to 0:02:54.643,0:02:58.770 see these neural spikes and they have [br]different types. 0:02:58.770,0:03:03.540 But if you classify correctly you can [br]identify Certain characteristic. 0:03:03.540,0:03:07.080 And the other one is that you have [br]changing characteristic over time. 0:03:07.080,0:03:11.106 You might have very low activity here, [br]and some very high activity, so you would 0:03:11.106,0:03:16.560 like to model this to figure out when a [br]certain neuron is actually active. 0:03:16.560,0:03:19.864 Okay, so they are two examples of [br]statistical signal processing in the 0:03:19.864,0:03:25.362 context of biological. [br]So, the outline of the class, is that we 0:03:25.362,0:03:29.205 start with basic models, then we look at [br]these exemplary applications, for 0:03:29.205,0:03:34.860 example, Wireless Transmission, Echo [br]Cancellation and Spikes sorting. 0:03:34.860,0:03:38.280 You can go to the website of the class [br]here, and see all the details and the 0:03:38.280,0:03:44.320 outline. [br]A second class we're giving, which builds 0:03:44.320,0:03:48.468 up on digital signal processing is one on [br]signal processing for audio and 0:03:48.468,0:03:52.702 acoustics. [br]The objective is to understand acoustics, 0:03:52.702,0:03:56.749 but also psychoacoustics, because signal [br]processing for acoustics has to deal with 0:03:56.749,0:04:01.810 a human perceptual system. [br]So spatial hearing, for example, is very 0:04:01.810,0:04:06.800 sophisticated and very important if you [br]do multi-channel audio processing. 0:04:06.800,0:04:11.180 Then, we want to understand manipulation [br]processing of audio signals. 0:04:11.180,0:04:15.458 Last but not least, understand [br]state-of-the-art methods in audio signal 0:04:15.458,0:04:19.270 processing, including on consumer-only [br]audio. 0:04:19.270,0:04:22.026 On the right side here we have a [br]beautiful picture of a so-called 0:04:22.026,0:04:26.110 spectrogram, a spectrogram is a local [br]Fourier analysis over time. 0:04:26.110,0:04:29.900 So you move, here is time, here is the [br]spectrum, that changes over time. 0:04:29.900,0:04:33.133 And here is a small piece of music, and [br]you see all the harmonics and then we 0:04:33.133,0:04:36.360 change the note. [br]We have other harmonics, and so on. 0:04:36.360,0:04:40.640 So this is the most basic signal [br]processing for acoustics. 0:04:40.640,0:04:43.448 But of course if you do it for [br]multi-channels it's Becomes very 0:04:43.448,0:04:47.450 complicated, and leads to sophisticated [br]processing techniques. 0:04:48.890,0:04:54.240 Here is an example done by people in the [br]lab, on so called Auralization. 0:04:54.240,0:04:58.380 So if a piece a music and you like to [br]simulate its rendering, in different 0:04:58.380,0:05:02.662 environments. [br]So here's a rendering which simulate a 0:05:02.662,0:05:07.150 concert hall, here's a rendering which [br]simulate a classroom, here's a rendering 0:05:07.150,0:05:11.770 would be for example, for multimedia [br]system, and here's a rendering would be 0:05:11.770,0:05:17.206 in an open public space. [br]These spaces are all very, very 0:05:17.206,0:05:20.622 different, and then if you want to [br]predict how something sounds In a given 0:05:20.622,0:05:24.180 environment then this is a perfect [br]system. 0:05:25.790,0:05:29.408 Okay the outline of the class, spatial [br]hearing is the first important topic, and 0:05:29.408,0:05:33.930 recording methodologies. [br]Then multi-channel audio, in this class 0:05:33.930,0:05:38.690 we always talk about the single signal [br]but here in audio signal processing you 0:05:38.690,0:05:44.780 can have dozens of channels or even [br]hundreds of channels. 0:05:44.780,0:05:48.770 Talking about spacial filtering, coding, [br]which you're all familiar with MP3 which 0:05:48.770,0:05:52.532 we discussed briefly as our much more [br]sophisticated methods for multi channel 0:05:52.532,0:05:56.572 audio. [br]Last but not least auralization to do 0:05:56.572,0:06:01.750 stimulation of acoustic environments like [br]in the previous slide. 0:06:01.750,0:06:05.100 Again, you have details on the website [br]for the course. 0:06:07.340,0:06:10.939 The next class we teach is called, [br]Mathematical Foundations of Signal 0:06:10.939,0:06:14.162 Processing. [br]As we have seen in module six, the world 0:06:14.162,0:06:17.590 is analog, but computation is on digital [br]computers. 0:06:17.590,0:06:21.189 So how do we go From the analog world, [br]to, back to the analog world, using 0:06:21.189,0:06:26.522 processing methodologies on computers. [br]And the examples are audio as we've just 0:06:26.522,0:06:29.944 seen, sensor networks that we are [br]going to discuss in a minute, imaging, 0:06:29.944,0:06:34.530 light on digital cameras, computer [br]graphics, and so on. 0:06:34.530,0:06:38.550 And the key mathematical concepts we have [br]sort of Seen in this class at an 0:06:38.550,0:06:43.173 elementary levels, so it's sampling and [br]interpo-, sampling and interpolation or 0:06:43.173,0:06:48.687 approximation and compression. [br]Now, in this class we do this in much 0:06:48.687,0:06:51.954 more detail. [br]Okay, but the basic picture is the same 0:06:51.954,0:06:56.130 as we saw in module six. [br]You have an analog world here that we 0:06:56.130,0:07:00.910 inhabit, and we have a digital world [br]where we do the processing. 0:07:02.880,0:07:06.350 So for example, questions are you want to [br]build a sensor network. 0:07:06.350,0:07:10.170 Here is EPFL campus. [br]You want to measure temperature, how many 0:07:10.170,0:07:14.500 sensors should you put on the campus to [br]sense temperature accurately? 0:07:14.500,0:07:18.600 And once you have sensed the temperature, [br]how should you reconstruct? 0:07:18.600,0:07:22.285 We're going to discuss this also in the [br]research topic later on. 0:07:22.285,0:07:24.510 But that's a basic question of signal [br]processing. 0:07:24.510,0:07:26.670 It's a sampling question. [br]How many sensors? 0:07:26.670,0:07:32.455 And an interpolation question, how do we [br]reconstruct the spatial field of 0:07:32.455,0:07:37.748 temperature over time? [br]The course outline is, we do again, 0:07:37.748,0:07:42.428 Hildred space geometry, but now in great [br]detail, so if you didn't enjoy Module 0:07:42.428,0:07:48.486 two, here in the current class. [br]you may want to take this one but be 0:07:48.486,0:07:54.280 ready for some much more difficult stuff, [br]but beautiful stuff in my view. 0:07:54.280,0:07:59.756 Then we discuss discrete-time systems and [br]sequences, functions of continuous time 0:07:59.756,0:08:04.196 and systems on continuous time, and then [br]there is a big part on sampling, 0:08:04.196,0:08:11.320 interpolation, and approximation. [br]Finally we discuss some applications. 0:08:11.320,0:08:15.285 This class is based on the textbook that [br]has been mentioned in this class, also 0:08:15.285,0:08:19.935 that is just coming out now, with [br]Vetterli, Kovacevic and V. 0:08:19.935,0:08:25.455 Goyal it's called Foundations of Signal [br]Processing and is also available open 0:08:25.455,0:08:32.060 access under this website. [br]Last but not least, we give doctoral 0:08:32.060,0:08:35.836 courses here and doctoral courses are [br]really at the state of the art of what is 0:08:35.836,0:08:42.120 being done in Signal Processing, what is [br]being researched and published currently. 0:08:42.120,0:08:46.486 And it's based on the fact that the [br]classical approach as discuss in 0:08:46.486,0:08:51.222 undergrad and masters level classes are [br]sometimes limited and need to be 0:08:51.222,0:08:56.342 extended. [br]To do state-of-the-art signal processing 0:08:56.342,0:09:00.630 research, this sometimes uses, quite [br]sophisticated mathematical tools, that 0:09:00.630,0:09:05.046 you also need to understand and maybe [br]apply, or, modify for a signal processing 0:09:05.046,0:09:11.120 problem. [br]So here is an sample from a class like 0:09:11.120,0:09:15.146 this it's a compressed sensing, it has [br]been mentioned in the forum, compressed 0:09:15.146,0:09:19.294 sensing is a very interesting technique [br]where you try to acquire the analog world 0:09:19.294,0:09:22.954 by taking very, very few samples in [br]particle or meta and you reconstruct 0:09:22.954,0:09:28.510 using regularization. [br]So here's just a picture. 0:09:28.510,0:09:32.064 I don't have time to really explain it. [br]But it's a picture where you solve a 0:09:32.064,0:09:36.254 linear system, essentially. [br]But you solve it using different 0:09:36.254,0:09:40.160 regularization. [br]So we worked always with the l 2 norm. 0:09:40.160,0:09:43.440 We measured the sum of squares of a [br]sequence, for example. 0:09:43.440,0:09:47.254 There are other norms that are possible. [br]The l 1, that's the sum of absolute 0:09:47.254,0:09:51.097 values, or the l infinity, that's the [br]maximum value in sequence and if you 0:09:51.097,0:09:55.255 regularize a problem you solve your [br]linear system using these different norms 0:09:55.255,0:10:01.730 you get very different solutions. [br]And one of them happens to be very sparse 0:10:01.730,0:10:05.573 so if you are looking for a solution that [br]has very few non zero terms then L1 0:10:05.573,0:10:09.542 regularization which is what hes using [br]compressed sensing will give you an 0:10:09.542,0:10:14.870 interesting solution. [br]We'll come back to this in the research 0:10:14.870,0:10:17.750 projects, because it is actually used [br]currently in the lab to solve some very 0:10:17.750,0:10:23.290 interesting problems. [br]Okay, so this Advanced Topics class 0:10:23.290,0:10:26.938 actually moves from topic to topic, so [br]sometimes it's on Fourier and wavelet 0:10:26.938,0:10:30.871 processing, sometimes its on mathematical [br]principles, sometimes it's on Simply 0:10:30.871,0:10:36.605 reading groups on advanced topics. [br]Again, there is a website, and there is 0:10:36.605,0:10:40.631 volume 2 of Fourier and wavelets sequence [br]here, which is the basis for the first 0:10:40.631,0:10:45.710 version of this class. [br]Okay. 0:10:45.710,0:10:49.166 So that was an overview of the classes [br]you could take if you were, for example, 0:10:49.166,0:10:52.388 at EPFL. [br]Lots of that material is actually online, 0:10:52.388,0:10:55.574 so if you are interested, you can [br]actually also learn it online from our 0:10:55.574,0:10:57.190 website.