Technologies du Traitement du Signal et Image

Page 1 sur 51Lecteur de document UniversityLib

Technologies du Traitement du Signal et Image

Signal Processing, Digital Signal Processing, DSP · course

Voir tous les documents en électronique et automatique

École Nationale des Sciences de l’Informatique

Filières : Systèmes et Logiciels Embarqués & Image

Module : Technologies du Traitement du Signal et Image

R. Besrour Niveau : II3 ENSI : 2015/2016

PLAN

Chapitre 1 : Généralités

Chapitre 2 : TFTD et TFD (TFR)

Chapitre 3 : Filtrage Numérique

Chapitre 4 : Applications

Chapitre 1 : Généralités

1. Traitement numérique vs. analogique?

2. Opérations classiques en TNS

3. Processeur DSP

4.

Applications

Chaine de traitement numérique

Signal original Grandeur physique

Capteur

Adaptation du signal d’entrée Gain+Démodulation

Signal traité

Signal analogique

Signal analogique

MEM

Filtre anti-repliement

Echantillonnage

CAN

DSP

CNA

Filtre de Lissage

Ports E/S

Reconstruction du signal

TTSI

-1-

Signal numérique

Traitement numérique vs. analogique? (1/4)

Signal analogique

Circuit électronique à composants analogiques

Signal analogique

Signal analogique

CAN

DSP

CNA

Signal analogique

Signal numérique

Signal numérique

En quoi le passage par le numérique est-il intéressant même lorsque

l’entrée et la sortie sont analogiques????

TTSI

-2-

Traitement numérique vs. analogique? (2/4)

Numérique

Analogique

Précision / RSB

Fixes et connus à l’avance Liés à la taille des mots mémoire (16/24/32 bits)

Sources de bruit

Echantillonnage quantification

Reconfigurabilité Changer le logiciel

Dépend de la qualité des composants

Bruit électromagnétique, température, humidité, vieillissement

Matériel Calibration nécessaire

Largeur de bande utilisable

Limitée par l’échantillonnage Peut travailler à très

haute fréquence

TTSI

-3-

Traitement numérique vs. analogique? (3/4)

Algorithmes de TNS

Contrainte de temps réel

– filtrage – transformées – codage/décodage – reconnaissance de la parole – synthèse de signaux – estimation spectrale…

Cahier des charges

1. Calculs rapides 2. Contraintes temps réel (entrées/sorties à débit fixe) 3. Contraintes systèmes embarqués (taille limitée, faible consommation d’énergie)

Les DSP ont une architecture matérielle et logicielle dédiée permettant de répondre à ces besoins

TTSI

-4-

Traitement numérique vs. analogique? (4/4)

o Traitement temps réel

• Latence maximale autorisée entre l’arrivée d’une donnée et la disponibilité du

résultat du calcul correspondant.

o Débits de données important

• Signaux numériques = quantité importante de données transmises séquentiellement.

o Charge de calcul importante

• convolution, FFT…

oTraitements répétitifs

TTSI

-5-

Opérations classiques en TNS

o MAC : Multiplication-ACcumulation

• acc  acc + bi . xi

• Filtres à réponse impulsionelle finie (RIF)

• Filtres à réponses impulsionelle infinie (RII)

o FFT

• Analyse spectrale

o Génération de formes d’ondes

• Communications numériques

TTSI

-6-

Processeur DSP (1/14)

Environnement externe

Conditionnement des signaux

Conversion des données

Traitement Numérique des Signaux

Interface Hôte

• Composant électronique utilisant conjointement du matériel (Hard) et du logiciel

(Soft) pour mettre en œuvre une application de traitement du signal

• Système DSP : interagit fortement avec son environnement (contraintes de temps réel

et de dynamique des phénomènes physiques)

• Composants du DSP (unité de traitement, registres, bus, mémoire, ports E/S,

périphériques, …) : fixent les performances expérimentales du système.

• Ressources logicielles (jeu d’instructions, OS) offrent la flexibilité au système.

TTSI

-7-

Processeur DSP (2/14)

Opérations les plus

courantes dans les

algorithmes de TNS

imposent

Contraintes

matérielles sur

l’architecture DSP

 2 algorithmes classiques de TNS :

Filtre à Réponse Impulsionnelle Finie (RIF) Transformée de Fourier rapide (FFT)

Spécificités des DSP

TTSI

-8-

Processeur DSP (3/14)

Produit de Convolution  Filtre RIF

TTSI

-9-

Processeur DSP (4/14)

Pour chaque cellule h(k)x(n-k) :

– Recherche de l’instruction

– Recherche du coefficients h(k)

– Recherche de la donnée x(n-k)

– Multiplication h(k)x(n-k)

– Accumulation h(k-1)x(n-k-1) + h(k)x(n-k)

– Décalage en mémoire x(n-k)  x(n-k-1)

4 accès en mémoire

2 accès à l’unité de calcul

TTSI

-10-

Processeur DSP (5/14)

Architecture Von Neuman

Système à usage général

Une mémoire pour le code et les données

Double utilisation des bus données et adresses

1. Recherche Instruction 2. Recherche Data_1 3. Recherche Data_2

Plusieurs cycles !!!

TTSI

-11-

Processeur DSP (6/14)

Limitations de l’architecture Von Neumann

Code avec un microprocesseur x86 d’Intel

TTSI

-12-

Processeur DSP (7/14)

Publicité

Architecture Harvard

• Mémoires PM et DM séparées

• Bus indépendants pour chaque mémoire

: PMD et DMD

• en 1 cycle : Instr. fetch & Data fetch

• Memory Mapped IO

• Core : chemins de données optimisés,

MAC, adressage approprié des données

• Software

:

instructions dédiées aux

applications (FFT, video, parole, …)

TTSI

-13-

Processeur DSP (8/14)

Architecture Harvard modifiée  Plus de puissance de calcul

o Architecture Harvard

:

accès

simultanée aux données et aux

instructions

o Architecture Harvard modifiée :

• accès simultanée à 2 données

(DM) et une instruction

• donne les performances de3 bus

avec une architecture à 2 bus

TTSI

-14-

Processeur DSP (9/14)

o Texas Instrument TMS320Cxxxx

o Analog Devices ADSPxxxx, SHARC, blackfin

o un processeur DSP est préférable pour :

• minimiser la taille

• minimiser la consommation

• traitement temps-réel à grand débit

o un processeur d’usage général est préférable pour :

• disposer d’une grande quantité de mémoire

• développer sous un système d’exploitation avancé

• nécessité de mixer calcul numérique et autres taches

TTSI

-15-

Processeur DSP (10/14)

Critères de performance d’un DSP

Horloge

la rapidité de l'exécution des instructions

1er critère : Puissance de calcul d’un DSP

Encore faut-il trouver une bonne définition de ce qu’est la vitesse d’exécution, ce qui n’est pas forcément simple

TTSI

-16-

Processeur DSP (11/14)

Acronyme

Définition

MFLOPS

Nombre d’opérations à virgule

flottante (multiplications,

Million FLoating-point

additions, soustractions, etc.) que le DSP à virgule flottante peut

Operations Per

réaliser en une seconde.

Second

MOPS

Nombre total d’opérations (traitement et transfert de données,

Million Operations

accès DMA, opérations d’E/S) que le DSP peut effectuer en une

Per Second

seconde.

TTSI

-17-

Processeur DSP (12/14)

MIPS

Nombre de codes machines (instructions) que le DSP peut

Million Instructions

effectuer en une seconde.

Per Second.

MMACS

Nombre de MAC que le DSP peut effectuer en une seconde

Million Multiply and

Accumulate Per Second.

Ex : DSP56156 30MIPS

• taux d’échantillonnage 48 kHz  Te=20.833µs

• quel est le nombre d’instructions maximum entre 2 échantillons ?

TTSI

-18-

Processeur DSP (13/14)

2ème critère :

Mesure du temps d’exécution « Benchmark »

Mesurer le temps que met

le DSP pour exécuter des

programmes « standards »

de traitements du signal

TTSI

-19-

Processeur DSP (14/14)

Quelques DSP

Constructeur

Modèle

Horloge (MHz)

MMACS

Virgule Fixe/Flottante

Données (bits)

Analog Devices

Texas Instruments

ADSP-21xx

80/160

80/100

TMS320 C24

TMS320 C54

TMS320 C55

TMS320 C62

TMS320 C67

40

160

200

300

300

40

160

400

400

400

Fixe

Fixe

Fixe

Fixe

Fixe

flottante

16

16

16

16

16

32

TTSI

-20-

Applications (1/3)

o Communications

• sans fil (cellulaire, télévision numérique, radio numérique)

• filaire (DSL, câble)

• modem

• cryptage

o Audio

• mixage et édition

• effets

• suppression du bruit

o Image / Vidéo

• compression / Codage

• traitement

TTSI

-21-

Applications (2/3)

o Militaire

• imagerie (radar, sonar, …)

• guidage de missiles

o Biomédical

• équipements de monitoring (signaux biophysiques, ElectroEncéphaloGramme EEG,

Publicité

ElectroCardioGramme (ECG)

• radiographie

o Instrumentation

• analyseur de spectre

• générations de fonctions

o Automatisation

• commande de machines

• contrôle de moteurs

• robots

TTSI

-22-

Applications (3/3)

o Electronique Automobile

• contrôle du moteur

• assistance au freinage

• aide à la navigation

• commandes vocales

TTSI

-23-

Chapitre 2: TFTD et TFD(TFR)

1. Transformée de Fourier des signaux à Temps Discret

2. De la TFTD à la Transformée de Fourier Discrète TFD

3. Transformée de Fourier Discrète TFD

4. Analyse spectrale et TFD

5. Précision de la TFD

6. TFD et fenêtrage temporel

7. Conclusion

Transformée de Fourier des signaux à Temps Discret (1/5)

Question : Comment faire l’analyse fréquentielle de signaux discrets?

1. Définition

Soit un signal discret. La TFTD de ce signal est donnée par l’expression :

La TF d’un signal discret est une fonction continue ou non de la variable continue f.

f est une variable continue

2. Condition d’existence de la TFTD

La TF d’un signal discret existe si . Si le signal est absolument

sommable.

L’existence de la TFTD est donc liée à la convergence absolue de la série

TTSI

-25-

Transformée de Fourier des signaux à Temps Discret (2/5)

3. Périodicité de la TFTD

La TF des signaux discrets est périodique de période f=1  toute l’information

fréquentielle du signal est localisée dans l’intervalle de fréquence

TTSI

-26-

Transformée de Fourier des signaux à Temps Discret (3/5)

4. Périodicité de la TFTD : généralisation avec Fe ≠ 0

Pour un signal échantillonné à la fréquence Fe, sa TFTD Xe(f) est périodique de période Fe

 l’information fréquentielle est contenue dans sa bande

5. TF inverse des signaux discrets

Comme la TF des signaux discrets est périodique de période 1, l’expression de la TFTD

inverse est donnée par :

Rq : intégrale car f est une variable continue

TTSI

-27-

Transformée de Fourier des signaux à Temps Discret (4/5)

6. Représentation spectrale

signal discret (support discret)

En fonction de la nature (périodique ou non) de , on a deux types de représentation

spectrale possibles

x(n) non périodique

TFTD

x(n) périodique

TFTD

X(f) est à support continu

X(f) est à support discret

TTSI

-28-

Transformée de Fourier des signaux à Temps Discret (5/5)

7. Propriétés de la TFTD

Globalement, la TFTD possède les mêmes propriétés que la TF (voire module Math de l’ing

II1), à savoir la linéarité, le décalage temporel, le décalage fréquentiel ou modulation, la TF

de la dérivée du signal, la relation de Parseval (conservation de l’énergie), les relations de

Plancherel.

Bilan sur la TFTD :

• la TF fonctionne sur un signal à temps discret

• mais en fréquence, on repasse en continu  on perd l’avantage du

numérique !!!

TTSI

-29-

De la TFTD à la Transformée de Fourier Discrète TFD (1/2)

o Objectif : on veut calculer la TF d’un signal discret à l’aide d’un calculateur

o Difficultés :

•

•

Le calcul de la TF nécessite une infinité de points de mesures x(n) (pas toujours

possible dans la pratique : contraintes temps réel, …)

Le calculateur ne peut calculer une TFTD car sa réponse fréquentielle est forcément

discrète = un nombre fini de points fréquentiel fn alors que f varie continument …

o Solution : Transformée de Fourier Discrète (TFD)

•

Limiter la durée de x(n) considérer un nombre fini N de points temporels

• Discrétiser la fréquence  considérer un nombre fini L de points fréquentiels

A un nombre fini de valeurs x(1),…, x(N), on fait correspondre un nombre fini de valeurs

X(f1),…,X(fL) telle que la TFD de x soit une approximation aussi bonne que possible de X(f)

TTSI

-30-

De la TFTD à la Transformée de Fourier Discrète TFD (2/2)

Question : Quelle est l’influence du nombre de points temporels N et du nombre de

points fréquentiels L sur l’observation spectrale ?

Soit un signal discret de durée finie N. Sa TFTD est :

Discrétisation de la fréquence sur L points :

est périodique de période 1, donc

L’approximation discrète de la TFTD de ce signal est :

k et n ne jouent pas le même rôle : n : variable temporelle n=0,…, N-1 k : variable fréquentielle k=0,…, L-1

TTSI

-31-

Transformée de Fourier Discrète TFD (1/4)

1. Définition :

o La TFD évaluée sur un nombre L de points fréquentiels d’un signal discret est

définie par :

N : nombre de points temporels n : variable temporelle n=0,…,N-1 L : nombre de points fréquentiels k: variable fréquentielle k=0,…,L-1

 X(k) est périodique de période L.

o La TFD inverse est :

 est une suite périodique de période L

la discrétisation de X(k) a entrainé une périodisation de x(n)

TTSI

-32-

Transformée de Fourier Discrète TFD (2/4)

TFTD : Discrétisation en temporel  Périodisation en fréquentiel

TFD : Discrétisation en fréquentiel  Périodisation en temporel

TTSI

-33-

Transformée de Fourier Discrète TFD (3/4)

2. Que se passe t-il si l’on applique la TFD à un signal périodique ?

Soit xp(n) un signal périodique de période n. pour calculer sa TFD, on se restreint à une

période.

o La TFD

o La TFD inverse

TFD

Suite x(n) périodique de période N

Suite X(k) périodique de période N

TFD inverse

TTSI

-34-

Transformée de Fourier Discrète TFD (4/4)

3. Propriétés de la TFD

La TFD possède les propriétés classiques de la TFTD mais tous les calculs d’indice k et n se

font modulo N.

4. TFD et convolution circulaire

Soit x(n) et y(n) des signaux discrets de durée finie N. Leur produit de convolution circulaire

est défini par :

 c(n) est donc périodique de période N.

On peut voir la convolution circulaire comme la rotation d’une séquence autour d’une autre.

5. TFD et convolution circulaire

TTSI

-35-

Analyse spectrale et TFD (1/4)

1. Introduction

On veut utiliser la TFD pour analyser le contenu fréquentiel d’un signal continu x(t). Ceci

impose les opération suivantes :

o Echantillonnage de x(t)  choix de la fréquence d’échantillonnage Fe

(fixée par le théorème de Shannon)

Numérisation OK

o Quantification pour générer le signal discret x(n)

Publicité

o Troncature de x(n) à N échantillons

o Discrétisation du domaine fréquentiel en L points

TFD  quelle est l’influence

de ces 2 opérations sur le

spectre donné par la TFD ?

TTSI

-36-

Analyse spectrale et TFD (2/4)

2. Troncature du signal discret (fenêtrage temporel)

o Opération dans le domaine temporel

Soit x(n) un signal discret. Le signal résultant de la troncature de x(n) à N échantillons

est :

h(n) : fenêtre rectangulaire de largeur N

N : durée d’observation du signal x(n)

Note : si x(n) est issu de la discrétisation d’un signal à une période Te, la durée d’observation

est NTe.

o Influence de la troncature dans le domaine fréquentiel

Calculons la TFTD du signal tronqué :

 La TFTD du signal tronqué xN(n) est obtenue par filtrage de la TFD de x(n) à travers un

filtre de réponse impulsionnelle H(f)

TTSI

-37-

Analyse spectrale et TFD (3/4)

3. Echantillonnage de XN(f)

o La TFD XN(k) est obtenue par discrétisation du domaine fréquentiel de XN(f)

o La distance entre 2 points fréquentiels est (ou : prise en compte fréquence

d’échantillonnage)

o Avec l’opération de fenêtrage, on obtient :

 XN(k) est constitué d’échantillons de X(f) filtré à travers le filtre H(f).

TTSI

-38-

Analyse spectrale et TFD (4/4)

4. Influences du fenêtrage temporel et de la discrétisation fréquentielle

o TFD du signal tronqué xN(n) :

Le choix du pas fréquentiel 1/L (ou Fe/L) aura

une influence sur la précision de l’analyse spectrale

(précision de mesure d’une fréquence particulière)

o TFTD de la fenêtre rectangulaire

 la convolution fréquentielle de X(f) par H(f) aura

pour conséquence l’apparition d’ondulations dans le spectre

XN(f) et donc dans XN(k) : c’est le problème de résolution

TTSI

-39-

Précision de la TFD (1/3)

1. Problématique

o Fenêtrage  le spectre des la sinusoïde apparait sous forme de plusieurs raies non

nulles

o La plus importante en module est proche de la vraie fréquence f0.

o L’erreur maximale commise sur cette estimation est 1/L.

TTSI

-40-

Précision de la TFD (2/3)

2. Deux objectifs

o Résolution en fréquence (largeur du lobe) permet de distinguer 2 fréquences proches

Exemple : soit un signal contenant 2 fréquences f1 et f2. si |f1-f2|<1/N, les lobes principaux

seront proches pour les distinguer

 la résolution en fréquence est de l’ordre de 1/N (ou Fe/N)

o Résolution en amplitude (atténuation des lobes secondaires) permet de distinguer

des raies spectrales de faibles amplitudes ou une raie de faible amplitude proche d’une

raie d’amplitude élevée.

TTSI

-41-

Précision de la TFD (3/3)

3. Amélioration de la précision

o Diminuer Fe = augmenter Te

• suppression des hautes fréquences • amélioration de la précision sur les fréquences restantes

o Augmentation du nombre de points fréquentiel L

• pas toujours possible

o Augmentation du nombre de points temporels N

• ajout d’échantillons nuls • interpolation fréquentielle : zero padding • ajout de K-1 zéros entre les échantillons • précision de 1/KN au lieu de 1/N • exemple en 1D

[1, 2, 3]  [1, 0, 0, 2, 0, 0, 3]

• application : zoom sur une image

TTSI

-42-

TFD et fenêtrage temporel (1/3)

1. Objectif

Amélioration de l’analyse spectrale par pondération des échantillons avant filtrage

2. Réalisation

Remplacement de la fenêtre rectangulaire h(n) par une fenêtre dont la TF présente des

ondulations plus faibles.

Exemples de fenêtre

Fenêtre de Hanning

Fenêtre de Hamming

Chaque type de fenêtre a une réponse en fréquence particulière (largeur du lobe principale,

amplitude des lobes secondaires,…) qui permet de choisir au mieux la « bonne » en fonction

des applications.

TTSI

-43-

TFD et fenêtrage temporel (2/3)

En général les résolutions en fréquence et en amplitude sont d’autant meilleures que le lobe

principal est étroit et les lobes secondaires sont de faibles amplitudes.

3. Choix de la fenêtre  critères de sélection

• rapport A entre les maximum du lobe central et des lobes secondaires de la TFD des

fenêtres

• atténuation des lobes secondaires de la TFD des fenêtres S

• largeur du lobe central ΔF

TTSI

-44-

TFD et fenêtrage temporel (3/3)

Rapport d’amplitude entre le lobe principal et le lobe secondaire

Largeur du lobe principal

-13 dB

-25 dB

-31 dB

-41 dB

-47 dB

2/N

4/N

4/N

4/N

6/N

Type de fenêtre

Rectangulaire

Triangulaire

Hanning

Hamming

Blackman

 Diminution de la largeur du lobe principal  augmentation de l’amplitude des lobes

secondaires d’où un compromis à trouver.

TTSI

-45-

Transformée de Fourier Rapide FFT (1/2)

o D’après la définition ci-dessus, il faut, pour calculer 1 valeur en fréquence de la TFD d’un

signal de N points  N-1 sommes complexes et N produits complexes

o Pour calculer une TFD à N points, il faudra donc  N(N-1) sommes complexes N²

produits complexes

o Sur un signal son wav de 6 secondes qui a 6*44100 =264600 points, on arrive à 1011

opérations complexes !!!!!

 La FFT va permettre de diminuer cela

TTSI

-46-

Transformée de Fourier Rapide FFT (2/2)

Objectif : Trouver un algorithme de calcul de la TFD de {x(n)}

La TFD de {x(n)} s’écrit :

Propriétés de WN :

TTSI

-47-

Conclusion

o TFTD

• Idem TF mais avec une somme

• signal non périodique  support en fréquence continu

• signal périodique  support périodique

• la TFTD d’un signal est périodique de période Fe

• mais impossible à exploiter par un calculateur …

o TFD

• Limitation de la durée du signal par fenêtrage

• Discrétisation de la fréquence  d’où une périodisation dans le temps

• Le fenêtrage implique des déformations du spectre fréquentiel

• Gourmand en calcul  FFT !!!

TTSI

-48-