Signal Son et Image pour lInformaticien (S.S.I.I.) Page 1 Extraits choisis du cours S.S.I.I. On...

16
Page 1 Signal Son et Image pour l’Informaticien (S.S.I.I.) Extraits choisis du cours S.S.I.I. • On introduit ici des notions de base du traitement numérique du signal par ordinateur multimédia : – signal numérique, échantillonnage, quantification, bit rate – composition fréquentielle (ou spectre), spectrogramme – transformée de Fourier discrète, algorithme de FFT – sous-échantillonnage, et sur échantillonnage – filtrage, énergie d’un signal, banc de filtres, – compression, décompression, codec • On illustre avec le signal audio, puis on étend à l’image numérique • On utilise Scilab (à télécharger sur http://www.scilab.org), logiciel de calcul libre et multiplateforme doté d’un langage de scripts Jean-Paul Stromboni, 16 septembre 2013, amphi nord, 50mn, utilise des sons Jean-Paul Stromboni, 16 septembre 2013, amphi nord, 50mn, utilise des sons Polytech'Nice-Sophia, Département SI, cours SI3, Polytech'Nice-Sophia, Département SI, cours SI3,

Transcript of Signal Son et Image pour lInformaticien (S.S.I.I.) Page 1 Extraits choisis du cours S.S.I.I. On...

Page 1: Signal Son et Image pour lInformaticien (S.S.I.I.) Page 1 Extraits choisis du cours S.S.I.I. On introduit ici des notions de base du traitement numérique.

Page 1

Signal Son et Image pour l’Informaticien (S.S.I.I.)

Extraits choisis du cours S.S.I.I.

• On introduit ici des notions de base du traitement numérique du signal par ordinateur multimédia :

– signal numérique, échantillonnage, quantification, bit rate– composition fréquentielle (ou spectre), spectrogramme– transformée de Fourier discrète, algorithme de FFT – sous-échantillonnage, et sur échantillonnage– filtrage, énergie d’un signal, banc de filtres, – compression, décompression, codec

• On illustre avec le signal audio, puis on étend à l’image numérique• On utilise Scilab (à télécharger sur http://www.scilab.org), logiciel de

calcul libre et multiplateforme doté d’un langage de scripts• On utilise Audacity, éditeur libre de signaux audio à télécharger aussi.• Tous les documents du cours sont en http://cours.polytech.unice.fr/ssii

Jean-Paul Stromboni, 16 septembre 2013, amphi nord, 50mn, utilise des sonsJean-Paul Stromboni, 16 septembre 2013, amphi nord, 50mn, utilise des sonsPolytech'Nice-Sophia, Département SI, cours SI3, Polytech'Nice-Sophia, Département SI, cours SI3,

Page 2: Signal Son et Image pour lInformaticien (S.S.I.I.) Page 1 Extraits choisis du cours S.S.I.I. On introduit ici des notions de base du traitement numérique.

Séance 1 : Présentation du cours SSIIPage 2

Évaluation et notation

Deux devoirs surveillés (2/3 de la note) : – avec des questions sur les cours et des questions sur les TD,

– documents autorisés : polys annotés et comptes-rendus de TD.

Une note de Travaux Dirigés (1/3 de la note) : Avec les comptes-rendus de travaux dirigés :

• Ils sont rédigés par des binômes

• Ils contiennent :• les observations, les interprétations, les réponses aux questions posées• et non pas les listings, images, données numériques fournies par Scilab

• Ils expliquent ce qui a été fait sur un texte de TD même non terminé

• L’objectif des auteurs est d’expliquer le TD suffisamment clairement pour pouvoir le reprendre plus tard et le poursuivre à partir du compte rendu

Assiduité et ponctualité : bonus de note

Page 3: Signal Son et Image pour lInformaticien (S.S.I.I.) Page 1 Extraits choisis du cours S.S.I.I. On introduit ici des notions de base du traitement numérique.

Séance 1 : Présentation du cours SSIIPage 3

Extrait 1: son, microphone, signal audio, chronogramme

• l'oreille détecte certaines vibrations de l'air, les sons • seuil d’audition (0dB)< niveau (W/m2) < seuil de douleur (120dB)

(seuil d’audibilité à 1000Hz = 2-12W/m2 ou encore 20 10-6 Pa)

• 20 Hz < fréquence < 20 000 Hz

• le microphone transforme à tout instant t la pression de l'air en tension électrique proportionnelle s(t)

• s(t) est un signal audio

• le chronogramme est la représentation temporelle du signal, avec t en abscisse et s(t) en ordonnée.

t

s(t)

Page 4: Signal Son et Image pour lInformaticien (S.S.I.I.) Page 1 Extraits choisis du cours S.S.I.I. On introduit ici des notions de base du traitement numérique.

Séance 1 : Présentation du cours SSIIPage 4

Extrait 2: composition fréquentielle.

50

)2000cos(

18

)1200cos(

2

)400cos()(

tttts

Le signal s(t) est composé des trois fréquences 200, 600 et 1000Hz

Le chronogramme ci-dessus a été tracé à partir de l’expression mathématique suivante s(t):

200Hz 600Hz 1000Hz

Page 5: Signal Son et Image pour lInformaticien (S.S.I.I.) Page 1 Extraits choisis du cours S.S.I.I. On introduit ici des notions de base du traitement numérique.

Séance 1 : Présentation du cours SSIIPage 5

Extrait 3 : spectre d’amplitude et spectrogramme de s(t)

spectrogramme = spectre(temps)

spectre calculé par l’algorithme de F.F.T.(Fast Fourier Transform)

fréquence

fréq

uen

ce

amplitude en dB

fe/2

fe/2

Page 6: Signal Son et Image pour lInformaticien (S.S.I.I.) Page 1 Extraits choisis du cours S.S.I.I. On introduit ici des notions de base du traitement numérique.

Séance 1 : Présentation du cours SSIIPage 6

Extrait 4: signal audio sinusoïdal (ou note pure)

0 0.005 0.01 0.015 0.02 0.025-1

-0.8

-0.6

-0.4

-0.2

0

0.2

0.4

0.6

0.8

1chronogramme d'un signal en temps continu

axe des temps (secondes)

am

plitu

de d

u s

ignal

• Amplitude (comprise entre -1 et 1) : 0.8 • Durée : 0.03 seconde• Période : 0.02 seconde• Fréquence : 1/0.02 = 50Hz• Signal analogique et (en temps) continu• Expression : s(t)= 0.8*sin(2**t/0.02)

Page 7: Signal Son et Image pour lInformaticien (S.S.I.I.) Page 1 Extraits choisis du cours S.S.I.I. On introduit ici des notions de base du traitement numérique.

Séance 1 : Présentation du cours SSIIPage 7

Extrait 5: échantillonnage et quantification de s(t)

0 0.005 0.01 0.015 0.02 0.025-1

-0.8

-0.6

-0.4

-0.2

0

0.2

0.4

0.6

0.8

1signal numérisé, B=3bits

axe des temps (secondes)

sign

al0 0.005 0.01 0.015 0.02 0.025

-1

-0.8

-0.6

-0.4

-0.2

0

0.2

0.4

0.6

0.8

1chronogramme d’’un signal en temps discret

axe des temps (secondes)

ampl

itude

du

sign

al

000

• période d’échantillonnage : Te= 0.001s• fréquence d'échantillonnage fe =1000Hz• 20 Te par période• Signal en temps discret et analogique

001

010

• nombre de bits par échantillon : B = 3• 8 niveaux de quantification • pas de quantification : Q=0.25• erreur de quantification 0 < < 0.25• Signal numérique et en temps discret

Page 8: Signal Son et Image pour lInformaticien (S.S.I.I.) Page 1 Extraits choisis du cours S.S.I.I. On introduit ici des notions de base du traitement numérique.

Séance 1 : Présentation du cours SSIIPage 8

Compression par sous-échantillonnage

fe=1000 Hz fe=500 Hz C= 2

Page 9: Signal Son et Image pour lInformaticien (S.S.I.I.) Page 1 Extraits choisis du cours S.S.I.I. On introduit ici des notions de base du traitement numérique.

Séance 1 : Présentation du cours SSIIPage 9

Compression par quantification

Q=2/256 Q=2/8C=8/3

Page 10: Signal Son et Image pour lInformaticien (S.S.I.I.) Page 1 Extraits choisis du cours S.S.I.I. On introduit ici des notions de base du traitement numérique.

Séance 1 : Présentation du cours SSIIPage 10

Extrait 6 : Filtrage numérique du signal tiré de Bbc.wav

Le signal e tiré du fichier Bbc.wav est filtré, c’est-à-dire traité par un programme de calcul qui obtient y le signal filtré sauvé dans Bbcfiltré.wav.Le filtre multiplie le spectre du signal à filtrer par la réponse fréquentielle.Filtre passe-bas, rectangulaire, fréquence de coupure = 1000Hz, gain = 1

Bbc.wavBbcfiltré.wav

Hz10000

)(Hzfréquence

Hz5500

filtredugain1

Réponse fréquentielle du filtre

En abscisse, le tempsEn abscisse, le temps

En

ordonn

ée, la fréqu

ence e y

Page 11: Signal Son et Image pour lInformaticien (S.S.I.I.) Page 1 Extraits choisis du cours S.S.I.I. On introduit ici des notions de base du traitement numérique.

Séance 1 : Présentation du cours SSIIPage 11

Extrait 8: du son à l’image numérique

11

22/2

*)/(:

)*(

',/1

]1...0),([

[,0[),(

1

Q

BB

Q

e

ee

en

nnageéchantillo

s

Q

QQsfloorstionQuantifica

fDfloorN

nnageéchantillodfréquenceTf

NnnTsss

Dtts

x

y

0 L

H

y ordonnée

Y lignes !!

x abscisse X colonnes !

Im(x,y)

t

10

22/1

*)/(:

:

)*(),*(

,/

,/

]1...0,1...0),,Im([

[,0[,[,0[),,Im(

Q

BB

Q

yx

y

x

nm

nnageéchantillo

I

Q

QQIfloorItionQuantifica

YXdéfinition

fHfloorXfLfloorX

verticalerésolutionHYf

ehorizontalrésolutionLXf

XmYnY

nH

X

mLII

HyLxyx

D

s(t)

Page 12: Signal Son et Image pour lInformaticien (S.S.I.I.) Page 1 Extraits choisis du cours S.S.I.I. On introduit ici des notions de base du traitement numérique.

Séance 1 : Présentation du cours SSIIPage 12

Extrait 8 : filtre d’image numérique avec Scilab// Scilab SIVP image='joconde.jpg';

im = imread(image); imd=im2double(im);

img = rgb2gray(imd); imshow(img)

// avec Scilab et SIVP

h= fspecial(‘prewitt’)

imfx = imfilter(img, h');

aimfx=imcomplement(abs(imfx));

imwrite(aimfx,’aimfx.png’);

// avec Scilab et SIVP

imfy = imfilter(img, h);

aimfy=imcomplement(abs(imfy));

imwrite(aimfx,’aimfy.png’);

Page 13: Signal Son et Image pour lInformaticien (S.S.I.I.) Page 1 Extraits choisis du cours S.S.I.I. On introduit ici des notions de base du traitement numérique.

Séance 1 : Présentation du cours SSIIPage 13

Quelle est l’URL du cours SSII ? Lire l’amplitude du fondamental d’extrait 3 sur le spectre et sur le spectrogramme :

Mesurer la période, la fréquence et l’amplitude du signal de la page 4

Combien d’échantillons sur le signal à temps discret de l’extrait 5 ?

Quelles sont les amplitudes maximale et minimale des signaux audio numériques ?

Préciser les composantes de fréquence conservées par le filtre dans Extrait 6 ?

Préciser le fondamental et les harmoniques du signal triangulaire Extrait 2

Dans le signal numérique d’Extrait 5, combien de niveaux de quantification ?

Pour vous tester vous-mêmes après ce cours:

Page 14: Signal Son et Image pour lInformaticien (S.S.I.I.) Page 1 Extraits choisis du cours S.S.I.I. On introduit ici des notions de base du traitement numérique.

Séance 1 : Présentation du cours SSIIPage 14

Extrait 9 : bancs de filtres, compression avec pertes

h1

h2

hM

On code les signaux yi, i=1..M selon leur

importance ou énergie

M

M

M

M

M

M

Bbc.wav

Etage de compression

Banc de lissage

suréchantillonnageÉtage sous-

échantillonneur Banc de filtres

… …

M*hM

M*h2

M*h11y

2y

My

y

recy

Le signal y est tiré du fichier Bbc.wav pour être compressé.Le spectre de y est découpé en bandes de fréquence par les filtres h1, h2, …hM Les signaux filtrés sont sous-échantillonnés dans un rapport M. On néglige les signaux de "faible" énergie, il en résulte un taux de compression.Les signaux restants sont sur-échantillonnés, lissés, et le signal est décompressé.

Page 15: Signal Son et Image pour lInformaticien (S.S.I.I.) Page 1 Extraits choisis du cours S.S.I.I. On introduit ici des notions de base du traitement numérique.

Séance 1 : Présentation du cours SSIIPage 15

Extrait 10 : Filtre passe bande avec Matlab

% lecture du son à filtrer[e,fe,b]=wavread ('piano.wav');% définition du filtreR=256; % longueur du filtrefc=500; % bande passante f0=1500; % fréquence centraleN = fix(fc*R/fe); H=[ones(1,N-1),0.9,0.5,0.1,...zeros(1,R-2*N-3),0.1,0.5,...0.9,ones(1,N-2)];% réponse impulsionnelleh=fftshift(real(ifft(H)));filtre = 2*cos(2*pi*[0:R-1]*f0/fe).*h;% filtrage du signal audioy=filter( filtre,1,e);wavwrite(y,fe,b,'pianofiltre.wav');% calcul de l’énergie du signalE=(y’*y)/2;

Comparer les spectrogrammes de piano.wav (à gauche) et pianofiltre.wav (à droite)

Ce script Matlab lit le fichier piano.wav dans le vecteur e, filtre, et sauve le signal filtré y dans pianofiltre.wav

En abscisse, le temps

En ordonnée, la

fréquence

Page 16: Signal Son et Image pour lInformaticien (S.S.I.I.) Page 1 Extraits choisis du cours S.S.I.I. On introduit ici des notions de base du traitement numérique.

Séance 1 : Présentation du cours SSIIPage 16

Extrait 11 : CODEC law et bruit de quantification

Les signaux audio de faible amplitude peuvent être compressés par le CODEC law (fichiers .au) qui réduit le nombre de bits pour coder chaque échantillon. Pour ce faire, le signal audio doit passer dans une non linéarité sigmoïde .

Sinon, un bruit de quantification peut apparaître. Pour bien le montrer en TD, on réduit davantage l'amplitude du signal piano_c3 :

piano_c3

8 bit -1

8 bitbitB 16

1/8bitB 8

bitB 8

8

8