uencode
Quantize and encode floating-point inputs to integer outputs
Description
quantizes the entries in a multidimensional array of floating-point numbers
y
= uencode(u
,n
)u
and encodes them as integers using
2n-level quantization. The output y and the input
u
are arrays of the same size. The elements of the output y are
unsigned integers with magnitudes in the range [0,
2n-1].
maps entries in a multidimensional array of floating-point numbers y
= uencode(u
,n
,v
,'SignFlag'
)u
whose entries have values in the range [-v,v
] to an integer output
y
. Input entries outside this range are saturated.
Examples
Input Arguments
Output Arguments
Algorithms
The uencode
function maps the floating-point input value to an
integer value determined by the requirement for 2n levels of
quantization. This encoding adheres to the definition for uniform encoding specified in ITU-T
Recommendation G.701. The input range [-v,v]
is divided into
2n evenly spaced intervals. Input entries in the range
[-v,v]
are first quantized according to this subdivision of the input
range, and then mapped to one of 2n integers. The range of the
output depends on whether or not you specify that you want signed integers.
The output data types are optimized for the number of bits as shown in the table below.
References
[1] International Telecommunication Union. General Aspects of Digital Transmission Systems: Vocabulary of Digital Transmission and Multiplexing, and Pulse Code Modulation (PCM) Terms. ITU-T Recommendation G.701. March, 1993.