Main Content

本页翻译不是最新的。点击此处可查看最新英文版本。

quantize

使用 quantizer 对象量化数值数据

说明

示例

y = quantize(q,x) 使用 quantizer 对象 q 来量化 x

  • x 是数值数组时,x 的每个元素均经过量化。输出 y 以内置双精度值形式返回。

  • x 是元胞数组时,该元胞数组的每个数值元素都经过量化。输出 y 的字段以内置双精度形式返回。

  • x 是结构体时,x 的每个数值字段均经过量化。输出 y 的字段以内置双精度形式返回。

quantize 不会更改 x 的非数值元素或字段,也不会对非数值发出警告。

在对 quantize 的调用期间中,quantizer 对象状态 maxminnoverflowsnunderflowsnoperations 会更新,并且在调用 reset 前会保留滚动总数。

示例

[y1,y2,…] = quantize(q,x1,x2,…) 等效于 y1 = quantize(q,x1), y2 = quantize(q,x2), …,以此类推。

示例

全部折叠

使用 quantize 将数据量化为自定义精度浮点类型。

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

   -14    14

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

使用 quantize 将数据量化为定点类型,字长为 6 位,小数长度为 2 位,向下舍入,溢出时绕回。

x = linspace(-15,15,1000);
q = quantizer('fixed','floor','wrap',[6 2])
q =


        DataMode = fixed
       RoundMode = floor
    OverflowMode = wrap
          Format = [6  2]
range(q)
ans = 1×2

   -8.0000    7.7500

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

使用 quantize 将数据量化为定点类型,字长为 3 位,小数长度为 2 位,收敛舍入,溢出时绕回。

q = quantizer('fixed','convergent','wrap',[3 2]);
x = (-2:eps(q)/4:2)';
y = quantize(q,x);
Warning: 33 overflow(s) occurred in the fi quantize operation.
plot(x,[x,y],'.-'); title(tostring(q)); axis square 

输入参数

全部折叠

用于量化的数据类型属性,指定为 quantizer 对象。

示例: q = quantizer('fixed','ceil','saturate',[5 4]);

要量化的数据,指定为标量、向量、矩阵、多维数组、元胞数组或结构体。

  • x 是数值数组时,x 的每个元素均经过量化。

  • x 是元胞数组时,该元胞数组的每个数值元素都经过量化。

  • x 是结构体时,x 的每个数值字段均经过量化。

quantize 不会更改 x 的非数值元素或字段,也不会对非数值发出警告。

数据类型: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | logical | struct | cell
复数支持:

要量化的数据(作为单独的元素),指定为标量、向量、矩阵、多维数组、元胞数组或结构体。

数据类型: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | logical | struct | cell
复数支持:

输出参数

全部折叠

量化数据,以标量、向量、矩阵、多维数组、元胞数组或结构体形式返回。

  • x 是数值数组时,输出 y 以内置双精度形式返回。

  • x 是元胞数组时,输出 y 的字段以内置双精度形式返回。

  • x 是结构体时,输出 y 的字段以内置双精度形式返回。

量化的数据(作为单独元素),以标量、向量、矩阵、多维数组、元胞数组或结构体形式返回。

版本历史记录

在 R2012b 中推出

全部展开

另请参阅

| |