Traitement du Signal Master 1 Informatique - Recherche et Innovation 10 septembre 2014 Introduction Nancy Bertin - [email protected] Organisation Définitions Contexte Applications Programme Scilab Contenu du premier cours 2 1 Points pratiques et organisationnels 2 Les signaux et leurs traitements : quelques définitions 3 Contexte historique et scientifique du traitement du signal 4 Quelques exemples de domaines d’application 5 Programme et objectifs du cours 6 Introduction à Scilab M1 RI Traitement du Signal - Intro 10/09/2014 Organisation Définitions Contexte Applications Programme Scilab Points pratiques et organisationnels 3 1 Points pratiques et organisationnels Faisons connaissance Calendrier du cours Évaluation et validation 2 Les signaux et leurs traitements : quelques définitions 3 Contexte historique et scientifique du traitement du signal 4 Quelques exemples de domaines d’application 5 Programme et objectifs du cours 6 Introduction à Scilab M1 RI Traitement du Signal - Intro 10/09/2014 Organisation Définitions Contexte Applications Programme Scilab Ma formation 2004 Ingénieur Télécom Paris 2005 Master 2 Recherche ATIAM 2009 Docteur en Traitement du Signal et des Images 4 M1 RI Traitement du Signal - Intro 10/09/2014 Organisation Définitions Contexte Applications Programme Scilab Mon métier 2010- Chargée de Recherche CNRS Chercheur = pas régulièrement enseignant Première année de cours “Traitement du Signal”... 5 M1 RI Traitement du Signal - Intro 10/09/2014 Organisation Définitions Contexte Applications Programme Scilab (Pardon) 6 M1 RI Traitement du Signal - Intro 10/09/2014 Organisation Définitions Contexte Applications Programme Scilab Vous Tour de table. Au fait, pourquoi le Traitement du Signal ? Questions subsidiaires : Est-ce que tout le monde est à l’aise avec la langue française ? Y a-t-il des fétichistes du papier parmi vous ? Des musiciens ou ex-musiciens ? Avez-vous suivi l’option SI en prépa, des cours d’automatique ? 7 M1 RI Traitement du Signal - Intro 10/09/2014 Organisation Définitions Contexte Applications Programme Scilab Calendrier du cours Calendrier : 12 × 2 heures (voulez-vous une pause ?) tous les lundis de 14h... à (±)16h du 15/09 au 08/12 inclus sauf 27/10 (Toussaint) 08/12 : court examen final, soutenances, debriefing TD : pauses exercices au fil du cours TP ? Avez-vous des machines transportables ? Êtes-vous disposés à les apporter ? Séance dédiée ou pauses exercices ? Bloquer une séance pour le mini-projet ? 8 M1 RI Traitement du Signal - Intro 10/09/2014 Organisation Définitions Contexte Applications Programme Scilab Évaluation et validation Présence et participation (5 points) Restitution du cours précédent en début de séance Corrigé d’un exercice au tableau Mini-projet en binôme (10 points) Bibliographie et petite réalisation Scilab Court rapport écrit (volume libre, en LATEX) Présentation orale (environ 15 minutes) Court examen final (5 points) Votre évaluation du cours (toute ma reconnaissance !) Module validé (10/20) = 3 crédits UE 9 M1 RI Traitement du Signal - Intro 10/09/2014 Organisation Définitions Contexte Applications Programme Scilab Les signaux et leurs traitements : quelques définitions 10 1 Points pratiques et organisationnels 2 Les signaux et leurs traitements : quelques définitions Le signal Catégorisations du signal Traitement du signal 3 Contexte historique et scientifique du traitement du signal 4 Quelques exemples de domaines d’application 5 Programme et objectifs du cours 6 Introduction à Scilab M1 RI Traitement du Signal - Intro 10/09/2014 Organisation Définitions Contexte Applications Programme Scilab Signal : une notion méconnue... ... À partir de l’activité “Shazam” du début du cours, comment définiriez-vous un signal ? 11 M1 RI Traitement du Signal - Intro 10/09/2014 Organisation Définitions Contexte Applications Programme Scilab Signal : définition morale Définition 1. Un signal est un ensemble ordonné de valeurs d’une grandeur physique variable et support d’une information. Deux notions importantes : Phénomène physique sous-jacent (acoustique, électrique, électro-magnétique...) Liens avec la notion d’information (et la théorie qui va avec) 12 M1 RI Traitement du Signal - Intro 10/09/2014 Organisation Définitions Contexte Applications Programme Scilab Signal : définition mathématique Définition 2. Un signal est une fonction. Et c’est (presque) tout. Bon, pas complètement n’importe quelle fonction non plus. En général, il s’agit d’une fonction dont une des variables est de nature temporelle. Une image est une fonction de l’espace (mais pas du temps). Mais on pourrait chipoter, et beaucoup d’outils sont communs. 13 M1 RI Traitement du Signal - Intro 10/09/2014 Organisation Définitions Contexte Applications Programme Scilab Exemples de signaux 14 Pression acoustique Courant, tension électrique Champ électromagnétique Activité bioélectrique M1 RI Traitement du Signal - Intro 10/09/2014 Organisation Définitions Contexte Applications Programme Scilab Catégorisations des signaux Notation générique x:X →Y u → x(u) Avec une définition aussi vaste, on imagine bien que les signaux sont de nature et de caractéristiques très variables. Plusieurs axes de discrimination permettent de les catégoriser : La nature et la dimension du domaine Y où vivent les valeurs prises par le signal ; La nature du domaine de définition X du signal ; La modélisation et la reproductibilité du phénomène physique qu’il décrit ; Des propriétés particulières (périodicité, conditions d’énergie ou de puissance...) 15 M1 RI Traitement du Signal - Intro 10/09/2014 Organisation Définitions Contexte Applications Programme Scilab Signal : dimensionnalité En fonction de la dimension de l’ensemble d’arrivée Y : x(u) scalaire, typiquement Y = R : signal “1D”; x(u) est un vecteur, dont chaque composante est un signal scalaire : signal “multidimensionnel” (également appelé “multicanal”, typiquement lorsqu’il est issu de la captation d’un seul et même phénomène par une antenne de capteurs) Certains auteurs réservent le terme image au cas où Y est un ensemble produit de type Z p En ce qui concerne la dimension de l’ensemble de départ, dans ce cours, on se limitera essentiellement au cas des fonctions d’une seule variable, que l’on notera généralement t pour le temps. D’autres auteurs réservent le terme d’image au cas où X possède deux (voire trois) dimensions. 16 M1 RI Traitement du Signal - Intro 10/09/2014 Organisation Définitions Contexte Applications Programme Scilab Signal continu vs. discret Cette distinction concerne la nature du domaine de définition X : Si X est dense, le signal est continu (typiquement, X ⊂ R) ; Si X est dénombrable, le signal est discret (on devrait dire “à temps discret”). Typiquement, X ⊂ Z et le signal est une suite. Remarque : Dans le monde physique la plupart des signaux sont continus. Ils peuvent être nativement discrets (ex : indice boursier) Mais la plupart du temps, les signaux discrets sont des échantillons, des extraits ponctuels d’un signal physique continu. On parle de signal échantillonné. 17 M1 RI Traitement du Signal - Intro 10/09/2014 Organisation Définitions Contexte Applications Programme Scilab Illustration Signal continu Signal échantillonné 2 2 1.5 1.5 1 Amplitude du signal Amplitude du signal 1 0.5 0 −0.5 0 −0.5 −1 −1 −1.5 −1.5 −2 0 50 100 150 Temps (secondes) 200 250 x(t) 18 0.5 −2 0 50 100 150 Temps (secondes) 200 250 x[n] = x(nTe ) M1 RI Traitement du Signal - Intro 10/09/2014 Organisation Définitions Contexte Applications Programme Scilab Signal analogique vs. numérique Si Y est dense, le signal peut prendre une infinité de valeurs, analogues à la grandeur physique sous-jacente. Il est dit analogique. C’est le cas le plus courant dans le monde physique. Si Y est discret, le signal ne peut prendre que certaines valeurs fixées. Il est quantifié. Un signal numérique est un signal quantifié et à temps discret. 19 M1 RI Traitement du Signal - Intro 10/09/2014 Organisation Définitions Contexte Applications Programme Scilab Résumé en images Signal analogique Signal échantillonné 2 2 1.5 1.5 1 Amplitude du signal Amplitude du signal 1 0.5 0 −0.5 0.5 0 −0.5 −1 −1 −1.5 −1.5 −2 0 50 100 150 Temps (secondes) 200 −2 250 0 Signal quantifié 2 1.5 1.5 200 250 1 Amplitude du signal Amplitude du signal 1 20 100 150 Temps (secondes) Signal numérique 2 0.5 0 −0.5 0.5 0 −0.5 −1 −1 −1.5 −1.5 −2 50 0 50 100 150 Temps (secondes) 200 250 M1 RI −2 0 50 100 150 Temps (secondes) Traitement du Signal - Intro 200 250 10/09/2014 Organisation Définitions Contexte Applications Programme Scilab Signal déterministe vs. aléatoire Cette dernière catégorie a trait à la prédictibilité et la reproductibilité d’un signal. Les signaux déterministes peuvent être prédits de manière certaine à tout instant, avec une description simple et explicite. Les signaux aléatoires sont moins prévisibles et issus de processus qui, si on tente de les reproduire à l’identique, produisent un autre signal. Ces deux types de signaux appellent des outils de modélisation différents : fonctions et suites explicites dans un cas, processus aléatoires et modèles probabilistes dans l’autre. 21 M1 RI Traitement du Signal - Intro 10/09/2014 Organisation Définitions Contexte Applications Programme Scilab Illustration Signal aléatoire 1.5 1.5 1 1 0.5 0.5 Amplitude du signal Amplitude du signal Signal déterministe 0 −0.5 −0.5 −1 −1 −1.5 0 50 100 150 Temps (secondes) 200 250 x(t) = sin(2πf t − π/4) 22 0 M1 RI −1.5 0 50 100 150 Temps (secondes) 200 250 x(t) ∼ N (0, σ 2 ) Traitement du Signal - Intro 10/09/2014 Organisation Définitions Contexte Applications Programme Scilab Signal et bruit Une dernière distinction courante (mais piégeuse). On appelle en général signal une partie du signal qui porte l’information qui nous intéresse bruit une partie du signal qui est une nuisance, ou qui porte une information qui ne nous intéresse pas. Mathématiquement, un bruit est un signal... Dépend uniquement du problème que l’on veut résoudre. Un signal peut devenir bruit et réciproquement suivant la tâche à accomplir. Attention à l’amalgame fréquent : bruit 6= aléatoire (ex : ronflette à 50 Hz) signal 6= déterministe (ex : consonnes) 23 M1 RI Traitement du Signal - Intro 10/09/2014 Organisation Définitions Contexte Applications Programme Scilab Définition du traitement du signal Traitement du signal Le traitement du signal est l’ensemble des opérations qui visent à modéliser, analyser, extraire, exploiter, transformer, restaurer, compresser, transmettre l’information contenue dans des signaux. C’est aussi la discipline qui s’intéresse à décrire, mettre au point et caractériser les propriétés de telles opérations. 24 M1 RI Traitement du Signal - Intro 10/09/2014 Organisation Définitions Contexte Applications Programme Scilab Contexte historique et scientifique du traitement du signal 25 1 Points pratiques et organisationnels 2 Les signaux et leurs traitements : quelques définitions 3 Contexte historique et scientifique du traitement du signal Historique Disciplinarité Flux séquentiel Tâches 4 Quelques exemples de domaines d’application 5 Programme et objectifs du cours 6 Introduction à Scilab M1 RI Traitement du Signal - Intro 10/09/2014 Organisation Définitions Contexte Applications Programme Scilab Le grand-père du traitement du signal Joseph Fourier (1768-1830) Mathématicien français Travaux sur la décomposition de fonctions périodiques en séries trigonométriques ... justement devenues célèbres sous le nom de Séries de Fourier Cela pourrait n’être considéré que “comme des maths” ... s’il ne les avait appliqués à modéliser les solutions de l’équation de la chaleur 26 M1 RI Traitement du Signal - Intro 10/09/2014 Organisation Définitions Contexte Applications Programme Scilab Repères historiques Le traitement du signal est une discipline jeune : Traitement du signal analogique Avant 1940 : on en fait sans le savoir (télécommunications) 1940-1950 : naissance de l’expression “traitement du signal” ; application en radar, sonar, téléphonie L’essor du traitement du signal numérique 1950-1960 : invention du transistor et du circuit intégré 1960-1970 : premiers ordinateurs numériques D’abord limité à des applications critiques (radar, sonar militaire, pétrole, espace, médecine) 1980+ : explosion des ordinateurs personnels et des applications commerciales L’enseignement du traitement du signal 1980 : enseigné en troisième cycle (thèse) 1990 : enseigné dès le premier cycle (souvent en cursus EEA) Aujourd’hui outil de base pour les scientifiques et les ingénieurs, de plus en plus éloigné de l’électronique mais de plus en plus proches des mathématiques, maths applis, optimisation, informatique et algorithmique... 27 M1 RI Traitement du Signal - Intro 10/09/2014 Organisation Définitions Contexte Applications Programme Scilab L’oncle du traitement du signal numérique Claude Shannon (1916-2001) Mathématicien et ingénieur américain Considéré comme le père de la théorie de l’information ... mais aussi responsables de travaux majeurs en signal : Le modèle de communication décrivant les concepts et étapes dans la transmission d’un message (source, émetteur, canal, récepteur, destinataire) ; La démonstration du théorème d’échantillonnage qui établit les conditions sous lesquelles un signal échantillonné préserve toute l’information du signal analogique d’origine. 28 M1 RI Traitement du Signal - Intro 10/09/2014 Organisation Définitions Contexte Applications Programme Scilab Un carrefour de disciplines Mathématiques Informatique Électronique Physique Traitement du signal Statistiques Probabilités Théorie de l’information Communications 29 M1 RI Traitement du Signal - Intro 10/09/2014 Organisation Définitions Contexte Applications Programme Scilab Flux séquentiel en traitement du signal numérique 30 M1 RI Traitement du Signal - Intro 10/09/2014 Organisation Définitions Contexte Applications Programme Scilab Tâches en traitement du signal Les problèmes posés au traitement du signal peuvent appartenir à différentes familles de tâches : Détection de la présence d’un signal exemple : VAD (“allô, t’es toujours là ?”) Débruitage, séparation de signaux exemple : casques audio à contrôle actif, ECG mère-enfant Codage, compression, transmission exemple : mp3, radio FM Analyse, estimation, extraction d’information exemple : SingStar, Shazam Transformation de signaux Classification d’un signal dans des catégories prédéfinies exemple : segmentation d’image, de flux Synthèse exemple : synthétiseur 31 M1 RI Traitement du Signal - Intro 10/09/2014 Organisation Définitions Contexte Applications Programme Scilab Quelques exemples de domaines d’application 32 1 Points pratiques et organisationnels 2 Les signaux et leurs traitements : quelques définitions 3 Contexte historique et scientifique du traitement du signal 4 Quelques exemples de domaines d’application Grands domaines Exemples 5 Programme et objectifs du cours 6 Introduction à Scilab M1 RI Traitement du Signal - Intro 10/09/2014 Organisation Définitions Contexte Applications Programme Scilab Grands domaines d’application Les domaines d’application du TDS sont innombrables : Traitement de la parole Audionumérique Télécommunications Biologie et médecine Géophysique, géologie, sismique Radar et sonar Aéronautique, automobile Mais aussi : Zoologie (surveillance de la faune sauvage) Cosmologie (Planck) 33 M1 RI Traitement du Signal - Intro 10/09/2014 Organisation Définitions Contexte Applications Programme Scilab Exemples En traitement de la parole : Reconnaissance de la parole (dictée vocale) Synthèse (jeux vidéo et audiovisuel, robots, aide aux personnes handicapées) Reconnaissance du locuteur En audio : Compression Restauration d’enregistrements Composition assistée par ordinateur Synthèse sonore Captation et rendu audio 3D Recherche d’information musicale (MIR) 34 M1 RI Traitement du Signal - Intro 10/09/2014 Organisation Définitions Contexte Applications Programme Scilab Exemples En télécommunications : Téléphonie mobile Communications optiques Communications satellitaires En biologie et en médecine : Electrocardiographie, électro-encéphalographie Echographie ultrasonore, écho-doppler Microscopie, spectroscopie Médecine nucléaire 35 M1 RI Traitement du Signal - Intro 10/09/2014 Organisation Définitions Contexte Applications Programme Scilab Exemples En géophysique et géologie : Prédiction et suivi des tremblements de terre Surveillance des océans Exploration du sous-sol Industrie pétrolière Industries lourdes : Automobile et aéronautique Contrôle non destructif Surveillance des ouvrages d’art (ponts, immeubles) 36 M1 RI Traitement du Signal - Intro 10/09/2014 Organisation Définitions Contexte Applications Programme Scilab Exemples En image (liste non exhaustive) Codage, compression, transmission Amélioration (super-résolution, débruitage, défloutage) Segmentation Reconnaissance, classification Détection de contours Reconnaissance de texture Imagerie 3D Imagerie hyperspectrale 37 M1 RI Traitement du Signal - Intro 10/09/2014 Organisation Définitions Contexte Applications Programme Scilab Programme et objectifs du cours 38 1 Points pratiques et organisationnels 2 Les signaux et leurs traitements : quelques définitions 3 Contexte historique et scientifique du traitement du signal 4 Quelques exemples de domaines d’application 5 Programme et objectifs du cours Objectifs Plan du cours 6 Introduction à Scilab M1 RI Traitement du Signal - Intro 10/09/2014 Organisation Définitions Contexte Applications Programme Scilab Objectifs Ce module est une introduction au traitement de signal et a pour but d’apporter : Des connaissances théoriques et des outils pratiques pour : Décrire et représenter des signaux ; Décrire et représenter des systèmes ayant des signaux pour entrée et sortie ; Comprendre les principes des méthodes de traitement du signal numérique ; Être capable de réaliser quelques traitements simples en simulation informatique. Mais surtout : Une culture générale minimale en traitement du signal pour pouvoir dialoguer avec des experts en situation interdisciplinaire ; Une intuition des effets des traitements sur les signaux, de leur puissance, de leurs limites ; Pourquoi pas, envie d’approfondir le sujet en stage, en M2... 39 M1 RI Traitement du Signal - Intro 10/09/2014 Organisation Définitions Contexte Applications Programme Scilab Plan du cours Le cours suivra plus ou moins les grandes étapes suivantes : 1 Signaux déterministes à temps continu La transformée de Fourier Conversion analogique-numérique : échantillonnage, repliement, reconstruction 2 Signaux déterministes à temps discret Transformée de Fourier à temps discret et transformée de Fourier discrète Résolution, précision, fenêtrage Filtrage numérique : transformée en Z, fonction de transfert, réponse impulsionnelle, synthèse de filtres 3 Signaux aléatoires Processus aléaloire, loi, stationnarité Propriétés du second ordre et estimation Filtrage Processus ARMA, prédiction linéaire, filtrage de Wiener 40 M1 RI Traitement du Signal - Intro 10/09/2014 Organisation Définitions Contexte Applications Programme Scilab Compléments possibles Suivant le temps et l’envie : Analyse temps-fréquence, spectrogramme Analyse temps-échelle, ondelettes Analyse en composantes indépendants et séparation de sources Quelques spécificités de l’image 41 M1 RI Traitement du Signal - Intro 10/09/2014 Organisation Définitions Contexte Applications Programme Scilab Introduction à Scilab 42 1 Points pratiques et organisationnels 2 Les signaux et leurs traitements : quelques définitions 3 Contexte historique et scientifique du traitement du signal 4 Quelques exemples de domaines d’application 5 Programme et objectifs du cours 6 Introduction à Scilab Présentation de Scilab TP : familiarisation avec Scilab M1 RI Traitement du Signal - Intro 10/09/2014 Organisation Définitions Contexte Applications Programme Scilab Présentation de Scilab Plusieurs logiciels / langages sont très utilisés en traitement de signal pour la recherche et le prototypage : Matlab (Mathworks) : plébiscité, mais sous licence propriétaire (coûteuse) “Clones libres” / gratuits : GNU/Octave, Scilab Plus récemment (en plein boom) : Python Caractéristiques : Langage de script (possibilités variables de compilation), programmation de haut niveau, intuitive Structures de données et syntaxes conçues pour faciliter pour le calcul vectoriel et matriciel Nombreuses boîtes à outils classiques (transformations, filtres...) Communauté d’utilisateurs Nous utiliserons Scilab, logiciel libre né à l’Inria de Rennes. 43 M1 RI Traitement du Signal - Intro 10/09/2014 Organisation Définitions Contexte Applications Programme Scilab TP : familiarisation avec Scilab Objectif : reproduire ces figures ! Pour télécharger et installer Scilab : : http://www.scilab.org/fr/download/5.5.0 2 2 1.5 1.5 1 Amplitude du signal Amplitude du signal 1 0.5 0 −0.5 −1 −1.5 0 50 100 150 Temps (secondes) 200 −2 250 2 2 1.5 1.5 0.5 0 −0.5 −1 50 100 150 Temps (secondes) 200 250 0 50 100 150 Temps (secondes) 200 250 0.5 0 −0.5 −1 −1.5 −2 0 1 Amplitude du signal Amplitude du signal 1 44 0 −0.5 −1 −1.5 −2 0.5 −1.5 0 50 100 150 Temps (secondes) 200 250 M1 RI −2 Traitement du Signal - Intro 10/09/2014