Main Content

La traducción de esta página aún no se ha actualizado a la versión más reciente. Haga clic aquí para ver la última versión en inglés.

quantize

Cuantizar datos numéricos mediante el objeto quantizer

Descripción

ejemplo

y = quantize(q,x) utiliza el objeto quantizer q para cuantizar x.

  • Cuando x es un arreglo numérico, se cuantizan todos los elementos de x. La salida y se devuelve como un doble predefinido.

  • Cuando x es un arreglo de celdas, se cuantizan todos los elementos numéricos del arreglo. Los campos de salida y se devuelven como dobles predefinidos.

  • Cuando x es una estructura, se cuantizan todos los campos numéricos de x. Los campos de salida y se devuelven como dobles predefinidos.

quantize no modifica los elementos o campos no numéricos de x ni genera advertencias para valores no numéricos.

Los estados de los objetos quantizer max, min, noverflows, nunderflows y noperations se actualizan durante la llamada a quantize, y los totales en ejecución se mantienen hasta que se realiza una llamada a reset.

ejemplo

[y1,y2,…] = quantize(q,x1,x2,…) es equivalente a y1 = quantize(q,x1), y2 = quantize(q,x2), …, y así sucesivamente.

Ejemplos

contraer todo

Utilice quantize para cuantizar los datos a un tipo de punto flotante de precisión personalizada.

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))

Utilice quantize para cuantizar los datos a un tipo de punto fijo con longitud de palabra de 6 bits, longitud de fracción de 2 bits, redondeo hacia abajo y envoltura en desbordamiento.

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))

Utilice quantize para cuantizar los datos a un tipo de punto fijo con longitud de palabra de 3 bits, longitud de fracción de 2 bits, redondeo convergente y envoltura en desbordamiento.

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 

Argumentos de entrada

contraer todo

Propiedades del tipo de datos que se utilizarán para la cuantización, especificadas como un objeto quantizer.

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

Datos que se van a cuantizar, especificados como escalar, vector, matriz, arreglo multidimensional, arreglo de celdas o estructura.

  • Cuando x es un arreglo numérico, se cuantizan todos los elementos de x.

  • Cuando x es un arreglo de celdas, se cuantizan todos los elementos numéricos del arreglo.

  • Cuando x es una estructura, se cuantizan todos los campos numéricos de x.

quantize no modifica los elementos o campos no numéricos de x ni genera advertencias para valores no numéricos.

Tipos de datos: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | logical | struct | cell
Soporte de números complejos:

Datos que se van a cuantizar (como elementos separados), especificados como escalar, vector, matriz, arreglo multidimensional, arreglo de celdas o estructura.

Tipos de datos: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | logical | struct | cell
Soporte de números complejos:

Argumentos de salida

contraer todo

Datos cuantizados, especificados como escalar, vector, matriz, arreglo multidimensional, arreglo de celdas o estructura.

  • Cuando x es un arreglo numérico, la salida y se devuelve como un doble predefinido.

  • Cuando x es un arreglo de celdas, los campos de la salida y se devuelven como dobles predefinidos.

  • Cuando x es una estructura, los campos de la salida y se devuelven como dobles predefinidos.

Datos cuantizados (como elementos separados), especificados como escalar, vector, matriz, arreglo multidimensional, arreglo de celdas o estructura.

Historial de versiones

Introducido en R2012b

expandir todo

Consulte también

| |