6.2. КВАНТОВАНИЕ ВЕКТОРНЫХ ВЕЛИЧИН
Обычно квантование совокупности отсчетов выполняется последовательно. Каждый отсчет рассматривается как скалярная величина и квантуется независимо от остальных отсчетов с помощью методов, описанных в предыдущем разделе. Однако часто удается уменьшить ошибку квантования, если все отсчеты квантовать совместно.
Рассмотрим сигнал
, представляющий собой вектор размера
. Будем полагать, что этот вектор является реализацией случайного вектора с
-мерной плотностью вероятности
. (6.2.1)
При квантовании вектора
-мерное векторное пространство разделяют на
ячеек квантования
каждой из которых соответствует один из
квантованных векторов. Векторный сигнал
заменяется на квантованный вектор
если
попадает в ячейку
. На рис. 6.2.1 приведены примеры векторного квантования в одно-, двух- и трехмерном пространствах. В подобной общей постановке задачи о векторном квантовании векторный сигнал
преобразуется в вектор
но компоненты вектора
при этом не обязательно будут квантоваться по отдельности по набору дискретных пороговых уровней.

Рис. 6.2.1. Ячейки квантования в векторном пространстве: а – одномерное пространство; б – двумерное пространство; в – трехмерное пространство.
Среднеквадратическую ошибку векторного квантования можно представить в виде суммы
(6.2.2)
Оптимальное положение квантованных векторов
при фиксированных границах ячеек квантования можно найти, приравнивая нулю частные производные ошибки квантования по векторам
. В результате получается система интегральных уравнений
(6.2.3)
После преобразований находим
(6.2.4)
Равенство (6.2.4) определяет условное математическое ожидание вектора
, когда он попадает в ячейку :
. (6.2.5)
В этом случае минимальная средне-квадратическая ошибка квантования равна
, (6.2.6)
где
- корреляционная матрица вектора
. Заметим, что при
формула (6.2.4) сводится к (6.1.11), а выражение для ошибки квантования (6.2.6) переходит в формулу (6.1.12).
Оптимальные положения квантованных векторов
при фиксированных ячейках квантования
невозможно определить, не зная совместной плотности вероятности
. Однако часто такая информация отсутствует. Еще одна существенная трудность связана с фактическим вычислением интегралов в формуле (6.2.4). Поэтому часто приходится упрощать процедуру векторного квантования. Так, можно квантовать все компоненты вектора
по отдельности, но задавать квантованные векторы
с помощью ячеек квантования
. Тогда в трехмерном пространстве ячейки
превращаются в прямоугольные параллелепипеды. Если при этом компоненты вектора
некоррелированы, то векторное квантование сводится к последовательному квантованию скалярных величин. Однако если отсчеты коррелированы, то задача определения оптимального вектора
как правило, не поддается решению без введения дополнительных упрощающих предположений. Кэри [4] получил решения применительно к совместным гауссовым плотностям, когда ячейки квантования
, достаточно малы. Хунс [5] исследовал рекуррентный метод решения такой задачи, когда каждая компонента вектора определяется с помощью последовательных приближений на основе остальных квантованных компонент вектора. Этот метод позволяет найти решение задачи для множества различных плотностей вероятности: в части 6 он рассмотрен как средство уменьшения ошибок квантования в системах, использующих ИКМ и кодирование с преобразованием.
Попытаемся теперь найти такой набор ячеек квантования
при котором минимизируется среднеквадрэтическая ошибка квантования. Брюс [6] разработал метод решения этой задачи, основанный на динамическом программировании. Однако в общем случае оптимальные формы ячеек квантования сложны и определить их весьма трудно. Поэтому в большинстве методов векторного квантования используется субоптимальный подход, когда для каждой компоненты вектора задается фиксированное число уровней квантовании
, где
, и все компоненты квантуются независимо. Задача оптимизации сводится в этом случае к выбору величин
, произведение которых
(6.2.7)
есть фиксированное число уровней квантования для данного вектора. Ошибка квантования
-го отсчета равна
.
. (6.2.8)
В системах с цифровым кодированием число уровней квантования обычно выбирают равным двоичному числу
, (6.2.9)
где
– целое число кодовых разрядов (бит) для
-й компоненты вектора. Общее количество кодовых разрядов должно быть постоянно и равно
. (6.2.10)
Такой способ квантования называется блочным.
Несколько специалистов [7-9] разработали алгоритмы распределения числа разрядов
при фиксированном
, позволяющие минимизировать среднеквадратическую ошибку квантования. При использовании алгоритма, предложенного Реди и Уинцем [9] и применяемого для квантования независимых гауссовых величин по методу Макса, следует выполнить следующие операции:
1. Вычислить распределение числа разрядов по формуле
, (6.2.11)
где
- дисперсия
-го отсчета.
2. Округлить каждое из чисел
до ближайшего целого.
3. Изменять полученное распределение, пока не будет выполнено условие (6.2.10)
Вывод соотношения (6.2.11) основан на экспоненциальной аппроксимации зависимости (6.1.12), связывающей ошибку квантования
-го отсчета и заданное ему число разрядов
. Если
невелико, то эта аппроксимация оказывается довольно грубой. Более надежные результаты можно получить, пользуясь разработанным Прэттом [10] методом минимальной ошибки. Здесь разряды последовательно отводятся отсчетам, которые имеют наибольшую дифференциальную ошибку (6.2.8). При квантовании величин с нулевым средним алгоритм состоит из следующих шагов:
Шаг 1. Определение начальных условий:
- общее число разрядов в кодовой комбинации блока,
- длина блока,
- дисперсия компоненты,
- плотность вероятности компоненты,
- индекс разряда (сначала равен нулю).
Шаг 2. Вычислить и запомнить коэффициенты дифференциальной ошибки
,
где
, а сумма

определяет коэффициент ошибки для случайных величин с единичной дисперсией, причем знаком тильды (~) отмечены уровни квантования и пороговые уровни, относящиеся к таким величинам.
Шаг 3. Отвести один разряд той компоненте, для которой произведение
имеет наибольшую величину; увеличить на единицу
и
.
Шаг 4. Если
, закончить процедуру; в противном случае повторить шаг 3.
Коэффициенты дифференциальной ошибки
, необходимые для данного алгоритма, можно вычислить заранее и хранить в виде таблицы из
чисел. В этом случае алгоритм сводится к
последовательным операциям распределения разрядов. Достоинства алгоритма состоят в том, что здесь не требуется громоздких вычислений, а также отсутствуют ошибки аппроксимации и округления, характерные для алгоритма с вычислением логарифмов дисперсий. Кроме того, метод минимальной ошибки опирается на модель плотности вероятности и поэтому его можно эффективно применять для распределения разрядов при неодинаковых плотностях вероятностей отсчетов.