BACKGROUND OF THE INVENTION
1. Priority Claim.
2. Technical Field.
[0002] This disclosure relates to sub-band processing, and more particularly to systems
that reduce computational complexity and memory requirements.
3. Related Art.
[0003] Wideband networks receive and transmit data through radio frequency signals through
inbound and outbound transmissions. The networks may transmit data, voice, and video
simultaneously through multiple channels that may be distinguished in frequency. Some
wideband networks are capable of high speed operations and may have a considerably
higher throughput than some narrowband networks. The increased bandwidth of these
networks may increase the processing loads and memory requirements of other applications.
[0004] Frequency domain based adaptive filtering, for example, may be computationally intensive
because it translates a time domain signal into multiple frequency components that
are separately processed. Translating a time domain signal into multiple frequency
components increases the computational complexity and memory usage of some systems
when a signal's bandwidth increases. As the number of frequency components increase
with bandwidth, the computational load and the required memory increase.
SUMMARY
[0005] A sub-band processing system that reduces computational complexity and memory requirements
includes a processor and a local or a distributed memory. Logic stored in the memory
partitions a frequency spectrum of bins into sub-bands. The logic enables a lossy
compression by designating a magnitude and a designated or derived phase of each bin
in the frequency spectrum as representative. The logic renders a lossless compression
by decompressing the lossy compressed data and providing lost data based on original
spectral relationships contained within the frequency spectrum.
[0006] Other systems, methods, features and advantages will be, or will become, apparent
to one with skill in the art upon examination of the following figures and detailed
description. It is intended that all such additional systems, methods, features and
advantages be included within this description, be within the scope of the invention,
and be protected by the following claims.
BRIEF DESCRIPTION OF THE DRAWINGS
[0007] The system may be better understood with reference to the following drawings and
description. The components in the figures are not necessarily to scale, emphasis
instead being placed upon illustrating the principles of the invention. Moreover,
in the figures, like referenced numerals designate corresponding parts throughout
the different views.
Figure 1 is a non-overlapping frequency compression of an uncompressed frame.
Figure 2 is a band-like overlapping frequency compression of an uncompressed frame.
Figure 3 is non-overlapping compression showing a phase selection.
Figure 4 is an uncompressed spectrum.
Figure 5 is an exemplary rotation of bin 5 to the phase of bin 4.
Figure 6 is an exemplary illustration of band 3.
Figure 7 is an exemplary illustration of a processed band 3
Figure 8 is an exemplary restoration of bins from the exemplary processed band 3.
Figure 9 is an exemplary sub-band processing system.
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
[0008] Due to improvements in transmission rates and device resolutions, networks are providing
multi-media, multi-point, and multiple transmission rates for a variety of services.
To reduce computational loads and memory requirements, a sub-band processing system
processes data such that, after it is compressed and decompressed it is restored to
its original format. The system may compress video, sound, text, code, and/or numeric
data such that little or no data is lost after a bin or file is decompressed. While
the data may contain more information than may be heard or seen (e.g., perceived by
a user), some systems preserve the original data (or a representative data set) while
compressing and decompressing operating data through a lossy compression. After further
(optional) processing (by an ancillary device or system) the sub-band processing system
reconstructs and restores the data. The restored data may maintain the relative magnitude
and phase of the original data. The restored data may match the original relationships
(e.g., relative magnitudes and phases) frequency-for-frequency.
[0009] The sub-band processing system analysis may occur on frequency domain characteristics.
To derive frequency domain properties, the signal may be broken into intervals though
a multiplier function (retained in a local or a distributed computer readable medium)
or multiplier device that multiplies the signal by a "window" function or a "frame"
of fixed duration. To minimize spectral distortion, smooth window functions (such
as Hann, Hamming, etc. retained in the local or the distributed computer readable
medium) or a window filter may be used for the short-time spectral analysis. A time-to-frequency
transform device, a Discrete Fourier Transform (DFT) device, or a Fast Fourier Transform
(FFT) device may transform (or decompose) the short-time based signals into a complex
spectrum. The spectrum may be separated into bins of magnitude and phase data or substantially
equivalent complex (e.g. real and imaginary) data. A sub-band (or band) may be represented
by a single bin of magnitude and phase spectra, or a collection of consecutive or
successive bins represented by a common or single magnitude and phase spectra. Table
1 shows representative characteristics of an exemplary FFT device.
Table 1 Parameters
| Sample rate (kHz) |
8 |
11.025 |
16 |
22.05 |
32 |
44.1 |
| FFT length (N) |
256 |
256 |
512 |
512 |
1024 |
1024 |
| Number of useful output bins (R) |
129 |
129 |
257 |
257 |
513 |
513 |
| Hz / bin |
31.25 |
43.07 |
31.25 |
43.07 |
31.25 |
43.07 |
At a sample rate of about 8 kHz, an FFT device may transform the time domain signal
into about 256 bins. Due to the complex symmetry, the FFT device may yield about 129
useful bins (e.g., 256/2 + 1). Each bin may represent a frequency resolution of about
31.25 Hz (e.g., 8 kHz/256). The frequency resolution of other sample rates (e.g.,
16 kHz and 32 kHz) may be maintained by changing the FFT length. For example, at 16
kHz, the FFT length may be about double the FFT length of the 8 kHz sample rate. At
32 kHz, the FFT length may be about double the FFT length of the 16 kHz sample rate.
[0010] In some systems, the magnitude and phase spectra may be obtained from one or more
signal processors that execute a Discrete Fourier Transform (DFT) stored in a local
or a distributed memory. The output of the DFT may be represented by
X(k). 
for
k = 0 ...
N-1, where
- k
- is the frequency index for each bin
- n
- is the time index for each sample
- N
- is the length of the DFT (or FFT)
[0011] The bins (R) of the FFT (or DFT) device may partitioned into a fewer (or smaller
R >=
M) number of sub-bands (
M). In some applications, the sub-band processing system may reduce M to a lowest possible
integer that does not affect the performance or quality of a later process. In these
applications, the system may generate a number of sub-bands that minimize perceptual
error. The applications may exploit the sensitivity of the human auditory system or
other systems that do not detect or process certain frequencies or are affected by
certain signal distortions.
[0012] A lossy compression may compress the data such that some data is lost when the data
is compressed into the sub-bands. Some sub-band processing systems compress 2
q bins (q is an integer) into individual sub-bands. Other systems apply a perceptual
scale (through a processor or controller, for example) where the bins are grouped
into sub-bands that match the frequency selectivity of the human auditory system.
The sub-bands may comprise non-overlapping or overlapping frequency regions that account
for a selected or critical band (e.g., a frequency bandwidth that may model an auditory
filter) or apply a perceptual scale like a single or multiple stage rectangular-like
bandwidth filter or filter bank, logarithmic spacing filter or filter bank, Bark filter
or filter bank, Mel or Mel-like filters or filter bank. Figures 1 and 2, respectively,
describe exemplary non-overlapping and band-like overlapping compressions. In each
figure the uncompressed bins are shown above the corresponding compressed sub-bands.
The compressions divide a variable sequence of uncompressed bins into a substantially
equal sequence of compressed sub-bands. A substantially equal gain or a variable gain
may be applied to render compressed sub-bands that are substantially flat across the
frequency spectrum. Perceptual distortions may be minimized by applying lower compression
ratios at lower frequencies while applying higher compression ratios at higher frequencies.
[0013] Table 2 describes an exemplary non-overlapping compression scheme in which each sub-band
represents 2
q bins.
| Approximate freq range (kHz) |
Input bin numbers |
Compression ratio |
Output sub-bands #s |
| 0-1 |
0..31 |
1:1 |
0..31 |
| 1-2 |
32..63 |
2:1 |
32..47 |
| 2-4 |
64..127 |
4:1 |
48..63 |
| 4-Nyquist |
128..M |
8:1 |
64..xx |
Other systems may apply a more perceptually based scheme that partitions the frequency
spectrum into non-overlapping regions. In this alternative, the compression may be
based on an auditory filter estimate. Each sub-band may be approximately equal to
a first predetermined frequency band such as ½ ERB (Equivalent Rectangular Bandwidth)
for frequencies below about 4 kHz, and a second predetermined frequency band such
as 1 ERB for frequencies above about 4 kHz. More aggressive compression schemes may
be applied when the level of distortion or artifacts do not affect (or have little
affect on) the performance of other systems.
[0014] Some systems, such as a system that may divide fifteen bins of the spectrum into
five sub-bands (e.g., as shown in Figure 3) may group sub-bands such that each sub-band
is about 0.4 ERB (at a low compression) to about 0.875 (at a high compression) ERB.
When there is less processor execution speed the sub-bands may be increased. If there
is a need to reduce a processors speed by a millions of instructions per second (MIPS),
for example, some systems increase the sub-bands to larger ERB values (e.g., each
sub-band may be about 1.25 ERB)
[0015] While many lossy compression schemes may be used, the sub-band processing system
may select or designate a representative phase for each sub-band. Some sub-band processing
system "preserve" or select the phase of a bin within the sub-band that has the lowest
frequency (as shown in Figure 3) within that sub-band. Other systems may select bins
near or at the center of the sub-band, and others may select a phase based on other
structural, functional, or qualitative measures. An alterative sub-band processing
system may derive phase through an average or weighted average (e.g., an averaging
filter, a programmable dynamic weighting filter, a perceptual weighting filter, etc.).
An average may comprise a logical operation stored in a local or remote central or
distributed memory such as an arithmetic mean of the phases within each sub-band.
The weights of a weighted average may be based on the phase correlations common to
one or all of the bins that comprise one or more sub-bands.
[0016] The selected magnitudes, an average magnitude (e.g., an average of bins that makeup
a band), peaks in the magnitude spectrum, or a function or algorithm that selects
or synthesizes a magnitude of each sub-band may be designated as representative. When
a maximum magnitude system is used and a maximum magnitude is detected, the bin containing
that magnitude is indexed, stored in memory, and the magnitude is rotated or shifted
(e.g., through a phase shifter) to attain the selected or designated phase. A resulting
sub-band value may be transformed to a maximum magnitude selected from its constituent
bins and the phase of the "preserved" or selected bin (through a rotation through
or shift by a phase differential, e.g., beta
sub-band1, beta
sub-band2, etc.). In the sub-band processing system, the magnitude, |
SBX(m)|, and phase, arg
(SBX(m)), for each sub-band may be:

where

for m = 0...
M-1 and
- m
- is the index for each sub-band
- jm
- is the starting (uncompressed frequency bin) index for sub-band m, and also the index
of the bin whose phase is preserved for sub-band m
- Dm
- is the number of uncompressed bins that are "compressed" into sub-band m
- hm
- is the uncompressed frequency index of the bin that has the maximum magnitude for
sub-band m
In some systems, common bins may be selected from the divided spectrum to preserve
the phase of the sub-bands relative to each processed frame. In these systems
jm and
Dm may be constant (e.g., temporally invariant) while
hm may change (e.g., time variant) from one aural or sound frame (or video, sound, text,
code, and/or numeric data) to the next. Such systems may preserve the phase of the
same bin within a sub-band on a frame-by-frame basis such as for example, always the
first bin of a sub-band in each frame or a common bin of a sub-band in each frame.
[0017] Figure 4 is an uncompressed spectrum of complex vectors representing bins 4, 5, 6
and 7 that comprise an exemplary sub-band 3. In sub-band 3, bin 5 has the largest
magnitude and is therefore designated as representative (e.g., through a peak magnitude
detector). Through a pre-selection or a derivation through a device such as a phase
detector, the phase of bin 4 is the designated phase. To preserve that phase, the
vector representing bin 5 is rotated counterclockwise or otherwise adjusted to substantially
match the phase of bin 4 while maintaining its original maximum magnitude (as shown
in Figure 5). The rotated or adjusted version of bin 5 represents sub-band 3, which
effectively attenuates the remaining spectrum within the sub-band (e.g., effectively
setting the remaining spectrum to substantially to zero) as shown in Figure 6. The
magnitudes and phases of the sparse spectrum (e.g., the adjusted sub-band spectrum)
may be further processed before the spectrum is reconstructed.
[0018] By maintaining magnitude and phase spectra through the sparse spectrum, the spectrum
may be further processed in the frequency domain (or other domains). Adaptive filtering
techniques or devices used by an acoustic echo canceller, noise cancellation, or a
beam-former, for example, may process a consistent phase that does not change abruptly
from frame to frame. Abrupt phase changes that may be a characteristic of other systems
may be identified as an impulse response that causes an acoustic echo canceller to
diverge. When divergence occurs, a sub-optimal, reduced, or no echo cancellation may
occur due to the mismatch between the filter coefficients and the echo path characteristics.
When a divergence is declared, an adaptive filter may require time to achieve a convergence.
[0019] When reconstructing the processed spectrum, the original spectral data (or a representative
data set or a data set of relative measures) is processed so that little or no data
is lost when the decompression is complete. By processing the original spectral data
(or the representative data or relative measure data set), the sub-band processing
system may achieve a lossless or nearly lossless compression. Some systems may preserve
almost the entire original spectrum to avoid generating perceivable artifacts when
the spectrum is reconstructed.
[0020] An overlap-add synthesis may partially reconstruct the spectrum from the processed
sparse spectrum. An overlap-add synthesis may avoid discontinuities in the reconstructed
spectrum. For each sub-band, the system rotates the processed sub-band to its original
relative phase (or a substantially original relative phase), which is relative to
the preserved bin (e.g., through a counter rotation through the phase differential,
e.g., beta
sub-band1, beta
sub-band2, etc.). For example, if a bin containing the largest magnitude was rotated beta degrees
in one direction, then the system rotates the processed sub-band by beta degrees in
the opposite direction to restore the peak magnitude bin. With the bin restored, the
remaining bins that made up the sub-band are reconstructed by maintaining relative
magnitudes and phases of the original spectrum (or representative data or relative
measure data set). The magnitude and phase of the remaining reconstructed bins maintain
the same relative magnitude and phase relationship with the restored peak magnitude
bin, as the original spectral bins had with the original peak magnitude bin. In some
alternative systems, frequency-criteria may affect phase reconstruction. In one exemplary
system, sub-bands that exceed a predetermined value (e.g., over about 4 kHz), may
not maintain relative phase relationships.
[0021] Because further processing (e.g., echo cancellation, noise reduction, beam former,
signal attenuators, amplifiers, signal modifier, etc.) may alter the magnitude and
phase of each sub-band, quantitatively each
SBX(m) has been transformed into
SBY(m). Equations 6-10 describe how the magnitude and phase for each sub-band may be expanded
to its constituent bins. Equation (7) establishes that the magnitude of the restored
peak magnitude bin is equal (or may be substantially equal) to the magnitude of the
processed sub-band. Equation (8) establishes that the phase of the restored peak magnitude
bin maintains substantially the same relative phase relationship measured during the
partitioning process. Equations (9) and (10), respectively, establish how the remaining
bins may be reconstructed. Once the complex spectrum is restored,

for m = 0...
M-1 and
- m
- is the index for each sub-band
- jm
- is the starting (uncompressed frequency bin) index for sub-band m, and also the index of the bin whose phase is preserved for sub-band m
- Dm
- is the number of uncompressed bins that are "compressed" into sub-band m
- hm
- is the uncompressed frequency index of the bin that has the maximum magnitude for
sub-band m
- p
- are the indexes in the range [jm , jm + Dm -1] that do not equal hm
a time domain signal may be generated by an Inverse Fourier Transform device (or function
stored in a local or a distributed memory). If windows were used during system analysis,
an overlap-add function may be used for synthesis.
[0022] Assuming original sub-band 3 (of Figure 6) contained echo and was processed to eliminate
or minimize the unwanted or undesired additions (echo), processed sub-band 3 may be
somewhat attenuated and rotated as shown in Figure 7. For example, since bin 5 was
designated as representative, it may be restored by rotating sub-band 3 clockwise
by beta degrees to maintain the original relative phase to bin 4. The restored bin
5 maintains a new attenuated (or adjusted) magnitude. The remaining bins are then
scaled and rotated to maintain their original relative phase and magnitude relationships
to the restored bin as shown in Figure 8.
[0023] Until the spectrum is restored, the original spectrum (or the representative data
set) may be retained in a computer readable medium or memory so that the original
relative magnitude and phase relationships may be maintained or restored in the decompressed
spectrum. This retention potentially reduces audible artifacts that may be introduced
by a compression scheme.
[0024] The system, methods, and descriptions described may be programmed in one or more
controllers, devices, processors (e.g., signal processors). The processors may comprise
one or more central processing units that supervise the sequence of micro-operations
that execute the instruction code and data coming from memory (e.g., computer readable
medium) that generate, support, and/or complete an operation, compression, or signal
modifications. The dedicated applications may support and define the functions of
the special purpose processor or general purpose processor that is customized by instruction
code (and in some applications may be resident to vehicles). In some systems, a front-end
processor may perform the complementary tasks of gathering data for a processor or
program to work with, and for making the data and results available to other processors,
controllers, or devices.
[0025] The systems, methods, and descriptions may program one or more signal processors
or may be encoded in a signal bearing storage medium, a computer-readable medium,
or may comprise logic 902 stored in a memory that may be accessible through an interface
and is executable by one or more processors 904 as shown in Figure 9 (in Figure 9,
N comprises an integer). Some signal-bearing storage medium or computer-readable medium
comprise a memory that is unitary or separate (e.g., local or remote) from a device,
programmed within a device, such as one or more integrated circuits, or retained in
memory and/or processed by a controller or a computer. If the descriptions or methods
are performed by software, the software or logic may reside in a memory resident to
or interfaced to one or more processors, devices, or controllers that may support
a tangible or visual communication interface (e.g., to a display), wireless communication
interface, or a wireless system.
[0026] The memory may retain an ordered listing of executable instructions in a processor,
device, or controller accessible medium for implementing logical functions. A logical
function may be implemented through digital circuitry, through source code, or through
analog circuitry. The software may be embodied in any computer-readable medium or
signal-bearing medium, for use by, or in connection with, an instruction executable
system, apparatus, and device, resident to system that may maintain persistent or
non-persistent connections. Such a system may include a computer system, a processor-based
system, or another system that includes an input and output interface that may communicate
with a publicly accessible or privately accessible distributed network through a wireless
or tangible communication bus through a public and/or proprietary protocol.
[0027] A "computer-readable storage medium," "machine-readable medium," "propagated-signal"
medium, and/or "signal-bearing medium" may comprise a medium that stores, communicates,
propagates, or transports software or data for use by or in connection with an instruction
executable system, apparatus, or device. The machine-readable medium may selectively
be, but not limited to, an electronic, magnetic, optical, electromagnetic, infrared,
or semiconductor system, apparatus, device, or propagation medium. A non-exhaustive
list of examples of a machine-readable medium would include: an electrical connection
having one or more wires, a portable magnetic or optical disk, a volatile memory,
such as a Random Access Memory (RAM), a Read-Only Memory (ROM), an Erasable Programmable
Read-Only Memory (EPROM or Flash memory), or an optical fiber. A machine-readable
medium may also include a tangible medium, as the software may be electronically stored
as an image or in another format (e.g., through an optical scan), then compiled, and/or
interpreted or otherwise processed. The processed medium may then be stored in a computer
and/or machine memory.
[0028] While various embodiments of the invention have been described, it will be apparent
to those of ordinary skill in the art that many more embodiments and implementations
are possible within the scope of the invention. Accordingly, the invention is not
to be restricted except in light of the attached claims and their equivalents.
[0029] Aspects and features of the present disclosure are set out in the following numbered
clauses which contain the subject matter of the claims of the parent application as
filed:
- 1. A system comprising:
a first logic stored in a computer-readable medium and executable by a processor that
partitions and stores a frequency spectrum of bins of real and imaginary data into
a smaller number of sub-bands;
a second logic stored in the computer-readable medium and executable by the processor
that executes a lossy compression that compresses a designated magnitude of one bin
in each sub-band that is representative of that sub-band and a designated phase of
one bin in each sub-band that is representative of that sub-band, such that magnitude
data and phase data of the frequency spectrum is not maintained by the lossy compression,
where the second logic processes a plurality of frames of data and designates a common
bin in each sub-band as a representative phase for each frame of data the system processes;
and
a third logic stored in the computer-readable medium and executable by the processor
that renders a lossless compression by decompressing lossy compressed data rendered
by the second logic and providing magnitude data and phase data not maintained by
the lossy compression based on original spectral relationships contained within the
frequency spectrum stored in the computer-readable medium.
- 2. The system of 1 where the designated magnitude comprises an average magnitude.
- 3. The system of 1 where the designated phase of at least one bin in at least one
of the sub-bands is different from an original phase of the at least one bin comprising
the designated magnitude.
- 4. The system of 1 where the common bin is a first bin of each sub-band.
- 5. The system of 1 where an index of the common bin whose phase is preserved for each
sub-band is constant from one frame to a next frame while an index of a bin that has
a maximum magnitude for each sub-band changes from the one frame to the next frame.
- 6. The system of 1 further comprising logic that applies a gain to one or more of
the sub-bands to render compressed sub-bands that are substantially flat across the
frequency spectrum.
- 7. The system of 1 further comprising a multiplier device that multiples the frequency
spectrum by a window function before the frequency spectrum is partitioned.
- 8. The system of 1 where the first logic partitions the frequency spectrum of bins
of real and imaginary data into sub-bands that match a frequency sensitivity of a
human auditory system.
- 9. The system of 1 where the computer readable medium comprises a distributed memory,
and where the first logic applies a plurality of compression ratios based on a frequency
range of the bins.
- 10. The system of 1 where the second logic comprises:
computer program code that indexes each bin containing the designated peak magnitude
in each sub-band; and
computer program code that adjusts the phase of each bin containing the designated
peak magnitude to the designated phase in each sub-band, where the adjustment comprises
a vector rotation through a phase differential stored in the computer readable medium.
- 11. The system of 1 further comprising an acoustic echo canceller that processes the
frequency spectrum after the lossy compression and before the third logic provides
the magnitude data and phase data.
- 12. The system of 1 further comprising a noise canceller that processes the frequency
spectrum after the lossy compression and before the third logic provides the magnitude
data and phase data.
- 13. The system of 1 further comprising a beam former that processes the frequency
spectrum after the lossy compression and before the third logic provides the magnitude
data and phase data.
- 14. The system of 1 where the third logic comprises:
computer program code that rotates each of the designated magnitudes in each sub-band
to an original phase position; and
computer program code that restores the bins that comprise the sub-bands rendered
by the first logic by reconstructing and substantially maintaining the relative magnitudes
and relative phases of the frequency spectrum partitioned by the first logic.
- 15. A lossless compression method comprising:
partitioning a frequency spectrum of bins of real and imaginary data into a smaller
number of sub-bands through a first lossy compression;
compressing a designated peak magnitude of one bin in each sub-band that is representative
of that sub-band and a designated phase of one bin in each sub-band that is representative
of that sub-band by a second lossy compression;
processing a plurality of frames of data and designating a common bin in each sub-band
as a representative phase for each frame of processed data;
decompressing the lossy compressed data rendered by the second lossy compression;
and
reconstructing and substantially restoring magnitude data and phase data not maintained
by the second lossy compression based on original spectral relationships contained
within the frequency spectrum so that restored magnitude data and restored phase data
maintain a relative magnitude and a relative phase of the frequency spectrum.
1. A sub-band processing method, comprising:
transforming a signal into a plurality of frequency bins each having a phase value;
partitioning the plurality of frequency bins into a smaller number of bands;
defining a first band to include multiple bins of the plurality of frequency bins;
determining a representative phase value for the first band by a processor programmed
to determine the representative phase value based on the phase value of at least one
of the multiple bins within the first band; and
processing the first band using the representative phase value.
2. The method of claim 1, where the step of determining the representative phase value
comprises selecting, as the representative phase value, the phase value of a bin within
the first band that has a lowest frequency within the first band.
3. The method of claim 1, where the step of determining the representative phase value
comprises selecting, as the representative phase value, the phase value of a bin within
the first band that is at a center of the first band.
4. The method of claim 1, where the step of determining the representative phase value
comprises averaging multiple phase values associated with the multiple bins within
the first band to derive the representative phase value, and where the step of averaging
multiple phase values comprises applying a weighted average with weights set based
on phase correlations common to one or more of the multiple bins within the first
band.
5. The method of claim 1, where each of the plurality of frequency bins has a magnitude
value, the method further comprising determining a representative magnitude value
for the first band by a processor programmed to determine the representative magnitude
value based on the magnitude value of at least one of the multiple bins within the
first band.
6. The method of claim 5, where the step of determining the representative magnitude
value comprises selecting a largest magnitude value of the multiple bins within the
first band as the representative magnitude value.
7. The method of claim 5, where the representative phase value is preserved from a first
bin within the first band, and where the representative magnitude value is preserved
from a second bin within the first band that is different than the first bin;
the method further comprising rotating a vector associated with the representative
magnitude value based on the representative phase value so that a phase of the vector
matches the representative phase value;
the further comprising performing a lossy compression on the signal to generate a
compressed version of the signal, where the representative magnitude value and the
representative phase value are preserved in the compressed version of the signal to
represent the first band, and where other magnitude and phase data from the multiple
bins of the first band are not maintained in the compressed version of the signal.
8. The method of claim 1, where the step of processing comprises transforming the first
band of the signal by processing the first band at an adaptive filter, an acoustic
echo canceller, a noise canceller, or a beam-former.
9. A sub-band processing system, comprising:
a computer memory that stores sub-band processing logic;
a processor coupled with the computer memory and configured to execute the sub-band
processing logic stored in the computer memory, where execution of the sub-band processing
logic causes the processor to:
transform a signal into a plurality of frequency bins each having a phase value;
partition the plurality of frequency bins into a smaller number of bands;
define a first band to include multiple bins of the plurality of frequency bins;
determine a representative phase value for the first band based on the phase value
of at least one of the multiple bins within the first band; and
process the first band using the representative phase value.
10. The system of claim 9, where execution of the sub-band processing logic causes the
processor to select, as the representative phase value, the phase value of a bin within
the first band that has a lowest frequency within the first band.
11. The system of claim 9, where execution of the sub-band processing logic causes the
processor to select, as the representative phase value, the phase value of a bin within
the first band that is at a center of the first band.
12. The system of claim 9, where execution of the sub-band processing logic causes the
processor to average multiple phase values associated with the multiple bins within
the first band to derive the representative phase value.
13. The system of claim 9, where each of the plurality of frequency bins has a magnitude
value, where execution of the sub-band processing logic causes the processor to determine
a representative magnitude value for the first band based on the magnitude value of
at least one of the multiple bins within the first band.
14. The system of claim 13, where the representative phase value is preserved from a first
bin within the first band, and where the representative magnitude value is preserved
from a second bin within the first band that is different than the first bin;
where execution of the sub-band processing logic causes the processor to rotate a
vector associated with the representative magnitude value based on the representative
phase value so that a phase of the vector matches the representative phase value;
where execution of the sub-band processing logic causes the processor to perform a
lossy compression on the signal to generate a compressed version of the signal, where
the representative magnitude value and the representative phase value are preserved
in the compressed version of the signal to represent the first band, and where other
magnitude and phase data from the multiple bins of the first band are not maintained
in the compressed version of the signal.
15. A non-transitory computer-readable medium with instructions stored thereon, where
the instructions are executable by a processor to cause the processor to perform the
steps of:
transforming a signal into a plurality of frequency bins each having a phase value;
partitioning the plurality of frequency bins into a smaller number of bands;
defining a first band to include multiple bins of the plurality of frequency bins;
determining a representative phase value for the first band based on the phase value
of at least one of the multiple bins within the first band; and
processing the first band using the representative phase value.