Apparatus for inter-frame predictive encoding of video signal

Abstract: An inter-frame predictive encoding apparatus divides an input into reference and non-reference frames. For the non-reference frames it derives a prediction error signal representing successive frames of a video signal based on differences between pixel data of each such frame and pixel data of at least one reference frame, and executes intra-frame encoding of the reference fames and the prediction error signal. The prediction error signal is transferred through a spatial filter, prior to intra-frame encoding, in which the degree of filtering is controlled by a control signal, for thereby controlling the high frequency components of the error signal to an appropriate level in accordance with respective requirements for the output data rate from the apparatus and spatial resolution of a finally obtained picture.

Description: The present invention relates to an apparatus for encoding a video signal to produce an encoded signal for transmission or recording, with the encoded signal containing substantially lower amounts of data than the original video signal. In particular, the invention relates to an apparatus for inter-frame predictive encoding of a video signal. Various methods have been proposed in the prior art for converting a digital video signal to a signal having a lower data rate, for example in order to reduce the bandwidth requirements of a communications link or to reduce the storage capacity required for recording the video signal. Such methods are used for example with moving-image video telephone systems. Basically, such methods can be divided into those which utilize the fact that there is generally a high degree of correlation between successive frames of a video signal, (this fact being used for example for inter-frame predictive encoding), those which utilize the fact that there is generally high correlation between each pixel of a frame and closely adjacent pixels on the same scanning line or on closely adjacent scanning lines (which fact is used for intra-frame or intra-field encoding in units of blocks of each frame or each field), and methods which use a combination of these two types of correlation. one method known in the prior art for using the generally close correlation between successive frames is to periodically transmit (i.e. at fixed numbers of frame intervals) certain frames, and to omit those frames which are intermediate between the transmitted frames, with the omitted frames.being restored by interpolation at the receiving system, based on the information contained in the transmitted frames. Intra-frame block encoding of the transmitted frames may be executed prior to transmission, to further reduce the rate of data transmission. An example of such a method is described in U.S. patent US-A-4,651,207, in which amounts of change between portions of each transmitted frame and the preceding transmitted frame are derived as motion vectors by the receiving system, and these motion vectors utilized for interpolating the omitted frames. If the movement within the picture that is conveyed by the video signal is comparatively simple then this may provide sufficient accuracy and a high degree of encoding efficiency. However if any substantial change in the picture contents occurs in the interval between two successive transmitted frames, then interpolation will be unsuccessful, so that such a method is of limited application. In addition, if any complex movement occurs in the picture in the interval between two successive transmitted frames, then again interpolation of the omitted frames will not be accurately achieved. Another known method is to periodically utilize certain frames as reference frames, and to derive prediction error values with respect to a preceding reference frame, for each of the other frames prior to transmission. Here, "prediction error value" signifies an amount of difference between a (digital) value in the original video signal representing a pixel luminance (Y) or color difference (B-Y) or (R-Y) value and a corresponding value of the preceding reference frame. These reference frames,i.e. independent frames, are then encoded and transmitted, while only the prediction error values are encoded and transmitted for the remaining frames (i.e. dependent frames). An example of a known method of prediction error encoding of a video signal is recursive inter-frame prediction error encoding. With that method, recursive derivation of prediction error values for each frame is executed based on accumulations of past prediction error values. Specifically, a set of prediction values held in a frame memory are successively subtracted from the data values of each frame to thereby obtain prediction error values for that frame, and the resultant prediction error values are encoded and transmitted. At the same time, decoding of the prediction error values is executed, in the same way as deciding at the receiving apparatus, and the recovered prediction error values are added to the corresponding ones of the prediction values that were used in obtaining them, then the results are stored in the frame memory for use as prediction values for the next frame of the video signal. Thus basically, only prediction error values are derived and transmitted with this method. At the receiving apparatus, each frame is recovered by superimposition of prediction error values. Such a recursive inter-frame predictive encoding apparatus is based on a closed loop, which supplies a prediction signal to be subtracted from the signal of the current frame of the input video signal. This type of predictive encoding is used in apparatus shown in document US-A-4,691,233. However, in that apparatus, before the error values are encoded they pass through a filter which, according to the state of the output buffer may or may not low pass filter them. A predictive encoding method utilizes only the correlation between successive frames of the video signal along the forward direction of the time axis, i.e. between each independent frame and a preceding independent frame. However there is of course similar correlation between each independent frame and the succeeding independent frame. A predictive encoding apparatus which makes use of this fact to enable more accurate predictive encoding operation, by using both the forward and reverse directions of the time axis, has been considered but is not in the prior art. The basic principles of such an encoding apparatus are illustrated in Fig. 1. Here, for each of the dependent frames 2, 3, 4 and 6, 7, 8, respective prediction error values are derived based on a combination of data values obtained from the preceding and succeeding independent frames, as indicated by the arrows. For example, inter-frame predictive encoding of frame 2 is executed based on the independent frames 1 and 5. This is also true for frames 3 and 4. More precisely, a first prediction signal for frame 2 is derived based on frame 1 as a reference frame, and a second prediction signal for frame 2 is derived based on frame 5 as a reference frame. These two prediction signals are then multiplied by respective weighting factors and combined to obtain a final prediction signal, (i.e. train of prediction values for frame 2) which is subtracted from the signal of frame 2 to obtain a corresponding prediction error signal. In this case greater weight is given to the first prediction signal (since frame 2 will have greater correlation with frame 1 than frame 5). Prediction signals for the other dependent frames are similarly derived. Since in this case correlation between a preceding independent frame and a succeeding independent frame is utilized to obtain prediction error values for each dependent frame, a substantially greater degree of accuracy of prediction is attained than with methods in which only inter-frame correlation along the forward direction of the time axis is utilized. To increase the coding efficiency with each of such video signal encoding methods, intra-frame processing is also generally utilized, whereby both the data values of the independent frames and the prediction error values are subjected to orthogonal transform processing in units of blocks, to obtain coefficient values which are subjected to quantization, with the results then being encoded for transmission. Each block (e.g 8 x 8 array of values) may consist of a set of luminance values (corresponding to respective pixels) of an independent frame, or chrominance values of an independent frame, or may consist of a set of luminance or chrominance prediction error values (corresponding to respective pixels) of a dependent frame. The characteristics of such a predictive encoding system are basically determined by the block size and the quantization threshold level which determines the size of the quantization steps. The larger the block size, and the higher the quantization threshold level, the greater will be the encoding efficiency, i.e. the lower will be the data rate of the output signal produced from the encoding apparatus. More specifically, in the case of orthogonal transform processing and quantization of prediction error values, if the quantization step size is made relatively large. By using a large threshold level, small values of prediction error will be eliminated from being encoded and transmitted, with only relatively large amounts of prediction error being encoded. That is to say, the quantization operation is executed such that small value coefficients produced from the orthogonal transform processing are effectively reduced to zero in the encoded output signal. Since these small coefficients correspond to spatially small amounts of displacement (in the picture represented by the video signal) which are not visually conspicuous, the effects of eliminating these small coefficient values are not visually conspicuous in a television picture obtained by receiving and decoding such a transmitted encoded video signal. Thus, a small amount of displacement between a data value of a frame and a corresponding data value of a preceding frame will not be encoded as a prediction error value, and only when the magnitude of such an amount of displacement (prediction error) has accumulated to a relatively large value over a number of successive frames (i.e. as a result of continuing movement within the picture) will the predictive error become sufficiently large to be encoded after having been subjected to orthogonal transform conversion and quantized. However the above methods of encoding a video signal to obtain an output signal having a lower data rate than that of the video signal have various disadvantages. Those methods in which only periodically selected frames are transmitted, with intermediate frames of the video signal being omitted, have been mentioned above. In the case of the recursive type of inter-frame predictive encoding, whereby only prediction error values are encoded and transmitted for each frame, the output data flow is irregular, so that it is necessary to transfer the output data through an output buffer. In practice it is necessary to provide some means for ensuring that the buffer will not overflow. In the prior art it has only been possible to control the data rate of the output encoded signal, to thereby prevent buffer overflow when necessary, by increasing the quantization threshold level. However this has the disadvantage of resulting in distortion of the contents of each block of the transmitted encoded data, if the increase in the quantization threshold level is large in relation to the optimum threshold level. In the case of methods in which independent frames are periodically encoded and transmitted, with only prediction error values for each of the intermediate frames being derived based on the independent frames and encoded and transmitted, there is the disadvantage that most of the high-frequency components of the prediction error values (as represented in the encoded output signal) are encoded and transmitted. There is often only a low degree of correlation between the high frequency components of adjacent frames of a video signal, and in practice there is little loss in accuracy of recovery of the independent frames if these high frequency components are omitted from the prediction error values. However if low-pass filtering were to be utilized to eliminate these high frequency components, then since that filtering would also be applied to the independent frames, a loss of resolution would result in the image obtained by decoding an output signal transmitted from such a system. Furthermore, for both the recursive type of inter-frame predictive encoding and the method in which only periodic independent frames and prediction error values derived based on these are encoded, due to the fact that the encoding characteristics will depend upon the orthogonal transform and quantization operations, it is very difficult to establish a balance between time axis resolution and spatial resolution. If the proportion of the prediction error values that are actually encoded (and transmitted) is reduced, e.g. by increasing the quantization level, thereby lowering the time axis resolution, the lower will become the spatial resolution (of the finally obtained reproduced picture). There is therefore a requirement for an inter-frame predictive encoding apparatus whereby the high frequency components of the prediction error signal can be eliminated, without significantly reducing the resolution of an image obtained by decoding an output signal produced from the apparatus. It is an objective of the present invention to overcome the disadvantages of the prior art as set out above. According to the present invention there is provided an inter-frame predictive encoding apparatus for processing a video signal formed of successive frames of pixel data comprising; means for encoding periodically selected reference frames without inter-frame predictive encoding of said reference frames; means for executing inter-frame prediction processing on respective frames intervening between said reference frames to derive prediction error signals for said respective intervening frames based on differences between pixel data of the intervening frames and pixel data of at least one reference frame; spatial filter means for filtering said prediction error signals to reduce frequency components in particular ranges thereof; and filter control means responsive to a filter degree control signal produced by filter degree control means for varying the degree of said filtering and including means for controllably by-passing said spatial filter means in accordance with a level of said filter degree control signal. Preferably the filter degree control signal may be preset to a fixed value which is selected to provide a desired output encoded data rate from said inter-frame predictive encoding apparatus. Further the inter-frame prediction processing means may provide the prediction error signals for each said intervening frame on the basis of a reference frame preceding and a reference frame succeeding each said respective intervening frame. The apparatus may also comprise intra-frame encoding means for encoding both said reference frames and said predictive error signals. Fig. 1 is a conceptual timing diagram for describing a method of deriving prediction error values based on inter-frame correlation along both directions of the time axis; Fig. 2 is a general block diagram of an inter-frame predictive encoding apparatus; Fig. 3 is a general block diagram of an embodiment of an inter-frame predictive encoding apparatus according to the present invention; Fig. 4 is a block diagram of a spatial filter used in the apparatus of Figs. 2 and 3; Figs. 5 and 6 are block diagrams of filter circuit within the spatial filter of Fig. 4; and Figs. 7A and 7B are diagrams showing examples of filter processing operation. Fig. 2 is a block diagram of an inter-frame predictive encoding apparatus. This is a recursive type of inter-frame predictive encoding apparatus, as mentioned hereinabove. A digital video signal is applied via an input terminal 1 to an input memory 1a, which has a capacity for storing a sufficient number of scanning lines of the video signal to permit successive blocks of data values (e.g. 8 x 8 blocks) corresponding to pixel luminance values or to color difference values, to be read out therefrom. The output data values from the input memory 1a are applied to one input of a subtractor 2, whose output data values are transferred as a prediction error signal through (also in units of blocks) a spatial filter 3, described in detail hereinafter. The output data values from the spatial filter 3 are then subjected to intra-frame encoding by an orthogonal transform section 4 in which they are converted to coefficient values, which are supplied to a quantizer 5 and quantized therein. The quantized output values from the quantizer 5 are then subjected to variable-length encoding by a variable-length encoder 6, and the encoded output data are then temporarily held in an output data buffer 7 before being outputted to an output terminal 8, to be transmitted to a corresponding decoding apparatus or to be recorded on a recording medium. The output values from the quantizer 5 are also supplied to a dequantizer 9, whose output is connected to an inverse orthogonal transform section 10, which thereby execute inverse orthogonal transform processing and dequantization to decode each frame in the same manner as is executed in a corresponding decoding apparatus which receives the output data from the output terminal 8. The output values from the inverse orthogonal transform section 10 are applied to one input of an adder 11, whose output is supplied to a frame memory 12 and written therein. Data in the frame memory 12 are read out and supplied to the other input of the subtractor 2, and also to the other input of the adder 11. An overflow indication signal that is produced from the output data buffer 7, in accordance with whether or not the contents of the output data buffer 7 are approaching an overflow condition, is supplied to a control input terminal of the quantizer 5, and also to one input terminal of a signal combining circuit 16, which produces a filter degree control signal for controlling a degree of filtering that is applied by the spatial filter 3 as described hereinafter. This overflow indication signal from the output data buffer 7 serves to control the quantization threshold level of the quantizer 5, i.e. the quantization step size, as well as the degree of filtering that is applied by the spatial filter 3. The input video signal is also supplied to a synchronizing signal separator circuit 14, which extracts a synchronizing signal component which is inputted to control the timing of operation of a control signal generating circuit 15. The control signal generating circuit 15 produces various control signals for controlling write and read operations of the input memory 1a and frame memory 12, and also a frame signal which varies peridically with a period that is an integral number of frame intervals, for controlling periodic switching of the degree of filtering provided by the spatial filter 3. This frame signal is combined with the overflow indication signal from the output data buffer 7 in the combiner circuit 16, which thereby derives the filter degree control signal that is applied to the spatial filter 3. In this apparatus the spatial filter 3 is thereby periodically switched in units of frame intervals between a condition in which filtering is executed and a condition in which no filtering is executed, i.e. to switch filtering on and off in alternate frame intervals of the data read out from the input memory 1a. This switching of the filter operation is controlled by the frame signal from the control signal generating circuit 15. The output values from the spatial filter 3 are converted by the orthogonal transform section 4 to coefficient component values by an orthogonal transform operation, such as the discrete cosine transform (DCT), in units of blocks, for example blocks of 8 x 8 values. The resultant output signal from the orthogonal transform section 4 is then quantized by the quantizer 5. Since the distribution of the resultant quantized signal is close to zero amplitude, encoding efficiency is further increased by encoding the output values from the quantizer 5 in the variable-length encoder 6 using a variable-length encoding technique, such as Huffman encoding. The resultant variable-length code data are then transferred through an output data buffer 7 to the output terminal 8. An overflow indication signal is produced from the output data buffer 7, on an output line 7a, which varies in accordance with a degree to which the output data buffer 7 is approaching the overflow condition. Fig. 3 is a general block diagram of an embodiment of an inter-frame predictive encoding apparatus according to the present invention. An input video signal is transferred through an input memory 1a, as in the apparatus of Fig. 2, to the movable contact of a changeover switch 24. the "a" fixed contact of the changeover switch 24 is connected to the "a" fixed contact of a changeover switch 25, which executes switching between the "a" and "b" contacts in synchronism with the changeover switch 24. The "b" fixed contact of the changeover switch 24 is connected to the input of a (N - 1) frame memory 20, which has a memory capacity of (N - 1) frames and is used to produce a delay or N frame intervals between input of a frame of the video signal thereto and subsequent readout of the frame, where N is a fixed integer. The output of the (N - 1) frame memory 20 is connected to an input of a inter-frame predictive section 21, whose output is supplied to a spatial filter 3. The output of the spatial filter 3 is connected to the "b" fixed contact of the changeover switch 25. The movable contact of the changeover switch 25 is connected to the input of a orthogonal transform section 4, with the output coefficient values produced from the orthogonal transform section 4 being quantized by a quantizer 5 and then encoded by a variable-length encoder 6 to be supplied to an output terminal 8 as in the preceding apparatus. The "a" fixed contact of the switch 24 is also connected to the input of a (succeeding) frame memory 22, and data read out from the (succeeding) frame memory 22 are written into a (preceding) frame memory 23 and also supplied to an input of the inter-frame predictive section 21. Data values read out from the (preceding) frame memory 23 are supplied to another input of the inter-frame predictive section 21. As in the preceding apparatus , the input video signal is also supplied to a synchronizing signal separator circuit 14 which extracts a synchronizing signal component, to be inputted to a control signal generating circuit 17. The control signal generating circuit 17 produces various control signals for controlling write and read operations of the input memory 1a, (succeeding) frame memory 22 and (preceding) frame memory 23, and also controls switching operations of the changeover switch 24 and changeover switch 25 such that the output of the input memory 1a is supplied directly to the orthogonal transform section 4 and to the (succeeding) frame memory 22 during one frame interval, once in every N successive frame intervals, and is otherwise supplied to the (N - 1) frame memory 20. The basic operation of this embodiment is as illustrated in Fig. 1. Each time that the output of the input memory 1a is supplied to the changeover switch 25, one frame of the video signal is subjected to orthogonal transform processing, quantization and variable-length encoding, to be transmitted as encoded output from the output terminal 8. Such frames will be referred to as independent frames, these being indicated by the cross-hatched rectangles 1, 5, 9 in Fig. 1. For each of the dependent frames 2, 3, 4, 6, 7, 8 etc., only prediction error values are derived using the independent frames as reference frames, by the inter-frame predictive section 21. These prediction error values are than filtered by the spatial filter 3, and then subjected to the orthogonal transform, quantization and encoding processing of the orthogonal transform section 4, quantizer 5 and variable-length encoder 6 to be transmitted as encoded data from the output terminal 8. That is, as indicated by the arrows in Fig. 1, each frame occurring between two successive independent frames is subjected to inter-frame predictive encoding based on these two independent frames. For example, inter-frame predictive encoding of frame 2 is executed based on the independent frames 1 and 5. Specifically, a first prediction signal is derived based on frame 1 as a reference frame, and a second prediction signal for frame 2 is derived based on frame 5 as a reference frame. These two prediction signals are multiplied by respective weighting factors and combined to obtain a final prediction signal, with the weighting factors being determined by the position of the dependent frame, e.g. the position of frame 2 with respect to the independent frames 1 and 5. The prediction signal thus obtained, i.e. successive prediction values, are subtracted from the corresponding data values of frame 2, to obtain prediction error values of that frame, which are outputted from the inter-frame predictive section 21 and filtered by the spatial filter 3 to remove part of the high frequency components of these prediction error values. Each time a new independent frame is encoded and transmitted, that frame is written into the (succeeding) frame memory 22 while the frame that was previously held in the (preceding) frame memory 23 is replaced by the previous contents of the (succeeding) frame memory 22. In this way, the (succeeding) frame memory 22 and (preceding) frame memory 23 always contain a succeeding and preceding independent frame for use in processing each dependent frames which occur between these independent frames. Predicition error values for the other dependent frames are similarly derived, and these are successively encoded and transmitted. Since in this case correlation between a preceding independent frame and a succeeding independent frame is utilized to obtain prediction error values for each dependent frame, a substantially greater degree of accuracy of prediction is attained than is possible with prior art methods in which only inter-frame correlation along the forward direction of the time axis is utilized. With this method, only prediction error values are encoded to represent each of the dependent frames, and these prediction error values are not subsequently utilized to derive new prediction error values (as is done with the recursive type of inter-frame predictive encoding apparatus of Fig. 2). On the other hand, the independent frames are not transferred through the spatial filter 3, so that the high frequency components of these frames are available to the decoding apparatus when the dependent frames are recovered by using the prediction error values. It is thus possible to substantially entirely remove the high frequency components of the prediction error values of all of the dependent frames by the spatial filter 3, without seriously affecting the resolution of the finally obtained picture, i.e. to apply a preset fixed-value control signal to the spatial filter 3 as indicated in Fig. 3, for determining the degree of filtering applied to the prediction error values. The actual degree of filtering that is used, i.e. the level or the degree of filtering control signal applied to the spatial filter 3, is determined (in conjunction with the threshold level that is set for the quantizer 5) such as to establish a desired data rate for the output encoded data from the apparatus. The greater the degree of filtering, the lower will be the amount of high frequency components of the prediction error values that are encoded and transmitted and hence the lower will be the overall output data rate. In addition, this reduction of high frequency components will result in a reduction of the level of quantization noise in the output encoded data. It would however also be possible to switch the degree of filtering of the spatial filter 3, e.g. for alternate ones of the dependent frames, in a similar manner to that described above for the apparatus of Fig. 2, i.e. so that little or no filtering is applied to the prediction error values of some of the dependent frames, and a high degree of filtering applied to the remaining dependent frames. This may enable an increased degree of spatial resolution to be achieved, by comparison with employing a fixed degree of filtering . Fig. 4 is a block diagram showing an example of a spatial filter for use as the spatial filter 3 in the above embodiment . This executes mutually independent proceasing in the vertical and horizontal directions of the frame. In this example, vertical filtering is executed first, followed by horizontal filtering, however it would be equally possible to use the opposite arrangement. The spatial filter utilizes a usual type of digital low-pass filter and median filter. In Fig. 4, an input signal is applied to input terminal 30, to be respectively inputted to a vertical low-pass filter 31 and a vertical median filter 32. Fig. 5 shows an internal configuration which is used in common for the vertical low-pass filter 31 and also for a horizontal low-pass filter 33 described hereinafter. Fig. 6 shows an internal configuration which is used in common for the vertical median filter 32 and also for the horizontal median filter 34, also described hereinafter. In Figs. 5 and 6, numeral 51 denotes respective delay units. Since filter operation is executed in units of blocks, each of these provides a delay that is equal to the period of one row of a block (e.g. 8 sample periods, for an 8 x 8 block size) in the case of a vertical filter, and a delay of one sample period in the case of a horizontal filter. These diagrams show only the most basic configurations for the median filters and low-pass filters, whereby each low-pass filter provides a raised cosine form of filter characteristic, while each median filter has a characteristic functions such that for every three successive data samples (in this case, prediction error values) that are inputted thereto, only the one of these three which is intermediate in magnitude between the other two will be outputted from the filter. In the case of the low-pass filter of Fig. 5, the input terminal 50 is connected to the input terminal of a delay unit 51 and to one input terminal of an adder 53. The output terminal of the delay unit 51 is connected to the input terminal of a delay unit 52, and to one input terminal of an adder 54. The output terminal of the delay unit 52 is connected to the other input terminal of the adder 53, while the output terminal of the adder 53 is connected to the other input terminal of the adder 54. The output terminal of the adder 54 is connected to the signal output terminal 59. Each of the adders 53, 54 derives the sum of two input values applied thereto, divides the sum in half, and outputs the result. In the case of the median filter of Fig. 6, the output terminal 50 is connected to respective input terminals of a delay unit 51 and a maximum value selector 56. The output terminal of the delay unit 51 is connected to the input terminal of a delay unit 52, to another input terminal of the maximum value selector 56, and to an input terminal of a maximum value selector 57. The output terminal of the delay unit 52 is connected to the other input terminal of the maximum value selector 57, while the output terminal of the maximum value selector 56 is connected to one input terminal of a minimum value selector 58. THe output terminal of the maximum value selector 57 is connected to the other input terminal of the minimum value selector 58, and the output terminal of the minimum value selector 58 is connected to a signal output terminal 59. Figs. 7A, 7B show respective results or processing by such filters. In Figs. 7A, 7B, movement along the horizontal direction of a frame, in the case of a horizontal filter (or movement along the vertical direction of a frame, in the case of a vertical filter) is plotted along the horizontal axis. Input signal level (i.e. prediction error value magnitude) is plotted along the vertical axis. In the case of horizontal filtering, Fig. 7A illustrates the case in which a single isolated prediction error value having the magnitude shown occurs (or occurs as part of of two or more of such values which extend along a vertical line in the frame), e.g. corresponding to one isolated pixel or to a vertical line of pixels. In the case of vertical filtering on the other hand, Fig. 7A illustrates the case in which a single isolated prediction error value having the magnitude shown occurs (or occurs as part of a set of such prediction error values extending along a single scan line). As shown, substantially lower-amplitude resultant output values are produced from the horizontal or vertical low-pass filter in such a case, while zero output is produced from the horizontal or vertical median filter. In the case of horizontal filtering, Fig. 7B illustrates the case in which a pair of adjacent prediction error values (e.g. corresponding to two successive pixels along a scan line) occur, or when two mutually adjacent vertical lines of such prediction error value values occur. In the care of vertical filtering, Fig. 7B illustrates the case in which two isolated vertically adjacent prediction error values having the magnitude shown occur in two successive scan lines (or two adjacent sets of such prediction error values extending along two successive scan lines). As shown, there is little attenutation produced by the low-pass filter in such a case, and no attenuation produced by the median filter. In this way, these filters serve to eliminate prediction error values which correspond to isolated very small regions of to thin lines in the spatial domain. On the other hand, where prediction errors extend over larger areas of a frame, the prediction errors are transferred without attenuation by the filters. Such filter provide more effective attenuation of high frequency components of the prediction error signal than can be obtained by using linear filters. In the case of actual thin lines which form part of a picture conveyed by a frame, however, due to the phase relationships between the timings of the input signal data values (samples), the effects of the filters will be a mixture of the effects illustrated in Figs. 7A and 7B, so that such thin lines will appear to flicker in and out, in a finally derived display picture. This effect can be substantially reduced by using the basic filter circuits of Figs. 5 and 6 in combination with respective linear filters. The respective outputs from the vertical low-pass filter 31 and vertical median filter 32 are multiplied by respective weighting values α and (1 - α) by the multipliers 36 and 37, with the resultant signals being combined in an adder 45, where 0 ≦ α ≦ 1. A value of 1/2 will generally be suitable for α. Similarly, the respective outputs from the horizontal low-pass filter 33 and horizontal median filter 34 are multiplied by the respective weighting values α and (1 - α) by the multipliers 38 and 39, with the resultant signals being combined in an adder 46. The degree of filtering of the spatial filter is determined by a factor β, which is applied in the multipliers 40 and 41 for the vertical filter and by the multipliers 42 and 43 for the horizontal filter, where 0 ≦ β ≦ 1. The vertical filter output signal from the adder 45, and the input signal from terminal 30 are respectively multiplied by β and by (1 - β) in the multipliers 40 and 41, and the outputs from these are combined in the adder 47. The operation of the horizontal filter section is identical to that of the vertical filter, with the only difference being the changed values of the delays produced by the delay units 52, 53. The output signal from the adder 47 is supplied to the horizontal low-pass filter 33 and horizontal median filter 34 respectively, and the respectively outputs from these are multiplied by α and by (1 - α) in the 38, 39, with the the outputs from these being combined in the adder 46. The output signal from the adder 46, and the output signal from the adder 47 are respectively multiplied by β and by (1 - β) in the multipliers 42 and 43, and the outputs from these are combined in the adder 48. As a result, when β is made equal to 1, the maximum degree of filtering is achieved, while if β is made equal to 0 the degree of filtering becomes zero, i.e. both the horizontal and vertical filters of the spatial filter are completely bypassed and the input signal of input terminal 30 transferred to the output terminal 49 without change. It should be noted that when such a spatial filter is used in an inter-frame predictive encoding apparatus in which processing such as motion compensation or prediction error value derivation is executed in units of blocks which are successively extracted from a frame, i.e. such that the inter-frame predictive operation may differ from block to block, the filter operation must also be in units of blocks. This is due to the fact that if the predictive operation differs between respective blocks, the prediction errors will be discontinuous, so that if the block structure were to be ignored in inputting data values to the spatial filter, block distortion would occur. In addition, since this is a digital filter and the number of pixel values constituting each row and column of the block is small (e.g. 8), it is necessary to control the operation of the filter such as to prevent erroneous results being obtained when values are inputted which are at or close to the end or beginning of a block row or column, i.e. corresponding to pixel positions along the edges or at the corners of the block. Specifically, it is necessary to vary the filter coefficients in accordance with whether an error value that is currently being inputted to the filter corresponds to an outer edge or corner position of the block or is positioned in the interior of the block. In the case of the simple low-pass filter of Fig. 5 for example, this could be done by inhibiting some or all of the inputs to the adders 53, 54 in accordance with the block position of an error value that is currently being inputted. In practice, this could for example be arranged by using a counter to count a number of error values that have been inputted to the filter for the current block, and to execute control of inhibit gates on the basis of the count values. Such considerations of filter coefficients for spatial filtering of such blocks of pixel data are described in the the CCITT of the International Telecommunication Union, Document #339, March 1988 document "Description of Ref. Model 5 (RM5)", page 22, concerning a related application of a spatial low pass filter. In the case of an inter-frame predictive encoding apparatus in which all of the original data of certain frames (i.e. independent frames) are encoded and transmitted periodically, with dependent frames being represented by prediction error values derived using the independent frames as reference frames as in the present invention, it is possible to apply spatial filtering to the prediction signals of all of the dependent frames, to substantially eliminate high frequency components of these frames, without causing excessive lowering of resolution of the finally obtained picture, since reference high frequency data are contained in the independent frames. However it may be possible to obtain an improved degree of picture resolution if the degree of filtering of the spatial filter 3 is periodically switched, in units of frames, as is done in the apparatus of Fig. 2 i.e. with filtering being removed for every other frame. This will however result in an increase in the transmitted data rate. In addition to controlling the spatial filter operation by switching between a fixedly predetermined degree of filtering and zero filtering, it is also possible to adjust the value of such as to reduce the transmitted data rate of the inter-frame predictive encoding apparatus to a desired degree, by reducing the amount of high frequency components that are encoded and transmitted. In the case of the described embodiment, this is done by applying a preset fixed control signal to the spatial filter 3, to set the data rate of the encoded output data from the inter-frame predictive encoding apparatus to a suitable value.

Claims: An inter-frame predictive encoding apparatus for processing a video signal formed of successive frames of pixel data comprising; means (24, 25) for encoding periodically selected reference frames without inter-frame predictive encoding of said reference frames; means (21, 22, 23) for executing inter-frame prediction processing on respective frames intervening between said reference frames to derive prediction error signals for said respective intervening frames based on differences between pixel data of the intervening frames and pixel data of at least one reference frame; spatial filter means (3) for filtering said prediction error signals to reduce frequency components in particular ranges thereof; and filter control means (40, 41, 42, 43) responsive to a filter degree control signal produced by filter degree control means for varying the degree of said filtering and including means for controllably by-passing said spatial filter means in accordance with a level of said filter degree control signal. Apparatus according to claim 1, wherein said filter degree control signal is preset to a fixed value which is selected to provide a desired output encoded data rate from said inter-frame predictive encoding apparatus. Apparatus according to claim 1 or 2, wherein said inter-frame prediction processing means (21, 22, 23) provides said prediction error signals for each said intervening frame on the basis of a reference frame preceding and a reference frame succeeding each said respective intervening frame. Apparatus according to any one of claims 1 to 3 further comprising intra-frame encoding means (4) for encoding both said reference frames and said predictive error signals.

Inventors: SUGIYAMA KENJI, SUGIYAMA, KENJI, Sugiyama, Kenji, c/o Daini Royaru Haitsu
Applicants: VICTOR COMPANY OF JAPAN, VICTOR COMPANY OF JAPAN, LIMITED
Application year: 1990
Main classification: H04N7
IPC codes: H04N7, G06T9