The invention relates to a filter circuit for preprocessing a video signal to be coded. The video signal is coded in data blocks by a hybrid coder. The data of a decoded picture which is stored in a picture memory of the hybrid coder are required for filtering by the filter circuit. Motion vectors which are calculated by a motion estimator of the hybrid coder are also required.
Such a filter circuit is usable in, for example videophones, in which case this circuit is to reduce the noise originating from the video camera, because this considerably disturbs the subsequent coding by a hybrid coder.
The noise is particularly conspicuous if motion picture scenes come to a standstill, i.e. if they change into still pictures. At such a change the still picture displayed on a monitor after the decoding operation may have an unacceptably poor quality.
A coding procedure suitable for hybrid coders is described in greater detail in CCITT Recommendation H.261 (cf., for example: Draft Revision of Recommendation H.261: Video-Codec for Audiovisual Services at p*64 kbit/s. Signal Processing: Image Communication II (1990) 221-239, Elsevier Science Publishers BV). In this Recommendation the components required for implementation of the method and their functions are also described. An embodiment of a hybrid coder or decoder corresponding to the H.261 Recommendation is described in the document "Description of Reference Model 7", Specialist Group on Coding for Visual Telephony, CCITT SGXV, Working Party XV/4, Doc. 446, 1988. The first-mentioned document will hereinafter be referred to as (D1) and the second-mentioned document will hereinafter be referred to as (D2).
According to (D1) a hybrid coder consists of a source coder which comprises a quantizer, a multiplex coder which codes the main and sub-information components supplied by the source coder into binary code words and combines them to a serial data stream, and a subsequent buffer memory which is succeeded by a line coder.
A coding control means controls the source coder and the multiplex coder in dependence upon the filling level of the buffer memory.
The name hybrid coder is based on the simultaneous use of two coding principles, namely the interframe principle and the intraframe principle. In the interframe principle the time dependence of the video pictures is utilized and in the intraframe principle the local dependence within the video pictures is utilized.
If the buffer memory is about to run empty or overflow, the quantization step size (magnitude of the quantization intervals) is rendered finer or coarser in order that a larger or smaller number of data occur. The control is realised in such a way that the quantization step size remains constant within a data block of a given size (macroblock).
In this connection data block is understood to mean data of a section of a video picture. This section is, for example, a square part of the visible video picture. In (D1) (also compare EP 0 290 085 A2) four types of data blocks are distinguished:
a) Blocks consisting of 64 numerical values which either represent the luminance values of a square picture section consisting of 8.times.8 pixels or one of the two chrominance components of a square picture section of 16.times.16 pixels, PA1 b) Macroblocks consisting of four luminanee and two chrominance blocks which jointly represent all data of a square picture section of 16.times.16 pixels, PA1 c) Block groups consisting of 33 macroblocks, PA1 d) Video pictures consisting of 396 macroblocks each.
The term data block will hereinafter be utilized in its smaller sense according to (D1) and in its wider sense, in which the relevant picture sections may have an arbitrary size and shape.
According to (D1) a discrete cosine transform is performed with the blocks in the source coder. This leads to a bit rate reduction based on the geometrical (or rather two-dimensional) correlations which exist within a video picture and represents a concrete form of the above-mentioned intraframe principle.
The time dependence of consecutive video pictures is utilized, for example in that the difference between data of equivalent pixels of two consecutive video pictures is generated and further processed. Pixels or data blocks of video pictures which are different from each other will be referred to as equivalent if they have the same coordinates or addresses, i.e. if they have the same location within a video picture.
The positive effects of temporal filtering of video pictures on a subsequent coding operation are known from an article by Chen and Hein (Chen W. -H. and Hein D.: "Recursive temporal filtering and frame rate reduction for image coding", IEEE Journal on Selected Areas in Communication, vol. SAC-5,1987, pp. 1155 to 1165). Temporal filtering--and only this operation is hereinafter referred to--is understood to mean a filtering operation in which the filtered data blocks are obtained from equivalent data blocks. In the article by Chen and Hein full video pictures are used as data blocks and, moreover, only a non-adaptive filtering operation is described.