Compresser avec un banc de filtres

Slides:



Advertisements
Présentations similaires
PRINCIPE SIMPLIFIE DE LA COMPRESSION MP3
Advertisements

S.S.I., ESSI1, lundi 9 mai 2005 Page 1 Comment compresser avec le spectre Séance 10, 1 heure Version : lundi 9 mai 2005 Auteur : Jean-Paul Stromboni Contenu.
Sauver un signal audio numérique dans un fichier wave
S.S.I.I., , cours n°8 : Compresser avec un banc de filtres Page 1 Compresser avec un banc de filtres Le contenu de ce cours : T.D. n° 8 : simulation.
Un moyen de compresser le signal audio présenté à travers un exemple
S.S.I.I., , cours n°9 : Compresser avec un banc de filtres Page 1 Compresser avec un banc de filtres Contenu de cette séance : T.D. n° 9 : application.
SSII, séance n°13, bilan du cours 15 décembre 2015 Dernière séance 2015 Résumé des chapitres et notions abordées en 2015.
CONVERTISSEURS AN et NA. CONVERSION ANALOGIQUE/NUMERIQUE.
Page de garde Validation d ’APEF.
NUMERISATION DE L’INFORMATION Compétences exigibles: reconnaitre des signaux de nature analogique et numérique associer un tableau de nombres à une image.
 Conversion  Analogique  Numérique  Un signal analogique est un ensemble continu d’informations. Ex : une grandeur physique comme la tension électrique.
25 ans d’Astronomie. TP : Effet Zeeman et son application en astronomie 1 er Colloque International Des Etudiants Amateurs d'astronomie du.
DUT INFORMATIQUE ET GÉNIE INFORMATIQUE UE2 CONNAISSANCES ET COMPÉTENCES COMPLÉMENTAIRES EGO 4 ORGANISATION et GESTION LA CAPITALISATION ET L’ACTUALISATION.
Sommaire : I.Introduction II.Fibre optique (pr é sentation g é n é ral de la fibre) III.Les techniques de transmissions -Multiplexage temporelle (TDM)
Codage et Protection contre les Erreurs M1/M2 ISV M2 IPS 2006/2007 Neilze Dorta UFR Mathématiques et Informatiques - Crip5.
A. Objectifs de la séquence: à l'issue de la séquence, il faut être capable de: Identifier l’ordre et la nature d’un filtre Tracer les diagrammes asymptotiques.
Plan 1. La chaîne de transmission numérique
Information, Calcul, Communication
Valeurs de toutes les différences observables sous H0
Nouvelle norme sans fil
1- Introduction :   En télécommunication , le signal transportant une information doit passer par un moyen de transmission entre un émetteur et un récepteur.
Comprendre la définition de bit par seconde à partir
Préparer par : Intissare et kaoutare
Information, Calcul, Communication
8. Mettre les paramètres du test final
Information, Calcul, Communication
Représentation de l'information en binaire:
LA PROGRAMMATION FINANCIERE SOUS FIT
Analyse temporelle des systèmes asservis
Chapitre 13 : Echantillonnage
ECHANTILLONNAGE.
Chaîne information Chaîne information acquérir acquérir traiter
Mesure de température par radiométrie photothermique
Utiliser des caractéristiques de position et de dispersion
Galaxie 2001 Les étoiles et … l’aventure.
Séries de Fourier Tout signal périodique (T) de puissance finie peut être décomposé en une somme de sinus et de cosinus. An=0 1(4/) 1+ 3 (4/3)
LE FILTRAGE ANALOGIQUE. Définition : La fonction filtrage sert à assurer la suppression des signaux de fréquence non désirée. Il existe deux types de.
Introduction Générale
Méthodologie scientifique
Divers procédés de modulation sont utilisés dans le domaine hertzien et dans le domaine câblé pour transporter les informations numériques Ces techniques.
Techniques du Data Mining
Filtre en traitement du signal entrée filtre sortie e s h
Chapitre 3 : Caractéristiques de tendance centrale
Analogique-numérique
B.Shishedjiev - Informatique
4°) Intervalle de fluctuation :
Cours de physique générale II Ph 12
Cours du Professeur TANGOUR
Mesures simples & Objet en chute libre
Chapitre 4: Caractéristiques de dispersion
ANALYSE HARMONIQUE 1) Rappels et définitions 2) Lieux de Bode
Le signal audio numérique
Introduction du cours à partir d’extraits
Les nombres complexes Saison 1 - Épisode 2. Les nombres complexes Saison 1 - Épisode 2.
Présentation 9 : Calcul de précision des estimateurs complexes
Les signaux périodiques
Caractéristiques des ondes
Sous-échantillonner le signal audio pour compresser
Information, Calcul, Communication
Reconnaissance de formes: lettres/chiffres
Construire et utiliser un banc de filtres
Créer un filtre sur mesure (pour compresser)
Projection, cosinus et trigonométrie.
7- Nouveaux services pédagogiques pour les élèves
Cliquer ici pour commencer
Quoi regarder dans un graphique des moyennes ?
03/05/2019 L’organisation et la gestion des fichiers sur le site collaboratif Martine Cochet 2SitePleiadeGestionFichiers.
Sous-échantillonner le signal audio pour compresser
Exploiter la fonction fft(.) de Scilab
Dérivation – Fonctions cosinus et sinus
Transcription de la présentation:

Compresser avec un banc de filtres Jean-Paul Stromboni, Polytech'Nice Sophia, S.I. 3ème année cours n°8, novembre 2015, durée : 50mn, vidéoprojecteur Contenu de cette séance : On réunit les acquis des séances précédentes : quantification, sous-échantillonnage, filtrage, bancs de filtres, sur échantillonnage, énergie du signal, pour compresser et décompresser un signal audio : Quantification sur B bits, rappel du cours n°3, Erreur de quantification et rapport signal sur bruit Compression en réduisant la longueur binaire des échantillons Calcul du nombre de bits utiles dans un signal pour compresser sans déformer Réduction du nombre de bits jusqu’à augmenter le pas de quantification et le rapport signal sur bruit Structure de compression/décompression (CODEC) utilisant un banc de filtres T.D. n° 8 : application avec Scilab Premier temps : compresser le signal audio y tiré du fichier ‘piano.wav’, avec la quantification et le codage binaire. Réduire aux bits utiles dans un premier temps, quel est le taux de compression obtenu ? Augmenter le taux de compression C, et juger de la dégradation du signal décompressé en fonction de C Second temps : reprendre avec un banc de M= 4 filtres de longueur R=256 coefficients temps disponible, Selon le temps disponible : appliquer à ‘Bbc.wav’, avec un banc de 8 filtres, à d’autres sons wave, ...

Quantification (rappel du cours n°3) y tiré de piano.wav est quantifié sur B=16 bits On veut quantifier y sur 16 niveaux Pas de quantification Q= 2/16=0.125 Il suffira de B=4 bits pour coder en binaire le niveau de quantification Caractéristique de quantification Avec Scilab, c’est donc yQ= floor(y/Q)*Q avec: Quantifier un signal y crée un signal différent yQ, provoque une erreur de quantification e= y-yQ Change le rapport signal sur bruit (SNR)

Quantification du signal y précédent sur B=4 bits y est quantifié sur 16 niveaux dans le signal yQ Voici l’erreur de quantification e=y-yQ Afin d’évaluer l’importance de relative de l’erreur de quantification, Scilab donne Moyenne(e) = 0.0630 (mean(e) avec Scilab) Écart type (e) = 0.0389 (stdev(e) Scilab) Moyenne(y)= -0.0011 mean(y) Écart type(y)= 0.15 stdev(y) D’où le rapport signal sur bruit de quantification

Rapport signal sur bruit Noter que moy(x2) proportionnelle à l’énergie du signal x Si moy(e) et moy(x) sont nuls, le rapport signal sur bruit varie comme le rapport des énergies de x et de e.

Pour compresser sans modifier le pas de quantifica-tion Q, on supprime les bits inutiles, s’il en existe plus l’amplitude du signal est faible, et plus il risque d’y avoir des bits inutilisés. si le signal couvre tout l’intervalle allant de -1 à 1, avec 2B valeurs différentes espacées de Q=2/2B, les B bits sont utilisés. Si l’amplitude du signal reste dans l’intervalle allant de -0.5 à 0.5, il suffit de 2B-1 valeurs espacées de Q, donc de B-1 bits pour coder x, il y a 1 bit inutile … calcul de m par Scilab : soit xmax=max(abs(x)), maximum en valeur absolue des xn, n=0 .. N-1 s’il existe m tel que 2 -m-1 < xmax < 2 -m, alors m bits sont inutiles D’où – (m+1)*ln(2)< ln(xmax)< -m*ln(2) soit : m < - ln(xmax) / ln(2) < m+1, m= partieEntière(-log2(xmax)) u = B- m est le nombre de bits utiles taux de compression résultant : C= B/u Page 5

Illustration : le signal audio tiré de ‘piano Illustration : le signal audio tiré de ‘piano.wav’ codé sur B= 16 bits et filtré par un banc de 4 filtres Quels sont les bits inutiles m et les bits utiles u pour les signaux suivants s1, s2, s3 et s4 issus des filtres du banc ? Déduire le taux de compression résultant si on conserve les bits utiles seulement. -0.8<s1<0.6 max(abs(s1))= m1= bits inutiles u 1= bits utiles C1= -0.25<s2<0.2 max(abs(s2))= m2 = ? u2= ? C2= -0.10<s2<0.10 max(abs(s3))= m3= ? u3= ? C3 = -0.03<s2<0.04 max(abs(s4))= m4= ? u4= ? C4= ? s= s1+s2+s3+s4 C= Taux de compression prévisible pour srec= s1+ s2+ s3+ s4 = s, c’est : C= 4*B/(u1+u2+u3+u4)=

Pour réduire le nombre de bits au-delà de u, il faut augmenter le pas et donc l’erreur de quantification Le signal x étant codé sur B bits dont m sont inutilisés, il est en définitive codé sur u=B-m bits, et prend 2B-m valeurs différentes espacées de Q=2/2B sur l’intervalle allant de -2-m à 2-m Si on réduit encore le nombre de bits utilisés à b < B-m, on dispose de 2b valeurs différentes pour coder l’intervalle allant de -2-m à 2-m. Il faut donc augmenter le pas de quantification qui devient Qprime : 2b*Qprime = 2B-m*Q soit Qprime=2*2-m/2b=2/2b+m Si b < B-m, on a b+m < B et Qprime > Q L’erreur de quantification augmente, et le signal x est modifié irrémédiablement Le taux de compression augmente : C=B/b Exemple : le signal y précédent est codé sur b=3 bits (au lieu de b=4 bits), SNR chute : SNRdB= 5.73 dB au lieu de 11.88 dB

Signal à coder … sur 3 bits Deux caractéristiques de quantification différentes pour coder sur b=3 bits : avantage de la seconde? Signal à coder … sur 3 bits Caractéristique1 xq=floor(x/q)*q moy(e)=0.1259 Caractéristique2 xq= floor(x/q+1/2)*q moy(e)=0.0001

Exemple de mise en œuvre avec Scilab

Structure de principe d’un CODEC* utilisant un banc de M= 4 filtres Étage sous- échantillonneur Étage de compression Étage sur- échantillonneur Étage interpolateur x1rec h1 x1 xd1 Bb1 Bb2 … Bb4 xse1 h2 x2 xd2 xse2 x2rec x xrec x3 xd3 xse3 h3 x3rec xM h4 xd4 xse4 x4rec Noter que : hi, i= 1 ..4 est la réponse impulsionnelle du filtre dont la réponse fréquentielle est Bi, Bi= fft(hi), i=1..4 x, signal de taille N échantillons codés chacun sur B bits x1, x2, x3, x4, quatre signaux de N échantillons codés sur B bits La structure inclut cinq étages : Banc de M=4 filtres, décompose x en quatre signaux : x  x1, x2, x3, x4, c’est donc N*B bits  4*N*B bits, taux de compression, C= 1/4 = 0.25 Sous-échantillonnage de rapport 4 x1, x2, x3, x4  xd1, xd2, xd3, xd4 4*N*B  4* (N/4)*B bits, taux de compression C= N*B / N*B = 1 Etage de compression: pour avoir C > 1, il faut réduire B ! Si xd1 est codé sur b1 bits, b1 <= B, xd2 sur b2 bits, b2 <= B, xd3 sur b3 bits, b3 <= B, et xd4 sur b4 bits, b3 <= B Le taux de compression devient : C= 4*B / (b1+ b2+ b3+ b4) >=1 Sur-échantillonnage de rapport 4 crée xse1, xse2, xse3, xse4 en intercalant des échantillons nuls Étage de filtres interpolateurs, de coefficients 4*h1, 4*h2, 4*h3, 4*h4 xrec=x1rec+x2rec+x3rec+x4rec est le signal décompressé *CODEC : coder decoder (ou compression décompression)

Découper X en quatre bandes égales, B1, B2, B3 et B4 Découper le spectre X ci-dessous (à compléter) en quatre bandes de fréquence de largeurs égales fe/4 compléter f fe R R/2 R/4 R/8 Découper X en quatre bandes égales, B1, B2, B3 et B4 B1 B1 f f B2 f B3 f B4

Vérifier qu’on peut compresser x3 comme les autres signaux issus du banc dans un facteur 4 fe R R/2 R/4 R/8 R/4 f fe R R/2 R/8 R/4 f fe R R/2 R/8 R/4 f fe R R/2 R/8 R/4 f fe R R/2 R/8 En perdant 10% de l’énergie du signal x, on obtient C=4 Page 12