Abstract:
A method and apparatus for processing a reconstructed speech signal from an analysis-by-synthesis decoder are provided to improve the quality of reconstructed speech. By operation of the invention, one or more traces in a reconstructed speech signal are identified. Traces are sequences of like-features in the reconstructed speech signal. The like-features are identified by time-distance data received from the long term predictor of the decoder. The identified traces are smoothed by one of the known smoothing techniques. A smoothed version of the reconstructed speech signal is formed by combining one or more of the smoothed traces. The original reconstructed speech signal may be that provided by a long term predictor of the decoder. Values of the reconstructed speech signal and smoothed speech signal may be combined based on a measure of periodicity in speech.

Description:
This application is a continuation of application Ser. No. 07/778,560, filed on Oct. 18, 1991, now abandoned. 
    
    
     FIELD OF THE INVENTION 
     The present invention relates generally to speech communication systems and more specifically to signal processing associated with the reconstruction of speech from code words. 
     BACKGROUND OF THE INVENTION 
     Efficient communication of speech information often involves the coding of speech signals for transmission over a channel or network (&#34;channel&#34;). Speech coding can provide data compression useful for communication over a channel of limited bandwidth. Speech coding systems include a coding process which converts speech signals into code words for transmission over the channel, and a decoding process which reconstructs speech from received code words. 
     A goal of most speech coding techniques is to provide faithful reproduction of original speech sounds such as, e.g., voiced speech, produced when the vocal cords are tensed and vibrating quasi-periodically. In the time domain, a voiced speech signal appears as a succession of similar but slowly evolving waveforms referred to as pitch-cycles. A single one of these pitch-cycles has a duration referred to as the pitch-period. 
     In analysis-by-synthesis speech coding systems employing longterm predictors (LTPs), such as most code-excited linear predictive (CELP) speech coding known in the art, a frame (or subframe) of coded pitch-cycles is reconstructed by a decoder in part through the use of past pitch-cycle data by the decoder&#39;s LTP. A typical LTP may be interpreted as an all-pole filter providing delayed fedback of past pitch-cycle data, or an adaptive codebook of overlapping vectors of past pitch-cycle data. Past pitch-cycle data works as an approximation of present pitch-cycles to be decoded. A fixed codebook (e.g. a stochastic codebook) may be used to refine past pitch-cycle data to reflect details of the present pitch-cycles. 
     Analysis-by-synthesis coding systems like CELP, while providing low bit-rate coding, may not communicate enough information to completely describe the evolution of the pitch-cycle waveform shapes in original speech. If the evolution (or dynamics) of a succession of pitch-cycle waveforms in original speech is not preserved in reconstructed speech, audible distortion may be the result. 
     SUMMARY OF THE INVENTION 
     The present invention provides a method and apparatus for improving the dynamics of reconstructed speech produced by speech coding systems. Exemplary coding systems include analysis-by-synthesis systems employing LTPs, such as most CELP systems. Improvement is obtained through the identification and smoothing of one or more traces in reconstructed voiced speech signals. A trace refers to an envelope formed by like-features present in a sequence of pitch-cycles of a voiced speech signal. Identified traces are smoothed by any of the known smoothing techniques, such as linear interpolation or low-pass filtering. Smoothed traces are assembled by the present invention into a smoothed reconstructed signal. The identification, smoothing, and assembly of traces may be performed in the reconstructed speech domain, or any of the excitation domains present in analysis-by-synthesis coding systems. 
    
    
     BRIEF DESCRIPTION OF THE DRAWINGS 
     FIG. 1 presents a time-domain representation of a voiced speech signal. 
     FIG. 2 presents an illustrative embodiment of the present invention. 
     FIG. 3 presents illustrative traces for the time-domain representation of the voiced speech signal presented in FIG. 1. 
     FIG. 4 presents illustrative frames of a speech signal used in trace smoothing. 
     FIG. 5 presents an illustrative embodiment of the present invention which combines smoothed and conventional reconstructed speech signals according a proportionality measure of voiced and non-voiced speech. 
    
    
     DETAILED DESCRIPTION 
     Voiced Speech 
     FIG. 1 presents an illustrative stylized time-domain representation of a voiced speech signal (20 ms). As shown in the Figure, it is possible to describe voiced speech as a sequence of individual similar waveforms referred to as pitch-cycles. Generally, each pitch-cycle is slightly different from its neighbors in both amplitude and duration. The brackets in the Figure indicate a possible set of boundaries between successive pitch-cycles. Each pitch-cycle in this illustration is approximately 5 ms in duration. 
     A pitch-cycle may be characterized by a series of features which it may share in common with one or more of its neighbors. For example, as shown in FIG. 1, pitch-cycles A, B, C, and D, have characteristic signal peaks 1-4 in common. While the exact amplitude and location of peaks 1-4 may change with each pitch-cycle, such changes are generally gradual. As such, voiced speech is commonly thought of as periodic or nearly so (i.e., quasi-periodic). 
     Many speech coders, including many CELP coders, operate on a frame and subframe basis. That is, they operate on advantageously chosen segments of speech. For example, a CELP coder may transmit 20 ms frames of coded speech (160 samples at 8 kHz) by coding and assembling four 5 ms subframes, each with its own characteristic LTP delay. For purposes of the present description, the illustrative pitch-cycles shown in FIG. 1 correspond to 5 ms subframes. It will be apparent to one of ordinary skill in the art that the present invention is also applicable to situations where pitch-cycles and subframes do not coincide. 
     AN ILLUSTRATIVE EMBODIMENT 
     An illustrative embodiment of the present invention is presented in FIG. 2. For each subframe, a trace identifier 100 receives a conventional reconstructed speech signal, V c  (i), and a time-distance function, d(i), from a conventional decoder, such as a CELP decoder. The conventional reconstructed speech signal may take the form of speech itself, or any of the speech-like excitation signals present in conventional decoder. It is preferred that V c  (i) be the excitation signal produced by the LTP of the decoder. Data from N traces, V T .sbsb.n (j k ), 1≦n≦N, are identified and passed to a plurality of trace smoothing processes 200. These smoothing processes 200 operate to provide smoothed trace data, V ST .sbsb.n (j k ), 1≦n≦N, to a trace combiner 300. Trace combiner 300 forms a smoothed speech signal, V s  (i), from the smoothed trace data. 
     TRACE IDENTIFICATION 
     The trace identifier 100 of the illustrative embodiment defines or identifies traces in speech. Each identified trace associates a series of like-features present in a sequence of pitch-cycle waveforms of a reconstructed speech signal. A trace is an envelope formed by the amplitude of samples of the reconstructed speech signal provided by a speech decoder, V c , at times given by values of an index, j k . As discussed above, an identified trace may be denoted as V T .sbsb.n (j k ), k=0, 1, 2, . . . . An illustrative trace index, j k , may be determined such that: 
     
         j.sub.k+1 =j.sub.k -d(j.sub.k) 
    
     for k=0, 1, 2, . . . , where d(j k ) is the time-distance between like-features of the sequence of pitch-cycles in the reconstructed speech signal at time j k  (as k increases, the index j k  points farther into the past). FIG. 3 presents illustrative traces for certain sample points in a segment of the voiced speech (a frame) presented in FIG. 1. Illustrative values for the time-distance function, d(i), may be obtained from a conventional LTP-based decoder providing frames or subframes of the reconstructed speech signal. For example, when the present invention is used in combination with a CELP coding system having an LTP, d(i) is the delay used by the LTP of the CELP decoder. A typical CELP decoder for use with this embodiment of the present invention provides a delay for each frame of coded speech. In such a case, d(i) is constant for all sample points in the frame. 
     A trace need not be identified in non-voiced speech (that is, speech which comprises, for example, silence or unvoiced speech). For voiced speech, a trace may extend backward and forward in time from a given point in time. There may be as many traces in a given pitch-cycle as there are data samples (e.g., at an 8 kHz sampling rate, 40 traces in a 5 ms pitch-cycle). When pitch-cycles expand over time, certain traces may split into multiple traces. When pitch-cycles contract over time, certain traces may end. Furthermore, because values of d(i) may exceed a single pitch-period, a trace may associate like-features in waveforms which are more than one pitch-cycle apart. 
     TRACE SMOOTHING 
     Traces identified in a reconstructed speech signal are smoothed by smoothing processes 200 as a way of modifying the dynamics of reconstructed pitch-cycle waveforms. Any of the known data smoothing techniques, such as linear interpolation, polynomial curve fitting, or low-pass filtering, may be used. A smoothing technique is applied to each trace over a time interval, such as a 20 ms frame provided by a CELP decoder. 
     FIG. 4 presents illustrative frames of a reconstructed speech signal used in the smoothing of a single trace, T n , by the embodiment of FIG. 2. An exemplary smoothing process 200 maintains past trace values (from a past frame of the signal) which are used in establishing an initial data value for a smoothing operation on a current frame of the speech signal. The trace of the current frame comprises a set of values {V T .sbsb.n (j k ), k=1, 2, 3, 4}. The trace values are separated in time by a set of delays {d(j k ), K=1, 2, 3, 4}. Delay d(j 4 ) is used by the smoothing process 200 to identify the first (i.e., earliest in time) trace value for use in the smoothing operation of the current frame of the trace. In the Figure, this trace value is obtained from the past frame trace values: V T .sbsb.n (j 5 ). Smoothing may be provided by interpolation of the set of trace values {V T .sbsb.n (j k ), k=1, 2, 3, 4, 5} to yield a set of smoothed trace values {V ST .sbsb.n (j k ) k=1, 2, 3, 4, 5}. It is preferred that a smoothed trace for a given current frame connect with its associated smoothed trace from the immediate past frame. An illustrative interpolation technique defines a line-segment connecting the last trace value of the given frame, V T .sbsb.n (j 1 ), with the last trace value of the previous frame, V T .sbsb.n (j 5 ) as the smoothed trace in the frame, (as such, V ST .sbsb.n (j 1 )=V T .sbsb.n (j 1 ) and V ST .sbsb.n (j 5 )=V T .sbsb.n (j 5 )). Once smoothing of a current frame is performed, trace data of the current frame is saved for subsequent use as trace data of a past frame. Thus, smoothing proceeds on a rolling frame-by-frame basis. 
     COMBINING SMOOTHED TRACES 
     Individual smoothed trace samples, V ST .sbsb.n (j k ), are combined on a rolling frame-by-frame to form a smoothed reconstructed speech signal, V s  (i), by trace combiner 300. Trace combiner 300 produces smoothed reconstructed speech signal, V s  (i), by interlacing samples from individual smoothed traces in temporal order. That is, for example, the smoothed trace having the earliest sample point in the current frame becomes the first sample of the frame of smoothed reconstructed speech signal; the smoothed trace having the next earliest sample in the frame supplies the second sample, and so on. Typically, a given smoothed trace will contribute one sample per pitch-cycle of a smoothed reconstructed speech signal. The smoothed reconstructed speech signal, V s  (i), may be provided as output to be used in the manner intended for the unsmoothed version of the speech signal. 
     COMBINING SMOOTHED AND CONVENTIONAL RECONSTRUCTED SPEECH 
     In an illustrative embodiment of the present invention presented in FIG. 5, an overall reconstructed speech signal, V(i), may be considered to be a linear combination of a conventional reconstructed speech signal, V c  (i), and a smoothed reconstructed speech signal, V s  (i), as follows: 
     
         V(i)=αV.sub.s (i)+(1-α)V.sub.c (i), 
    
     where 0≦α≦1 (see, FIG. 5, 500-800). The parameter α, a measure of periodicity, is used to control the proportion of smoothed and conventional speech in V (i). Because V s  is significant as a manipulation of a voiced speech signal, α operates to provide for V(i) a larger proportion of V s  (i) when speech is voiced, and a larger proportion of V c  (i) when speech is non-voiced. A determination of the presence of voiced speech, and hence a value for α, may be made from the statistical correlation of adjacent frames of V c  (i). An estimate of this correlation may be provided for a CELP decoder by an autocorrelation expression: ##EQU1## where d(i) is the delay from the LTP of the CELP decoder and L is the number of samples in the autocorrelation expression, typically 160 samples at an 8 kHz sampling rate (i.e., the number of samples in a frame of the speech signal) (see, FIG. 5,400). This expression may be used to compute a normalized estimate for α: ##EQU2## The greater the autocorrelation, the more periodic the speech, and the greater the value of α (see, FIG. 5,500). Given the expression for V(i), large values for α provide large contributions to V(i) by V s , and visa-versa. 
     FURTHER ILLUSTRATIVE EMBODIMENTS 
     A further illustrative embodiment of the present invention concerns smoothing a subset of traces available from a reconstructed speech signal. One such subset can be defined as those traces associated with sample data of large pulses within a pitch-cycle. Of course, these large pulses form a subset of pulses within the pitch-cycle. For example, with reference to FIG. 1, this illustrative embodiment may involve smoothing only those traces associated with samples of the speech signal associated with pulses 1-3 of each pitch-cycle. Identification of a subset of pulses to include in the smoothing process can be made by establishing a threshold below which pulses, and thus their traces, will not be included. This threshold may be established by an absolute level or a relative level as a percentage of the largest pulses. Moreover, because the audible results of smoothing can be subjective, the threshold may be selected from experience based upon several test levels. In this embodiment, assembly of smoothed traces into a smoothed reconstructed speech signal may be supplemented by the original reconstructed speech signal for which no smoothing has occurred. Such original reconstructed speech signal samples are those samples which fall below the above-mentioned threshold. As a result, such samples do not form part of a trace which is smoothed. 
     As discussed above, the original reconstructed speech signal may be in the speech domain itself, or it may be in one of the excitation domains available in analysis-by-synthesis decoders. If the speech domain is used, the illustrative embodiments of the present invention may follow a conventional analysis-by-synthesis decoder. However, should the speech signal be in an excitation domain, such as the case with the preferred embodiment, the embodiment would be located within such decoder. As such, the embodiment would receive the excitation domain speech signal, process it, and providing a smoothed version of it to that portion of the decoder which expects to receive the excitation speech signal. In this case, however, it would receive the smoothed version provided by the embodiment.