Block matching motion estimation apparatus employing a weight function

Abstract: A blocking matching motion estimation apparatus estimates a displacement of a search block in a current frame with respect to each of candidate blocks in a previous frame to produce motion vectors and error functions representing the similarity between the search block and a candidate block. The motion estimating apparatus employs a weight function to weight a number of error functions based on a MSE measurement and selects a weighted error function entailing a minimum error to produce a motion vector corresponding thereto. The weight function includes a local variance for a localized subblock defined in the search block. Another embodiment of the weight function includes a gradient of pixels in the search block filtered by a 2-dimensional gradient filter.

Description: Field of the Invention The present invention relates to a motion estimation apparatus for use in an image signal encoding system; and, more particularly, to a motion estimation apparatus for detecting a motion vector employing a weight function. Description of the Prior Art When an image signal comprising a sequence of image "frames" is expressed in a digital form, substantial amounts of data are generated for transmission, especially in the case of a high definition television system. Since, however, the available frequency bandwidth of a conventional transmission channel is limited, in order to transmit the substantial amounts of digital data through the limited channel bandwidth, it is inevitable to compress or reduce the volume of the transmission data. Among various video compression techniques, a motion compensated interframe coding technique, which utilizes temporal redundancies of the video signals between two adjacent video frames for the compression of the signals, is known to be one of the effective compression techniques. In the motion compensated interframe coding scheme, current frame data is predicted from previous frame data based on an estimation of the motion between the current and the previous frames. Such estimated motion may be described in terms of two dimensional motion vectors representing the displacement of pixels between the previous and the current frames. The document EP-A-481 421 discloses a motion vector processing device comprising means for providing a set of motion vectors for a representative pixels included in the current frame together with a corresponding set of error functions. The device further comprises means for weighting each error function with a gradient function calculated for pixels around the representative pixel. Finally, the device identifies motion vector out of the set of motion vectors which correspond to the minimum weighted error function. One of the motion vector estimation schemes which have been proposed in the art is the block matching algorithm. According to the block matching algorithm, a current frame is divided into a plurality of equal-sized search blocks. The size of a search block typically ranges between 8x8 and 32x32 pixels. To determine a motion vector for a search block in the current frame, a similarity calculation is performed between the search block of the current frame and each of a multiplicity of equal-sized candidate blocks included in a generally larger search region within a previous frame. An error function employing the MSE (mean square error) is used to carry out the similarity measurement between the search block of the current frame and each of the candidate blocks in the search region. The error function may be expressed as follows. wherein H x V represents the size of a search block; I(i,j) represents a luminance level of a pixel at a coordinate (i,j) in the search block; and P(i,j) represents a luminance level of a pixel at the coordinate (i,j) in a candidate block. And a motion vector, by definition, represents the displacement between the search block and a candidate block which yields a minimum error function. The motion vector is then used in a receiver to construct a picture from a previous frame on a block-by-block basis. Such a motion compensated interframe coding scheme, however, does not take into account the continuity between adjacent blocks due to the use of the error function representing the correlation between blocks. Consequently, the block boundaries may become visible because the boundaries are straight lines and highly structured and the discontinuities are particularly noticeable to the human observer. Such blocking effect occurring at the boundaries between adjacent blocks in a motion compensation process and the block structure artifacts caused by the blocking effect tends to deteriorate the quality of the coded image. Summary of the Invention It is, therefore, an object of the invention to provide an improved motion estimation apparatus capable of reducing the blocking effect. It is another object of the invention to provide an improved motion estimation apparatus for detecting a motion vector maintaining the continuity of boundary areas between adjacent blocks. The invention achieves this object with the subject-matter of claim 1. Summarizing, there is provided an apparatus which estimates a displacement of a search block in a current frame with respect to a plurality of candidate blocks in a previous frame to produce motion vectors and error functions representing the similarity between the search block and each candidate block. The motion estimating apparatus employs a weight function to weight a number of error functions based on the local variances for localized subblocks consisting of internal pixels of the search block, selects a weighted error function entailing a minimum error and selects as an output motion vector, a motion vector corresponding to the identified weighted error function. Brief Description of the Drawings The above and other objects and features of the present invention will become apparent from the following description of preferred embodiments given in conjunction with the accompanying drawings, in which: FIG. 1 shows a schematic block diagram of a block matching motion estimation apparatus employing a weight function in accordance with the invention; FIG. 2 illustrates an exemplary block matching process between a search block having a localized subblock therein and a large search region of the previous frame. Detailed Description of the Preferred Embodiments Referring to FIG. 1, there is shown a preferred embodiment of a block matching motion estimation apparatus incorporated in a motion estimation and compensation system which is used to achieve a significant data compression by removing the redundancies between successive frames, i.e., a current frame and its adjacent or previous frame. That is to say, there may be differences between the current frame and the previous frame, induced by a displacement or motion of an object; however, such differences may be confined to a relatively small region within a frame. Therefore, it is not necessary to transmit the entire image data of a current frame to a receiver (not shown). Instead, it may suffice to transmit the displacement information, i.e., motion vectors. The receiver then reconstructs the current frame from its previous frame whose image data is stored in a frame memory within the receiver, utilizing the motion vectors. As shown, the current frame signal is provided through a line 12 to a current frame formation section 10. The current frame formation section 10 serves to divide the current frame 70 into a plurality of search blocks of an identical size, each comprising H x V pixels. For the purpose of illustration, it is assumed that H and V are both an equal number of 16 for each search block of pixels in the current frame 70. Each of the search blocks in sequence is applied to a weight function generator 18 for generating a weight function. The weight function generator 18 defines a localized subblock within a search block, wherein the search block, as shown in FIG. 2, generally depicted with a reference numeral 72, has edge pixels extending along with-the edges thereof and internal pixels, excepting the edge pixels, out of the edges, forming a localized subblock 74. And then, a local variance for the localized subblock 74 is derived as the weight function. The local variance is derived as follows: wherein var(i,j) represents the local variance of a pixel at a coordinate (i, j) in the search block; SH x SV is the size of a localized subblock; I(k,l) is a luminance level at the pixel coordinate (k, l) in the localized subblock; and "mean" represents the mean luminance level for internal pixels within the localized subblock. The mean luminance level is defined as follows: The weight function is then provided to a number of block matching sections, only three 41, 42 and 49 of which are exemplarily shown therein. Meanwhile, the previous frame stored in a memory (not shown) is fed through a line 13 to a search area formation section 15. The search area formation section 15 defines a generally large search region of the previous frame with an equal size, shape and search pattern, whereby the search or comparison will be carried out. After the search region is determined at the search area formation section 15, the search region data is also applied to a number of candidate block formation sections, only three 21, 22 and 29 of which are illustratively shown therein. At each candidate block formation section, a candidate block of pixels is generated from the search region as the search block sweeps through the search region starting at the upper leftmost position moving horizontally one pixel position at a time, and then vertically down through the search region moving one scan line at a time, until finally reaching the lower right-most position within the search region. All the possible candidate blocks with the size of H x V pixels are formed within the determined search region. And then, the relative displacement between each candidate block and the search block of the current frame is derived and then provided to a multiplexer 60 through lines 31 to 39 as a motion vector of that candidate block. The pixel data of each candidate block is also provided from each of the candidate block formation sections 21 to 29 to each of the block matching sections 41 to 49. At each of the block matching sections 41 to 49, an error function employing a MSE measurement is calculated, using the weight function, between the search block from the current frame block formation section 20 and the candidate block from each of the candidate block formation sections 21 to 29. Conventionally, comparison of luminance level or light intensity is performed between corresponding pixels in the search block and the candidate block to yield the error function for that candidate block. The error function indicates the degree of similarity between the search block and the selected candidate block. In accordance with the present invention, at each of the block matching sections 41 to 49, the weight function derived from the weight function generator 18 is weighted to the error function in order to detect a motion vector which entails a smooth continuity of adjacent blocks to be reconstructed. The weighted error function "W-MSE" is defined as follows: wherein H x V is the size of a search block; I(i,j) is a luminance level at a pixel coordinate (i,j) in the search block; and P(i,j) is a luminance level at the a pixel coordinate (i,j) in a candidate block. All the weighted error functions from the block matching sections 41 to 49 are supplied to a minimum error detector 50. The minimum error detector 50 compares the weighted error functions to select a weighted error function which has a smallest error. The minimum error detector 50 outputs a selection signal which indicates the block corresponding to the minimum error function to the motion vector selector 60. The motion vector selector 60, which is of a conventional multiplexer, in response to the selection signal, chooses the displacement vector of the candidate block, which corresponds to the minimum error function. As described above, if a candidate block has the minimum error function, that candidate block will be most similar to the search block; consequently, the displacement vector of the candidate block will be chosen as the motion vector. While the present invention has been shown and described with reference to a particular embodiment, it will be apparent to those skilled in the art that many changes and modifications may be made without departing from the scope of the invention as defined in the appended claims.

Claims: An apparatus for detecting motion vectors between a current frame (70) and a previous frame of video signals employing a block matching motion estimation technique, wherein the current frame (70) is divided into a plurality of search blocks (72) of an identical size and a search region is determined in the previous frame (70), the search region being further divided into a multiplicity of candidate blocks of said identical size, which comprises: means (21-29, 41-49) for motion-estimating a search block (72) with respect to each of the candidate blocks to produce motion vectors and error functions corresponding thereto, each of the motion vectors representing the displacement of pixels between a search block (72) and one of the candidate blocks; means (10) for defining localized subblocks (74) in a search block (72) and for calculating a local variance for each of the localized subblocks (74) to thereby provide local variances of the localized subblocks (74) as a weight function, whereby the localized subblocks (74) are consisting of internal pixels of the search block (72); means (18) for weighting each of the error functions with the weight function to produce weighted error functions; and means (50) for identifying a weighted error function entailing a minimum error and selecting, as an output motion vector, a motion vector corresponding to the identified weighted error function. The apparatus of claim 1, wherein the local variance is defined as follows: wherein var(i,j) represents the local variance of a pixel at a coordinate (i,j) in a search block; SH x SV is the size of a localized subblock; I(k,l) is a luminance level at the pixel coordinate (k,l) in the localized subblock; and said mean represents the mean luminance level for the internal pixels in the localized subblock. The apparatus of claim 2, wherein the mean luminance level is defined as follows: The apparatus of claim 3, wherein the weighted error function is calculated as follows: wherein W-MSE is a weighted error function; H x V is the size of a search block; I(i,j) is a luminance level at a pixel coordinate (i,j) in the search block; and P(i,j) is a luminance level at the pixel coordinate (i,j) in a candidate block.

Inventors: JUNG HAE-MOOK, JUNG, HAE-MOOK
Applicants: DAEWOO ELECTRONICS CO LTD, DAEWOO ELECTRONICS CO., LTD
Application year: 1994
Main classification: H04N7
IPC codes: H04N7