EP0475520B1 - Method for coding an analog signal having a repetitive nature and a device for coding by said method - Google Patents

Method for coding an analog signal having a repetitive nature and a device for coding by said method Download PDF

Info

Publication number
EP0475520B1
EP0475520B1 EP91202274A EP91202274A EP0475520B1 EP 0475520 B1 EP0475520 B1 EP 0475520B1 EP 91202274 A EP91202274 A EP 91202274A EP 91202274 A EP91202274 A EP 91202274A EP 0475520 B1 EP0475520 B1 EP 0475520B1
Authority
EP
European Patent Office
Prior art keywords
segment
samples
coded
signal
segments
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
EP91202274A
Other languages
German (de)
French (fr)
Other versions
EP0475520A2 (en
EP0475520A3 (en
Inventor
Adrianus Alphonsius Maria Van Der Krogt
Robertus Lambertus Adrianus Van Ravesteijn
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Koninklijke PTT Nederland NV
Original Assignee
Koninklijke PTT Nederland NV
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Family has litigation
First worldwide family litigation filed litigation Critical https://patents.darts-ip.com/?family=19857655&utm_source=google_patent&utm_medium=platform_link&utm_campaign=public_patent_search&patent=EP0475520(B1) "Global patent litigation dataset” by Darts-ip is licensed under a Creative Commons Attribution 4.0 International License.
Application filed by Koninklijke PTT Nederland NV filed Critical Koninklijke PTT Nederland NV
Publication of EP0475520A2 publication Critical patent/EP0475520A2/en
Publication of EP0475520A3 publication Critical patent/EP0475520A3/en
Application granted granted Critical
Publication of EP0475520B1 publication Critical patent/EP0475520B1/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/04Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using predictive techniques
    • G10L19/08Determination or coding of the excitation function; Determination or coding of the long-term prediction parameters
    • G10L19/09Long term prediction, i.e. removing periodical redundancies, e.g. by using adaptive codebook or pitch predictor

Definitions

  • the invention relates to a method for coding a sampled analog signal having a repetitive nature, in which, for every signal segment to be coded consisting of a predetermined first number of samples, a search is made in a preceding segment containing a predetermined second number of samples which is greater than the first number of samples for a signal segment which is as similar as possible by comparing the signal segment to be coded, in steps of one sample interval, with a segment containing the first number of samples which forms part of the segment containing the second number of samples, and in which the difference signal is determined between the found, most similar segment and the segment to be coded as well as the difference between a reference time instant in the segment to be coded and a reference time instant in the found, most similar segment, expressed in the number of samples D between the two time instants.
  • analog signals having a strongly consistent nature such as, for example, speech signals can be coded after sampling in an efficient manner by consecutively carrying out a number of different transformations on consecutive segments of the signalwhich each have a particular time duration.
  • LPC linear predictive coding
  • One of the known transformations for this purpose is linear predictive coding (LPC), for an explanation of which a reference can be made to the book entitled "Digital Processing of Speech Signals" by L.R. Rabiner and R.W. Schafer; Prentice Hall, New Jersey; chapter 8.
  • LPC linear predictive coding
  • LPC linear predictive coding
  • LTP long-term prediction
  • LTP for a signal segment to be coded, a search is made for a segment with the greatest possible similarity in a signal period, preceding the said segment, having a particular duration and a signal which is representative of the difference between the segment to be coded and the found segment, and also a signal which is representative of the time duration which has elapsed since the found segment, is transmitted in coded form, which can result in an appreciable reduction of the information to be transmitted.
  • HLTP high-resolution LTP
  • the object of the invention is to provide a method in which an improvement in the LTP principle is obtained in that the chance that the segment with the greatest similarity in a preceding period having a particular duration is found increases considerably without the number of operations needed in doing this increasing to the same extent as in the case of HLTP.
  • Figure 1a shows, in the time domain, an example of the sampled version of a signal having a strongly repetitive nature, such as a speech signal.
  • a search is always made in a preceding period of 15 ms for the segment of likewise 5 ms having the greatest similarity and that the sampling frequency is 8kHz.
  • segment A the segment to be coded in this connection
  • segment B the period of 15 ms segment B
  • the wanted segment with the greatest similarity segment C are shown in Figure 1a.
  • LTP the principle of LTP is that, before the transmission of segment A, no signals are transmitted which are directly related to the samples in segment A, but firstly signals which are related to the sample values which are produced if the difference signal between segment A and segment C is determined, and in the second place, signals which are related to the time difference between segment A and segment C, expressed, for example, in the number of samples D between the beginning of segment A and the beginning of segment C.
  • segment A can now be formed because segment C is in principle already known in the decoder, for example because the samples over the preceding 15 ms are always stored in a memory so that the samples from the segment can be read out of the memory with the received signal which is representative of the difference D in number of samples between the beginning of the segments A and C, after which the segment A can be formed with the signal, also received, which is representative of the difference between the sample values of segment A and segment C.
  • the complexity of the LTP principle can be defined as follows. In segment A, 40 samples are present,and in segment B 120 samples. The segment B therefore has to be investigated in 81 steps by "shifting" the entire segment A in steps equal to a sample interval over segment B and at every step determining the degree of agreement, expressed in a correlation value, by means of correlation techniques. Said correlation value R(k) can be calculated by means of the formula: where:
  • correlation technique For a more detailed explanation of this correlation technique, reference can be made to page 147 of the abovementioned book by L. R. Rabiner.
  • correlation techniques can also be used in principle, as well as other techniques for determining the agreement between two groups of sample values, which other techniques are deemed to fall within the definition of correlation.
  • the segment B of 1440 samples now has to be searched in 961 steps by again shifting segment A oversegment B.
  • R(k) the above formula explained for the LTP principle can be used.
  • it is not necessary to calculate a correlation value also for the intermediate sample values, so that for every value of k (k 0 ... 960) 79 operations are necessary, just as in the case of LTP.
  • the spacing D between the beginning of segment A and the beginning of the segment C found can again be expressed in the number of samples between the two time instants (not more than 961) and can thus be reproduced in 10 bits.
  • the segment C with the greatest similarity is sought in the manner to be described below, which is less complex than the HLTP principle, the chance that the segment found is actually the segment with the greatest similarity being appreciably greater than in the case of the LTP principle.
  • the segment C having the greatest similarity to the segment A is first sought, according to the LTP principle explained above, in a segment B preceding a segment A to be coded.
  • This segment C is situated at a number D of samples from the segment A.
  • the found segment C ends up at a spacing equal to (D ⁇ Ob) from segment A.
  • the complexity of the method according to the invention with respect to that of LTP and HLTP can be calculated as follows: In the method according to the invention, if the same time duration of the segments A and B (5 and 15 ms, respectively) and the same sampling frequency (8 kHz) is assumed as in the example of the LTP principle described above, 6399 operations are necessary to find the segment C1.
  • the sampling frequency is increased by a factor of 12, for example by always placing 11 samplevalues equal to 0 between two consecutive known samples and by only calculating the actual sample value for samples at predetermined positions, for example by means of interpolating 7 already known samples. These predetermined positions are the positions of the samples which are situated at a spacing Dd from the original samples in the segment A.
  • the sampling frequency of the segment A is also increased and, just as in the case of HLTP, this is done by always placing 11 samples having a value equal to 0 between two known samples. Segment A therefore consists of 480 samples, of which a maximum of 40 are not equal to 0.
  • this latter segment is in fact the wanted segment because the fundamental regularity P which is present in the signal and which, for example in the case of speech, is determined by the fundamental frequency of the vocal cords, is determined by the spacing D1 between segment A and segment C1 and not by the spacing D2 between segment A and segment C2.
  • This phenomenon may be due, for example, to the presence of noise.
  • the segment Cd which is situated nearest segment A that is to say the segment having the smallest value for D
  • the segment C1 is chosen. The method described above for seeking the most suitable segment C, taking account of the regularity P in the signal, is shown in a flow chart in Figure 2.
  • the invention therefore also relates to a method for coding a sampled analog signal having a repetitive nature, in which, for a signal segment to be coded consisting of a predetermined first number of samples, a search is always made in a preceding segment containing a predetermined second number of samples which is greater than the first number of samples for a signal segment which agrees as well as possible by always comparing the signal segment to be coded, in steps of one sample interval, with a segment containing the first number of samples which forms part of the segment containing the second number of samples, and in which the difference signal is determined between the found, most similar segment and the segment to be coded as well as the difference between a reference time instant in the segment to be coded and a reference time instant in the found, most similar segment, expressed in the number of samples D between the two time instants, characterised in that of the partial segments compared with the segment to be coded that segment is chosen as the partial segment with the greatest agreement which has a correlation value R with the samples of the segment to be coded for which R
  • FIG. 3a shows a block diagram of a coding/decoding system for carrying out the method according to the invention in the case of a speech signal comprising a coding unit 10 and a decoding unit 30.
  • An analog signal delivered by a microphone 11 is limited in bandwidth by a low pass filter 12 and converted in an analog/digital convertor into a series of sampled values which are representative of the analog signal.
  • the output signal of the convertor 13 is fed to the inputs of a short-term prediction filter 14 and of a short-term analysis unit 15.
  • These two units provide the above-mentioned short-term prediction and the analysis unit 15 provides an output signal in the form of short-term prediction filter coefficients, which output signal is transmitted to the decoder 30.
  • the structure and the operation of the filter 14 and the unit 15 are well known to those skilled in the field of speech coding and are not of further importance for the essence of the present invention, so that a further explanation can be omitted.
  • Said unit 17 is shown in greater detail in Figure 3b and comprises a unit 18 for splitting off the segment A, possibly the output signal of unit 16 can also be used for this purpose, and also a unit 19 for splitting off the segment B.
  • the output signals of the units 18 and 19 are fed to a circuit 20 in which the correlation value R c1 is calculated for the segment C1 in the manner outlined above and also the value of D is determined.
  • the calculated value of D is transmitted to the decoder 30 and is also fed to a unit 21 which is designed to calculate the different values of Dd on the basis of the pre-chosen values for d and Ob.
  • the value of Dd and the segment B are fed to a unit 22 for the purpose of calculating the segments Cd.
  • the calculated Cd's are fed to a circuit 23 which calculates with the aid of formula (1) the correlation values R cd for the different segments Cd on the basis of the segment A also fed to it.
  • the correlation values R c1 and R cd are compared with one another (see also Figure 2), and d optimum is determined in the manner described above and transmitted to the decoder.
  • the optimum segment Cd determined in the unit 25 is subtracted sample by sample from corresponding samples of the segment A in a subtraction unit 26 and the resultant difference signal is quantified in a manner known per se in a unit 27 and coded in a unit 28 in order to be transmitted to the decoding unit 30.
  • the difference signal received is decoded in a decoder 31 while the segment Cd opt is reconstructed in a unit 32 from the received values of D and d opt and from the previously received and reconstructed signal segment B.
  • the decoded difference signal and the segment Cd opt are added sample by sample in order thus to reconstruct the segment A.
  • the reconstructed segment Aand the received short-term prediction filter coefficients are fed to an inverse short-term prediction filter which reconstructs the transmitted signal samples as well as possible in a manner known per se.
  • the output signal of the filter 34 is converted in a digital/analog convertor into an analog signal which is fed to a loudspeaker 37 via a pass filter 36.

Abstract

Method and device for coding a signal segment of a sampled analog signal having a repetitive nature according to the principle of long-term prediction (LTP), in which an accuracy is achieved in the coding which is comparable to that of high-resolution LTP (HLTP) without the complexity appreciably increasing with respect to that of LTP. According to the method, after determining the number of samples D between the beginning of the segment to be coded and the beginning of the most similar segment determined according to the LTP principle, the number of samples in the segment to be coded is increased by a predetermined factor Ob by always placing (Ob - 1) samples having a value equal to 0 between two consecutive samples, and the number of samples in the preceding segment is also increased by the factor Ob; in the preceding segment, partial segments Cd are determined for which it is the case that the number of samples Dd, expressed in the numbers of samples after oversampling, between the initial time instant of the segment to be coded and the initial time instant of a partial segment Cd fulfils: Dd = (D * Ob)/d, in which d = 1, 2, 3, 4 ...n, where n is a positive integer and where Ob and n are chosen in a manner such that Dd is always an integer, after which, in the segments Cd, the sample values are determined, by means of an interpolation technique, at predetermined positions which are situated at a spacing Dd from the original samples in the segment to be coded; of the segments Cd, that segment Cd is chosen as the most similar segment which has a correlation value Rd with the samples of the segment to be coded for which it is the case that Rd >/= q * Rmax, where q < 1 and Rmax is the maximum correlation value which has been found in correlating the segments Cd and the segment to be coded, and is that segment which yields the smallest associated value of Dd. <IMAGE>

Description

  • The invention relates to a method for coding a sampled analog signal having a repetitive nature, in which, for every signal segment to be coded consisting of a predetermined first number of samples, a search is made in a preceding segment containing a predetermined second number of samples which is greater than the first number of samples for a signal segment which is as similar as possible by comparing the signal segment to be coded, in steps of one sample interval, with a segment containing the first number of samples which forms part of the segment containing the second number of samples, and in which the difference signal is determined between the found, most similar segment and the segment to be coded as well as the difference between a reference time instant in the segment to be coded and a reference time instant in the found, most similar segment, expressed in the number of samples D between the two time instants.
  • It is known that analog signals having a strongly consistent nature such as, for example, speech signals can be coded after sampling in an efficient manner by consecutively carrying out a number of different transformations on consecutive segments of the signalwhich each have a particular time duration. One of the known transformations for this purpose is linear predictive coding (LPC), for an explanation of which a reference can be made to the book entitled "Digital Processing of Speech Signals" by L.R. Rabiner and R.W. Schafer; Prentice Hall, New Jersey; chapter 8. As stated, LPC is always used for signal segments having a particular time duration, in the case of speech signals, for example, 20 ms, and is considered as short-term coding. It is also known to make use not only of a short-term prediction but also of long-term prediction (LTP), in which a very efficient coding is obtained by a combination of these two techniques. The principle of LTP is described in Frequenz (Frequency), volume 42, no. 2-3, 1988; pages 85-93; P.Vary et al.: "Sprachcodec fur das Europäische Funkfernsprechnetz" ("Speech Coder/Decoder for the European Radio Telephone Network").
  • In LTP, for a signal segment to be coded, a search is made for a segment with the greatest possible similarity in a signal period, preceding the said segment, having a particular duration and a signal which is representative of the difference between the segment to be coded and the found segment, and also a signal which is representative of the time duration which has elapsed since the found segment, is transmitted in coded form, which can result in an appreciable reduction of the information to be transmitted. Because the basic principle of LTP does not appear to result in all cases in finding a signal segment with optimum similarity, an improvement of the LTP principle has been proposed under the name HLTP (high-resolution LTP). A possible implementation of HLTP is described in Eurospeech 89, European Conference on Speech Communication and Technology, Paris, September 1989, in the article entitled "Pitch Prediction with Fractional Delays in CELP coding" by J. S. Marques et al. In the case of HLTP, the chance that the signal segment with the greatest similarity is found is increased by an increase in the sampling frequency of the preceding signal period by means of interpolation. A draw-back of HLTP is, however, that, as will be explained in greater detail below, the complexity of the coding is much greater than in the case of LTP as a result of an appreciable increase in the number of operations.
  • The object of the invention is to provide a method in which an improvement in the LTP principle is obtained in that the chance that the segment with the greatest similarity in a preceding period having a particular duration is found increases considerably without the number of operations needed in doing this increasing to the same extent as in the case of HLTP.
  • For this purpose, the invention provides a method of the above type, characterised in that the number of samples in the segment to be coded is increased by a predetermined factor Ob by placing (Ob - 1) samples having a value equal to 0 between two consecutive samples; in that the number of samples in the preceding segment is also increased by the factor Ob; in that, in the preceding segment, partial segments Cd are determined for which the number of samples Dd, expressed in the numbers of samples after oversampling, between the reference time instant in the segment to be coded and the reference time instant in a partial segment Cd fulfils: Dd = (D ∗ Ob)/d,
    in which d = 1, 2, 3, 4 ...n, where n is a positive integer, and Ob and n are chosen in a manner such that Dd is always an integer; in that, in the segments Cd, sample values are determined by an interpolation technique at predetermined positions, which predetermined positions are situated at a spacing of Dd samples from the original samples in the segment to be coded before its number of samples was increased; and in that a partial segment Cd is determined which is the most similar to the segment to be coded.
  • The invention also provides a device for the application of the method according to the invention, comprising means for sampling the signal to be coded; means for splitting off a signal segment to be coded containing a predetermined first number of samples; means for splitting off a preceding signal segment containing a second number of samples, means for comparing, in steps of one sample interval, the sample values of the first segment with corresponding sample values of a partial segment containing the first number of samples which forms part of the preceding segment; means for determining the partial segment which shows the greatest similarity to the signal segment to be coded; means for determining a signal which is representative of the difference between the segment to be coded and the found partial segment and means for determining the number of samples D between a reference time instant in the segment to be coded and a reference time instant in the found partial segment, characterised by further comprising means for oversampling the signal segment to be coded by a predetermined factor Ob; means for determining the value
    Dd = (D ∗ Ob)/d, where d = 2, 3, 4, ...n;
    interpolating means for determining by interpolation for every value of d the samples at all the time instants which differ by Dd samples from the time instants associated with the original sample values; and means for correlating the sample values of the segment to be coded and the sample values determined for a value of d.
  • The invention will be explained in greater detail below with reference to the drawing, wherein:
    • Figure 1a-c shows various signal forms to explain the LTP principle and the difficulties associated therewith;
    • Figure 2 shows a flow chart to explain an aspect of the invention;
    • Figure 3a, b shows a block diagram of an exemplary embodiment of a device according to the invention.
  • Figure 1a shows, in the time domain, an example of the sampled version of a signal having a strongly repetitive nature, such as a speech signal. To explain the principles of LTP and HLTP it will be assumed that, before a segment having a duration of 5 ms, a search is always made in a preceding period of 15 ms for the segment of likewise 5 ms having the greatest similarity and that the sampling frequency is 8kHz. The segment to be coded in this connection will be termed segment A, the period of 15 ms segment B and the wanted segment with the greatest similarity segment C. These segments are shown in Figure 1a. Now the principle of LTP is that, before the transmission of segment A, no signals are transmitted which are directly related to the samples in segment A, but firstly signals which are related to the sample values which are produced if the difference signal between segment A and segment C is determined, and in the second place, signals which are related to the time difference between segment A and segment C, expressed, for example, in the number of samples D between the beginning of segment A and the beginning of segment C. In a decoder which receives said transmitted signal, the segment A can now be formed because segment C is in principle already known in the decoder, for example because the samples over the preceding 15 ms are always stored in a memory so that the samples from the segment can be read out of the memory with the received signal which is representative of the difference D in number of samples between the beginning of the segments A and C, after which the segment A can be formed with the signal, also received, which is representative of the difference between the sample values of segment A and segment C.
  • The complexity of the LTP principle can be defined as follows. In segment A, 40 samples are present,and in segment B 120 samples. The segment B therefore has to be investigated in 81 steps by "shifting" the entire segment A in steps equal to a sample interval over segment B and at every step determining the degree of agreement, expressed in a correlation value, by means of correlation techniques. Said correlation value R(k) can be calculated by means of the formula:
    Figure imgb0001
    where:
    • N = 40, the number of samples in segment A;
    • k = 0 ... 80, the starting value of a partial segment (a possible segment C) within segment B; and
    • m = the sample number within segment A.
  • For a more detailed explanation of this correlation technique, reference can be made to page 147 of the abovementioned book by L. R. Rabiner. Of course, other correlation techniques can also be used in principle, as well as other techniques for determining the agreement between two groups of sample values, which other techniques are deemed to fall within the definition of correlation.
  • To calculate the correlation value, 40 multiplications and 39 additions are necessary for each value of k, so that the total number of operations required is equal to: 81 ∗79 = 6399.
  • As has already been stated above, a problem in using the LTP principle is that the segment C with the greatest similarity in segment A cannot always be found. This is shown diagrammatically in Figure 1b, from which it is evident that, in terms of signal form (the envelope of the samples), the segment C1 shows the greatest similarity to the segment A, but the sample values of segment C2 shows the greatest similarity to those of segment A so that segment C2 is incorrectly chosen as the most suitable segment for subtraction from segment A to form a difference signal. The HLTP principle effects an improvement in this because the sampling frequency in the segment B has been increased, for example, by a factor of 12. This increases the chance that the correct segment C is found. As has already been stated, this takes place at the expense of an appreciable increase in the complexity, as can be calculated as follows: the sampling frequency of segment B is increased by means of interpolation techniques by a factor of 12, it being assumed that every intermediate sample is calculated from 7 already known samples.
  • The segment B will now contain 12 ∗ 120 = 1440 samples. To calculate the intermediate samples, (120 ∗ 11) ∗ 7 = 9240 multiplications are necessary and (120 ∗ 11) ∗ 6 = 7920 additions, that is to say 17160 operations.
  • The sampling frequency of segment A is also increased by a factor of 12 by always inserting 11 samples having a value = 0 between two subsequent known samples. The segment B of 1440 samples now has to be searched in 961 steps by again shifting segment A oversegment B. In calculating the correlation value R(k), the above formula explained for the LTP principle can be used. At the same time, it is not necessary to calculate a correlation value also for the intermediate sample values, so that for every value of k (k = 0 ... 960) 79 operations are necessary, just as in the case of LTP.
  • The total number of operations needed in HLTP is therefore (961 ∗ 79) + 17160 = 93097.
  • This means that, with the above mentioned (real) assumptions for the increase in the sampling frequency and the manner of interpolation, the complexity of the HLTP principle is approximately 14.5 times as complex as the LTP principle.
  • In the example of the HLTP principle described, the spacing D between the beginning of segment A and the beginning of the segment C found can again be expressed in the number of samples between the two time instants (not more than 961) and can thus be reproduced in 10 bits.
  • According to the invention, the segment C with the greatest similarity is sought in the manner to be described below, which is less complex than the HLTP principle, the chance that the segment found is actually the segment with the greatest similarity being appreciably greater than in the case of the LTP principle.
  • According to the invention, the segment C having the greatest similarity to the segment A is first sought, according to the LTP principle explained above, in a segment B preceding a segment A to be coded. This segment C is situated at a number D of samples from the segment A. According to the invention, the sampling frequency is then also increased by a factor of Ob, for example also by a factor of Ob = 12. As a result of this, the found segment C ends up at a spacing equal to (D ∗ Ob) from segment A. After that, whether a segment Cd at a spacing of Dd = (D ∗Ob)/d from segment A possibly shows more similarity to segment A than the segment C found with the aid of the LTP technique for the value d = 1, which will therefore hereinafter be termed C1, is determined. Possible values of d are: d = 1, 2, 3, 4 .....
  • For which values of d an investigation can be made of whether a segment Cd agrees better with segment A than the segment C1 follows from the lengths of the segments A and B. The found value of d at which the best agreement is observed is denoted by doptimum.
  • The complexity of the method according to the invention with respect to that of LTP and HLTP can be calculated as follows:
    In the method according to the invention, if the same time duration of the segments A and B (5 and 15 ms, respectively) and the same sampling frequency (8 kHz) is assumed as in the example of the LTP principle described above, 6399 operations are necessary to find the segment C1.
  • To seek the segment Cd with d = 2, 3 and 4 in the present example, the sampling frequency is increased by a factor of 12, for example by always placing 11 samplevalues equal to 0 between two consecutive known samples and by only calculating the actual sample value for samples at predetermined positions, for example by means of interpolating 7 already known samples. These predetermined positions are the positions of the samples which are situated at a spacing Dd from the original samples in the segment A. The sampling frequency of the segment A is also increased and, just as in the case of HLTP, this is done by always placing 11 samples having a value equal to 0 between two known samples. Segment A therefore consists of 480 samples, of which a maximum of 40 are not equal to 0. As a result of this, in principle, only a maximum of 40 intermediate sample values need to be calculated by interpolation in segment Cd and not, as in the case of HLTP, 440 intermediate values. Only a maximum of 40 ∗ (7 multiplications + 6 additions) = 520 operations are therefore necessary for each segment Cd to calculate the intermediate sample values by means of interpolation. This therefore means 1560 operations for 3 segments Cd. The actual comparison of the segment A with the segments Cd by means of the correlation technique explained above requires for each segment Cd: 40 multiplications + 39 additions = 79 operations. That is to say, for 3 segments Cd: 237 operations.
  • The total number of operations needed to determine the segment C1 and the subsequent comparison of 3 possibly suitable segments Cd with segment A is, with the method according to the invention, therefore 6399 + 1560 + 237 = 8197. If determined values of Dd aredivisible by 12, this means that the associated segment Cd has already been investigated in the first search procedure according to the LTP principle, so that this does not need to be done again. In such a case, the number of operations needed is therefore less than 8197.
  • It will be clear that, with the method according to the invention, an appreciable simplification is obtained with respect to the HLTP principle, while the chance that the most similar segment C is found is nevertheless appreciably greater than in the case of the LTP principle. Even if segments Cd were to be investigated for greater values of d than 4 in the case of, for example, other lengths of segment A and segment B, the method according to the invention remains simpler than that according to the HLTP principle. Once the segment Cd with the greatest similarity has been found and doptimum is therefore known, the Dd associated therewith can also be calculated. In the example, the value of Dd may be situated between 1 and 120 and that of doptimum between 1 and 4, so that a total of not more than 9 bits are necessary to transmit these two values, which is again more efficient than in the case of HLTP.
  • According to a further aspect of the invention, to increase the chance further that the most similar segment C is found, segments Cd at spacings of Dd = (D ∗ Ob)/d + eps are also examined, where eps = -(Ob-1), ......., -2, -1, 1, 2, ....... (Ob-1) or a portion of these values; in practice, the values eps = -2, -1, 1, 2 are, for example, sufficient. Even if the HLTP principle is used, the situation may arise which is shown in Figure lc. The segment C2 appears to show more resemblance to the segment A than the segment C1 situated nearer the segment A. More detailed analysis shows, however, that this latter segment is in fact the wanted segment because the fundamental regularity P which is present in the signal and which, for example in the case of speech, is determined by the fundamental frequency of the vocal cords, is determined by the spacing D1 between segment A and segment C1 and not by the spacing D2 between segment A and segment C2. This phenomenon may be due, for example, to the presence of noise.
  • It is important that the fundamental regularity P in the signal is found as often as possible every time a segment C is sought because at the end where the transmitted coded signal is decoded, this regularity, expressed in the spacing D, is again provided in the decoded signal by the decoder. If this regularity is disturbed too often between consecutive coded segments, this results in undesirable interferences in the decoded signal. Said interference is a known problem in HLTP and in LTP.
  • In order to offer a solution for this as well, according to a further aspect of the invention, after the segment Cd with the greatest similarity has been found with the aid of the method described above, which is established in that the highest value is found for that segment in calculating the correlation value Rd with the aid of formula (1), hereinafter to be termed Rmax, it is investigated whether there are segments Cd which are situated at a smaller spacing D from the segment A and have a correlation value Rd which is greater to q ∗ Rmax, where q < 1, for example q = 0.8. Of all the segments Cd, the correlation value Rd of which fulfils this condition, the segment Cd which is situated nearest segment A, that is to say the segment having the smallest value for D, is then chosen as the most suitable segment, despite the fact that there are one or more segments with greater similarity. This choice is based on the insight that such a segment C situated nearer segment A is most probably the correct one because of the smaller value of D in view of the specific properties of the (speech) signal to be coded. If none of the segments Cd investigated fulfils said condition, the segment C1 is chosen. The method described above for seeking the most suitable segment C, taking account of the regularity P in the signal, is shown in a flow chart in Figure 2. It is pointed out that this principle for determining the fundamental regularity as well as possible can also be used in the conventional LTP and HLTP techniques. In that case it is then necessary to investigate which correlation values Ri are greater than q ∗ Rmax, where q < 1, for example q = 0.8. Of the spacings Di, or Di ∗ Ob respectively, associated therewith, the smallest spacing is selected, which is denoted by Doptimum. Doptimum will never be greater than D because, after all, it is the case that Rmax > Rmax ∗ q. The invention therefore also relates to a method for coding a sampled analog signal having a repetitive nature, in which, for a signal segment to be coded consisting of a predetermined first number of samples, a search is always made in a preceding segment containing a predetermined second number of samples which is greater than the first number of samples for a signal segment which agrees as well as possible by always comparing the signal segment to be coded, in steps of one sample interval, with a segment containing the first number of samples which forms part of the segment containing the second number of samples, and in which the difference signal is determined between the found, most similar segment and the segment to be coded as well as the difference between a reference time instant in the segment to be coded and a reference time instant in the found, most similar segment, expressed in the number of samples D between the two time instants, characterised in that of the partial segments compared with the segment to be coded that segment is chosen as the partial segment with the greatest agreement which has a correlation value R with the samples of the segment to be coded for which R ≥ q. Rmax, where q < 1 and Rmax is the maximum correlation value which has been found in correlating the partial segment from the preceding segments and the segment to be coded, and is that segment which yields the smallest associated value for D.
  • Figure 3a shows a block diagram of a coding/decoding system for carrying out the method according to the invention in the case of a speech signal comprising a coding unit 10 and a decoding unit 30. An analog signal delivered by a microphone 11 is limited in bandwidth by a low pass filter 12 and converted in an analog/digital convertor into a series of sampled values which are representative of the analog signal. The output signal of the convertor 13 is fed to the inputs of a short-term prediction filter 14 and of a short-term analysis unit 15. These two units provide the above-mentioned short-term prediction and the analysis unit 15 provides an output signal in the form of short-term prediction filter coefficients, which output signal is transmitted to the decoder 30. The structure and the operation of the filter 14 and the unit 15 are well known to those skilled in the field of speech coding and are not of further importance for the essence of the present invention, so that a further explanation can be omitted.
  • The output signal of the filter 14, which consists of a series of equidistant samples of the analog input signal, is fed to a circuit 16 in which a pre-determined number (40 samples in the example given above) is always split off from the incoming series of samples, and to a long-term prediction analysis unit 17 in which a part of the method according to the invention is carried out. Said unit 17 is shown in greater detail in Figure 3b and comprises a unit 18 for splitting off the segment A, possibly the output signal of unit 16 can also be used for this purpose, and also a unit 19 for splitting off the segment B. The output signals of the units 18 and 19 are fed to a circuit 20 in which the correlation value Rc1 is calculated for the segment C1 in the manner outlined above and also the value of D is determined. The calculated value of D is transmitted to the decoder 30 and is also fed to a unit 21 which is designed to calculate the different values of Dd on the basis of the pre-chosen values for d and Ob. The value of Dd and the segment B are fed to a unit 22 for the purpose of calculating the segments Cd. The calculated Cd's are fed to a circuit 23 which calculates with the aid of formula (1) the correlation values Rcd for the different segments Cd on the basis of the segment A also fed to it. In a circuit 24, the correlation values Rc1 and Rcd are compared with one another (see also Figure 2), and doptimum is determined in the manner described above and transmitted to the decoder.
  • The optimum segment Cd determined in the unit 25 is subtracted sample by sample from corresponding samples of the segment A in a subtraction unit 26 and the resultant difference signal is quantified in a manner known per se in a unit 27 and coded in a unit 28 in order to be transmitted to the decoding unit 30.
  • In the decoding unit 30, the difference signal received is decoded in a decoder 31 while the segment Cdopt is reconstructed in a unit 32 from the received values of D and dopt and from the previously received and reconstructed signal segment B. In an adder 33, the decoded difference signal and the segment Cdopt are added sample by sample in order thus to reconstruct the segment A. The reconstructed segment Aand the received short-term prediction filter coefficients are fed to an inverse short-term prediction filter which reconstructs the transmitted signal samples as well as possible in a manner known per se. The output signal of the filter 34 is converted in a digital/analog convertor into an analog signal which is fed to a loudspeaker 37 via a pass filter 36.

Claims (5)

  1. Method for coding a sampled analog signal having a repetitive nature, in which, for every signal segment to be coded consisting of a predetermined first number of samples, a search is made in a preceding segment containing a predetermined second number of samples which is greater than the first number of samples for a signal segment which is as similar as possible by comparing the signal segment to be coded, in steps of one sample interval, with a segment containing the first number of samples which forms part of the segment containing the second number of samples, and in which the difference signal is determined between the found, most similar segment and the segment to be coded as well as the difference between a reference time instant in the segment to be coded and a reference time instant in the found, most similar segment, expressed in the number of samples D between the two time instants, characterised in that the number of samples in the segment to be coded is increased by a predetermined factor Ob by placing (Ob - 1) samples having a value equal to 0 between two consecutive samples; in that the number of samples in the preceding segment is also increased by the factor Ob by oversampling ;in that, in the preceding segment, partial segments Cd are determined for which the number of samples Dd, expressed in the numbers of samples after oversampling, between the reference time instant in the segment to be coded and the reference time instant in a partial segment Cd fulfils: Dd = (D ∗ Ob)/d,
    Figure imgb0002
    in which d = 1, 2, 3, 4 ...n, where n is a positive integer, and Ob and n are chosen in a manner such that Dd is always an integer; in that, in the segments Cd, sample values are determined by an interpolation technique at predetermined positions, which predetermined positions are situated at a spacing of Dd samples from the original samples in the segment to be coded before its number of samples was increased; and in that a partial segment Cd is determined which is most similar to the segment to be coded.
  2. Method according to Claim 1, characterised in that the comparison between the segment to be coded and segments Cd is also carried out for segments for which Dd = (D ∗ Ob)/d + eps, where eps is equal to at least a portion of the values in the range eps = -(Ob-1), ...-2, -1, +1, +2, .. (Ob-1).
  3. Method according to Claim 1 or 2, characterised in that, of the segments Cd, that segment Cd is chosen as the most similar segment which has a correlation value Rd with the samples of the segment to be coded for which
    Rd ≥ q ∗ Rmax, where q < 1 and Rmax is the maximum correlation value which has been found in correlating the segments Cd and the segment to be coded, and is that segment which yields the smallest associated value of Dd.
  4. Method for coding a sampled analog signal having a repetitive nature, in which, for every signal segment to be coded consisting of a predetermined first number of samples, a search is made in a preceding segment containing a predetermined second number of samples which is greater than the first number of samples for a signal segment which is as similar as possible by comparing the signal segment to be coded, in steps of one sample interval, with a segment containing the first number of samples which forms part of the segment containing the second number of samples, and in which the difference signal is determined between the found, most similar segment and the segment to be coded as well as the difference between a reference time instant in the partial segment to be coded and a reference time instant in the found, most similar partial segment, expressed in the number of samples D between the two time instants, characterised in that, of the partial segments compared with the segment to be coded, a segment is chosen as the partial segment with the greatest agreement which has a correlation value R with the samples of the segment to be coded for which R ≥ q ∗ Rmax, where q < 1 and Rmax is the maximum correlation value which has been found in correlating the partial segments from the preceding segment and the segment to be coded, and is the partial segment which yields the smallest associated value for D.
  5. Device for coding an analog signal having a repetitive nature, comprising means for sampling the signal to be coded; means for splitting off a signal segment to be coded containing a predetermined first number of samples; means for splitting off a preceding signal segment containing a second number of samples,means for comparing, in steps of one sample interval, the sample values of the first segment with corresponding sample values of a partial segment containing the first number of samples which forms part of the preceding segment; means for determining the partial segment which shows the greatest similarity to the signal segment to be coded; means for determining a signal which is representative of the difference between the segment to be coded and the found partial segment and means for determining the number of samples D between a reference time instant in the segment to be coded and a reference time instant in the found partial segment, characterised by further comprising means for oversampling the signal segment to be coded and the preceding segment by a predetermined factor Ob; means for determining the value Dd = (D ∗ Ob)/d, where d = 2, 3, 4, ...n; interpolating means for determining by interpolation for every value of d the samples at all the time instants which differ by Dd samples from the time instants associated with the original sample values; and means for correlating the sample values of the segment to be coded and the sample values determined for a value of d.
EP91202274A 1990-09-10 1991-09-06 Method for coding an analog signal having a repetitive nature and a device for coding by said method Expired - Lifetime EP0475520B1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
NL9001985 1990-09-10
NL9001985A NL9001985A (en) 1990-09-10 1990-09-10 METHOD FOR CODING AN ANALOGUE SIGNAL WITH A REPEATING CHARACTER AND A DEVICE FOR CODING ACCORDING TO THIS METHOD

Publications (3)

Publication Number Publication Date
EP0475520A2 EP0475520A2 (en) 1992-03-18
EP0475520A3 EP0475520A3 (en) 1992-09-30
EP0475520B1 true EP0475520B1 (en) 1996-04-24

Family

ID=19857655

Family Applications (1)

Application Number Title Priority Date Filing Date
EP91202274A Expired - Lifetime EP0475520B1 (en) 1990-09-10 1991-09-06 Method for coding an analog signal having a repetitive nature and a device for coding by said method

Country Status (11)

Country Link
EP (1) EP0475520B1 (en)
JP (1) JP2640595B2 (en)
AT (1) ATE137354T1 (en)
CA (1) CA2050979C (en)
DE (1) DE69119005T2 (en)
DK (1) DK0475520T3 (en)
ES (1) ES2089113T3 (en)
FI (1) FI105624B (en)
NL (1) NL9001985A (en)
NO (1) NO302549B1 (en)
PT (1) PT98900B (en)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FI116992B (en) 1999-07-05 2006-04-28 Nokia Corp Methods, systems, and devices for enhancing audio coding and transmission
US7388201B2 (en) 2005-05-13 2008-06-17 National University Of Singapore Radiation detector having coated nanostructure and method
CN117176177B (en) * 2023-11-03 2024-02-06 金乡县林业保护和发展服务中心(金乡县湿地保护中心、金乡县野生动植物保护中心、金乡县国有白洼林场) Data sharing method and system for forestry information

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5648688A (en) * 1979-09-28 1981-05-01 Hitachi Ltd Sound analyser
DE3783905T2 (en) * 1987-03-05 1993-08-19 Ibm BASIC FREQUENCY DETERMINATION METHOD AND VOICE ENCODER USING THIS METHOD.

Also Published As

Publication number Publication date
ATE137354T1 (en) 1996-05-15
CA2050979A1 (en) 1992-03-11
NL9001985A (en) 1992-04-01
DE69119005T2 (en) 1996-11-28
PT98900B (en) 1999-02-26
PT98900A (en) 1994-01-31
NO302549B1 (en) 1998-03-16
DE69119005D1 (en) 1996-05-30
FI105624B (en) 2000-09-15
EP0475520A2 (en) 1992-03-18
JPH05206955A (en) 1993-08-13
CA2050979C (en) 1996-05-21
NO913448L (en) 1992-03-11
NO913448D0 (en) 1991-09-03
JP2640595B2 (en) 1997-08-13
ES2089113T3 (en) 1996-10-01
DK0475520T3 (en) 1996-09-02
FI914261A (en) 1992-03-11
EP0475520A3 (en) 1992-09-30
FI914261A0 (en) 1991-09-10

Similar Documents

Publication Publication Date Title
KR100275054B1 (en) Speech coding apparatus and a method of encoding speech
KR100253136B1 (en) Low computational complexity digital filter bank
US5265190A (en) CELP vocoder with efficient adaptive codebook search
US5371853A (en) Method and system for CELP speech coding and codebook for use therewith
DE69634645T2 (en) Method and apparatus for speech coding
KR100426514B1 (en) Reduced complexity signal transmission
US5179594A (en) Efficient calculation of autocorrelation coefficients for CELP vocoder adaptive codebook
AU653969B2 (en) A method of, system for, coding analogue signals
JPH04270398A (en) Voice encoding system
EP0578436B1 (en) Selective application of speech coding techniques
EP0602826B1 (en) Time shifting for analysis-by-synthesis coding
EP0475520B1 (en) Method for coding an analog signal having a repetitive nature and a device for coding by said method
CA2166138C (en) A celp-type speech encoder having an improved long-term predictor
US5528629A (en) Method and device for coding an analog signal having a repetitive nature utilizing over sampling to simplify coding
US6157907A (en) Interpolation in a speech decoder of a transmission system on the basis of transformed received prediction parameters
CA2053133C (en) Method for coding and decoding a sampled analog signal having a repetitive nature and a device for coding and decoding by said method
RU2130233C1 (en) Transmission device which recovers lost signal samples
US4908863A (en) Multi-pulse coding system
US4962536A (en) Multi-pulse voice encoder with pitch prediction in a cross-correlation domain
US4873724A (en) Multi-pulse encoder including an inverse filter
EP0162585B1 (en) Encoder capable of removing interaction between adjacent frames
JPH0651799A (en) Method for synchronizing voice-message coding apparatus and decoding apparatus
JP3112462B2 (en) Audio coding device
JPH04301900A (en) Audio encoding device
KR100283087B1 (en) Speech and Tone Coding Methods

Legal Events

Date Code Title Description
PUAI Public reference made under article 153(3) epc to a published international application that has entered the european phase

Free format text: ORIGINAL CODE: 0009012

AK Designated contracting states

Kind code of ref document: A2

Designated state(s): AT BE CH DE DK ES FR GB GR IT LI LU NL SE

PUAL Search report despatched

Free format text: ORIGINAL CODE: 0009013

AK Designated contracting states

Kind code of ref document: A3

Designated state(s): AT BE CH DE DK ES FR GB GR IT LI LU NL SE

17P Request for examination filed

Effective date: 19930310

17Q First examination report despatched

Effective date: 19951002

GRAH Despatch of communication of intention to grant a patent

Free format text: ORIGINAL CODE: EPIDOS IGRA

GRAA (expected) grant

Free format text: ORIGINAL CODE: 0009210

AK Designated contracting states

Kind code of ref document: B1

Designated state(s): AT BE CH DE DK ES FR GB GR IT LI LU NL SE

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: IT

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRE;WARNING: LAPSES OF ITALIAN PATENTS WITH EFFECTIVE DATE BEFORE 2007 MAY HAVE OCCURRED AT ANY TIME BEFORE 2007. THE CORRECT EFFECTIVE DATE MAY BE DIFFERENT FROM THE ONE RECORDED.SCRIBED TIME-LIMIT

Effective date: 19960424

Ref country code: GR

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 19960424

REF Corresponds to:

Ref document number: 137354

Country of ref document: AT

Date of ref document: 19960515

Kind code of ref document: T

REG Reference to a national code

Ref country code: CH

Ref legal event code: NV

Representative=s name: ISLER & PEDRAZZINI AG PATENTANWAELTE

REF Corresponds to:

Ref document number: 69119005

Country of ref document: DE

Date of ref document: 19960530

ET Fr: translation filed
REG Reference to a national code

Ref country code: DK

Ref legal event code: T3

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: LU

Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES

Effective date: 19960930

REG Reference to a national code

Ref country code: ES

Ref legal event code: FG2A

Ref document number: 2089113

Country of ref document: ES

Kind code of ref document: T3

REG Reference to a national code

Ref country code: ES

Ref legal event code: FG2A

Ref document number: 2089113

Country of ref document: ES

Kind code of ref document: T3

PLBE No opposition filed within time limit

Free format text: ORIGINAL CODE: 0009261

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: NO OPPOSITION FILED WITHIN TIME LIMIT

26N No opposition filed
REG Reference to a national code

Ref country code: CH

Ref legal event code: PFA

Free format text: KONINKLIJKE PTT NEDERLAND N.V. TRANSFER- KONINKLIJKE KPN N.V.

REG Reference to a national code

Ref country code: GB

Ref legal event code: IF02

REG Reference to a national code

Ref country code: FR

Ref legal event code: CA

Ref country code: FR

Ref legal event code: CD

REG Reference to a national code

Ref country code: CH

Ref legal event code: PCAR

Free format text: ISLER & PEDRAZZINI AG;POSTFACH 1772;8027 ZUERICH (CH)

PGFP Annual fee paid to national office [announced via postgrant information from national office to epo]

Ref country code: ES

Payment date: 20100924

Year of fee payment: 20

Ref country code: CH

Payment date: 20100923

Year of fee payment: 20

PGFP Annual fee paid to national office [announced via postgrant information from national office to epo]

Ref country code: FR

Payment date: 20101005

Year of fee payment: 20

Ref country code: AT

Payment date: 20100914

Year of fee payment: 20

Ref country code: SE

Payment date: 20100914

Year of fee payment: 20

PGFP Annual fee paid to national office [announced via postgrant information from national office to epo]

Ref country code: GB

Payment date: 20100921

Year of fee payment: 20

PGFP Annual fee paid to national office [announced via postgrant information from national office to epo]

Ref country code: NL

Payment date: 20100916

Year of fee payment: 20

Ref country code: DK

Payment date: 20100913

Year of fee payment: 20

PGFP Annual fee paid to national office [announced via postgrant information from national office to epo]

Ref country code: DE

Payment date: 20100922

Year of fee payment: 20

Ref country code: BE

Payment date: 20100913

Year of fee payment: 20

REG Reference to a national code

Ref country code: DE

Ref legal event code: R071

Ref document number: 69119005

Country of ref document: DE

REG Reference to a national code

Ref country code: DE

Ref legal event code: R071

Ref document number: 69119005

Country of ref document: DE

REG Reference to a national code

Ref country code: NL

Ref legal event code: V4

Effective date: 20110906

REG Reference to a national code

Ref country code: CH

Ref legal event code: PL

REG Reference to a national code

Ref country code: DK

Ref legal event code: EUP

REG Reference to a national code

Ref country code: GB

Ref legal event code: PE20

Expiry date: 20110905

BE20 Be: patent expired

Owner name: KONINKLIJKE *PTT NEDERLAND N.V.

Effective date: 20110906

REG Reference to a national code

Ref country code: SE

Ref legal event code: EUG

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: GB

Free format text: LAPSE BECAUSE OF EXPIRATION OF PROTECTION

Effective date: 20110905

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: NL

Free format text: LAPSE BECAUSE OF EXPIRATION OF PROTECTION

Effective date: 20110906

REG Reference to a national code

Ref country code: ES

Ref legal event code: FD2A

Effective date: 20120509

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: ES

Free format text: LAPSE BECAUSE OF EXPIRATION OF PROTECTION

Effective date: 20110907

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: DE

Free format text: LAPSE BECAUSE OF EXPIRATION OF PROTECTION

Effective date: 20110907