GB2323993A - Method for motion estimation in a moving picture - Google Patents
Method for motion estimation in a moving picture Download PDFInfo
- Publication number
- GB2323993A GB2323993A GB9727156A GB9727156A GB2323993A GB 2323993 A GB2323993 A GB 2323993A GB 9727156 A GB9727156 A GB 9727156A GB 9727156 A GB9727156 A GB 9727156A GB 2323993 A GB2323993 A GB 2323993A
- Authority
- GB
- United Kingdom
- Prior art keywords
- motion
- pixel
- estimating
- calculated
- value
- 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.)
- Granted
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
- H04N19/51—Motion estimation or motion compensation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/20—Analysis of motion
- G06T7/223—Analysis of motion using block-matching
- G06T7/231—Analysis of motion using block-matching using full search
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/10—Image acquisition modality
- G06T2207/10016—Video; Image sequence
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/30—Subject of image; Context of image processing
- G06T2207/30196—Human being; Person
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
- Image Analysis (AREA)
Abstract
A method for estimating the motion within a moving picture using a two-dimensional triangle-patch wireframe model, comprising the steps of dividing (200) the current frame of an input image signal into N 1 N 2 macroblock units, dividing (202) each of the macroblocks into two to create triangle patches, calculating (204) pixel differences between a reference block and search blocks of the previous frame in a predetermined range on the basis of the coordinate values of the respective apexes of the triangle patches, and calculating (206) a motion vector of the reference block of the current frame from the coordinate value of the matching block of the previous frame having a minimum pixel difference value among the calculated pixel differences. Thus, it is possible to obtain a picture of good quality compared with a picture reconstructed by the conventional BMA method for estimating the motion.
Description
2323993 METHOD FOR MOTION ESTIMATION IN A MOVING PICTURE The present
invention relates to a method for estimating the motion of a moving picture, and more particularly, to a method for estimating the motion of a moving picture using a two-dimensional triangle-patch wireframe model.
In general, in a moving picture compression system, it is possible to reduce the number of bits consumed during an encoding procedure by removing redundancy in a moving picture. Therefore, in almost all moving picture compression systems such as MPEG H. 261, a method for estimating the motion is used in order to remove is redundancy in a moving picture. Motion estimation of the moving picture is performed by the following steps. The current frame is divided into many small reference blocks. Each reference block is compared with various search blocks of a previous frame. A difference degree, to which the search blocks of the previous frame are different from the reference blocks is calculated. The search block whose difference degree is smallest (hereinafter referred to as a matching block) is found for each reference block. A motion vector is estimated by the difference of coordinates between each reference block and the respective matching block. Meanwhile, the current frame is encoded by only the difference between pixels of the matching blocks and of the respective reference blocks having the above motion vector. The frame encoded as above is restored to the original image by combining each encoded pixel difference value and the respective pixel value of the matching block.
Figure 1 explains a conventional method for estimating a motion. The standard method for estimating 2 motion used in a conventional encoder is a block matching algorithm (hereinafter, BMA). Reference numerals 10 and 12 respectively denote the reference block of the current frame and the search block of the previous frame.
Referring to Figure 1, a motion estimation method using the BMA determines from which block of the previous frame K the reference block of the current frame K+1 came. In this method, a measuring principle such as a mean square error (MSE) represented by the following formula 1 or a minimum mean absolute difference (MAD) represented by the following formula 2 is used. The calculation based on such a measuring principle is performed on one block unit, in which the pixel differences between the reference block of the current frame and the search block of the previous frame are calculated. At this time, the search block giving the minimum value of the calculated difference values becomes the matching block and the motion is estimated by calculating a motion vector of the matching block. Namely, the motion vector is obtained by calculating the difference between the coordinates of the reference block and of the matching block.
[FORMULA 11 MSE (dl, d2) 1 E [ fkl (nl, n2) - f,,, (nl + dj, n2 + d2)l N1 N2(n,, n.) EB [FORMULA 21 mAD A, d2) = 1 E 1 fk., (nl, n2) - f. (n, + dj, n2 + d2H 1V1 1V2 (n,, n2) EB wherein, B=NIxN2.
Cl However, the conventional BMA method for estimating motion, it is hard to ref lect a rotating movement or a size-varied motion since it is created under the assumption that the motion is planar during estimation of the motion of a continuous moving picture. Thus, it is hard to estimate a subtle motion. Also, the picture quality is deteriorated when the encoded image is restored since a discontinuity of the image is generated between the blocks.
It is an aim of at least the preferred embodiments of the present invention to provide an improved method for estimating motion within a moving picture.
According to one aspect of the present invention, there is provided a method for estimating motion in a moving picture, said method for use in a moving picture compression system, said method comprising the steps of:
dividing a current frame of an input image signal into NIxN2 macroblock units; dividing each of said macroblocks into two to create triangle patches; calculating pixel differences between a reference block and search blocks of a previous frame in a predetermined range on the basis of the coordinate values of respective apexes of said triangle patches; and calculating a motion vector of the reference block of the current frame from the coordinate value of a matching 4 - block of the previous frame having a minimum pixel difference value among said calculated pixel differences.
Advantageously, the coinciding apexes of the triangles are calculated only once and the apexes on the border of the reference block are not calculated, in the pixel difference calculating step.
The pixel difference is preferably calculated as the absolute value of the difference between the pixel value of the current frame and the pixel value of the previous frame in the pixel difference calculating step.
The step of estimating the motion of a midway-pixel unit preferably comprises estimating a motion in more detail, on the basis of the calculated motion vector.
The midway-pixel value is preferably generated by the combination of peripheral full-pixel values.
For a better understanding of the invention, and to show how embodiments of the same may be carried into effect, reference will now be made, by way of example, to the accompanying diagrammatic drawings, in which:
Figure 1 explains a conventional method for estimating motion; Figure 2 explains a method for estimating the motion 30 of a moving picture using a two-dimensional triangle-patch wireframe model; Figure 3 explains a step of initializing the twodimensional triangle- patch wireframe model; - 5 Figure 4 explains a method for determining the position of a midway-pixel; and Figures SA through SC show examples of estimating the motion of a moving picture.
Referring firstly to Figure 2, a preferred method for estimating the motion of a moving picture is shown, using a two-dimensional trianglepatch wireframe model. The method includes steps for initializing the two-dimensional triangle-patch wireframe model and steps for estimating a motion vector from the initialized triangle-patch wireframe model.
First, the steps of initializing the two-dimensional triangle-patch wireframe model are as follows.
The current frame of an input image signal is divided into Nix N2 macroblock units (step 200). A two-dimensional triangle-patch is generated by dividing each macroblock into two (step 202). Namely, the triangle -patches are generated by drawing a diagonal line from the top left corner to the bottom right corner or from the top right corner to the bottom left corner of the macroblock as shown in Figure 3.
The steps for estimating the motion vector from the initialized trianglepatch wireframe model are as follows.
Pixel differences between a reference block of a predetermined size (for example, 16x 16 pixels), selected on the basis of the apexes of the generated triangle, and the search blocks of the previous frame, are respectively calculated (step 204). Namely, after setting the reference block of a predetermined size on the basis of the apexes of the triangle-patch, the pixel differences between the respective search blocks and the reference block are calculated within a predetermined search range ( 15 pixels). For example, the pixel difference values between all the search blocks having a predetermined search range such as +15 pixels and the reference block are calculated. At this time, coinciding triangle apexes are calculated only once and the apexes positioned on the border of the image are not calculated.
The coordinate value of the search block of the previous frame having a minimum pixel difference value from among all the pixel differences between the reference block and the search blocks, is generated as the motion 15 vector of the reference block of the current frame (step 206). Here, the motion vector (Mv,,MVY) is calculated by a sum of difference (SAD) represented by the following formula 3.
[FORMULA 31 N, N SAD,, W, v) = E 1 rb (i, j) - sw (i + u, j + v) i=i, j=I wherein, N is equal to 16, rb(i,j) is the (i,j)th pixel value in the reference block of the current frame, and sw(i,j) is the (i,j)th pixel value in the search block of the previous frame.
Meanwhile, SAD(0,0) value for a zero vector is subtracted from the predetermined value (for example, 100), and the result is compared with the SAD values of other vectors, that is to say, the SAD value for the zero vector has little difference from the SAD values for the motion vectors of another search block, the zero vector is - 7 given priority in determining as a moving vector. Thus, the number of bits consumed on encoding the motion vector are reduced. Then, the minimal SAD value among SAD values for each (x,y) is searched, the (x,y) having the minimal SAD value is selected as a moving vector (MVxf MVY) [FORMULA 41 SAD (0, 0) =SAD (0, 0) - 10 0 Furthermore, an additional step of minutely estimating the motion is performed using the motion vector estimated through the above-mentioned step. The motion vector in a midway-pixel unit is searched for in a predetermined search range (for example, +6 pixels) as shown in Figure 4 on the basis of the motion vector extracted through the above-mentioned step. Namely, the coordinate values (+) of the pixels marked with A, B, C and D shown in Figure 4 denote the coordinate values of the pixels extracted through the above mentioned step. The coordinate values (0) of the pixels marked with a, b, c and d denote the coordinate values of the midway-pixels, which are generated by the combination of the coordinate values marked with capital letters. Here, the coordinate values of the midway-pixels are generated by the following formula 5.
[FORMULA 51 a=A, b=(A+B)/2 c=(A+C)/2, d= (A+B+C+D) /4 At this time, the motion vectors (Mvx,MVy) of the pixels with respect to the respective coordinate values are renewed. A final motion vector is estimated from the renewed pixels using the formulas 3 and 4.
8 Figures SA through 5C show examples of applying the present invention to estimate the motion of a moving picture. Figure 5A shows the image of the previous frame. Figure 5B shows the image of the current frame. Figure 5C shows the image transformed after motion estimation using a twodimensional triangle-patch wireframe model. It is noted from Figure 5C that a discontinuity is not generated on the borders of the respective triangles when the image is reconstructed in a unit of pixels in the respective triangles during motion compensation since the respective triangles in the two-dimensional triangle-patch wireframe model are connected to each other after the estimation of the motion.
is When the image encoded by the method for estimating the motion of the moving picture using the two-dimensional triangle-patch wireframe model is reconstructed, it is possible to obtain a picture of good quality compared with an image reconstructed by the conventional BMA method for estimating the motion.
The reader's attention is directed to all papers and documents which are filed concurrently with or previous to this specification in connection with this application and which are open to public inspection with this specification, and the contents of all such papers and documents are incorporated herein by reference.
All of the features disclosed in this specification (including any accompanying claims, abstract and drawings), and/or all of the steps of any method or process so disclosed, may be combined in any combination, except combinations where at least some of such features and/or steps are mutually exclusive.
- 9 Each feature disclosed in this specification (including any accompanying claims, abstract and drawings), may be replaced by alternative features serving the same, equivalent or similar purpose, unless expressly stated otherwise. Thus, unless expressly stated otherwise, each feature disclosed is one example only of a generic series of equivalent or similar features.
The invention is not restricted to the details of the foregoing embodiment (s). The invention extends to any novel one, or any novel combination, of the features disclosed in this specification (including any accompanying claims, abstract and drawings), or to any novel one, or any novel combination, of the steps of any method or process so disclosed.
- 10
Claims (6)
1. A method for estimating motion in a moving picture, said method for use in a moving picture compression system, said method comprising the steps of:
dividing a current frame of an input image signal into NIxN2 macroblock units; dividing each of said macroblocks into two to create triangle patches; calculating pixel differences between a reference block and search blocks of a previous frame in a predetermined range on the basis of the coordinate values of respective apexes of said triangle patches; and calculating a motion vector of the reference block of the current frame from the coordinate value of a matching block of the previous frame having a minimum pixel difference value among said calculated pixel differences.
2. The method of claim 1, wherein the coinciding apexes of said triangles are calculated only once and the apexes 2S on the border of said reference block are not calculated, in said pixel difference calculating step.
The method of claim 1 or 2, wherein the pixel difference is calculated as the absolute value of the difference between the pixel value of the current frame and the pixel value of the previous frame in said pixel difference calculating step.
4. The method of claim 1, 2 or 3, further comprising the step of estimating the motion of a midway-pixel unit for 11 estimating a motion in more detail, on the basis of said calculated motion vector.
5. The method of claim 4, wherein said midway-pixel value is generated by the combination of peripheral full-pixel values.
6. A method substantially as hereinbefore described with reference to figures 2 to 5 of the accompanying drawings.
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1019970011812A KR100265721B1 (en) | 1997-03-31 | 1997-03-31 | Method for estimating the motion of pictures using 2-D triangle-patch wireframe model |
Publications (3)
Publication Number | Publication Date |
---|---|
GB9727156D0 GB9727156D0 (en) | 1998-02-25 |
GB2323993A true GB2323993A (en) | 1998-10-07 |
GB2323993B GB2323993B (en) | 1999-06-02 |
Family
ID=19501556
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
GB9727156A Expired - Fee Related GB2323993B (en) | 1997-03-31 | 1997-12-24 | Method for motion estimation in a moving picture |
Country Status (6)
Country | Link |
---|---|
JP (1) | JP3268258B2 (en) |
KR (1) | KR100265721B1 (en) |
CN (1) | CN1174635C (en) |
DE (1) | DE19756224C2 (en) |
GB (1) | GB2323993B (en) |
MY (1) | MY115706A (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9426487B2 (en) | 2010-04-09 | 2016-08-23 | Huawei Technologies Co., Ltd. | Video coding and decoding methods and apparatuses |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100782800B1 (en) | 2000-07-28 | 2007-12-06 | 삼성전자주식회사 | Motion estimation method |
KR100516629B1 (en) * | 2003-10-02 | 2005-09-22 | 삼성전기주식회사 | Optical nevigation sensor device and method for processing the image data using the 2-demention sequential process |
CN101248410A (en) * | 2005-08-22 | 2008-08-20 | 三星电子株式会社 | Device and method for recognizing movement mode |
CN102611882B (en) * | 2011-01-19 | 2014-02-26 | 华为技术有限公司 | Encoding and decoding method and device |
CN104427347A (en) * | 2013-09-02 | 2015-03-18 | 苏州威迪斯特光电科技有限公司 | Method for improving image quality of network-camera video-monitoring system |
CN108665406B (en) * | 2018-04-25 | 2022-06-28 | 珠海全志科技股份有限公司 | Acceleration method of hardware accelerator |
CN112565787B (en) * | 2018-12-28 | 2022-05-31 | 杭州海康威视数字技术股份有限公司 | Coding and decoding method and equipment thereof |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO1992003799A1 (en) * | 1990-08-15 | 1992-03-05 | Televerket | Method of motion compensation and elastic deformation in picture sequences |
EP0722251A1 (en) * | 1995-01-10 | 1996-07-17 | France Telecom | Method for interpolating images |
EP0765087A2 (en) * | 1995-08-29 | 1997-03-26 | Sharp Kabushiki Kaisha | Video coding device |
US5654771A (en) * | 1995-05-23 | 1997-08-05 | The University Of Rochester | Video compression system using a dense motion vector field and a triangular patch mesh overlay model |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TW257924B (en) * | 1995-03-18 | 1995-09-21 | Daewoo Electronics Co Ltd | Method and apparatus for encoding a video signal using feature point based motion estimation |
KR100265720B1 (en) * | 1997-03-31 | 2000-09-15 | 윤종용 | Method for compensating the motion of pictures using 2-D triangle-patch wire-frame model |
-
1997
- 1997-03-31 KR KR1019970011812A patent/KR100265721B1/en not_active IP Right Cessation
- 1997-12-17 DE DE1997156224 patent/DE19756224C2/en not_active Expired - Fee Related
- 1997-12-24 GB GB9727156A patent/GB2323993B/en not_active Expired - Fee Related
- 1997-12-25 CN CNB971259194A patent/CN1174635C/en not_active Expired - Fee Related
- 1997-12-29 MY MYPI9706396 patent/MY115706A/en unknown
-
1998
- 1998-02-10 JP JP2891098A patent/JP3268258B2/en not_active Expired - Fee Related
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO1992003799A1 (en) * | 1990-08-15 | 1992-03-05 | Televerket | Method of motion compensation and elastic deformation in picture sequences |
EP0722251A1 (en) * | 1995-01-10 | 1996-07-17 | France Telecom | Method for interpolating images |
US5654771A (en) * | 1995-05-23 | 1997-08-05 | The University Of Rochester | Video compression system using a dense motion vector field and a triangular patch mesh overlay model |
EP0765087A2 (en) * | 1995-08-29 | 1997-03-26 | Sharp Kabushiki Kaisha | Video coding device |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9426487B2 (en) | 2010-04-09 | 2016-08-23 | Huawei Technologies Co., Ltd. | Video coding and decoding methods and apparatuses |
US9955184B2 (en) | 2010-04-09 | 2018-04-24 | Huawei Technologies Co., Ltd. | Video coding and decoding methods and apparatuses |
US10123041B2 (en) | 2010-04-09 | 2018-11-06 | Huawei Technologies Co., Ltd. | Video coding and decoding methods and apparatuses |
Also Published As
Publication number | Publication date |
---|---|
KR19980075571A (en) | 1998-11-16 |
GB9727156D0 (en) | 1998-02-25 |
DE19756224A1 (en) | 1998-10-01 |
DE19756224C2 (en) | 2002-03-14 |
CN1174635C (en) | 2004-11-03 |
JPH10341441A (en) | 1998-12-22 |
CN1195255A (en) | 1998-10-07 |
MY115706A (en) | 2003-08-30 |
KR100265721B1 (en) | 2000-09-15 |
JP3268258B2 (en) | 2002-03-25 |
GB2323993B (en) | 1999-06-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4242656B2 (en) | Motion vector prediction method and motion vector prediction apparatus | |
US6937656B2 (en) | Method and apparatus for image coding | |
KR0171154B1 (en) | Method and apparatus for encoding video signals using feature point based motion prediction | |
JP3277111B2 (en) | Video encoding device and video decoding device | |
US7822231B2 (en) | Optical flow estimation method | |
Feng et al. | Adaptive block matching motion estimation algorithm using bit-plane matching | |
JPH08242458A (en) | Movement vector detecting method | |
US8447126B2 (en) | Image processing method and related apparatus | |
KR100474285B1 (en) | Method for finding motion vector | |
GB2323993A (en) | Method for motion estimation in a moving picture | |
CA2720698C (en) | Video encoding method, video encoding apparatus, video encoding program and storage medium of the same | |
JPH09182082A (en) | Movement compensation prediction encoding method for moving image and device therefor | |
KR19980075570A (en) | A Motion Compensation Method for a Moving Image Using a Two Dimensional Triangular Line Grid Model | |
JP3700230B2 (en) | Motion compensation method in video coding | |
JP2000106675A (en) | Video coding method, video coder and motion vector detector | |
JP2913846B2 (en) | Video coding method | |
JP3941900B2 (en) | Motion vector detection device | |
JPH0965342A (en) | Video coder and video decoder | |
KR970010096B1 (en) | Two layer motion estimation apparatus and method for image data compression | |
JP4253909B2 (en) | Image processing apparatus and image processing method | |
JP3171249B2 (en) | Motion vector search method for video coding | |
JP3458473B2 (en) | Apparatus and method for detecting motion vector | |
KR100345684B1 (en) | Method and apparatus for motion estimation | |
Ayele et al. | Motion estimation in video coding using simplified optical flow technique. | |
KR20130057020A (en) | Method for fast motion estimation using motion vectors of neighboring blocks |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PCNP | Patent ceased through non-payment of renewal fee |
Effective date: 20091224 |