DISTORTION FREE FILTER BANK FOR A HEARING DEVICE

20170295438 · 2017-10-12

Assignee

Inventors

Cpc classification

International classification

Abstract

The application relates to a filter bank for an audio processing device, e.g. a hearing aid. The filter bank comprises an analysis filter bank comprising a plurality of M first filters h.sub.m(n), where m=0, 1, . . . , M−1 is a frequency band index, and whose impulse responses are modulated from a first linear phase prototype filter h(n) with a first predetermined modulation sequence ms1, n being a time index, the first prototype filter h(n) having a first filter length of L.sub.h; a synthesis filter bank comprising a plurality of M second filters g.sub.m(n), m=0, 1, . . . , M−1, whose impulse responses are modulated from a second linear phase prototype filter g(n) with a second predetermined modulation sequence ms2, the second prototype filter g(n) having a second filter length of L.sub.g; the plurality of first and second filters being arranged in pairs, each pair forming a frequency channel. the first modulation sequence is a complex or real function of time n, frequency band index m, and a first prototype filter delay τ.sub.h, the second modulation sequence is a complex or real function of time n, frequency band index m, and a second prototype filter delay τ.sub.g, the first filter length L.sub.h and the second filter length L.sub.g are both uneven, and the first prototype filter delay τ.sub.h is equal to (L.sub.h−1)/2 and second prototype filter delay τ.sub.g, is equal to (L.sub.g−1)/2, and the first and second prototype filter delay τ.sub.h and τ.sub.g, are constants of the analysis filter bank and the synthesis filter bank, respectively.

Claims

1. A filter bank for an audio processing device, e.g. a hearing aid, the filter bank comprising an analysis filter bank comprising a plurality of M first filters h.sub.m(n), where m=0, 1, . . . , M−1 is a frequency band index, and whose impulse responses are modulated from a first linear phase prototype filter h(n) with a first predetermined modulation sequence ms1, n being a time index, the first prototype filter h(n) having a first filter length of L.sub.h; a synthesis filter bank comprising a plurality of M second filters g.sub.m(n), m=0, 1, . . . , M−1, whose impulse responses are modulated from a second linear phase prototype filter g(n) with a second predetermined modulation sequence ms2, the second prototype filter g(n) having a second filter length of L.sub.g; the plurality of first and second filters being arranged in pairs, each pair forming a frequency channel, wherein the first modulation sequence is a complex or real function of time n, frequency band index m, and a first prototype filter delay τ.sub.h, the second modulation sequence is a complex or real function of time n, frequency band index m, and a second prototype filter delay τ.sub.g, the first filter length L.sub.h and the second filter length L.sub.g are both uneven, and the first prototype filter delay τ.sub.h is equal to (L.sub.h−1)/2 and second prototype filter delay τ.sub.h, is equal to (L.sub.g−1)/2, and the first and second prototype filter delay τ.sub.h and τ.sub.g, are constants of the analysis filter bank and the synthesis filter bank, respectively.

2. A filter bank according to claim 1 wherein the first modulation sequence ms1 is adapted to shift the first prototype filter h(n) in frequency with a normalized frequency f=m/M, and the second modulation sequence ms2 is adapted to shift the second prototype filter g(n) in frequency with a normalized frequency f=m/M.

3. A filter bank according to claim 1 wherein the first modulation sequence ms1 is adapted to be time shifted by the first prototype filter delay τ.sub.h, and the second modulation sequence ms2 is adapted to be time shifted by the first prototype filter delay τ.sub.g.

4. A filter bank according to claim 1 wherein the center frequency of the first and second prototype filters h(n) and g(n) are both zero.

5. A filter bank according to claim I wherein the first modulation sequence ms1 is equal to e.sup.j2π(n−τ.sup.h.sup.)m/M and the second modulation sequence ms2 is equal to e.sup.j2π(n−τ.sup.g.sup.)m/M.

6. A filter bank according to claim I wherein the first prototype filters h(n) are subject to the constraint that the sum of all first filters h.sub.m(n) of the analysis filter bank is equal to δ(n−τ.sub.h).

7. A filter bank according to claim 6 wherein the following constraints on the first prototype filter h(n) are imposed: h(τ.sub.h)=1/M h(τ.sub.h+kM)=0, k ∈ Z, k≠0

8. A filter bank according to claim 7 wherein the overall filter bank response t(n), excluding aliasing terms, is subject to the constraint that t(n)=∈(n−τ), where τ=τ.sub.h+τ.sub.g.

9. A filter bank according to claim 8 wherein the following constraints on the second prototype filter g(n) are imposed: 1 D .Math. .Math. m = 0 M - 1 .Math. h m ( n ) * g m ( n ) = { 1 , n = τ 0 , n + τ + kM , k Z , k 0 .

10. An audio processing device comprising a filter bank according to claim 1.

11. An audio processing device according to claim 10 comprising a hearing aid, a headset, an earphone, an ear protection device or a combination thereof.

12. A method of implementing a filter bank for an audio processing device comprising providing an analysis filter bank comprising a plurality of M first filters h.sub.m(n), where m=0, 1, . . . , M−1 is a frequency band index, and whose impulse responses are modulated from a first linear phase prototype filter h(n) with a first predetermined modulation sequence ms1, n being a time index, the first prototype filter h(n) having a first filter length of L.sub.h; providing a synthesis filter bank comprising a plurality of M second filters g.sub.m(n), M=0, 1, . . . , M−1, whose impulse responses are modulated from a second linear phase prototype filter g(n) with a second predetermined modulation sequence ms2, the second prototype filter g(n) having a second filter length of L.sub.g; arranging the plurality of first and second filters in pairs, each pair forming a frequency channel, arranging that the first modulation sequence is a complex or real function of time n, frequency band index m, and a first prototype filter delay τ.sub.h, arranging that the second modulation sequence is a complex or real function of time n, frequency band index m, and a second prototype filter delay τ.sub.g, arranging that the first filter length L.sub.h and the second filter length L.sub.g are both uneven, and arranging that the first prototype filter delay τ.sub.h is equal to (L.sub.h−1)/2 and that the second prototype filter delay τ.sub.g, is equal to (L.sub.g−1)/2, and that the first and second prototype filter delay τ.sub.h and τ.sub.g, are constants of the analysis filter bank and the synthesis filter bank, respectively.

13. A method according to claim 12 wherein the first modulation sequence ms1 is adapted to be time shifted by the first prototype filter delay τ.sub.h, and the second modulation sequence ms2 is adapted to be time shifted by the first prototype filter delay τ.sub.g.

14. Use of a filter bank as claimed in claim 1 in a hearing aid.

15. A data processing system comprising a processor and program code means for causing the processor to perform the steps of the method of claim 12.

Description

BRIEF DESCRIPTION OF DRAWINGS

[0071] The aspects of the disclosure may be best understood from the following detailed description taken in conjunction with the accompanying figures. The figures are schematic and simplified for clarity, and they just show details to improve the understanding of the claims, while other details are left out. Throughout, the same reference numerals are used for identical or corresponding parts. The individual features of each aspect may each be combined with any or all features of the other aspects. These and other aspects, features and/or technical effect will be apparent from and elucidated with reference to the illustrations described hereinafter in which:

[0072] FIG. 1A shows a first embodiment of a hearing aid comprising a filter bank according to the present disclosure, and

[0073] FIG. 1B shows a second embodiment of a hearing aid comprising a filter bank according to the present disclosure,

[0074] FIG. 2 shows an embodiment of a filter bank for an audio processing device according to the present disclosure in different levels of detail,

[0075] FIG. 3A shows a general illustration of a filter bank,

[0076] FIG. 3B shows an embodiment of a filter bank according to the present disclosure, and

[0077] FIG. 3C shows a detailed view of a modulation sequence matrix unit of the embodiment of FIG. 3B, illustrating the mapping and distribution schemes of the analysis and synthesis filter banks, respectively,

[0078] FIG. 4 shows an embodiment of an analysis filter bank according to the present disclosure, and

[0079] FIG. 5 shows a flow diagram of an embodiment of a method of implementing a filter bank according to the present disclosure.

[0080] The figures are schematic and simplified for clarity, and they just show details which are essential to the understanding of the disclosure, while other details are left out. Throughout, the same reference signs are used for identical or corresponding parts.

[0081] Further scope of applicability of the present disclosure will become apparent from the detailed description given hereinafter. However, it should be understood that the detailed description and specific examples, while indicating preferred embodiments of the disclosure, are given by way of illustration only. Other embodiments may become apparent to those skilled in the art from the following detailed description.

DETAILED DESCRIPTION OF EMBODIMENTS

[0082] The detailed description set forth below in connection with the appended drawings is intended as a description of various configurations. The detailed description includes specific details for the purpose of providing a thorough understanding of various concepts. However, it will be apparent to those skilled in the art that these concepts may be practised without these specific details. Several aspects of the apparatus and methods are described by various blocks, functional units, modules, components, circuits, steps, processes, algorithms, etc. (collectively referred to as “elements”). Depending upon particular application, design constraints or other reasons, these elements may be implemented using electronic hardware, computer program, or any combination thereof.

[0083] The electronic hardware may include microprocessors, microcontrollers, digital signal processors (DSPs), field programmable gate arrays (FPGAs), programmable logic devices (PLDs), gated logic, discrete hardware circuits, and other suitable hardware configured to perform the various functionality described throughout this disclosure. Computer program shall be construed broadly to mean instructions, instruction sets, code, code segments, program code, programs, subprograms, software modules, applications, software applications, software packages, routines, subroutines, objects, executables, threads of execution, procedures, functions, etc., whether referred to as software, firmware, middleware, microcode, hardware description language, or otherwise.

[0084] The present application relates to the field of hearing devices, e.g. hearing aids.

[0085] The present disclosure relates filter banks assumed, in particular to variants of DFT-modulated filter banks, which allow for efficient implementation (low computational and memory cost), which are important parameters of a miniaturized hearing device, e.g. a hearing aid.

[0086] U.S. Pat. No. 8,532,319B2 describes a filter bank configuration for a hearing device having filters in an analysis filter bank and corresponding filters in a synthesis filter bank that are coupled pair-wise to form a channel in each case. In order to compensate for a hearing loss, sub-band signals are amplified in the individual channels with the aid of multipliers. In the process, an audible distortion of an output signal Y of the filter bank configuration as a result of differences between amplification factors of the multipliers of neighboring channels should be prevented. Here, at least one channel changes a phase of a sub-band signal transmitted by the channel such that a difference between a group delay of the filter bank configuration and a prescribable reference value is reduced for at least one predetermined frequency. The filter bank configuration is particularly suited to hearing aids.

[0087] U.S. Pat. No. 8,532,319B2 describes two solutions to minimize phase distortion: [0088] Phase compensation filters F are used in the sub bands to compensate for the phase distortion which is introduced by the filter bank. In other words, these filter banks are not designed to be free of phase distortion in the first place. [0089] The phase distortion in the analysis filter bank is compensated for by time reversing the prototype filter of the synthesis filter bank. In other words, the analysis filter bank is not free of phase distortion but the overall response is.

[0090] In contrast, the solution of the present disclosure is advantageous, since both analysis filter banks and the overall filter bank are free of phase distortion so there is no need for additional processing to minimize phase distortion.

[0091] Aspects of the present disclosure relate to time-shifting of the modulation sequence. Other aspects relate to constraints on the prototype filter.

[0092] FIG. 1A shows an embodiment of a hearing aid (HA) comprising a filter bank according to the present disclosure. The hearing aid (HA) is e.g. adapted for being located at or in left and right ears of a user, or adapted for being fully or partially implanted in the head of the user. The hearing aid is e.g. adapted to compensate for a hearing impairment of a particular user. The hearing aid comprises a forward path comprising first and second input units IU.sub.1, IU.sub.2 for providing first and second electric input signals IN1, IN2 representing audio signals in a number N.sub.fp of frequency bands, a signal processing unit (SPU) for processing the first and second electric input signals IN1, IN2, and providing a processed signal OUT based thereon, and an output unit (OU) for converting the processed signal to output stimuli perceivable as sound by a user. The first and second input units (IU.sub.1, IU.sub.2) each comprises respective first and second input transducers (IT.sub.1, IT.sub.2) and first and second analysis filter banks (FBA.sub.1, FBA.sub.2). The first and second input transducers (IT.sub.1, IT.sub.2), e.g. first and second microphones, are e.g. adapted to pick up sound (s′.sub.1, s′.sub.2) from the environment of the hearing aid and to convert it to respective first and second electric signals representative of the sound. The first and second electric signals (s′.sub.1, s′.sub.2) are provided as digital audio samples (e.g. by respective analogue-to-digital converters forming part of the first and second input transducers). The first and second analysis filter banks (FBA.sub.1, FBA.sub.1) are analysis filter banks according to the present disclosure, configured to provide the respective digitized electric signals as frequency band signals IN1, IN2, in N.sub.fp frequency bands. The signal processing unit is e.g. configured to process the electric input signals IN1, IN2 in a number of frequency bands, e.g. in N.sub.fp (or less) frequency bands, and to provide the processed signal OUT in N.sub.fp (or less) frequency bands. The output unit (OU) comprises a synthesis filter bank (FBS) according to the present disclosure configured to convert the processed frequency band signal OUT into an electric (time domain, full band) output signal. The output unit further comprises an output transducer, e.g. a loudspeaker or a vibrator for stimulating bone conduction, or a number of electrodes for electrically stimulating a hearing nerve, for providing output stimuli perceivable by the user as sound. The hearing aid (HA) further comprises an analysis and control unit ANA adapted for analyzing the input signals and/or signals from one or more detectors and to provide one or more control signals CNT for influencing or controlling processing (e.g. the combination of the first and second input signals IN1, IN2) of the signal processing unit (SPU). The analysis and control unit (ANA) comprises first and second band decimation units (BDEC.sub.1, BDEC.sub.2) for decimating the number of frequency bands N.sub.fp of the first and second electric input signals IN1, IN2 to N.sub.cp (N.sub.cp<N.sub.fp) in order to conserve power (which is a critical parameter of a portable, relatively small, electronic device, such as a hearing aid). Due to the properties of the analysis filter banks (FBA.sub.1, FBA.sub.2) of the present disclosure, the frequency bands can be combined (e.g. summed or averaged or otherwise processed) to provide a smaller number of frequency bands without phase distortion. The analysis and control unit (ANA) further comprises a control unit (CONT) for providing N.sub.cp band decimated control signal(s) based on N.sub.cp band decimated versions of input signals IN1 and IN2. The analysis and control unit (ANA) further comprises band distribution unit (BDIS) configured to distribute N.sub.cp band signals to N.sub.fp band signals, (N.sub.cp<N.sub.fp) here control signal CNT, which is fed to the signal processing unit (SPU) for influencing its processing, e.g. of input signals X1, X2. The hearing aid may e.g. contain more than two input units (e.g. comprising microphones and/or wireless electric audio inputs), as e.g. indicated in FIG. 1B

[0093] FIG. 1B shows an embodiment of a hearing aid (HA) in FIG. 1A, but comprising M input units, and where the signal processing unit is further detailed out. The forward path comprises input units (IU.sub.1, IU.sub.NM ), noise reduction system (NRS), processor (HAG) for providing a level and frequency dependent gain, and an output unit (OU). The signal processing unit (SPU) of FIG. 1A is represented in FIG. 1B by noise reduction system (NRS) and processor (HAG).

[0094] The hearing aid (HA) of FIG. 1B comprises a multitude of input units IU.sub.i, i=1, . . . , N.sub.M, N.sub.M being larger than or equal to two for converting respective sound signals s.sub.i or receiving respective audio signals s.sub.i. and providing corresponding time variant electric input signals Xi, i=1, . . . , N.sub.M. Each of the respective input units (IU.sub.1, IU.sub.M) provide a time-frequency representation Xi.sub.m (m=1, 2, . . . , M=N.sub.fp) of the time variant electric input signal Xi, each representing the electric input signal Xi at an i.sup.th input unit in a number M=N.sub.fp of frequency bands and a number of time instances, m being a frequency band index.

[0095] The multi-input unit noise reduction systems (NRS) comprises a multi-channel beamformer filtering unit (BEAMFORMER, e.g. an MVDR beamformer) providing beamformed signal Y.sub.BF(m) (as a weighted combination of multi-frequency band electric input signals X1(m), . . . , XN.sub.M(m), m=1, 2, . . . , M). The noise reduction systems (NRS) additionally comprises a single-channel post-processing filter unit (SC-NR) providing enhanced (beamformed and noise reduced) signal Ŝ(m). The single-channel post-processing filter unit (SC-NR) is operationally coupled to the multi-channel beamformer filtering unit (BEAMFORMER) and configured to provide an enhanced signal Ŝ(m) in a number of frequency bands M=N.sub.fp based on the beamformed signal Y.sub.BF(m). A purpose of the single-channel post-processing filter unit (SC-NR) is to suppress noise components from the target direction, which have not been suppressed by the spatial filtering provided by the multi-channel beamformer filtering unit (BEAMFORMER). The analysis and control unit (ANA) provides control signals BFC(m) and NRC(m), m=1, 2, . . . , M, which are provided to the BEMFORMER- and SC-NR-units, respectively, to influence or control functionality of these units. As mentioned in connection with FIG. 1A, the analysis and control unit is fully or partially operated in a smaller number N.sub.cp of frequency bands than the forward path (e.g. to minimize power consumption) making use of the truly linear properties of the filter bank according to the present disclosure, which allows decimation and distribution (units BDEC and BDIS, respectively) to be performed without distortion of amplitude or phase of the frequency band signals in question.

[0096] The hearing aid (HA) may e.g. further comprise a user interface configured to communicate with another device, e.g. a remote control or a contra-lateral hearing aid of a binaural hearing aid system, thereby allowing a user to influence functionality of the hearing aid(s).

[0097] FIG. 2 shows an embodiment of a filter bank for an audio processing device, e.g. a hearing aid, according to the present disclosure. The filter bank in FIG. 2 is illustrated at three different levels (denoted 1, 2, and 3, as indicated by grey shaded ellipses with corresponding numbers 1, 2, 3 in the middle of FIG. 2). Signals of the filter bank are quoted in the z-transform domain. The filter bank may alternatively be described in the time domain, in the time-frequency domain (or any other appropriate domain).

[0098] As illustrated at the first level (level 1) of FIG. 2, the filter bank comprises an analysis filter bank (FBA) for converting a time variant input signal X(z) representing an audio signal into a number of time variant frequency band signals X.sub.m(z), m=0, 1, . . . , M−1, each representing a sub-band of the total frequency range of the input signal. The filter bank further comprises a synthesis filter bank (FBS) for converting a number of time variant frequency band signals Y.sub.m(z), m=0, 1, . . . , M−1, to a time variant output signal Y(z) representing the audio signal or a processed version thereof.

[0099] The analysis and synthesis filter banks may be used independently of each other, but may advantages be arranged together to provide a number of frequency channels of a forward path for propagating (and processing) an audio signal in an audio processing device, such as a hearing aid. The time variant input signal X(z) may e.g. correspond to (one of) the electric input signals s′.sub.i(i=1, 2, . . . , or N.sub.M) of a hearing aid as described in FIG. 1A or 1B. The time variant output signal Y(z) may e.g. correspond to time variant (full band) output signal out in FIG. 1B (input signal to the output transducer (OT) in FIG. 1A as well as FIG. 1B).

[0100] At the second level (level 2) of FIG. 2, the analysis filter bank (FBA) and the synthesis filter bank (FBS) are split into a number of functional units. The analysis filter bank (FBA) comprises a plurality of M first filters H.sub.m(z) (or h.sub.m(n) in the time domain, n), where m=0, 1, . . . , M−1 is a frequency band index, and whose impulse responses are modulated from a first linear phase prototype filter h(n) (cf. unit 1stPF in FIG. 2) with a first predetermined modulation sequence ms1 (cf. unit MS1 in FIG. 2), where n is a time index. The first prototype filter h(n) has a first filter length of L.sub.1, as indicated on the sub-band signals from the first prototype filter unit (1stPF) to the first modulation sequence unit (MS1). The first modulation sequence unit (MS1) provides M first frequency band signals X.sub.m(z), m=0, 1, . . . , M−1 from the L.sub.h prototype filtered band signals from the 1.sup.st prototype filter (1stPF). Correspondingly, the synthesis filter bank (FBS) comprises a plurality of M second filters G.sub.m(z) (or g.sub.m(n) in the time domain), m=0, 1, . . . , M−1, whose impulse responses are modulated from a second linear phase prototype filter g(n) (cf. unit 2ndPF in FIG. 2) with a second predetermined modulation sequence ms2 (cf. unit MS2 in FIG. 2). The second prototype filter g(n) has a second filter length of L.sub.g, as indicated on the sub-band signals from the second modulation sequence unit (MS2) to the second prototype filter unit (2ndPF). The second modulation sequence unit (MS2) provides L.sub.g modulation sequence band signals to the 2.sup.nd prototype filter (2ndPF) based on M second frequency band signals Y.sub.m(z), m=0, 1, . . . , M−1. Y.sub.m(z) may e.g. represent processed versions of X.sub.m(z). Y.sub.m(z) may e.g. correspond to signal OUT in the hearing aid of FIGS. 1A and 1B. The plurality of first and second filters H.sub.m(z) and G.sub.m(z), respectively, are arranged in pairs (X.sub.m, Y.sub.m), each pair forming a frequency channel.

[0101] The first and second modulation sequences are complex or real functions of time (index) n, frequency band index m, and the first and second prototype filter delays τ.sub.h, and τ.sub.g, respectively. The first and second prototype filter delays, τ.sub.h and τ.sub.g, are constants of the analysis filter bank (FBA) and the synthesis filter bank (FBS), respectively. The first filter length L.sub.h, and the second filter length L.sub.g are both uneven. The first prototype filter delay τ.sub.h is equal to (L.sub.4−1)/2. The second prototype filter delay τ.sub.g is equal to (L.sub.g−1)/2. The first prototype filter h(n) is typically different from the second prototype filter g(n), each having a center frequency of 0.

[0102] In the embodiment of a filter bank illustrated at the second level (level 2) of FIG. 2, the analysis filter bank (FBA) and the synthesis filter bank (FBS) further comprises respective buffer (BUF) and unbuffer (UNBUF) units. The buffer unit (BUF) of the analysis filter bank (FBA) provides a buffer of length L.sub.h of the time variant input signal X(z). The output of the buffer unit (BUF) comprises L.sub.h (possibly down-sampled) consecutive time samples of the input signal X(z), which are fed to respective L.sub.h inputs of the 1.sup.st prototype filter unit (1stPF). The unbuffer unit (UNBUF) of the synthesis filter bank (FBS) provides the output signal Y(z) from the L.sub.g outputs of the 2.sub.nd prototype filter unit (2ndPF).

[0103] In the embodiment of a filter bank illustrated at the third level (level 3) of FIG. 2, the functional units of the analysis filter bank (FBA) and the synthesis filter bank (FBS) are split into a further number of functional units. In the analysis filter bank (FBA), the buffer unit (BUF) is implemented by a delay line (DEL) in combination with a down-sampling unit (↓D). The Delay line (DEL) provides L.sub.h−1 individual delays τ.sub.h to the input signal thereby (at a given time) providing L.sub.h different samples of the input signal X(z). The L.sub.h values of the input signals are fed to the down-sampling unit (↓D), where they are down-sampled with a common down-sampling rate D (where D≦M). The choice of D is e.g. a compromise between power consumption (small D) and aliasing problems (large D). The L.sub.h down-sampled values of the input signal are fed to the first prototype filter unit (1 stPF). In the synthesis filter bank (FBS), the unbuffer unit (UNBUF) is implemented by an up-sampling unit (↓D) in combination with a delay-and-sum line (DEL+). The L.sub.g prototype filtered sub-band signals from the second prototype filter (2ndPF) are each up-sampled with a common up-sampling rate D in the up-sampling unit (↓D). Typically (e.g. in the forward path of a hearing aid) the up-sampling rate is the same as the down-sampling rate (equal to D), but this need not be the case. The respective L.sub.g up-sampled values are fed to the delay-and-sum line (DEL+), where each is delayed with a unique number of delays τ.sub.g (n.Math.τ.sub.g, where n=0, 1, . . . , L.sub.g−1). In some applications, τ.sub.g=τ.sub.h. This need not be the case, however. A resulting, time variant output signal Y(z) is thereby provided as an output of the delay-and-sum line (DEL+).

[0104] In the embodiment of a filter bank illustrated at the third level (level 3) of FIG. 2, the first modulation sequence unit (MS1) of the analysis filter bank (FBA) is implemented by mapping unit (MAP) and inverse Fourier transform unit (IFFT-xSC1). The mapping unit (MAP) is configured to map the L.sub.h inputs from the first prototype filter unit (1.sub.stPF) to M outputs which are fed to the inverse Fourier transform unit (IFFT-xSC1). The mapping scheme is further described below in connection with FIGS. 3A, 3B, 3C and FIG. 4. The inverse Fourier transform unit (IFFT-xSC1) performs an inverse (MxM matrix) Fast Fourier Transform on the M inputs from the mapping unit (MAP) and provides M sub-band signals X.sub.m(z). The inverse Fourier transform unit (IFFT-xSC1) performs the inverse Fourier transform without scaling (as indicated by the xSC in the name of the unit). Correspondingly, the second modulation sequence unit (MS2) of the synthesis filter bank (FBS) is implemented by inverse Fourier transform unit (IFFT-xSC2) and distribution unit (DIS). The inverse Fourier transform unit (IFFT-xSC2) performs an inverse (MxM matrix) Fast Fourier Transform (again without scaling) on the M sub-band signals Y.sub.m(z) and provides M transformed signals to the distribution unit (DIS). The distribution unit (DIS) distributes the M input signals to L.sub.g signals according to a predefined scheme (inverse of the mapping scheme of the analysis filter bank). The L.sub.g signals from the distribution unit (DIS) are fed to the second prototype filter unit (2ndPF).

[0105] An embodiment of the contents of the various functional blocks of FIG. 2 are further described in connection with FIGS. 3A, 3B and 3C below.

[0106] Distortion Free DFT-Modulated Analysis Filter Bank

[0107] With reference to FIGS. 3B and 3C, the analysis filter bank is described as follows. The analysis filter bank splits the time variant (full band) input signal X(z) into M sub-bands. The impulse responses of the analysis filters are described by:


h.sub.m(n)=h(n)e.sup.j2π(n−τ.sup.h.sup.)m/M

[0108] As indicated in FIGS. 3B and 3C (cf. blocks [MxL.sub.h] Modulation Sequence Matrix in FIG. 3B and [MxM] IFFT w/o scaling in FIG. 3C). In the above expression, h(n) is e.g. a low-pass FIR prototype filter (real-valued), which is constrained to have odd length, where n is a time index, n=0, 1, . . . , L.sub.h−1, m is a frequency band index, m=0, 1, . . . , M−1, where M is the number of sub-bands. The group delay of the prototype filter is τ.sub.h=(L.sub.h−1)/2, which is an integer number. The filter length L.sub.h is not constrained or related to the number of bands.

[0109] The modulation sequence e.sup.j2π(n−τ.sup.h.sup.)m/M shifts the prototype filter in frequency with normalized frequency f=m/M. Since the centre frequency of h(n) is zero, this modulation frequency becomes the centre frequency of the sub-band filter.

[0110] The modulation sequence is time-shifted by τ.sub.h. This ensures that, when all bands are summed together, the resulting transfer function is a pure delay, i.e. linear phase and free amplitude distortion.

[0111] Time-shifting of the modulation sequence is an important part of the solution to the problem of designing amplitude- and phase distortion free filter banks and also to make it possible to make linear combinations of sub-band signals without phase distortion.

[0112] The sum of all analysis filters is:

[00004] .Math. m = 0 M - 1 .Math. h m ( n ) = h ( n ) .Math. .Math. m M - 1 .Math. e j .Math. .Math. 2 .Math. π ( n - τ h ) .Math. m / M = δ ( n - τ h ) .Math. .Math. Since ( 1 ) .Math. m = 0 M - 1 .Math. e j .Math. .Math. 2 .Math. π ( n - τ h ) .Math. m / M = { M , n = τ h + kM , k Z , k 0 0 , otherwise ( 2 )

the following constraint is imposed on h(n). Equation (1) is only valid when h(τ.sub.h)=1/M and h(τ.sub.h+kM)=0,k∈ Z, k≠0. Other values of h(n) are optimized to minimize aliasing distortion. These few constraints imposed on the prototype filter constitute a secondary part of the solution.

[0113] Distortion Free DFT-Modulated Synthesis Filter Bank

[0114] A similar definition and procedure is used for the synthesis filter bank:


g.sub.m(n)=g(n)e.sup.j2π(n−τ.sup.g.sup.)m/M

[0115] Here τ.sub.g=(L.sub.g−1)/2 is the synthesis filter bank delay. The overall filter bank delay is τ=τ.sub.h+τ.sub.g. Note again, the time-shifting of the modulation sequence.

[0116] Also here, time-shifting of the modulation sequence is the primary part of the solution to the problem of designing amplitude- and phase distortion free filter banks.

[0117] The constraint on g(n) is related to the overall filter bank response (excluding aliasing terms)

[00005] t ( n ) = 1 D .Math. .Math. m = 0 M - 1 .Math. h m ( n ) * g m ( n ) .

[0118] Where * denotes convolution. The overall filter bank response τ(n)=δ(n−τ) is free of amplitude and phase distortion and is pure delay. This holds only when:

[00006] 1 D .Math. .Math. m = 0 M - 1 .Math. h m ( n ) * g m ( n ) = { 1 , n = τ 0 , n + τ + kM , k Z , k 0 . ( 3 )

[0119] The left hand side of (3) is zero for all other values of n, inherently to the definitions of the analysis and synthesis filters being modulated from their prototype filters respectively.

[0120] These few constraints imposed on the prototype filter are the secondary part of the solution.

[0121] Iterative Method for Prototype Filter Design

[0122] An iterative Constrained Least Squares or Quadratic programming method can be used to design the prototype filters to fulfil the constraints and minimize the aliasing distortion in the output signal.

[0123] Since the filter bank is used in hearing aids with time-varying gains in the sub-bands, the notion of perfect reconstruction, which is common in filter banks, is not valid here. Perfect reconstruction (which also involves that the filter bank output signal is aliasing free) only holds for filter applications where the processing is additive in nature, for example in signal coding.

[0124] Prototype Filter Design

[0125] The overall impulse response of the filterbank is given by

[00007] t ( n ) = 1 D .Math. .Math. m = 0 M - 1 .Math. h m ( n ) * g m ( n )

[0126] It can be shown that t(n)=0 for n≠τ.sub.h+τ.sub.g+kM, k ∈ N due to the modulation of the analysis and synthesis prototype filters. For any given analysis prototype filter, the synthesis prototype filter can be designed to minimize output signal aliasing with the constraint t(τ)=1 and t(n)=0, n=τ.sub.h+τ.sub.g+kM, k ∈ N.sup.30.

[0127] The aliasing term impulse responses are described by

[00008] s m , d ( n ) = 1 D .Math. h m ( n ) .Math. e j .Math. .Math. 2 .Math. π .Math. .Math. nd / D * g m ( n )

[0128] Aliasing is minimized by minimizing the quadratic cost function

[00009] .Math. d = 1 D - 1 .Math. .Math. m = 0 M - 1 .Math. .Math. n = - .Math. .Math. s m , d ( n ) .Math. 2

[0129] Hence, the design problem can be formulated for the synthesis prototype filter (given an analysis prototype filter) as

[00010] { min g h .Math. .Math. d = 1 D - 1 .Math. .Math. m = 0 M - 1 .Math. .Math. n = - .Math. .Math. s m , d ( n ) .Math. 2 t ( τ h + τ g ) = 1 t ( n ) = 0 , n = τ h + τ g + kM , k N +

[0130] The design problem can be formulated for the analysis prototype filter (given a synthesis prototype filter) as

[00011] { min h g .Math. .Math. d = 1 D - 1 .Math. .Math. m = 0 M - 1 .Math. .Math. n = - .Math. .Math. s m , d ( n ) .Math. 2 t ( τ h + τ g ) = 1 t ( n ) = 0 , n = τ h + τ g + kM , k N + h ( τ h ) = 1 / M h ( n ) = 0 , n = τ h + lM , l N +

[0131] These optimization methods can be used iteratively to reach a minimum aliasing level.

[0132] Efficient Filter Bank Implementation

[0133] This section show an example of an implementation of the filter bank according tp the present disclosure.

[0134] A down-sampled filter bank using these analysis and synthesis filters is depicted in the FIG. 3A.

[0135] This can be implemented efficiently using polyphase implementation (reverse the order of math operations and the down/up-samplers). Using the fact that the analysis/synthesis filters are modulated, the mathematical operations can be implemented as a multiplication with the prototype filter weights and matrix multiplication with complex weights.

[0136] FIG. 3A shows a general illustration of a filter bank comprising an analysis filter bank (left part of FIG. 3A) and a synthesis filter bank (right part of FIG. 3A). The analysis filter bank comprises M filters H.sub.m(z) (h.sub.m(n) in the time domain, n), m=0, 1, . . . , M−1, which converts a time variant input signal X(z) comprising an audio signal into M time variant frequency band signals, each of which are clown-sampled with a down-sampling rate D to provide M time variant frequency band signals X.sub.m(z), m−0, 1, . . . , M−1, each representing a sub-band of the total frequency range of the input signal X(z). The synthesis filter hank comprises M up-sampling units for up-sampling time variant frequency band signals Y.sub.m(z), m=0, 1, . . . ,M−1,m and M filters G.sub.m(z) (or g.sub.m(n) in the time domain) for converting the M up-sampled time variant frequency band signals to M filtered signals and a (delay-and-)sum unit (+) for providing a resulting time variant output signal Y(z) representing the audio signal or a processed version thereof (e.g. having been subject to spatial filtering and/or level and/or frequency dependent shaping, e.g. to compensate for a hearing impairment of a user).

[0137] FIG. 3B shows an embodiment of a filter bank according to the present disclosure. In the analysis filter bank, the signals from the L.sub.h prototype filters h(n) are matrix-multiplied with the modulation sequence e.sup.j2πm(n−τh)/M in the unit Modulation Sequence Matrix. The matrix multiplications can in turn be implemented efficiently using a mapping procedure and the Fast Fourier Transform (in fact, in both analysis and synthesis filter banks an unsealed IFFT is used) as illustrated in (the left part of) FIG. 3C. In the synthesis filter bank, the M input signals Y.sub.m are matrix multiplied with the modulation sequence e.sup.j2τm(n−τg)/M in the unit Modulation Sequence Matrix providing L.sub.g signals to the L.sub.g prototype filters g(n). The matrix multiplications can in turn be implemented efficiently using an unsealed inverse Fast Fourier Transform and a subsequent distribution procedure as illustrated in (the right part of) FIG. 3C.

[0138] FIG. 3C shows a detailed view of a modulation sequence matrix unit of the embodiment of FIG. 3B, illustrating the mapping and distribution schemes of the analysis and synthesis filter banks, respectively.

[0139] The following expression describes how the L.sub.h inputs are connected to the M outputs of the mapping block at the analysis filter bank side (cf. e.g. MAP block in FIG. 2, the leftmost block in FIG. 3C and FIG. 4). And also how the M inputs are connected to the L.sub.h outputs at the synthesis size (it is just the reverse).

[0140] The mapping function symbolized in FIG. 3C by the left-most block denoted Add Modulo M shifted with τ.sub.h (Not all arrows are drawn) of expression is


m=MOD(n−τ.sub.h, M)

where

[0141] m=output index,

[0142] n=input index,

[0143] τ.sub.h=(L.sub.h−1)/2,

[0144] M=IFFT size,

[0145] and MOD is the modulus operation.

[0146] The modulus operation (MOD) may be explained by:


MOD(x,y) is x−k*y where k=floor(x/y) if y≠0,

where FLOOR provides the integer part of x divided by y.

[0147] The process of distributing the M IFFT-outputs to Lg outputs of the distribution block in the synthesis filter bank is similarly structured. In fact, the relation is exactly the same for the distribution block in the synthesis filter bank (cf. e.g. DIS in FIG. 2, and the rightmost block in FIG. 3C). In the DIS block an output index n is mapped from m=MOD(n−τ.sub.g, M). Note that here the synthesis filter bank delay τ.sub.g is a specific parameter that may be different from τ.sub.h.

[0148] FIG. 4 shows an embodiment of an analysis filter bank according to the present disclosure. FIG. 4 is intended to exemplify the mapping scheme applied by unit MAP in FIG. 2 and the corresponding unit denoted Add Modulo M shifted with τ.sub.h in FIG. 3C. FIG. 4 illustrates an analysis filter bank as described in connection with FIGS. 3B and 3C. FIG. 4 illustrates a situation where M is larger than L.sub.h (and L.sub.g), whereas FIG. 3C exemplifies a situation where L.sub.h is larger than M.

[0149] The mapping in FIG. 4 is divided into two steps D1 and D2 symbolized by grey shaded arrows starting from the outputs of prototype filters h(τ.sub.h) (cf. solid line from n=τ.sub.h to m=0) and h(τ.sub.h−1) (cf. dashed line from n=τ.sub.h−1 to m=M−1), respectively.

[0150] Step D1: The mapping starts by allocating the output of the prototype filter corresponding to time index n=τ.sub.h to the top input of the IFFT w/o scaling unit corresponding to band index m=0. Continue by allocating output n=τ.sub.h+1 to m=1, n=τ.sub.h+2 to m−2 until you reach the last output of the prototype filter corresponding to n=L.sub.h−1 which is allocated to m=τ.sub.h−1.

[0151] Step D2: The mapping starts by allocating the output of the prototype filter corresponding to time index n=τ.sub.h−1 to the bottom input of the IFFT w/o scaling unit corresponding to band index m=M−1. Continue by allocating output n=τ.sub.h−2 to m=M−2, etc. until you reach the first output of the prototype filter corresponding to n=0 which is allocated to m=M−τ.sub.h.

[0152] In the case of FIG. 4 where M>L.sub.h, the remaining ((M−τ.sub.h)−(τ.sub.h)−1=M−L.sub.hmiddle) inputs of the IFFTxSC unit have no inputs from the prototype filter (h(n) in FIGS. 3B, 3C, 1stPF in FIG. 2). These ‘unconnected’ inputs are e.g. allocated a logic ‘0’.

[0153] In case L.sub.h is larger than M, the ‘extra inputs are cyclically added to already allocated inputs as defined by the above defined mapping scheme and as indicated in FIG. 3C in the unit denoted Add Modulo M shifted with τ.sub.h as sum unit ‘+’.

[0154] The distribution scheme of the synthesis filter bank is correspondingly performed by allocating outputs corresponding to frequency band indices m=0 to m=M−1 of the IFFT w/o scaling unit to outputs corresponding to time indices n=0 to n=Lg−1 of the Distribute Modulo M shifted with τ.sub.g unit as shown in the right side of FIG. 3C.

[0155] FIG. 5 shows a flow diagram of an embodiment of a method of implementing a filter bank for an audio processing device according to the present disclosure. The method comprises steps S1-S6 as outlined in the following: [0156] S1. providing an analysis filter bank comprising a plurality of M first filters h.sub.m(n), where m=0, 1, . . . , M−1 is a frequency band index, and whose impulse responses are modulated from a first linear phase prototype filter h(n) with a first predetermined modulation sequence ms1, n being a time index, the first prototype filter h(n) having a first filter length of L.sub.h; [0157] S2. providing a synthesis filter bank comprising a plurality of M second filters g.sub.m(n), m=0, 1, . . . , M−1, whose impulse responses are modulated from a second linear phase prototype filter g(n) with a second predetermined modulation sequence ms2, the second prototype filter g(n) having a second filter length of L.sub.g; [0158] S3. arranging the plurality of first and second filters in pairs, each pair forming a frequency channel [0159] S4. arranging that the first modulation sequence is a complex or real function of time n, frequency band index m, and a first prototype filter delay τ.sub.h, [0160] S5. arranging that the second modulation sequence is a complex or real function of time n, frequency band index m, and a second prototype filter delay τ.sub.g. [0161] S6. arranging that the first filter length L.sub.h and the second filter length L.sub.g are both uneven, and [0162] S7. arranging that the first prototype filter delay τ.sub.h is equal to (L.sub.h−1)/2 and that the second prototype filter delay τ.sub.g, is equal to (L.sub.g−1)/2, and that the first and second prototype filter delay τ.sub.h and τ.sub.g, are constants of the analysis filter bank and the synthesis filter bank, respectively.

[0163] In an embodiment, the mapping of L.sub.h prototype filter outputs h(n), n=0−L.sub.h−1 to M frequency bands m=0 to M−1 (n to m mapping) is given


m=MOD(n−τ.sub.h, M)

where m=output index, n=input index, τ.sub.h=(L.sub.h−1)/2, M=IFFT size, and MOD is the modulus operation.

[0164] It is intended that the structural features of the devices described above, either in the detailed description and/or in the claims, may be combined with steps of the method, when appropriately substituted by a corresponding process.

[0165] As used, the singular forms “a,” “an,” and “the” are intended to include the plural forms as well (i.e. to have the meaning “at least one”), unless expressly stated otherwise. It will be further understood that the terms “includes,” “comprises,” “including,” and/or “comprising,” when used in this specification, specify the presence of stated features, integers, steps, operations, elements, and/or components, but do not preclude the presence or addition of one or more other features, integers, steps, operations, elements, components, and/or groups thereof. It will also be understood that when an element is referred to as being “connected” or “coupled” to another element, it can be directly connected or coupled to the other element but an intervening elements may also be present, unless expressly stated otherwise. Furthermore, “connected” or “coupled” as used herein may include wirelessly connected or coupled. As used herein, the term “and/or” includes any and all combinations of one or more of the associated listed items. The steps of any disclosed method is not limited to the exact order stated herein, unless expressly stated otherwise.

[0166] It should be appreciated that reference throughout this specification to “one embodiment” or “an embodiment” or “an aspect” or features included as “may” means that a particular feature, structure or characteristic described in connection with the embodiment is included in at least one embodiment of the disclosure. Furthermore, the particular features, structures or characteristics may be combined as suitable in one or more embodiments of the disclosure. The previous description is provided to enable any person skilled in the art to practice the various aspects described herein. Various modifications to these aspects will be readily apparent to those skilled in the art, and the generic principles defined herein may be applied to other aspects.

[0167] The claims are not intended to be limited to the aspects shown herein, but is to be accorded the full scope consistent with the language of the claims, wherein reference to an element in the singular is not intended to mean “one and only one” unless specifically so stated, but rather “one or more.” Unless specifically stated otherwise, the term “some” refers to one or more.

[0168] Accordingly, the scope should be judged in terms of the claims that follow.