KR0180162B1 - Apparatus and method for processing a motion vector - Google Patents

Apparatus and method for processing a motion vector Download PDF

Info

Publication number
KR0180162B1
KR0180162B1 KR1019950022593A KR19950022593A KR0180162B1 KR 0180162 B1 KR0180162 B1 KR 0180162B1 KR 1019950022593 A KR1019950022593 A KR 1019950022593A KR 19950022593 A KR19950022593 A KR 19950022593A KR 0180162 B1 KR0180162 B1 KR 0180162B1
Authority
KR
South Korea
Prior art keywords
motion
motion vector
motion estimation
estimation
high resolution
Prior art date
Application number
KR1019950022593A
Other languages
Korean (ko)
Other versions
KR970009408A (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 KR1019950022593A priority Critical patent/KR0180162B1/en
Publication of KR970009408A publication Critical patent/KR970009408A/en
Application granted granted Critical
Publication of KR0180162B1 publication Critical patent/KR0180162B1/en

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/513Processing of motion vectors
    • 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/587Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal sub-sampling or interpolation, e.g. decimation or subsequent interpolation of pictures in a video sequence

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

본 발명은 움직임 벡터 처리 장치 및 그 방법에 관한 것으로, 저해상도 움직임 추정을 행한 후 고해상도 움직임 추정을 행하는 움직임추정 방식에 있어서, 본 발명의 장치는 고해상도 움직임 추정 시에 발생되는 움직임 벡터가 전체 탐색 영역을 벗어나지 않도록 하기 위해 제어신호를 출력하는 제어부(100)와; 상기 제어부(100)에서 출력된 제어신호에 따라 에지 컨트롤 기능을 수행함으로써 움직임 벡터를 제한하여처리하도록 되어진 움직임 추정부(200)로 구성되어 있고, 본 발명의 방법은 데시메이션된 화상에서 저해상도 움직임 추정을 행한 후에 발생된 움직임 벡터를 중심으로 하여, 원래 화상의 일부 영역에 대해서만 탐색을 하는 고해상도 움직임 추정 시에 발생되는 움직임 벡터가 전체 탐색 영역을 벗어나지 않도록 하기 위해 움직임 추정 전용 칩의 에지 컨트롤 기능을 이용하여 제한함으로써, 에러가 발생되는 것을 방지할 수 있다는데 그 이점이 있다.The present invention relates to a motion vector processing apparatus and a method thereof. In the motion estimation method of performing a high resolution motion estimation after performing a low resolution motion estimation, the apparatus of the present invention includes a motion vector generated at the time of high resolution motion estimation for the entire search region. A control unit 100 for outputting a control signal so as not to deviate; The motion estimator 200 is configured to limit and process a motion vector by performing an edge control function according to a control signal output from the controller 100. The method of the present invention provides a low resolution motion estimation method in a decimated image. The edge control function of the motion estimation dedicated chip is used to ensure that the motion vector generated during the high resolution motion estimation that searches only a part of the original image does not leave the entire search area. By limiting this, an error can be prevented from occurring, which has the advantage.

Description

움직임 벡터 처리 장치 및 그 방법( An apparatus and the method for processing a motion vector)An apparatus and the method for processing a motion vector

제1도는 2단계 움직임 추정 방식에 따른 블록도.1 is a block diagram according to a two-step motion estimation method.

제2도는 저해상도와 고해상도 화상에서의 움직임 추정을 나타낸 예시도.2 is an exemplary diagram showing motion estimation in low resolution and high resolution images.

제3도의 (a)는 2 단계 움직임 추정 방식을 간략하게 도시한 블록도.FIG. 3A is a block diagram schematically illustrating a two-step motion estimation scheme. FIG.

(b)는 원 화상과 데시메이션된 화상을 나타낸 예시도.(b) is an illustration showing an original image and a decimated image.

(c)는 저해상도 움직임 추정 시에 구한 움직임 벡터를 이용하여 고해상도 움직임 추정하는 것을 나타낸 예시도.(c) is an exemplary diagram illustrating high resolution motion estimation using a motion vector obtained at the time of low resolution motion estimation.

제4도는 본 발명에 따른 움직임 벡터 처리 장치의 블록도.4 is a block diagram of a motion vector processing apparatus according to the present invention.

제5도는 본 발명에 따른 움직임 추정 부의 일실시예에 대한 블럭도.5 is a block diagram of an embodiment of a motion estimation unit according to the present invention.

제6도의 (a)는 움직임 추정 전용 전용 칩에 의한 4n x 8 레퍼런스 블럭의 탐색 윈도우를 도시한 도면.FIG. 6A illustrates a search window of a 4n x 8 reference block by a dedicated chip for motion estimation.

(b)는 4n x 8 레퍼런스 블럭을 도시한 도면.(b) shows a 4n x 8 reference block.

제7도의 (a) 내지 (f)는 움직임 추정 전용 칩에 의한 이니셜라이제이션 시퀀서의 타이밍을 도시한 타이밍도.7A to 7F are timing charts showing timings of an initialization sequencer using a motion estimation dedicated chip.

제8도의 (a) 내지 (f)는 움직임 추정 전용 칩에 의한 블록 시퀀서의 타이밍을 도시한 타이밍도.8A to 8F are timing diagrams showing timing of a block sequencer using a motion estimation dedicated chip.

제9도의 (a)내지 (g)는 움직임 추정 전용 칩에 의한 출력 타이밍을 도시한 타이밍도.9A to 9G are timing charts showing output timings by a motion estimation dedicated chip.

제10도는 움직임 추정 전용 칩의 에지 컨트롤 기능을 설명하기 위한 한 프레임의 예시도이다.FIG. 10 is an exemplary diagram illustrating one frame for explaining an edge control function of a motion estimation dedicated chip.

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

100 : 제어부 200 : 움직임 추정부100: control unit 200: motion estimation unit

210 : 데이터 형성기 220 : 256 프로세서 어레이210: data former 220: 256 processor array

230 : 오차 램 240 : 오차 비교기230: error RAM 240: error comparator

250 : 입출력 버스 260 : 콘트롤러250: I / O bus 260: controller

본 발명은 움직임 벡터 처리 장치 및 그 방법에 관한 것으로서, 특히 영상 부호기에 있어서 움직임 추정 전용 칩의 에지 컨트롤 기능을 이용하여 움직임 벡터가 전체 탐색 영역을 벗어나지 않도록 제한하는 움직임 벡터 처리 장치 및 그 방법에 관한 것이다.The present invention relates to a motion vector processing apparatus and a method thereof, and more particularly, to a motion vector processing apparatus and method for limiting a motion vector from leaving the entire search area by using an edge control function of a motion estimation dedicated chip in an image encoder. will be.

HDTV(High Definition TV : 고선명 텔레비젼)나 비디오 폰과 같이 MPEG-2(Moving Picture Experts Group-2) 방식을 사용하는 영상 부호기는 영상 복호기로 전송하여야 할 데이타를 줄이기 위하여 여러가지 데이타 압축 과정을 거치게 되는데, 그 데이타 압축 과정 중의 한가지 방법이 움직임 추정(motion estimation)이다.Video encoders that use the Moving Picture Experts Group-2 (MPEG-2) method, such as HDTV (High Definition TV) or video phones, undergo various data compression processes to reduce the data to be transmitted to the video decoder. One method of the data compression process is motion estimation.

일반적으로, 움직임 추정이라는 것은 연속되는 영상 신호에서 현재 프레임의 화소들이 이전 프레임의 화소들에 비해 어느 정도 움직였는지를 벡터로 표시한 움직임 백터(motion vector)를 추정하는 것으로서, 전체 영상 데이타를 전송하는 대신애 상기와 같은 움직임 벡터를 전송함으로써 전송되는 영상 데이타의 양을 줄이는 영상 데이타 압축기술을 말한다.In general, motion estimation is an estimation of a motion vector indicating how much the pixels of the current frame move with respect to the pixels of the previous frame in a continuous image signal. Instead, it refers to an image data compression technique that reduces the amount of image data transmitted by transmitting the motion vectors as described above.

각 방식에서의 움직임 추정 방법에 대해서 살펴보면 다음과 같다.The motion estimation method in each method is as follows.

1) ATRC 방식(ADTV : Advanced TV)1) ATRC method (ADTV: Advanced TV)

ADTV dp 쓰이는 움직임 추정 방식은 MPEG 에서 제안된 알고리즘인 반화소(half-pixel)의 정확도를 갖는 블럭 정합 알고리즘(BMA : Block Matching Algorithm)을 채택하고 있다.The motion estimation method used for ADTV dp adopts a block matching algorithm (BMA) with half-pixel accuracy, which is an algorithm proposed in MPEG.

블럭 정합 알고리즘(BMA)은 화면의 움직임이 수평 또는 수직으로 평행 이동한 것으로 가정하여 움직임이 일어난 프레임(즉, 현재 프레임)의 블럭 화상이 움직임이 일어나기 전 프레임(즉, 이전 프레임)의 어느 위치에 있는 블럭 화상과 가장 잘 일치하는 가를 추정하여 그 위치를 통해 움직임 백터를 추정하는 방법이다.The block matching algorithm (BMA) assumes that the motion of the screen is moved horizontally or vertically in parallel, so that the block image of the frame in which the movement occurs (i.e., the current frame) is positioned at a position in the frame (i.e., the previous frame) before the movement occurs. It is a method of estimating the motion vector through the position by estimating whether the block image is the best match.

ADTV 에서 말하는 움직임 추정은 움직임 정도를 나타내는 2 차원의 벡터를 계산해내는 과정을 말하며 이 벡터들을 움직임 벡터라 한다.Motion estimation in ADTV refers to the process of calculating a two-dimensional vector representing the degree of motion. These vectors are called motion vectors.

ADTV 에는 2 가지의 움직임 추정이 사용되는데 하나는 현재의 화면을 만들기 위해 과거의 화면을 이용하여 포워드 움직임 추정을 하는 것이고, 다른 하나는 현재의 화면을 만들기 위해 미래의 화면을 이용하여 백워드 움직임 추정을 하는 것이다.Two types of motion estimation are used in ADTV, one for forward motion estimation using the past screen to make the current screen, and the other for backward motion estimation using the future screen to make the current screen. To do.

두 가지 방법 모두 M*N 으로 미리 정해진 탐색 구간에서 왜곡이 가장 작은 블럭을 찾아내어 움직임 벡터를 알아내게 된다.Both methods find the motion vector by finding the block with the least distortion in the predetermined search interval with M * N.

많이 쓰이는 오차(또는, 왜곡 : distortion) 측정 방법으로는 평균 자승 오차(MSE : Mean Squre Error) 와 편균 절대 오차(MAE : Mean Absolute Error)가 있는데 계산상의 간편함과 하드웨어의 간단함으로 평균 절대 오차(MAE) 가 주로 쓰인다.Common methods of measuring error (or distortion) include Mean Square Error (MSE) and Mean Absolute Error (MAE). ) Is mainly used.

반화소 움직임 추정은 두 단계로 이루어지는데 처음의 탐색은 한화소(integer-pixel) 움직임 벡터를 얻기 위함이고 두번재 탐색으로 처음에 얻은 화소 단위 움직임 벡터를 중심으로 반화소(half-pixel) 움직임 벡터를 구하게 된다.Half-pixel motion estimation consists of two steps. The first search is to obtain an integer-pixel motion vector, and the half-pixel motion vector is centered around the pixel-by-pixel motion vector first obtained by the second search. Will be obtained.

ADTV 에서는 입력되는 영상을 몇가지 종류로 구분하여 프레임별로 나누는데 I-프레임(Intra-frame), P-프레임(Predicted-frame), B-프레임(Bidirectional-predicted frame)이 3 가지이고 각 프레임 별 움직임 추정을 살펴보면 다음과 같다.In ADTV, the input video is divided into several types and divided into frames. There are three types of I-frame, P-frame, and B-frame, and motion estimation for each frame. Looking at it as follows.

i-프레임은 움직임 추정을 하지 않아 움직임 벡터는 없지만 다른 프레임의 움직임 추정에 쓰이고, P-프레임은 바로 전의 I-프레임 또는 P-프레임을 이용하여 포워드 움직임 추정을 하고 다른 P-프레임 또는 P-프레임을 이용하여 포워드 움직임 추정과 백워드 움직임 추정을 하고 또 포워드 움직임 보정된 프레임과 백워드 움직임 보정된 프레임 둘을 합하여 둘로 나눈 보간된 프레임을 만들어 이 3 가지 움직임 추정 결과중 이동된 블럭의 차이(DBD : Displaced Block Differece)가 가장 적은 것을 택하여 움직임 벡터를 정하게 된다.i-frames do not have motion estimation, so there is no motion vector, but they are used for motion estimation of other frames. P-frames use the previous I-frame or P-frame to perform forward motion estimation and another P-frame or P-frame. Forward motion estimation and backward motion estimation are then performed, and the forward motion corrected frame and the backward motion compensated frame are added together to create an interpolated frame divided into two. The displaced block differential is chosen to determine the motion vector.

DBD 의 가장 작은 값이 보간된 것일 경우에는 포워드 움직임 벡터와 백워드 움직임 벡터 둘 다를 전송하게 된다.When the smallest value of the DBD is interpolated, both the forward motion vector and the backward motion vector are transmitted.

2) G.I 사 방식(digicipher)2) G.I company digicipher

G.I 사의 Digicipher system 제안서에 나와 있는 움직임 추정 방식은 상기에서 서술한 ATRC 사의 ADTV 에 사용된 블럭 정합 알고리즘(BMA)과 유사하지만 정확도에 있어서 반화소 움직임 추정을 하지 않기 때문에 ADTV 보다 떨어진다.The motion estimation method in G.I's Digicipher system proposal is similar to the block matching algorithm (BMA) used in ATRC's ADTV described above, but is less than ADTV because it does not estimate half-pixel motion in accuracy.

그외의 다른 점을 살펴보면 우선 백워드 움직임 추정을 하지 않고 포워드 움직임 추정만을 하여 ADTV 의 B-프레임이 없다. 즉, Digicipher 의 프레임은 I-프레임과 P-프레임만으로 이루어져 있다.In other respects, there is no B-frame of ADTV by performing forward motion estimation without backward motion estimation. That is, the Digicipher frame consists of only I-frames and P-frames.

움직임 추정의 단위는 매크로 블럭으로 하는데 매크로 블럭은 4*2 Y(휘도신호) 블럭, U(색차신호) 1개 블럭, V(색차신호) 1개 블럭으로 이루어지므로 이 모든 블럭들이 같은 움직임 벡터를 가지게 된다.The unit of motion estimation is a macro block. The macro block is composed of a 4 * 2 Y (luminance signal) block, one U (color difference signal) block, and one V (color difference signal) block. Have.

3) MIT 방식(ATVA-Progressive HDTV)3) MIT method (ATVA-Progressive HDTV)

MIT 에서 제안하는 움직임 추정 방법은 시-공 압축 방식(Spatio-temporal constraint) 에 바탕을 두는데, 이 방식은 화상의 변위가 프레임간에 일정한 율로 일어났다고 가정하고, 그 변위율과 움직임 벡터와의 상관 관계를 나타내는 미분 방정식인 시-공 압축 방정식(Spatio-temporal constraint)을 찾아내어 그 근을 구함으로써 움직임 벡터를 추정하고자 하는 방식이다.The motion estimation method proposed by MIT is based on the spatial-temporal constraint, which assumes that image displacement occurs at a constant rate between frames and correlates the displacement rate with the motion vector. It is a method to estimate the motion vector by finding the spatial-temporal constraint, which is a differential equation representing the relationship, and finding its root.

이런 방식은 균일한 속도의 전송을 가정으로 하며 물체의 회전, 가메라 줌, 움직임 물체 전송 영역, 다른 움직임 벡터를 갖는 다중 물체 움직임에서는 유효하지 않다.This method assumes a uniform velocity transmission and is not valid for multi-object movements with object rotation, camera zoom, moving object transmission regions, or other motion vectors.

작은 구간 내에서 균일한 움직임 전송을 가정하고 움직임 추정이 불명확한 구간에서 움직임 보상을 억제하더라도 시-공 압축 방정식(Spatio-temporal constraint)에 바탕을 둔 움직임 추정과 보상에 의해 시간적인 상관성이 많이 감소된다.Even if the motion is assumed to be uniform within a small interval and motion estimation is suppressed in an area where the motion estimation is uncertain, the temporal correlation is greatly reduced by motion estimation and compensation based on spatial-temporal constraints. do.

블럭 정합 알고리즘(BMA)과 비교해서 이 방법은 블럭 크기에 따라 계산량이 크게 줄어들고 노이즈가 있을 때나 없을 때나 잘 수행된다.Compared with the block matching algorithm (BMA), this method greatly reduces the amount of computation depending on the block size and performs well with or without noise.

움직임 벡터는 휘도 신호로부터 추정되고 동일한 움직임 백터는 휘도 신호(Y)와 색차 신호(U,Y)에 대해 사용되며, 한 움직임 벡터는 매 32*32 화소 크기의 블럭마다 얻어진다.The motion vector is estimated from the luminance signal and the same motion vector is used for the luminance signal Y and the chrominance signal U and Y, one motion vector is obtained for every 32 * 32 pixel block.

이전 부호화된 프레임과 움직임 벡터로부터 현재 프레임에 대해 예측이 이루어지고 부호화된 현재 프레임과 예측된 것과의 차가 계산되는데 이 차이를 움직임 보상된 차(motion compensted residual)라 한다.Prediction is performed on the current frame from the previous coded frame and the motion vector, and a difference between the current frame and the predicted code is calculated. This difference is referred to as a motion compensated residual.

이것은 각각의 Y, U, V 세 부분에 대해 얻어지며 상대적으로 화상 프레임에 대해 충분히 큰 에너지를 갖을 때(화면 변화가 있을 때) 움직임 보상이 무효화되고 화상 프레임 자체가 부호화된다.This is obtained for each of the three parts Y, U and V and when the image has relatively large enough energy (when there is a picture change) relative to the picture frame, motion compensation is invalidated and the picture frame itself is encoded.

4) Zenith 사와 ATT 사 방식(DSC-HDTV)4) Zenith and ATT (DSC-HDTV)

영상의 특성상 근접한 화소들의 화소값은 일반적으로 매우 근사한 값들로 구성되어 있는데, 그 이유는 물체의 경계 및 윤곽을 나타내는 선내의 화소드이 같은 물체를 표시하는데 사용되기 때문이다.Due to the nature of the image, the pixel values of adjacent pixels are generally composed of very close values because the pixels in the lines representing the boundary and contour of the object are used to display the same object.

Zenith 사와 ATT 사는 이러한 영상의 특성을 이용하여 프레임 영상 데이타의 불필요한 중복성을 제거하므로써 효과적으로 움직임을 추정하는 계층적으로 움직임 추정(hierarchial motion estimation) 방법을 사용하였다.Zenith and ATT used a hierarchical motion estimation method that effectively estimates motion by eliminating unnecessary redundancy of frame image data by using the characteristics of these images.

또한, 제 1 도는 2 단계 움직임 추정 방식에 따른 블럭도이고, 제 2 도는 저해상도와 고해상도 화상에서의 움직임 추정을 나타낸 예시도로서, 전송 채널의 효율을 늘리기 위하여 Zenith 사와 ATT 사에서는 저해상도 움직임 추정(coarse motion estimation)과 고해상도 움직임 추정(fine motion estiomation)의 2 단계 움직임 추정을 제안하였는데 그 제시된 방법을 구체적으로 살펴보면 다음과 같다.FIG. 1 is a block diagram according to a two-step motion estimation method, and FIG. 2 is a diagram showing motion estimation in low resolution and high resolution images. In order to increase transmission channel efficiency, low resolution motion estimation is performed by Zenith and ATT. Two-stage motion estimation of motion estimation and fine motion estimation is proposed. The proposed method is described in detail as follows.

먼저 필터를 사용하여 프레임 영상 신호와 이전 영상 신호의 중복성을 제거한다. 그로 인해, 해상도는 수평, 수직 방향으로 각각 1/2 씩 줄어들게 된다.First, a filter is used to remove redundancy between the frame video signal and the previous video signal. As a result, the resolution is reduced by 1/2 each in the horizontal and vertical directions.

전체 면적이 1/4 로 줄어든 저해상도 영상 신호로부터의 저해상도 움직임 추정(coarse motion estimation)은 32*16(수평*수직) 화소 크기의 블럭단위로 현재 프레임과 이전 프레임의 화소값 차의 절대 값인 추정 오차를 비교함으로써 이루어 지는데, 이때 휘도 성분만을 이용하고 이전 프레임 블럭을 탐색 구간 만큼 이동하며 얻은 추정 오차 중 가장 작은 것이 그 블럭의 움직임 벡터가 된다.Coarse motion estimation from low resolution video signals with an overall reduction of 1/4 is an estimation error that is the absolute value of the pixel value difference between the current frame and the previous frame in units of 32 * 16 (horizontal * vertical) pixels. In this case, the smallest of the estimation errors obtained by using only the luminance component and moving the previous frame block by the search interval becomes the motion vector of the block.

상기와 같은 계층적 저해상도 화상에서의 블럭 매칭은 원래의 고해상도 화상에 사용하였을때 보다 탐색 구간과 블럭 크기가 1/4 로 줄어들어 계산량이 현저하게 줄어든다.The block matching in the hierarchical low resolution image as described above reduces the search interval and the block size by a quarter compared to that used in the original high resolution image, thereby significantly reducing the calculation amount.

고해상도 움직임 추정은 저해상도 화상에서 구한 움직임 벡터를 이용하여 원래의 고해상도 화상에서의 움직임 벡터로 대치시키고 이를 다시 고해상도 움직임 벡터로 세분화 시킨다.High resolution motion estimation uses motion vectors obtained from low resolution images to replace them with motion vectors in the original high resolution images and subdivides them into high resolution motion vectors.

즉, 저해상도 화상에서의 16*8 블럭 크기와 저해상도 움직임 벡터는 원래 해상도의 화상에서 수평, 수직 방향으로 각각 1/2 씩 줄어든 것이므로 이들을 모두 2 배 시키면 원래 화상의 블럭 크기와 움직임 벡터가 되게 된다.That is, the 16 * 8 block size and the low resolution motion vector in the low resolution image are each reduced by 1/2 in the horizontal and vertical directions of the original resolution image, so double them all to obtain the block size and the motion vector of the original image.

이는 다시 8*8의 작은 블럭 크기로 나뉘어지고, 각각의 작은 블럭은 저해상도 움직임 벡터를 기점으로 다시 탐색 구간 만큼 이동하여 고해상도 움직임 벡터를 제 2 도에 도시한 바와 같이 구한다.This is divided into 8 * 8 small block sizes, and each small block is moved back from the low resolution motion vector by the search interval to obtain a high resolution motion vector as shown in FIG.

움직임 벡터 부호기는 각각 저해상도와 고해상도에서 추정한 움직임 벡터를 이용하여 다음 프레임의 화면을 추정하고 그에 대응되는 움직임 벡터를 선택한다.The motion vector encoder estimates the screen of the next frame using motion vectors estimated at low resolution and high resolution, respectively, and selects a motion vector corresponding thereto.

이것은 움직임 벡터를 압축하는데 있어서 비트율을 제한하기 위한 것인데, 채널 밴드 폭의 여백에 따라 저해상도 움직임 벡터만을 보내기도 하고 저해상도와 고해상도 움직임 벡터를 보내기도 한다.This is for limiting the bit rate in compressing the motion vector, and depending on the margin of the channel band width, it may send only a low resolution motion vector or a low resolution and high resolution motion vector.

MPEG-2 방식에 따르는 영상 부호기를 만들때 움직임 추정 전용 칩을 사용하는 겨웅가 많은데, 그 움직임 추정 전용 침에서의 가능한 탐색 범위(search range)가 시스템이 요구하는 탐색 범위보다 매우 작은 경우가 많기 때문에 다량의 움직임 추정 전용 칩을 가지고 병렬 처리하여야 한다.There are many cases where a motion estimation chip is used when making an MPEG-2 based video encoder, since the possible search range of the motion estimation dedicated needle is often smaller than the system's required search range. It must be processed in parallel with a large amount of chips for motion estimation.

다시 말해서, MPEG-2 방식에서 사용하는 움직임 추정 방법에서는 움직임 추정을 하는 탐색 영역이 커지면 커질수록 계산량이 늘어나게 되는데, 이러한 탐색 영역을 만족시키는 움직임 추정 전용 칩이 없기 때문에 많은 양의 움직임 추정 전용 칩을 사용하여 전체 탐색 영역을 만족시키도록 시스템을 설계해야 한다.In other words, in the motion estimation method used in the MPEG-2 method, the larger the search area for the motion estimation becomes, the larger the calculation amount becomes. Since there is no dedicated motion estimation chip that satisfies the search area, a large amount of the motion estimation dedicated chip is used. System must be designed to satisfy the full search range.

그러나, 많은 양의 움직임 추정 전용 칩을 사용하게 되면 시스템의 구현에 큰 문제가 되므로 여러가지 방법을 사용하여 칩의 수량을 줄이게 된다.However, the use of a large amount of dedicated motion estimation chips is a big problem in the implementation of the system, and thus the number of chips is reduced by various methods.

제 3 도의 (a)는 2 단계 움직임 추정 방식을 간략하게 도시한 블럭도로서, 첫 단계에서는 전체 화상으로부터 데시메이션(decimation : 추림)된 화상에서 대강의 움직임 벡터를 구하는 저해상도 움직임 추정(coarse ME) 을 수행하고, 두번째 단계에서는 다시 원래의 화상으로 돌아가서 첫 단계에서 구한 움직임 벡터를 중심으로 일부 영역만 탐색하는 고해상도 움직임 추정(fine ME) 을 수행하게 되는데, 본 발명은 여러 움직임 추정 방법 중 상기와 같은 움직임 추정 방법을 채택하게 된다.FIG. 3 (a) is a block diagram schematically illustrating a two-step motion estimation method. In the first step, a low-resolution motion estimation method for obtaining a rough motion vector in a decimated image from an entire image is shown. In the second step, a high-resolution motion estimation (fine ME) is performed, which returns only to the original image and searches only a partial region based on the motion vector obtained in the first step. The motion estimation method is adopted.

상기의 2 단계 움직임 추정 방법을 좀더 구체적으로 살펴보면 다음과 같다.Looking at the two-step motion estimation method in more detail as follows.

제 3 도의 (b)는 원 화상과 데시메이션된 화상을 나타낸 예시도로서, 움직임 추정 전용 칩(예를 들어, SGS-Thomson 社의 STI3220)의 수를 줄이기 위하여 즉, 움직임 추정의 계산량을 감소시키기 위해 원래의 화상을 데시메이션 하여 축소시킨 화상을 나타낸 것인데, 수평 방향이 1/4, 수직 방향이 1/4 로 축소된 상태에서 움직임 추정을 하는 것이다.(B) of FIG. 3 is an exemplary view showing the original image and the decimated image. In order to reduce the number of motion estimation dedicated chips (eg, STI3220 of SGS-Thomson), that is, to reduce the amount of motion estimation calculations. The original image is decimated to reduce the size of the original image. The motion estimation is performed with the horizontal direction reduced to 1/4 and the vertical direction reduced to 1/4.

제 3 도의 (c)는 저해상도 움직임 추정시에 구한 움직임 벡터를 이용하여 고해상도 움직임 추정하는 것을 나타낸 예시도로서, a 는 데시메이션된 화상내에서 기준 프레임(anchor frame)의 화상과 현재 프레임의 화상에 대한 움직임 추정을 하여 움직임 벡터를 구하는 것이고, b 는 상기 데시메이션된 화상에서 구한 움직임 벡터를 확대한후 원래의 화상에 적용하여 다시 움직임 추정을 하는 것이다.FIG. 3 (c) shows an example of high resolution motion estimation using a motion vector obtained at low resolution motion estimation, in which a denotes an image of an anchor frame and an image of a current frame in a decimated image. The motion vector is obtained by performing the motion estimation, and b is the motion vector obtained from the decimated image, which is enlarged and then applied to the original image to perform motion estimation again.

일반적으로 HDTV 등에서 이용되는 탐색 영역은 정수 화소 단위로 수편 -128 ~ +127 -64 ~ +63 을 갖는다.In general, a search area used in an HDTV or the like has several pieces -128 to +127 -64 to +63 in integer pixel units.

제 3 도의 (a)에 도시된 바와 같이 수평, 수직 방향으로 각각 1/4 씩 데시메이션된 화상에서 저해상도 움직임 추정을 수행하게 되면, 이때의 탐색 영역은 수평 -32 ~ +31, 수직 -16 ~ +15을 갖게 된다.As shown in (a) of FIG. 3, when the low resolution motion estimation is performed on the decimated image in the horizontal and vertical directions each quarter, the search area is horizontal -32 to +31 and vertical -16 to You get +15.

상기와 같이 축소된 탐색 영역에서 구한 움직임 벡터를 가지고 고해상도 움직임 추정을 할 때에는 상기 움직임 백터를 수평, 수직으로 각각 4 배씩 확대시킨 후 원래의 정상적인 화면에서 그 벡터를 중심으로 일정 구간 즉, 수평 -8 ~ +7, 수직 -8 ~ +7 의 탐색 영역에 대해서 다시 움직임 추정을 수행한다.When performing high resolution motion estimation using the motion vector obtained from the reduced search area as described above, the motion vector is enlarged 4 times horizontally and vertically, respectively, and then a certain section, ie horizontal -8, is centered on the vector in the original normal screen. The motion estimation is performed again for the search areas of ~ +7 and vertical -8 ~ +7.

일반적인 경우에는 아무런 문제가 생기지 않으나 다음과 같은 경우에는 문제점이 발생된다.In general, no problem occurs, but the following occurs.

수평 방향에 대해서만 고려해 보면 저해상도 움직임 추정시에 구해진 움직임 벡터가 -32. 또는 +31 일 경우, 고해상도 움직임 추정시 상기 움직임 벡터에 4 를 곱한 값인 -128, -124, +124 를 중심으로 -8 ~ +7 의 범위를 다시 탐색하게 된다.Considering only the horizontal direction, the motion vector obtained when estimating low resolution motion is -32. Alternatively, in case of +31, the range of -8 to +7 is searched again based on -128, -124, and +124, which are values multiplied by 4 when the high resolution motion is estimated.

상기와 같은 경우에 고해상도 움직임 추정의 결과가 -129 ~ -136 과 +128 ~ +132 까지 발생하게 되므로, 시스템이 규정한 최대의 탐색 범위인 -128 ~ +127 의 범위를 벗어나게 되어 에러가 발생한다는 문제점이 있다. 이러한 문제점은 수직의 움직임 벡터에 대해서도 동일하게 발생된다.In this case, since the result of the high resolution motion estimation occurs from -129 to -136 and +128 to +132, an error occurs out of the range of -128 to +127, which is the maximum search range defined by the system. There is a problem. This problem occurs equally for vertical motion vectors.

따라서, 본 발명은 상기와 같은 문제점을 해결하기 위해 안출된 것으로, 움직임 추정 전용 칩의 에지 컨트롤 기능을 이용하여 움직임 벡터가 전체 탐색 영역을 벗어나지 않도록 제한하는 움직임 벡터 처리 장치 및 그 방법을 제공하는데 그 목적이 있다.Accordingly, the present invention has been made to solve the above problems, and provides a motion vector processing apparatus and method using the edge control function of the motion estimation dedicated chip to limit the motion vector from leaving the entire search area. There is a purpose.

상기와 같은 목적을 달성하기 위한 본 발명의 움직임 벡터 처리장치는, 저해상도 움직임 추정을 행한 후 고해상도 움직임 추정을 행하는 움직임 추정 방식에 있어서, 고해상도 움직임 추정시에 발생되는 움직임 벡터가 전체 탐색 영역을 벗어나지 않도록 하기 위해 제어 신호를 출력하는 제어부와; 상기 제어부에서 출력된 제어 신호에 따라 에지 컨트롤 기능을 수 행함으로써 움직임 벡터를 제한하여 처리하도록 되어진 움직임 추정부로 구성된 것을 특징으로 한다.In the motion vector processing apparatus of the present invention for achieving the above object, in the motion estimation method of performing high resolution motion estimation after low resolution motion estimation, the motion vector generated at the time of high resolution motion estimation does not leave the entire search region. A control unit for outputting a control signal to the control unit; And a motion estimator configured to limit and process a motion vector by performing an edge control function according to the control signal output from the controller.

또한, 상기와 같은 목적을 달성하기 위한 본 발명의 움직임 벡터처리 방법은, 저해상도 움직임 추정을 행한 후 고해상도 움직임 추정을 행하는 움직임 추정 방식에 있어서, 데시메이션된 화상에서 저해상도 움직임 추정을 행한 후에 발생된 움직임 벡터를 중심으로 하여, 원래 화상의 일부 영역에 대해서만 탐색을 하는 고해상도 움직임 추정시에 발생되는 움직임 벡터가 전체 탐색 영역을 벗어나지 않도록 하기 위해 움직임 추정 전용 칩의 에지 컨트롤 기능을 이용하여 제한하는 것을 특징으로 한다.In addition, the motion vector processing method of the present invention for achieving the above object, in the motion estimation method of performing high resolution motion estimation after low resolution motion estimation, the motion generated after performing the low resolution motion estimation in the decimated image Based on the vector, the motion vector generated during the high resolution motion estimation that searches only a part of the original image is limited using the edge control function of the motion estimation dedicated chip so that the motion vector does not leave the entire search area. do.

이하, 첨부된 도면을 참조하여 본 발명에 대하여 상세히 설명하기로 한다.Hereinafter, with reference to the accompanying drawings will be described in detail with respect to the present invention.

제 4 도는 본 발명에 따른 움직임 벡터 처리 장치의 블럭도로서, 저해상도 움직임 추정을 행한 후 고해상도 움직임 추정을 행하는 움직임 추정 방식에 있어서, 본 발명의 장치는 고해상도 움직임 추정시에 발생되는 움직임 벡터가 전체 탐색 영역을 벗어나지 않도록 하기 위해 제어 신호를 출력하는 제어부(100)와; 상기 제어부(100)에서 출력된 제어 신호에 따라 에지 컨트롤 기능을 수행함으로써 움직임 벡터를 제한하여 처리하도록 되어진 움직임 추정부(200)로 구성된다.4 is a block diagram of a motion vector processing apparatus according to the present invention. In the motion estimation method in which high resolution motion estimation is performed after low resolution motion estimation is performed, the apparatus of the present invention performs a full search for a motion vector generated at the time of high resolution motion estimation. A control unit 100 for outputting a control signal so as not to leave the area; The motion estimator 200 is configured to limit and process a motion vector by performing an edge control function according to a control signal output from the controller 100.

제 5 도는 본 발명에 따른 움직임 추정부의 일실시예에 대한 블럭도로서, 상기 움직임 추정부(200)는 8 비트의 화소 단위로 참조 블럭(reference block)을 입력받기 위한 x 포트와 8 비트 화소 단위로 탐색 윈도우 데이타를 각각 입력받기 위한 A, B, C 포트로 이루어진 데이타 형성기(210)와; 256 개의 프로세서 어레이(220); 16 비트의 오차를 저장하기 위한 오차 램(230); 오차를 비교하기 위한 오차 비교기(240); 상기 오차 비교기(240)에서 오차를 비교한 결과, 최소 오차를 갖는 움직임 벡터와 상기 오차 램(230)을 억세스하기 위한 어드레스 및 오차를 전송하기 위한 입출력 버스(250);및,, ,,신호를 입력하여 각종 동작을 제어하며 MVSYNC, DSYNC0, DSYNC1 신호의 타이밍을 발생하는 콘트롤러(260)로 구성되어 있다.5 is a block diagram of an embodiment of a motion estimator according to the present invention, in which the motion estimator 200 receives an x-port and an 8-bit pixel unit for receiving a reference block in 8-bit pixel units. A data generator 210 comprising A, B, and C ports for receiving search window data; 256 processor arrays 220; An error RAM 230 for storing an error of 16 bits; An error comparator 240 for comparing the errors; As a result of comparing the errors in the error comparator 240, the input and output bus 250 for transmitting the address and the error for accessing the motion vector having the minimum error and the error RAM 230; And , , , , The controller 260 is configured to input signals to control various operations and to generate timing of MVSYNC, DSYNC0, and DSYNC1 signals.

또한, 본 발명에 따른 움직임 벡터 처리 방법은 저해상도 움직임 추정을 행한 후 고해상도 움직임 추정을 행하는 움직임 추정 방식에 있어서, 데시메이션된 화상에서 저해상도 움직임 추정을 행한 후에 발생된 움직임 벡터를 중심으로 하여, 원래 화상의 일부 영역에 대해서만 탐색을 하는 고해상도 움직임 추정시에 발생되는 움직임 벡터가 전체 탐색 영역을 벗어나지 않도록 하기 위해 움직임 추정 전용 칩의 에지컨트롤 기능을 이용하여 제한하는 방법이다.In addition, the motion vector processing method according to the present invention is a motion estimation method in which high resolution motion estimation is performed after low resolution motion estimation, wherein the original image is focused on a motion vector generated after low resolution motion estimation is performed on the decimated image. In order to prevent the motion vector generated during the high resolution motion estimation that searches only a part of the region from leaving the entire search area, the edge control function of the motion estimation dedicated chip is limited.

이어서, 첨부한 도면을 참조하여 움직임 추정 전용 칩중의 하나인 인 SGS-THOMSON 社 에서 제작된 STI3220 을 일실시예로 하여 본 발명에 따른 움직임 벡터 처리 장치의 동작과 움직임 벡터 처리 방법에 대해서 자세히 설명하기로 한다.Subsequently, with reference to the accompanying drawings, the operation of the motion vector processing apparatus and the motion vector processing method of the motion vector processing apparatus according to the present invention will be described in detail by using the STI3220 manufactured by SGS-THOMSON, which is one of the motion estimation dedicated chips. Shall be.

제 4 도에 도시된 바와 같이, 저해상도 움직임 추정을 행한 후 고헤상도 움직임 추정을 행하는 움직임 추정 방식의 경우에, 제어부(100)에서는 고해상도 움직임 추정시에 발생되는 움직임 벡터가 전체 탐색 영역을 벗어나지 않도록 하기 위해 제어 신호를 출력한다.As shown in FIG. 4, in the case of a motion estimation method in which high resolution motion estimation is performed after low resolution motion estimation, the control unit 100 prevents the motion vector generated at the time of high resolution motion estimation from leaving the entire search region. Outputs a control signal.

움직임 추정부(200)에서는 상기 제어부(100)에서 출력된 제어 신호에 따라 에지 컨트롤 기능을 수행함으로써 움직임 벡터를 제한하여 처리하게 된다.The motion estimator 200 restricts and processes a motion vector by performing an edge control function according to the control signal output from the controller 100.

제 5 도를 참조하면,는 움직임 추정 전용 칩을 리셋하기 위한 신호이고,는 출력 인에이블 신호이며,는 시퀀스의 시작을 요구하는 타이밍 신호이고, EC[3:0]는 에지 컨트롤(*edge control)을 위한 4 비트 데이타 신호이고,은 로우이면 블럭의 수직 크기가 8 픽셀이고, 하이이면 블럭의 수직 크기가 16픽셀인 것을 뜻하고,는 로우 이면 블럭의 크기가 정방형(8*8 또는 16*16), 하이 이면 장방형인 것을 알려주는 신호이다.Referring to Figure 5, Is a signal for resetting the motion estimation dedicated chip, Is the output enable signal, Is a timing signal requiring the start of a sequence, EC [3: 0] is a 4-bit data signal for edge control, Is low, the block's vertical size is 8 pixels, high means the block's vertical size is 16 pixels, Is a signal indicating that the block size is low (8 * 8 or 16 * 16) and low is rectangular.

제 6 도의 (a)는 움직임 추정 전용 전용 칩에 의한 4n x 8 레퍼런스 블럭의 탐색 윈도우를 도시한 도면이고, 제 6 도의 (b)는 4n x 8 레퍼런스 블럭을 도시한 도면으로서, 제 5 도와 같이 구성되는 움직임 추정 전용 칩의 4n x 8 레퍼런스 블럭은 제 6 의 (b)에 도시된 바와 같이 수평방향으로 4n 픽셀, 수직방향으로 8 픽셀로 이루어진 방형이고, 이러한 레퍼런스 블럭의 탐색 윈도우는 제 6 도의 (a)에 도시된 바와 같이, 8 행(row), 15 열(column)로 형성된 SWA1, SWB1, SWC1, SWA2, SWB2, SWC@ 서브 윈도우로 나누어져 이니셜라이제이션 시퀀스(initialization sequence)에서는 A포트로는 SWA1, B 포트로는 SWB1, C포트로는 SWC1이 입력되고, 블럭 시퀀스(block sequence)에서는 A포트로는 SWA2, B포트로는 SWB2, C포트로는 SWC2, X포트로는 레퍼런스 블럭이 각각 입력된다.FIG. 6 (a) shows a search window of a 4n x 8 reference block by a dedicated chip for motion estimation, and FIG. 6 (b) shows a 4n x 8 reference block. The 4n x 8 reference block of the motion estimation dedicated chip is composed of 4n pixels in the horizontal direction and 8 pixels in the vertical direction as shown in (b) of FIG. 6, and the search window of the reference block is shown in FIG. As shown in (a), the SWA1, SWB1, SWC1, SWA2, SWB2, and SWC @ sub-windows formed of 8 rows and 15 columns are divided into A ports in the initialization sequence. SWA1 is used as the port, SWB1 is used as the B port, and SWC1 is entered as the C port. SWA2 is used as the A port, SWB2 is used as the B port, SWC2 is used as the C port, and reference block is used as the X port. Are input respectively.

제 7 도는 움직임 추정 전용 칩에 의한 이니셜라이제이션 시퀀스의 타이밍을 도시한 타이밍도로서, 움직임 추정 전용 칩인 SI3220은 동작모드가 이니셜라이제이션 시퀀스와 블럭 시퀀스로 이루어지는데, 이니셜라이제이션 시퀀스는 제 7 도의(a) 내지 (e)에 도시된 바와 같이 128 클럭 사이클 동안에 15 열의 SWA1, SWB1, SWC1 블럭들을 로딩(loading)한다.FIG. 7 is a timing diagram showing the timing of an initialization sequence by a motion estimation dedicated chip. The SI3220, a motion estimation dedicated chip, has an operation mode consisting of an initialization sequence and a block sequence. As shown in (a) to (e), 15 rows of SWA1, SWB1, SWC1 blocks are loaded during 128 clock cycles.

이때, 시퀀스의 시작은신호가 약 1 클럭동안 로우가 되면서 시작되어 처음 8 클럭 동안은 로딩되지 않고 칩이 내부적으로 초기화되며, 이후 120 클럭동안에 각 포트당 120 픽셀(8×15 = 120)의 데이타를 로딩한다.At this time, the beginning of the sequence The signal starts low for about one clock, not loaded during the first eight clocks, and the chip is initialized internally, followed by 120 pixels (8 x 15 = 120) of data per port for 120 clocks.

여기서, 데이타가 로딩되는 순서는 첫번째 열부터 상하 수직방향으로 로딩하면서 순차적으로 15번째 열까지이다.The order in which data is loaded is from the first column to the 15th column sequentially while loading in the vertical direction.

이때, SWA1, SWB1은 수직방향이 8 픽셀이나, SWC1, SWC2는 7픽셀 인데 타이밍을 맞추기 위하여 8 픽셀을 입력하므로, 제 6 도의 (a)에 점선으로 도시된 바와 같이 1 열이 추가로 로딩되어 있으며 움직임 벡터 계산에서는 제외된다.At this time, SWA1 and SWB1 are 8 pixels in the vertical direction, but SWC1 and SWC2 are 7 pixels. Since 8 pixels are input for timing, a column is additionally loaded as shown by a dotted line in FIG. It is excluded from the motion vector calculation.

제 8 도의 (a) 내지 (e)는 움직임 추정 전용 칩에 의한 블럭 시퀀스의 타이밍을 도시한 타이밍도로서, 블럭 시퀀스는 32n(4n x 8=32n)클럭 동안에 SWA2, SWB2, SWC2와 레퍼런스 블럭을 로딩하는데,신호가 로우로서 레퍼런스 블럭이 정방형(예를 들면, 8x8, 16x16)이면 시퀀스의 시작에서신호가 로우가 되는 것이 필수적이 아니지만 레퍼런스 블럭이 정방형이 아니면(=하이), 시퀀스의 시작에서신호가 로우가 되는 것이 필수적이다.(A) to (e) of FIG. 8 are timing diagrams showing the timing of the block sequence by the motion estimation dedicated chip. Loading, If the signal is low and the reference block is square (eg 8x8, 16x16), then at the beginning of the sequence It is not essential that the signal goes low, but if the reference block is not square ( = High), at the beginning of the sequence It is essential that the signal goes low.

제 9 도의 (a) 내지 (g)는 움직임 추정 전용 칩에 의한 출력 타이밍을 도시한 타이밍도로서, 상기와 같이 레퍼런스 블럭이 로딩된 후각 후보 블럭에 대한 오차 계산이 이루어짐과 아울러, 서로 비교되어 최소치를 갖는 후보 블럭의 움직임 벡터와 오차가 구해진 후 제 9 도의 (a) 내기 (g)에 도시된 타이밍으로 입출력 버스(IOB)를 통해 출력된다.(A) to (g) of FIG. 9 are timing diagrams showing output timings by a motion estimation dedicated chip. As shown in FIG. After the motion vector and the error of the candidate block having? Are obtained, they are output through the input / output bus IOB at the timing shown in Fig. 9 (a) and bet (g).

즉, 블럭 시퀀스(block sequence)가 수행된 후 다음 시퀀스의 M+30 번재 클럭 사이클에서 제 9 도의 (c)에 도시된 바와 같이 출력 인에이블신호() 가 하이일 경우에 제 9 도의 (d)와 같이신호가 로우가 되는 타이밍에 입출력 버스에 8 비트의 움직임 벡터(MV)가 실리게 되고, 이어서가 로우가 되는 타이밍에 16 비트의 오차중 상위 8 비트(MSB)가 출력되고, 곧바로 이어서이 로우가 되는 타이밍에 오차의 하위 8 비트(LSB)가 출력된다.That is, in the M + 30th clock cycle of the next sequence after the block sequence is performed, as shown in (c) of FIG. 9, the output enable signal ( Is high, as shown in (d) of FIG. When the signal goes low, an 8-bit motion vector (MV) is loaded on the I / O bus. The highest 8 bits (MSB) out of the 16-bit error are output at the timing when the signal goes low. At the timing of becoming low, the lower 8 bits LSB of the error are output.

이와 같ㅇ디 블럭 시퀀스가 수행되는 중에 입출력 버스를 토해 이전 블럭 시퀀스의 움직임 벡터와 오차 값을 리들할 수 있으며, 입출력 버스에 특정 어드레스를 출력한 후 해당 어드레스의 오차 램을 억세스하여 오차 데이타를 읽어 올 수 있다.As such, the motion vector and the error value of the previous block sequence can be riddled through the I / O bus while the block sequence is being executed, and after outputting a specific address to the I / O bus, the error RAM of the corresponding address is read to read the error data. Can come.

제 10 도는 움직임 추정 전용 칩의 에지 컨트롤 기능을 설명하기 위한 한 프레임의 예시도로서, 제 10 도를 참조하여 움직임 추정 전용 칩 주으이 하나인 ST1 3220(SGS-Thomson 社)의 에지 컨트롤 기능에 대해서 구체적으로 살펴보기로 한다.FIG. 10 illustrates an example of a frame for explaining an edge control function of a motion estimation dedicated chip. Referring to FIG. 10, an edge control function of ST1 3220 (SGS-Thomson), which is a motion estimation dedicated chip, is described in detail with reference to FIG. Let's take a look.

탐색 윈도우가 부분적으로 실제 프레임의 외부에 존재하게 되면 후보 블럭들의 수는 256 보다 적어지게 되고, 유용한 움직임 벡터도 감소하게 된다.If the search window is partially outside the actual frame, the number of candidate blocks is less than 256, and the useful motion vector is also reduced.

움직임 추정 전용 칩(STI3220)은 상기와 같은 것을 고려하여 유용한 영역내에서 움직임 벡터들을 계산하게 된다.The motion estimation dedicated chip STI3220 calculates motion vectors within the useful area in consideration of the above.

탐색 윈도우가 여러 에지들중 한 에지에 위치하는지 아니면 프레임의 4 개 모서리들 중 한 부분에 해당하는 모서리에 위치하는지에 따라 9 가지의 다른 경우가 존재하게 된다.There are nine different cases depending on whether the search window is located at one of the edges or at one of the four corners of the frame.

움직임 추정 전용 칩(STI3220)에는 에지 컨트롤 기능을 이용하기 위하여 4 개의 핀(EC0, EC1, EC2, EC3)을 갖고 있는데, 이 4 개의 핀들은 매 블럭 시퀀스의 첫번째 사이클 동안에 회로내에서 모두 래치되고 바로 이 사이클 동안에 로드된 탐색 윈도우에 관련되어 있다.The Motion Estimation Dedicated Chip (STI3220) has four pins (EC0, EC1, EC2, EC3) for edge control, which are all latched in the circuit during the first cycle of every block sequence. It is related to the search window loaded during this cycle.

각 핀은 프레임의 한 에지( 좌, 우, 상단 또는 하단 )에 관련되어 있고, 블럭 시퀀스의 첫번째 사이클 동안에 하나의 핀을 하이로 만든다는 것은 현재의 탐색 윈도우(부분적인 블럭 시퀀스 동안에 회로 내부로 로드된 탐색 윈도우)가 상기 핀에 관련된 프레임의 에지를 벗어남을 의미하며 현재의 탐색 윈도우에 대한 유용한 움직임 벡터들이 감소됨을 의미하나.Each pin is associated with one edge of the frame (left, right, top or bottom), and making one pin high during the first cycle of the block sequence means that the current search window (loaded into the circuit during the partial block sequence) Means that the search window is off the edge of the frame associated with the pin and the useful motion vectors for the current search window are reduced.

가장 일반적인 경우는 탐색 윈도우가 프레임내에 완전히 포함되어 있는 경우이고, 이때 4 개의 핀들은 모두 로우 상태이다.The most common case is when the search window is completely contained within the frame, where all four pins are low.

EC0 핀은 프레임의 상단 에지에 관련된 것으로 이 핀을 하이로 만들면 움직임 벡터들의 유용한 영역이 양수 또는 제로 값의 수직 성분을 갖는 움직임 벡터들의 영역으로 축소되며, EC1 핀은 프레임의 우측에지에 관련된 것으로 이 핀을 하이로 만들면 움직임 벡터들의 유용한 영역이 음수 또는 제로 값의 수평 성분을 갖는 움직임 벡터들의 영역으로 축소되고, EC2 핀은 프레임의 하단 에지에 관련된 것으로 이 핀을 하이로 만들면 움직임 벡터들의 유용한 영역이 음수 또는 제로 값의 수직 성분을 갖는 움직임 벡터들의 영역으로 축소되며, EC3 핀은 프레임의 좌측 에지에 관련된 것으로 이 핀을 하이로 만들면 움직임 벡터들의 유용한 영역이 양수 또는 제로 값의 수평 성분을 갖는 움직임 벡터들의 영역으로 축소된다.The EC0 pin is related to the top edge of the frame. When this pin is made high, the useful area of the motion vectors is reduced to the area of motion vectors with positive or zero vertical components, and the EC1 pin is related to the right edge of the frame. Making the pin high reduces the useful area of the motion vectors to the area of the motion vectors with a negative or zero horizontal component, and the EC2 pin is related to the bottom edge of the frame. The EC3 pin is related to the left edge of the frame, and when this pin is made high, the useful area of the motion vectors is a motion vector with a positive or zero horizontal component. Is reduced to the area.

탐색 윈도우가 프레임의 모서리를 벗어나게 되면 두개의 에지가 선택되야 한다.If the search window is out of the corner of the frame, two edges should be selected.

아래 표 1 는 에지들의 모든 조합을 요약한 것으로 비현실적인 조합은 * 로 표시하였다.Table 1 below summarizes all combinations of edges, with unrealistic combinations marked with *.

제 10 도를 참조하여 에지에 대해 고려해보면 다음과 같이 9 가지의 경우를 갖는다.Looking at the edge with reference to Figure 10 has nine cases as follows.

① 수평, 수직으로 음의 방향의 움직임 벡터를 가질 수 없는 경구① oral which cannot have motion vector in the negative direction horizontally and vertically

② 수직으로 음의 방향의 움직임 벡터를 가질 수 없는 경우② cannot have a motion vector in the negative direction vertically

③ 수평으로 양의 방향, 수직으로 음의 방향의 움직임 벡터를 가질 수 없는 경우③ When it cannot have a motion vector in a positive direction horizontally and a negative direction vertically

④ 수평으로 음의 방향의 움직임 벡터를 가질 수 없는 경우④ cannot have a motion vector in the negative direction horizontally

⑤ 구하는 움직임 벡터의 범위에 아무런 제약이 없는 경우⑤ When there is no restriction on the range of motion vectors

⑥ 수평으로 양의 방향의 움직임 벡터를 가질 수 없는 경우⑥ cannot have a motion vector in the positive direction horizontally

⑦ 수평으로 음의 방향, 수직으로 양의 방향의 움직임 벡터를 가질 수 없는 경우⑦ It cannot have motion vector in horizontally negative direction and vertically positive direction

⑧ 수직으로 양의 방향의 움직임 벡터를 가질 수 없는 경우⑧ cannot have a motion vector in the positive direction vertically

⑨ 수평, 수직으로 양의 방향의 움직임 벡터를 가질 수 없는 경우 상기와 같이 움직임 벡터를 일정한 범위내로 제한하기 위해 상기 표 1 에 나타낸 움직임 추정 전용 칩의 에지 컨트롤 기능을 이용하게 되는데, 이러한 에지 컨트롤 기능은 한 프레임 화상의 외각에서 발생하는 경우로서 본 발명은 저해상도 움직임 추정(coarse ME)을 행한 후 고해상도 움직임 추정(fine ME)을 행하는 움직임 추정 방식에 있어서 고행상도 움직임 추정시 발생되는 움직임 벡터가 탐색 영역을 벗어나지 못하도록 제한이 필요한 부분에 적용한 것이다.⑨ If it is impossible to have a motion vector in a positive direction horizontally or vertically, the edge control function of the motion estimation dedicated chip shown in Table 1 is used to limit the motion vector to a certain range as described above. In the motion estimation method in which high resolution motion estimation is performed after low resolution motion estimation (coarse ME) and the high resolution motion estimation is performed on the outer edge of a frame image, the motion vector generated during the high resolution motion estimation is a search region. It is applied to the part that needs to be limited so as not to escape.

즉, 저해상도 움직임 추정시 움직임 벡터가 수평 방향으로 -32, -31 또는 31 이거나 수직 방향으로 -16, -15 또는 15 일 경우( 아래 표 2 를 참조하면, ①②③④⑤⑥⑦⑧⑨ 의 경우 ), 고해상도 움직임 추정시 움직임 전용 칩의 에지 컨트롤 기능을 이용하여 움직임 벡터가 항상 탐색 영역을 벗어나지 않도록 제한할 수 있다.That is, if the motion vector is -32, -31 or 31 in the horizontal direction or -16, -15 or 15 in the vertical direction (refer to Table 2 below) for the low resolution motion estimation, the motion is estimated when the high resolution motion is estimated. Dedicated chip edge control can be used to limit the motion vector to always leave the search range.

상기 표 2 의 움직임 벡터 값에 따라 제 10 도와 표 1 를 참조하여 움직임 추정 전용 칩(SGS-Thomson 社의 STi 3220)의 에지 컨트롤 기능을 구체적으로 적용시키면 다음과 같다.According to the motion vector values of Table 2, the edge control function of the motion estimation dedicated chip (SGi-Thomson, Inc. STi 3220) is specifically applied with reference to Table 10 and Table 1 as follows.

① 저해상도 움직임 추정에서의 움직임 벡터(i,j)가 i = -32 또는 -31 이고 j = -16 또는 -15 일 경우에는 고해상도 움직임 추정시 수평, 수직으로 음의 방향의 움직임 벡터를 가질 수 없는 경우이기 때문에 움직임 추정 전용 칩의 EC0 핀과 EC3 핀을 하이로 만들어 주면, 움직임 벡터가 탐색 영역내로 제한된다.① If the motion vector (i, j) in low-resolution motion estimation is i = -32 or -31 and j = -16 or -15, it cannot have a horizontal and vertical motion vector in the high resolution motion estimation. In this case, if the EC0 pin and the EC3 pin of the motion estimation dedicated chip are made high, the motion vector is limited to the search area.

② 저해상도 움직임 추정에서의 움직임 벡터(i,j)가 -30 i 30 이고 j -16 또는 -15 일 경우에는 고해상도 움직임 추정시 수직으로 음의 방향의 움직임 벡터를 가질 수 없는 경우이기 때문에 움직임 추정 전용 침의 EC0 핀을 하이로 만들어 주면, 움직임 벡터가 탐색 영역내로 제한된다.② If the motion vector (i, j) in the low resolution motion estimation is -30 i 30 and j -16 or -15, since the motion vector in the negative direction cannot be vertically obtained when estimating the high resolution motion, Making the needle's EC0 pin high will limit the motion vector into the search range.

③ 저해상도 움직임 추정에서의 움직임 벡터(i,j)가 i 31 이고 j -16 또는 -15 일 경우에는 고해상도 움직임 추정시 수평으로 양의 방향, 수직으로 음의 방향의 움직임 벡터를 가질 수 없는 경우이기 때문에 움직임 추정 전용 칩의 EC0 핀과 EC1 핀을 하이로 만들어 주면, 움직임 벡터가 탐색 영역내로 제한된다.(3) When the motion vector (i, j) in low resolution motion estimation is i 31 and j -16 or -15, the motion vector in the high resolution motion and the vertical direction in the high resolution motion cannot be negative. Therefore, if the EC0 pin and EC1 pin of the motion estimation dedicated chip are made high, the motion vector is limited to the search range.

④ 저해상도 움직임 추정에서의 움직임 벡터(i,j)가 i -32 또는 -31 이고 -14 j 일 경우에는 고해상도 움직임 추정시 수평으로 음의 방향의 움직임 벡터를 가질 수 없는 경우이기 때문에 움직임 추정 전용 칩의 EC3 핀을 하이로 만들어 주면, 움직임 벡터가 탐색 영역내로 제한된다.④ When the motion vector (i, j) in low resolution motion estimation is i -32 or -31 and -14 j, it is because it is not possible to have the motion vector in the negative direction horizontally when estimating the high resolution motion. If we make the EC3 pin high, the motion vector is confined to the search area.

⑤ 저해상도 움직임 추정에서의 움직임 벡터(i,j)가 -30 i 30 이고 -14 j 14 일 경우에는 고해상도 움직임 추정시 구하려는 움직임 벡터의 범위에 아무러 제약이 없는 경우이기 때문에 움직임 추정 전용 칩의 에지 컨트롤 핀들(EC0, EC1, EC2, EC3)을 하이로 만들어 주지 않아도 된다.⑤ If the motion vector (i, j) in the low resolution motion estimation is -30 i 30 and -14 j 14, since there is no limitation in the range of the motion vector to be obtained for the high resolution motion estimation, the edge control of the dedicated chip for motion estimation The pins EC0, EC1, EC2, and EC3 do not need to be high.

⑥ 저해상도 움직임 추정에서의 움직임 벡터(i,j)가 i 31 이고 -14 j 14 일 경에는 고해상도 움직임 추정시 수평으로 양의 방향의 움직임 벡터를 가질 수 없는 경우이기 때문에 움직임 추정 전용 칩의 EC1 핀을 하이로 만들어 주면, 움직임 벡터가 탐색 영역내로 제한된다.⑥ When motion vector (i, j) in low resolution motion estimation is i 31 and -14 j 14, EC1 pin of motion estimation dedicated chip is because it cannot have horizontally positive motion vector in high resolution motion estimation. Makes high, the motion vector is confined to the search area.

⑦ 저해상도 움직임 추정에서의 움직임 벡터(i,j)가 i -32 또는 -31 이고 j 15 일 경우에는 고해상도 움직임 추정시 수평으로 음의 방향, 수직으로 양의 방향의 움직임 추정시 수평으로 음의 방향, 수직으로 양의 방향의 움직임 벡터를 가질 수 없는 경우이기 때문에 움직임 추정 전용 칩의 EC2 핀과 EC3 핀을 하이로 만들어 주면, 움직임 벡터가 탐색 영역내로 제한된다.⑦ When the motion vector (i, j) in low resolution motion estimation is i -32 or -31 and j 15, the negative direction is horizontally when estimating the high resolution motion and the negative direction is horizontal when estimating the motion in the vertical direction. In this case, since the motion vectors in the positive direction cannot be vertically placed, when the EC2 and EC3 pins of the motion estimation dedicated chip are made high, the motion vectors are limited to the search area.

⑧ 저해상도 움직임 추정에서의 움직임 벡터(i,j) rk -30 i 30 이고 j 15 일 경우에는 고해상도 움직임 추정시 수직으로 양의 방향의 움직임 벡터를 가질 수 없는 경우이기 때문에 움직임 추정 전용 칩의 EC2 핀을 하이로 만들어 주면, 움직임 벡터가 탐색 영역내로 제한된다.⑧ Motion vector (i, j) in low resolution motion estimation rk -30 i 30 and j 15 means EC2 pin of motion estimation dedicated chip because it is not possible to have vertical motion vector vertically in high resolution motion estimation. Makes high, the motion vector is confined to the search area.

⑨ 저해상도 움직임 추정에서의 움직임 벡터(i,j)가 i 31 이고 j 15 일 경우에는 고해상도 움직임 추정시 수평, 수직으로 양의 방향의 움직임 벡터를 가질 수 없는 경우이기 때문에 움직임 추정 전용 침의 EC1 핀과 EC2 핀을 하이로 만들어 주면, 움직임 벡터가 탐색 영역내로 제한된다.⑨ If motion vector (i, j) in low resolution motion estimation is i 31 and j 15, EC1 pin of the motion estimation needle is not available because it is not possible to have the motion vector in the horizontal and vertical direction in high resolution motion estimation. And bringing the EC2 pin high, the motion vector is confined to the search area.

이상에서 설명한 바와 같이 본 발명은 저해상도 움직임 추정시에 발생한 움직임 벡터를 이용하여 고해상도 움직임 추정을 할 경우 저해상도 움직임 추정시 움직임 추정부의 에지 컨트롤 기능으로 움직임 벡터를 제한함으로써, 고해상도 움직임 추정을 행한 후에 발생된 움직임 벡터가 전체 탐색 영역의 외부에 발생되지 않기 때문에 에러가 발생되는 것을 방지할 수 있다는데 그 효과가 있다.As described above, in the present invention, when high resolution motion estimation is performed using the motion vector generated at the low resolution motion estimation, the motion vector is limited to the edge control function of the motion estimation unit at the time of low resolution motion estimation. Since the motion vector is not generated outside the entire search area, an error can be prevented from occurring.

Claims (4)

저해상도 움직임 추정을 행한 후 고해상도 움직임 추정을 행하는 움직임 추정 방ㅅ식에 있어서, 고해상도 움직임 추정시에 발생되는 움직임 벡터가 전체 탐색 영역을 벗어나지 않도록 하기 위해 제어 신호를 출력하는 제어부(100)와; 상기 제어부(100)에서 출력된 제어 신호에 따라 에지 컨트롤 기능을 수행함으로써 움직임 벡터를 제한하여 처리하도록 되어진 움직임 추정부(200)로 구성된 것을 특징으로 하는 움직임 처리 장치.A motion estimation method for performing high resolution motion estimation after low resolution motion estimation, the motion estimation method comprising: a control unit (100) for outputting a control signal so that a motion vector generated at the time of high resolution motion estimation does not leave the entire search range; And a motion estimator (200) configured to limit and process a motion vector by performing an edge control function according to a control signal output from the controller (100). 제 1 항에 있어서, 상기 움직임 추정부(200)가 8 비트의 화소 단위로 참조 블럭을 입력받기 위한 X 포트와 8 비트 화소 단위로 탐색 윈도우 데이타를 각각 입력받기 위한 A,B,C 포트로 이루어진 데이타 형성기(210)와; 256 개의 프로세서 어레이(220); 16비트의 오차를 저장하기 위한 오차 램(230); 오차를 비교하기 위한 오차 비교기(240); 상기 오차 비교기(240)에서 오차를 비교한 결과, 최소 오차를 갖는 움직임 벡터와 상기 오차 램(230)을 억세스하기 위한 어드레스 및 오차를 전송하기 위한 입출력 버스(250); 및,EC[3:0] ,,신호를 입력하여 각종 동작을 제어하며 신호의 타이밍을 발생하는 콘트롤러(260)로 구성되어 있는 것을 특징으로 하는 움직임 벡터 처리 장치.The method of claim 1, wherein the motion estimator 200 includes an X port for receiving a reference block in 8-bit pixel units and an A, B, and C port for receiving search window data in 8-bit pixel units, respectively. Data generator 210; 256 processor arrays 220; An error RAM 230 for storing an error of 16 bits; An error comparator 240 for comparing the errors; An input / output bus 250 for transmitting a motion vector having a minimum error, an address for accessing the error RAM 230, and an error as a result of comparing the errors in the error comparator 240; And , EC [3: 0], , Input signals to control various operations A motion vector processing device, comprising: a controller (260) for generating timing of a signal. 저해상도 움직임 추정을 행한 후 고해상도 움직임 추정을 행하는 움직임 추정 방식에 있어서, 데시메이션된 화상에서 저해상도 움직임 추정을 행한 후에 발생된 움직임 벡터를 중심으로 하여, 원래 화상의 일부 영역에 대해서만 탐색을 하는 고해상도 움직임 추정시에 발생되는 움직임 벡터가 전체 탐색 여역을 벗어나지 않도록 하기 위해 움직임 추정 전용칩의 에지 컨트롤 기능을 이용하여 제한하는 움직임 벡터 처리 방법.A motion estimation method for performing high resolution motion estimation after low resolution motion estimation, wherein the high resolution motion estimation searches only a partial region of the original image centered on a motion vector generated after performing low resolution motion estimation on a decimated image. A motion vector processing method for restricting the motion vector generated at the time using the edge control function of the motion estimation dedicated chip so that the motion vector generated at the time does not leave the entire search range. 제 3 항에 있어서, 저해상도 움기임 추정에서의 움직임 벡터가 i -32 또는 -31 이고 j -16 또는 -15 일 경우에는 고해상도 움직임 추정시 수평, 수직으로 음의 방향의 움직임 벡터를 가질 수 없도록 제한하고, 저해상도 움ㅈ기임 추정에서의 움직임 벡터가 -30 i 30 이고 j -16 또는 -15 일 경우에는 고해상도 움직임 추정시 수직으로 음의 방향의 움직임 벡터를 가질 수 없도록 제한하고, 저해상도 움직임 추정에서의 움직임 벡터가 i 31 이고 j -16 또는 -15 일 경우에는 고해상도 움직임 추정시 수평으로 양의 방향, 수직으로 음의 방향의 움직임 벡터를 가질 수 없도록 제한하고, 저해상도 움직임 추정에서의 움직임 벡터가 i -32 또는 -31 이고 -14 j 14 일 경우에는 고해상도 움직임 추정시 수평으로 음의 방향의 움직임 벡터를 가질 수 없도록 제한하고, 저해상도 움직임 추정에서의 움직임 벡터가 i 31 이고 -14 j 14 일 경우에는 고해상도 움직임 추정시 수평으로 양의 방향의 움직임 벡터를 가질 수 없도록 제한하고, 저해상도 움직임 추정에서의 움직임 벡터가 i -32 또는 -31 이고 j 15 일 경우에는 고해상도 움직임 벡터를 가질 수 없도록 제한하고, 저해상도 움직임 추정에서의 움직임 벡터가 -30 i 30 이고 j 15 일 경우에는 고해상도 움직임 추정시 수직으로 양의 방향의 움직임 벡터를 가질 수 없도록 제한하고, 저해상도 움직임 추정에서의 움직임 벡터가 i 31 이고 j 15 일 경우에는 고해상도 움직임 추정시 수평, 수직으로 양의 방향의 움직임 벡터를 가질 수 없도록 제한하는 것을 특징으로 하는 움직임 벡터 처리 방법.4. The method of claim 3, wherein when the motion vector in the low resolution motion estimation is i -32 or -31 and j -16 or -15, the motion vector in the high resolution motion estimation cannot be horizontally or vertically negative. When the motion vector in the low resolution motion estimation is -30 i 30 and j -16 or -15, the motion vector in the low resolution motion is limited to have no vertical motion vector in the low resolution motion estimation. If the motion vector is i 31 and j -16 or -15, it is restricted to have a motion vector in a horizontally positive direction and a vertically negative direction when estimating a high resolution motion, and the motion vector in the low resolution motion estimation is i − In the case of 32 or -31 and -14 j 14, it is restricted to have a motion vector in the negative direction horizontally when estimating high resolution motion. If the motion vector in the high-resolution motion estimation is i 31 and -14 j 14, the motion vector in the low-resolution motion estimation is limited to i -32 or-in high resolution motion estimation. If it is 31 and j 15, it is limited to have a high resolution motion vector, and if the motion vector in low resolution motion estimation is -30 i 30 and j 15, it can have a vertically positive motion vector in high resolution motion estimation. And when the motion vector in the low resolution motion estimation is i 31 and j 15, limiting the motion vector in the high resolution motion estimation to have no horizontal and vertical motion vectors.
KR1019950022593A 1995-07-27 1995-07-27 Apparatus and method for processing a motion vector KR0180162B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1019950022593A KR0180162B1 (en) 1995-07-27 1995-07-27 Apparatus and method for processing a motion vector

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019950022593A KR0180162B1 (en) 1995-07-27 1995-07-27 Apparatus and method for processing a motion vector

Publications (2)

Publication Number Publication Date
KR970009408A KR970009408A (en) 1997-02-24
KR0180162B1 true KR0180162B1 (en) 1999-05-01

Family

ID=19421863

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019950022593A KR0180162B1 (en) 1995-07-27 1995-07-27 Apparatus and method for processing a motion vector

Country Status (1)

Country Link
KR (1) KR0180162B1 (en)

Also Published As

Publication number Publication date
KR970009408A (en) 1997-02-24

Similar Documents

Publication Publication Date Title
KR100486249B1 (en) Motion estimation apparatus and method for scanning a reference macroblock window in a search area
US7684487B2 (en) Video coding method and apparatus for calculating motion vectors of the vertices of a patch of an image and transmitting information of horizontal and vertical components of the motion vectors
JP3089165B2 (en) Motion vector search device
US20070071101A1 (en) Systolic-array based systems and methods for performing block matching in motion compensation
KR101578052B1 (en) Motion estimation device and Moving image encoding device having the same
US20050238102A1 (en) Hierarchical motion estimation apparatus and method
US7236634B2 (en) Image encoding of moving pictures
US6400764B1 (en) Motion estimation method featuring orthogonal-sum concurrent multi matching
WO1997022083A1 (en) Method and apparatus for motion estimation in a video signal
KR100226684B1 (en) A half pel motion estimator
US8135224B2 (en) Generating image data
US6360015B1 (en) RAM-based search engine for orthogonal-sum block match motion estimation system
US20080212719A1 (en) Motion vector detection apparatus, and image coding apparatus and image pickup apparatus using the same
JPH10215457A (en) Moving image decoding method and device
KR0180162B1 (en) Apparatus and method for processing a motion vector
US5579058A (en) Motion detection circuit and method using spatial information
US8200032B2 (en) Image processing method and related apparatus for performing image processing operation according to image blocks in horizontal direction
US6968011B2 (en) Motion vector detecting device improved in detection speed of motion vectors and system employing the same devices
JP3460759B2 (en) Motion vector detection method and apparatus
KR100208984B1 (en) Moving vector estimator using contour of object
JP3309519B2 (en) Motion vector detection device
WO2000064182A1 (en) Motion estimation
KR100205146B1 (en) Motion estimation method in digital video encoder
KR0180161B1 (en) Apparatus and method for processing a motion vector
JP3161076B2 (en) Image signal encoding device

Legal Events

Date Code Title Description
A201 Request for examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20111101

Year of fee payment: 14

FPAY Annual fee payment

Payment date: 20121101

Year of fee payment: 15

LAPS Lapse due to unpaid annual fee