Login| Sign Up| Help| Contact|

Patent Searching and Data


Title:
NOISE ATTENUATION AT A DECODER
Document Type and Number:
WIPO Patent Application WO/2019/081089
Kind Code:
A1
Abstract:
There are provided examples of decoders and methods for decoding. One decoder (110) is disclosed which is configured for decoding a frequency-domain signal defined in a bitstream (111), the frequency- domain input signal being subjected to quantization noise, the decoder (110) comprising: a context definer (114) configured to define a context (114') for one bin (123) under process, the context (114') including at least one additional bin (118', 124) in a predetermined positional relationship with the bin (123) under process and a statistical relationship and/or information estimator (115) configured to provide statistical relationships and/or information (115') between and/or information regarding the bin (123) under process and the at least one additional bin (118', 124), wherein the statistical relationship estimator (115) includes a quantization noise relationship and/or information estimator (119) configured to provide statistical relationships and/or information (119') regarding quantization noise.

Inventors:
FUCHS GUILLAUME (DE)
BÄCKSTRÖM TOM (FI)
DAS SNEHA (FI)
Application Number:
PCT/EP2018/071943
Publication Date:
May 02, 2019
Filing Date:
August 13, 2018
Export Citation:
Click for automatic bibliography generation   Help
Assignee:
FRAUNHOFER GES FORSCHUNG (DE)
International Classes:
G10L19/26; G10L21/0264; G10L19/24; G10L21/0232
Foreign References:
US20130218577A12013-08-22
US20150179182A12015-06-25
US20030187663A12003-10-02
US20140249807A12014-09-04
US20110046947A12011-02-24
US20130101049A12013-04-25
US6678647B12004-01-13
US20160140974A12016-05-19
US20110081026A12011-04-07
US20020035470A12002-03-21
US20090306992A12009-12-10
US20100070270A12010-03-18
US20030200092A12003-10-23
Other References:
R. MARTIN: "Noise power spectral density estimation based on optimal smoothing and minimum statistics", IEEE TRANSACTIONS ON SPEECH AND AUDIO PROCESSING., vol. 9, no. 5, 1 July 2001 (2001-07-01), US, pages 504 - 512, XP055223631, ISSN: 1063-6676, DOI: 10.1109/89.928915
Y. HUANG; J. BENESTY: "A multi-frame approach to the frequency-domain single-channel noise reduction problem", IEEE TRANSACTIONS ON AUDIO, SPEECH, AND LANGUAGE PROCESSING, vol. 20, no. 4, 2012, pages 1256 - 1269, XP011420567, DOI: doi:10.1109/TASL.2011.2174226
T. BACKSTROM; F. GHIDO; J. FISCHER: "Blind recovery of perceptual models in distributed speech and audio coding", INTERSPEECH, 2016, pages 2483 - 2487, XP055369017, DOI: doi:10.21437/Interspeech.2016-27
"EVS codec detailed algorithmic description", 3GPP TECHNICAL SPECIFICATION, Retrieved from the Internet
T. BACKSTROM: "Estimation of the probability distribution of spectral fine structure in the speech source", INTERSPEECH, 2017
"Speech Coding with Code-Excited Linear Prediction", 2017, SPRINGER
T. BACKSTROM; J. FISCHER; S. DAS: "Dithered quantization for frequency-domain speech and audio coding", INTERSPEECH, 2018
T. BACKSTROM; J. FISCHER: "Coding of parametric models with randomized quantization in a distributed speech and audio codec", PROCEEDINGS OF THE 12. ITG SYMPOSIUM ON SPEECH COMMUNICATION, 2016, pages 1 - 5
J. BENESTY; M. M. SONDHI; Y. HUANG: "Springer handbook of speech processing", 2007, SPRINGER SCIENCE & BUSINESS MEDIA
J. BENESTY; Y. HUANG: "ICASSP", 2011, IEEE, article "A single-channel noise reduction MVDR filter", pages: 273 - 276
S. DAS; T. BACKSTROM: "Postfiltering using log-magnitude spectrum for speech and audio coding", INTERSPEECH, 2018
R. W. FLOYD; L. STEINBERG: "An adaptive algorithm for spatial gray-scale", PROC. SOC. INF. DISP., vol. 17, 1976, pages 75 - 77
G. FUCHS; V. SUBBARAMAN; M. MULTRUS: "ICASSP", 2011, IEEE, article "Efficient context adaptive entropy coding for real-time applications", pages: 493 - 496
H. HUANG; L. ZHAO; J. CHEN; J. BENESTY: "A minimum variance distortionless response filter based on the bifrequency spectrum for single-channel noise reduction", DIGITAL SIGNAL PROCESSING, vol. 33, 2014, pages 169 - 179
M. NEUENDORF; P. GOURNAY; M. MULTRUS; J. LECOMTE; B. BESSETTE; R. GEIGER; S. BAYER; G. FUCHS; J. HILPERT; N. RETTELBACH ET AL.: "Audio Engineering Society Convention 126", 2009, AUDIO ENGINEERING SOCIETY, article "A novel scheme for low bitrate unified speech and audio coding-MPEG RMO"
"ICASSP", 2009, IEEE, article "Unified speech and audio coding scheme for high quality at low bitrates", pages: 1 - 4
M. SCHOEFFLER; F. R. STOTER; B. EDLER; J. HERRE: "1st Web Audio Conference", 2015, CITESEER, article "Towards the next generation of web-based experiments: a case study assessing basic audio quality following the ITU-R recommendation BS. 1534 (MUSHRA"
Y. SOON; S. N. KOH: "Speech enhancement using 2-D Fourier transform", IEEE TRANSACTIONS ON SPEECH AND AUDIO PROCESSING, vol. 11, no. 6, 2003, pages 717 - 724, XP011104544, DOI: doi:10.1109/TSA.2003.816063
T. BACKSTROM; J. FISCHER: "Fast randomization for distributed low-bitrate coding of speech and audio", IEEEIACM TRANS. AUDIO, SPEECH, LANG. PROCESS., 2017
J.-M. VALIN; G. MAXWELL; T. B. TERRIBERRY; K. VOS: "Audio Engineering Society Convention 135", 2013, AUDIO ENGINEERING SOCIETY, article "High-quality, low-delay music coding in the OPUS codec"
V. ZUE; S. SENEFF; J. GLASS: "Speech database development at MIT: TIMIT and beyond", SPEECH COMMUNICATION, vol. 9, no. 4, 1990, pages 351 - 356, XP024228751, DOI: doi:10.1016/0167-6393(90)90010-7
J. PORTER; S. BOLL: "Optimal estimators for spectral restoration of noisy speech", ICASSP, vol. 9, March 1984 (1984-03-01), pages 53 - 56
C. BREITHAUPT; R. MARTIN: "MMSE estimation of magnitude-squared DFT coefficients with superGaussian priors", ICASSP, vol. 1, April 2003 (2003-04-01), pages 1 - 896,1-899
T. H. DAT; K. TAKEDA; F. ITAKURA: "Generalized gamma modeling of speech and its online estimation for speech enhancement", ICASSP, vol. 4, March 2005 (2005-03-01), pages iv/181 - iv/184
R. MARTIN: "Speech enhancement using MMSE short time spectral estimation with gamma distributed speech priors", ICASSP, vol. 1, May 2002 (2002-05-01), pages 1 - 253,1-256
T. BACKSTROM; C. R. HELMRICH: "Arithmetic coding of speech and audio spectra using TCX based on linear predictive spectral envelopes", ICASSP, April 2015 (2015-04-01), pages 5127 - 5131, XP033064629, DOI: doi:10.1109/ICASSP.2015.7178948
Y. I. ABRAMOVICH; O. BESSON: "Regularized covariance matrix estimation in complex elliptically symmetric distributions using the expected likelihood approach part 1: The oversampled case", IEEE TRANSACTIONS ON SIGNAL PROCESSING, vol. 61, no. 23, 2013, pages 5807 - 5818
T. BACKSTROM: "Speech Coding with Code-Excited Linear Prediction", 2017, SPRINGER
N. CHOPIN: "Fast simulation of truncated Gaussian distributions", STATISTICS AND COMPUTING, vol. 21, no. 2, 2011, pages 275 - 288
M. DIETZ; M. MULTRUS; V. EKSLER; V. MALENOVSKY; E. NORVELL; H. POBLOTH; L. MIAO; Z. WANG; L. LAAKSONEN; A. VASILACHE: "ICASSP", 2015, IEEE, article "Overview of the EVS codec architecture", pages: 5698 - 5702
S. KORSE; G. FUCHS; T. BACKSTROM: "ICASSP", 2018, IEEE, article "GMM-based iterative entropy coding for spectral envelopes of speech and audio"
E. T. NORTHARDT; I. BILIK; Y. I. ABRAMOVICH: "Spatial compressive sensing for direction-of-arrival estimation with bias mitigation via expected likelihood", IEEE TRANSACTIONS ON SIGNAL PROCESSING, vol. 61, no. 5, 2013, pages 1183 - 1195, XP011493902, DOI: doi:10.1109/TSP.2012.2232654
S. QUACKENBUSH: "MPEG unified speech and audio coding", IEEE MULTIMEDIA, vol. 20, no. 2, 2013, pages 72 - 78, XP011515217, DOI: doi:10.1109/MMUL.2013.24
J. RISSANEN; G. G. LANGDON: "Arithmetic coding", IBM JOURNAL OF RESEARCH AND DEVELOPMENT, vol. 23, no. 2, 1979, pages 149 - 162, XP000938669
S. DAS; T. BACKSTROM: "Postfiltering with complex spectral correlations for speech and audio coding", INTERSPEECH, 2018
T. BARKER: "Ph.D. dissertation", 2017, TAMPERE UNIVERSITY OF TECHNOLOGY, article "Non-negative factorisation techniques for sound source separation"
"EVS Codec Detailed Algorithmic Description", 3GPP, TS 26.445, 2014
T BACKSTROM; F GHIDO; J FISCHER: "Blind recovery of perceptual models in distributed speech and audio coding", PROC. INTERSPEECH, 2016, pages 2483 - 2487, XP055369017, DOI: doi:10.21437/Interspeech.2016-27
T BACKSTROM; J FISCHER: "Fast randomization for distributed low-bitrate coding of speech and audio", IEEE/ACM TRANS. AUDIO, SPEECH, LANG. PROCESS., 2017
R. MUDUMBAI; G. BARRIAC; U. MADHOW: "On the feasibility of distributed beamforming in wireless networks", WIRELESS COMMUNICATIONS, IEEE TRANSACTIONS ON, vol. 6, no. 5, 2007, pages 1754 - 1763, XP011181443, DOI: doi:10.1109/TWC.2007.360377
Y.A. HUANG; J. BENESTY: "A multi-frame approach to the frequency-domain single-channel noise reduction problem", IEEE TRANSACTIONS ON AUDIO, SPEECH, AND LANGUAGE PROCESSING, vol. 20, no. 4, 2012, pages 1256 - 1269, XP011420567, DOI: doi:10.1109/TASL.2011.2174226
J BENESTY; M SONDHI; Y HUANG: "Springer Handbook of Speech Processing", 2008, SPRINGER
T BACKSTROM; C R HELMRICH: "Arithmetic coding of speech and audio spectra using TCX based on linear predictive spectral envelopes", PROC. ICASSP, April 2015 (2015-04-01), pages 5127 - 5131, XP033064629, DOI: doi:10.1109/ICASSP.2015.7178948
Attorney, Agent or Firm:
ZINKLER, Franz et al. (DE)
Download PDF:
Claims:
Claims

1 . A decoder (1 10) for decoding a frequency-domain signal defined in a bitstream (11 1 ), the frequency-domain input signal being subjected to quantization noise, the decoder (1 10) comprising:

a bitstream reader (1 13) to provide, from the bitstream (1 1 1 ), a version (1 13', 20) of the input signal as a sequence of frames (121 ), each frame (121 ) being subdivided into a plurality of bins (123-126), each bin having a sampled value;

a context definer (1 14) configured to define a context (1 14') for one bin (123) under process, the context (1 14') including at least one additional bin (1 8', 124) in a predetermined positional relationship with the bin (123) under process;

a statistical relationship and/or information estimator (1 15) configured to provide statistical relationships and/or information (1 15') between and/or information regarding the bin (123) under process and the at least one additional bin (1 18', 124), wherein the statistical relationship estimator (115) includes a quantization noise relationship and/or information estimator (119) configured to provide statistical relationships and/or information (1 19') regarding quantization noise;

a value estimator (1 16) configured to process and obtain an estimate (1 16') of the value of the bin (123) under process on the basis of the estimated statistical relationships and/or information ( 15', 1 19') and statistical relationships and/or information (1 19) regarding quantization noise ( 19 ); and

a transformer ( 1 17) to transform the estimated signal (1 16') into a time-domain signal (1 12).

2. A decoder (1 10) for decoding a frequency-domain signal defined in a bitstream (1 1 1 ), the frequency-domain input signal being subjected to noise, the decoder ( 1 10) comprising: a bitstream reader (1 13) to provide, from the bitstream (1 1 1 ), a version (1 13', 120) of the input signal as a sequence of frames (121 ), each frame (121 ) being subdivided into a plurality of bins (123-126), each bin having a sampled value;

a context definer (1 14) configured to define a context (1 14') for one bin (123) under process, the context (1 14') including at least one additional bin (1 18', 124) in a predetermined positional relationship with the bin (123) under process;

a statistical relationship and/or information estimator (1 15) configured to provide statistical relationships and/or information (1 15') between and/or information regarding the bin (123) under process and the at least one additional bin (118', 124), wherein the statistical relationship estimator (1 15) includes a noise relationship and/or information estimator (1 19) configured to provide statistical relationships and/or information (1 19') regarding noise; a value estimator (1 16) configured to process and obtain an estimate

(1 16') of the value of the bin (123) under process on the basis of the estimated statistical relationships and/or information (1 15', 1 19') and statistical relationships and/or information (1 19) regarding noise (1 19'); and a transformer (1 17) to transform the estimated signal (1 16') into a time-domain signal (1 12).

3. A decoder according to claim 2, wherein noise is noise which is not quantization noise. 4. The decoder of any of the preceding claims, wherein the context definer (1 14) is configured to choose the at least one additional bin (1 18', 124) among previously processed bins (124, 125).

5. The decoder of any of the preceding claims, wherein the context definer (1 14) is configured to choose the at least one additional bin (1 18', 24) based on the band (122) of the bin. 6. The decoder of any of the preceding claims, wherein the context definer (1 14) is configured to choose the at least one additional bin (1 18', 124), within a predetermined threshold, among those which have already been processed. 7. The decoder of any of the preceding claims, wherein the context definer (1 14) is configured to choose different contexts for bins at different bands.

8. The decoder of any of the preceding claims, wherein the value estimator (1 16) is configured to operate as a Wiener filter to provide an optimal estimation of the input signal.

9. The decoder of any of the preceding claims, wherein the value estimator (1 6) is configured to obtain the estimate (1 16') of the value of the bin (123) under process from at least one sampled value of the at least one additional bin (1 18', 124).

10. The decoder of any of the preceding claims, further comprising a measurer (131 ) configured to provide a measured value (131 ') associated to the previously performed estimate(s) (1 16') of the least one additional bin (1 18', 124) of the context (1 14'),

wherein the value estimator (1 16) is configured to obtain an estimate ( 1 16') of the value of the bin (123) under process on the basis of the measured value (131 ').

1 1. The decoder of claim 10, wherein the measured value (131 ') is a value associated to the energy of the at least one additional bin (118', 124) of the context (1 14'). 12. The decoder of claim 10 or 1 1 , wherein the measured value (131 ') is a gain (γ) associated to the at least one additional bin (1 18', 124) of the context (1 14').

13. The decoder of claim 12, wherein the measurer (131 ) is configured to obtain the gain (γ) as the scalar product of vectors, wherein a first vector contains value(s) of the at least one additional bin (1 18', 124) of the context (1 4'), and the second vector is the transpose conjugate of the first vector.

14. The decoder of any of the preceding claims, wherein the statistical relationship and/or information estimator (1 15) is configured to provide the statistical relationships and/or information (115') as pre-defined estimates and/or expected statistical relationships between the bin (123) under process and the at least one additional bin (1 18', 124) of the context (1 14'). 15. The decoder of any of the preceding claims, wherein the statistical relationship and/or information estimator (1 15) is configured to provide the statistical relationships and/or information (1 15') as relationships based on positional relationships between the bin (123) under process and the at least one additional bin (1 18', 124) of the context (114').

16. The decoder of any of the preceding claims, wherein the statistical relationship and/or information estimator (1 15) is configured to provide the statistical relationships and/or information (1 15') irrespective of the values of the bin (123) under process and/or the at least one additional bin (1 18', 124) of the context (1 14').

1 7. The decoder of any of the preceding claims, wherein the statistical relationship and/or information estimator (1 15) is configured to provide the statistical relationships and/or information (1 15') in the form of variance, covariance, correlation and/or autocorrelation values.

18. The decoder of any of the preceding claims, wherein the statistical relationship and/or information estimator (1 15) is configured to provide the statistical relationships and/or information (1 15') in the form of a matrix establishing relationships of variance, covariance, correlation and/or autocorrelation values between the bin (123) under process and/or the at least one additional bin (1 1 8', 124) of the context (1 14').

19. The decoder of any of the preceding claims, wherein the statistical relationship and/or information estimator (1 1 5) is configured to provide the statistical relationships and/or information (1 15') in the form of a normalized matrix establishing relationships of variance, covariance, correlation and/or autocorrelation values between the bin (123) under process and/or the at least one additional bin (1 1 8', 124) of the context ( 1 14').

20. The decoder of any of claims 18 and 19, wherein the matrix is obtained by offline training.

21 . The decoder of any of claims 18-20, wherein the value estimator (1 16) is configured to scale ( 132) elements of the matrix by an energy-related or gain value ( 131 '), so as to keep into account the energy and/or gain variations of the bin (123) under process and/or the at least one additional bin ( 1 1 8', 124) of the context ( 1 14').

22. The decoder of any of the preceding claims, wherein the value estimator is configured to obtain the estimate (1 16') of the value of the bin (123) under process on the basis of a relationship

= Ax(Ax + AN)"1y,

where Λχ, ΛΝ e c(c+1) x ( +1) are noise and covariance matrices, respectively, and y £ C +1 is a noisy observation vector with c + 1 dimensions, c being the context length.

23. The decoder of any of the preceding claims, wherein the value estimator is configured to obtain the estimate ( 1 16') of the value of the bin (123) under process on the basis of a relationship

where ΛΝ e (C(c+ 1)x (c+1) is a normalized covariance matrix, ΛΝ e (C( + 1) x (c+1) is the noise covariance matrix, y e (Cc+ 1 is a noisy observation vector with c + 1 dimensions and associated to the bin (123) under process and the addition bins (124) of the context, c being the context length, γ being a scaling gain.

24. The decoder of any of the preceding claims, wherein the value estimator ( 1 16) is configured to obtain the estimate ( 1 1 6') of the value of the bin ( 123) under process provided that the sampled values of each of the additional bins ( 124) of the context (1 14') correspond to the estimated value of the additional bins ( 124) of the context ( 1 14').

25. The decoder of any of the preceding claims, wherein the value estimator ( 1 16) is configured to obtain the estimate ( 1 1 6') of the value of the bin ( 123) under process provided that the sampled value of the bin ( 123) under process is expected to be between a ceiling value and a floor value.

26. The decoder of any of the preceding claims, wherein the value estimator (1 16) is configured to obtain the estimate (1 16') of the value of the bin (123) under process on the basis of a maximum of a likelihood function. 27. The decoder of any of the preceding claims, wherein the value estimator (1 16) is configured to obtain the estimate (1 16') of the value of the bin (123) under process on the basis of an expected value.

28. The decoder of any of the preceding claims, wherein the value estimator (1 16) is configured to obtain the estimate (1 16') of the value of the bin (123) under process on the basis of the expectation of a multivariate Gaussian random variable.

29. The decoder of any of the preceding claims, wherein the value estimator (1 16) is configured to obtain the estimate (1 16') of the value of the bin (123) under process on the basis of the expectation of a conditional multivariate Gaussian random variable.

30. The decoder of any of the preceding claims, wherein the sampled values are in the Log-magnitude domain.

31 . The decoder of any of the preceding claims, wherein the sampled values are in the perceptual domain. 32. The decoder of any of the preceding claims, wherein the statistical relationship and/or information estimator (1 15) is configured to provide an average value of the signal to the value estimator (1 16).

33. The decoder of any of the preceding claims, wherein the statistical relationship and/or information estimator ( 1 15) is configured to provide an average value of the clean signal on the basis of variance-related and/or covariance-related relationships between the bin (123) under process and at least one additional bin (1 18', 124) of the context (1 14'). 34. The decoder of any of the preceding claims, wherein the statistical relationship and/or information estimator (115) is configured to provide an average value of the clean signal on the basis of the expected value of the bin (123) under process. 35. The decoder of claim 34, wherein the statistical relationship and/or information estimator (115) is configured to update an average value of the signal based on the estimated context..

36. The decoder of any of the preceding claims, wherein the statistical relationship and/or information estimator (1 15) is configured to provide a variance-related and/or standard-deviation-value-reiated value to the value estimator (1 16).

37. The decoder of any of the preceding claims, wherein the statistical relationship and/or information estimator (1 15) is configured to provide a variance-related and/or standard-deviation-value-related value on the basis of variance-related and/or covariance-related relationships between the bin (123) under process and at least one additional bin (1 18', 124) of the context (1 14') to the value estimator (1 16).

38. The decoder of any of the preceding claims, wherein the noise relationship and/or information estimator (1 19) is configured to provide, for each bin, a ceiling value and a floor value for estimating the signal on the basis of the expectation of the signal to be between the ceiling value and the floor value.

39. The decoder of any of the preceding claims, wherein the version ( 1 13', 120) of the input signal has a quantized value which is a quantization level, the quantization level being a value chosen from a discrete number of quantization levels.

40. The decoder of claim 39, wherein the number and/or values and/or scales of the quantization levels are signalled by the encoder and/or signalled in the bitstream (1 1 1 ).

41 . The decoder of any of the preceding claims, wherein the value estimator ( 1 16) is configured to obtain the estimate (1 16') of the value of the bin ( 123) under process in terms of

x = E [P(X\XC = xc)] subjectto.

l≤X≤u

where x is the estimate of the bin (1 23) under process, I and u are the lower and upper limits of the current quantization bins, respectively, and Ρ αλ2) is the conditional probability of al t given a2 , xc being an estimated context vector.

42. The decoder of any of the preceding claims, wherein the value estimator (1 16) is configured to obtain the estimate ( 1 1 6') of the value of the bin ( 123) under process on the basis of the expectation wherein X is a particular value of the bin ( 123) under process expressed as a truncated Gaussian random variable, with I < X < u where I is the floor value and u is the ceiling value, fx ( ) = ,

μ = E(X) , μ and a are mean and variance of the distribution.

43. The decoder of any of the preceding claims, wherein the predetermined positional relationship is obtained by offline training. 44. The decoder of any of the preceding claims, wherein at least one of the statistical relationships and/or information (1 15') between and/or information regarding the bin (123) under process and the at least one additional bin (1 18', 124) are obtained by offline training. 45. The decoder of any of the preceding claims, wherein at least one of the quantization noise relationships and/or information (1 19') are obtained by offline training.

46. The decoder of any of the preceding claims, wherein the input signal is an audio signal.

47. The decoder of any of the preceding claims, wherein the input signal is a speech signal. 48. The decoder of any of the preceding claims, wherein at least one among the context definer (1 14), the statistical relationship and/or information estimator (115), the noise relationship and/or information estimator (1 19), and the value estimator (1 16) is configured to perform a post-filtering operation to obtain a clean estimation (1 16 ) of the input signal.

49. The decoder of any of the preceding claims, wherein the context definer (1 14) is configured to define the context (1 14') with a plurality of additional bins (124).

50. The decoder of any of the preceding claims, wherein the context definer (1 14) is configured to define the context ( 1 14') as a simply connected neighbourhood of bins in a frequency/time graph. 5 . The decoder of any of the preceding claims, wherein the bitstream reader ( 1 1 3) is configured to avoid the decoding of inter-frame information from the bitstream (1 1 1 ).

52. The decoder of any of the preceding claims, further configured to determine (51 1 ) the bitrate of the signal, and, in case (512) the bitrate is above a predetermined bitrate threshold, to bypass at least one among the context definer (1 14), the statistical relationship and/or information estimator (1 15), the noise relationship and/or information estimator ( 1 1 9), the value estimator (1 16).

53. The decoder of any of the preceding claims, further comprising a processed bins storage unit ( 1 1 8) storing information regarding the previously proceed bins ( 124, 125),

the context definer ( 1 14) being configured to define the context (1 14') using at least one previously proceed bin as at least one of the additional bins ( 124).

54. The decoder of any of the preceding claims, wherein the context definer ( 1 14) is configured to define the context (1 14') using at least one non-processed bin (1 26) as at least one of the additional bins.

55. The decoder of any of the preceding claims, wherein the statistical relationship and/or information estimator ( 1 15) is configured to provide the statistical relationships and/or information (1 15') in the form of a matrix (Λχ) establishing relationships of variance, covariance, correlation and/or autocorrelation values between the bin (123) under process and/or the at least one additional bin (1 18', 124) of the context (1 14'),

wherein the statistical relationship and/or information estimator (1 5) is configured to choose one matrix from a plurality of predefined matrixes on the basis of a metrics associated to the harmonicity of the input signal.

56. The decoder of any of the preceding claims, wherein the noise relationship and/or information estimator (119) is configured to provide the statistical relationships and/or information (1 9') regarding noise in the form of a matrix (ΛΝ) establishing relationships of variance, covariance, correlation and/or autocorrelation values associated to the noise,

wherein the statistical relationship and/or information estimator (1 15) is configured to choose one matrix from a plurality of predefined matrixes on the basis of a metrics associated to the harmonicity of the input signal.

57. A system comprising an encoder and a decoder according to any of the preceding claims, the encoder being configured to provide the bitstream (1 1 1 ) with encoded the input signal. 58. A method comprising:

defining a context (1 14') for one bin (123) under process of an input signal, the context ( 14') including at least one additional bin ( 1 18', 124) in a predetermined positional relationship, in a frequency/time space, with the bin ( 123) under process;

on the basis of statistical relationships and/or information (1 15') between and/or information regarding the bin (123) under process and the at least one additional bin (1 18', 124) and of statistical relationships and/or information ( 1 19') regarding quantization noise, estimating the value (1 16') of the bin (123) under process.

59. A method comprising:

defining a context (1 14') for one bin (123) under process of an input signal, the context (1 14') including at least one additional bin (1 8', 124) in a predetermined positional relationship, in a frequency/time space, with the bin (123) under process;

on the basis of statistical relationships and/or information (1 15') between and/or information regarding the bin (123) under process and the at least one additional bin (1 18', 24) and of statistical relationships and/or information (1 19') regarding noise which is not quantization noise, estimating the value (1 16') of the bin (123) under process.

60. The method of claim 58 or 59, using the decoder of any of claims 1 -56 and/or the system of claim 57. 61. A non-transitory storage unit storing instructions which, when executed by a processor, causes the processor to perform any of the methods of claims 58-60.

Description:
NOISE ATTENUATION AT A DECODER

Description

1. Background A decoder is normally used to decode a bitstream (e.g., received or stored in a storage device). The signai may notwithstanding be subjected to noise, such as for example, quantization noise. Attenuation of this noise is therefore an important goal.

2. Drawings Fig. 1 .1 shows a decoder according to an example.

Fig. 1.2 shows a schematization in a frequency/time-space graph of a version of a signal, indicating the context.

Fig. 1.3 shows a decoder according to an example.

Fig. 1 .4 shows a method according to an example. Fig. 1.5 shows schematizations in a frequency/time space graph and magnitude/frequency graphs of a version of a signal.

Fig. 2.1 shows schematizations of frequency/time space graphs of a version of a signal, indicating the contexts. Fig. 2.2 shows histograms obtained with examples.

Fig. 2.3 shows spectrograms of speech according to examples.

Fig. 2.4: shows an example of decoder and encoder.

Fig. 2.5: shows plots with results obtained with examples.

Fig. 2.6 shows test results obtained with examples. Fig. 3.1 shows a schematization in a frequency/time space graph of a version of a signal, indicating the context.

Fig. 3.2 shows histograms obtained with examples. Fig. 3.3 shows a bock diagram of the training of speech models.

Fig. 3.4 shows histograms obtained with examples.

Fig. 3.5 shows plots representing the improvement in SNR with examples

Fig. 3.6 shows an example of decoder and encoder.

Fig. 3.7 shows plots regarding examples. Fig. 3.8 shows a correlation plot.

Fig. 4.1 shows a system according to an example.

Fig. 4.2 shows a scheme according to an example.

Fig. 4.3 shows a scheme according to an example.

Fig. 5.1 shows a method step according to examples. Fig. 5.2 shows a general method.

Fig. 5.3 shows a processor-based system according to an example.

Fig. 5.4 shows an encoder/decoder system according to an example.

3. Summary

In accordance to an aspect, there is here provided a decoder for decoding a frequency-domain signal defined in a bitstream, the frequency-domain input signal being subjected to quantization noise, the decoder comprising: a bitstream reader to provide, from the bitstream, a version of the input signal as a sequence of frames, each frame being subdivided into a plurality of bins, each bin having a sampled value;

a context definer configured to define a context for one bin under process, the context including at least one additional bin in a predetermined positional relationship with the bin under process;

a statistical relationship and/or information estimator configured to provide statistical relationships and/or information between and/or information regarding the bin under process and the at least one additional bin, wherein the statistical relationship estimator includes a quantization noise relationship and/or information estimator configured to provide statistical relationships and/or information regarding quantization noise;

a value estimator configured to process and obtain an estimate of the value of the bin under process on the basis of the estimated statistical relationships and/or information and statistical relationships and/or information regarding quantization noise; and

a transformer to transform the estimated signal into a time-domain signal. In accordance to an aspect, there is here disclosed a decoder for decoding a frequency-domain signal defined in a bitstream, the frequency-domain input signal being subjected to noise, the decoder comprising:

a bitstream reader to provide, from the bitstream, a version of the input signal as a sequence of frames, each frame being subdivided into a plurality of bins, each bin having a sampled value;

a context definer configured to define a context for one bin under process, the context including at least one additional bin in a predetermined positional relationship with the bin under process;

a statistical relationship and/or information estimator configured to provide statistical relationships and/or information between and/or information regarding the bin under process and the at least one additional bin, wherein the statistical relationship estimator includes a noise relationship and/or information estimator configured to provide statistical relationships and/or information regarding noise;

a value estimator configured to process and obtain an estimate of the value of the bin under process on the basis of the estimated statistical relationships and/or information and statistical relationships and/or information regarding noise; and

a transformer to transform the estimated signal into a time-domain signal.

According to an aspect, the noise is noise which is not quantization noise. According to an aspect, the noise is quantization noise. According to an aspect, the context definer is configured to choose the at least one additional bin among previously processed bins.

According to an aspect, the context definer is configured to choose the at least one additional bin based on the band of the bin.

According to an aspect, the context definer is configured to choose the at least one additional bin, within a predetermined threshold, among those which have already been processed. According to an aspect, the context definer is configured to choose different contexts for bins at different bands.

According to an aspect, the value estimator is configured to operate as a Wiener filter to provide an optimal estimation of the input signal. According to an aspect, the value estimator is configured to obtain the estimate of the value of the bin under process from at least one sampled value of the at least one additional bin. According to an aspect, the decoder further comprises a measurer configured to provide a measured value associated to the previously performed estimate(s) of the least one additional bin of the context,

wherein the value estimator is configured to obtain an estimate of the value of the bin under process on the basis of the measured value.

According to an aspect, the measured value is a value associated to the energy of the at least one additional bin of the context.

According to an aspect, the measured value is a gain associated to the at least one additional bin of the context.

According to an aspect, the measurer is configured to obtain the gain as the scalar product of vectors, wherein a first vector contains value(s) of the at least one additional bin of the context, and the second vector is the transpose conjugate of the first vector.

According to an aspect, the statistical relationship and/or information estimator is configured to provide the statistical relationships and/or information as pre-defined estimates and/or expected statistical relationships between the bin under process and the at least one additional bin of the context.

According to an aspect, the statistical relationship and/or information estimator is configured to provide the statistical relationships and/or information as relationships based on positional relationships between the bin under process and the at least one additional bin of the context.

According to an aspect, the statistical relationship and/or information estimator is configured to provide the statistical relationships and/or information irrespective of the values of the bin under process and/or the at least one additional bin of the context.

According to an aspect, the statistical relationship and/or information estimator is configured to provide the statistical relationships and/or information in the form of variance, covariance, correlation and/or autocorrelation values.

According to an aspect, the statistical relationship and/or information estimator is configured to provide the statistical relationships and/or information in the form of a matrix establishing relationships of variance, covariance, correlation and/or autocorrelation values between the bin under process and/or the at least one additional bin of the context. According to an aspect, the statistical relationship and/or information estimator is configured to provide the statistical relationships and/or information in the form of a normalized matrix establishing relationships of variance, covariance, correlation and/or autocorrelation values between the bin under process and/or the at least one additional bin of the context.

According to an aspect, the matrix is obtained by offline training.

According to an aspect, the value estimator is configured to scale elements of the matrix by an energy-related or gain value, so as to keep into account the energy and/or gain variations of the bin under process and/or the at least one additional bin of the context.

According to an aspect, the value estimator is configured to obtain the estimate of the value of the bin under process on the basis of a relationship χ = Λ χ χ + Λ Ν )- 1 γ,

where Λ Χ , Λ Ν e ( c+1 ) x (c+1 are noise and covariance matrices, respectively, and y e C c+1 is a noisy observation vector with c + 1 dimensions, c being the context length. According to an aspect, value estimator is configured to obtain the estimate of the value of the bin (123) under process on the basts of a relationship

χ = χΛ χ ΟΛ χ -(- Λ Ν )- γ

where Λ Ν e (C (c+1) x (c+1) is a normalized covariance matrix, Λ Ν e C (c+1) x(c+1) is the noise covariance matrix, y e C +1 is a noisy observation vector with c + 1 dimensions and associated to the bin under process and the addition bins of the context, c being the context length, γ being a scaling gain.

According to an aspect, the value estimator is configured to obtain the estimate of the value of the bin under process provided that the sampled values of each of the additional bins of the context correspond to the estimated value of the additional bins of the context.

According to an aspect, the value estimator is configured to obtain the estimate of the value of the bin under process provided that the sampled value of the bin under process is expected to be between a ceiling value and a floor value.

According to an aspect, the value estimator is configured to obtain the estimate of the value of the bin under process on the basis of a maximum of a likelihood function. According to an aspect, the value estimator is configured to obtain the estimate of the value of the bin under process on the basis of an expected value.

According to an aspect, the value estimator is configured to obtain the estimate of the value of the bin under process on the basis of the expectation of a multivariate Gaussian random variable. According to an aspect, the value estimator is configured to obtain the estimate of the value of the bin under process on the basis of the expectation of a conditional multivariate Gaussian random variable.

According to an aspect, the sampled values are in the Log-magnitude domain.

According to an aspect, the sampled values are in the perceptual domain.

According to an aspect, the statistical relationship and/or information estimator is configured to provide an average value of the signal to the value estimator.

According to an aspect, the statistical relationship and/or information estimator is configured to provide an average value of the clean signal on the basis of variance-related and/or covariance-related relationships between the bin under process and at least one additional bin of the context. According to an aspect, the statistical relationship and/or information estimator is configured to provide an average value of the clean signal on the basis of the expected value of the bin (123) under process. According to an aspect, the statistical relationship and/or information estimator is configured to update an average value of the signal based on the estimated context..

According to an aspect, the statistical relationship and/or information estimator is configured to provide a variance-related and/or standard- deviation-value-related value to the value estimator.

According to an aspect, the statistical relationship and/or information estimator is configured to provide a variance-related and/or standard- deviation-value-related value on the basis of variance-related and/or covariance-related relationships between the bin under process and at least one additional bin of the context to the value estimator.

According to an aspect, the noise relationship and/or information estimator is configured to provide, for each bin, a ceiling value and a floor value for estimating the signal on the basis of the expectation of the signal to be between the ceiling and the floor value.

According to an aspect, the version of the input signal has a quantized value which is a quantization level, the quantization level being a value chosen from a discrete number of quantization levels.

According to an aspect, the number and/or values and/or scales of the quantization levels are signalled by the encoder and/or signalled in the bitstream. According to an aspect, the value estimator is configured to obtain the estimate of the value of the bin under process in terms of

X = E[P(X\X C = x c )] subjectto.

l≤X≤u

where x is the estimate of the bin under process, I and u are the lower and upper limits of the current quantization bins, respectively, and P(a t \a 2 ) is the conditional probability of α , , given 2 , x c being an estimated context vector.

According to an aspect, the value estimator is configured to obtain the estimate of the value of the bin under process on the basis of the expectation wherein X is a particular value [X] of the bin under process expressed as a truncated Gaussian random variable, with I < X < u where I is the floor value and u is the ceiling value, Ί(α) =

μ = E(X) , μ and σ are mean and variance of the distribution. According to an aspect, the predetermined positional relationship is obtained by offline training.

According to an aspect, at least one of the statistical relationships and/or information between and/or information regarding the bin under process and the at least one additional bin are obtained by offline training.

According to an aspect, at least one of the quantization noise relationships and/or information are obtained by offline training. According to an aspect, the input signal is an audio signal. According to an aspect, the input signal is a speech signal.

According to an aspect, at least one among the context definer, the statistical relationship and/or information estimator, the noise relationship and/or information estimator, and the value estimator is configured to perform a post-filtering operation to obtain a clean estimation of the input signal.

According to an aspect, the context definer is configured to define the context with a plurality of additional bins. According to an aspect, the context definer is configured to define the context as a simply connected neighbourhood of bins in a frequency/time graph.

According to an aspect, the bitstream reader is configured to avoid the decoding of inter-frame information from the bitstream.

According to an aspect, the decoder is further configured to determine the bitrate of the signal, and, in case the bitrate is above a predetermined bitrate threshold, to bypass at least one among the context definer, the statistical relationship and/or information estimator, the noise relationship and/or information estimator, the value estimator.

According to an aspect, the decoder further comprises a processed bins storage unit storing information regarding the previously proceed bins, the context definer being configured to define the context using at least one previously proceed bin as at least one of the additional bins.

According to an aspect, the context definer is configured to define the context using at least one non-processed bin as at least one of the additional bins.

According to an aspect, the statistical relationship and/or information estimator is configured to provide the statistical relationships and/or information in the form of a matrix establishing relationships of variance, covariance, correlation and/or autocorrelation values between the bin under process and/or the at least one additional bin of the context,

wherein the statistical relationship and/or information estimator is configured to choose one matrix from a plurality of predefined matrixes on the basis of a metrics associated to the harmonicity of the input signal.

According to an aspect, the noise relationship and/or information estimator is configured to provide the statistical relationships and/or information regarding noise in the form of a matrix establishing relationships of variance, covariance, correlation and/or autocorrelation values associated to the noise,

wherein the statistical relationship and/or information estimator is configured to choose one matrix from a plurality of predefined matrixes on the basis of a metrics associated to the harmonicity of the input signal.

There is also provided a system comprising an encoder and a decoder according to any of the aspects above and/or below, the encoder being configured to provide the bitstream with encoded the input signal. In examples, there is provided a method comprising: defining a context for one bin under process of an input signal, the context including at least one additional bin in a predetermined positional relationship, in a frequency/time space, with the bin under process;

on the basis of statistical relationships and/or information between and/or information regarding the bin under process and the at least one additional bin and of statistical relationships and/or information regarding quantization noise, estimating the value of the bin under process.

In examples, there is provided a method comprising:

defining a context for one bin under process of an input signal, the context including at least one additional bin in a predetermined positional relationship, in a frequency/time space, with the bin under process;

on the basis of statistical relationships and/or information between and/or information regarding the bin under process and the at least one additional bin and of statistical relationships and/or information regarding noise which is not quantization noise, estimating the value of the bin under process.

One of the methods above may use the equipment of any of any of the aspects above and/or below.

In examples, there is provide a non-transitory storage unit storing instructions which, when executed by a processor, causes the processor to perform any of the methods of any of the aspects above and/or below.

4.1 . Detailed descriptions 4.1 .1 . Examples

Fig. 1 .1 shows an example of a decoder 1 10. Fig. 1 .2 shows a representation of a signal version 120 processed by the decoder 1 10. The decoder 1 10 may decode a frequency-domain input signal encoded in a bitstream 11 1 (digital data stream) which has been generated by an encoder. The bitstream 1 1 1 may have been stored, for example, in a memory, or transmitted to a receiver device associated to the decoder 1 10. When generating the bitstream, the frequency-domain input signal may have been subjected to quantization noise. In other examples, the frequency-domain input signal may be subjected to other types of noise. Hereinbelow are described techniques which permit to avoid, limit or reduce the noise. The decoder 1 10 may comprise a bitstream reader 1 13 (communication receiver, mass memory reader, etc.). The bitstream reader 1 13 may provide, from the bitstream 1 1 1 , a version 113' of the original input signal (represented with 120 in Fig. 1.2 in a time/frequency two-dimensional space). The version 113', 20 of the input signal may be seen as a sequence of frames 121. In example, each frame 121 may be a frequency domain, FD, representation of the original input signal for a time slot. For example, each frame 121 may be associated to a time slot of 20 ms (other lengths may be defined). Each of the frames 121 may be identified with an integer number "t" of a discrete sequence of discrete slots. For example, the (t+1 ) th frame is immediately subsequent to the t th frame. Each frame 121 may be subdivided into a plurality of spectral bins (here indicated as 123- 26). For each frame 121 , each bin is associated to a particular frequency and/or a particular frequency band. The bands may be predetermined, in the sense that each bin of the frame may be pre-assigned to a particular frequency band. The bands may be numbered in discrete sequences, each band being identified by a progressive numeral "k". For example, the (k+1 ) th band may be higher in frequency than the k th band.

The bitstream 1 1 1 (and the signal 113', 120, consequently) may be provided in such a way that each time/frequency bin is associated to a particular value (e.g., sampled value). The sampled value is in general expressed as Y(k, t) and may be, in some cases, a complex value. In some examples, the sampled value Y(k, t) may be the unique knowledge that the decoder 10 has regarding the original at the time slot t at the band k. Accordingly, the sampled value Y(k, t) is in general impaired by quantization noise, as the necessity of quantizing the original input signal, at the encoder, has introduced errors of approximation when generating the bitstream and/or when digitalizing the original analog signal. (Other types of noise may also be schematized in other examples.) The sampled value Y(k, t) (noisy speech) may be understood as being expressed in terms of

Y(k, t) = X(k, t) + V(k, t), with X(k, t) being the clean signal (which would be preferably obtained) and V(k, t), which is quantization noise signal (or other type of noise signal). It has been noted that it is possible to arrive at an appropriated, optimal estimate of the clean signal with techniques described here.

Operations may provide that each bin is processed at one particular time, e.g. recursively. At each iteration, a bin to be processed is identified (e.g., bin 123 or C 0 , in Fig. 1 .2, associated to instant t=4 and band k=3, the bin being referred to as "bin under process"). With respect to the bin 123 under process, the other bins of the signal 120 (1 1 3') may be divided into two classes:

- a first class of non-processed bins 126 (indicated with a dashed circle in Fig. 1 .2), e.g., bins which are to be processed at future iterations; and

- a second class of already-processed bins 124, 125 (indicated with squares in Fig. 1 .2), e.g., bins which have been processed at previous iterations. It is possible to obtain, for one bin 123 under process, an optimal estimate on the basis of at least one additional bin (which may be one of the squared bins in Fig. 1.2). The at least one additional bin may be a plurality of bins.

The decoder 1 10 may comprise a context definer 1 14 which defines a context 1 14' (or context block) for one bin 123 (C 0 ) under process. The context 1 14' includes at least one additional bin (e.g., a group of bins) in a predetermined positional relationship with the bin 123 under process. In the example of Fig. 1 .2, the context 1 14' of bin 123 (C 0 ) is formed by ten additional bins 124 (1 18') indicated with C C 10 (the generic number of additional bins forming one context is here indicated with "c": in Fig. 1 .2, c=10). The additional bins 124 (C C 10 ) may be bins in a neighborhood of the bin 123 (C 0 ) under process and/or may be already processed bins (e.g., their value may have already been obtained during previous iterations). The additional bins 124 (C C 10 ) may be those bins (e.g., among the already processed ones) which are the closest to the bin 123 (C 0 ) under process (e.g., those bins which have a distance from C 0 less than a predetermined threshold, e.g., three positions). The additional bins 124 (C C 10 ) may be the bins (e.g., among the already proceed ones) which are expected to have the highest correlation with the bin 123 (C 0 ) under process. The context 1 14' may be defined in a neighbourhood so as to avoid "holes ', in the sense that in the frequency/time representation all the context bins 124 are immediately adjacent to each other and to the bin 123 under process (the context bins 124 forming thereby a "simply connected" neighbourhood). (The already processed bins, which notwithstanding are not chosen for the context 1 14' of the bin 123 under process, are shown with dashed squares and are indicated with 125). The additional bins 124 (C^C^) may in a numbered relationship with each other (e.g., C, , C 2 , C c with c being the number of bins in the context 1 14', e.g., 10). Each of the additional bins 124 (C C 10 ) of the context 114' may be in a fixed position with respect to the bin 123 (C 0 ) under process. The positional relationships between the additional bins 124 (C-j-C-ιο) and the bin 123 (C 0 ) under process may be based on the particular band 122 (e.g., on the basis of the frequency/band number k). In the example of Fig. 1 .2, the bin 123 (C 0 ) under process is in the 3 rd band (k=3) and at an instant t (in this case, t=4). In this case, it may be provided that: - the first additional bin C of the context 1 14' is the bin at instant t-1 =3, at band k=3;

- the second additional bin C 2 of the context 114' is the bin at instant t=4, at band k-1 =2;

- the third additional bin C 3 of the context 1 14' is the bin at instant t- 1 =3, at band k-1 =2;

- the fourth additional bin C 4 of the context 1 14' is the bin at instant t- 1 =3, at band k+1 =4;

- and so on.

(In the subsequent parts of the present document, "context bin" may be used to indicate an "additional bin" 124 of the context.)

In examples, after having processed all the bins of a generic t th frame, all the bins of the subsequent (t+1 ) th frame may be processed. For each generic t th frame, all the bins of the t th frame may be iteratively processed. Other sequences and/or paths may notwithstanding be provided. For each t th frame, the positional relationships between the bin 123 (C 0 ) under process and the additional bins 124 forming the context 1 14' (120) may therefore be defined on the basis of the particular band k of the bin 123 (C 0 ) under process. When, during a previous iteration, the under-process bin was the bin currently indicated as C 6 (t=4, k=1 ), a different shape of the context had been chosen, as there are no bands defined under k=1. However, when the under-process bin bin was the bin at t=3, k=3 (currently indicated as C-i) the context had the same shape of the context of Fig. 1.2 (but staggered of one time instant toward left). For example, in Fig. 2.1 , the context 1 14' for the bin 123 (C 0 ) of Fig. 2.1 (a) is compared with the context 114" for the bin C 2 as previously used when C 2 had been the under-process bin: the contexts 1 14' and 1 14" are different from each other.

Therefore, the context definer 114 may be a unit which iteratively, for each bin 123 (C 0 ) under process, retrieves additional bins 124 (1 18', C C 0 ) to form a context 1 14' containing already-processed bins having an expected high correlation with the bin 123 (C 0 ) under process (in particular, the shape of the context may be based on the particular frequency of the bin 123 under process). The decoder 1 10 may comprise a statistical relationship and/or information estimator 1 15 to provide statistical relationships and/or information 1 15', 1 19' between the bin 123 (C 0 ) under process and the context bins 118', 124. The statistical relationship and/or information estimator 115 may include a quantization noise relationship and/or information estimator 119 to estimate relationships and/or information regarding the quantization noise 1 9' and/or statistical noise-related relationships between the noise affecting each bin 124 (C-i-C-io) of the context 1 14' and/or the bin 123 (C 0 ) under process.

In examples, an expected relationship 1 15' may comprise a matrix (e.g., a covariance matrix) containing expected covariance relationships (or other expected statistical relationships) between bins (e.g., the bin C 0 under process and the additional bins of the context C C 0 ). The matrix may be a square matrix for which each row and each column is associated to a bin. Therefore, the dimensions of the matrix may be (c+1 )x(c+1 ) (e.g., 1 in the example of Fig. 1.2). In examples, each element of the matrix may indicate an expected covariance (and/or correlation, and/or another statistical relationship) between the bin associated to the row of the matrix and the bin associated to the column of the matrix. The matrix may be Hermitian (symmetric in case of Real coefficients). The matrix may comprise, in the diagonal, a variance value associated to each bin. In example, instead of a matrix, other forms of mappings may be used.

In examples, an expected noise relationship and/or information 119' may be formed by a statistical relationship. In this case, however, the statistical relationship may refer to the quantization noise. Different covariances may be used for different frequency bands.

In examples, the quantization noise relationship and/or information 1 19' may comprise a matrix (e.g., a covariance matrix) containing expected covariance relationships (or other expected statistical relationships) between the quantization noise affecting the bins. The matrix may be a square matrix for which each row and each column is associated to a bin. Therefore, the dimensions of the matrix may be (c+1 )x(c+1 ) (e.g., 11 ). In examples, each element of the matrix may indicate an expected covariance (and/or correlation, and/or another statistical relationship) between the quantization noise impairing the bin associated to the row and the bin associated to the column. The covariance matrix may be Hermitian (symmetric in case of Real coefficients). The matrix may comprise, in the diagonal, a variance value associated to each bin. In example, instead of a matrix, other forms of mappings may be used. It has been noted that, by processing the sampled value Y(k, t) using expected statistical relationships between the bins, a better estimation of the clean value X(k, t) may be obtained.

The decoder 1 10 may comprise a value estimator 1 16 to process and obtain an estimate 1 16' of the sampled value X(k, t) (at the bin 123 under process, C 0 ) of the signal 1 13' on the basis of the expected statistical relationships and/or information and/or statistical relationships and/or information 1 19' regarding quantization noise 1 19'. The estimate 1 16', which is a good estimate of the clean value X(k, t), may therefore be provided to an FD-to-TD transformer 1 1 7, to obtain an enhanced TD output signal 1 12.

The estimate 1 16' may be stored onto a processed bins storage unit 1 18 (e.g., in association with the time instant t and/or the band k). The stored value of the estimate 1 16' may, in subsequent iterations, provide the already processed estimate 1 16' to the context definer 1 14 as additional bin 1 18' (see above), so as to define the context bins 124.

Fig. 1 .3 shows particulars of a decoder 1 30 which, in some aspects, may be the decoder 1 10. In this case, the decoder 130 operates, at the value estimator 1 16, as a Wiener filter.

In examples, the estimated statistical relationship and/or information 1 1 5' may comprise a normalized matrix A x . The normalized matrix may be a normalized correlation matrix and may be independent from the particular sampled value Y(k, t). The normalized matrix A x may be a matrix which contains relationships among the bins C 0 -C 10 , for example. The normalized matrix Λ χ may be static and may be stored, for example, in a memory.

In examples, the estimated statistical relationship and/or information regarding quantization noise 1 1 9' may comprise a noise matrix A N . This matrix may be a correlation matrix and may represent relationships regarding the noise signal V(k, t), independent from the value of the particular sampled value Y(k, t). The noise matrix A N may be a matrix which estimates relationships among noise signals among the bins C 0 -C 10 , for example, independent of the clean speech value Y(k, t). In examples, a measurer 1 31 (e.g., gain estimator) may provide a measured value 1 31 ' of the previously performed estimate(s) 1 16'. The measured value 1 31 ' may be, for example, an energy value and/or gain γ of the previously performed estimate(s) 1 16' (the energy value and/or gain γ may therefore be dependent on the context 1 14'). In general terms, the estimate 1 16' and the value 1 1 3' of bin under process 123 may be seen as a vector u k,t = \ Y c 0 %c 2 c 3 ··· ^c 10 ] > where Y CQ is the sampled value of the bin 123 (C 0 ) currently under process and X Cl ... J? Clo are the previously obtained values for the context bins 124 (C C w ). It is possible to normalize the vector u It is also

possible to obtain the gain γ as the scalar product of the normalized vector by its transpose, e.g., to obtain γ = z kx z" (where z" t is the transpose of z kx , so that γ is a scalar Real number). A scaler 132 may be used to scale the normalized matrix A x by the gain y, to obtain a scaled matrix 1 32' which keeps into account energy measurement (and/or gain γ) associated to the contest of the bin 123 under process. This is to keep into account that speech signals have large fluctuations in gain. A new matrix A x , which keeps into account the energy, may therefore be obtained. Notably, while matrix A x and matrix A N may be predefined (and/or containing elements pre-stored in a memory), the matrix A x is actually calculated by processing. In alternative examples, instead of calculating the matrix A x , a matrix A x may be chosen from a plurality of pre-stored matrixes A x , each pre-stored matrix A x being associated to a particular range of measured gain and/or energy values.

After having calculated or chosen the matrix A x , an adder 1 33 may be used to add, element by element, the elements of the matrix A x with elements of the noise matrix A N , to obtain an added value 1 33' (summed matrix A x + A N ). In alternative examples, instead of being calculated, the summed matrix A x + A N may be chosen, on the basis of the measured gain and/or energy values, among a plurality of pre-stored summed matrixes. At inversion block 1 34, the summed matrix A x + A N may be inverted to obtain ( A x + A N ) " 1 as value 134'. in alternative examples, instead of being calculated, the inversed matrix ( Λ χ + Α Ν ) ~ ] may be chosen, on the basis of the measured gain and/or energy values, among a plurality of pre-stored inversed matrixes.

The inversed matrix ( A x + A N ) ' X (value 134') may be multiplied by A x to obtain a value 1 35' as A x ( A x + Λ Ν ) ~ ι . In alternative examples, instead of being calculated, the matrix A x ( A x + A N ) ~ l may be chosen, on the basis of the measured gain and/or energy values, among a plurality of pre-stored matrixes.

At this point, at a multiplier 1 36 the vaiue 135' may be multiplied to the vector input signal y. The vector input signal may be seen as a vector y = [y c y c y Cz y c ... y c ] which comprises the nosy inputs associated to the bin 123 to be processed (C 0 ) and the context bins (C-|-C 0 ). The output 136' of the multiplier 136 may therefore be x = A x ( A x + A N ~ 1 y, as for a Wiener filter.

In Fig. 1 .4 there is shown a method 140 according to an example (e.g., one of the examples above). At step 141 , the bin 123 (C 0 ) under process (or process bin) is defined as the bin at the instant t, band k, and sampled value Y(k, t). At step 142 (e.g., processed by the context definer 1 14), the shape of the context is retrieved on the basis of the band k (the shape, dependent on the band k, may be stored in a memory). The shape of the context also defines the context 1 14' after that the instant t and the band k have been taken into consideration. At step 143 (e.g. , processed by the context definer 1 14), the context bins C C 10 ( 1 18', 124) are therefore defined (e.g., the previously processed bins which are in the context) and numbered according to a predefined order (which may be stored in the memory together with the shape and may also be based on the band k). At step 144 (e.g., processed by the estimator 1 15), matrixes may be obtained (e.g. , normalized matrix A x , noise matrix A N , or another of the matrixes discussed above etc.). At step 145 (e.g., processed by the value estimator 1 16), the value for the process bin C 0 may be obtained, e.g., using the Wiener filter. In examples, an energy value associated to the energy (e.g., the gain γ above) may be used as discussed above. At step 146, it is verified if there are other bands associated to the instant t with another bin 126 not processed yet. If there are other bands (e.g., band k+1 ) to be processed, then at step 147 the value of the band is updated (e.g., k++) and a new process bin C 0 is chosen at instant t and band k+1 , to reiterate the operations from step 141 . If at step 146 it is verified that no other bands are to be processed (e.g., as there is no other bin to be processed at a band k+1 ), then at step 148 the time instant t is updated (e.g., or t++) and a first band (e.g., k=1 ) is chosen, to reiterate the operations from step 141 . Reference is made to Fig. 1 .5. While Fig. 1 .5(a) corresponds to Fig. 1 .2 and shows a sequence of sampled values Y(k, t) (each associated to a bin) in a frequency/time space. Fig. 1 .5(b) shows a sequence of sampled values in a magnitude/frequency graph for the time instant t- and Fig. 1 .5(c) shows a sequence of sampled values in a magnitude/frequency graph for the time instant t, which is the time instant associated to the bin 123 (C 0 ) currently under process. The sampled values Y(k, t) are quantized and are indicated in Figs. 1 .5(b) and 1 .5(c). For each bin, a plurality of quantization levels QL(t, k) may be defined (for example, the quantization level may be one of a discrete number of quantization levels, and the number and/or values and/or scales of the quantization levels may be signalled by the encoder, for example, and/or may be signalled in the bitstream 1 1 1 ). The sampled value Y(k, t) will necessarily be one of the quantization levels. The sampled values may be in the Log-domain. The sampled values may be in the perceptual domain. Each of the values of each bin may be understood as one of the quantized levels (which are in discrete number) that can be selected (e.g., as written in the bitstream 1 1 1 ). An upper floor u (ceiling value) and a lower floor I (floor value) are defined for each k and t (the notations u(k, t) and u{k, t) are here avoided for brevity). These ceiling and floor values may be defined by the noise relationship and/or information estimator 1 19. The ceiling and floor values are indeed information related to the quantization cell employed for quantizing the value X(k, t) and give information about the dynamic of quantization noise.

It possible to establish an optimal estimation of the value 1 16' of each bin as the expectation of the conditional likelihood of the value X being between the ceiling value u and the floor value I , provided that the quantized sampled value of the bin 123 (C 0 ) under process and the context bins 124 are equal to the estimated values of the bin under process and of the estimated values of the additional bins of the context, respectively. In this way, it is possible to estimate the magnitude of the bin 123 (C 0 ) under process. It is possible to obtain the expectation value on the basis of mean values (μ) of the clean values X and the standard deviation value (σ) which may be provided by the statistical relationship and/or information estimator, for example.

It is possible to obtain the mean vaiues (μ) of the clean values X and the standard deviation values (σ) on the basis of an procedure, discussed in detail below, which may be iterative.

For example (see also 4.1 .3 and its subsections), the mean value of the clean signal X may be obtained by updating a non-conditional average value ( α ) calculated for the bin 123 under process without considering any context, to obtain a new average value (μ ρ ) which considers the context bins 124 (C C 10 ). At each iteration, the non-conditional calculated average value (/^ ) may be modified using a difference between estimated values (expressed with the vector x c ) for the bin 123 (C 0 ) under process and the context bins and the average values (expressed with the vector μ 2 ) of the context bins 124. These values may be multiplied by values associated to the covariance and/or variance between the bin 123 (C 0 ) under process and the context bins 124 (C C 10 ).

The standard deviation value (σ) may be obtained from variance and covariance relationships (e.g., the covariance matrix ∑ e ( + 1) ( + 1) ) between the bin 123 (C 0 ) under process and the context bins 1 24 (C-|-C 10 ).

An example of a method for obtaining the expectation (and therefore for estimating the X value 1 16') may be provided by the following pseudocode: function estimation (k,t)

// regarding Y(k, t) for obtaining an estimate X (116') for t= 1 to maxlnstants

// sequentially choosing the instant t

for k= 1 to Number of bins at instant t

// cycle all the bins

QL <- GetQuantizationLevels(Y(k,t))

// to determine how many quantization levels are provided for Y(k,t)

l,u <- GetQuantizationLimits(QL, Y(k, t))

// obtaining the quantized limits u and I (e.g., from noise relationship // and/or information estimator 1 19)

μ ηρ , a up <-- U p d a t c S t: a t i s t i c s(k, t, X prev )

// μ ιιρ and σ ιιρ (updated values) are obtained

pdf truncatedGaussian(mu_up, sigma_up : I, u)

// the probability distribution function is calculated

X <- expectation(pdf)

// the expectation is calculated

end for

end for endfunction

4.1 .2. Postfiitering with Complex Spectral Correlations for Speech and Audio

Coding Examples in this section and in its subsections mainly relate to technigues for postfiitering with complex spectral correlations for speech and audio coding.

In the present examples, the following figures are mentioned:

Fig. 2.1 : (a) Context block of size L = 10 (b) Recurrent context-block of the context bin C 2 .

Fig. 2.2: Histograms of (a) Conventional quantized output (b) Quantization error (c) Quantized output using randomization (d) Quantization error using randomization. The input was a an uncorrelated Gaussian distributed signal. Fig. 2.3: Spectrograms of (i) true speech (ii) quantized speech and, (iii) speech quantized after randomization.

Fig. 2.4: Block diagram of the proposed system including simulation of the codec for testing purposes. Fig. 2.5: Plots showing (a) the pSNR and (b) pSNR improvement after postfiitering, and (c) pSNR improvement for different contexts.

Fig.2.6: MUSHRA listening test results a) Scores for all items over all the conditions b) Difference scores for each input pSNR condition averaged over male and female. Oracle, lower anchor and hidden reference scores have been omitted for clarity.

Examples in this section and in the subsection may also refer to and/or explain in detail examples of Figs. 1 .3 and 14, and, more in general, Figs. 1 .1 , 1 .2. , and 1 .5 Present speech codecs achieve a good compromise between quality, bitrate and complexity. However, retaining performance outside the target bitrate range remains challenging. To improve performance, many codecs use pre- and post-filtering techniques to reduce the perceptual effect of quantization- noise. Here, we propose a postfiltering method to attenuate quantization noise which uses the complex spectral correlations of speech signals. Since conventional speech codecs cannot transmit information with temporal dependencies as transmission errors could result in severe error propagation, we model the correlation offline and employ them at the decoder, hence removing the need to transmit any side information. Objective evaluation indicates an average 4 dB improvement in the perceptual SNR of signals using the context-based post-filter, with respect to the noisy signal, and an average 2 dB improvement relative to the conventional Wiener filter. These results are confirmed by an improvement of up to 30 MUSHRA points in a subjective listening test.

4.1.2.1 Introduction

Speech coding, the process of compressing speech signals for efficient transmission and storage, is an essential component in speech processing technologies. It is employed in almost all devices involved in the transmission, storage or rendering of speech signals. While standard speech codecs achieve transparent performance around target bitrates, the performance of codecs suffer in terms of efficiency and complexity outside the target bitrate range [5].

Specifically at lower bitrates the degradation in performance is because large parts of the signal are quantized to zero, yielding a sparse signal which frequently toggles between zero and non-zero. This gives a distorted quality to the signal, which is perceptually characterized as musical noise. Modern codecs like EVS, USAC [3, 5] reduce the effect of quantization noise by implementing postprocessing methods [5, 14], Many of these methods have to be implemented both at the encoder and decoder, hence requiring changes to the core structure of the codec, and sometimes also the transmission of additional side information. Moreover, most of these methods focus on alleviating the effect of distortions rather than the cause for distortions.

The noise reduction techniques widely adopted in speech processing are often employed as pre-filters to reduce background noise in speech coding. However, application of these methods for the attenuation of quantization noise have not been fully explored yet. The reasons for this are (i) information from zero-quantized bins cannot be restored by using conventional filtering techniques alone, and (ii) quantization noise is highly correlated to speech at low bitrates, thus discriminating between speech and quantization-noise distributions for noise reduction is difficult; these are further discussed in Sec. 4.1 .2.2. Fundamentally, speech is a slowly varying signal, whereby it has a high temporal correlation [9]. Recently, MVDR and Wiener filters using the intrinsic temporal and frequency correlation in speech were proposed and showed significant noise reduction potential [1 , 9, 13]. However, speech codecs refrain from transmitting information with such temporal dependency to avoid error propagation as a consequence of information loss. Therefore, application of speech correlation for speech coding or the attenuation of quantization noise has not been sufficiently studied, until recently; an accompanying paper [10] presents the advantages of incorporating the correlations in the speech magnitude spectrum for quantization noise reduction.

The contributions of this work are as follows: (i) modeling the complex speech spectrum to incorporate the contextual information intrinsic in speech, (ii) formulating the problem such that the models are independent of the large fluctuations in speech signals and the correlation recurrence between samples enables us to incorporate much larger contextual information, (iii) obtaining an analytical solution such that the filter is optimal in minimum mean square error sense. We begin by examining the possibility of applying conventional noise reduction techniques for the attenuation of quantization noise, and then model the complex speech spectrum and use it at the decoder to estimate speech from an observation of the corrupted signal. This approach removes the need for the transmission of any additional side information.

4.1.2.2 Modeling and Methodology At low bitrates conventional entropy coding methods yield a sparse signal, which often causes a perceptual artifact known as musical noise. Information from such spectral holes cannot be recovered by conventional approaches like Wiener filtering, because they mostly modify the gain. Moreover, common noise reduction techniques used in speech processing model the speech and noise characteristics and perform reduction by discriminating between them. However, at low bitrates quantization noise is highly correlated with the underlying speech signal, hence making it difficult to discriminate between them. Figs. 2.2-2.3 illustrate these problems; Fig. 2.2(a) shows the distribution of the decoded signal, which is extremely sparse, and Fig.2.2(b) shows the distribution of the quantization noise, for a white Gaussian input sequence. Figs. 2.3(i) & 2.3(ii) depict the spectrogram of the true speech and the decoded speech simulated at a low bitrate, respectively.

To mitigate these problems, we can apply randomization before encoding the signal [2, 7, 18]. Randomization is a type of dithering [1 1 ] which has been previously used in speech codecs [19] to improve perceptual signal quality, and recent works [6, 18] enable us to apply randomization without increase in bitrate. The effect of applying randomization in coding is demonstrated in Fig. 2.2(c) & (d) and Fig. 2.3(c); the illustrations clearly show that randomization preserves the decoded speech distribution and prevents signal sparsity. Additionally, it also lends the quantization noise a more uncorrelated characteristic, thus enabling the application of common noise reduction techniques from speech processing literature [8]. Due to dithering, we can assume that the quantization noise is an additive and uncorrelated normally distributed process, where Y, X and V are the complex-valued short-time frequency domain values of the noisy, clean-speech and noise signals, respectively, k denotes the frequency bin in the time-frame t. In addition, we assume that X and V are zero-mean Gaussian random variables. Our objective is to estimate X kx from an observation Y k as well as using previously estimated samples of x r . We call x c the context of X k

The estimate of the clean speech signal, x, known as the Wiener filter [8], is defined as: χ = Λ χ χ + Λ Ν Γ ! ν, ( where Λ Χ , Λ Ν e C ( + 1) x (c+1) are the speech and noise covariance matrices, respectively, and y e C c+1 is the noisy observation vector with c 4- 1 dimensions, c being the context length. The covariances in Eq. 2.2 represent the correlation between time-frequency bins, which we call the context neighborhood. The covariance matrices are trained off-line from a database of speech signals. Information regarding the noise characteristics is also incorporated in the process, by modeling the target noise-type (quantization noise), similar to the speech signals. Since we know the design of the encoder, we know exactly the quantization characteristics, hence it is a straightforward task to construct the noise covariance Λ Ν .

Context neighborhood: An example of the context neighborhood of size 10 is presented in Fig. 2.1 (a). in the figure, the block C 0 represents the frequency bin under consideration. Blocks , i £ {1,2, . . ,10} are the frequency bins considered in the immediate neighborhood. In this particular example, the context bins span the current time-frame and two previous time-frames, and two lower and upper frequency-bins. The context neighborhood includes only those frequency bins in which the clean speech has already been estimated. The structuring of the context neighborhood here is similar to the coding application, wherein contextual information is used to improve the efficiency of entropy coding [ 2]. In addition to incorporating information from the immediate context neighborhood, the context neighborhood of the bins in the context block are also integrated in the filtering process, resulting in the utilization of a larger context information, similar to MR filtering. This is depicted in Fig 2.1 (b), where the blue line depicts the context block of the context bin C 2 . The mathematical formulation of the neighborhood is elaborated in the following section. Normalized covariance and gain modeling: Speech signals have large fluctuations in gain and spectral envelope structure. To model the spectral fine structure efficiently [4], we use normalization to remove the effect of this fluctuation. The gain is computed during noise attenuation from the Wiener gain in the current bin and the estimates in the previous frequency bins. The normalized covariance and the estimated gain are employed together to obtain the estimate of the current frequency sample. This step is important as it enables us to use the actual speech statistics for noise reduction despite the large fluctuations.

Define the context vector asu k t = [X k t X Ci X c? X Ci ... X C t ] , thus the normalized context vector is z kit = u kft /\\ u k , \\ . The speech covariance is defined as Λ χ = γΑ χ , where Λ χ is the normalized covariance and γ represents the gain. The gain is computed during the post-filtering based on the already processed vaiues as = u fejt u" t , where u k t = X Ci X Cz X i ... X Ci0 ] is the context vector formed by the bin under processed and the already processed values of the context. The normalized covariances are calculated from the speech dataset as follows:

From Eq. 2.3, we observe that this approach enables us to incorporate correlation from a neighborhood much larger than the context size and more information, consequently saving computational resources. The noise statistics is computed as follows:

Λ Ν = H ], where n kx = [N k N Cl N Ci N Cs ... N C10 ] is the context noise vector defined at time instant t and frequency bin k. Note that, in Eq. 2.4, normalization is not necessary for the noise models. Finally, the equation for the estimated clean speech signal is: x = yA x [(yA x ) + A N ]- 1 y

Owing to the formulation, the complexity of the method is linearly proportional to the context size. The proposed method differs from the 2D Wiener filtering in [1 7], in that it operates using the complex magnitude spectrum, whereby there is no need to use the noisy phase to reconstruct the signal unlike conventional methods. Additionally, in contrast to 1 D and 2D Wiener filters which apply a scaler gain to the noisy magnitude spectrum, the proposed filter incorporates information from the previous estimates to compute the vector gain. Therefore, with respect to previous work the novelty of this method lies in the way the contextual information is incorporated in the filter, thus making the system adaptive to the variations in speech signal. 4.1 .2.3 Experiments and Results Proposed method was evaluated using both objective and subjective tests. We used the perceptual SNR (pSNR) [3, 5] as the objective measure, because it approximates human perception and it is already available in a typical speech codec. For subjective evaluation, we conducted a MUSHRA listening test.

4.1.2.3.1 System overview

A system structure is illustrated in Fig. 2.4 (in examples, it may be similar to the TCX mode in 3GPP EVS [3]). First, we apply STFT (block 241 ) to the incoming sound signal 240' to transform it to a signal in the frequency domain (242'). We may use here the STFT instead of the standard MDCT, so that the results are readily transferable to speech enhancement applications. Informal experiments verify that the choice of transform does not introduce unexpected problems in the results [8, 5]. To ensure that the coding noise has least perceptual effect, the frequency domain signal 241 ' is perceptually weighted at block 242 to obtain a weighted sitnal 242'. After a pre-process block 243, we compute the perceptual model at block 244, (e.g., as used in the EVS codec [3]), based on the linear prediction coefficients (LPCs). After weighting the signal with the perceptual envelope, the signal is normalized and entropy coded (not shown). For straightforward reproducibility, we simulated quantization noise at block 244 (which is not necessary part of a marketed product) by perceptually weighted Gaussian noise, following the discussion in Sec. 4.1.2.2. A codedc 242" (which may be the bitstream 1 1 ) may therefore be generated.

Thus, the output 244' of the codec/quantization noise (QN) simulation block 244, in Fig. 2.4, is the corrupted decoded signal. The proposed filtering method is applied at this stage. The enhancement block 246 may acquire the off-line trained speech and noise models 245' from block 245 (which may contain a memory including the off-line models). The enhancement block 246 may comprise, for example, the estimators 1 15 and 1 19. The enhancement block may include, for example, the value estimator 116. Following the noise reduction process, the signal 246' (which may be an example of the signla 1 16') is weighted by the inverse perceptual envelope at block 247 and then, at block 248, transformed back to the time domain to obtain the enhanced, decoded speech signal 249, which may be, for example, a sound ouptut 249.

4.1.2.3.2 Objective evaluation Experimental setup: The process is divided into training and testing phases. In the training phase, we estimate the static normalized speech covariances for context sizes L e (1,2. .1 } from the speech data. For training, we chose 50 random samples from the training set of the TIMIT database [20]. All signals are resampled to 12.8 kHz, and a sine window is applied on frames of size 20 ms with 50% overlap. The windowed signals are then transformed to the frequency domain. Since the enhancement is applied in the perceptual domain, we also model the speech in the perceptual domain. For each bin sample in the perceptual domain, the context neighborhoods are composed into matrices, as described in section 4.1 .2.2, and the covariances are computed. We similarly obtain the noise models using perceptually weighted Gaussian noise.

For testing, 105 speech samples are randomly selected from the database. The noisy samples are generated as the additive sum of the speech and the simulated noise. The levels of speech and noise are controlled such that we test the method for pSNR ranging from 0-20 dB with 5 samples for each pSNR level, to conform to the typical operating range of codecs. For each sample, 14 context sizes were tested. For reference, the noisy samples were enhanced using an oracie filter, wherein the conventional Wiener filter employs the true noise as the noise estimate, i.e., the optimal Wiener gain is known.

Evaluation results: The results are depicted in Fig. 2.5. The output pSNR of the conventional Wiener filter, the oracle filter, and noise attenuation using filters of context length L = {1,14} are illustrated in Fig. 2.5(a). In Fig. 2.5(b), the differential output pSNR, which is the improvement in the output pSNR with respect to the pSNR of the signal corrupted by quantization noise, is plotted over a range of input pSNR for the different filtering approaches. These plots demonstrate that the conventional Wiener filter significantly improves the noisy signal, with 3 dB improvement at lower pSNRs and 1 dB improvement at higher pSNRs. Additionally, the contextual filter L = 14 shows 6 dB improvement at higher pSNRs and around 2 dB improvement at a lower pSNR.

Fig. 2.5(c) demonstrates the effect of context size at different input pSNRs. It can be observed that at lower pSNRs the context size has significant impact on noise attenuation; the improvement in pSNR increases with increase in context size. However, the rate of improvement with respect to context size decreases as the context size increases, and tends towards saturation for L > 10. At higher input pSNRs, the improvement reaches saturation at relatively smaller context size.

4.1 .2.3.3 Subjective evaluation

We evaluated the quality of the proposed method with a subjective MUSHRA listening test [16]. The test comprised of six items and each item consisted of 8 test conditions. Listeners, both experts and non-experts, between the age 20 to 43 participated. However, only the ratings of those participants who scored the hidden reference greater than 90 MUSHRA points were selected, resulting in 15 listeners whose scores were included for this evaluation. Six sentences were randomly chosen from the TIMIT database to generate the test items. The items were generated by adding perceptual noise, to simulate coding noise, such that the resulting signals' pSNR were fixed at 2, 5 and 8 dB. For each pSNR, one male and one female item was generated. Each item consisted of 8 conditions: Noisy (no enhancement), ideal enhancement with the noise known (oracle), conventional Wiener filter, samples from the proposed method with context sizes one (L=1 ), six (L=6), fourteen (L=14), in addition to the 3.5kHz low-pass signal as the lower anchor and the hidden reference, as per the MUSHRA standard. The results are presented in Fig. 2.6. From Fig. 2.6(a), we observe that the proposed method, even with the smallest context of L - 1 , consistently shows an improvement over the the corrupted signal, in most cases with no overlap between the confidence intervals. Between the conventional Wiener filter and the proposed method, mean of the condition L = 1 is rated around 10 points higher on average. Similarly, L = 14 is rated around 30 MUSHRA points higher than the Wiener filter. For all the items, the scores of L = 14 do not overlap with the Wiener filter scores, and is close to the ideal condition, especially at higher pSNRs. These observations are further supported in the difference plot, illustrated in Fig. 2.6(b). The scores for each pSNR were averaged over the male and female items. The difference scores were obtained by keeping the scores of the Wiener condition as reference and obtaining the difference between the three context-size conditions and the no enhancement condition. From these results we can conclude that, in addition to dithering, which can improve the perceptual quality of the decoded signal [1 1 ], applying noise reduction at the decoder using conventional techniques and further, employing models incorporating correlation inherent in the complex speech spectrum can improve pSNR significantly.

4.1 .2.4 Conclusion We propose a time-frequency based filtering method for the attenuation of quantization noise in speech and audio coding, wherein the correlation is statistically modeled and used at the decoder. Therefore, the method does not require the transmission of any additional temporal information, thus eliminating chances of error propagation due to transmission loss. By incorporating the contextual information, we observe pSNR improvement of 6 dB in the best case and 2 dB in a typical application; subjectively, an improvement of 10 to 30 MUSHRA points is observed.

In this section, we fixed the choice of the context neighborhood for a certain context size. While this provides a baseline for the expected improvement based on context size, it is interesting to examine the impact of choosing an optimal context neighborhood. Additionally, since the MVDR filter showed significant improvement in background noise reduction, a comparison between MVDR and the proposed MMSE method should be considered for this application.

In summary, we have shown that the proposed method improves both subjective and objective quality, and it can be used to improve the quality of any speech and audio codecs.

4.1 .2.5 References [1 ] Y. Huang and J. Benesty, "A multi-frame approach to the frequency-domain single-channel noise reduction problem," IEEE Transactions on Audio, Speech, and Language Processing, vol. 20, no. 4, pp. 1256-1269, 2012. [2] T. Backstrom, F. Ghido, and J. Fischer, "Blind recovery of perceptual models in distributed speech and audio coding," in Interspeech. 1 em plus 0.5em minus 0.4em ISCA, 2016, pp. 2483-2487.

[3] "EVS codec detailed algorithmic description; 3GPP technical specification," http://www.3gpp.org/DynaReport 26445.htm . [4] T. Backstrom, "Estimation of the probability distribution of spectral fine structure in the speech source," in Interspeech, 2017. [5] Speech Coding with Code-Excited Linear Prediction. 1 em plus

0.5em minus 0.4em Springer, 2017.

[6] T. Backstrom, J. Fischer, and S. Das, "Dithered quantization for frequency-domain speech and audio coding," in Interspeech, 2018.

[7] T. Backstrom and J. Fischer, "Coding of parametric models with randomized quantization in a distributed speech and audio codec," in Proceedings of the 12. ITG Symposium on Speech Communication. 1 em plus 0.5em minus 0.4em VDE, 2016, pp. 1-5.

[8] J. Benesty, M. M. Sondhi, and Y. Huang, Springer handbook of speech processing. 1 em pius 0.5em minus 0.4em Springer Science & Business Media, 2007. [9] J. Benesty and Y. Huang, "A single-channel noise reduction

MVDR filter," in ICASSP. 1 em plus 0.5em minus 0.4em IEEE, 201 1 , pp. 273-276.

[10] S. Das and T. Backstrom, "Postfiltering using log-magnitude spectrum for speech and audio coding," in Interspeech, 2018.

[11] R. W. Floyd and L. Steinberg, "An adaptive algorithm for spatial gray-scale," in Proc. Soc. Inf. Disp. , vol. 17, 1976, pp. 75-77. [12] G. Fuchs, V. Subbaraman, and M. Multrus, "Efficient context adaptive entropy coding for real-time applications," in ICASSP. 1 em plus 0.5em minus 0.4em IEEE, 201 1 , pp. 493-496.

[13] H. Huang, L. Zhao, J. Chen, and J. Benesty, "A minimum variance distortionless response filter based on the bifrequency spectrum for single-channel noise reduction," Digital Signal Processing, vol. 33, pp. 69- 179, 2014. [14] M. Neuendorf, P. Goumay, M. Multrus, J. Lecomte, B. Bessette, R. Geiger, S. Bayer, G. Fuchs, J. Hilpert, N. Rettelbach et al. , "A novel scheme for low bitrate unified speech and audio coding-MPEG RMO," in Audio Engineering Society Convention 126. 1 em plus 0.5em minus 0.4em Audio Engineering Society, 2009.

[15] , "Unified speech and audio coding scheme for high quality at low bitrates," in ICASSP. 1 em plus 0.5em minus 0.4em IEEE, 2009, pp. 1 -4.

[16] M. Schoeffler, F. R. Stoter, B. Edler, and J. Herre, "Towards the next generation of web-based experiments: a case study assessing basic audio quality following the ITU-R recommendation BS. 1534 (MUSHRA)," in 1st Web Audio Conference. 1 em plus 0.5em minus 0.4em Citeseer, 2015.

[17] Y. Soon and S. N. Koh, "Speech enhancement using 2-D Fourier transform," IEEE Transactions on speech and audio processing, vol. 1 1 , no. 6, pp. 717-724, 2003. [18] T. Backstrom and J. Fischer, "Fast randomization for distributed low-bitrate coding of speech and audio," IEEE/ACM Trans. Audio, Speech, Lang. Process. , 20 7.

[ 9] J.-M. Valin, G. Maxwell, T. B. Terriberry, and K. Vos, "hiigh- quality, low-delay music coding in the OPUS codec," in Audio Engineering Society Convention 135. 1 em plus 0.5em minus 0.4em Audio Engineering Society, 201 3.

[20] V. Zue, S. Seneff, and J. Glass, "Speech database development at MIT: TIMIT and beyond," Speech Communication, vol. 9, no. 4, pp. 351— 356, 1 990.

4 1 .3 Postfilterir Using Log-Magnitude Spectrum for Speech and

Audio Coding Examples in this section and in the subsections mainly refer to techniques for postfiltering using log-magnitude spectrum for speech and audio coding.

Examples in this section and in the subsections may better specify particular cases of Figs. 1 .1 and 1 .2, for example. In the present example, the following figures are mentioned:

Fig. 3.1 : Context neighborhood of size C=10. The previous estimated bins are chosen and ordered based on the distance from the current sample.

Fig. 3.2: Histograms of speech magnitude in (a) Linear domain (b) Log domain, in an arbitrary frequency bin. Fig. 3.3: Training of speech models.

Fig. 3.4: Histograms of Speech distribution (a) True (b) Estimated: ML (c) Estimated: EL.

Fig. 3.5: Plots representing the improvement of in SNR using the proposed method for different context sizes. Fig. 3.6: Systems overview.

Fig. 3.7: Sample plots depicting the true, quantized and the estimated speech signal (i) in a fixed frequency band over ail time frames (ii) in a fixed time frame over all frequency bands.

Fig. 3.8: Scatter plots of the true, quantized and estimated speech in zero- quantized bins for (a) C=1 , (b) C=40. The plots demonstrate the correlation between the estimated and true speech.

Advanced coding algorithms yield high quality signals with good coding efficiency within their target bit-rate ranges, but their performance suffer outside the target range. At lower bitrates, the degradation in performance is because the decoded signals are sparse, which gives a perceptually muffled and distorted characteristic to the signal. Standard codecs reduce such distortions by applying noise filling and post-filtering methods. Here, we propose a post-processing method based on modeling the inherent time- frequency correlation in the log-magnitude spectrum. A goal is to improve the perceptual SNR of the decoded signals and, to reduce the distortions caused by signal sparsity. Objective measures show an average improvement of 1.5 dB for input perceptual SNR in range 4 to 18 dB. The improvement is especially prominent in components which had been quantized to zero.

4.1 .3.1 Introduction

Speech and audio codecs are integral parts of most audio processing applications and recently we have seen rapid development in coding standards, such as MPEG USAC [18, 16], and 3GPP EVS [13]. These standards have moved towards unifying audio and speech coding, enabled the coding of super wide band and full band speech signals as well as added support of voice over IP. The core coding algorithms within these codecs, ACELP and TCX, yield perceptually transparent quality at moderate to high bitrates within their target bitrate ranges. However, the performance degrades when the codecs operate outside this range. Specifically, for low- bitrate coding in the frequency-domain, the decline in performance is because fewer bits are at disposal for encoding, whereby areas with lower energy are quantized to zero. Such spectral holes in the decoded signal renders a perceptually distorted and muffled characteristic to the signal, which can be annoying for the listener.

To obtain satisfactory performance outside target bitrate ranges, standard codecs like CELP employ pre- and post-processing methods, which are largely based on heuristics. In particular, to reduce the distortion caused by quantization-noise at low bitrates, codecs implement methods either in the coding process or strictly as a post-filter at the decoder. Formant enhancement and bass post-filters are common methods [9] which modify the decoded signal based on the knowledge of how and where quantization noise perceptually distorts the signal. Formant enhancement shapes the codebook to intrinsically have less energy in areas prone to noise and is applied both at the encoder and decoder. In contrast, bass post-filter removes the noise like component between harmonic lines and is implemented only in the decoder.

Another commonly used method is noise filling, where pseudo-random noise is added to the signal [16], since accurate encoding of noise-like components is not essential for perception. In addition, the approach aids in reducing the perceptual effect of distortions caused by sparsity on the signal. The quality of noise-filling can be improved by parameterizing the noise-like signal, for example, by its gain, at the encoder and transmitting the gain to the decoder.

The advantage of post-filtering methods over the other methods is that they are only implemented in the decoder, whereby they do not require any modifications to the encoder-decoder structure, nor do they need any side information to be transmitted. However, most of these methods focus on solving the effect of the problem, rather than address the cause.

Here, we propose a post-processing method to improve signal quality at low bitrates, by modeling the inherent time-frequency correlation in speech magnitude spectrum and, investigating the potential of using this information to reduce quantization noise. The advantages of this approach are that it does not require the transmission of any side information and operates using solely the quantized signal as the observation and the speech models trained offline; Since it is applied at the decoder after the decoding process, it does not require any changes to the core structure of the codec; The approach addresses the signal distortions by estimating the information lost during the coding process using a source model. The novelties of this work lies in (i) incorporating the formant information in speech signals using log- magnitude modeling, (ii) representing the inherent contextual information in the spectral magnitude of speech in the log-domain as a multivariate Gaussian distribution (iii) finding the optimum, for the estimation of true speech, as the expected likelihood of a truncated Gaussian distribution.

4.1.3.2 Speech Magnitude Spectrum Models

Formants are the fundamental indicator of linguistic content in speech and are manifested by the spectral magnitude envelope of speech, therefore the magnitude spectrum is an important part of source modeling [10, 21 ]. Prior research has shown that frequency coefficients of speech are best represented by a Laplacian or Gamma distribution [1 , 4, 2, 3]. Hence, the magnitude-spectrum of speech is an exponential distribution, as shown in Fig. 3.2a. The figure demonstrates that the distribution is concentrated at low magnitude values. This is difficult to use as a model because of numerical accuracy issues. Furthermore, it is hard to ensure the estimates are positive just by using generic mathematical operations. We address this problem by transforming the spectrum to the log-magnitude domain. Since the logarithm is non-linear, it redistributes the magnitude-axis such that the distribution of a exponentially distributed magnitude resembles the normal distribution in the logarithmic representation (Fig. 3.2b). This enables us to approximate the distribution of the log-magnitude spectrum using a Gaussian probability density function (pdf).

In recent years, contextual information in speech has attracted a growing interest [1 1 ]. The inter-frame and inter-frequency correlation information have been explored previously in acoustic signal processing, for noise reduction [1 1 , 5, 14]. The MVDR and Wiener filtering techniques employ the previous time- or frequency-frames to obtain an estimate of the signal in the current time-frequency bin. The results indicate a significant improvement in the quality of the output signal. In this work, we use similar contextual information to model speech. Specifically, we explore the plausibility of using the log-magnitude to model the context and, representing it using multivariate Gaussian distributions. The context neighborhood is chosen based on the distance of the context bin to the bin under consideration. Fig. 3.1 illustrates a context neighborhood of size 10 and indicates the order in which the previous estimates are assimilated into the context vectors.

The overview of the modeling (training) process 330 is presented in Fig. 3.3. The input speech signal 331 is transformed to a frequency domain signal 332' the frequency domain by windowing and then applying the short-time Fourier transform (STFT) at block 332. The frequency domain signal 332' is then pre-processed at block 333 to obtain a pre-processed signal 333'. The pre-processed signal 333' is used to derived a perceptual model by computing for example a perceptual envelope similar to CELP [7, 9]. The perceptual model is employed at block 334for perceptually weight the frequency domain signal 332' to obtain a perceptually weighted signal 334'. Finally, the context vectors (e.g., the bins that will constitute the context for each bin to be processed) 335' are extracted for each sample frequency-bin at block 335, and then the covariance matrix 336' for each frequency band is estimated at block 336, thus providing the required speech models.

In other words, the trained models 336' comprise:

- the rules for defining the context (e.g., on the basis of the frequency band k); and/or

- a model of the speech (e.g., vaiues which will be used for the normalized covariance matrix Λ χ ) used by the estimator 1 15 for generating statistical relationships and/or information 1 15' between and/or information regarding the bin under process and at least one additional bin forming the context; and/or - a model of the noise (e.g., quantization noise), which will be used by the estimator 1 19 for generating the statistical relationships and/or information of the noise (e.g. , values which will be used for defining the matrix Λ η , for example). We explored context sizes up to 40, which includes approximately four previous time frames, lower and upper frequency bins, each. Note that we operate with STFT instead of MDCT which is used in standard codecs, in order to keep this work extensible to enhancement applications. Expansion of this work to MDCT is ongoing and informal tests provide insights similar to this document.

4.1 .3.3 Problem formulation

Our objective is to estimate the clean speech signal from the observation of the noisy decoded signal using the statistical priors. To this end, we formulate the problem as the maximum likelihood (ML) of the current sample given the observation and the previous estimates. Assume a sample x has been quantized to a quantization level Q e [l, u] . We can then express our optimization problem as: x = argmax P(X\X C = x c ) subject to,

x l≤X≤u

(3.1 ) where x is the estimate of the current sample, I and u are the lower and upper limits of the current quantization bins, respectively, and, P(a 1 \a 2 ) is the conditional probability of , , given a 2 . x c is the estimated context vector. Fig. 3.1 illustrates the construction of a context vector of size C = 10, wherein the numbers represent the order in which the frequency bins are incorporated. We obtain the quantization levels from the decoded signal and from our knowledge of the quantization method used in the codec, we can define the quantization limits; the lower and upper limits of a specific quantization level is defined midway between previous and subsequent levels, respectively.

To illustrate the performance of Eq. 3.1 , we solved it using generic numerical methods. Fig.3.4 illustrates the results through distributions of the true speech (a) and estimated speech (b), in bins quantized to zero. We scale the bins such that the varying I and u are fixed to 0,1, respectively, in order to analyze and compare the relative distribution of the estimates within a quantization bin. In (b) we observe a high data density around 1, which implies that the estimates are biased towards the upper limits. We shall refer to this as the edge-problem. To mitigate this problem, we define the speech estimate as the expected likelihood (EL) [17, 8], as follows: x = E[P(X\X C = x c )| subjectto.

l≤X≤u

(3.2)

The resulting speech distribution using EL is demonstrated in Fig. 3.4c, indicating a relatively better match between the estimated-speech and the true-speech distributions. Finally, to obtain an analytical solution, we incorporate the constraint condition into the modeling itself, whereby we model the distribution as a truncated Gaussian pdf [12]. In appendices A & B (4.1.3.6.1 and 4.1.3.6.2), we demonstrate how the solution can be obtained as a truncated Gaussian. The following algorithm presents an overview of the estimation method.

Ri'ij litre: Quantized .signal V " . prior-models C

function ESTI ATlONiY. C)

f«»r frciiH ' = 1 : N do

for b = 1 ; Leng1h{Y {frame)) do

/i,,;,. <j 7J/ < s— Update S tai i$tics(C . X r ,.,·...)

pdf +- Triiri(X{ttGaii 8iaii(ji , (j lS}t , l(b ' nib))

X E pect a t ion(pdf ) 4.1.3.4 Experiments and results

Our objective is to evaluate the advantage of modeling the log-magnitude spectrum. Since envelope models are the main method for modeling the magnitude spectrum in conventional codecs, we evaluate the effect of statistical priors both in terms of the whole spectrum as well as only for the envelope. Therefore, besides evaluating the proposed method for the estimation of speech from the noisy magnitude spectrum of speech, we also test it for the estimation of the spectral envelope from an observation of the noisy envelope. To obtain the spectral envelope, after transforming the signal to the frequency domain, we compute the Cepstrum and retain the 20 lower coefficients and transform it back to the frequency domain. The next steps of envelope modeling are the same as spectral magnitude modeling presented in Sec. 4.1.3.2 and Fig. 3.3, i.e. obtaining the context vector and covariance estimation. 4.1.3.4.1 System overview

A general block diagram of a system 360 is presented in Fig. 3.6. At the encoder 360a, signals 361 are divided into frames (e.g., of 20 ms with 50% overlap and Sine windowing, for example). The speech input 36 may then be transformed at block 362 to a frequency domain signal 362' using the STFT, for example. After pre-processing at block 363 and perceptually weighting at block 364 the signal by the spectral envelope, the magnitude spectrum is quantized at block 365 and entropy coded at block 366 using arithmetic coding [19], to obtain the encoded signal 366 (which may be an example of the bitstream 1 1 ). At the decoder 360b, the reverse process is implemented at block 367 (which may be an example of the bitstream reader 1 13) to decode the encoded signal 366'. The decoded signal 366' may be corrupted by quantization noise and our purpose is to use the proposed post-processing method to improve output quality. Note that we apply the method in the perceptually weighted domain. A Log-transform block 368 is provided.

A post-filtering block 369 (which may implement the elements 1 14, 115, 1 19, 1 16, and/or 130 discussed above) permits to reduce the effects of the quantization noise as discussed above, on the basis of speech models which may be, for example, the trained models 336' and/or rules for defining the context (e.g., on the basis of the frequency band k) and/or statistical relationships and/or information 1 15' (e.g., normalized covariance matrix Λ χ ) between and/or information regarding the bin under process and at least one additional bin forming the context and/or statistical relationships and/or information 1 19' (e.g., matrix Λ Ν ) regarding noise (e.g., quantization noise.

After post-processing, the estimated speech is transformed back to the temporal domain by applying the inverse perceptual weights at block 369a and the inverse frequency transform at block 369b. We use true phase to reconstruct the signal back to temporal domain.

4.1 .3.4.2 Experimental setup

For training we used 250 speech samples from the training set of the TIMIT database [22]. The block diagram of the training process is presented in Fig. 3.3. For testing, 10 speech samples were randomly chosen from the test set of the database. The codec is based on the EVS codec [6] in TCX mode and we chose the codec parameters such that the perceptual SNR (pSNR) [6, 9] is in the range typical to codecs. Therefore, we simulated coding at 12 different bitrates between 9.6 to 128 kbps, which gives pSNR values in the approximate range of 4 and 18 dB. Note that the TCX mode of EVS does not incorporate post-filtering. For each test case, we apply the post-filter to the decoded signal with context sizes e{1 ,4,8,10,14,20,40}. The context vectors are obtained as per the description in Sec. 4.1.3.2 and illustration in Fig. 3.1 . For tests using the magnitude spectrum, the pSNR of the post- processed signal is compared against the pSNR of the noisy quantized signal. For spectral envelope based tests, the signal-to-Noise Ratio (SNR) between the true and the estimated envelope is used as the quantitative measure. 4.1 .3.4.3 Results and analysis

The average of the qualitative measures over the 10 speech samples are plotted in Fig. 3.4. Plots (a) and (b) represent the evaluation results using the magnitude spectrum and, plots (c) and (d) correspond to the spectral envelope tests. For both, the spectrum and the envelope, incorporation of contextual information shows a consistent improvement in the SNR. The degree of improvement is illustrated in plots (b) and (d). For magnitude spectrum, the improvement ranges between 1 .5 and 2.2 dB over all the context at low input pSNR, and from 0.2 to 1 .2 dB higher input pSNR. For spectral envelopes, the trend is similar; the improvement over context is between 1 .25 to 2.75 dB at lower input SNR, and from 0.5 to 2.25 at higher input SNR. At around 10dB input SNR, the improvement peaks for all context sizes.

For the magnitude spectrum, the improvement in quality between context size 1 and 4 is significantly large, approximately 0.5 dB over all input pSNRs. By increasing the context size we can further improve the pSNR, but the rate of improvement is relatively lower for sizes from 4 to 40. Also, the improvement is considerably lower at higher input pSNRs. We conclude that a context size around 10 samples is a good compromise between accuracy and complexity. However, the choice of context size can also depend on the target device for processing. For instance, if the device has computational resources at disposal, a high context size can be employed for maximum improvement. Fig. 3.7: Sample plots depicting the true, quantized and the estimated speech signal (i) in a fixed frequency band over all time frames (ii) in a fixed time frame over all frequency bands.

Performance of the proposed method is further illustrated in Figs. 3.7- 3.8, with an input pSNR of 8.2 dB. A prominent observation from ail plots in Fig. 3.7 is that, particularly in bins quantized to zero the proposed method is able to estimate magnitude which is close to the true magnitude. Additionally from Fig. 3.7(ii), the estimates seem to follow the spectral envelope, whereby we can conclude that Gaussian distributions pre-dominantly incorporate spectral envelope information and not so much of pitch information. Hence, additional modeling methods for the pitch may also be addressed.

The scatter plots in Fig. 3.8 represent the correlation between the true, estimated and quantized speech magnitude in zero-quantized bins for C = 1 and C = 40. These plots further demonstrate that context is useful in estimating speech in bins where no information exists. Thus this method can be beneficial in estimating spectral magnitudes in noise-filling algorithms. In the scatter plots, the quantized, true and estimated speech magnitude spectrum are represented by red, black and blue points, respectively; We observe that while the correlation is positive for both sizes, the correlation is significantly higher and more defined for C - 40.

4.1 .3.5 Discussion and conclusions

In this sections, we investigated the use of contextual information inherent in speech for the reduction of quantization noise. We propose a post- processing method with focus on estimating speech samples at the decoder, from the quantized signal using statistical priors. Results indicate that including speech correlation not only improves the pSNR, but also provide spectral magnitude estimates for noise filling algorithms. While a focus of this paper was modeling the spectra! magnitude, a joint magnitude- phase modeling method, based on current insights and the results from an accompanying paper [20], is the natural next step.

This section also begins to tread on spectral envelope restoration from highly quantized noisy envelopes by incorporating information for the context neighborhood.

4.1 .3.6 Appendices

4.1 .3.6.1 Appendix A: Truncated Gaussian pdf Let us define Λ (α) = , where μ, σ are the

statistical parameters of the distribution and erf is the error function. Then, expectation of a univariate Gaussian random variable X is computed as:

Conventionally, when X [-∞,∞] , solving Eq. 3.3 results in E (X) = μ . However, for a truncated Gaussian random variable, with I < X < u, the relation is

(3-4) which yields the following equation to compute the expectation of a truncated univariate Gaussian random variable:

E(X\l / ί« ΗΛ ίΟ

< X < u) - μ - a - (3.5)

π

4.1 .3.6.2 Appendix B: Conditional Gaussian parameter Let the context vector be defined as x = [x 1 , x 2 ] T , wherein ¾ 6 represents the current bin under consideration, and x 2 e R CX1 is the context. Then, x e M^ "1 ^ 1 , where C is the context size. The statistical models are represented by the mean vector μ e E ( +1)Z1 , and the covariance matrix ∑ e M (C+1) (C+1) , such that μ = [μ 1 , μ 2 ] τ with dimensions same as x t and x 2 , and the covariance as

11 '12

∑ = 21 '22 (3.6)

∑ij are partitions of ∑ with dimensions ∑ i e R 1X1 , ∑ 22 e R cxc , ∑ 12 e U [XC and ∑2 i e R CX1 . Thus, the updated statistics of the distribution of the current bin based on the estimated context is [1 5]: ηρ = + ∑12∑22 (X - ½)

(3.7) σΐφ = ∑11 """"" ^12 ^22 1 ^21 · (3.8)

4.1 .3.7 References [1 ] J. Porter and S. Boll, "Optimal estimators for spectral restoration of noisy speech," in ICASSP, vol. 9, Mar 1984, pp. 53-56.

[2] C. Breithaupt and R. Martin, "MMSE estimation of magnitude-squared DFT coefficients with superGaussian priors," in ICASSP, vol. 1 , April 2003, pp. I-896-I-899 vol.1 . [3] T. H. Dat, K. Takeda, and F. Itakura, "Generalized gamma modeling of speech and its online estimation for speech enhancement," in ICASSP, vol. 4, March 2005, pp. iv/ 81-iv/ 84 Vol. 4. [4] R. Martin, "Speech enhancement using MMSE short time spectral estimation with gamma distributed speech priors," in ICASSP, vol. 1 , May 2002, pp. I-253-I-256.

[5] Y. Huang and J. Benesty, "A multi-frame approach to the frequency- domain single-channel noise reduction problem," IEEE Transactions on Audio, Speech, and Language Processing, vol. 20, no. 4, pp. 1256-1269, 2012.

[6] "EVS codec detailed algorithmic description; 3GPP technical specification," http://www.3gpp.org/DynaReport/26445.htm. [7] T. Backstrom and C. R. Helmrich, "Arithmetic coding of speech and audio spectra using TCX based on linear predictive spectral envelopes," in ICASSP, April 2015, pp. 5127-5131.

[8] Y. I. Abramovich and O. Besson, "Regularized covariance matrix estimation in complex ellipticaily symmetric distributions using the expected likelihood approach part 1 : The over-sampled case," IEEE Transactions on Signal Processing, vol. 61 , no. 23, pp. 5807-5818, 2013.

[9] T. Backstrom, Speech Coding with Code-Excited Linear Prediction. 1 em plus 0.5em minus 0.4em Springer, 2017.

[10] J. Benesty, M. M. Sondhi, and Y. Huang, Springer handbook of speech processing. 1 em plus 0.5em minus 0.4em Springer Science & Business Media, 2007.

[1 1 ] J. Benesty and Y. Huang, "A single-channel noise reduction MVDR filter," in ICASSP. 1 em plus 0.5em minus 0.4em IEEE, 201 1 , pp. 273-276.

[12] N. Chopin, "Fast simulation of truncated Gaussian distributions," Statistics and Computing, vol. 21 , no. 2, pp. 275-288, 201 1. [ 3] M. Dietz, M. Multrus, V. Eksler, V. Malenovsky, E. Norvell, H. Pobloth, L. Miao, Z. Wang, L. Laaksonen, A. Vasilache et al., Overview of the EVS codec architecture," in ICASSP. em plus 0.5em minus 0.4em IEEE, 2015, pp. 5698-5702. [14] H. Huang, L. Zhao, J. Chen, and J. Benesty, "A minimum variance distortionless response filter based on the bifrequency spectrum for single- channel noise reduction," Digital Signal Processing, vol. 33, pp. 169-179, 2014.

[15] S. Korse, G. Fuchs, and T. Backstrom, "GMM-based iterative entropy coding for spectral envelopes of speech and audio," in ICASSP. 1 em plus 0.5em minus 0.4em IEEE, 2018.

[16] M. Neuendorf, P. Gournay, M. Multrus, J. Lecomte, B. Bessette, R. Geiger, S. Bayer, G. Fuchs, J. Hilpert, N. Rettelbach et al., "A novel scheme for low bitrate unified speech and audio coding-MPEG RM0," in Audio Engineering Society Convention 126. 1 em plus 0.5em minus 0.4em Audio Engineering Society, 2009.

[17] E. T. Northardt, I. Bilik, and Y. I. Abramovich, "Spatial compressive sensing for direction-of-arrival estimation with bias mitigation via expected likelihood," IEEE Transactions on Signal Processing, vol. 61 , no. 5, pp. 1 183-1 195, 2013.

[18] S. Quackenbush, "MPEG unified speech and audio coding," IEEE MultiMedia, vol. 20, no. 2, pp. 72-78, 2013.

[19] J. Rissanen and G. G. Langdon, "Arithmetic coding," IBM Journal of research and development, vol. 23, no. 2, pp. 149-162, 1979. [20] S. Das and T. Backstrom, "Postfiltering with complex spectral correlations for speech and audio coding," in Interspeech, 2018. [21 ] T. Barker, "Non-negative factorisation techniques for sound source separation," Ph.D. dissertation, Tampere University of Technology, 201 7.

[22] V. Zue, S. Seneff, and J. Glass, "Speech database development at MIT: TIMIT and beyond," Speech Communication, vol. 9, no. 4, pp. 351 - 356, 1990.

4.1 .4 Further examples 4.1 .4.1 Systems structure

The proposed method applies filtering in the time-frequency domain, to reduce noise. It is designed especially for attenuation of quantization noise of a speech and audio codec, but it is applicable to any noise reduction task. Fig. 1 illustrates a system's structure.

The noise attenuation algorithm is based on optimal filtering in a normalized time-frequency domain. This contains the following important details:

1 . To reduce complexity while retaining performance, filtering is applied only to the immediate neighborhood of each time-frequency bin. This neighborhood is here called the context of the bin.

2. Filtering is recursive in the sense that the context contains estimates of the clean signal, when such are available. In other words, when we apply noise attenuation in iteration over each time-frequency bin, those bins which have already been processed, are fed back to the following iterations (see Fig. 2). This creates a feedback loop similar to autoregressive filtering. The benefits are two-fold:

3. Since the previously estimated samples use a different context than the current sample, we are effectively using a larger context in the estimation of the current sample. By using more data, we are likely to obtain better quality.

4. The previously estimated samples are generally not perfect estimates, which means that the estimates have some error. By treating the previously estimated samples as if they were clean samples, we are biasing the current sample to similar errors as the previously estimated samples. Though this can increase the actual error, the error then better conforms to the source model, that is, the signal resembles more the statistics of the desired signal. In other words, for a speech signal, the filtered speech would better resemble speech, even if absolute error is not necessarily minimized.

5. The energy of the context has high variation both over time and frequency, yet the quantization noise energy is effectively constant, if we assume that the quantization accuracy is constant. Since optimal filters are based on covariance estimates, the amount of energy that the current context happens to have, thus has a large effect on the covariances and consequently, on the optimal filter. To take into account such variations in energy, we must apply normalization in some part of the process. In the current implementation, we normalize the covariance of the desired source to match the input context before processing by the norm of the context (see Fig. 4.3). Other implementations of the normalization are readily possible, depending on the requirements of the overall framework.

6. In the current work, we have used Wiener filtering since it is a well-known and -understood method for deriving optimal filters. It is clear that an engineer skilled in the art can choose any other filter design of his choice, such as the minimum variance distortionless response (MVDR) optimization criteria.

Fig. 4.2 is an illustration of the recursive nature of examples of a proposed estimation. For each sample, we extract the context which has samples from the noisy input frame, estimates of the previous clean frames and estimates of previous samples in the current frame. These contexts are then used to find an estimate of the current sample, which then jointly form the estimate of the clean current frame.

Fig. 4.3 shows an optimal filtering of a single sample from its context, including estimation of the gain (norm) of the current context, normalization (scaling) of the source covariance using that gain, calculation of the optimal filter using the scaled covariance of the desired source signal and the covariance of the quantization noise, and finally, applying the optimal filter to obtain an estimate of the output signal. 4.1 .4.2 Benefit of proposal in comparison to . rior art

4.4.4.2.1 Conventional coding approaches

A central novelty of a proposed method is that it takes into account statistical properties of the speech signal, in a time-frequency representation over time. Conventional communication codecs, such 3GPP EVS, use statistics of the signal in the entropy coder and source modeling only over frequencies within the current frame [1 ]. Broadcast codecs such as MPEG USAC do use some time-frequency information in their entropy coders also over time, but only to a limited extent [2].

The reason for the aversion from using inter-frame information is that if information is lost in transmission, then we would be unable to correctly reconstruct the signal. Specifically, we do not loose only that frame which is lost, but because the following frames depend on the lost frame, also the following frames would be either incorrectly reconstructed or completely lost. Using inter-frame information in coding thus leads to significant error propagation in case of frameloss.

In contrast, the current proposal does not require transmission of inter-frame information. The statistics of the signal are determined off-line in the form of covariance matrices of the context for both the desired signai and the quantization noise. We can therefore use inter-frame information at the decoder, without risking error propagation, since the inter-frame statistics are estimated off-line.

The proposed method is applicable as a post-processing method for any codec. The main limitation is that if a conventional codec operates on a very low bitrate, then significant portions of the signal are quantized to zero, which reduces the efficiency of the proposed method considerably. At low rates, it is however possible to use randomized quantization methods to make the quantization error better resemble Gaussian noise [3,4]. That makes the proposed method applicable at least

1 . at medium and high bitrates with conventional codec designs and

2. at low bitrates when using randomized quantization.

The proposed approach therefore uses statistical models of the signal in two ways; the intra- ame information is encoded using conventional entropy coding methods, and inter-frame information is used for noise attenuation in the decoder in a post-processing step. Such application of source modeling at the decoder side is familiar from distributed coding methods, where it has been demonstrated that it does not matter whether statistical modeling is applied at both the encoder and decoder, or only at the decoder [5]. As far as we know, our approach is the first application of this feature in speech and audio coding, outside the distributed coding applications.

4. .4.2.2 Noise attenuation It has been demonstrated relatively recently that noise attenuation applications benefit greatly from incorporating statistical information over time in the time-frequency domain. Specifically, Benesty et al. have applied conventional optimal filters such as MVDR in the time-frequency domain to reduce background noises [6, 7]. While a primary application of the proposed method is attenuation of quantization noise, it can naturally also be applied to the generic noise attenuation problem like Benesty does. A difference is however that we have explicitly chosen those time-frequency bins into our context which have the highest correlation with the current bin. In difference, Benesty applies filtering over time only, but not neighbouring frequencies. By choosing more freely among the time-frequency bins, we can choose those frequency bins which give the highest improvement in quality, with the smallest context size, whereby the computational complexity is reduced. 4.1 .4.3 Extensions

There are a number of natural extensions which follow naturally from the proposed method and which may be applied to the aspects and examples disclosed above and below:

1 . Above, the context contains only the noisy current sample and past estimates of the clean signal. However, the context could include also time-frequency neighbours which have not yet been processed. That is, we could use a context where we include the most useful neighbours, and when available, we use the estimated clean samples, but otherwise the noisy ones. The noisy neighbours then naturally would have a similar covariance for the noise as the current sample. 2. Estimates of the clean signal are naturally not perfect, but also contain some error, but above, we assume that the estimates of the past signal do not have error. To improve quality, we could include an estimate of residual noise also for the past signal.

3. The current work focuses on attenuation of quantization noise, but clearly, we can include background noises as well. We would then only have to include the appropriate noise covariance in the minimization process [8].

4. The method was here presented applied on single-channel signals only, but clearly we can extend it to multi-channel signals using conventional methods [8].

5. The current implementation uses covariances which are estimated off-line and only scaling of the desired source covariance is adapted to the signal. It is clear that adaptive covariance models would be useful if we have further information about the signal. For example, if we have an indicator of the amount of voicing of a speech signal, or an estimate of the harmonics to noise ratio (HNR), we could adapt the desired source covariance to match the voicing or HNR, respectively. Similarly, if the quantizer type or mode changes frame to frame, we could use that to adapt the quantization noise covariance. By making sure that the covariances match the statistics of the observed signal, we obviously will obtain better estimates of the desired signal.

6. Context in the current implementation is chosen among the closest neighbours in the time-frequency grid. There is however no limitation to use only these samples; we are free to choose any useful information which is available. For example, we could use information about the harmonic structure of the signal to choose samples into the context which correspond to the comb structure of the harmonic signal. In addition, if we have access to an envelope model, we could use that to estimate the statistics of spectral frequency bins, similar to [9]. Generalizing, we can use any available information which is correlated with the current sample, to improve the estimate of the clean signal.

4. .4.4 References

[1 ]3GPP, TS 26.445, EVS Codec Detailed Algorithmic Description; 3GPP Technical Specification (Release 12), 2014. [2] ISO/IEC 23003-3:2012, "MPEG-D (MPEG audio technologies), Part 3: Unified speech and audio coding," 2012.

[3] T Backstrom, F Ghido, and J Fischer, "Blind recovery of perceptual models in distributed speech and audio coding," in Proc. Interspeech, 2016, pp. 2483-2487.

[4] T Backstrom and J Fischer, "Fast randomization for distributed low-bitrate coding of speech and audio," accepted to IEEE/ACM Trans. Audio, Speech, Lang. Process., 2017.

[5] R. Mudumbai, G. Barriac, and U. adhow, "On the feasibility of distributed beamforming in wireless networks," Wireless Communications, IEEE Transactions on, vol. 6, no. 5, pp. 1754- 763, 2007.

[6] Y.A. Huang and J. Benesty, "A multi-frame approach to the frequency-domain single-channel noise reduction problem," IEEE Transactions on Audio, Speech, and Language Processing, vol. 20, no. 4, pp. 1256-1269, 2012.

[7] J. Benesty and Y. Huang, "A single-channel noise reduction MVDR filter," in ICASSP. IEEE, 201 1 , pp. 273-276.

[8] J Benesty, M Sondhi, and Y Huang, Springer Handbook of Speech Processing, Springer, 2008.

[9] T Backstrom and C R Heimrich, "Arithmetic coding of speech and audio spectra using TCX based on linear predictive spectral envelopes," in Proc. ICASSP, Apr. 2015, pp. 5127-5131 .

4.1 .5 Additional aspects

4.1 .5.1 Additional specifications and further details

In examples above, there is no need of inter-frame information encoded in the bitstream 1 1 . Therefore, in examples, the at least one among the context definer 1 14, the statistical relationship and/or information estimator 1 15, the quantization noise relationship and/or information estimator 1 19, and the value estimator 1 16, exploits inter-frame information at the decoder.. , hence reducing payload and the risk of error propagation in case packet or bit loss.

In examples above, reference has been mainly made to quantization noise. However, other kinds of noise may be coped with in other examples.

It has been noted that most of the techniques described above are particularly effective for low bitrates. Therefore, it may be possible to implement a technique of selecting between:

- a lower-bitrate mode, wherein the techniques above are used; and

- a higher-bitrate mode, wherein the proposed post-filtering is bypassed.

Fig. 5.1 shows an example 510 that may be implemented by the decoder 1 10 in some examples. A determination 51 1 is carried out regarding the bitrate. If the bitrate is under a predetermined threshold, a context-based filtering as above is performed at 512. If the bitrate is over a predetermined threshold, the context-based filtering is skipped at 513.

In examples, the context definer 1 14 may form the context 1 14 ' using at least one non-processed bin 126. With reference to Fig. 1 .5, is some examples, the context 1 14' may therefore comprise at least one of the circled bins 126. Hence, in some examples, the use of the processed bins storage unit 1 18 may be avoided, or complemented by a connection 1 13" (Fig. 1 .1 ) which provides the context definer 1 14 with the at least one non- processed bin 126.

In examples above, the statistical relationship and/or information estimator 1 15 and/or the noise relationship and/or information estimator 1 19 may store a plurality of matrixes (Λ χ , Λ Ν , for example). The choice of the matrix to be used may be performed on the basis of a metrics on the input signal (e.g., in the context 1 14' and/or in the bin 123 under process). Different harmonicities (e.g., determined with different harmonicity to noise ratio or other metrics) may therefore be associated to different matrices Λ χ , Λ Ν , for example.

Alternatively, different norms of the context (e.g., determined with measuring the norm of the context of the unprocessed bin vaiues or other metrics) may therefore be associated to different matrices Λ χ , Λ Ν , for example. 4.1.5.2 Methods

Operations of the equipment disclosed above may be methods according to the present disclosure.

A general example of method is shown in Fig. 5.2, which refers to:

- a first step 521 (e.g., performed by the context definer 1 14) in which there is defined a context (e.g. 1 14') for one bin (e.g. 123) under process of an input signal, the context (e.g. 1 14') including at least one additional bin (e.g. 1 18', 124) in a predetermined positional relationship, in a frequency/time space, with the bin (e.g. 123) under process;

- a second step 522 (e.g., performed by at least one of the components 1 15, 1 19, 1 16) in which, on the basis of statistical relationships and/or information (e.g. 1 15') between and/or information regarding the bin (e.g. 123) under process and the at least one additional bin (e.g. 1 18', 124) and of statistical relationships and/or information (e.g. 1 19') regarding noise (e.g., quantization noise and/or other kinds of noise), estimate the value (e.g. 1 16') of the bin (e.g. 123) under process. In examples, the method may be reiterated, e.g., after step 522, step 521 is newly invoked, e.g., by updating the bin under process and by choosing a new context.

Methods such as method 520 may be supplemented by operation discussed above.

4.1 .5.3 Storage unit

As show in Fig. 5.3, operations of the equipment (e.g., 1 13, 1 14, 1 16, 1 18, 115, 1 17, 1 19, etc.) and methods disclosed above may be implemented by a processor-based system 530. The latter may comprise a non-transitory storage unit 534 which, when executed by a processor 532, may operate to reduce the noise. An input/output (I/O) port 53 is shown, which may provide data (such as the input signal 1 1 1 ) to the processor 532, e.g., from a receiving antenna and/or a storage unit (e.g., in which the input signal 1 1 is stored). 4.1 .5.4 System

Fig. 5.4 shows a system 540 comprising an encoder 542 and the decoder 130 (or another encoder as above). The encoder 542 is configured to provide the bitstream 1 1 1 with encoded the input signal, e.g., wirelessly (e.g., radio frequency and/or ultrasound and/or optical communications) or by storing the bitstream 1 1 1 in a storage support.

4.1 .5.5 Further examples

Generally, examples may be implemented as a computer program product with program instructions, the program instructions being operative for performing one of the methods when the computer program product runs on a computer. The program instructions may for example be stored on a machine readable medium. Other examples comprise the computer program for performing one of the methods described herein, stored on a machine readable carrier.

In other words, an example of method is, therefore, a computer program having a program instructions for performing one of the methods described herein, when the computer program runs on a computer.

A further example of the methods is, therefore, a data carrier medium (or a digital storage medium, or a computer-readable medium) comprising, recorded thereon, the computer program for performing one of the methods described herein. The data carrier medium, the digital storage medium or the recorded medium are tangible and/or non-transitionary, rather than signals which are intangible and transitory.

A further example of the method is, therefore, a data stream or a sequence of signals representing the computer program for performing one of the methods described herein. The data stream or the sequence of signals may for example be transferred via a data communication connection, for example via the Internet.

A further example comprises a processing means, for example a computer, or a programmable logic device performing one of the methods described herein. A further example comprises a computer having installed thereon the computer program for performing one of the methods described herein.

A further example comprises an apparatus or a system transferring (for example, electronically or optically) a computer program for performing one of the methods described herein to a receiver. The receiver may, for example, be a computer, a mobile device, a memory device or the like. The apparatus or system may, for example, comprise a file server for transferring the computer program to the receiver. In some examples, a programmable logic device (for example, a field programmable gate array) may be used to perform some or all of the functionalities of the methods described herein. In some examples, a field programmable gate array may cooperate with a microprocessor in order to perform one of the methods described herein. Generally, the methods may be performed by any appropriate hardware apparatus.

The above described examples are merely illustrative for the principles discussed above. It is understood that modifications and variations of the arrangements and the details described herein will be apparent. It is the intent, therefore, to be limited by the scope of the impending claims and not by the specific details presented by way of description and explanation of the examples herein.

Equal or equivalent elements or elements with equal or equivalent functionality are denoted in the following description by equal or equivalent reference numerals even if occurring in different figures.