# TIFO - Filtrage - partie 2 # Signal :::info Representation Mathematiques d'un phenomene physique ::: Traitement du signal - Elaboration, detection et interpretation des signaux Classification des signaux - Morphologique: continu/discret - Spectrale: Bande de frequence BF/HF - Energie: Energie finie/Puissance moyenne finie - Typologie: deterministe/aleatoire - Periodicite: non peridique/$x(t)=x(t+T)$ ## Energie - Energie $w_x$ d'un signal $x$ $$ W_x=\int_{-\infty}^{+\infty}\vert x(t)\vert^2dt $$ - Les signaux a energie finie verifient la condition: $$ W_x=\int_{-\infty}^{+\infty}\vert x(t)\vert^2\lt+\infty $$ - Les signaux a support borne (cad duree limitee) sont a ernegie finie ## Puissance - Puissance moyenne $P$ du signal $x$ $$ P_x=\lim_{T\to+\infty}\frac{1}{T}\int_{-\frac{T}{2}}^{\frac{T}{2}} \vert x(t\vert^2dt) $$ - Energie finie $\Rightarrow$ puissance moyenne nulle $$ W_x\lt+\infty\Rightarrow P_x=0 $$ - Puissance moyenne finie $\Rightarrow$ energie infinie $$ 0\lt P_x\lt+\infty\Rightarrow W_x\to+\infty $$ > Ex: les signaux periodiques ## Signaux classiques ### Porte $$ \Pi_{\frac{T}{2}}= \begin{cases} 1 &\text{si } t\in[-\frac{T}{2};\frac{T}{2}]\\ 0 &\text{ailleurs} \end{cases} $$ ![](https://i.imgur.com/4DeYK0u.png) ### Echelon d'Heavyside $$ u(t)= \begin{cases} 0 &\text{si } t\lt0\\ 1 &\text{si } t\ge0 \end{cases} $$ ![](https://i.imgur.com/dbT1FaV.png) ### Signe $$ sgn(t) = \begin{cases} -1 &\text{si } t\lt0\\ 0 &\text{si } t=0\\ 1 &\text{si } t\gt0 \end{cases} $$ ![](https://i.imgur.com/DlsoWDy.png) ### Triangulaire $$ \triangle_T(t)= \begin{cases} \frac{1-\vert T\vert}{T} &\text{si } \vert t\vert T\\ 0 &\text{ailleurs} \end{cases} $$ ![](https://i.imgur.com/XjAwXKo.png) ### Gaussienne $$ g(t) = \frac{1}{\delta\sqrt{2\pi}}e^{-\frac{t^2}{2\delta^2}} $$ ![](https://i.imgur.com/W2jobhi.png) ### Sinus cardinal $$ sinc(t) = \frac{sin(t)}{t} $$ ![](https://i.imgur.com/r7iemnU.png) # Series de Fourier - On consider les fonctions $g_n(t)$ $$ g_n(t) = e^{2j\pi\frac{nt}{T}} $$ - Que vaut $$ <g_n(t),g_m(t)> = \frac{1}{T}\int_Tg_n(t)g_m^*(t)dt= \begin{cases} 0 &\text{si } n\neq m\\ 1 &\text{si } n= m \end{cases} $$ avec $g_m^*$ le conjugue dans les complexe - Soit $f(t)$ periodique de periode $T(T\gt 0)$. Un signal 1D periodique peut etre vu comme une somme de sinusoides $$ f(t) = \sum_{n=-\infty}^{+\infty}C_ng_n(t) $$ *Comment trouver $C_i$ ?* $$ \begin{aligned} \frac{1}{T}\int f(t)g_i^*(t)dt &= \frac{1}{T}\int(\sum C_ng_n(t))\int g_i^*(t)dt\\ &= \frac{1}{T}\int(...+C_{i-1}g_{i-1}(t)+C_{i}g_{i}(t)+C_{i+1}g_{i+1}(t)+...)g_i^*(t)dt\\ &= \frac{1}{T}\int(...+C_{i-1}g_{i-1}(t)g_i^*(t)+C_{i}g_{i}(t)g_i^*(t)+C_{i+1}g_{i+1}(t)g_i^*(t)+...)dt\\ &=...+\frac{1}{T}\int C_{i-1}g_{i-1}(t)g_i^*(t)dt + \frac{1}{T}\int C_{i}g_{i}(t)g_i^*(t) + \\ &\frac{1}{T}\int C_{i-1}g_{i-1}(t)g_i^*(t)dt+...\\ &=...+C_{i-1}\underbrace{\frac{1}{T}\int g_{i-1}(t)g_i^*(t)}_{=0 \text{ car } i-1\neq i}+ C_i\underbrace{\frac{1}{T}\int g_{i}(t)g_i^*(t)}_{=1} + C_{i+1}\underbrace{\frac{1}{T}\int g_{i+1}(t)g_i^*(t)}_{=0 \text{ car } i+1\neq i}\\ &= C_i \end{aligned} $$ ## Harmoniques $C_n$: harmoniques ![](https://i.imgur.com/jMA4bzu.png) > On les sommes pour obtenir la sinusoides resultat - $C_0$: frequence continue - $C_1$: frequence fondamentale - ... - $C_n$: $n^{ieme}$ harmonique - f reel $\Rightarrow$ $C_n=C_{-n}^*(f(t)=f^*(t))$ ## Frequences - Basses frequences - Lentes variations - Zones presque uniformes - Hautes frequences - Variations rapides - Contours/coins Se retrouve dans les images ![](https://i.imgur.com/lyMAUYT.png) > Quand des details apparaissent, on monte dans les frequences # Series et transformees de Fourier ## Spectre - D'amplitude: $\vert C_n\vert$ - De phase $Arg(C_n)=arctg(-\frac{b_n}{a_n})$ - De puissance $\vert C_n\vert^2$ - $f(t)$ reel $\Rightarrow$ spectre d'amplitude symetrique :::danger **Relation de PARSEVAL**: Il y a conservation de la puissance de la representation temporelle a la representation frequentielle. ::: On ne perde pas d'information lorsqu'on passe de l'un a l'autre. ## Signaux On considere jusqu'a present des signaux periodiques - On peut generaliser en prenant $T\to+\infty$ On defini $TF\{x(t)\}$ $$ X(f) = \int_{-\infty}^{+\infty}x(t)e^{-2j\pi ft}dt $$ On defini $TF^{-1}\{x(t)\}$ $$ x(t)=\int_{-\infty}^{+\infty}X(f)e^{+2j\pi ft}df $$ :::warning Toutes les infos contenues dans le signal sont contenues dans le spectre ::: ## Transformee usuelles ### Porte Transformee de Fourier: Sinus cardinal ![](https://i.imgur.com/KBqeeMQ.png) ### Constante Transformee de Fourier: Fondamentale ![](https://i.imgur.com/t8zxwfc.png) ### Peigne de Dirac Transformee de Fourier: un autre Peigne de Dirac ![](https://i.imgur.com/V2ihqFY.png) ## Existence de la transformee de $f(t)$ - $f(t)$ bornee - Integrale de $f(t)dt$ existe - Les discontinuires de $f(t)$ sont en nombre limite :::warning On s'autorisera systematiquement a faire la transformee de Fourier de l'image ::: ## Proprietes - Linearite $$ Kf(t)+g(t) \Leftrightarrow KF(t)+G(t) \text{ } K\text{ complexe} $$ - Similitude: Une dilatation dans le domaine temporel correspond a une contraction dans le domaine frequentiel - $f(at)\Leftrightarrow\frac{1}{\vert a\vert}F(\frac{f}{a})$ (a reel) - Derivee: - $\frac{dx(t)}{dt}\Leftrightarrow 2i\Pi fX(f)$ - $\frac{dx(f)}{df}\Leftrightarrow -2i\Pi fX(t)$ Dans notre cas: - Signal borne et echantillone Soit le pic de Dirac $\delta(t)$: ![](https://i.imgur.com/GiSFjFy.png) Soit le pic de Dirac $\delta(t_0)$: ![](https://i.imgur.com/J8yMJHR.png) $$ \delta(t_0)=\delta(t-t_0)\\ f(t)\delta(t_0)=f(t_0) $$ ![](https://i.imgur.com/4UbgUri.png)![](https://i.imgur.com/P8TBvFd.png) Soit le peigne de Dirac $Ш(t)$: $$ \sum_{n=-\infty}^{+\infty}\delta(t-nT) $$ ![](https://i.imgur.com/HmM6mE8.png) $f(t).Ш(t_0)=$ ![](https://i.imgur.com/jLuGj0X.png) ![](https://i.imgur.com/9F7Lk0H.png) :::danger Une fonction echantillonee, c'est une fonction multipliee par un peigne de Dirac. ::: # Transformee de Fourier Dans notre cas: - Signal discret (echnatillonne) + support borne - Transformee de Fourier Discrete $$ \begin{aligned} &X(f)=\int_{-\infty}^{+\infty}x(t)e^{-2j\pi ft}dt &X(f)=\sum_{t=-\infty}^{+\infty}x(t)e^{-2j\pi ft} \end{aligned} $$ $$ X(l)=\sum_{k=0}^{N-1}x(kT_e)e^{-2j\pi lf_ekT_e} $$ :::success \begin{aligned} &X(l)=\sum_{k=0}^{N-1}x(t)e^{\frac{-2j\pi}{N} kl} &X(k)=\sum_{k=0}^{N-1}x(t)e^{\frac{2j\pi}{N} lk} \end{aligned} ::: ## Notes $F_e$ frequence d'echantillonnage - $X(0)\to-2F_e(/0)$ - $X(N-1)\to +2F_e(/+4F_e)$ - Pas en frequence: $F_e/N$ ## Calcul rapide de la TFD Fast Fourier Transform (1965 - Cooley et Tukey $$ \begin{aligned} X(l)&=\sum_{k=0}^{N-1}x(k)e^{-\frac{2j\pi kl}{N}}\\ &= \sum_{k=0}^{\frac{N}{2}-1}x(2k)e^{-\frac{2j\pi 2kl}{N}} + \sum_{k=0}^{\frac{N}{2}-1}x(2k+1)e^{-\frac{2j\pi 2(k+1)l}{N}}\\ &= \sum_{k=0}^{\frac{N}{2}-1}x(2k)e^{-\frac{2j\pi 2kl}{N}} + e^{-\frac{2j\pi l}{N}}\sum_{k=0}^{\frac{N}{2}-1}x(2k+1)e^{-\frac{2j\pi2kl}{N}} \end{aligned} $$ :::info Pour calculer la TFD sur un signal de taille $N$, on calcul la transformee de Fourier sur les coeeficients pairs $(\frac{N}{2})$ et la transformee de Fourier sur les coefficients impairs $(\frac{N}{2})$... et recursivement ::: ## Dans notre cas (Image) - Signal 2D: TF2D (Transformee de Fourier a 2 dimensions) ## Visualisation du spectre: On peut aller de $-2F_e$ a $2F_e$ ![](https://i.imgur.com/63xdsEb.png) Representation pas pratique car le max d'information se retrouve dispatche aux differents angles. On interverti les cadrants. Les basses frequences se retrouvent au centre ![](https://i.imgur.com/0qcdsyb.png) ![](https://i.imgur.com/79Z4ndK.png) Resultat: ![](https://i.imgur.com/23BGjDV.png) # La convolution ![](https://i.imgur.com/R6uOQZj.png) *Reponse impulsionnelle ?* Reponse a une impulsion $\delta(t)$, cad envoyer un pic de Dirac unitqire et recupere la reponse impulsionnelle du filtre h(t). :::danger Cela caracterise le filtre. ::: On peut en deduire pour n'importe quel signal la sortie du filtre. La reponse du filtre est donnee par un produit de convolution $$ y(t)=x(t)\times h(t)=\int_{-\infty}^{+\infty}x(u)h(t-u)du $$ ## Reponse impulsionnelle ![](https://i.imgur.com/xgPkFWO.png) *Si le signal est une serie d'impulsions ?* 1. On calcule la reponse du filtre a la 1$^{ere}$ impulsion 2. On calcule la reponse de la seconde impulsion 3. De meme pour la 3$^{eme}$ ![](https://i.imgur.com/Dwo12RK.png) ![](https://i.imgur.com/vlHrm10.png) ![](https://i.imgur.com/1MdYSYj.png) :::success Par le principe de supperposition, les reponses s'additionnent ![](https://i.imgur.com/e0tNhBA.png) ![](https://i.imgur.com/gwFtNAg.png) ::: C'est ce qu'on fait lors du produit de convolution. ## Proprietes - Commutative: $f(t)* g(t)=g(t)* f(t)$ - Distributive: $(x(t)+y(t))*g(t) = x(t)* g(t)+y(t)* g(t)$ - Associative: $(x(t)* y(t))* z(t)=x(t)* (y(t)* z(t))$ ## Theoreme de Plancherel :::danger |Temps|Frequences| |-|-| |Convolution $*$|Multiplication $.$| |Multiplication $.$|Convolution $*$| ::: ## Autre propriete $$ f'*g=f*g'=(f*g)' $$ # Consequences du lien convolution $\leftrightarrow$ multiplication - Spectre d'un signal echantillonee - Revisite du filtrage - Passe haut - Passe bas - Passe Bande - Rejecteur - Deconvolution Autres consequences: - DoG - Difference de gaussiennes - LoG - Laplacien d'une gaussienne Spectre d'un signal echantillonne: $f(t)Ш(t_0)=$ ![](https://i.imgur.com/J86iwi8.png) Dans le domaine frequentiel: ![](https://i.imgur.com/PfB1Cba.png) > La TF du peigne de Dirac est un autre peigne de Dirac plus espace :::warning Le signal se repete a l'infini, on n'a besoin de connaitre qu'un espace ::: ## Revisite du filtrage Passe haut / Passe Bas/ Passe Bande / Rejecteur ![](https://i.imgur.com/cR8Un02.png) 1. On a un signal qu'on veut filtrer pour enlever le bruit 2. On passe en frequenciel et on a le spectre du signal - Les hautes frequences sont du bruit 3. On defini un signal pour les enlever - 1 sur toutes les basses frequences - 0 partout ailleurs - On multiplie les 2 4. On obtient le spectre supprime de toutes les bases frequences 5. On fait l'inverse de la TF et on obtient le signal sans les hautes frequences *En pratique, est-ce qu'on fait tout ca ?* Non. ![](https://i.imgur.com/0QGvViy.png) On peut faire l'inverse 1. Prendre le filtre defini 2. Faire l'inverse et de le passer en temporel - en temporel, la porte devient un sinus cardinal 3. Convoluer le filtre avec le signal 4. On obtient notre signal filtre ## Autre consequence Convolution - $f'=f*h\Rightarrow F\times H = F'$ Deconvolution - $\frac{F'}{H} = F\to$ domaine temporel - Tres difficile si on ne connait pas le filtre initial - Probleme des 0 (ou des valeurs tres petites dans $H$) > Si on floute le visage de quelqu'un pour anonymat avec un filtre gaussien, on peut arriver a deconvoluer et retrouver le visage d'origine (tres difficile en pratique) > > Il faudrait mettre un gros carre noir et non flouter le visage Detection de bord - ($f*$ gauss)'$\to f*$guass' (la derivee de la gaussien est connue formellement) - Realise a la fois le lissage et la derivee LoG - Laplacient d'une gaussienne Dog - Difference de gaussienne # Filtrage - Passe Bas - Description - Coef central superieur ou egal aux autres - Autres coefs positifs - Effet - Pixel central devient une moyenne ponderee des voisins - Les regions homogenes sont peut changees - Les frontieres sont etalees - Reduit le bruit - Passe Haut - Description - Coef central positif et eleve - Autres coefs petits, negatifs ou nuls - La somme des coefficients est nulle - Effet - Zones homogenes: perte de la notion d'intensite - Frontieres sont renforcees # Proprietes de la TF2D ![](https://i.imgur.com/WT0mY6z.png) ![](https://i.imgur.com/h2i8RNf.png) Le module de l'image ne change pas ![](https://i.imgur.com/6XHKZct.png) Le module change mais la phase est invariante a la rotation ![](https://i.imgur.com/RwbJISb.png) ![](https://i.imgur.com/fVTnmCj.png) ## Impact du flou :::info Cela veut dire que les hautes frequences sont reduites/degradees. ::: ![](https://i.imgur.com/JHF9Bhd.png) ![](https://i.imgur.com/78ud8tB.png) ![](https://i.imgur.com/P4hSQdw.png) ![](https://i.imgur.com/xplxG7F.png) Si on bouge, on a un flou directionnel, cad on a preserve l'information dans un sens et perdu dans l'autre. ![](https://i.imgur.com/MgRSpEb.png) ![](https://i.imgur.com/NoeeQ5k.png) ## Skew estimation *Application:* On a un document qui passe dans un scanner, il n'est pas forcement droit et on veut corriger l'orientation. On voit la rotation dans le spectre et on refait une transformee de Fourier. ![](https://i.imgur.com/Q5bn6sZ.png) On peut estimer l'orientation du fichier d'origine. # Autres transformations - Short Term Fourier Transform - Discret Cosinus Transform - Ondelettes - Radon - Wigner - Hilbert - ... ## Transformee en cosinus discrete On fait la transformee de Fourier sur une base de sinusoide reel (utilise en JPEG) Probleme - definiton varie d'un ouvrage a un autre - Pour le JPEG, l'encodeur et le decodeur peuvent utiliser une transformee differente ## Short Term Fourier Transform - probleme: - FT: soit le temps, soit la frequence - Solution: ne considerer que des petits intervalles $$ X(f,t')=\int_{-\infty}^{+\infty}x(t)w^c(t-t')e^{-2j\pi t}dt $$ - Impact de la taille de w - W etroit $\Rightarrow$ localisation temporelle correcte mais mauvaise resolution frequentielle - W large $\Rightarrow$ localisation temporelle imprecise mais bonne resolution frequentielle ## Transformee en ondelettes - Avantages: - FT: soit le temps, soit la frequence - STFT: diffculte de regler la taille de w et taille fixee une fois pour toutes - Transformee en ondelette: - Representation temps-frequence - la frequence avec sa position spatiale - Adaptation de la resolution en fonction de la frequence - Basses frequence $\to$ Privilegie la resolution frequentielle - Hautes frequence $\to$ Privilegie la resolution temporelle - analyse des signaux non stationnaires Definition: $$ \Psi_x^\psi(\tau,s)=\frac{1}{\sqrt{\vert s\vert}}\int x(t)\psi^c\biggr(\frac{t-\tau}{s}\biggr)dt\\ \Psi_x^\psi(\tau,s)=\int x(t\psi_{\tau, s}^c)(t)dt\\ \psi_{(\tau,s)}=\frac{1}{\sqrt{\vert s\vert}}\psi\biggr(\frac{t-\tau}{s}\biggr) $$ ### Exemples - Haar - Mexican Hat - Morlet ![](https://i.imgur.com/ca1R9HU.png) ## Usage - Compression - Filtrage - Approximation - ...