1 00:00:01,100 --> 00:00:04,090 Welcome to Module 10. This is the end. 2 00:00:04,090 --> 00:00:07,290 This is the last model obviously and should show some perspective of where we 3 00:00:07,290 --> 00:00:11,160 can go with the stuff you have learned from this online class. 4 00:00:12,920 --> 00:00:16,646 So it has four parts. We're going to talk about courses that we 5 00:00:16,646 --> 00:00:22,580 give here at EPFL that follow up on the Basic Digital Signal Processing class. 6 00:00:22,580 --> 00:00:25,652 Then we'll talk about some research projects, where techniques that we have 7 00:00:25,652 --> 00:00:30,076 learned, are actually being used. We're also going to talk about a few 8 00:00:30,076 --> 00:00:32,992 start-ups that came out of research from the lab, and finish with 9 00:00:32,992 --> 00:00:39,490 acknowledgements. Module 10.1. 10 00:00:39,490 --> 00:00:43,502 What sort of classes can you take once you have mastered Digital Signal 11 00:00:43,502 --> 00:00:47,530 Processing basics? Well, there is a classical course called 12 00:00:47,530 --> 00:00:51,738 Statistical Signal Processing. We give, here, a class on Audio and 13 00:00:51,738 --> 00:00:55,977 Acoustic Signal Processing. We have a follow up course, which is more 14 00:00:55,977 --> 00:01:00,807 Mathematical on the Foundations of Signal Processing and we give a doctoral course 15 00:01:00,807 --> 00:01:07,872 on advanced topics. So the first classical class in on 16 00:01:07,872 --> 00:01:12,626 statistical signal processing. So why do we need statistical tools to 17 00:01:12,626 --> 00:01:15,976 process signals? Well, so far we have seen mostly 18 00:01:15,976 --> 00:01:19,671 deterministic signals. But most deterministic signals, if they 19 00:01:19,671 --> 00:01:24,980 are measured, will be hampered by noise. Second, signals change over time. 20 00:01:24,980 --> 00:01:29,430 So we need to adapt signal processing methods to changing conditions. 21 00:01:30,450 --> 00:01:35,610 And finally, to do estimation, so to find some information from a signal. 22 00:01:35,610 --> 00:01:39,445 So that's called optimal estimation, requires stochastic models and 23 00:01:39,445 --> 00:01:43,440 statistical techniques. What sort of problems can we address? 24 00:01:43,440 --> 00:01:47,990 So every communications problem that you can think of will need statistical signal 25 00:01:47,990 --> 00:01:53,489 processing. So you saw the Wi-Fi system in module 9. 26 00:01:53,489 --> 00:01:57,393 That's a typical example where noise is dominant and you need to have, 27 00:01:57,393 --> 00:02:01,575 statisfical methods to recover signals from noise. 28 00:02:01,575 --> 00:02:05,796 Then we have examples in biological signal processing, for example spikes 29 00:02:05,796 --> 00:02:09,650 working. And one classic other example is adaptive 30 00:02:09,650 --> 00:02:15,797 filtering for echo cancellation. In module 5.12 we saw reverberation and 31 00:02:15,797 --> 00:02:21,680 the inverse called dereverberation. And this is used in for example hands 32 00:02:21,680 --> 00:02:26,550 free telephone communications, and requires adaptive filtering. 33 00:02:28,240 --> 00:02:32,150 Let's look at just one image here. It's from biological signal processing. 34 00:02:32,150 --> 00:02:36,044 So there is a measurement here in the brain of a grasshopper, and it's to 35 00:02:36,044 --> 00:02:42,110 figure out when the olfactory system of the grasshopper is actually active. 36 00:02:42,110 --> 00:02:47,286 So there are some electrical probes here. Here are neural spikes coming out and you 37 00:02:47,286 --> 00:02:50,995 need to do two things which are statistical in nature. 38 00:02:50,995 --> 00:02:54,643 One is to classify the spikes, or if you blow up here's a signal you're going to 39 00:02:54,643 --> 00:02:58,770 see these neural spikes and they have different types. 40 00:02:58,770 --> 00:03:03,540 But if you classify correctly you can identify Certain characteristic. 41 00:03:03,540 --> 00:03:07,080 And the other one is that you have changing characteristic over time. 42 00:03:07,080 --> 00:03:11,106 You might have very low activity here, and some very high activity, so you would 43 00:03:11,106 --> 00:03:16,560 like to model this to figure out when a certain neuron is actually active. 44 00:03:16,560 --> 00:03:19,864 Okay, so they are two examples of statistical signal processing in the 45 00:03:19,864 --> 00:03:25,362 context of biological. So, the outline of the class, is that we 46 00:03:25,362 --> 00:03:29,205 start with basic models, then we look at these exemplary applications, for 47 00:03:29,205 --> 00:03:34,860 example, Wireless Transmission, Echo Cancellation and Spikes sorting. 48 00:03:34,860 --> 00:03:38,280 You can go to the website of the class here, and see all the details and the 49 00:03:38,280 --> 00:03:44,320 outline. A second class we're giving, which builds 50 00:03:44,320 --> 00:03:48,468 up on digital signal processing is one on signal processing for audio and 51 00:03:48,468 --> 00:03:52,702 acoustics. The objective is to understand acoustics, 52 00:03:52,702 --> 00:03:56,749 but also psychoacoustics, because signal processing for acoustics has to deal with 53 00:03:56,749 --> 00:04:01,810 a human perceptual system. So spatial hearing, for example, is very 54 00:04:01,810 --> 00:04:06,800 sophisticated and very important if you do multi-channel audio processing. 55 00:04:06,800 --> 00:04:11,180 Then, we want to understand manipulation processing of audio signals. 56 00:04:11,180 --> 00:04:15,458 Last but not least, understand state-of-the-art methods in audio signal 57 00:04:15,458 --> 00:04:19,270 processing, including on consumer-only audio. 58 00:04:19,270 --> 00:04:22,026 On the right side here we have a beautiful picture of a so-called 59 00:04:22,026 --> 00:04:26,110 spectrogram, a spectrogram is a local Fourier analysis over time. 60 00:04:26,110 --> 00:04:29,900 So you move, here is time, here is the spectrum, that changes over time. 61 00:04:29,900 --> 00:04:33,133 And here is a small piece of music, and you see all the harmonics and then we 62 00:04:33,133 --> 00:04:36,360 change the note. We have other harmonics, and so on. 63 00:04:36,360 --> 00:04:40,640 So this is the most basic signal processing for acoustics. 64 00:04:40,640 --> 00:04:43,448 But of course if you do it for multi-channels it's Becomes very 65 00:04:43,448 --> 00:04:47,450 complicated, and leads to sophisticated processing techniques. 66 00:04:48,890 --> 00:04:54,240 Here is an example done by people in the lab, on so called Auralization. 67 00:04:54,240 --> 00:04:58,380 So if a piece a music and you like to simulate its rendering, in different 68 00:04:58,380 --> 00:05:02,662 environments. So here's a rendering which simulate a 69 00:05:02,662 --> 00:05:07,150 concert hall, here's a rendering which simulate a classroom, here's a rendering 70 00:05:07,150 --> 00:05:11,770 would be for example, for multimedia system, and here's a rendering would be 71 00:05:11,770 --> 00:05:17,206 in an open public space. These spaces are all very, very 72 00:05:17,206 --> 00:05:20,622 different, and then if you want to predict how something sounds In a given 73 00:05:20,622 --> 00:05:24,180 environment then this is a perfect system. 74 00:05:25,790 --> 00:05:29,408 Okay the outline of the class, spatial hearing is the first important topic, and 75 00:05:29,408 --> 00:05:33,930 recording methodologies. Then multi-channel audio, in this class 76 00:05:33,930 --> 00:05:38,690 we always talk about the single signal but here in audio signal processing you 77 00:05:38,690 --> 00:05:44,780 can have dozens of channels or even hundreds of channels. 78 00:05:44,780 --> 00:05:48,770 Talking about spacial filtering, coding, which you're all familiar with MP3 which 79 00:05:48,770 --> 00:05:52,532 we discussed briefly as our much more sophisticated methods for multi channel 80 00:05:52,532 --> 00:05:56,572 audio. Last but not least auralization to do 81 00:05:56,572 --> 00:06:01,750 stimulation of acoustic environments like in the previous slide. 82 00:06:01,750 --> 00:06:05,100 Again, you have details on the website for the course. 83 00:06:07,340 --> 00:06:10,939 The next class we teach is called, Mathematical Foundations of Signal 84 00:06:10,939 --> 00:06:14,162 Processing. As we have seen in module six, the world 85 00:06:14,162 --> 00:06:17,590 is analog, but computation is on digital computers. 86 00:06:17,590 --> 00:06:21,189 So how do we go From the analog world, to, back to the analog world, using 87 00:06:21,189 --> 00:06:26,522 processing methodologies on computers. And the examples are audio as we've just 88 00:06:26,522 --> 00:06:29,944 seen, sensor networks that we are going to discuss in a minute, imaging, 89 00:06:29,944 --> 00:06:34,530 light on digital cameras, computer graphics, and so on. 90 00:06:34,530 --> 00:06:38,550 And the key mathematical concepts we have sort of Seen in this class at an 91 00:06:38,550 --> 00:06:43,173 elementary levels, so it's sampling and interpo-, sampling and interpolation or 92 00:06:43,173 --> 00:06:48,687 approximation and compression. Now, in this class we do this in much 93 00:06:48,687 --> 00:06:51,954 more detail. Okay, but the basic picture is the same 94 00:06:51,954 --> 00:06:56,130 as we saw in module six. You have an analog world here that we 95 00:06:56,130 --> 00:07:00,910 inhabit, and we have a digital world where we do the processing. 96 00:07:02,880 --> 00:07:06,350 So for example, questions are you want to build a sensor network. 97 00:07:06,350 --> 00:07:10,170 Here is EPFL campus. You want to measure temperature, how many 98 00:07:10,170 --> 00:07:14,500 sensors should you put on the campus to sense temperature accurately? 99 00:07:14,500 --> 00:07:18,600 And once you have sensed the temperature, how should you reconstruct? 100 00:07:18,600 --> 00:07:22,285 We're going to discuss this also in the research topic later on. 101 00:07:22,285 --> 00:07:24,510 But that's a basic question of signal processing. 102 00:07:24,510 --> 00:07:26,670 It's a sampling question. How many sensors? 103 00:07:26,670 --> 00:07:32,455 And an interpolation question, how do we reconstruct the spatial field of 104 00:07:32,455 --> 00:07:37,748 temperature over time? The course outline is, we do again, 105 00:07:37,748 --> 00:07:42,428 Hildred space geometry, but now in great detail, so if you didn't enjoy Module 106 00:07:42,428 --> 00:07:48,486 two, here in the current class. you may want to take this one but be 107 00:07:48,486 --> 00:07:54,280 ready for some much more difficult stuff, but beautiful stuff in my view. 108 00:07:54,280 --> 00:07:59,756 Then we discuss discrete-time systems and sequences, functions of continuous time 109 00:07:59,756 --> 00:08:04,196 and systems on continuous time, and then there is a big part on sampling, 110 00:08:04,196 --> 00:08:11,320 interpolation, and approximation. Finally we discuss some applications. 111 00:08:11,320 --> 00:08:15,285 This class is based on the textbook that has been mentioned in this class, also 112 00:08:15,285 --> 00:08:19,935 that is just coming out now, with Vetterli, Kovacevic and V. 113 00:08:19,935 --> 00:08:25,455 Goyal it's called Foundations of Signal Processing and is also available open 114 00:08:25,455 --> 00:08:32,060 access under this website. Last but not least, we give doctoral 115 00:08:32,060 --> 00:08:35,836 courses here and doctoral courses are really at the state of the art of what is 116 00:08:35,836 --> 00:08:42,120 being done in Signal Processing, what is being researched and published currently. 117 00:08:42,120 --> 00:08:46,486 And it's based on the fact that the classical approach as discuss in 118 00:08:46,486 --> 00:08:51,222 undergrad and masters level classes are sometimes limited and need to be 119 00:08:51,222 --> 00:08:56,342 extended. To do state-of-the-art signal processing 120 00:08:56,342 --> 00:09:00,630 research, this sometimes uses, quite sophisticated mathematical tools, that 121 00:09:00,630 --> 00:09:05,046 you also need to understand and maybe apply, or, modify for a signal processing 122 00:09:05,046 --> 00:09:11,120 problem. So here is an sample from a class like 123 00:09:11,120 --> 00:09:15,146 this it's a compressed sensing, it has been mentioned in the forum, compressed 124 00:09:15,146 --> 00:09:19,294 sensing is a very interesting technique where you try to acquire the analog world 125 00:09:19,294 --> 00:09:22,954 by taking very, very few samples in particle or meta and you reconstruct 126 00:09:22,954 --> 00:09:28,510 using regularization. So here's just a picture. 127 00:09:28,510 --> 00:09:32,064 I don't have time to really explain it. But it's a picture where you solve a 128 00:09:32,064 --> 00:09:36,254 linear system, essentially. But you solve it using different 129 00:09:36,254 --> 00:09:40,160 regularization. So we worked always with the l 2 norm. 130 00:09:40,160 --> 00:09:43,440 We measured the sum of squares of a sequence, for example. 131 00:09:43,440 --> 00:09:47,254 There are other norms that are possible. The l 1, that's the sum of absolute 132 00:09:47,254 --> 00:09:51,097 values, or the l infinity, that's the maximum value in sequence and if you 133 00:09:51,097 --> 00:09:55,255 regularize a problem you solve your linear system using these different norms 134 00:09:55,255 --> 00:10:01,730 you get very different solutions. And one of them happens to be very sparse 135 00:10:01,730 --> 00:10:05,573 so if you are looking for a solution that has very few non zero terms then L1 136 00:10:05,573 --> 00:10:09,542 regularization which is what hes using compressed sensing will give you an 137 00:10:09,542 --> 00:10:14,870 interesting solution. We'll come back to this in the research 138 00:10:14,870 --> 00:10:17,750 projects, because it is actually used currently in the lab to solve some very 139 00:10:17,750 --> 00:10:23,290 interesting problems. Okay, so this Advanced Topics class 140 00:10:23,290 --> 00:10:26,938 actually moves from topic to topic, so sometimes it's on Fourier and wavelet 141 00:10:26,938 --> 00:10:30,871 processing, sometimes its on mathematical principles, sometimes it's on Simply 142 00:10:30,871 --> 00:10:36,605 reading groups on advanced topics. Again, there is a website, and there is 143 00:10:36,605 --> 00:10:40,631 volume 2 of Fourier and wavelets sequence here, which is the basis for the first 144 00:10:40,631 --> 00:10:45,710 version of this class. Okay. 145 00:10:45,710 --> 00:10:49,166 So that was an overview of the classes you could take if you were, for example, 146 00:10:49,166 --> 00:10:52,388 at EPFL. Lots of that material is actually online, 147 00:10:52,388 --> 00:10:55,574 so if you are interested, you can actually also learn it online from our 148 00:10:55,574 --> 00:10:57,190 website.