KR100928272B1 - Motion estimation method and apparatus for video coding - Google Patents

Motion estimation method and apparatus for video coding Download PDF

Info

Publication number
KR100928272B1
KR100928272B1 KR1020070132717A KR20070132717A KR100928272B1 KR 100928272 B1 KR100928272 B1 KR 100928272B1 KR 1020070132717 A KR1020070132717 A KR 1020070132717A KR 20070132717 A KR20070132717 A KR 20070132717A KR 100928272 B1 KR100928272 B1 KR 100928272B1
Authority
KR
South Korea
Prior art keywords
cme
buffer
odd
macro block
current frame
Prior art date
Application number
KR1020070132717A
Other languages
Korean (ko)
Other versions
KR20090065239A (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 KR1020070132717A priority Critical patent/KR100928272B1/en
Publication of KR20090065239A publication Critical patent/KR20090065239A/en
Application granted granted Critical
Publication of KR100928272B1 publication Critical patent/KR100928272B1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • H04N19/43Hardware specially adapted for motion estimation or compensation
    • H04N19/433Hardware specially adapted for motion estimation or compensation characterised by techniques for memory access
    • 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

Landscapes

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

Abstract

본 발명은 현재 프레임의 매크로 블록에서 홀수 행만을 저장하는 CME 매크로 블록 버퍼, 현재 프레임의 매크로 블록에 상응하는 참조 프레임의 휘도 신호의 홀수 행만을 저장하는 CME 참조 영역 버퍼 및 상기 CME 매크로 블록 버퍼 및 상기 CME 참조 영역 버퍼에 저장된 값에 상응하여 2 화소 추정을 수행하는 2화소 추정부를 포함하는 동영상 부호화에서 움직임 추정 장치를 제공할 수 있다.The present invention provides a CME macroblock buffer for storing only odd rows in a macroblock of a current frame, a CME reference region buffer for storing only odd rows of luminance signals of a reference frame corresponding to a macroblock of a current frame, and the CME macroblock buffer and the A motion estimation apparatus may be provided in a video encoding including a two-pixel estimator that performs two-pixel estimation corresponding to a value stored in a CME reference region buffer.

H.264, 움직임 추정 H.264, motion estimation

Description

동영상 부호화를 위한 움직임 추정 방법 및 장치{Apparatus and Method for motion estimation for moving picture coding}Apparatus and Method for motion estimation for moving picture coding

본 발명은 동영상 부호화를 위한 움직임 추정 방법 및 장치에 관한 것이다. 특히 존 발명은 H.264 동영상 부호화를 위하여 실행되는 움직임 추정 방법에서 프로세서가 효율적으로 동작하기 위한 움직임 추정 방법 및 장치에 관한 것이다.The present invention relates to a motion estimation method and apparatus for video encoding. In particular, the present invention relates to a motion estimation method and apparatus for efficiently operating a processor in a motion estimation method performed for H.264 video encoding.

본 발명은 정보통신부 및 정보통신연구진흥원의 IT성장동력기술개발사업의 일환으로 수행한 연구로부터 도출된 것이다[과제관리번호: 2006-S-026-01,과제명: MPCore 플랫폼 기반 모바일 멀티미디어 SoC]The present invention is derived from the research conducted as part of the IT growth engine technology development project of the Ministry of Information and Communication and the Ministry of Information and Communication Research and Development. [Task Management Number: 2006-S-026-01, Title: MPCore Platform-Based Mobile Multimedia SoC]

국제 비디오 부호화 표준기관인 ITU-T와 ISO가 함께 JVT를 구성하고 H.264를 발표하였다. H.264표준은 기존의 비디오 부호화 방식들과 마찬가지로, 이미 부호화된 이전 프레임으로부터의 움직임을 추정(Motion Estimation)하여 추정신호를 구성하고, 추정오류 신호를 움직임 보상(Motion Compensation)과 DCT 변환 방법을 혼합하여 구성한다. 이기서 H.264 표준에서는 압축 성능을 높이기 위해 기존의 방식에 비해 더 작은 블록 사이즈인 4x4 블록 단위까지 움직임 추정을 수행하고, 1/4 화소 단위까지 움직임 보정을 수행한다. 이러한 기술들을 기반으로 H.264 비디오 부호화 표준은 기존의 비디오 부호화 표준인 MPEG-4 ASP에 비하여 2배의 압축성능을 가지게 되었다. 그리하여 다양한 멀티미디어 통신 서비스에 사용될 핵심 기술로 그 응용이 기대되고 있고 H.264 비디오 코덱을 이용한 비디오 데이터를 압축하는 기술과 성능 향상을 위한 연구가 활발히 되고 있다. ITU-T, an international video coding standards organization, and ISO together formed JVT and released H.264. Like the existing video coding schemes, the H.264 standard constructs an estimation signal by estimating motion from a previous frame that has been previously encoded, and uses motion compensation and DCT conversion methods for estimation error signals. Mix it up. In order to improve the compression performance, the H.264 standard performs motion estimation up to 4x4 block units, which are smaller block sizes than conventional methods, and performs motion compensation up to 1/4 pixel units. Based on these technologies, the H.264 video coding standard has twice the compression performance compared to the MPEG-4 ASP, which is the existing video coding standard. Therefore, its application is expected as a core technology to be used for various multimedia communication services, and researches for improving the performance and technology for compressing video data using the H.264 video codec have been actively conducted.

그러나 H.264 코덱 표준 부호화기술은 구현시 요구되는 메모리 대역폭과 연산의 복잡도가 높기 때문에 실시간 응용에 적용하는데 어려움이 있다. 특히 기존의 1/2 화소 단위보다 복잡도가 높은 1/4 화소 단위의 움직임 추정을 수행함으로 인해 효율적인 화소 보간 방식과 움직임 추정 방식이 요구되었다. 또한, 복잡한 방법을 사용함에 따라 각 추정 단계에서 메모리의 효율적인 사용이 요청되었다.However, the H.264 codec standard coding technique has difficulty in applying to real-time applications because of the high memory bandwidth and computational complexity required for implementation. In particular, efficient motion interpolation and motion estimation are required because motion estimation is performed in units of 1/4 pixels having higher complexity than conventional 1/2 pixel units. In addition, the use of complex methods has required the efficient use of memory at each estimation step.

본 발명은 동영상 부호화를 위한 움직임 추정 방법 및 장치를 제공하는 것을 목적으로 한다. An object of the present invention is to provide a motion estimation method and apparatus for video encoding.

또한 본 발명은 H.264 동영상 부호화시 움직임 추정을 할 때 메모리의 사용을 효율적으로 할 수 있는 동영상 부호화를 위한 움직임 추정 방법 및 장치를 제공하는 것을 목적으로 한다.Another object of the present invention is to provide a motion estimation method and apparatus for video encoding, which can efficiently use a memory when performing motion estimation during H.264 video encoding.

상술한 목적들을 달성하기 위하여, 본 발명의 일 측면에 따르면, 현재 프레임의 매크로 블록에서 홀수 행만을 저장하는 CME(Coarse Mode Estimation) 매크로 블록 버퍼, 현재 프레임의 매크로 블록에 상응하는 참조 프레임의 휘도 신호의 홀수 행만을 저장하는 CME 참조 영역 버퍼 및 상기 CME 매크로 블록 버퍼 및 상기 CME 참조 영역 버퍼에 저장된 값에 상응하여 2 화소 추정을 수행하는 2화소 추정부를 포함하는 동영상 부호화에서 움직임 추정 장치를 제공할 수 있다.In order to achieve the above objects, according to an aspect of the present invention, a Coarse Mode Estimation (CME) macroblock buffer for storing only odd rows in a macroblock of a current frame, the luminance signal of the reference frame corresponding to the macroblock of the current frame A motion estimation apparatus may be provided in a video encoding including a CME reference region buffer for storing only odd rows of data and a two-pixel estimator for performing 2-pixel estimation corresponding to values stored in the CME macro block buffer and the CME reference region buffer. have.

바람직한 실시예에 있어서, 상기 CME 매크로 블록 버퍼는 홀수 열만을 저장하는 제1 CME 매크로 블록 버퍼 및 짝수 열만을 저장하는 제2 CME 매크로 블록 버퍼를 더 포함할 수 있다. 또한, 상기 CME 참조 영역 버퍼는 홀수 열만을 저장하는 제1 CME 참조 영역 버퍼 및 짝수 열만을 저장하는 제2 CME 참조 영역 버퍼를 더 포함할 수 있다. In a preferred embodiment, the CME macroblock buffer may further include a first CME macroblock buffer that stores only odd rows and a second CME macroblock buffer that stores only even columns. The CME reference region buffer may further include a first CME reference region buffer storing only odd columns and a second CME reference region buffer storing only even columns.

또한, 상기 CME 참조 영역 버퍼에 저장된 값 및 상기 2화소 추정부에서 추정된 모션 벡터 값을 입력받아 FME 참조 영역 버퍼에 상응하는 값으로 전송하는 CME 참조 영역 버퍼 제어부를 더 포함할 수 있다. 또한, 상기 현재 프레임의 매크로 블록에서 짝수 행은 상기 움직임 추정 장치의 다음 단에 연결되는 1/4 움직임 조정 장치의 FME 매크로 블록 버퍼에 포함되는 것을 특징으로 할 수 있다. 또한, 상기 현재 프레임의 매크로 블록에 상응하는 참조 프레임의 휘도 신호의 짝수 행은 상기 움직임 추정 장치의 다음 단에 연결되는 1/4 움직임 조정 장치의 FME 참조 영역 버퍼에 포함되는 것을 특징으로 할 수 있다. The apparatus may further include a CME reference region buffer controller which receives a value stored in the CME reference region buffer and a motion vector value estimated by the two pixel estimator and transmits the value corresponding to the FME reference region buffer. The even row in the macroblock of the current frame may be included in the FME macroblock buffer of the quarter motion controller connected to the next stage of the motion estimation device. The even row of the luminance signal of the reference frame corresponding to the macro block of the current frame may be included in the FME reference region buffer of the quarter motion adjustment device connected to the next stage of the motion estimation device. .

본 발명의 다른 일 측면을 참조하면, 현재 프레임의 매크로 블록에서 홀수 행만을 저장하는 단계, 상기 현재 프레임의 매크로 블록에 상응하는 참조 프레임의 휘도 신호의 홀수 행만을 저장하는 단계 및 상기 저장된 상기 현재 프레임 매크로 블록 홀수 행 및 상기 참조 프레임의 휘도 신호의 홀수 행에 상응하여 2화소 단위 움직임을 추정하는 단계를 포함하는 동영상 부호화에서 움직임 추정 방법을 제공할 수 있다.According to another aspect of the present invention, storing only odd rows in the macro block of the current frame, storing only odd rows of the luminance signal of the reference frame corresponding to the macro block of the current frame and the stored current frame A motion estimation method may be provided in a video encoding comprising estimating a motion of a two pixel unit corresponding to an odd row of a macroblock odd row and an odd row of the luminance signal of the reference frame.

바람직한 실시예에 있어서, 현재 프레임의 매크로 블록에서 짝수 단위의 행만을 저장하는 단계, 상기 현재 프레임의 매크로 블록에 상응하는 참조 프레임의 휘도 신호의 짝수 행만을 저장하는 단계 및 상기 저장된 현재 프레임 매크로 블록의 짝수 행, 홀수 행, 참조 프레임의 휘도 신호의 홀수 행 및 짝수 행에 상응하여 1/4 화소 단위 움직임을 추정하는 단계를 더 포함할 수 있다. 또한, 상기 현재 프레임의 매크로 블록에서 홀수 행만을 저장하는 단계는 상기 홀수 행 중 홀수 열 및 상기 홀수 행 중 짝수 열을 물리적으로 서로 다른 메모리에 저장하는 단계를 더 포함할 수 있다. 또한, 상기 현재 프레임의 매크로 블록에 상응하는 참조 프레임의 휘도 신호의 홀수 행만을 저장하는 단계는 상기 홀수 행 중 홀수 열 및 상기 홀수 행 중 짝수 열을 물리적으로 서로 다른 메모리에 저장하는 단계를 더 포함할 수 있다. 또한, 상기 참조 프레임의 휘도 신호의 홀수 행에 포함된 값 및 상기 2화소 움직임 추정된 모션 벡터 값을 입력받아 FME 참조 영역 버퍼에 상응하는 값으로 변환하는 단계를 더 포함할 수 있다.In a preferred embodiment, storing only the even numbered rows in the macroblock of the current frame, storing only the even rows of the luminance signal of the reference frame corresponding to the macroblock of the current frame and the stored current frame macroblock The method may further include estimating a quarter-pixel unit motion corresponding to the even row, the odd row, the odd row of the luminance signal of the reference frame, and the even row. In addition, storing only odd rows in the macroblock of the current frame may further include storing odd columns among the odd rows and even columns among the odd rows in physically different memories. The storing of only odd rows of the luminance signal of the reference frame corresponding to the macro block of the current frame may further include storing odd columns of the odd rows and even columns of the odd rows in physically different memories. can do. The method may further include receiving a value included in an odd row of the luminance signal of the reference frame and the two pixel motion estimated motion vector value and converting the value into a value corresponding to an FME reference region buffer.

본 발명에 따르면 동영상 부호화를 위한 움직임 추정 방법 및 장치를 제공할 수 있다. According to the present invention, a motion estimation method and apparatus for video encoding can be provided.

또한 본 발명은 H.264 동영상 부호화시 움직임 추정을 할 때 메모리의 사용을 효율적으로 할 수 있는 동영상 부호화를 위한 움직임 추정 방법 및 장치를 제공할 수 있다.In addition, the present invention can provide a motion estimation method and apparatus for video encoding that can efficiently use the memory when motion estimation when H.264 video encoding.

이하 첨부된 도면을 참조하여 본 발명에 따른 동영상 부호화를 위한 움직임 추정 방법 및 장치에 대하여 상세히 설명한다.Hereinafter, a motion estimation method and apparatus for video encoding according to the present invention will be described in detail with reference to the accompanying drawings.

도 1은 본 발명이 적용되는 H.264 부호화 장치를 전체적으로 설명하는 구성도이다.1 is a block diagram illustrating an overall H.264 encoding apparatus to which the present invention is applied.

도 1을 참조하면 본 발명이 적용되는 H.264 부호화 장치는 양자화부(101), 역양자화부(103), 엔트로피 부호화부(105), 블록 해제부(107), 참조 프레임 재현부(109), 움직임 보상부(111), 움직임 추정부(113) 및 인트라 예측부(115)를 포함한다.Referring to FIG. 1, an H.264 encoding apparatus to which the present invention is applied includes a quantization unit 101, an inverse quantization unit 103, an entropy encoding unit 105, a block release unit 107, a reference frame reproduction unit 109, The motion compensator 111, the motion estimator 113, and the intra predictor 115 are included.

양자화부(101)는 외부에서 입력되는 매크로 블록을 소정 방식에 따라 변환한 후 양자화하는 역할을 담당한다. 이러한 양자화부(101)에서 양자화하는 대표적인 영상 변환 기법으로는 DCT(Discrete Cosine Transform)이 있다.The quantization unit 101 is responsible for quantizing the macro block input from the outside according to a predetermined method. A representative image transformation technique quantized by the quantization unit 101 is DCT (Discrete Cosine Transform).

역양자화부(103)는 양자화부(101)로부터 변환 후 양자화된 영상 데이터를 입력받아 역양자화 및 역변환하는 역할을 담당한다.The inverse quantization unit 103 receives inversely quantized image data after conversion from the quantization unit 101 and performs inverse quantization and inverse transformation.

엔트로피 부호화부(105)는 최종 h.264 부호화 작업이 종료된 최종 매크로 블록을 엔트로피 부호화하여 출력 비트 스트림을 생성하는 역할을 담당한다.The entropy encoder 105 is responsible for generating an output bit stream by entropy encoding a final macroblock in which the last h.264 encoding operation is completed.

블록 해제부(107) 역양자화된 매크로 블록의 블록을 해제하여 자연스러운 화상을 제공하는 역할을 담당한다.The block releasing unit 107 serves to release a block of the dequantized macro block to provide a natural image.

참조 프레임 재현부(109)는 상기 블록 해제부(107)로부터 입력받은 화상을 이용하여 다수의 참조 프레임 화상을 생성하고 저장하는 역할을 담당한다. 이러한 참조 프레임은 움직임 추정이나 움직임 보상을 할 때 참조 화면으로 사용되는 복수의 프레임 화상이다.The reference frame reproducing unit 109 is responsible for generating and storing a plurality of reference frame images by using the image received from the block release unit 107. These reference frames are a plurality of frame images used as reference screens for motion estimation and motion compensation.

움직임 보상부(111, MC : Motion Compensation)는 상기 참조 프레임 재현 부(109)에서 저장된 참조 프레임 및 움직임 추정부(113)에서 추정된 모션 벡터 및 비용값을 기준으로 매크로 블록을 보상하는 역할을 담당한다.The motion compensator 111 (MC) is responsible for compensating the macro block based on the reference frame stored in the reference frame reproducing unit 109 and the motion vector and the cost value estimated by the motion estimator 113. do.

움직임 추정부(113)는 상기 참조 프레임 재현부(109)에서 저장된 참조 프레임을 이용하여 현재 매크로 블록의 움직임을 추정하여 그 모션 벡터 및 비용을 계산하는 역할을 담당한다. 이러한 움직임 추정부는 기존의 MPEG 방식과 달리 1/4 화소 단위의 움직임까지 추정하므로 계산이 매우 많고 복잡하다. 특히 상기 움직임 추정부(113)는 거친 움직임 추정부(CME : Coarse Mode Estimation) 및 미세 움직임 추정부(FME : Fine Motion Estimation)로 구분 될 수 있으며 이러한 움직임을 추정하는 방법은 본 발명의 핵심적인 부분으로 이하의 도면에서 더욱 상세히 설명하도록 한다.The motion estimation unit 113 is responsible for estimating the motion of the current macro block by using the reference frame stored in the reference frame reproducing unit 109 and calculating a motion vector and a cost thereof. Unlike the conventional MPEG method, such a motion estimator estimates motion in units of 1/4 pixels, which is very complicated and complicated. In particular, the motion estimator 113 may be classified into a coarse mode estimator (CME) and a fine motion estimator (FME), and a method of estimating such motion is an essential part of the present invention. As will be described in more detail in the following drawings.

인트라 예측부(115)는 상기 참조 프레임 재현부(109)에서 저장된 참조 프레임을 이용하여 매크로 블록 내의 예측 부호화 즉 인트라 예측을 수행하는 역할을 담당한다.The intra prediction unit 115 performs a role of performing prediction encoding, that is, intra prediction, in a macro block by using the reference frame stored in the reference frame reproducing unit 109.

도 2는 본 발명에 따른 움직임 추정부의 구조를 설명하는 도면이다.2 is a view for explaining the structure of the motion estimation unit according to the present invention.

도 2를 참조하면 본 발명에 따른 움직임 추정부는 크게 CME 부(220) 및 FME부(230)를 포함한다. CME부는 CME 참조 영역 버퍼(221), CME 매크로 블록 버퍼(223) 및 2 화소 추정부(225)를 포함한다. 한 편 FME부(230)는 FME 참조 영역 버퍼(233), FME 매크로 블록 버퍼(231) 및 1/4 화소 추정부(237)를 포함한다.Referring to FIG. 2, the motion estimation unit largely includes a CME unit 220 and an FME unit 230. The CME unit includes a CME reference area buffer 221, a CME macro block buffer 223, and a two pixel estimation unit 225. The FME unit 230 includes an FME reference area buffer 233, an FME macro block buffer 231, and a quarter pixel estimator 237.

CME 참조 영역 버퍼(221)는 참조 프레임 재현부에 포함된 참조 프레임 및 현재 프레임을 모두 저장하고 있는 메모리(210)로부터 현재 프레임의 매크로 블록에 상응하는 참조 프레임의 휘도 신호의 홀수 행만을 저장하는 역할을 담당한다. 기존의 CME 참조 영역 버퍼는 현재 참조 프레임의 휘도 신호를 모두 저장하였지만, 본 발명에서는 홀수 행만을 저장하여, 메모리의 크기를 현저히 줄일 수 있을 뿐 아니라 210번으로부터의 반복된 전송시간을 줄일 수 있다.The CME reference area buffer 221 stores only odd rows of luminance signals of the reference frame corresponding to the macro block of the current frame from the memory 210 that stores both the reference frame and the current frame included in the reference frame reproducing unit. In charge. The conventional CME reference region buffer stores all the luminance signals of the current reference frame. However, in the present invention, only odd rows can be stored, thereby significantly reducing the size of the memory and reducing the repeated transmission time from 210.

CME 매크로 블록 버퍼(223)는 참조 프레임 재현부에 포함된 참조 프레임 및 현재 프레임을 모두 저장하고 있는 메모리(210)로부터 현재 프레임의 매크로 블록의 홀수 행만을 저장하는 역할을 담당한다. 기존의 CME 매크로 블록 버퍼는 현재 참조 프레임의 매크로 블록 신호를 모두 저장하였지만, 본 발명에서는 홀수 행만을 저장하여, 메모리의 크기를 현저히 줄일 수 있다. 즉 기존의 CME 매크로 블록 버퍼에 저장되는 현재 프레임의 매크로 블록 신호는 16x16개가 된다면 본 발명에서는 8x16개가 된다.The CME macro block buffer 223 stores only odd rows of macro blocks of the current frame from the memory 210 that stores both the reference frame and the current frame included in the reference frame reproducing unit. Although the conventional CME macroblock buffer stores all the macroblock signals of the current reference frame, in the present invention, only odd rows can be stored, thereby significantly reducing the size of the memory. That is, if 16x16 macroblock signals of the current frame stored in the existing CME macroblock buffer are 8x16 in the present invention.

2화소 추정부(225)는 상기 CME 매크로 블록 버퍼(223) 및 CME 참조 영역 버퍼(221)에 저장된 값을 이용하여 2화소 단위 움직임 벡터를 추정하는 역할을 담당한다. 이러한 추정 방법은 도 3에서 설명하도록 한다.The two pixel estimator 225 estimates a two pixel unit motion vector using the values stored in the CME macro block buffer 223 and the CME reference region buffer 221. This estimation method will be described with reference to FIG. 3.

FME 참조 영역 버퍼(233)는 움직임 보상할 현재 프레임의 매크로 블록에 상응하는 참조 프레임의 매크로 블록에서 1화소 단위로 저장하는 버퍼이다.The FME reference area buffer 233 is a buffer that stores, in units of one pixel, the macro block of the reference frame corresponding to the macro block of the current frame to be motion compensated.

FME 매크로 블록 버퍼(231)는 메모리(210)에 존재하는 현재 프레임의 화소 값 중에서 실제로 현재 연산되는 매크로 블록의 값만을 저장하는 버퍼이다.The FME macro block buffer 231 is a buffer that stores only the value of the macro block that is currently calculated among the pixel values of the current frame existing in the memory 210.

특히, 상기 FME 참조 영역 버퍼(233) 및 FME 매크로 블록 버퍼(231)는 본 발명에서는 현재 프레임 매크로 블록의 짝수 행만을 저장한다. 이는 상기에서 설명된 CME 참조 영역 버퍼(221) 및 CME 매크로 블록 버퍼(223)에서 이미 홀수 행이 저장되어 있으므로, 상기 CME 부에 저장된 홀수 행을 그대로 이용할 수 있기 때문이다.In particular, the FME reference area buffer 233 and the FME macro block buffer 231 store only even rows of the current frame macro block in the present invention. This is because the odd rows stored in the CME reference region buffer 221 and the CME macro block buffer 223 described above can be used as they are.

1/4 화소 추정부(237)는 FME 참조 영역 버퍼(233), 및 FME 매크로 블록 버퍼(231)에 저장된 값 및 CME 부에 저장된 값을 이용하여 1화소 단위 , 1/2 화소 단위 및 1/4 화소 단위로 모션 벡터를 추정하는 역할을 담당한다.The quarter pixel estimator 237 uses the value stored in the FME reference area buffer 233 and the FME macro block buffer 231 and the value stored in the CME unit to determine one pixel unit, 1/2 pixel unit and 1 /. It is responsible for estimating the motion vector in units of 4 pixels.

도 3은 본 발명이 적용되는 휘도 움직임 추정을 설명하기 위한 도면이다.3 is a view for explaining luminance motion estimation to which the present invention is applied.

도 3을 참조하면, 본 발명에서 적용되는 휘도 움직임 추정은 현재 입력되는 프레임의 매크로 블록(300) 및 과거의 복수의 프레임으로부터 설정되는 참조 프레임의 매크로 블록(310)과의 차이 값(Δx,Δy)을 이용하여 움직임 벡터 및 그 비용을 계산하는 방식이다. 이러한 움직임 추정이 가능한 경우 움직임을 추정한 값을 보상한 프레임 과 그 움직임의 차이 값을 나타내는 움직임 벡터만을 전송하면 연속적인 화면의 구성이 가능하여 동영상 신호의 크기를 크게 줄일 수 있다.Referring to FIG. 3, the luminance motion estimation applied in the present invention is a difference value Δx, Δy from a macroblock 300 of a frame currently input and a macroblock 310 of a reference frame set from a plurality of frames in the past. ) To calculate the motion vector and its cost. When such a motion estimation is possible, by transmitting only a frame that compensates for a motion estimation value and a motion vector indicating a difference value of the motion, a continuous screen can be configured and the size of a video signal can be greatly reduced.

여기서 움직임 추정은 상기 현재 프레임 매크로 블록(300)과 참조 프레임 매크로 블록(310)의 화소의 절대 값의 차를 구하여 그 비용을 계산하고, 참조 프레임의 검색 창 과 현재 프레임 매크로 블록(300)과의 가장 적은 비용을 가지는 화소 지점(Δx,Δy)을 움직임 벡터로 정의할 수 있다.In this case, the motion estimation calculates a cost by obtaining a difference between the absolute values of the pixels of the current frame macro block 300 and the reference frame macro block 310, and calculates a cost of the reference frame. The pixel point Δx and Δy having the lowest cost may be defined as a motion vector.

이러한 움직임 벡터 및 비용값은 These motion vectors and cost values

Motion Vector = (Δx,Δy)MinCostMotion Vector = (Δx, Δy) MinCost

MINCOST = MIN{Cost(Δx,Δy)}MINCOST = MIN {Cost (Δx, Δy)}

단, Cost(Δx,Δy) =

Figure 112007090751711-pat00001
Figure 112007090751711-pat00002
Figure 112007090751711-pat00003
Figure 112007090751711-pat00004
Cost (Δx, Δy) =
Figure 112007090751711-pat00001
Figure 112007090751711-pat00002
Figure 112007090751711-pat00003
Figure 112007090751711-pat00004

로 계산될 수 있다. 여기서 Luma는 휘도를 나타낸다.It can be calculated as Where Luma represents luminance.

도 4는 본 발명에 따른 CME 매크로 블록 버퍼에서 현재 프레임 매크로 블록을 저장하는 방법을 나타내는 도면이다.4 is a diagram illustrating a method of storing a current frame macro block in a CME macro block buffer according to the present invention.

도 4를 참조하면, 현재 프레임 매크로 블록(400)이 16x16개의 블록을 가진다고 가정하면, 본 발명에서 CME 부에 포함된 CME 매크로 블록 버퍼(411)에는 상기 도면의 실선 화살표에 해당하는 프레임 매크로 블록(400)의 홀수 행만이 저장된다.Referring to FIG. 4, assuming that the current frame macro block 400 has 16 × 16 blocks, the CME macro block buffer 411 included in the CME unit includes a frame macro block corresponding to the solid arrow in the figure. Only odd rows of 400 are stored.

또한 상기 CME 부의 다음 단인 FME 부에 포함된 FME 매크로 블록 버퍼(413)에는 상기 CME 매크로 블록 버퍼(411)에서 저장되지 않은 프레임 매크로 블록(400)의 짝수 행이 저장된다.In addition, an even row of the frame macroblock 400 not stored in the CME macroblock buffer 411 is stored in the FME macroblock buffer 413 included in the FME block, which is the next stage of the CME block.

이렇게 각 버퍼에 현재 프레임 매크로 블록(400)이 번갈아 저장되는 경우, 상기 CME 부에서 수행하는 2화소 추정(421)은 현재 프레임 매크로 블록(400)에 포함된 값 중에서 매크로 블록에서 가로 및 세로로 홀수 칸에 포함된 값만을 대상으로 추정을 실행하므로 실제적으로 현재 프레임 매크로 블록(400)에 포함된 모든 값을 이용하여 추정을 수행하는 것이 아니라 상기 매크로 블록에 포함된 값 중 홀수 칸에 포함된 값만을 대상으로 한다. 즉 16x16 매크로 블록 중에서 실제로 사용되는 값은 홀수 칸에 포함된 값인 8x8의 값만이 대상이 된다.When the current frame macro block 400 is alternately stored in each buffer as described above, the two-pixel estimation 421 performed by the CME unit is oddly horizontally and vertically in the macro block among values included in the current frame macro block 400. Since the estimation is performed on only the values included in the column, the estimation is not performed using all the values included in the current frame macro block 400, but only the value included in the odd column among the values included in the macro block. It is targeted. In other words, only the value of 8x8, which is a value included in the odd column, is actually used among the 16x16 macroblocks.

따라서 CME 매크로 블록 버퍼(411)는 CME에 포함된 2 화소 추정만을 수행하기 위한 현재 프레임의 매크로 블록 값만을 저장하면 되므로, 홀수 행에 해당하는 값만을 저장하면 된다.Therefore, since the CME macroblock buffer 411 only needs to store the macroblock value of the current frame for performing the 2-pixel estimation included in the CME, only the value corresponding to the odd row needs to be stored.

한편, CME 다음에 수행되는 FME에서는 1/4 화소 단위까지 움직임 추정을 수행하게 되는데, 이때 1/4 화소 추정(423)에서부터 현재 프레임의 매크로 블록(400)의 모든 값이 이용된다.Meanwhile, in the FME performed after the CME, motion estimation is performed up to a quarter pixel unit. In this case, all values of the macro block 400 of the current frame are used from the quarter pixel estimation 423.

따라서 FME 매크로 블록 버퍼(413)에는 상기 CME 매크로 블록 버퍼(411)에 저장되지 않은 매크로 블록의 나머지 짝수 행의 값을 저장한다.Therefore, the FME macro block buffer 413 stores values of the remaining even rows of the macro block not stored in the CME macro block buffer 411.

그런 다음 FME 부에서 1/4 화소 추정(423)을 수행하는 경우 상기 FME 매크로 블록 버퍼(413)에 포함된 짝수 행의 값뿐만 아니라 상기 CME 매크로 블록 버퍼(411)에 포함된 홀수 행의 값을 모두 이용하게 된다.Then, when performing the 1/4 pixel estimation 423 in the FME unit, not only the even row values included in the FME macro block buffer 413 but also the odd row values included in the CME macro block buffer 411. All will be used.

도 5는 본 발명에 따른 CME 매크로 블록 버퍼의 메모리 저장 방법을 나타내는 도면이다.5 is a diagram illustrating a memory storing method of a CME macroblock buffer according to the present invention.

도 5를 참조하면, 본 발명에 따른 CME 매크로 블록 버퍼(500)는 현재 프레임 매크로 블록 버퍼의 홀수 행(501)을 저장한다. 이러한 경우, 일반적인 32 비트 환경에서 동작하고, 상기 각 블록값 값은 8비트의 값을 가지므로 한번의 프로세스에서 읽어 들이는 블록은 4 칸의 블록이 될 것이다.Referring to FIG. 5, the CME macroblock buffer 500 according to the present invention stores an odd row 501 of the current frame macroblock buffer. In this case, since it operates in a general 32-bit environment and each block value has an 8-bit value, a block read in one process will be 4 blocks.

한편 본 발명의 2화소 추정에서 필요한 값은 홀수 행 및 홀수 열에 해당하는 블록 칸의 값이 필요하므로, 실제적으로 한번의 프로세스에서 읽어 들이는 4칸의 블록 중 본 도면에서 A로 표시된 홀수 열의 블록칸에 해당하는 값만이 필요하게 된다.On the other hand, since the value required for the two-pixel estimation of the present invention requires the value of the block cell corresponding to the odd row and the odd column, the block column of the odd column indicated by A in this figure among the four blocks actually read in one process Only values corresponding to are needed.

따라서 본 발명의 CME 매크로 블록 버퍼는 홀수 행만을 포함하는 현재 프레임 매크로 블록(501)에서 홀수 열의 블록(511)만을 저장하는 제1 CME 매크로 블록 버퍼(510) 및 짝수 열의 블록(513)만을 저장하는 제2 CME 매크로 블록 버퍼(520)를 물리적으로 분리하여 구성한다. 이러한 경우 2화소 추정을 수행할 경우에 실제적으로 필요한 버퍼는 제1 CME 매크로 블록 버퍼(510)일 뿐으로, 한 번의 프로세스에서 읽어 들이는 4 개의 블록값이 모두 실질적으로 움직임 추정에 사용되어 읽기 횟수를 줄일 수 있다.Accordingly, the CME macroblock buffer of the present invention stores only the first CME macroblock buffer 510 and the even-numbered block 513 in the current frame macroblock 501 including only odd-numbered rows. The second CME macroblock buffer 520 is physically separated and configured. In this case, the actual buffer required for performing the 2-pixel estimation is only the first CME macro block buffer 510. All four block values read in one process are actually used for motion estimation, and thus the number of reads is increased. Can be reduced.

도 6은 본 발명에 따른 CME 참조 영역 버퍼에서 현재 프레임 참조 블록을 저장하는 방법을 나타내는 도면이다.6 is a diagram illustrating a method of storing a current frame reference block in a CME reference region buffer according to the present invention.

도 6을 참조하면, 현재 프레임 참조 블록(600)중 본 발명에서 CME 부에 포함된 CME 참조 영역 버퍼(611)에는 상기 도면의 실선 화살표에 해당하는 프레임 참조 블록(600)의 홀수 행만이 저장된다.Referring to FIG. 6, only odd rows of the frame reference block 600 corresponding to the solid arrow in the figure are stored in the CME reference region buffer 611 included in the CME unit of the present frame reference block 600. .

또한 상기 CME 부의 다음 단인 FME 부에 포함된 FME 참조 영역 버퍼(613)에는 상기 CME 참조 영역 버퍼(611)에서 저장되지 않은 프레임 참조 블록(600)의 짝수 행이 저장된다.In addition, an even row of the frame reference block 600 not stored in the CME reference region buffer 611 is stored in the FME reference region buffer 613 included in the FME unit, which is the next stage of the CME unit.

이렇게 각 버퍼에 현재 프레임 참조 블록(600)이 번갈아 저장되는 경우, 상기 CME 부에서 수행하는 2화소 추정(621)은 현재 프레임 참조 블록(600)에 포함된 값 중에서 참조 블록에서 가로 및 세로로 홀수 칸에 포함된 값만을 대상으로 추정을 실행하므로 실제적으로 현재 프레임 참조 블록(600)에 포함된 모든 값을 이용하여 추정을 수행하는 것이 아니라 상기 참조 블록에 포함된 값 중 홀수에 포함된 값만을 대상으로 한다. When the current frame reference block 600 is alternately stored in each buffer as described above, the two-pixel estimation 621 performed by the CME unit is an odd number horizontally and vertically in the reference block among values included in the current frame reference block 600. Since the estimation is performed on only the values included in the column, the estimation is not performed using all the values included in the current frame reference block 600, but only the values included in the odd number among the values included in the reference block. It is done.

따라서 CME 참조 영역 버퍼(611)는 CME에 포함된 2 화소 추정만을 수행하기 위한 현재 프레임의 참조 블록 값만을 저장하면 되므로, 홀수 행에 해당하는 값만을 저장하면 된다.Therefore, since the CME reference region buffer 611 needs to store only the reference block value of the current frame for performing only 2 pixel estimation included in the CME, only the value corresponding to the odd row needs to be stored.

한편, CME 부 다음에 수행되는 FME 부에서는 1/4 화소 단위 추정을 수행하게 되는데, 이때 1/4화소 추정(623)에서부터 현재 프레임의 참조 블록(600)의 모든 값이 이용된다.On the other hand, the FME unit performed after the CME unit performs the unit of 1/4 pixel estimation, wherein all values of the reference block 600 of the current frame are used from the 1/4 pixel estimation 623.

따라서 FME 참조 영역 버퍼(613)에는 상기 CME 참조 영역 버퍼(611)에 저장되지 않은 참조 블록의 나머지 짝수 행의 값을 저장한다.Therefore, the FME reference area buffer 613 stores values of the remaining even rows of the reference block not stored in the CME reference area buffer 611.

그런 다음 FME 부에서 1화소 추정(623)을 수행하는 경우 상기 FME 참조 영역 버퍼(613)에 포함된 짝수 행의 값뿐만 아니라 상기 CME 참조 영역 버퍼(611)에 포함된 홀수 행의 값을 모두 이용하게 된다. Then, when performing the one-pixel estimation 623 in the FME unit, not only the values of the even rows included in the FME reference region buffer 613 but also the values of the odd rows included in the CME reference region buffer 611 are used. Done.

이러한 경우 FME 참조 영역 버퍼(613)에 포함되는 참조 프레임의 블록값은 CME 모션 벡터(617)를 기준으로 x 축으로 -4/4 및 y 축으로 -4/4만큼 확장된 값을 가지게 된다. 따라서 상기 CME 참조 영역 버퍼(611)에 포함된 값을 그대로 사용할 수는 없어, FME 제어부(615)를 추가하여, 상기 CME부에서 구해진 CME 모션 벡터(617)값을 상기 CME 참조 영역 버퍼(611)에 적용하여 현재 매크로 블록을 기준으 로 x 축으로 -4 및 y 축으로 -4인 지점에서 12x24 만큼을 읽어오는 FME 제어부(615)를 더 포함한다. In this case, the block value of the reference frame included in the FME reference region buffer 613 has a value extended by -4/4 on the x axis and -4/4 on the y axis based on the CME motion vector 617. Therefore, the value contained in the CME reference region buffer 611 cannot be used as it is, and an FME controller 615 is added to the CME reference region buffer 611 to add the CME motion vector 617 value obtained from the CME unit. The FME controller 615 reads as much as 12x24 at the point of -4 on the x-axis and -4 on the y-axis based on the current macro block.

이러한 FME 제어부(615)에 의하여 상기 FME 단계에서 1/4화소 추정(623)을 하는 경우에 현재 프레임 참조 블록의 홀수 행 값 및 짝수 행 값을 모두 구할 수 있다.When the FME control unit 615 performs the 1/4 pixel estimation 623 in the FME step, both the odd row value and the even row value of the current frame reference block can be obtained.

도 7은 본 발명에 따른 CME 참조 영역 버퍼의 메모리 저장 방법을 나타내는 도면이다.7 is a diagram illustrating a memory storing method of a CME reference region buffer according to the present invention.

도 7을 참조하면, 본 발명에 따른 CME 참조 영역 버퍼(700)는 현재 프레임 참조 영역 버퍼의 홀수 행(701)을 저장한다. 이러한 경우, 일반적인 32 비트 환경에서 동작하고, 상기 각 블록 값은 8비트 크기를 가지므로 한번의 프로세스에서 읽어 들이는 블록은 4 개의 블록이 될 것이다.Referring to FIG. 7, the CME reference region buffer 700 according to the present invention stores an odd row 701 of the current frame reference region buffer. In this case, since it operates in a general 32-bit environment and each block value is 8 bits in size, the block read in one process will be 4 blocks.

한편 본 발명의 2화소 추정에서 필요한 값은 홀수 행 및 홀수 열에 해당하는 블록 값이 필요하므로, 실제적으로 한번의 프로세스에서 읽어 들이는 4개의 블록 중 본 도면에서 A로 표시된 홀수 열의 블록 값만이 필요하게 된다.On the other hand, since the value required for the 2-pixel estimation of the present invention requires a block value corresponding to an odd row and an odd column, only a block value of an odd column indicated by A in this drawing is actually required among four blocks read in one process. do.

따라서 본 발명의 CME 참조 영역 버퍼는 홀수 행만을 포함하는 현재 프레임 매크로 블록(701)에서 홀수 열의 블록(711)만을 저장하는 제1 CME 참조 영역 버퍼(710) 및 짝수 열의 블록(713)만을 저장하는 제2 CME 참조 영역 버퍼(720)를 물리적으로 분리하여 구성한다. 이러한 경우 2화소 추정을 수행할 경우에 실제적으로 필요한 버퍼는 제1 CME 참조 영역 버퍼(710)일 뿐으로, 한 번의 프로세스에서 읽어 들이는 4 개의 블록 값이 모두 실질적으로 움직임 추정에 사용되어 읽기 횟수를 줄 일 수 있다.Accordingly, the CME reference region buffer of the present invention stores only the first CME reference region buffer 710 and the even-numbered block 713 in the current frame macro block 701 including only odd-numbered rows. The second CME reference region buffer 720 is physically separated and configured. In this case, the actual buffer required for performing the 2-pixel estimation is only the first CME reference region buffer 710, and all four block values read in one process are substantially used for motion estimation, thereby reducing the number of reads. Can be reduced.

본 발명은 상기 실시예에 한정되지 않으며, 많은 변형이 본 발명의 사상 내에서 당 분야에서 통상의 지식을 가진 자에 의하여 가능함은 물론이다. The present invention is not limited to the above embodiments, and many variations are possible by those skilled in the art within the spirit of the present invention.

도 1은 본 발명이 적용되는 H.264 부호화 장치를 전체적으로 설명하는 구성도.BRIEF DESCRIPTION OF THE DRAWINGS Fig. 1 is a block diagram illustrating an overall H.264 encoding apparatus to which the present invention is applied.

도 2는 본 발명에 따른 움직임 추정부의 구조를 설명하는 도면.2 is a diagram for explaining the structure of a motion estimation unit according to the present invention;

도 3은 본 발명이 적용되는 휘도 움직임 추정을 설명하기 위한 도면.3 is a view for explaining luminance motion estimation to which the present invention is applied;

도 4는 본 발명에 따른 CME 매크로 블록 버퍼에서 현재 프레임 매크로 블록을 저장하는 방법을 나타내는 도면.4 is a diagram illustrating a method for storing a current frame macro block in a CME macro block buffer according to the present invention.

도 5는 본 발명에 따른 CME 매크로 블록 버퍼의 메모리 저장 방법을 나타내는 도면.5 is a diagram illustrating a memory storage method of a CME macroblock buffer according to the present invention.

도 6은 본 발명에 따른 CME 참조 영역 버퍼에서 현재 프레임 참조 블록을 저장하는 방법을 나타내는 도면.6 illustrates a method of storing a current frame reference block in a CME reference region buffer according to the present invention.

도 7은 본 발명에 따른 CME 참조 영역 버퍼의 메모리 저장 방법을 나타내는 도면.7 is a diagram illustrating a memory storage method of a CME reference region buffer according to the present invention.

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

220 : CME 부 230 : FME 부220: CME part 230: FME part

221 : CME 참조 영역 버퍼 223 : CME 매크로 블록 버퍼221: CME reference area buffer 223: CME macro block buffer

225 : 2 화소 추정부 233 : FME 참조 영역 버퍼225: 2 pixel estimator 233: FME reference region buffer

231 : FME 매크로 블록 버퍼 237 : 1/4 화소 추정부231: FME macroblock buffer 237: 1/4 pixel estimation unit

Claims (11)

현재 프레임의 매크로 블록의 홀수 행만을 저장하는 CME(Coarse Mode Estimation) 매크로 블록 버퍼 -상기 CME 매크로 블록 버퍼는 상기 홀수 행의 홀수 열만을 저장하는 제1 CME 매크로 블록 버퍼 및 상기 홀수 행의 짝수 열만을 저장하는 제2 CME 매크로 블록 버퍼를 더 포함함-;Coarse Mode Estimation (CME) macro block buffer for storing only odd rows of macro blocks of a current frame, wherein the CME macro block buffer includes only a first CME macro block buffer for storing only odd columns of odd rows and even columns of odd rows. Further comprising a second CME macro block buffer for storing; 현재 프레임의 매크로 블록에 상응하는 참조 프레임의 휘도 신호의 홀수 행만을 저장하는 CME 참조 영역 버퍼 및A CME reference region buffer storing only odd rows of luminance signals of the reference frame corresponding to the macro block of the current frame; 상기 CME 매크로 블록 버퍼 및 상기 CME 참조 영역 버퍼에 저장된 값에 상응하여 2 화소 추정을 수행하는 2화소 추정부A two-pixel estimator for performing two-pixel estimation corresponding to values stored in the CME macro block buffer and the CME reference region buffer 를 포함하는 동영상 부호화에서 움직임 추정 장치.Motion estimation apparatus in the video encoding comprising a. 삭제delete 제1항에 있어서,The method of claim 1, 상기 CME 참조 영역 버퍼는 상기 홀수 행의 홀수 열만을 저장하는 제1 CME 참조 영역 버퍼 및 상기 홀수 행의 짝수 열만을 저장하는 제2 CME 참조 영역 버퍼를 더 포함하는 동영상 부호화에서 움직임 추정 장치.The CME reference region buffer further comprises a first CME reference region buffer storing only odd columns of the odd rows and a second CME reference region buffer storing only even columns of the odd rows. 제1항에 있어서,The method of claim 1, 상기 CME 참조 영역 버퍼에 저장된 값 및 상기 2화소 추정부에서 추정된 모션 벡터 값을 입력받아 FME 참조 영역 버퍼에 상응하는 값으로 전송하는 CME 참조 영역 버퍼 제어부를 더 포함하는 동영상 부호화에서 움직임 추정 장치.And a CME reference region buffer control unit which receives a value stored in the CME reference region buffer and a motion vector value estimated by the two pixel estimator, and transmits the value to a value corresponding to the FME reference region buffer. 제1항에 있어서,The method of claim 1, 상기 현재 프레임의 매크로 블록의 짝수 행은 상기 움직임 추정 장치의 다음 단에 연결되는 1/4 움직임 조정 장치의 FME 매크로 블록 버퍼에 포함되는 것을 특징으로 하는 동영상 부호화에서 움직임 추정 장치.The even row of the macroblock of the current frame is included in the FME macroblock buffer of the quarter motion control device connected to the next stage of the motion estimation device. 제1항에 있어서,The method of claim 1, 상기 현재 프레임의 매크로 블록에 상응하는 참조 프레임의 휘도 신호의 짝수 행은 상기 움직임 추정 장치의 다음 단에 연결되는 1/4 움직임 조정 장치의 FME 참조 영역 버퍼에 포함되는 것을 특징으로 하는 동영상 부호화에서 움직임 추정 장치.The even row of the luminance signal of the reference frame corresponding to the macro block of the current frame is included in the FME reference region buffer of the quarter motion controller connected to the next stage of the motion estimation apparatus. Estimation device. 현재 프레임의 매크로 블록의 홀수 행만을 저장하는 단계 - 상기 현재 프레임의 매크로 블록의 홀수 행중 홀수 열 및 짝수 열은 물리적으로 서로 다른 메모리에 저장됨-;Storing only odd rows of macro blocks of the current frame, wherein odd and even columns of odd rows of the macro blocks of the current frame are stored in physically different memories; 상기 현재 프레임의 매크로 블록에 상응하는 참조 프레임의 휘도 신호의 홀수 행만을 저장하는 단계 및Storing only odd rows of luminance signals of the reference frame corresponding to the macro block of the current frame; and 상기 저장된 상기 현재 프레임 매크로 블록의 홀수 행 및 상기 참조 프레임의 휘도 신호의 홀수 행에 상응하여 2화소 단위 움직임을 추정하는 단계Estimating a two-pixel unit motion corresponding to the stored odd row of the current frame macro block and the odd row of the luminance signal of the reference frame. 를 포함하는 동영상 부호화에서 움직임 추정 방법.Motion estimation method in the video encoding comprising a. 제7항에 있어서,The method of claim 7, wherein 현재 프레임의 매크로 블록의 짝수 행만을 저장하는 단계;Storing only even rows of the macroblock of the current frame; 상기 현재 프레임의 매크로 블록에 상응하는 참조 프레임의 휘도 신호의 짝수 행만을 저장하는 단계 및Storing only even rows of luminance signals of a reference frame corresponding to the macro block of the current frame; and 상기 저장된 현재 프레임 매크로 블록의 짝수 행, 홀수 행, 참조 프레임의 휘도 신호의 홀수 행 및 짝수 행에 상응하여 1/4 화소 단위 움직임을 추정하는 단계Estimating the motion of the unit of 1/4 pixel corresponding to the even row, the odd row, and the odd row and even row of the luminance signal of the reference frame of the stored current frame macro block. 를 더 포함하는 동영상 부호화에서 움직임 추정 방법.Motion estimation method in the video encoding further comprising. 삭제delete 제7항에 있어서,The method of claim 7, wherein 상기 현재 프레임의 매크로 블록에 상응하는 참조 프레임의 휘도 신호의 홀수 행만을 저장하는 단계는Storing only odd rows of the luminance signal of the reference frame corresponding to the macro block of the current frame 상기 홀수 행 중 홀수 열 및 상기 홀수 행 중 짝수 열을 물리적으로 서로 다른 메모리에 저장하는 단계를 더 포함하는 동영상 부호화에서 움직임 추정 방법.And storing the odd columns of the odd rows and the even columns of the odd rows in physically different memories. 제7항에 있어서,The method of claim 7, wherein 상기 참조 프레임의 휘도 신호의 홀수 행에 포함된 값 및 상기 2화소 움직임 추정된 움직임 벡터 값을 입력받아 FME 참조 영역 버퍼에 상응하는 값으로 변환하는 단계를 더 포함하는 동영상 부호화에서 움직임 추정 방법.And receiving a value included in an odd row of the luminance signal of the reference frame and the two-pixel motion estimated motion vector value and converting the value into a value corresponding to an FME reference region buffer.
KR1020070132717A 2007-12-17 2007-12-17 Motion estimation method and apparatus for video coding KR100928272B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020070132717A KR100928272B1 (en) 2007-12-17 2007-12-17 Motion estimation method and apparatus for video coding

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020070132717A KR100928272B1 (en) 2007-12-17 2007-12-17 Motion estimation method and apparatus for video coding

Publications (2)

Publication Number Publication Date
KR20090065239A KR20090065239A (en) 2009-06-22
KR100928272B1 true KR100928272B1 (en) 2009-11-24

Family

ID=40993638

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020070132717A KR100928272B1 (en) 2007-12-17 2007-12-17 Motion estimation method and apparatus for video coding

Country Status (1)

Country Link
KR (1) KR100928272B1 (en)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20020046059A (en) * 2000-12-12 2002-06-20 엘지전자 주식회사 An optimization of motion estimation method and apparatus
KR20030051957A (en) * 2001-12-20 2003-06-26 엘지전자 주식회사 Device for encoding and decoding a moving picture using of a wavelet transformation and a motion estimation
JP2005136893A (en) 2003-10-31 2005-05-26 Hitachi Ltd Decoding processing program and decoding processing apparatus

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20020046059A (en) * 2000-12-12 2002-06-20 엘지전자 주식회사 An optimization of motion estimation method and apparatus
KR20030051957A (en) * 2001-12-20 2003-06-26 엘지전자 주식회사 Device for encoding and decoding a moving picture using of a wavelet transformation and a motion estimation
JP2005136893A (en) 2003-10-31 2005-05-26 Hitachi Ltd Decoding processing program and decoding processing apparatus

Also Published As

Publication number Publication date
KR20090065239A (en) 2009-06-22

Similar Documents

Publication Publication Date Title
JP4542447B2 (en) Image encoding / decoding device, encoding / decoding program, and encoding / decoding method
US8218638B2 (en) Method and system for optical flow based motion vector estimation for picture rate up-conversion
RU2409005C2 (en) Method of scalable coding and decoding of video signal
EP3026906A1 (en) Moving image encoding apparatus and operation method thereof
US20070098078A1 (en) Method and apparatus for video encoding/decoding
JP2004096757A (en) Interpolation method and its apparatus for move compensation
JP2009089332A (en) Motion prediction method and motion predictor
JP2011151430A (en) Image processing apparatus, and imaging device with the same
JP4774315B2 (en) Image decoding apparatus and image decoding method
US20070133689A1 (en) Low-cost motion estimation apparatus and method thereof
JP4360093B2 (en) Image processing apparatus and encoding apparatus and methods thereof
US8098946B2 (en) Apparatus and method for image encoding and decoding using prediction
KR100926752B1 (en) Fine Motion Estimation Method and Apparatus for Video Coding
JP4318019B2 (en) Image processing apparatus and method, recording medium, and program
US20130156114A1 (en) Data Movement Reduction In Video Compression Systems
KR101691380B1 (en) Dct based subpixel accuracy motion estimation utilizing shifting matrix
KR100928272B1 (en) Motion estimation method and apparatus for video coding
US20130170565A1 (en) Motion Estimation Complexity Reduction
JP6735370B2 (en) Decryption method
JP6647432B2 (en) Decryption method
JP2009278473A (en) Image processing device, imaging apparatus mounting the same, and image reproducing device
KR100248651B1 (en) A motion compensator
JP5310620B2 (en) Moving picture coding apparatus, moving picture coding method, moving picture coding computer program, and video transmission apparatus
JP5380594B2 (en) Image decoding method
JP5868909B2 (en) Decryption method

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: 20121031

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20131024

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20141027

Year of fee payment: 6

LAPS Lapse due to unpaid annual fee