[go: up one dir, main page]
More Web Proxy on the site http://driver.im/

KR20090041944A - Method and apparatus for motion estimation using mode information of neighbor blocks - Google Patents

Method and apparatus for motion estimation using mode information of neighbor blocks Download PDF

Info

Publication number
KR20090041944A
KR20090041944A KR1020070107751A KR20070107751A KR20090041944A KR 20090041944 A KR20090041944 A KR 20090041944A KR 1020070107751 A KR1020070107751 A KR 1020070107751A KR 20070107751 A KR20070107751 A KR 20070107751A KR 20090041944 A KR20090041944 A KR 20090041944A
Authority
KR
South Korea
Prior art keywords
block
mode
motion estimation
mode information
modes
Prior art date
Application number
KR1020070107751A
Other languages
Korean (ko)
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 KR1020070107751A priority Critical patent/KR20090041944A/en
Publication of KR20090041944A publication Critical patent/KR20090041944A/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/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/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
    • 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

Landscapes

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

Abstract

A method and an apparatus for motion estimation using mode information of neighbor blocks are provided to design a low electrical power and low cost moving picture encoder by reducing an amount of calculation for motion estimation. A mode information statistics table(110) stores information statistically organized from results of experiments by using various conditions for various video images, for example, a resolution, a frame rate, and a Qp value, etc. A motion estimation unit(120) obtains mode information of a neighboring block for a motion estimation about the current block. By using the mode information and mode information statistics table of the obtained neighboring block as described above, the motion estimation unit is supplied a candidate mode which has high probability of being determined as the mode of the current block. A reference frame data used for encoding the current block and the current block data are inputted to the motion estimation unit. The motion estimation unit performs motion estimation for each candidate mode.

Description

인근 블록의 모드정보를 이용한 움직임 추정 방법 및 장치{Method and apparatus for motion estimation using mode information of neighbor blocks}Method and apparatus for motion estimation using mode information of neighboring blocks

본 발명은 동영상 부호화에 관한 것으로, 보다 상세하게는 높은 정확성을 유지하면서 움직임 추정에 소요되는 시간을 감소시킬 수 있는 움직임 추정 방법 및 이를 위한 장치에 관한 것이다.The present invention relates to video encoding, and more particularly, to a motion estimation method and apparatus for reducing the time required for motion estimation while maintaining high accuracy.

최근 모바일 텔레비전, 차세대 DVD 등에 널리 사용되고 있는 동영상 부호화방식인 H.264(MPEG4 part 10/AVC)는 움직임 추정의 정확성을 증대하기 위해 변환(transformation) 부호화 크기에 독립적인 움직임 보상 블록 크기를 제공하고 있다. 반면에 블록마다 움직임벡터 정보를 부호화하여야 하기 때문에 움직임 벡터 정보에 대한 부호 량이 증가하게 된다. 이와 같은 이유로 기존의 고정크기의 블록을 이용한 움직임 추정방식과는 달리 각각의 블록크기에 따라 인터 모드를 나누고 모든 모드에 대해서 순차적으로 움직임 추정을 수행하고, 코스트가 최소가 되는 모드를 선택함으로써 부호화 효율을 증대 시켰다.Recently, H.264 (MPEG4 part 10 / AVC), a video encoding method widely used in mobile television and next-generation DVD, provides a motion compensation block size independent of transform coding size to increase the accuracy of motion estimation. . On the other hand, since the motion vector information must be encoded for each block, the code amount for the motion vector information increases. For this reason, unlike the conventional motion estimation method using fixed-size blocks, the inter mode is divided according to each block size, motion estimation is performed sequentially for all modes, and the coding efficiency is selected by selecting the mode with the lowest cost. Increased.

그러나 가변 블록 크기의 움직임 추정은 H.264/AVC 부호기의 복잡도를 증가시키는 주요 요인 중 하나로, 동영상 부호화 과정의 연산량에 있어서 가장 큰 비중 을 차지하는 움직임 추정 과정을 사용가능한 각각의 모드에 대해서 모두 수행하여야 하므로, 그에 따른 연산량이 모드의 개수에 비례하여 대폭 증가하게 된다. 따라서, H.264/AVC 비디오 표준의 실제 응용 확대를 위해서는 가변 블록 크기의 움직임 추정으로 인한 연산량을 감소시키는 것이 필수적이다.However, variable block size motion estimation is one of the main factors that increase the complexity of the H.264 / AVC coder. All the motion estimation processes that occupy the largest portion of the video encoding process must be performed for each available mode. Therefore, the amount of computation accordingly increases significantly in proportion to the number of modes. Therefore, it is essential to reduce the amount of computation due to the motion estimation of the variable block size in order to expand the practical application of the H.264 / AVC video standard.

연산량을 줄이기 위하여 특정 모드에 대해서만 움직임 추정 연산을 수행하는 방법도 가능하겠지만, 모든 모드에 대해 움직임 추정 연산을 수행한 경우보다 그 효율이 떨어진다.In order to reduce the amount of computation, a method of performing the motion estimation operation only for a specific mode may be possible, but the efficiency is lower than that of the motion estimation operation for all the modes.

본 발명은 상기한 문제점들을 해결하기 위해 안출된 것으로, 본 발명의 목적은 동영상을 부호화할 때에 가장 많은 연산량을 차지하는 움직임 추정의 연산량을 감소시킴으로써 실시간 부호화기 구현의 어려움을 해결하기 위한 움직임 추정 방법 및 이를 위한 장치를 제공하는 것을 목적으로 한다.SUMMARY OF THE INVENTION The present invention has been made to solve the above problems, and an object of the present invention is a motion estimation method for solving the difficulty of real-time encoder implementation by reducing the computation amount of motion estimation, which takes the largest amount of computation when encoding a video. It is an object to provide a device for.

이러한 기술적 과제를 달성하기 위하여 본 발명의 일 실시예에 따른 움직임 추정 방법은 이미 부호화된 인근 블록의 모드정보에 따른 현재 부호화 대상 블록의 모드의 통계적 특성을 담고 있는 모드정보 통계 테이블을 제공하는 단계, 현재 블록에 대한 인근 블록의 모드정보를 획득하는 단계, 및 상기 모드정보 통계 테이블과 상기 인근 블록의 모드정보를 이용하여 선택된 후보 모드에 대한 움직임 추정을 수행하는 단계를 포함한다.According to an aspect of the present invention, there is provided a motion estimation method comprising: providing a mode information statistical table containing statistical characteristics of a mode of a current encoding target block according to mode information of a neighboring block that is already encoded; Obtaining mode information of a neighboring block for a current block, and performing motion estimation for a selected candidate mode using the mode information statistics table and mode information of the neighboring block.

상기 인근 블록은 상기 현재 블록에 대한 좌측블록(left block) 및 상측블록(upper block)일 수 있다.The neighboring block may be a left block and an upper block with respect to the current block.

상기 현재 블록은 현재 부호대상 매크로블록이고, 상기 인근 블록의 모드정보는 상기 좌측블록의 우상 4*4 블록의 모드정보와 상기 상측블록의 좌하 4*4 블록의 모드정보를 포함할 수 있다.The current block may be a current macroblock to be coded, and the mode information of the neighboring block may include mode information of a right upper 4 * 4 block of the left block and mode information of a lower left 4 * 4 block of the upper block.

상기 선택된 후보 모드는 움직임 추정을 위한 7개의 모드 중에서 상기 현재 블록의 모드가 될 확률이 높은 3개의 모드 또는 4개의 모드를 포함할 수 있다.The selected candidate mode may include three modes or four modes having a high probability of becoming the mode of the current block among seven modes for motion estimation.

이러한 기술적 과제를 달성하기 위하여 본 발명의 일 실시예에 따른 움직임 추정 장치는 이미 부호화된 인근 블록의 모드정보에 따른 현재 부호화 대상 블록의 모드의 통계적 특성을 담고 있는 모드정보 통계 테이블, 및 현재 블록에 대한 인근 블록의 모드정보를 획득하고 상기 모드정보 통계 테이블과 상기 인근 블록의 모드정보를 이용하여 선택된 후보 모드에 대한 움직임 추정을 수행하는 움직임 추정부를 포함한다.In order to achieve this technical problem, a motion estimation apparatus according to an embodiment of the present invention includes a mode information statistical table containing statistical characteristics of a mode of a current encoding target block according to mode information of a neighboring block that is already encoded, and a current block. And a motion estimator for acquiring mode information of the neighboring block and performing motion estimation on a candidate mode selected using the mode information statistics table and the mode information of the neighboring block.

상기 인근 블록은 상기 현재 블록에 대한 좌측블록(left block) 및 상측블록(upper block)일 수 있다.The neighboring block may be a left block and an upper block with respect to the current block.

상기 현재 블록은 현재 부호화중인 매크로블록이고, 상기 인근 블록의 모드정보는 상기 좌측블록의 우상 4*4 블록의 모드정보와 상기 상측블록의 좌하 4*4 블록의 모드정보를 포함할 수 있다.The current block is a macroblock currently being encoded, and the mode information of the neighboring block may include mode information of a right upper 4 * 4 block of the left block and mode information of a lower left 4 * 4 block of the upper block.

상기 선택된 후보 모드는 움직임 추정을 위한 7개의 모드 중에서 상기 현재 블록의 모드가 될 확률이 높은 3개의 모드 또는 4개의 모드를 포함할 수 있다.The selected candidate mode may include three modes or four modes having a high probability of becoming the mode of the current block among seven modes for motion estimation.

이상 설명한 바와 같이, 본 발명에 따르면 동영상 부호화시에 가장 많이 차지하는 움직임 추정의 연산량을 감소시킴으로써 저전력, 저비용 동영상 부호기 설계를 가능하게 한다.As described above, according to the present invention, it is possible to design a low power and low cost video encoder by reducing the computation amount of motion estimation which occupies the most during video encoding.

이상의 실시예는 현재 가장 널리 사용중인 동영상 부호화 방식의 하나인 H.264를 기준으로 설명하였다. 그렇지만 이는 예시적인 것으로 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자는 현존하는 다른 부호화 방식 또는 앞으로 연구개발되어질 다른 표준에도 본 발명의 기술적 사상은 동일하게 적용가능하다는 점을 유의해야 한다.The above embodiment has been described with reference to H.264, which is one of the video encoding schemes currently widely used. However, this is merely an example, and it should be noted by those skilled in the art that the technical idea of the present invention may be equally applicable to other existing encoding schemes or other standards to be researched and developed in the future.

이하 첨부된 도면을 참조하여 본 발명의 바람직한 실시예에 대해 상세히 설명한다. 설명의 편의상 실시예는 현재 널리 사용중인 H.264 부호화기를 기준으로 설명한다. 그렇지만 이는 예시적인 것으로서 본 발명의 기술적 사상은 이에 한정되지 않는다.Hereinafter, exemplary embodiments of the present invention will be described in detail with reference to the accompanying drawings. For convenience of description, the embodiment will be described based on the H.264 encoder currently widely used. However, this is merely exemplary and the technical spirit of the present invention is not limited thereto.

도 1은 H.264 부호화기의 블록도이다.1 is a block diagram of an H.264 encoder.

도 1을 참조하면, 부호화기에 입력된 영상데이터의 각각의 매크로블록(Macroblock)은 인트라 모드(Intra Mode)와 인터 모드(Inter Mode)로 부호화된다. 인트라 모드는 동일 프레임내의 주변 화소값을 이용하여 잔여(Residual) 매크로블록을 생성하고, 인터 모드는 참조 프레임(Reference Frame)을 이용하여 움직임 추정(ME)과 움직임 보정(MC) 과정 통해 잔여(Residual) 매크로블록을 생성한다. 이 과정을 거쳐 생성된 파라미터 값들과 잔여(Residual) 매크로블록은 정수 변환(T)과 양자화(Q)를 통해 양자화된 변환 계수로 변환된 후 엔트로피코딩(Entropy Coding)을 거치게 된다. 그와 동시에 생성된 양자화된 변환 계수는 다시 역양자화(Q-1)와 정수 역변환(T-1)을 과정을 거치고 인트라(Intra Mode) 모드 또는 인터(Inter Mode) 모드로 형성된 값과 더하여진 후 필터처리 과정을 거쳐 재구성된 참조 영상으로 사용된다. 이러한 부호화 과정 중에서, 본 발명은 움직임 추정에 관련하고 있다. 도 2는 H.264의 움직임 추정 모드를 보여주는 도면이다.Referring to FIG. 1, each macroblock of image data input to an encoder is encoded in an intra mode and an inter mode. Intra mode generates residual macroblocks using neighboring pixel values in the same frame, and in inter mode, residuals are obtained through a motion estimation (ME) and motion compensation (MC) process using a reference frame. ) Create a macroblock. The parameter values and residual macroblocks generated through this process are converted into quantized transform coefficients through integer transform (T) and quantization (Q) and then subjected to entropy coding. At the same time, the generated quantized transform coefficients are subjected to inverse quantization (Q -1 ) and integer inverse transform (T -1 ), and then added to the values formed in the intra mode or the inter mode. It is used as a reference image reconstructed through a filter process. Among these encoding processes, the present invention relates to motion estimation. 2 is a diagram illustrating a motion estimation mode of H.264.

H.264는 가변 블록에 기반한 다양한 인터 모드 움직임 추정을 지원한다. 모드 1, 모드 4, 모드 7과 같이 정사각형 블록을 이용한 움직임 추정도 가능하지만 모드 2, 모드 3, 모드 5, 모드 6과 같이 정사각형이 아닌 블록을 이용한 움직임 추정도 가능하다. H.264 부호화기는 각 모드에 대하여 움직임 추정을 수행하고 최소의 코스트를 갖는 모드와 움직임 벡터를 결정한다. 이와 같이 다양한 모드가 존재하기 때문에 H.264는 이전의 동영상 부호화 방식에 비해 높은 압축율을 달성할 수 있다. 그렇지만 모드 각각에 대하여 움직임 추정을 수행하기 때문에 움직임 추정을 위해 필요한 연산량이 매우 많은 특성을 갖는다. 본 발명은 인근 블록의 모드정보의 통계적 특성을 이용하여 모든 모드에 대한 움직임 추정을 수행하는 대신에 높은 확률을 갖는 일부 모드(후보 모드)에 대해 움직임 추정을 수행함으로써 움직임 추정을 위한 연산량을 줄인다.H.264 supports various inter-mode motion estimation based on variable blocks. Motion estimation using square blocks is also possible, as in mode 1, mode 4, and mode 7, but motion estimation using non-square blocks such as mode 2, mode 3, mode 5, and mode 6 is also possible. The H.264 encoder performs motion estimation for each mode and determines the mode and motion vector with the lowest cost. Since there are various modes as described above, H.264 can achieve a higher compression rate than the previous video encoding scheme. However, since the motion estimation is performed for each mode, the amount of computation required for the motion estimation is very large. The present invention reduces the amount of computation for motion estimation by performing motion estimation for some modes (candidate mode) with high probability instead of performing motion estimation for all modes using statistical characteristics of mode information of neighboring blocks.

도 3은 본 발명의 일 실시예에 따른 움직임 추정 장치의 구성을 보여준다.3 shows a configuration of a motion estimation apparatus according to an embodiment of the present invention.

움직임 추정 장치(100)는 모드정보 통계 테이블(110)과 움직임 추정부(120)를 포함한다. 모드정보 통계 테이블(110)은 다양한 영상에 대해 다양한 조건(해상도, 프레임 레이트, Qp 값 등)으로 실험한 결과를 통계적으로 정리한 테이블이다. 모드정보 통계 테이블(110)은 각 조건별로 별도로 제공될 수도 있고, 조건에 무관하게 제공될 수도 있다. 모드정보 통계 테이블(110)의 구성 방법에 대해서는 후술한다.The motion estimating apparatus 100 includes a mode information statistics table 110 and a motion estimating unit 120. The mode information statistics table 110 is a table that summarizes the results of experiments on various images under various conditions (resolution, frame rate, Qp value, etc.). The mode information statistics table 110 may be provided separately for each condition or may be provided regardless of the condition. The method of configuring the mode information statistics table 110 will be described later.

움직임 추정부(120)는 현재 부호화중인 블록(이하, 현재 블록이라 함)에 대한 움직임 추정을 위해 인근 블록의 모드정보를 획득한다. 움직임 추정부(120)는 획득한 인근 블록의 모드 정보와 모드정보 통계 테이블(110)을 이용하여 현재 블록의 모드로 결정될 확률이 높은 후보 모드를 제공받는다. 움직임 추정부(120)는 현재 블록의 데이터와 현재 블록을 부호화하는데 사용될 기준 프레임의 데이터를 입력받아 각 후보 모드에 대한 움직임 추정을 수행한다. 움직임 추정부(120)는 가장 낮은 코스트를 가질 때의 잔여 블록 데이터와 움직임 벡터 정보를 출력한다. 움직임 벡터 정보는 추정된 움직임 벡터 값일 수 있지만, 움직임 예측(motion prediction) 값과 추정된 움직임 벡터의 차분 값일 수도 있다.The motion estimator 120 acquires mode information of a neighboring block for motion estimation on a block currently being encoded (hereinafter, referred to as a current block). The motion estimation unit 120 receives a candidate mode having a high probability of being determined as the mode of the current block by using the acquired mode information of the neighboring block and the mode information statistics table 110. The motion estimation unit 120 receives data of the current block and data of a reference frame to be used for encoding the current block and performs motion estimation for each candidate mode. The motion estimator 120 outputs residual block data and motion vector information when the lowest cost exists. The motion vector information may be an estimated motion vector value, but may be a difference value between a motion prediction value and the estimated motion vector.

도 4는 모드정보 통계테이블을 이용한 움직임 추정 과정을 보여주는 흐름도이다.4 is a flowchart illustrating a motion estimation process using the mode information statistics table.

먼저 움직임 추정장치에 모드정보 통계 테이블이 제공된다(S10). 모드정보 통계 테이블은 현재 블록과 상관도가 높은 인근 블록의 모드 정보에 따른 현재 블록의 모드로 결정될 가능성이 높은 후보 모드에 대한 정보를 포함한다.First, the mode information statistics table is provided to the motion estimation apparatus (S10). The mode information statistics table includes information on candidate modes that are likely to be determined as modes of the current block according to mode information of neighboring blocks having a high correlation with the current block.

움직임 추정장치는 인근 블록의 모드 정보를 획득한다(S20). 인근 블록의 모드 정보는 이미 부호화된 블록으로부터 얻는다. 인근 블록은 이미 부호화된 적어도 1개의 블록이 될 수 있다. 예를 들어, 현재 블록에서 가장 가까운 좌측블록과 상측블록이 인근 블록이 될 수 있다. 또한 인근 블록은 좌측블록과 상측블록 이외에도 상측블록의 좌측블록(좌측블록의 상측블록)과 상측블록의 우측블록(현재 블록의 우상블록)을 포함할 수 있다.The motion estimating apparatus obtains mode information of a neighboring block (S20). The mode information of the neighboring block is obtained from the block already encoded. The neighboring block may be at least one block already encoded. For example, the left block and the upper block closest to the current block may be neighboring blocks. In addition to the left block and the upper block, the neighboring block may include a left block (upper block of the left block) of the upper block and a right block of the upper block (right block of the current block).

인근 블록의 모드 정보를 획득하고 나서 움직임 추정 장치는 모드정보 통계 테이블과 인근 블록의 모드 정보를 비교하고(S30), 후보 모드를 선택한다(S40). 후보 모드는 7개의 인터 모드들 중에서 현재 블록의 모드로 선택될 확률이 높은 일부 모드를 의미한다. 후보 모드가 선택되면, 움직임 추정 장치는 각 후보 모드에 대해 움직임 추정을 수행한다(S50). 예를 들어, 후보 모드의 개수가 3개인 경우에 움직임 추정 장치는 나머지 4개의 모드에 대해서는 움직임 추정을 수행하지 않고 3개의 후보 모드에 대한 움직임 추정을 수행하고, 후보 모드의 개수가 4개인 경우에 움직임 추정장치는 나머지 3개의 모드에 대해서는 움직임을 추정하지 않고 4개의 후보 모드에 대한 움직임 추정을 수행한다.After acquiring the mode information of the neighboring block, the motion estimation apparatus compares the mode information statistics table with the mode information of the neighboring block (S30), and selects a candidate mode (S40). The candidate mode means some modes having a high probability of being selected as a mode of the current block among seven inter modes. If the candidate mode is selected, the motion estimation apparatus performs motion estimation for each candidate mode (S50). For example, when the number of candidate modes is three, the motion estimation apparatus performs motion estimation on three candidate modes without performing motion estimation on the remaining four modes, and when the number of candidate modes is four. The motion estimation apparatus performs motion estimation for four candidate modes without estimating motion for the remaining three modes.

앞서 언급한 바와 같이, 다양한 블록 크기 모드의 움직임 추정 과정에서 인근 블록의 모드에 따른 현재 블록의 결정된 최적의 모드 사이에는 상관관계가 존재한다. 따라서 본 발명에서는 상측 블록과 좌측 블록의 모드에 따른 현재 모드를 예측함에 있어서 모드정보 통계테이블에 저장된 모드정보를 이용한다. 이에 대해 구체적으로 살펴보면 다음과 같다.As mentioned above, in the motion estimation process of various block size modes, there is a correlation between the determined optimal mode of the current block according to the mode of the neighboring block. Therefore, the present invention uses the mode information stored in the mode information statistics table in estimating the current mode according to the mode of the upper block and the left block. This will be described in detail below.

도 5는 매크로블록 단위로 후보 모드를 결정하기 위하여 모드정보 통계테이블의 구성하는 경우를 보여주고, 도 7은 다양한 영상에 대하여 실험을 통해 얻은 모드정보 통계테이블을 보여준다.FIG. 5 illustrates a case where a mode information statistics table is configured to determine candidate modes in macroblock units, and FIG. 7 shows a mode information statistics table obtained through experiments on various images.

기존 움직임 추정 방식을 이용하면 현재 부호화할 매크로블록에 대하여 1번부터 7번 모드까지 모두 움직임 추정을 해야 하지만, 본 실시 예에서는 현재의 매크로블록에 대하여 움직임 추정을 수행하기 전에 우선적으로 상측 매크로블록과 좌측 매크로블록의 모드정보를 살펴본다. 그리고 나서 모드정보를 사전에 실험을 통하여 구해진 모드정보 통계 테이블과 비교하여 확률적으로 높은 후보 모드를 선택한다. When using the existing motion estimation method, motion estimation should be performed for all the macroblocks to be currently encoded from modes 1 to 7, but in this embodiment, prior to performing the motion estimation on the current macroblock, the upper macroblock and Look at the mode information of the left macroblock. Then, the mode information is compared with the mode information statistical table obtained through experiments to select a candidate mode with a high probability.

예컨대, 도 5와 도 7을 참조하면, A 블록의 모드가 1이고, B 블록의 모드가 1인 경우에 C 블록의 모드는 모드 1, 모드 3, 모드 2, 모드 4, 모드 5, 모드 6, 모드 7 순으로 88.57%, 3.38%, 3.38%, 2.80%, 1.00%, 0.63%, 0.25%의 확률을 갖는다.For example, referring to FIGS. 5 and 7, when the mode of the A block is 1 and the mode of the B block is 1, the mode of the C block is Mode 1, Mode 3, Mode 2, Mode 4, Mode 5, Mode 6 , Mode 7 has the probability of 88.57%, 3.38%, 3.38%, 2.80%, 1.00%, 0.63%, 0.25%.

A 블록의 모드가 2이고, B 블록의 모드가 3인 경우에 C 블록의 모드는 모드 1, 모드 4, 모드 2, 모드 3, 모드 6, 모드 5, 모드 7순으로 40.35%, 18.05%, 15.47%, 14.43%, 5.12%, 4.91%, 1.66%을 갖는다.When the mode of the A block is 2 and the mode of the B block is 3, the mode of the C block is 40.35%, 18.05%, in the order of Mode 1, Mode 4, Mode 2, Mode 3, Mode 6, Mode 5, Mode 7, 15.47%, 14.43%, 5.12%, 4.91%, 1.66%.

예를 들어, 후보 모드로 3개의 모드가 선택할 경우를 생각해 볼 때 A 블록과 B 블록의 모드가 전부다 모드 1일 경우에 모드 1, 모드 3, 및 모드 2가 후보 모드가 된다. 후보 모드로 4개의 모드가 선택할 경우를 생각해 볼 때 A 블록과 B 블록의 모드가 전부다 모드 1일 경우에 모드 1, 모드 3, 모드 2, 모드 4가 후보 모드가 된다.For example, in the case where three modes are selected as candidate modes, mode 1, mode 3, and mode 2 become candidate modes when the modes of the A block and the B block are all Mode 1. Considering the case in which four modes are selected as candidate modes, mode 1, mode 3, mode 2, and mode 4 become candidate modes when the modes of the A block and the B block are all Mode 1.

마찬가지로 후보 모드로 3개의 모드가 선택할 경우를 생각해 볼 때 A 블록과 B 블록의 모드가 각각 모드 2, 모드 3일 경우에 모드 1, 모드 4, 및 모드 2가 후보 모드가 된다. 후보 모드로 4개의 모드가 선택할 경우를 생각해 볼 때 A 블록과 B 블록의 모드가 각각 모드 2, 모드 3일 경우에 모드 1, 모드 4, 모드 2, 모드 3이 후보 모드가 된다.Similarly, when three modes are selected as candidate modes, mode 1, mode 4, and mode 2 become candidate modes when the modes of the A block and the B block are Mode 2 and Mode 3, respectively. Considering the case in which four modes are selected as candidate modes, mode 1, mode 4, mode 2, and mode 3 become candidate modes when modes A and B are modes 2 and 3, respectively.

이와 같이 후보 모드는 3개 또는 4개의 모드를 선택할 수 있지만 그보다 적은 개수의 모드 또는 많은 개수의 모드를 선택하는 것도 가능하다. 또한 후보 모드는 확률이 높은 소정 개수의 모드로 선택하지 않고, 확률의 크기가 특정한 기준 값을 넘는 경우로 한정하는 것도 가능하다.As described above, the candidate mode may select three or four modes, but it is also possible to select a smaller number of modes or a larger number of modes. In addition, the candidate mode may not be selected as a predetermined number of modes having a high probability, and may be limited to the case where the magnitude of the probability exceeds a specific reference value.

예를 들어, 후보 모드는 확률이 10%를 넘는 경우로 그 조건을 한정할 경우를 생각해 볼 때 A 블록과 B 블록의 모드가 전부다 모드 1일 경우에 모드 1만이 확률 10%가 넘기 때문에 후보 모드로 선택된다. 반면 때 A 블록과 B 블록의 모드가 각각 모드 2, 모드 3일 경우에 모드 1, 모드 4, 모드 2, 및 모드 3이 후보 모드가 된다.For example, if the candidate mode has a probability of more than 10% and the condition is limited, the candidate mode is only 10% because only mode 1 has a probability of more than 10% when the modes of the A block and the B block are all modes 1. Is selected. On the other hand, when the modes of the A block and the B block are Mode 2 and Mode 3, Mode 1, Mode 4, Mode 2, and Mode 3 become candidate modes.

앞서 설명한 바와 같이 이와 같은 모드정보 통계 테이블은 영상의 해상도나 QP 등의 조건에 따라 별도로 구성하는 것도 가능하다.As described above, the mode information statistics table may be separately configured according to conditions such as image resolution or QP.

도 5 및 도 6을 참조하면, A 블록(20)과 B 블록(30)의 모드 정보를 각각 4*4 블록인 블록(40)과 블록(50)의 모드 정보로 얻는 것을 보여준다. 즉, 현재 매크로블록인 블록 C(10)의 좌측블록인 블록 A(20)의 모드 정보는 블록 A(20)에 대한 우상 4*4 블록(40)의 모드 정보가 대표하고, 블록 B(30)의 모드 정보는 블록 B(30)에 대한 좌하 4*4 블록(50)의 모드 정보가 대표할 수 있다.5 and 6, the mode information of the A block 20 and the B block 30 is obtained as the mode information of the block 40 and the block 50 which are 4 * 4 blocks, respectively. That is, the mode information of the block A 20, which is the left block of the block C 10, which is the current macroblock, is represented by the mode information of the right upper 4 * 4 block 40 with respect to the block A 20, and the block B 30 is represented. Mode information of) may be represented by the mode information of the lower left 4 * 4 block 50 for the block B (30).

도 5a는 후보 모드를 이용하지 않고 움직임 추정 수행 과정을 보여주고 있다. 이 경우에 움직임 추정은 모든 모드에 대해 수행된다.5A illustrates a process of performing motion estimation without using a candidate mode. In this case motion estimation is performed for all modes.

도 5b는 본 발명의 일 실시예에 따른 4개의 모드를 제외한 3개의 후보 모드에 대한 움직임 추정을 수행하는 것을 보여주고 있다. 이 경우에 확률적으로 높은 1, 2, 4 번 모드에 대하여 움직임 추정을 수행한다.5B shows that motion estimation is performed for three candidate modes except for four modes according to an embodiment of the present invention. In this case, motion estimation is performed for probability 1, 2, and 4 modes.

도 5c는 본 발명의 일 실시예에 따른 3개의 모드를 제외한 4개의 후보 모드에 대한 움직임 추정을 수행하는 것을 보여주고 있다. 이 경우에 확률적으로 높은 1, 4, 6번 모드에 대한 움직임 추정을 수행한다.5C shows that motion estimation is performed for four candidate modes except three modes according to an embodiment of the present invention. In this case, we perform motion estimation for modes 1, 4, and 6 that are probably high.

도 1은 H.264/AVC(이하, H.264라 함) 부호화기의 블록도이다.1 is a block diagram of an H.264 / AVC (hereinafter referred to as H.264) encoder.

도 2는 H.264 방식의 움직임 추정 모드를 보여주는 도면이다.2 is a diagram illustrating a motion estimation mode of the H.264 method.

도 3은 본 발명의 일 실시예에 따른 움직임 추정 장치를 보여주는 도면이다.3 is a view showing a motion estimation apparatus according to an embodiment of the present invention.

도 4는 본 발명의 일 실시예에 따른 움직임 추정 과정을 보여주는 흐름도이다.4 is a flowchart illustrating a motion estimation process according to an embodiment of the present invention.

도 5는 본 발명의 일 실시예에 따른 모드정보 통계테이블을 구성하는 경우를 보여주는 도면이다.5 is a diagram illustrating a case of configuring a mode information statistics table according to an embodiment of the present invention.

도 6은 인근 블록에 대한 모드정보를 4*4 블록의 모드정보로 대표하는 경우를 보여주는 도면이다.FIG. 6 is a diagram illustrating a case in which mode information about a neighboring block is represented by mode information of a 4 * 4 block.

도 7은 다양한 조건과 다양한 영상을 이용하여 얻은 모드정보 테이블의 예를 보여주는 도표이다.7 is a diagram illustrating an example of a mode information table obtained by using various conditions and various images.

도 8a 내지 도 8c는 일부 인터 모드가 제거된 후보 모드를 이용한 움직임 추정 과정의 예를 보여주는 도면이다.8A to 8C are diagrams illustrating an example of a motion estimation process using a candidate mode in which some inter modes are removed.

Claims (9)

이미 부호화된 인근 블록의 모드정보에 따른 현재 부호화 대상 블록의 모드의 통계적 특성을 담고 있는 모드정보 통계 테이블을 제공하는 단계;Providing a mode information statistics table containing statistical characteristics of a mode of a current encoding target block according to mode information of an already encoded neighboring block; 현재 블록에 대한 인근 블록의 모드정보를 획득하는 단계; 및Obtaining mode information of a neighboring block for the current block; And 상기 모드정보 통계 테이블과 상기 인근 블록의 모드정보를 이용하여 선택된 후보 모드에 대한 움직임 추정을 수행하는 단계를 포함하는 인근 블록의 모드정보를 이용한 움직임 추정 방법.And performing motion estimation for the selected candidate mode using the mode information statistics table and the mode information of the neighboring block. 제1항에 있어서,The method of claim 1, 상기 인근 블록은 상기 현재 블록에 대한 좌측블록(left block) 및 상측블록(upper block)인 것을 특징으로 하는 인근 블록의 모드정보를 이용한 움직임 추정 방법.The neighboring block is a motion estimation method using mode information of the neighboring block, characterized in that the left block (upper block) and the left block (upper block) for the current block. 제2항에 있어서,The method of claim 2, 상기 현재 블록은 현재 부호화중인 매크로블록이고, 상기 인근 블록의 모드정보는 상기 좌측블록의 우상 4*4 블록의 모드정보와 상기 상측블록의 좌하 4*4 블록의 모드정보를 포함하는 것을 특징으로 하는 인근 블록의 모드정보를 이용한 움직임 추정 방법.The current block is a macroblock currently being encoded, and the mode information of the neighboring block includes mode information of a right upper 4 * 4 block of the left block and mode information of a lower left 4 * 4 block of the upper block. Motion estimation method using mode information of neighboring blocks. 제1항에 있어서,The method of claim 1, 상기 선택된 후보 모드는 움직임 추정을 위한 7개의 모드 중에서 상기 현재 블록의 모드가 될 확률이 높은 3개의 모드 또는 4개의 모드를 포함하는 것을 특징으로 하는 인근 블록의 모드정보를 이용한 움직임 추정 방법.The selected candidate mode includes three modes or four modes having a high probability of becoming the mode of the current block among the seven modes for motion estimation. 이미 부호화된 인근 블록의 모드정보에 따른 현재 부호화 대상 블록의 모드의 통계적 특성을 담고 있는 모드정보 통계 테이블; 및A mode information statistics table containing statistical characteristics of a mode of a current encoding target block according to mode information of an already encoded neighboring block; And 현재 블록에 대한 인근 블록의 모드정보를 획득하고 상기 모드정보 통계 테이블과 상기 인근 블록의 모드정보를 이용하여 선택된 후보 모드에 대한 움직임 추정을 수행하는 움직임 추정부를 포함하는 인근 블록의 모드정보를 이용한 움직임 추정 장치.A motion using mode information of a neighboring block including a motion estimation unit for acquiring mode information of a neighboring block for a current block and performing motion estimation for a selected candidate mode using the mode information statistics table and the mode information of the neighboring block. Estimation device. 제5항에 있어서,The method of claim 5, 상기 인근 블록은 상기 현재 블록에 대한 좌측블록 및 상측블록인 것을 특징으로 하는 인근 블록의 모드정보를 이용한 움직임 추정 장치.The neighboring block is a motion estimation device using mode information of the neighboring block, characterized in that the left block and the upper block for the current block. 제6항에 있어서,The method of claim 6, 상기 현재 블록은 현재 부호화중인 매크로블록이고, 상기 인근 블록의 모드정보는 상기 좌측블록의 우상 4*4 블록의 모드정보와 상기 상측블록의 좌하 4*4 블록의 모드정보를 포함하는 것을 특징으로 하는 인근 블록의 모드정보를 이용한 움 직임 추정 장치.The current block is a macroblock currently being encoded, and the mode information of the neighboring block includes mode information of a right upper 4 * 4 block of the left block and mode information of a lower left 4 * 4 block of the upper block. Motion estimation device using mode information of neighboring blocks. 제5항에 있어서,The method of claim 5, 상기 선택된 후보 모드는 움직임 추정을 위한 7개의 모드 중에서 상기 현재 블록의 모드가 될 확률이 높은 4개의 모드를 포함하는 것을 특징으로 하는 인근 블록의 모드정보를 이용한 움직임 추정 장치.The selected candidate mode includes four modes having a high probability of becoming the mode of the current block among the seven modes for motion estimation. 제1항 내지 제4항 중 어느 한 항에 기재된 방법을 실행하기 위한, 컴퓨팅 장치로 읽을 수 있는 프로그램을 기록한 매체.A medium having a program readable by a computing device for executing the method according to any one of claims 1 to 4.
KR1020070107751A 2007-10-25 2007-10-25 Method and apparatus for motion estimation using mode information of neighbor blocks KR20090041944A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020070107751A KR20090041944A (en) 2007-10-25 2007-10-25 Method and apparatus for motion estimation using mode information of neighbor blocks

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020070107751A KR20090041944A (en) 2007-10-25 2007-10-25 Method and apparatus for motion estimation using mode information of neighbor blocks

Publications (1)

Publication Number Publication Date
KR20090041944A true KR20090041944A (en) 2009-04-29

Family

ID=40764882

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020070107751A KR20090041944A (en) 2007-10-25 2007-10-25 Method and apparatus for motion estimation using mode information of neighbor blocks

Country Status (1)

Country Link
KR (1) KR20090041944A (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101138736B1 (en) * 2009-11-25 2012-04-24 한양대학교 산학협력단 Encoder and method for selecting candidate mode types
CN108243340A (en) * 2011-12-13 2018-07-03 Jvc 建伍株式会社 Moving image encoding device and moving picture encoding method
CN110602497A (en) * 2011-01-24 2019-12-20 索尼公司 Image decoding device, image decoding method, and non-transitory computer readable medium
WO2019242408A1 (en) * 2018-06-20 2019-12-26 腾讯科技(深圳)有限公司 Video coding method and apparatus, video decoding method and apparatus, computer device, and storage medium

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101138736B1 (en) * 2009-11-25 2012-04-24 한양대학교 산학협력단 Encoder and method for selecting candidate mode types
CN110602497A (en) * 2011-01-24 2019-12-20 索尼公司 Image decoding device, image decoding method, and non-transitory computer readable medium
CN110602497B (en) * 2011-01-24 2021-11-30 索尼公司 Image decoding device, image decoding method, and non-transitory computer readable medium
CN108243340A (en) * 2011-12-13 2018-07-03 Jvc 建伍株式会社 Moving image encoding device and moving picture encoding method
WO2019242408A1 (en) * 2018-06-20 2019-12-26 腾讯科技(深圳)有限公司 Video coding method and apparatus, video decoding method and apparatus, computer device, and storage medium
US11330254B2 (en) 2018-06-20 2022-05-10 Tencent Technology (Shenzhen) Company Limited Video encoding method and apparatus, video decoding method and apparatus, computer device, and storage medium

Similar Documents

Publication Publication Date Title
US11632556B2 (en) Image encoding device, image decoding device, image encoding method, image decoding method, and image prediction device
JP6863669B2 (en) Image coding device, image coding method, image decoding device and image decoding method
RU2674306C1 (en) Moving image encoding device, moving image decoding device, moving image encoding method and moving image decoding method
RU2703229C1 (en) Image decoding device, image encoding device, image decoding method and image encoding method
JP5782169B2 (en) Moving picture coding apparatus and moving picture coding method
US11831893B2 (en) Image coding device, image decoding device, image coding method, and image decoding method
US20150256827A1 (en) Video encoding device, video decoding device, video encoding method, and video decoding method
KR100677118B1 (en) Motion estimation method and apparatus thereof
JP2011166592A (en) Image encoding device, and image decoding device
KR20090041944A (en) Method and apparatus for motion estimation using mode information of neighbor blocks
JP2007013298A (en) Image coding apparatus
WO2014049982A1 (en) Video encoding device, video decoding device, video encoding method and video decoding method
JP2013098715A (en) Moving image encoder, moving image decoder, moving image encoding method and moving image decoding method
JP2012023609A (en) Moving image encoding device, moving image decoding device, moving image encoding method and moving image decoding method

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E601 Decision to refuse application