对于matlab,大家应该比较熟悉。今天小哥就带大家来做均匀量化。
量化是将模拟信号转化为数字信号必不可少的一步。均匀量化相对比较简单,就是比如将信号在[-1,1]分成相同的很多段,要是某个值在其中某一段,就将其的值归为那一类。每一类都可以用一个唯一的二进制编码表示。
现在我们要做的就是对wav的音频信号进行量化。具体一点:在road.wav文件左声道取前200个点做4bit量化,并且用matlab作图比较量化前和量化后的图。那么第一步是什么呢?那就是获取样本点?不是的,我们第一步是获取我们需要量化的音频。可以用
step1:
我们可以用[y,fs,nbits]= wavread('F:\a.wav',1024);即可得到我们所需处理的样本点。
step2:对采集到的信号进行量化。
方法一:直接使用量化函数->quantizer(做一个量化器),quantize(对某信号进行用量化器量化)
syms sample_point;
syms quantizion_bits;
sample_point = 200;
quantizion_bits = 5;
[y,fs,nbits]= wavread('road.wav',sample_point);
sample = y(1:sample_point);
n = 1:sample_point;
q_riser = quantizer('fixed','round','saturate',[10,quantizion_bits]); %定义一个量化器
q_tread = quantizer(