Bonjour à tous,
étant débutant en MATLAB j'ai absolument besoin de votre aide concernant l'opération inverse de la quantification.
J'arrive à faire la quantification grâce à la fonction quantiz mais je n'arrive pas à faire l'inverse:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 
[sig,FS,Nbits] = wavread ('voix_femme.wav');
MaxSig = max(abs(max(sig)),abs(min(sig)));
 
%%%%%%%%%%%%%%%% Amplification ou atténuation du signal  %%%%%%%%%%%%
sig1 = sig/MaxSig;
sig2 = sig/MaxSig*0.2;
sig3 = sig/MaxSig*1.5;
 
%%%%%%%%%%%%  compression selon la loi Mu  %%%%%%%%%%%%
Mu = 255;
outMu1 = compand(sig1,Mu,1,'mu/compressor'); 
outMu2 = compand(sig2,Mu,1,'mu/compressor');
outMu3 = compand(sig3,Mu,1,'mu/compressor');
 
%%%%%%%%%%%   quantification des signaux   %%%%%%%%%%%%%%
delta=2/256;
partition=(-1+delta : delta :1-delta);
CodeBook=(-1+delta/2 : delta:1-delta/2);
[indices,signal_quant]=quantiz(y,transitions,niveaux);
 
[ind1, quantiz1] = quantiz(sig1, partition, CodeBook);
[ind2, quantiz2] = quantiz(sig2, partition, CodeBook);
[ind3, quantiz3] = quantiz(sig3, partition, CodeBook);
 
[indMu1, quantizMu1] = quantiz(outMu1, partition, CodeBook);
[indMu2, quantizMu2] = quantiz(outMu2, partition, CodeBook);
[indMu3, quantizMu3] = quantiz(outMu3, partition, CodeBook);
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
Merci de m'aider s'il-vous plait