[go: up one dir, main page]

KR100204477B1 - Method and apparatus for motion estimation of background image - Google Patents

Method and apparatus for motion estimation of background image Download PDF

Info

Publication number
KR100204477B1
KR100204477B1 KR1019960015266A KR19960015266A KR100204477B1 KR 100204477 B1 KR100204477 B1 KR 100204477B1 KR 1019960015266 A KR1019960015266 A KR 1019960015266A KR 19960015266 A KR19960015266 A KR 19960015266A KR 100204477 B1 KR100204477 B1 KR 100204477B1
Authority
KR
South Korea
Prior art keywords
motion
image
block
motion vector
background
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.)
Expired - Fee Related
Application number
KR1019960015266A
Other languages
Korean (ko)
Other versions
KR970078659A (en
Inventor
이민섭
Original Assignee
배순훈
대우전자주식회사
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by 배순훈, 대우전자주식회사 filed Critical 배순훈
Priority to KR1019960015266A priority Critical patent/KR100204477B1/en
Publication of KR970078659A publication Critical patent/KR970078659A/en
Application granted granted Critical
Publication of KR100204477B1 publication Critical patent/KR100204477B1/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/537Motion estimation other than block-based
    • H04N19/543Motion estimation other than block-based using regions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • G06T7/223Analysis of motion using block-matching
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/513Processing of motion vectors

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)
  • Image Analysis (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

본 발명은 배경영상에 대한 움직임 추정 방법 및 장치에 관한 것으로, 이 장치는 입력영상을 소정의 크기로 축약하는 서브 샘플러(21); 상기 서브 샘플러(21)에서 축약된 영상을 이전영상으로부터 소정 크기의 블럭별로 각각 움직임 추정하여 정합오차를 산출하는 블럭매칭 움직임 추정기(22); 상기 블럭매칭 움직임 추정기(22)로부터 입력되는 해당 블럭의 정합오차를 소정의 기준치(T)와 비교하는 비교기(23); 상기 비교기의 출력에 따라 해당 블럭의 정합오차가 상기 기준치보다 작을 경우에 해당 블럭의 인덱스를 저장하는 메모리(24); 상기 서브 샘플러로부터, 상기 메모리가 출력하는 인덱스에 해당되는 영상데이타를 입력받아 소정의 서치영역에서 기준영상과 비교하여 움직임 추정하는 제1배경 움직임 추정기(25); 상기 제1배경 움직임 추정기가 출력하는 움직임 벡터를 중심으로 소정의 서치영역에서 선택된 원영상과 기준영상을 비교하여 움직임 추정하는 제2배경 움직임 추정기(26)가 구비되어 간단하게 배경영상의 움직임 벡터를 구할 수 있는 효과가 있다.The present invention relates to a motion estimation method and apparatus for a background image, the apparatus comprising: a subsampler (21) for reducing an input image to a predetermined size; A block-matching motion estimator (22) for estimating a matching error by motion estimation of each of the images reduced by the subsampler (21) for each block of a predetermined size; A comparator (23) for comparing a matching error of the corresponding block input from the block matching motion estimator (22) with a predetermined reference value (T); A memory 24 for storing an index of the block when the matching error of the block is smaller than the reference value according to the output of the comparator; A first background motion estimator (25) which receives image data corresponding to an index output by the memory from the subsampler and estimates motion by comparing the reference data with a reference image in a predetermined search area; A second background motion estimator 26 is provided to compare the original image selected in the predetermined search area with the reference image based on the motion vector output by the first background motion estimator, so that the motion vector of the background image is simply obtained. There is an effect available.

Description

배경 영상의 움직임 추정 방법 및 그 장치Method and apparatus for motion estimation of background image

제1도는 본 발명에 따라 배경 영상의 움직임 벡터를 구하는 흐름을 도시한 순서도.1 is a flowchart showing a flow for obtaining a motion vector of a background image according to the present invention.

제2도는 본 발명에 따른 배경 영상의 움직임 추정장치의 블럭도.2 is a block diagram of an apparatus for estimating motion of a background image according to the present invention.

제3도는 본 발명에 적용되는 영상축약을 설명하기 위하여 도시한 도면.3 is a diagram for explaining an image reduction applied to the present invention.

제4도는 본 발명에 따라 불럭을 추출하는 것을 도시한 개념도.4 is a conceptual diagram illustrating extracting blocks according to the present invention.

제5도는 본 발명에 따라 2단계로 움직임 벡터를 산출하는 것을 설명하기 위하여 도시한 도면.5 is a diagram for explaining calculating a motion vector in two steps according to the present invention;

제6a도 및 제6b도는 본 발명에 따라 정합영상과 래퍼런스 영상의 도면.6A and 6B are diagrams of a registration image and a reference image according to the present invention.

* 도면의 주요부분에 대한 부호의 설명* Explanation of symbols for main parts of the drawings

21 : 서브샘플러 22 : 블럭매칭 움직임 추정기21: subsampler 22: block matching motion estimator

23 : 비교기 24 : 메모리23: comparator 24: memory

25 : 1차 배경움직임 추정기 26 : 2차 배경움직임 추정기25: 1st background motion estimator 26: 2nd background motion estimator

본 발명은 영상신호의 부호화 및 복호화 장치에서 사용되는 움직임 추정 방법 및 장치에 관한 것으로, 더욱 상세하게는 배경 영상의 움직임 벡터를 구하기 위한 움직임 벡터 추정 방법 및 장치에 관한 것이다.The present invention relates to a motion estimation method and apparatus used in an apparatus for encoding and decoding an image signal, and more particularly, to a motion vector estimation method and apparatus for obtaining a motion vector of a background image.

널리 알려진 바와 같이, 영상신호의 압축부호화에서 프레임내 코딩 방식은 공간영역에서의 중복성을 줄이는 방식이고, 프레임간 코딩방식은 시간영역에서의 중복성을 제거하는 방식이다. 프레임간 코딩에서 움직임보상 DPCM은 이전 프레임과 현재 프레임을 비교하여 물체(object)의 이동에 관한 정보를 추출해 내고, 이 정보를 이용하여 현재 프레임을 적절하게 예측하면 예측에러가 감소하여 차분 데이타가 감소하게 된다. 이러한 움직임 보상기법은 현재 프레임의 소정 블럭과 가장 유사한 블럭을 이전 프레임의 탐색영역(Search Window)에서 검출하여 검출된 블럭의 위치를 움직임 벡터로서 전송하는 한편, 현재 프레임의 블럭과 검출된 이전 프레임의 유사 블럭과의 차분을 전송하므로써 수신측이 현재 프레임의 블럭을 이전 프레임의 데이타를 이용하여 복원하도록 하는 것이다.As is well known, the intra-frame coding method in compression encoding of a video signal is a method of reducing redundancy in the spatial domain, and the inter-frame coding method is a method of removing redundancy in the time domain. In interframe coding, motion compensation DPCM compares the previous frame with the current frame to extract information about the object's movement. Using this information to predict the current frame properly, prediction error is reduced and differential data is reduced. Done. The motion compensation technique detects a block most similar to a predetermined block of the current frame in a search window of a previous frame and transmits the position of the detected block as a motion vector, while the block of the current frame and the detected previous frame By transmitting the difference with the similar block, the receiving side restores the block of the current frame using the data of the previous frame.

한편, 연속한 영상에서 볼 수 있는 움직임은 여러 형태의 움직임 요소가 복합된 것인데, 이 움직임 요소에는 카메라 패닝(camera panning), 스케일링(scaling), 로테이션(rotation), 물체 이동(object translation)등이 있다. 이러한 움직임 요소중에서 하드웨어 구성상의 제약 등으로 움직임 보상이 가능한 요소는 평행 이동과 관련된 카메라 패닝(camera panning)과 물체 이동(object translation)이다. 여기서 카메라 패닝과 물체이동은 국부적인 면에서 살펴보면 동일한 2차원 이동이지만 카메라 패닝은 해당 영역에 대해서 공통적으로 움직임이 이루어 지는 것에 비해서, 물체 이동은 국부적으로 이루어지는 특성을 지니고 있다.On the other hand, the motions seen in successive images are a combination of several types of motion elements, which include camera panning, scaling, rotation, and object translation. have. Among such moving elements, the elements capable of compensating for motion due to hardware configuration constraints are camera panning and object translation related to parallel movement. Here, camera panning and object movement are the same two-dimensional movements in terms of local aspects, but camera panning has the characteristics that the object movement is made locally compared to the movement in common with the corresponding area.

따라서 카메라 패닝과 같이 공통적으로 이루어지는 영상의 움직임을 하나의 움직임 벡터(이를 패닝벡터 혹은 전역벡터라 한다.)로 나타낼 경우에 각 블럭별로 움직임 벡터를 산출하여 각각 보내는 것보다 전체적으로 데이타를 압축할 수 있을 것이다. 그리고 통상적으로 배경 영상은 움직임이 없기 때문에 배경 영상에 움직임이 발생한 경우는 대부분 카메라 패닝에 기인한 움직임이고, 따라서 배경영상의 움직임 벡터는 패닝벡터와 동일한 것이다.Therefore, in case of representing the motion of the image which is made in common like camera panning as one motion vector (this is called panning vector or global vector), it is possible to compress the data as a whole rather than calculating and sending motion vectors for each block. will be. In general, since the background image has no motion, most of the motion generated in the background image is due to camera panning. Therefore, the motion vector of the background image is the same as the panning vector.

즉, 통상의 화상처리장치에서 카메라를 옆으로 또는 위,아래로 이동 시키면서 화면을 잡는 경우, 프레임간에 전체 화면에 대한 이동이 발생하므로 이러한 화면의 이동방향, 정도를 송신하면 수신단은 이전 프레임을 패닝벡터만큼 이동시키므로써 데이타의 전송량을 감축할 수 있게 된다.That is, in the case of holding a screen while moving the camera sideways or up and down in a conventional image processing apparatus, since the movement of the entire screen occurs between frames, the receiving end pans the previous frame when the direction and degree of movement of the screen are transmitted. By shifting by vector, the amount of data can be reduced.

이러한 패닝벡터를 검출하기 위한 종래의 방법은 현재 프레임을 이루는 각 블럭들이 이전 프레임에 대하여 추정된 움직임 벡터들 중 동일한 움직임 벡터가 타 움직임 벡터들보다 맣을 때, 이를 패닝벡터로 검출하는 방식이다.The conventional method for detecting such a panning vector is a method of detecting each panning vector as a panning vector when the same motion vector among the motion vectors estimated for the previous frame is larger than other motion vectors.

그러나 이러한 방식은 현재 프레임에 대한 각 블럭들의 움직임 벡터를 구하고, 이들 움직임 벡터들 중 동일한 움직임 벡터가 다른 움직임 벡터보다 많은지를 비교하여야 하므로 계산량이 많아진다는 문제점과, 화면내에서 움직이는 물체가 많은 경우 카메라 패닝에 의한 움직임과 물체의 움직임을 구별하지 못하는 경우가 종종 발생한다는 문제점을 가지고 있다.However, this method requires a motion vector of each block for the current frame and compares whether the same motion vector is larger than other motion vectors among these motion vectors. There is a problem in that a case where a motion due to panning and an object motion cannot be distinguished often occurs.

한편, 패닝벡터를 구하는 종래의 다른 방법으로서 영상의 전경과 배경을 구분한 후 배경 영상의 움직임 벡터를 산출하는 방식이 있는데, 이 방법은 입력된 영상을 움직임이 있는 전경(foreground)영상과 움직임이 없는 배경(background)영상으로 분명하게 분리하는 것이 어렵고, 제한된 데이타를 가지고 분리할 경우에도 많은 시간과 계산량을 필요로 한다. 따라서 실용적인 면을 고려하여 정확성이 약간 떨어지더라도 쉽게 배경 영상의 움직임 벡터를 구할 수 있는 방법이 요구된다.Meanwhile, another conventional method of obtaining a panning vector is to calculate a motion vector of a background image after dividing the foreground and the background of the image, and this method converts the input image into the foreground image and the motion. It is difficult to separate clearly with no background image, and it takes a lot of time and computation to separate with limited data. Therefore, there is a need for a method of easily obtaining a motion vector of a background image even if the accuracy is slightly reduced in consideration of practical aspects.

이에 본 발명은 상기와 같은 문제점을 해소하고 필요성에 부응하여 간단하게 배경 영상의 움직임 벡터를 산출하기 위한 움직임 추정방법 및 장치를 제공하는데 그 목적이 있다.Accordingly, an object of the present invention is to provide a motion estimation method and apparatus for solving the above problems and simply calculating a motion vector of a background image in response to a need.

상기와 같은 목적을 달성하기 위하여 본 발명의 방법은, 움직임 추정을 위하여 현재영상과 기준영상의 데이타를 입력하는 영상 입력단계와; 입력된 영상을 소정 크기의 균일한 블럭들로 분할하는 영상 분할단계; 영상분할에 의해 형성된 각 블럭에 대하여 움직임 벡터와 정합오차를 각각 산출하는 단계; 상기 움직임 벡터 추정단계에서 계산된 정합오차를 소정의 기준치와 비교하여 블럭을 선별하는 단계; 선별된 블럭 전체에 대해서 단일한 움직임 벡터를 추정하는 단계; 및 상기 추정된 단일한 움직임 벡터를 배경 벡터로서 출력하는 단계를 포함하는 것을 특징으로 한다.In order to achieve the above object, the method of the present invention comprises: an image input step of inputting data of a current image and a reference image for motion estimation; An image segmentation step of dividing an input image into uniform blocks of a predetermined size; Calculating a motion vector and a matching error for each block formed by image segmentation; Selecting a block by comparing the matching error calculated in the motion vector estimating step with a predetermined reference value; Estimating a single motion vector for the entire selected block; And outputting the estimated single motion vector as a background vector.

또한, 상기와 같은 목적을 달성하기 위한 본 발명의 장치는, 입력영상을 소정의 크기로 축약하는 서브 샘플러와; 상기 서브 샘플러에서 축약된 영상을 이전영상으로부터 소정 크기의 블럭별로 각각 움직임 추정하여 정합오차를 산출하는 블럭매칭 움직임 추정기; 상기 블럭매칭 움직임 추정기로부터 입력되는 해당 블럭의 정합오차를 소정의 기준치와 비교하는 비교기; 상기 비교기의 출력에 따라 해당 블럭의 정합오차가 상기 기준치보다 작을 경우에 해당 블럭의 인덱스를 저장하는 메모리; 상기 서브 샘플러로부터, 상기 메모리가 출력하는 인덱스에 해당되는 영상데이타를 입력받아 소정의 서치영역에서 기준영상과 비교하여 움직임 추정하는 제1배경 움직임 추정기; 상기 제1배경 움직임 추정기가 출력하는 움직임 벡터를 중심으로 소정의 서치영역에서 선택된 원영상과 기준영상을 비교하여 움직임 추정하는 제2배경 움직임 추정기가 구비된 것을 특징으로 한다.In addition, the apparatus of the present invention for achieving the above object, and a sub-sampler for reducing the input image to a predetermined size; A block-matching motion estimator for estimating a matching error by motion estimation of each of the images abbreviated by the subsampler for each block of a predetermined size; A comparator for comparing a matching error of the corresponding block input from the block matching motion estimator with a predetermined reference value; A memory for storing an index of the corresponding block when the matching error of the corresponding block is smaller than the reference value according to the output of the comparator; A first background motion estimator that receives image data corresponding to an index output from the memory from the subsampler and estimates motion by comparing the reference data with a reference image in a predetermined search area; And a second background motion estimator configured to compare the original image and the reference image selected in the predetermined search area with respect to the motion vector output by the first background motion estimator to estimate the motion.

이하, 첨부된 도면을 참조하여 본 발명의 실시예를 자세히 설명하기로 한다.Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings.

제1도는 본 발명에 따라 배경 영상의 움직임 벡터를 산출하는 방법을 도시한 흐름도로서, 본 발명의 방법은 움직임 추정을 하기 위하여 현재영상과 기준영상을 입력하는 영상 입력단계(S1); 입력된 영상을 블럭매칭알고리즘(BMA)에 따라 움직임 추정하기 위하여 소정 크기의 균일한 블럭으로 분할하는 영상 분할단계(S2); 영상분할에 의해 형성된 각 블럭에 대하여 움직임 벡터를 추정하는 단계(S3); 상기 움직임 벡터 추정과정에서 계산된 정합오차(distortion)를 소정의 기준치와 비교하여 블럭을 선별하는 단계(S4); 선별된 블럭 전체에 대해서 단일한 움직임 벡터를 추정하는 단계(S5); 상기 추정된 단일한 움직임 벡터를 배경 벡터로서 출력하는 단계(S6)를 포함하고 있다.1 is a flowchart illustrating a method of calculating a motion vector of a background image according to the present invention. The method of the present invention includes an image input step S1 of inputting a current image and a reference image for motion estimation; An image segmentation step (S2) of dividing the input image into uniform blocks having a predetermined size in order to estimate motion according to a block matching algorithm (BMA); Estimating a motion vector for each block formed by image segmentation (S3); Selecting a block by comparing a distortion calculated in the motion vector estimation process with a predetermined reference value (S4); Estimating a single motion vector for the entire selected block (S5); And outputting the estimated single motion vector as a background vector (S6).

이와 같은 움직임 추정의 각 단계를 좀 더 자세히 설명하면, 영상 입력단계(S1)에서는 움직임 추정을 하기 위한 현재영상과 움직임 추정의 기준이되는 이전 혹은 이후 영상(기준영상)을 소정 포맷으로 입력한다. 예컨대, 입력되는 영상의 포맷이 4:2:0이라면 휘도영상(Y)의 크기는 720 x 480이고, 칼라영상(Cb,Cr)의 크기는 360 x 240이며, SIF 포맷이라면 휘도영상(Y)의 크기는 360 x 240이고 칼라영상(Cb,Cr)의 크기는 180 x 120 이다. 본 발명에서는 입력되는 영상의 포맷을 제한할 필요가 없으며, 효율성을 위하여 통상 휘도신호(Y)의 영상만을 이용하여 움직임 벡터를 추정한다.In more detail, each step of the motion estimation will be described in detail. In the image input step S1, a current image for motion estimation and a previous or subsequent image (reference image) serving as a reference for motion estimation are input in a predetermined format. For example, if the format of the input image is 4: 2: 0, the size of the luminance image Y is 720 x 480, the size of the color images Cb and Cr is 360 x 240, and if the SIF format is the luminance image Y The size of is 360 x 240 and the size of the color image (Cb, Cr) is 180 x 120. In the present invention, there is no need to limit the format of the input image, and for efficiency, the motion vector is estimated using only the image of the luminance signal Y.

영상을 분할하는 단계(S2)에서는 기존에 사용하는 블럭매칭알고리즘(BMA)에 따라 움직임 벡터를 산출하기 위하여 입력된 영상 프레임을 소정 크기의 블럭으로 분할하는데, 예컨대 16 x 16 혹은 8 x 8 크기의 블럭으로 분할할 수 있으나 16 x 16 정도가 바람직하다. 이어서 움직임벡터 추정단계(S3)에서는 움직임 추정을 위한 레퍼런스 블럭의 위치를 중심으로 소정의 사이즈(예컨대, -8/7, -32/31등)로 서치 윈도우(Search Window)를 형성하고, 이 서치 윈도우 안에서 레퍼런스 블럭과 후보블럭들을 비교하여 가장 작은 정합오차(distortion)를 발생하는 후보블럭을 찾는다. 이때 정합오차의 계산을 위하여 평균절대에러(MAE)를 이용할 경우, 다음과 같이 정합오차를 각 후보블럭에 대해 구한 후 정합오차가 최소가 되는 후보블럭의 위치를 움직임 벡터로서 추정하고, 이 후보블럭의 정합오차를 함께 출력한다. 즉, 서치 윈도우안의 모든 후보블럭과 레퍼런스 블럭을 비교하는 것을 풀 서치 블럭매칭(full search block matching algorithm)이라 하고, 수식적으로 가장 일치하는 블럭을 찾기 위하여 연속된 두 프레임의 영상중에서, 이전 프레임의 영상(기준영상)을 f1(x,y), 현재 프레임의 영상을 f2(x,y)라 했을 때, f2(x,y)와 f1(x-a,y-b)에서 a, b를 변화시켜 가면서 f1(x-a,y-b)와 f2(x,y)의 차를 구하여, 그 차가 최소가 되는 (a,b)를 움직임 벡터로 예측한다. 이와같이 블럭간의 최소오차를 구하는 방법을 평균절대오차(MAE:Mean Absolute Error)방법이라 하며, 평균절대오차(Eabs)는로 구해진다. 이때 식에서 B는 블럭 크기를 뜻한다. 그리고 이 움직임 벡터 추정단계(S3)에서 움직임 벡터를 산출하는 것은 배경영상의 움직임 벡터를 산출하기 위하여 각 블럭의 정합정도를 알아보기 위한 것이므로, 계산량을 줄이기 위하여 정합하려고 하는 영상의 축약된 데이타를 사용하는 것이 바람직하다.In the step of dividing the image (S2), the input image frame is divided into blocks having a predetermined size in order to calculate a motion vector according to a conventional block matching algorithm (BMA). For example, 16 x 16 or 8 x 8 It can be divided into blocks, but 16 x 16 is preferable. Subsequently, in the motion vector estimating step S3, a search window is formed at a predetermined size (eg, -8/7, -32/31, etc.) around the position of the reference block for motion estimation. Compare the reference block and the candidate blocks in the window to find the candidate block that produces the smallest distortion. In this case, when the average absolute error (MAE) is used to calculate the matching error, the matching error is obtained for each candidate block as follows, and the position of the candidate block with the minimum matching error is estimated as a motion vector, and this candidate block is obtained. Outputs the matching error of. In other words, comparing all candidate blocks and reference blocks in the search window is called a full search block matching algorithm. When the image (reference image) is f 1 (x, y) and the image of the current frame is f 2 (x, y), a and b are selected from f 2 (x, y) and f 1 (xa, yb). Finding the difference between f 1 (xa, yb) and f 2 (x, y) while changing, predicts (a, b) that the difference is the minimum as a motion vector. The minimum error between blocks is called the Mean Absolute Error (MAE) method, and the average absolute error (E abs ) is Obtained by Where B is the block size. In order to calculate the motion vector of the background image, the motion vector is calculated in this motion vector estimating step (S3). Therefore, the reduced data of the image to be matched is used to reduce the calculation amount. It is desirable to.

이어서 정합정도 판별 및 블럭 선별단계(S4)에서는 앞 단계(S3)에서 각 블럭에 대해 산출한 정합오차를 소정의 기준치(T)와 비교하여 기준치를 초과할 경우에는 물체의 변형이 심하거나 잘못된 움직임 벡터로 간주하여 버리고, 기준값 이하인 블럭을 선별하여 블럭 인데스를 저장 한다.Subsequently, in the matching degree determination and block selection step (S4), if the matching error calculated for each block in the previous step (S3) is compared with the predetermined reference value (T), the deformation of the object is severe or incorrect movement. It is regarded as a vector, and blocks that are less than or equal to the reference value are stored to store the block indes.

그리고 선별된 블럭에 대한 움직임 벡터 추정단계(S5)에서는 선별된 블럭 전체에 대해서 단일한 움직임 벡터를 산출하는데, 앞서 수행된 움직임 추정단계(S3)에서 각 블럭을 개별적으로 사용하는 것과는 달리 선별된 블럭 전체를 함께 사용하여 움직임 벡터를 구한다. 이때 움직임 벡터를 구하는데 있어서 계산량을 줄이기 위하여 두 단계에 거쳐 움직임 벡터를 산출하는데, 첫 번째 단계에서는 축약된 데이타를 이용하여 넓은 범위의 움직임 벡터를 구하고, 두 번째 단계에서는 원영상을 이용하여 첫 번째 단계에서 구한 움직임 벡터를 기준으로 작은 범위 내에서 정밀한 움직임 벡터를 구한다.In the motion vector estimation step S5 for the selected block, a single motion vector is calculated for the entire selected block. In contrast, the selected block is different from using each block individually in the motion estimation step S3. Use the whole together to find a motion vector. At this time, in order to reduce the amount of computation in calculating the motion vector, the motion vector is calculated in two steps. In the first step, a wide range of motion vectors is obtained using the abbreviated data, and in the second step, the first image is obtained using the original image. A precise motion vector is obtained within a small range based on the motion vector obtained in the step.

제2도는 본 발명에 따라 배경 영상의 움직임 벡터를 산출하는 장치를 도시한 블럭도로서, 이 장치는 서브 샘플러(21), 블럭매칭 움직임 추정기(22), 비교기(23), 메모리(24), 제1배경움직임 추정기(25), 제2배경 움직임 추정기(26)로 구성되어 있다.2 is a block diagram showing an apparatus for calculating a motion vector of a background image according to the present invention, which includes a subsampler 21, a block matching motion estimator 22, a comparator 23, a memory 24, The first background motion estimator 25 and the second background motion estimator 26 are configured.

제2도에 있어서, 서브 샘플러(21)는 입력 영상을 서브 샘플링(subsampling)하여 축약하는데, 예컨대 수평방향과 수직방향으로 각각 1/2 축약할 경우의 영상은 제3도에 도시된 바와 같다. 제3도를 참조하면, 검은 화소와 블랭크 화소는 서브 샘플러로 입력되는 원영상의 화소 인데, 수직 및 수평 방향으로 각각 1/2로 축약하기 때문에 하나건너 선택된 화소는 검은색으로 표시되어 있고, 버려지는 화소는 블랭크로 표시되어 있다. 따라서 서브 샘플러(21)의 출력은 검은 화소들로 이루어 지며 원영상보다 1/4의 크기를 갖는다.In FIG. 2, the subsampler 21 reduces the sub-sampling of the input image by subsampling, for example, the image in the case of reducing 1/2 each in the horizontal direction and the vertical direction is as shown in FIG. Referring to FIG. 3, the black pixels and the blank pixels are pixels of the original image input to the subsampler, and the pixels selected one by one are displayed in black because they are reduced to 1/2 in the vertical and horizontal directions, respectively. The pixels are marked with blanks. Therefore, the output of the subsampler 21 is composed of black pixels and is 1/4 the size of the original image.

블럭매칭 움직임 추정기(22)는 상기 서브 샘플러(21)에서 축약된 현재영상을 기준영상(순방향 움직임 추정일 경우에는 이전영상, 역방향 움직임 추정일 경우에는 이후영상)으로부터 움직임 추정하여 움직임 벡터와 정합오차를 산출하는데, 본 발명에서는 블럭매칭 움직임 추정기(22)는 블럭을 선별하기 위한 것이므로 정합오차(distortion)만을 출력해도 충분하다. 이러한 블럭매칭 움직임 추정기(22)는 이미 알려진 바와 같이, 레퍼런스 블럭을 이전 영상(혹은 이후영상)에 형성된 서치 윈도우 안에 있는 다수의 후보블럭들과 비교하여 정합오차가 가장 작은 후보블럭의 위치를 움직임 벡터로서 탐색하고, 이때의 정합오차를 출력하는데, 정합오차는 앞서 설명한 바와 같이 레퍼런스 블럭의 픽셀들과 후보 블럭들의 픽셀들과의 오차를 구해 평균을 구한 것이다.The block-matching motion estimator 22 estimates the current video abbreviated by the sub-sampler 21 from the reference video (previous video for forward motion estimation and subsequent video for backward motion estimation) and matches the motion vector with a match vector. In the present invention, since the block matching motion estimator 22 is for selecting blocks, it is sufficient to output only a matching error. As already known, the block matching motion estimator 22 compares a reference block with a plurality of candidate blocks in a search window formed in a previous image (or a subsequent image) and moves the position of the candidate block having the smallest matching error to a motion vector. As described above, the matching error is calculated, and the matching error is obtained by obtaining an error between pixels of the reference block and pixels of the candidate blocks as described above.

비교기(23)는 블럭 매칭 움직임 추정기(22)에서 산출된 정합오차를 소정의 기준치(임계값 : T)와 비교하여 이 기준치(T)보다 작을 경우에는 해당 블럭의 인덱스번호를 메모리(24)에 저장하고, 기준치(T)보다 클 경우에는 해당 블럭에 대한 잘못된 움직임 벡터로 간주하여 블럭 인덱스를 버린다.The comparator 23 compares the matching error calculated by the block matching motion estimator 22 with a predetermined reference value (threshold value: T) and, when smaller than this reference value T, stores the index number of the corresponding block in the memory 24. If it is larger than the reference value T, the block index is regarded as an invalid motion vector for the block.

이와 같이 입력된 한 프레임의 영상에 대하여 움직임 추정이 완료되면 제4도에 도시된 바와 같이, 선택된 블럭에 의한 영상이 형성되고, 이와 같이 선택된 영상 전체에 대해서 움직임 벡터를 추정함으로써 배경 영상의 움직임 벡터를 구할 수 있다. 여기서 선택된 영상 블럭에 대한 인덱스는 메모리(24)에 저장되어 있기 때문에, 이를 이용하여 배경영상에 대한 움직임 추정을 수행한다.When motion estimation is completed with respect to the image of one frame input as described above, as shown in FIG. 4, an image by the selected block is formed, and the motion vector of the background image is estimated by estimating the motion vector with respect to the entire selected image. Can be obtained. Since the index of the selected image block is stored in the memory 24, the motion estimation for the background image is performed using the index.

즉, 블럭매칭 추정기(22)에서는 블럭 선별을 위하여 소정 크기의 블럭들에 대해 개별적으로 움직임 벡터를 각각 추정하였으나 배경 움직임 벡터를 산출하기 위한 움직임 추정기(25,26)에서는 제4도의 빗금쳐진 블럭과 같이 선택된 블럭 전체에 대해서 단일한 움직임 벡터를 산출한다.That is, the block matching estimator 22 estimates the motion vectors individually for the blocks of a predetermined size for block selection, but the motion estimators 25 and 26 for calculating the background motion vectors are shown in FIG. A single motion vector is calculated for the entire selected block.

이때 배경 움직임 벡터의 계산량을 줄이기 위하여 제5도에 도시된 바와 같이 두 단계의 움직임 추정을 하는데, 첫 번째 움직임 추정에서는 축약된 영상을 가지고 넓은 범위의 움직임 벡터를 구하고, 두 번째 움직임 추정에서는 원영상의 데이타를 가지고 첫 번째 단계에서 산출한 움직임 벡터를 중심으로 작은 탐색영역에서 정밀한 움직임 벡터를 구한다. 예컨대, 첫 번째 움직임 벡터에서는 수평 및 수직으로 각각 1/2 축약된 데이타를 이용하여 넓은 범위의 움직임 벡터를 구하였다면, 두 번째 단계에서는 첫 번째 움직임 벡터를 중심으로 2 이상의 탐색영역을 설정한 후 원영상의 데이타를 이용하여 정밀한 움직임 벡터를 산출한다. 이때 두 번째 움직임 추정은 첫 번째 움직임 추정에서 구한 움직임 벡터(MV1)을 중심으로 일정 범위내에서 이루어지는데, 탐색영역의 크기는 적어도 첫 번째 단계에서 사용한 축약률 이상이 되어야 한다. 즉, 축약률이 1/2일 경우에는 탐색영역의 크기는 2 이상이 되어야 한다. 이와 같이 탐색영역이 축약률보다 커야 하는 것은 축약된 데이타를 사용함으로써 발생되는 불확실성을 줄이기 위함이다.In order to reduce the computation of the background motion vector, two-step motion estimation is performed as shown in FIG. 5. In the first motion estimation, a wide range of motion vectors are obtained with a reduced image, and in the second motion estimation, the original image is estimated. With the data of, we obtain a precise motion vector in a small search area around the motion vector calculated in the first step. For example, in the first motion vector, if a wide range of motion vectors is obtained using data reduced in half, respectively, horizontally and vertically, in the second step, two or more search areas are set around the first motion vector. A precise motion vector is calculated using the image data. At this time, the second motion estimation is performed within a predetermined range around the motion vector MV1 obtained from the first motion estimation. The size of the search area should be at least equal to the reduction factor used in the first step. That is, when the reduction ratio is 1/2, the size of the search area should be 2 or more. Thus, the search area should be larger than the reduction rate in order to reduce the uncertainty caused by using the reduced data.

1차 배경 움직임 추정기(25)는 앞서 설명한 바와 같이 2단계의 움직임 추정중 첫 번째 단계를 수행하기 위한 것으로서, 서브 샘플러(21)로부터 축약된 영상 데이타를 입력받아 메모리(24)로부터 지정되는 인덱스의 블럭들의 데이타를 기준영상으로부터 소정의 서치영역안에서 움직임 추정하여 넓은 범위의 움직임 벡터(MV1)을 산출하고, 2차 움직임 추정기(26)는 2 단계의 움직임 추정중 두 번째 단계를 수행하기 위한 것으로서, 원영상의 데이타를 입력받아 메모리(24)의 인덱스가 지정하는 블럭들의 데이타를 기준영상으로부터 움직임 추정하여 정확한 배경 움직임 벡터(MV2)를 산출한다. 이때 2차 움직임 탐색은 1차 움직임 추정에 의해 산출된 움직임 벡터(MV1)를 중심으로 소정의 탐색 영역안에서 이루어지며, 탐색결과 산출된 움직임 벡터(MV2)를 배경 움직임 벡터로서 출력하게 된다. 예컨대, 1차 움직임 추정은 +/-20정도의 탐색영역에서 실시하였다면, 2차 움직임 추정은 +/-4정도의 탐색영역에서 움직임 추정한다. 그리고 움직임 추정기(25,26)는 배경 영상에 대한 움직임 추정기이므로 블럭별로 이루어지기보다는 선택된 블럭을 전체로서 처리하여 단일한 움직임 벡터를 출력한다.As described above, the first background motion estimator 25 performs the first step of the two-step motion estimation. The first background motion estimator 25 receives the reduced image data from the sub-sampler 21 and receives an index designated from the memory 24. The motion of the blocks is estimated from a reference image in a predetermined search area to calculate a wide range of motion vectors (MV1), and the second motion estimator 26 performs the second step of the two-step motion estimation. An accurate background motion vector MV2 is calculated by motion estimation of data of blocks designated by the index of the memory 24 from the reference image by receiving data of the original image. At this time, the secondary motion search is performed in a predetermined search area around the motion vector MV1 calculated by the primary motion estimation, and the motion vector MV2 calculated as a result of the search is output as a background motion vector. For example, if the first motion estimation is performed in the search region of about +/- 20, the second motion estimation is motion estimation in the search region of about +/- 4. Since the motion estimators 25 and 26 are motion estimators for the background image, the motion estimators 25 and 26 process a selected block as a whole and output a single motion vector, rather than each block.

이상에서 살펴본 바와 같이 본 발명에 따라 배경 움직임 벡터를 추정할 경우에 축약된 데이타를 사용하여 계산량을 줄임과 아울러 전경과 배경을 구분하기 위한 별도의 연산을 수행하지 않고서도 간단하게 배경영상의 움직임 벡터를 구할 수 있는 효과가 있다.As described above, when estimating the background motion vector according to the present invention, the motion vector of the background image is simply reduced without using a reduced data and performing a separate operation for distinguishing the foreground from the background. There is an effect that can be obtained.

Claims (3)

움직임 추정을 위하여 현재영상과 기준영상의 데이타를 입력하는 영상 입력단계(S1); 입력된 영상을 소정 크기의 균일한 블럭들로 분할하는 영상 분할단계(S2); 영상분할에 의해 형성된 각 블럭에 대하여 움직임 벡터와 정합오차를 각각 산출하는 단계(S3); 상기 움직임 벡터 추정단계(S3)에서 계산된 정합오차를 소정의 기준치와 비교하여 블럭을 선별하는 단계(S4); 선별된 블럭 전체에 대해서 단일한 움직임 벡터를 추정하는 단계(S5); 및 상기 추정된 단일한 움직임 벡터를 배경 벡터로서 출력하는 단계(S6)를 포함하는 것을 특징으로 하는 배경 영상의 움직임 추정방법.An image input step S1 of inputting data of a current image and a reference image for motion estimation; An image segmentation step (S2) of dividing an input image into uniform blocks of a predetermined size; Calculating a motion vector and a matching error for each block formed by image segmentation (S3); Selecting a block by comparing the matching error calculated in the motion vector estimating step (S3) with a predetermined reference value (S4); Estimating a single motion vector for the entire selected block (S5); And outputting the estimated single motion vector as a background vector (S6). 제1항에 있어서, 상기 선별된 블럭전체에 대해 움직임 벡터를 추정하는 단계는 축약된 영상을 기준영상과 비교하여 넓은 범위에서 움직임 추정하는 제1움직임 추정단계와, 상기 제1움직임 추정단계에서 산출된 움직임 벡터를 중심으로 좁은 범위에서 원영상을 기준영상과 비교하여 움직임 추정하는 제2움직임 추정단계로 구성된 것을 특징으로 하는 배경 영상의 움직임 추정방법.The method of claim 1, wherein the estimating of the motion vector for the entire selected block comprises: a first motion estimating step of estimating motion in a wide range by comparing the abbreviated image with a reference image and calculating the first motion estimating step; And a second motion estimation step of estimating motion by comparing the original image with the reference image in a narrow range based on the calculated motion vector. 입력영상을 소정의 크기로 축약하는 서브 샘플러(21); 상기 서브 샘플러(21)에서 축약된 영상을 이전영상으로부터 소정 크기의 블럭별로 각각 움직임 추정하여 정합오차를 산출하는 블럭매칭 움직임 추정기(22); 상기 블럭매칭 움직임 추정기(22)로부터 입력되는 해당 블럭의 정합오차를 소정의 기준치(T)와 비교하는 비교기(23); 상기 비교기의 출력에 따라 해당 블럭의 정합오차가 상기 기준치보다 작을 경우에 해당 블럭의 인덱스를 저장하는 메모리(24); 상기 서브 샘플러로부터, 상기 메모리가 출력하는 인덱스에 해당되는 영상데이타를 입력받아 소정의 서치영역에서 기준영상과 비교하여 움직임 추정하는 제1배경 움직임 추정기(25); 상기 제1배경 움직임 추정기가 출력하는 움직임 벡터를 중심으로 소정의 서치영역에서 선택된 원영상과 기준영상을 비교하여 움직임 추정하는 제2배경 움직임 추정기(26)가 구비된 것을 특징으로 하는 배경 영상의 움직임 추정장치.A subsampler 21 for reducing the input image to a predetermined size; A block-matching motion estimator (22) for estimating a matching error by motion estimation of each of the images reduced by the subsampler (21) for each block of a predetermined size; A comparator (23) for comparing a matching error of the corresponding block input from the block matching motion estimator (22) with a predetermined reference value (T); A memory 24 for storing an index of the block when the matching error of the block is smaller than the reference value according to the output of the comparator; A first background motion estimator (25) which receives image data corresponding to an index output by the memory from the subsampler and estimates motion by comparing the reference data with a reference image in a predetermined search area; A second background motion estimator 26 is provided which compares the original image selected in the predetermined search area with the reference image based on the motion vector output by the first background motion estimator, and includes a motion estimation of the background image. Estimator.
KR1019960015266A 1996-05-09 1996-05-09 Method and apparatus for motion estimation of background image Expired - Fee Related KR100204477B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1019960015266A KR100204477B1 (en) 1996-05-09 1996-05-09 Method and apparatus for motion estimation of background image

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019960015266A KR100204477B1 (en) 1996-05-09 1996-05-09 Method and apparatus for motion estimation of background image

Publications (2)

Publication Number Publication Date
KR970078659A KR970078659A (en) 1997-12-12
KR100204477B1 true KR100204477B1 (en) 1999-06-15

Family

ID=19458189

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019960015266A Expired - Fee Related KR100204477B1 (en) 1996-05-09 1996-05-09 Method and apparatus for motion estimation of background image

Country Status (1)

Country Link
KR (1) KR100204477B1 (en)

Also Published As

Publication number Publication date
KR970078659A (en) 1997-12-12

Similar Documents

Publication Publication Date Title
KR100530223B1 (en) Frame interpolation method and apparatus at frame rate conversion
US6782054B2 (en) Method and apparatus for motion vector estimation
JP4001400B2 (en) Motion vector detection method and motion vector detection device
US8625673B2 (en) Method and apparatus for determining motion between video images
US8064522B2 (en) Motion-vector detecting device, motion-vector detecting method, and computer program
US6628711B1 (en) Method and apparatus for compensating for jitter in a digital video image
US20040114688A1 (en) Device for and method of estimating motion in video encoder
KR100657261B1 (en) Adaptive Motion Compensation Interpolation Method and Apparatus
WO2010093430A1 (en) System and method for frame interpolation for a compressed video bitstream
EP2011342A1 (en) Motion estimation at image borders
KR20030070278A (en) Apparatus and method of adaptive motion estimation
CN102075760A (en) Quick movement estimation method and device
JP4688462B2 (en) Method and apparatus for differential coding of image blocks using predictive coding
US20050180506A1 (en) Unit for and method of estimating a current motion vector
KR100204478B1 (en) Empty space compensation method by global movement and its device
KR20080072454A (en) Frame interpolation device and frame interpolation method for estimating motion by separating background and moving objects
KR100942887B1 (en) Motion estimation
WO2000034920A1 (en) Motion vector estimation
US5710603A (en) Method for detecting motion vectors
KR100204477B1 (en) Method and apparatus for motion estimation of background image
KR0185841B1 (en) A motion extimator for a video coder
KR100208984B1 (en) Moving vector estimator using contour of object
KR0152014B1 (en) Motion Estimation Method in Image Data Compression and Its Apparatus
JPH08242454A (en) Method for detecting global motion parameter
KR0181068B1 (en) Motion estimator

Legal Events

Date Code Title Description
A201 Request for examination
PA0109 Patent application

Patent event code: PA01091R01D

Comment text: Patent Application

Patent event date: 19960509

PA0201 Request for examination

Patent event code: PA02012R01D

Patent event date: 19960509

Comment text: Request for Examination of Application

PG1501 Laying open of application
E701 Decision to grant or registration of patent right
PE0701 Decision of registration

Patent event code: PE07011S01D

Comment text: Decision to Grant Registration

Patent event date: 19981230

GRNT Written decision to grant
PR0701 Registration of establishment

Comment text: Registration of Establishment

Patent event date: 19990329

Patent event code: PR07011E01D

PR1002 Payment of registration fee

Payment date: 19990330

End annual number: 3

Start annual number: 1

PG1601 Publication of registration
PR1001 Payment of annual fee

Payment date: 20020228

Start annual number: 4

End annual number: 4

PR1001 Payment of annual fee

Payment date: 20030303

Start annual number: 5

End annual number: 5

PR1001 Payment of annual fee

Payment date: 20040226

Start annual number: 6

End annual number: 6

PR1001 Payment of annual fee

Payment date: 20050225

Start annual number: 7

End annual number: 7

PR1001 Payment of annual fee

Payment date: 20060224

Start annual number: 8

End annual number: 8

PR1001 Payment of annual fee

Payment date: 20070305

Start annual number: 9

End annual number: 9

PR1001 Payment of annual fee

Payment date: 20080303

Start annual number: 10

End annual number: 10

PR1001 Payment of annual fee

Payment date: 20090302

Start annual number: 11

End annual number: 11

PR1001 Payment of annual fee

Payment date: 20100302

Start annual number: 12

End annual number: 12

FPAY Annual fee payment

Payment date: 20110302

Year of fee payment: 13

PR1001 Payment of annual fee

Payment date: 20110302

Start annual number: 13

End annual number: 13

LAPS Lapse due to unpaid annual fee
PC1903 Unpaid annual fee

Termination category: Default of registration fee

Termination date: 20130209