exponenta event banner

метод квантования

Обратиться quantizer объект для данных

Синтаксис

y = quantize(q, x)
[y1,y2,...] = quantize(q,x1,x2,...)

Описание

y = quantize(q, x) использует quantizer объект q квантовать x. Когда x является числовым массивом, каждый элемент x квантуется. Когда x является массивом ячеек, каждый числовой элемент массива ячеек квантуется. Когда x - структура, каждое числовое поле x квантуется. Квантование не изменяет нечисловые элементы или поля x, также не выдает предупреждений для нечисловых значений. Продукция y является встроенным двойником. Когда вход x - структура или массив ячеек, поля y являются встроенными двойниками.

[y1,y2,...] = quantize(q,x1,x2,...) эквивалентно y1 = quantize(q,x1), y2 = quantize(q,x2),...

quantizer состояния объекта

  • max - Максимальное значение перед квантованием

  • min - Минимальное значение перед квантованием

  • noverflows - Количество переливов

  • nunderflows - Количество недоливов

  • noperations - Количество операций квантования

обновляются во время вызова quantizeи текущие итоги сохраняются до вызова resetlog изготавливается.

Примеры

свернуть все

В следующем примере показано использование quantize для квантования данных.

u=linspace(-15, 15, 1000);
q=quantizer([6 3], 'float');
range(q)
ans = 1×2

   -14    14

y=quantize(q, u);
Warning: 68 overflow(s) occurred in the fi quantize operation.
plot(u, y); title(tostring(q))

Figure contains an axes. The axes with title quantizer('float', 'floor', [6 3]) contains an object of type line.

В следующем примере показано использование quantize для квантования данных.

u=linspace(-15, 15, 1000);
q=quantizer([6 2], 'wrap');
range(q)
ans = 1×2

   -8.0000    7.7500

y=quantize(q, u);
Warning: 468 overflow(s) occurred in the fi quantize operation.
plot(u, y); title(tostring(q))

Figure contains an axes. The axes with title quantizer('fixed', 'floor', 'wrap', [6 2]) contains an object of type line.

Представлен в R2012b