KR100228675B1 - Method and apparatus for predictive encoding - Google Patents

Method and apparatus for predictive encoding Download PDF

Info

Publication number
KR100228675B1
KR100228675B1 KR1019960055827A KR19960055827A KR100228675B1 KR 100228675 B1 KR100228675 B1 KR 100228675B1 KR 1019960055827 A KR1019960055827 A KR 1019960055827A KR 19960055827 A KR19960055827 A KR 19960055827A KR 100228675 B1 KR100228675 B1 KR 100228675B1
Authority
KR
South Korea
Prior art keywords
motion
motion vector
motion compensation
frame
previous frame
Prior art date
Application number
KR1019960055827A
Other languages
Korean (ko)
Other versions
KR19980037126A (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 KR1019960055827A priority Critical patent/KR100228675B1/en
Publication of KR19980037126A publication Critical patent/KR19980037126A/en
Application granted granted Critical
Publication of KR100228675B1 publication Critical patent/KR100228675B1/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/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • 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/573Motion compensation with multiple frame prediction using two or more reference frames in a given prediction direction

Landscapes

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

Abstract

개시된 내용은 전방예측에 의한 동화상 부호화시 전프레임과 전전프레임에서 움직임벡터를 구하여 보다 압축효율을 높일 수 있도록 한 전방예측부호화방법 및 그 장치에 관한 것이다. 본 발명은 입력되는 현재프레임과 이전프레임을 사용하여 현재프레임의 매크로블록단위 화상데이타 각각에 대한 움직임 추정을 하여 움직임벡터를 구하고, 그 움직임벡터에 의한 움직임보상에러가 미리 정한 문턱값 이상이면 전전프레임을 사용하여 움직임 추정하여 움직임벡터를 구하고, 그 움직임벡터에 의한 움직임보상에러와 비교하여 작은 값의 움직임보상에러에 해당하는 움직임벡터를 최종 선택하여 부호화한다. 따라서, 본 발명은 중복적 움직임이 많은 동화상에 대한 압축효율을 보다 높일 수 있는 효과를 제공한다.The present invention relates to a forward predictive coding method and apparatus for improving a compression efficiency by obtaining a motion vector in a previous frame and a previous frame in moving picture coding by forward prediction. The motion vector estimation unit performs motion estimation on each of the macroblock-unit image data of the current frame using the current frame and the previous frame to obtain a motion vector. If the motion compensation error caused by the motion vector is equal to or greater than a predetermined threshold value, And a motion vector corresponding to a motion compensation error of a small value is finally selected and compared with a motion compensation error based on the motion vector. Therefore, the present invention provides an effect of further increasing the compression efficiency for a moving image having many redundant movements.

Description

전방예측부호화방법 및 그 장치Forward prediction coding method and apparatus therefor

본 발명은 전방예측(Predictive)에 의한 동화상 부호화시스템에 관한 것으로서, 특히 현재프레임에 대해 시간적으로 전에 위치한 두 프레임을 이용하여 보다 정확한 움직임벡터를 구하여 부호화할 수 있도록 한 전방예측부호화방법 및 그 장치에 관한 것이다.More particularly, the present invention relates to a forward predictive coding method and apparatus capable of obtaining a more accurate motion vector using two frames temporally preceding a current frame and encoding the same, .

최근 들어 MPEG(Moving Picture Experts Group)-Ⅳ와 같이 영상전화 또는 화상회의시스템등에서의 응용을 목적으로 동영상을 매우 낮은 비트율(low bit rate)로 부호화하는 동영상압축기술에 대한 국제 표준화 작업이 활발히 진행되고 있다. MPEG-Ⅳ는 64kbps 이하의 저속 전송 채널을 사용하여 동영상을 전송하기 때문에 동영상의 고압축이 필수적이다. 이를 위하여 시간축방향의 용장도(redundancy)를 줄이기 위한 움직임 보상을 행하여 화상간의 차분을 취하고, 이 후 공간축방향의 중복성을 줄일기 위해 이산여현변환(DCT)과 가변장부호화를 사용하고 있다. 즉, 일반적으로 연속된 동화상에서는 전후의 화상과 현재의 화상과는 거의 유사하다. 따라서, 현재 부호화하려는 화상과 P 화상(전방예측화상)에서는 시간적으로 전방의 화상과 차분을, 또는 B 화상(양방향예측화상)에서는 시간적으로 전방, 후방 또는 전방과 후방에서 만들어진 보간화상과의 차분을 취하여, 이 차분치를 부호화하여 전송하는 방법으로 시간축방향의 용장도를 줄여서 전송하는 정보량을 작게 하고 있다. 단, 같은 위치의 차분을 취할 뿐만 아니라 움직임 보상을 사용한다. 이는 16×16화소의 블록단위로 앞의 화상과 이 블록위치의 근방차분에서 차분이 최소가 되는 점을 탐색하여 이와의 차분을 취하는 방법으로 전송해야 할 정보량을 더욱 더 감소시키는 수법을 말한다. 실제로는 P 화상에서는 움직임 보상후의 예측화상과의 차분을 취한 것과 차분을 취하지 않은 것의 두가지 중에서 데이타량이 적은 것을 16×16 블록(매크로블록)단위로 선택하여 부호화한다.In recent years, international standardization work has been actively carried out on a moving image compression technology for coding a moving image at a very low bit rate for the purpose of application in a video telephone or a video conference system such as MPEG (Moving Picture Experts Group) -IV have. Since MPEG-IV transmits moving pictures using a low-speed transmission channel of 64 kbps or less, high compression of moving pictures is essential. For this purpose, DCT and variable length coding are used to reduce the redundancy in the spatial axis direction by performing motion compensation to reduce the redundancy in the direction of the time axis, and then to obtain the difference between the images. That is, in a continuous moving image, the front and rear images are almost similar to the current image. Therefore, the difference between the image to be coded and the P image (forward predicted image) temporally ahead and the difference therebetween, or the difference between the B image (bidirectional predicted image) and the interpolated image generated temporally forward, backward, And the differential value in the direction of the time axis is reduced so as to reduce the amount of information to be transmitted. However, motion compensation is used as well as taking the difference of the same position. This means that the amount of information to be transmitted is further reduced by searching for a point at which the difference is minimum between the previous image and the neighborhood of the block position in block units of 16x16 pixels and taking a difference therebetween. Actually, in the P picture, a picture with a small amount of data is selected and encoded in units of 16x16 blocks (macroblocks), from the difference between the difference between the predictive picture after the motion compensation and the difference between them.

하지만, 영상전화 또는 화상회의시스템에 채용되는 소프트웨어(S/W)적인 비디오코덱(Video Codec)에서는 실제 이미지를 부호화할 때 프레임간격이 무척 크고, 움직임이 매우 큰 반면에 중복적 움직임이 많다.However, in a software (S / W) video codec employed in a video telephone or a video conferencing system, a frame interval is very large when encoding an actual image, and motion is very large, but there are many redundant movements.

따라서, 본 발명의 목적은 이전 프레임에서만 움직임벡터를 찾는 것 보다 전전프레임에서도 움직임벡터를 찾아 두 움직임벡터중에서 움직임보상에러가 작은 움직임벡터를 선택하므로써 압축효율을 높일 수 있도록 한 전방예측부호화방법을 제공함에 있다.Accordingly, an object of the present invention is to provide a forward predictive coding method for finding a motion vector in a previous frame rather than searching for a motion vector only in a previous frame and increasing a compression efficiency by selecting a motion vector having a small motion compensation error from among motion vectors. .

본 발명의 다른 목적은 전술한 전방예측부호화방법을 하드웨어로 구현하기 위한 장치를 제공함에 있다.It is another object of the present invention to provide an apparatus for implementing the above-described forward predictive encoding method in hardware.

도 1은 본 발명에 따른 전방예측부호화장치를 나타내는 구성도,1 is a block diagram of a forward predictive coding apparatus according to the present invention;

도 2는 도 1 장치의 전방예측부호화에서 움직임벡터를 구하는 과정을 설명하기 위한 도면.FIG. 2 is a diagram for explaining a process of obtaining a motion vector in forward predictive coding of the apparatus of FIG. 1;

<도면의 주요부분에 대한 부호의 설명>Description of the Related Art

11 : 비디오입력기 12 : 감산기11: Video input device 12:

13 : 제어기 14 : 부호화기13: Controller 14: Encoder

15 : 가산기 16 : 프레임메모리15: adder 16: frame memory

17 : 움직임예측기17: motion predictor

이와 같은 목적들을 달성하기 위한 본 발명의 전방예측부호화방법은 현재 부호화하려는 화상과 시간적으로 전방의 화상과 움직임 보상을 행하여 화상간의 차분을 취하고, 이 차분치를 부호화하여 전송하는 전방예측부호화방법에 있어서, (1) 입력되는 현재프레임에 대해 시간적으로 앞에 위치하여 이미 복호화된 복수개의 프레임을 저장하는 단계와, (2) 입력되는 현재프레임과 상기 저장된 복수개의 프레임중 이전프레임을 사용하여 현재프레임의 매크로블록단위 화상데이타들 각각에 대한 움직임을 추정하여 움직임벡터를 구하는 단계와, (3) 상기 구한 움직임벡터에 의한 움직임보상에러를 미리 설정한 문턱값과 비교하는 단계와, (4) 상기 비교결과에 따라 입력되는 현재프레임과 상기 저장된 복수개의 프레임중 전전프레임을 사용하여 현재프레임의 매크로블록단위 화상데이타들 각각에 대한 움직임을 추정하여 움직임벡터를 구하는 단계, 및 (5) 상기 구한 복수개의 움직임벡터 각각에 의한 움직임보상에러를 비교하여 에러값이 작은 움직임벡터를 선택하는 단계를 포함한다.According to an aspect of the present invention, there is provided a forward predictive encoding method for performing motion compensation on an image to be currently encoded and an image ahead of time to obtain a difference between images, and encoding and transmitting the differential value, (1) storing a plurality of already decoded frames temporally preceding an input current frame, (2) storing a current frame and a previous frame of the stored plurality of frames, (3) comparing a motion compensation error caused by the motion vector with a preset threshold value, and (4) comparing the calculated motion compensation error with a predetermined threshold according to the comparison result. The current frame and the previous frame among the plurality of stored frames, Estimating a motion vector for each of the macroblock-based image data to obtain a motion vector, and (5) comparing motion compensation errors based on the obtained plurality of motion vectors to select a motion vector having a small error value do.

본 발명의 다른 목적을 달성하기 위한 본 발명의 전방예측부호화장치는 현재 부호화하려는 화상과 시간적으로 전방의 화상과 움직임 보상을 행하여 화상간의 차분을 취하고, 이 차분치를 부호화하여 전송하는 전방예측부호화장치에 있어서, 입력되는 현재프레임에 대해 시간적으로 앞에 위치하여 이미 복호화된 복수개의 프레임을 저장하기 위한 프레임메모리와, 입력되는 현재프레임과 상기 프레임메모리에 저장된 복수개의 프레임중 이전프레임 또는 전전프레임을 사용하여 현재프레임의 매크로블록단위 화상데이타들 각각에 대한 움직임을 추정하여 움직임벡터를 구하고, 그 움직임벡터에 의해 지정되는 기준매크로블록의 화상데이타를 상기 프레임메모리로부터 읽어내는 움직임예측기와, 입력되는 현재프레임의 매크로블록단위 화상데이타로부터 상기 움직임예측기로부터 인가되는 대응 화상데이타를 감산하고, 감산에 의해 얻어진 차분값을 움직임보상에러로 출력하는 감산기, 및 상기 감산기로부터 이전프레임을 사용하여 구한 움직임벡터에 의한 움직임보상에러를 입력받아 미리 설정한 문턱값과 비교하여 움직임보상에러가 문턱값 이상이면 상기 움직임예측기에서 전전프레임을 사용하여 움직임벡터를 구하도록 제어하고, 상기 감산기로부터 전전프레임을 사용하여 구한 움직임벡터에 의한 움직임보상에러를 입력받아 두 움직임보상에러를 비교하여 에러값이 작은 움직임보상에러에 해당하는 움직임벡터를 선택하는 제어기를 포함한다.According to another aspect of the present invention, there is provided a forward predictive encoding apparatus for performing a motion compensation on an image to be currently coded and a temporally preceding image to obtain a difference between the images, and encoding and transmitting the difference A frame memory for storing a plurality of already decoded frames located temporally before the current frame to be input; and a memory for storing a current frame and a current frame, which are stored in the frame memory, A motion estimator for estimating a motion of each of the macroblock-unit image data of the frame to obtain a motion vector and reading the image data of the reference macroblock designated by the motion vector from the frame memory; By block-based image data A subtractor for subtracting the corresponding image data from the motion estimator and outputting a difference value obtained by the subtraction as a motion compensation error, and a subtracter for receiving a motion compensation error based on a motion vector obtained by using the previous frame from the subtractor, And a motion compensation unit for calculating a motion compensation error based on a motion vector obtained by using the previous frame from the subtracter when the motion compensation error is equal to or greater than a predetermined threshold, And a controller for comparing the two motion compensation errors to select a motion vector corresponding to a motion compensation error having a small error value.

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

도 1은 본 발명에 따른 전방예측부호화장치를 나타내는 구성도이다. 도시된 바와 같이, 본 발명의 장치는 카메라 등의 비디오입력기(11)와, 입력되는 현재프레임에 대해 이전프레임 내지 전전프레임을 사용하여 움직임추정 및 움직임보상하는 움직임예측기(17)를 구비하고 있다. 비디오입력기(11)와 움직임예측기(17) 사이에는 입력되는 현재프레임의 화상신호와 움직임보상된 화상신호간의 차분 즉, 움직임보상에러를 구하는 감산기(12)가 연결된다. 감산기(12)에는 움직임보상에러를 미리 설정한 문턱값과 비교하여 움직임벡터를 선택하는 제어기(13)가 연결된다. 제어기(13)에는 움직임보상에러를 부호화하여 부호화된 데이타를 출력하고, 이를 부호화하기 이전상태로 복원하는 부호화기(14)가 연결된다. 부호화기(14)에는 복원된 데이타를 움직임예측기(17)의 출력에 가산하여 복원된 이전프레임을 생성하는 가산기(15)가 연결된다. 가산기(15)에는 복원된 이전프레임과 전전프레임을 저장하고 있는 프레임메모리(16)가 연결되도록 구성된다.1 is a block diagram showing a forward predictive encoding apparatus according to the present invention. As shown in the figure, the apparatus of the present invention includes a video input device 11 such as a camera, and a motion estimator 17 for performing motion estimation and motion compensation using the previous frame to the previous frame with respect to an input current frame. Between the video input device 11 and the motion predictor 17 is connected a subtractor 12 for obtaining a difference between the image signal of the current frame and the motion-compensated image signal, that is, a motion compensation error. The subtractor 12 is connected to a controller 13 which compares a motion compensation error with a predetermined threshold and selects a motion vector. The controller 13 is connected to an encoder 14 for encoding the motion compensation error and outputting the encoded data and restoring the encoded data to a state before encoding. The encoder 14 is connected to an adder 15 for adding the reconstructed data to the output of the motion predictor 17 to generate a reconstructed previous frame. The adder 15 is configured to be connected to the frame memory 16 storing the restored previous frame and the previous frame.

이와 같이 구성된 본 발명의 전방예측부호화장치에 대한 동작을 도 2를 참조하여 좀더 구체적으로 설명한다.The operation of the forward predictive coding apparatus constructed as above will be described in more detail with reference to FIG.

도 2는 도 1 장치의 전방예측부호화에서 움직임벡터를 구하는 과정을 설명하기 위한 도면이다.2 is a diagram for explaining a process of obtaining a motion vector in the forward predictive coding of the apparatus of FIG.

먼저, 카메라 등의 비디오입력기(11)에서 촬영된 프레임단위의 동화상신호는 감산기(12)로 입력됨과 아울러 움직임예측기(17)로 입력된다. 움직임예측기(17)는 비디오입력기(11)로부터 입력되는 현재화상(도 2의 N프레임 참조)과 프레임메모리(16)에 저장된 제 1기준화상(도 2의 N-1프레임 참조)을 사용하여 현재화상의 매크로블록단위 화상데이타들 각각에 대한 움직임을 추정한다. 여기서, 프레임메모리(16)는 현재화상(N프레임)에 대해 시간적으로 앞선 복수개의 이전화상들(N-2프레임,N-1프레임)을 기준화상으로 저장한다. 움직임예측기(17)는 프레임들간의 상관성에 근거하여 움직임추정이 이루어지도록 한다. 즉, 움직임예측기(17)는 제 1기준화상(N-1프레임)의 일부가 되는 검색영역내에서 비교에 사용된 현재 매크로블록의 화상데이타와 거의 동일한 화상정보를 갖는 기준매크로블록을 찾은 다음, 현재매크로블록과 기준매크로블록간의 공간적인 위치차이를 나타내는 움직임벡터(MV1)를 발생한다. 그런 다음, 움직임예측기(17)는 그 움직임벡터(MV1)에 의해 지정되는 기준매크로블록의 화상정보를 프레임메모리(16)로부터 읽어내어 감산기(12)로 출력한다. 감산기(12)는, 차분펄스부호변조를 위하여, 입력되는 현재화상의 화상데이타로부터 움직임예측기(17)로부터 인가되는 대응 화상데이타를 감산하고 감산에 의해 얻어진 차분값을 제어기(13)로 출력한다. 제어기(13)는 감산기(12)로부터 인가되는 차분값 즉, 움직임보상에러를 미리 설정한 문턱(threshold)값과 비교하여 움직임보상에러가 문턱값보다 작으면 그 차분값을 부호화기(14)로 출력하고, 그때의 움직임벡터를 현재매크로블록에 대한 움직임벡터로 선택한다. 제어기(13)는 움직임보상에러가 문턱값 이상이면 움직임예측기(17)에서 전전프레임을 이용하여 움직임추정 및 움직임보상하도록 제어한다. 움직임예측기(17)는 제어기(13)의 제어에 따라 비디오입력기(11)로부터 입력되는 현재화상과 프레임메모리(16)에 저장된 전전프레임 즉, 제 2기준화상(도 2의 N-2프레임 참조)을 사용하여 현재화상의 매크로블록 화상데이타들 각각에 대한 움직임을 추정하여 움직임벡터(MV2)를 구한다. 즉, 도 2에서 보면, "N"번째 현재프레임내의 현재 매크로블록과 거의 동일한 정보를 갖는 매크로블록을 "N-1"번째 이전프레임의 검색영역(search range)내에서 찾아 그 공간적 위치의 차이를 움직임벡터(MV1)로 구하며, "N-2"번째 전전프레임의 검색영역내에서도 현재 매크로블록과 거의 동일한 정보를 갖는 매크로블록을 찾아 움직임벡터를 구한다. 그런 다음, 움직임예측기(17)는 그 움직임벡터(MV2)에 의해 지정되는 기준매크로블록의 화상정보를 프레임메모리(16)로부터 읽어내어 감산기(12)로 출력한다. 감산기(12)는 입력되는 현재화상의 화상데이타로부터 움직임예측기(17)로부터 인가되는 대응 화상데이타를 감산하고 감산에 의해 얻어진 차분값을 제어기(13)로 출력한다. 제어기(13)는 감산기(12)로부터 인가되는 차분값 즉, 전전프레임을 이용하여 구한 움직임보상에러와 이전프레임을 이용하여 구한 움직임보상에러를 비교하여 그중 에러값이 작은 움직임보상에러에 해당하는 움직임벡터를 선택하고, 그 차분값을 부호화기(14)로 출력한다. 부호화기(14)는 제어기(13)를 통해 입력되는 프레임간의 차분값을 부호화하여 부호화된 데이타를 출력하고, 그 부호화된 데이타를 부호화하기 이전상태로 복원하여 가산기(15)로 출력한다. 가산기(15)는 움직임예측기(17)에서 출력되는 움직임보상된 화상데이타와 부호화기(15)에서 출력되는 복원된 데이타를 가산하여 이전프레임을 복원하고, 이를 프레임메모리(16)에 저장한다.First, a moving image signal of a frame unit photographed by a video input device 11 such as a camera is input to a subtracter 12 and a motion predictor 17. The motion predictor 17 calculates the motion vector using the current image (see N frame in FIG. 2) input from the video input device 11 and the first reference image (see the N-1 frame in FIG. 2) And estimates the motion for each of the macroblock-unit image data of the image. Here, the frame memory 16 stores a plurality of previous images (N-2 frame, N-1 frame) temporally preceding the current image (N frame) as a reference image. The motion estimator 17 makes the motion estimation based on the correlation between the frames. In other words, the motion estimator 17 finds a reference macroblock having image information substantially the same as the image data of the current macroblock used for the comparison in the search area that becomes a part of the first reference picture (N-1 frame) A motion vector MV1 indicating a spatial difference between the current macroblock and the reference macroblock is generated. Then, the motion predictor 17 reads out the image information of the reference macroblock designated by the motion vector MV1 from the frame memory 16 and outputs it to the subtractor 12. [ The subtracter 12 subtracts the corresponding image data applied from the motion predictor 17 from the image data of the current image to be input for differential pulse code modulation and outputs the differential value obtained by the subtraction to the controller 13. [ The controller 13 compares the difference value applied from the subtractor 12, that is, the motion compensation error with a preset threshold value. If the motion compensation error is smaller than the threshold value, the controller 13 outputs the difference value to the encoder 14 And selects the motion vector at that time as a motion vector for the current macroblock. The controller 13 controls the motion estimator 17 to perform motion estimation and motion compensation using the previous frame if the motion compensation error is equal to or greater than the threshold value. The motion predictor 17 generates a current frame input from the video input unit 11 and a previous frame stored in the frame memory 16, that is, a second reference picture (see the N-2 frame in Fig. 2) under the control of the controller 13. [ To obtain a motion vector MV2 by estimating the motion of each of the macroblock image data of the current picture. 2, a macroblock having substantially the same information as the current macroblock in the " N "current frame is searched in the search range of the previous frame" N-1 " A motion vector is found by searching for a macroblock having almost the same information as the current macroblock in the search area of the (N-2) th previous frame. Then, the motion estimator 17 reads the image information of the reference macroblock designated by the motion vector MV2 from the frame memory 16 and outputs it to the subtractor 12. [ The subtracter 12 subtracts the corresponding image data from the image predictor 17, which is inputted from the image data of the current image, and outputs the difference value obtained by the subtraction to the controller 13. The controller 13 compares the difference value applied from the subtractor 12, that is, the motion compensation error obtained by using the previous frame with the motion compensation error obtained by using the previous frame, and calculates a motion corresponding to a motion compensation error And outputs the difference value to the encoder 14. [ The encoder 14 encodes the difference value between the frames input through the controller 13 and outputs the encoded data, restores the encoded data to a state before encoding, and outputs the data to the adder 15. The adder 15 adds the motion compensated image data output from the motion estimator 17 and the reconstructed data output from the encoder 15 to restore the previous frame and stores it in the frame memory 16. [

상술한 바와 같이, 본 발명은 전방예측부호화방법 및 그 장치에 관한 것으로 이전 프레임뿐만 아니라 전전프레임을 이용하여 움직임추정하므로써 중복적 움직임이 많은 경우에 대해 이전프레임만을 이용하여 움직임 추정하는 것 보다 압축효율을 높일 수 있는 효과를 갖는다.As described above, the present invention relates to a forward predictive encoding method and apparatus, and more particularly, to a forward predictive encoding method and apparatus thereof, in which a motion estimation is performed using not only a previous frame but also a previous frame, Can be increased.

Claims (5)

현재 부호화하려는 화상과 시간적으로 전방의 화상과 움직임 보상을 행하여 화상간의 차분을 취하고, 이 차분치를 부호화하여 전송하는 전방예측부호화방법에 있어서,A forward predictive encoding method for performing motion compensation with an image to be currently encoded and temporally ahead to take a difference between the images, and encoding and transmitting the difference value, (1) 입력되는 현재프레임에 대해 시간적으로 앞에 위치하여 이미 복호화된 복수개의 프레임을 저장하는 단계;(1) storing a plurality of already decoded frames temporally preceding an input current frame; (2) 입력되는 현재프레임과 상기 저장된 복수개의 프레임중 이전프레임을 사용하여 현재프레임의 매크로블록단위 화상데이타들 각각에 대한 움직임을 추정하여 움직임벡터를 구하는 단계;(2) obtaining a motion vector by estimating a motion of each of the macroblock-unit image data of the current frame using the current frame and the previous frame among the plurality of stored frames; (3) 상기 구한 움직임벡터에 의한 움직임보상에러를 미리 설정한 문턱값과 비교하는 단계;(3) comparing a motion compensation error caused by the motion vector with a predetermined threshold value; (4) 상기 비교결과에 따라 입력되는 현재프레임과 상기 저장된 복수개의 프레임중 전전프레임을 사용하여 현재프레임의 매크로블록단위 화상데이타들 각각에 대한 움직임을 추정하여 움직임벡터를 구하는 단계; 및(4) obtaining a motion vector by estimating a motion for each of the macroblock-unit image data of the current frame using a current frame input according to the comparison result and a previous frame among the plurality of stored frames; And (5) 상기 구한 복수개의 움직임벡터 각각에 의한 움직임보상에러를 비교하여 에러값이 작은 움직임벡터를 선택하는 단계를 포함하는 전방예측부호화방법.(5) comparing a motion compensation error caused by each of the plurality of motion vectors, and selecting a motion vector having a small error value. 제 1항에 있어서, 상기 제 (4) 단계는 상기 제 (3) 단계의 비교결과 움직임보상에러가 미리 설정한 문턱값 이상이면 전전프레임을 사용하여 움직임 추정하는 것을 특징으로 하는 전방예측부호화방법.3. The forward predictive coding method of claim 1, wherein, in step (4), motion estimation is performed using a previous frame if the motion compensation error is equal to or greater than a preset threshold value as a result of the comparison in step (3). 제 2항에 있어서, 상기 제 (4) 단계는 상기 제 (3) 단계의 비교결과 움직임보상에러가 미리 설정한 문턱값보다 작으면 그 에러값을 부호화하고, 그에 해당하는 움직임벡터를 선택하는 것을 특징으로 하는 전방예측부호화방법.3. The method of claim 2, wherein, in the step (4), if the motion compensation error is smaller than a preset threshold value as a result of the comparison in the step (3), the error value is encoded and a corresponding motion vector is selected Wherein the forward predictive encoding method comprises: 현재 부호화하려는 화상과 시간적으로 전방의 화상과 움직임 보상을 행하여 화상간의 차분을 취하고, 이 차분치를 부호화하여 전송하는 전방예측부호화장치에 있어서,A forward predictive encoding apparatus for performing motion compensation between an image to be currently encoded and an image ahead of it to obtain a difference between the images and encoding and transmitting the difference value, 입력되는 현재프레임에 대해 시간적으로 앞에 위치하여 이미 복호화된 복수개의 프레임을 저장하기 위한 프레임메모리;A frame memory for storing a plurality of already decoded frames located temporally before the input current frame; 입력되는 현재프레임과 상기 프레임메모리에 저장된 복수개의 프레임중 이전프레임 또는 전전프레임을 사용하여 현재프레임의 매크로블록단위 화상데이타들 각각에 대한 움직임을 추정하여 움직임벡터를 구하고, 그 움직임벡터에 의해 지정되는 기준매크로블록의 화상데이타를 상기 프레임메모리로부터 읽어내는 움직임예측기;A motion vector is estimated by estimating a motion of each of the current frame and a plurality of frames stored in the frame memory with respect to each of the macroblock unit image data of the current frame using the previous frame or the previous frame, A motion predictor for reading image data of a reference macroblock from the frame memory; 입력되는 현재프레임의 매크로블록단위 화상데이타로부터 상기 움직임예측기로부터 인가되는 대응 화상데이타를 감산하고, 감산에 의해 얻어진 차분값을 움직임보상에러로 출력하는 감산기; 및A subtracter for subtracting corresponding image data from the motion predictor from the macroblock-unit image data of the current frame to be input and outputting a difference value obtained by subtraction as a motion compensation error; And 상기 감산기로부터 이전프레임을 사용하여 구한 움직임벡터에 의한 움직임보상에러를 입력받아 미리 설정한 문턱값과 비교하여 움직임보상에러가 문턱값 이상이면 상기 움직임예측기에서 전전프레임을 사용하여 움직임벡터를 구하도록 제어하고, 상기 감산기로부터 전전프레임을 사용하여 구한 움직임벡터에 의한 움직임보상에러를 입력받아 두 움직임보상에러를 비교하여 에러값이 작은 움직임보상에러에 해당하는 움직임벡터를 선택하는 제어기를 포함하는 전방예측부호화장치.A motion compensator for receiving a motion compensation error based on a motion vector obtained by using the previous frame from the subtractor and comparing the received motion compensation error with a preset threshold value to determine a motion vector using the previous frame in the motion estimator if the motion compensation error is equal to or greater than a threshold; And a controller for receiving a motion compensation error based on a motion vector obtained by using the previous frame from the subtractor and comparing the two motion compensation errors to select a motion vector corresponding to a motion compensation error having a small error value, Device. 제 4항에 있어서, 상기 제어기는 이전프레임을 사용하여 구한 움직임벡터에 의한 움직임보상에러가 문턱값보다 작으면 그 움직임벡터를 선택하는 것을 특징으로 하는 전방예측부호화장치.5. The forward predictive coding apparatus of claim 4, wherein the controller selects the motion vector if a motion compensation error caused by a motion vector obtained using a previous frame is smaller than a threshold value.
KR1019960055827A 1996-11-20 1996-11-20 Method and apparatus for predictive encoding KR100228675B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1019960055827A KR100228675B1 (en) 1996-11-20 1996-11-20 Method and apparatus for predictive encoding

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019960055827A KR100228675B1 (en) 1996-11-20 1996-11-20 Method and apparatus for predictive encoding

Publications (2)

Publication Number Publication Date
KR19980037126A KR19980037126A (en) 1998-08-05
KR100228675B1 true KR100228675B1 (en) 1999-11-01

Family

ID=19482744

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019960055827A KR100228675B1 (en) 1996-11-20 1996-11-20 Method and apparatus for predictive encoding

Country Status (1)

Country Link
KR (1) KR100228675B1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100479255B1 (en) * 2001-08-16 2005-03-30 이상욱 Apparatus for estimating video motion of video compression system

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR950005030A (en) * 1993-07-16 1995-02-18 배순훈 Method and apparatus for symmetric block motion estimation using block matcher

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR950005030A (en) * 1993-07-16 1995-02-18 배순훈 Method and apparatus for symmetric block motion estimation using block matcher

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100479255B1 (en) * 2001-08-16 2005-03-30 이상욱 Apparatus for estimating video motion of video compression system

Also Published As

Publication number Publication date
KR19980037126A (en) 1998-08-05

Similar Documents

Publication Publication Date Title
JP2801559B2 (en) Motion compensation coding method and apparatus adapted to the magnitude of motion
KR100275694B1 (en) Hierarchical search block matching method by using multiple motion vector candidates
JP4373702B2 (en) Moving picture encoding apparatus, moving picture decoding apparatus, moving picture encoding method, moving picture decoding method, moving picture encoding program, and moving picture decoding program
KR100508798B1 (en) Method for predicting bi-predictive block
US7321626B2 (en) System and method for predictive motion estimation using a global motion predictor
GB2474745A (en) Calculating motion estimation search range vector (SR) based on a vector mean value
KR100204478B1 (en) Method of and apparatus for compensating the vacant space of image frames incurred by global motion
JPH08205165A (en) Image processing system
EP0577418A2 (en) Apparatus for motion compensation coding of digital video signal
US6608937B1 (en) Low bit rate video coding method and system
KR100228675B1 (en) Method and apparatus for predictive encoding
KR100901030B1 (en) Method for coding moving picture
JP3618783B2 (en) Image encoding method and image encoding apparatus
JP2001224036A (en) Moving picture coder
KR0185841B1 (en) A motion extimator for a video coder
JPH06165164A (en) Dynamic picture processor
JPH0984017A (en) Motion compensation prediction coding method for moving image
KR100635009B1 (en) Mothod and apparatus for motion estimation considering total moving of image
JPH09182081A (en) Movement compensation estimation encoder
KR100242649B1 (en) Method for estimating motion using mesh structure
KR0178202B1 (en) Method for establishing the window in motion estimation
KR100242653B1 (en) Intra-frame coding method and apparatus thereof
KR100448700B1 (en) Frame rate conversion of cross fade interp0lation apparatous and method there of
KR100229553B1 (en) Video signal encoding system using a current frame prediction apparatus
KR100293445B1 (en) Method for coding motion vector

Legal Events

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

Payment date: 20070727

Year of fee payment: 9

LAPS Lapse due to unpaid annual fee