Ask any question about EPFL courses, lectures, exercises, research, news, etc. or try the example questions below.
DISCLAIMER: The Graph Chatbot is not programmed to provide explicit or categorical answers to your questions. Rather, it transforms your questions into API requests that are distributed across the various IT services officially administered by EPFL. Its purpose is solely to collect and recommend relevant references to content that you can explore to help you answer your questions.
Analog signal processing is a type of signal processing conducted on continuous analog signals by some analog means (as opposed to the discrete digital signal processing where the signal processing is carried out by a digital process). "Analog" indicates something that is mathematically represented as a set of continuous values. This differs from "digital" which uses a series of discrete quantities to represent signal. Analog values are typically represented as a voltage, electric current, or electric charge around components in the electronic devices. An error or noise affecting such physical quantities will result in a corresponding error in the signals represented by such physical quantities. Examples of analog signal processing include crossover filters in loudspeakers, "bass", "treble" and "volume" controls on stereos, and "tint" controls on TVs. Common analog processing elements include capacitors, resistors and inductors (as the passive elements) and transistors or opamps (as the active elements). A system's behavior can be mathematically modeled and is represented in the time domain as h(t) and in the frequency domain as H(s), where s is a complex number in the form of s=a+ib, or s=a+jb in electrical engineering terms (electrical engineers use "j" instead of "i" because current is represented by the variable i). Input signals are usually called x(t) or X(s) and output signals are usually called y(t) or Y(s). Convolution is the basic concept in signal processing that states an input signal can be combined with the system's function to find the output signal. It is the integral of the product of two waveforms after one has reversed and shifted; the symbol for convolution is *. That is the convolution integral and is used to find the convolution of a signal and a system; typically a = -∞ and b = +∞. Consider two waveforms f and g. By calculating the convolution, we determine how much a reversed function g must be shifted along the x-axis to become identical to function f.
[2]Paolo Prandoni, [3]LCAV, EPFL
In [1]:
import matplotlib.pyplot as plt
import numpy as np
import scipy.signal as sp
import seaborn as sns
sns.set()
In [2]:
plt.rcParams["figure.figsize"] = (14,4)
The basic reproduction number[4]¶
The propagation mechanism of an epidemic such as the one caused by
SARS-CoV-2 virus can be roughly modeled, at least in its inital phase,
as a process in which each infected individ [2]Paolo Prandoni, [3]LCAV, EPFL
In this notebook we will explore various ways to implement a system
that changes the voice of a speaker. Typical applications for these
techniques, strictly sorted by plausibility, include international spy
missions and prank telephone calls, and devices such as the one
displayed here can be easily bought on the web... or in a novelty shop.
No description has been provided for t [2]Paolo Prandoni, [3]LCAV, EPFL
In this notebook we will use the adaptive LMS filter to estimate the
impulse response of a reverberating room.
A typical use case is handsfree telephony: since the received signal,
amplified and played by the speaker, is picked up by the microphone, we
need to eliminate it from the signal that is transmitted back in order
to avoid a feedback loop. The signal picked up by the microph [2]Paolo Prandoni, [3]LCAV, EPFL
This notebook shows a simple way to process audio files (in WAV format)
in a block-by-block fashion; this is useful in two cases
1. when you want to process a data stream in real time but you can
accept a small processing delay; in this case a buffered approach
can yield computational gains
2. when you need to process a large file that does not fit entirely
into