Математическое описание процедуры квантования. Процедуру квантования описывают с помощью вектора (размерностью L-1) разделения области определения сигнала P1,P2,…,PL-1 (vector partition) и вектора (размерностью L) значений кодированного сигнала C1,C2,…,CL (codebook). Если x – текущее значение сигнала, тогда на выход квантователя выдаются значения по правилу, приведенному в табл. 1:
Таблица 1
Соответствие входного сигнала x и выхода квантователя y
Моделировать квантование в соответствии с табл. 1 можно двумя способами:
M-функция MATLAB имеет вид:
[ind, xQ, D] = quantiz(x, partition, codebook),
где x – вектор отсчетов сигнала; partition – вектор границ интервалов P1,P2,…,PL-1; codebook – вектор C1,C2,…,CL значений кодовой книги; ind – вектор-столбец индексов (номеров) интервалов; xQ – вектор-строка квантованных значений сигнала; D – средний квадрат ошибки квантования:
Пример 1. Применение m-функции:
% квантование гармонического (50 Гц) сигнала единичной амплитуды
% частота дискретизации 1000 Гц
i=1:20;
x=cos(2*pi*50*i/1000);
Достарыңызбен бөлісу: |