[go: up one dir, main page]

KR101341998B1 - Inter Prediction Apparatus of Considering Rotational Motion and Video Encoding/Decoding Method and Apparatus Using Same - Google Patents

Inter Prediction Apparatus of Considering Rotational Motion and Video Encoding/Decoding Method and Apparatus Using Same Download PDF

Info

Publication number
KR101341998B1
KR101341998B1 KR1020080088910A KR20080088910A KR101341998B1 KR 101341998 B1 KR101341998 B1 KR 101341998B1 KR 1020080088910 A KR1020080088910 A KR 1020080088910A KR 20080088910 A KR20080088910 A KR 20080088910A KR 101341998 B1 KR101341998 B1 KR 101341998B1
Authority
KR
South Korea
Prior art keywords
block
motion
current block
prediction
rotation
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
KR1020080088910A
Other languages
Korean (ko)
Other versions
KR20100030119A (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 KR1020080088910A priority Critical patent/KR101341998B1/en
Publication of KR20100030119A publication Critical patent/KR20100030119A/en
Application granted granted Critical
Publication of KR101341998B1 publication Critical patent/KR101341998B1/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

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/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/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/124Quantisation
    • 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/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding

Landscapes

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

Abstract

본 발명은 회전 움직임을 고려한 인터 예측 장치와 그를 이용한 영상 부호화/복호화 방법 및 장치에 관한 것이다.The present invention relates to an inter prediction apparatus considering rotational motion and an image encoding / decoding method and apparatus using the same.

본 발명은 영상을 부호화하는 장치에 있어서, 영상의 현재 블록의 회전 움직임을 추정함으로써 현재 블록의 움직임 벡터 및 회전 정보를 결정하여 현재 블록의 회전 움직임을 보상함으로써 현재 블록을 예측하여 예측 블록을 생성하는 예측부; 현재 블록에서 예측 블록을 감산하여 잔차 블록을 생성하는 감산부; 잔차 블록을 주파수 영역으로 변환하는 변환부; 변환된 잔차 블록을 양자화하는 양자화부; 및 양자화된 잔차 블록, 움직임 벡터 및 회전 정보를 부호화함으로써 비트스트림을 출력하는 부호화부를 포함하는 것을 특징으로 하는 영상 부호화 장치를 제공한다.The present invention provides an apparatus for encoding an image, wherein the motion vector and the rotation information of the current block are determined by estimating the rotational movement of the current block of the image to compensate for the rotational movement of the current block, thereby predicting the current block to generate a prediction block. Prediction unit; A subtraction unit for generating a residual block by subtracting the prediction block from the current block; A transformer for converting the residual block into the frequency domain; A quantizer for quantizing the transformed residual block; And an encoder configured to output a bitstream by encoding the quantized residual block, the motion vector, and the rotation information.

본 발명에 의하면, 영상의 회전 움직임을 효율적으로 추정하고 보상함으로써 부호화 및 복호화를 위한 영상의 예측 정확도를 향상시킬 수 있어 부호화 및 복호화 효율을 향상시킬 수 있다.According to the present invention, by efficiently estimating and compensating for the rotational motion of an image, the prediction accuracy of the image for encoding and decoding can be improved, thereby improving the encoding and decoding efficiency.

영상, 부호, 복호, 움직임, 추정, 보상, 예측, 회전, 직선, 비용 Image, sign, decoding, motion, estimation, compensation, prediction, rotation, straight line, cost

Description

회전 움직임을 고려한 인터 예측 장치와 그를 이용한 영상 부호화/복호화 방법 및 장치{Inter Prediction Apparatus of Considering Rotational Motion and Video Encoding/Decoding Method and Apparatus Using Same}Inter Prediction Apparatus of Considering Rotational Motion and Video Encoding / Decoding Method and Apparatus Using Same}

본 발명은 회전 움직임을 고려한 인터 예측 장치와 그를 이용한 영상 부호화/복호화 방법 및 장치에 관한 것이다. 더욱 상세하게는, 영상의 현재 블록을 예측할 때 현재 블록의 움직임을 효율적으로 추정하고 보상하여 현재 블록을 예측하는 장치와 그를 이용하여 영상을 부호화하거나 복호화하는 장치 및 방법에 관한 것이다.The present invention relates to an inter prediction apparatus considering rotational motion and an image encoding / decoding method and apparatus using the same. More specifically, the present invention relates to an apparatus for predicting the current block by efficiently estimating and compensating the motion of the current block when predicting the current block of the image, and an apparatus and method for encoding or decoding an image using the same.

MPEG(Moving Picture Experts Group)과 VCEG(Video Coding Experts Group)은 기존의 MPEG-4 Part 2와 H.263 표준안보다 우수하고 뛰어난 비디오 압축 기술을 개발하였다. 이 새로운 표준안은 H.264/AVC(Advanced Video Coding)이라 하며, MPEG-4 Part 10 AVC와 ITU-T Recommendation H.264로 공동으로 발표되었다.Moving Picture Experts Group (MPEG) and Video Coding Experts Group (VCEG) have developed superior video compression techniques superior to the existing MPEG-4 Part 2 and H.263 standards. The new standard is called H.264 / AVC (Advanced Video Coding) and was jointly released as MPEG-4 Part 10 AVC and ITU-T Recommendation H.264.

이러한 H.264/AVC(이하 'H.264'라 약칭함)에서는 정수형의 이산 코사인 변환(DCT: Discrete Cosine Transform, 이하 'DCT'라 칭함), 변환 블록 크기의 움직임 추정 및 보상(Variable Block Size Motion Estimation and Compensation), 양자 화(Quantization), 엔트로피 부호화(Entropy Coding) 등으로 구성되어 있다.In such H.264 / AVC (hereinafter abbreviated as 'H.264'), integer discrete cosine transform (DCT) is called, and motion estimation and compensation of transform block size (Variable Block Size) It consists of Motion Estimation and Compensation, Quantization and Entropy Coding.

동영상에서 가장 많은 데이터 중복성을 갖는 시간적 중복성은 참조 픽처의 데이터를 이용하여 움직임 추정과 움직임 보상을 수행하고 이때 추정된 움직임 벡터에 의해서 보상된 영상과 원 영상과의 잔차 신호를 부호화함으로써 높은 데이터 압축률을 가져온다.Temporal redundancy, which has the most data redundancy in a video, provides high data compression rate by performing motion estimation and motion compensation using the data of the reference picture, and encoding residual signals between the image and the original image compensated by the estimated motion vector. Bring.

한편, 동영상 내에서 발생하는 움직임은 직선 운동(Translation), 회전 운동(Rotation), 줌(Zoom), 팬(Pan) 등과 같이 다양하게 발생할 수 있다. 통상적인 움직임 추정 및 보상 방법에서는 직선 움직임만을 고려하여 움직임 추정을 수행한다. 하지만, 회전 움직임이 있는 영역에서는 직선 움직임 추정만으로는 정확한 정합이 이루어지지 않기 때문에, 움직임을 제대로 추정하기 어렵고 그로 인해 충분한 압축 성능을 제공하지 못한다.Meanwhile, the movement occurring in the video may occur in various ways such as a linear motion, a rotation motion, a zoom, a pan, and the like. In the conventional motion estimation and compensation method, motion estimation is performed considering only linear motion. However, since the linear motion estimation alone does not accurately match in the rotational motion region, it is difficult to properly estimate the motion and thus does not provide sufficient compression performance.

전술한 문제점을 해결하기 위해 본 발명은, 영상을 부호화하거나 복호화하는 데 있어서, 영상의 현재 블록의 직선 움직임뿐만 아니라 회전 움직임을 추정하고 보상함으로써 예측의 정확도를 높이고 그를 통해 영상의 부호화 및 복호화 효율을 향상시키는 데 주된 목적이 있다.In order to solve the above problems, the present invention, in encoding or decoding an image, improves the accuracy of prediction by estimating and compensating not only the linear movement but also the rotational movement of the current block of the image, thereby improving the encoding and decoding efficiency of the image. The main purpose is to improve.

전술한 목적을 달성하기 위해 본 발명은, 영상을 부호화하는 장치에 있어서, 영상의 현재 블록의 회전 움직임을 추정함으로써 현재 블록의 움직임 벡터 및 회전 정보를 결정하여 현재 블록의 회전 움직임을 보상함으로써 현재 블록을 예측하여 예측 블록을 생성하는 예측부; 현재 블록에서 예측 블록을 감산하여 잔차 블록을 생성하는 감산부; 잔차 블록을 주파수 영역으로 변환하는 변환부; 변환된 잔차 블록을 양자화하는 양자화부; 및 양자화된 잔차 블록, 움직임 벡터 및 회전 정보를 부호화함으로써 비트스트림을 출력하는 부호화부를 포함하는 것을 특징으로 하는 영상 부호화 장치를 제공한다.In order to achieve the above object, the present invention provides a device for encoding an image, comprising: determining the motion vector and rotation information of the current block by estimating the rotational movement of the current block of the image to compensate for the rotational movement of the current block; A predictor configured to predict a prediction block and generate a prediction block; A subtraction unit for generating a residual block by subtracting the prediction block from the current block; A transformer for converting the residual block into the frequency domain; A quantizer for quantizing the transformed residual block; And an encoder configured to output a bitstream by encoding the quantized residual block, the motion vector, and the rotation information.

또한, 본 발명의 다른 목적에 의하면, 영상을 부호화 방법에 있어서, 영상의 현재 블록의 회전 움직임을 추정함으로써 현재 블록의 움직임 벡터 및 회전 정보를 결정하여 현재 블록의 회전 움직임을 보상함으로써 현재 블록을 예측하여 예측 블록을 생성하는 예측 단계; 현재 블록에서 예측 블록을 감산하여 잔차 블록을 생성하는 감산 단계; 잔차 블록을 주파수 영역으로 변환하는 변환 단계; 변환된 잔차 블록을 양자화하는 양자화 단계; 및 양자화된 잔차 블록, 움직임 벡터 및 회전 정보를 부호화함으로써 비트스트림을 출력하는 부호화 단계를 포함하는 것을 특징으로 하는 영상 부호화 방법을 제공한다.In addition, according to another object of the present invention, in the video encoding method, by predicting the rotational motion of the current block of the image to determine the motion vector and rotation information of the current block to predict the current block by compensating the rotational movement of the current block A prediction step of generating a prediction block; Subtracting the prediction block from the current block to generate a residual block; Transforming the residual block into a frequency domain; A quantization step of quantizing the transformed residual block; And an encoding step of outputting the bitstream by encoding the quantized residual block, the motion vector, and the rotation information.

또한, 본 발명의 또 다른 목적에 의하면, 영상을 복호화하는 장치에 있어서, 비트스트림을 복호화하여 잔차 블록, 움직임 벡터 및 회전 정보를 추출하는 복호화부; 잔차 블록을 역 양자화하는 역 양자화하는 역 양자화부; 기 역 양자화된 잔차 블록을 역 변환하는 역 변환부; 움직임 벡터 및 회전 정보를 이용하여 영상의 현재 블록의 회전 움직임을 보상함으로써 현재 블록을 예측하여 예측 블록을 생성하는 예측부; 및 역 변환된 잔차 블록과 예측 블록을 가산하여 현재 블록을 복원하는 가 산부를 포함하는 것을 특징으로 하는 영상 복호화 장치를 제공한다.According to still another object of the present invention, there is provided an apparatus for decoding an image, comprising: a decoder configured to decode a bitstream to extract a residual block, a motion vector, and rotation information; An inverse quantizer for inversely quantizing the residual block; An inverse transform unit for inversely transforming an inverse quantized residual block; A prediction unit generating a prediction block by predicting the current block by compensating for the rotational movement of the current block of the image using the motion vector and the rotation information; And an adder configured to reconstruct the current block by adding the inversely transformed residual block and the predictive block.

또한, 본 발명의 또 다른 목적에 의하면, 영상을 복호화하는 방법에 있어서, 비트스트림을 복호화하여 잔차 블록, 움직임 벡터 및 회전 정보를 추출하는 복호화 단계; 잔차 블록을 역 양자화하는 역 양자화 단계; 역 양자화된 잔차 블록을 역 변환하는 역 변환 단계; 움직임 벡터 및 회전 정보를 이용하여 영상의 현재 블록의 회전 움직임을 보상함으로써 현재 블록을 예측하여 예측 블록을 생성하는 예측 단계; 및 역 변환된 잔차 블록과 예측 블록을 가산하여 현재 블록을 복원하는 가산 단계를 포함하는 것을 특징으로 하는 영상 복호화 방법을 제공한다.According to still another object of the present invention, there is provided a method of decoding an image, comprising: a decoding step of decoding a bitstream to extract a residual block, a motion vector, and rotation information; An inverse quantization step of inverse quantizing the residual block; Inverse transforming the inversely quantized residual block; A prediction step of predicting the current block by generating a prediction block by compensating for the rotational movement of the current block of the image using the motion vector and the rotation information; And an addition step of reconstructing the current block by adding the inverse transformed residual block and the prediction block.

또한, 본 발명의 또 다른 목적에 의하면, 영상의 현재 블록을 인터 예측하는 장치에 있어서, 참조 픽처를 저장하는 참조 픽처 저장부; 예측 움직임 벡터를 결정하여 참조 픽처에서 탐색 영역을 설정하고, 탐색 영역 내의 하나 이상의 탐색 위치점에 대한 참조 블록을 하나 이상의 회전 각도만큼 회전하여 부호화 비용을 계산하되, 최소 부호화 비용을 갖는 탐색 위치점에서의 참조 블록에 대한 움직임 벡터 및 회전 각도를 현재 블록의 움직임 벡터 및 회전 각도로서 결정하는 움직임 추정부; 및 참조 픽처에서 움직임 벡터가 지시하는 참조 블록을 회전 각도에 의해 지시되는 회전 각도만큼 회전시켜 현재 블록의 예측 블록을 출력하는 움직임 보상부를 포함하는 것을 특징으로 하는 인터 예측 장치를 제공한다.According to still another object of the present invention, there is provided an apparatus for inter prediction of a current block of an image, the apparatus comprising: a reference picture storage unit for storing a reference picture; Determines the predictive motion vector to set the search region in the reference picture, and calculates the coding cost by rotating the reference block for one or more search position points in the search region by one or more rotation angles, but at the search position point having the minimum coding cost. A motion estimator for determining a motion vector and a rotation angle with respect to a reference block of as a motion vector and a rotation angle of the current block; And a motion compensator configured to rotate the reference block indicated by the motion vector in the reference picture by the rotation angle indicated by the rotation angle, and output a prediction block of the current block.

또한, 본 발명의 또 다른 목적에 의하면, 영상을 부호화하는 방법에 있어서, 하나 이상의 참조 픽처를 이용하여 현재 블록의 회전 움직임을 포함하는 움직임을 추정하는 움직임 추정 단계; 추정된 움직임을 기초로 현재 블록의 움직임을 보상하 여 예측 블록을 생성하는 움직임 보상 단계; 및 현재 블록과 예측 블록을 감산하여 잔차 블록을 생성하고 부호화하는 부호화 단계를 포함하되, 움직임 추정 단계는 현재 블록의 움직임 보상을 위한 움직임 벡터 및 회전 정보를 생성하는 것을 특징으로 하는 영상 부호화 방법을 제공한다.According to still another object of the present invention, there is provided a method of encoding an image, comprising: a motion estimation step of estimating a motion including a rotational motion of a current block by using one or more reference pictures; A motion compensation step of generating a prediction block by compensating for the motion of the current block based on the estimated motion; And an encoding step of generating and encoding a residual block by subtracting the current block and the prediction block, wherein the motion estimation step provides a motion vector and rotation information for motion compensation of the current block. do.

또한, 본 발명의 또 다른 목적에 의하면, 영상을 부호화하는 방법에 있어서, 하나 이상의 참조 픽처를 이용하여 현재 블록의 회전 움직임을 포함하는 움직임을 추정하는 움직임 추정 단계; 추정된 움직임을 기초로 현재 블록의 움직임을 보상하여 예측 블록을 생성하는 움직임 보상 단계; 및 현재 블록과 예측 블록을 감산하여 잔차 블록을 생성하고 부호화하는 부호화 단계를 포함하되, 움직임 추정 단계는 현재 블록의 움직임 보상을 위한 움직임 벡터와 참조 픽처 정보를 생성하는 것을 특징으로 하는 영상 부호화 방법을 제공한다.According to still another object of the present invention, there is provided a method of encoding an image, comprising: a motion estimation step of estimating a motion including a rotational motion of a current block by using one or more reference pictures; A motion compensation step of generating a prediction block by compensating for the motion of the current block based on the estimated motion; And an encoding step of generating and encoding a residual block by subtracting the current block and the prediction block, wherein the motion estimation step comprises generating a motion vector and reference picture information for motion compensation of the current block. to provide.

또한, 본 발명의 또 다른 목적에 의하면, 영상을 복호화하는 방법에 있어서, 비트스트림을 복호화하여 현재 블록의 잔차 블록을 생성하고 움직임 벡터와 회전 정보를 추출하는 복호화 단계; 움직임 벡터와 회전 정보를 기초로 현재 블록의 회전 움직임을 포함하는 움직임 보상을 수행하여 현재 블록의 예측 블록을 생성하는 움직임 보상 단계; 및 예측 블록과 잔차 블록을 가산하여 현재 블록을 복원하는 복원 단계를 포함하는 것을 특징으로 하는 영상 복호화 방법을 제공한다.According to still another object of the present invention, there is provided a method of decoding an image, comprising: a decoding step of decoding a bitstream to generate a residual block of a current block and extracting motion vectors and rotation information; A motion compensation step of generating a prediction block of the current block by performing motion compensation including a rotational motion of the current block based on the motion vector and the rotation information; And a reconstruction step of reconstructing the current block by adding the prediction block and the residual block.

또한, 본 발명의 또 다른 목적에 의하면, 영상을 복호화하는 방법에 있어서, 비트스트림을 복호화하여 현재 블록의 잔차 블록을 생성하고 움직임 벡터와 참조 픽처 정보를 추출하는 복호화 단계; 움직임 벡터와 참조 픽처 정보를 기초로 현재 블록의 회전 움직임을 포함하는 움직임 보상을 수행하여 현재 블록의 예측 블록을 생성하는 움직임 보상 단계; 및 예측 블록과 잔차 블록을 가산하여 현재 블록을 복원하는 복원 단계를 포함하는 것을 특징으로 하는 영상 복호화 방법을 제공한다.According to still another object of the present invention, there is provided a method of decoding an image, comprising: a decoding step of decoding a bitstream to generate a residual block of a current block and extracting a motion vector and reference picture information; A motion compensation step of generating a prediction block of the current block by performing motion compensation including rotational motion of the current block based on the motion vector and the reference picture information; And a reconstruction step of reconstructing the current block by adding the prediction block and the residual block.

이상에서 설명한 바와 같이 본 발명에 의하면, 영상의 회전 움직임을 효율적으로 추정하고 보상함으로써 부호화 및 복호화를 위한 영상의 예측 정확도를 향상시킬 수 있어 부호화 및 복호화 효율을 향상시킬 수 있다.As described above, according to the present invention, the prediction accuracy of the image for encoding and decoding can be improved by efficiently estimating and compensating the rotational motion of the image, thereby improving the encoding and decoding efficiency.

이하, 본 발명의 일부 실시예들을 예시적인 도면을 통해 상세하게 설명한다. 각 도면의 구성요소들에 참조부호를 부가함에 있어서, 동일한 구성요소들에 대해서는 비록 다른 도면상에 표시되더라도 가능한 한 동일한 부호를 가지도록 하고 있음에 유의해야 한다. 또한, 본 발명을 설명함에 있어, 관련된 공지 구성 또는 기능에 대한 구체적인 설명이 본 발명의 요지를 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명은 생략한다.Hereinafter, some embodiments of the present invention will be described in detail with reference to exemplary drawings. It should be noted that, in adding reference numerals to the constituent elements of the drawings, the same constituent elements are denoted by the same reference symbols as possible even if they are shown in different drawings. In the following description of the present invention, a detailed description of known functions and configurations incorporated herein will be omitted when it may make the subject matter of the present invention rather unclear.

또한, 본 발명의 구성 요소를 설명하는 데 있어서, 제 1, 제 2, A, B, (a), (b) 등의 용어를 사용할 수 있다. 이러한 용어는 그 구성 요소를 다른 구성 요소와 구별하기 위한 것일 뿐, 그 용어에 의해 해당 구성 요소의 본질이나 차례 또는 순서 등이 한정되지 않는다. 어떤 구성 요소가 다른 구성요소에 "연결", "결합" 또는 "접속"된다고 기재된 경우, 그 구성 요소는 그 다른 구성요소에 직접적으로 연결되거나 또는 접속될 수 있지만, 각 구성 요소 사이에 또 다른 구성 요소가 "연결", " 결합" 또는 "접속"될 수도 있다고 이해되어야 할 것이다.In addition, in describing the component of this invention, terms, such as 1st, 2nd, A, B, (a), (b), can be used. These terms are intended to distinguish the constituent elements from other constituent elements, and the terms do not limit the nature, order or order of the constituent elements. If a component is described as being "connected", "coupled" or "connected" to another component, that component may be directly connected to or connected to that other component, but there may be another configuration between each component. It is to be understood that the elements may be "connected", "coupled" or "connected".

도 1은 참조 블록에서 매크로 블록을 탐색하는 과정을 나타낸 예시도이다.1 is an exemplary diagram illustrating a process of searching for a macro block in a reference block.

영상을 부호화하는 기법은 다양한데, 대표적으로 영상을 화소 단위로 분할하여 화소 단위로 부호화할 수도 있고 영상을 블록 단위로 분할하여 블록 단위로 부호화할 수도 있다. 블록 단위로 부호화하는 경우, 영상을 구성하는 여러 픽처(Picture) 중 부호화하고자 하는 하나의 픽처는 매크로블록(Macroblock)과 매크로블록을 구성하는 서브 블록(Sub Block) 등으로 나누어질 수 있으며, 나누어진 블록 단위로 예측되고 부호화가 수행된다.There are various techniques for encoding an image. Typically, an image may be divided into pixels and encoded in pixels, or an image may be divided into blocks and encoded in blocks. In the case of encoding in block units, one picture to be encoded may be divided into a macroblock, a subblock constituting the macroblock, and the like. Prediction is performed on a block basis and encoding is performed.

통상적으로 영상은 1초 동안에 30장의 픽처로 구성되므로, 하나의 픽처와 이웃한 픽처 간에는 픽처 간의 영상의 차이가 작기 때문에, 인간의 눈으로 그 차이를 구분하기가 매우 어렵다. 그로 인해, 영상이 1초 동안에 30장의 픽처로 출력되면, 인간은 각 픽처가 연속적인 것으로 인식한다.Since an image is usually composed of 30 pictures in one second, it is very difficult to distinguish the difference between a picture and a neighboring picture with a human eye because the difference between pictures is small. Therefore, if an image is output as 30 pictures in one second, humans recognize that each picture is continuous.

따라서, 이전 픽처와 현재 픽처의 영상이 유사하다면, 이전 픽처를 구성하고 있는 이미 알고 있는 영상의 화소값으로부터 현재 픽처의 미지의 화소값을 예측할 수 있다. 이와 같은 예측 기법을 인터 예측(Inter Prediction)이라 한다. 이러한 인터 예측은 움직임 예측(Motion Prediction) 기술을 기반으로 이루어진다. 움직임 예측은 시간 축을 기준으로 이전 픽처를 참조하거나 이전 픽처와 미래 픽처를 모두 참조하는 방식으로 수행된다. 현재 픽처를 부호화하거나 복호화하는 데 참조되는 픽처를 참조 픽처(Reference Picture)라고 한다.Therefore, if the previous picture and the current picture are similar, the unknown pixel value of the current picture can be predicted from the pixel value of the already-known picture constituting the previous picture. Such a prediction technique is called inter prediction. Such inter prediction is based on a motion prediction technique. Motion prediction is performed in a manner of referring to a previous picture or referring to both a previous picture and a future picture based on the time axis. A picture referred to to encode or decode a current picture is called a reference picture.

도 1을 참조하면, 현재 픽처(110)의 현재 블록(112)의 움직임을 추정하여 보 상함으로서 움직임을 예측하기 위해 참조 픽처(120)의 탐색 영역(122)에서 현재 블록(112)과 가장 유사한 참조 블록(124)를 찾는다. 움직임 벡터(Motion Vector)는 이와 같이 찾아진 참조 블록과 현재 블록 간의 상대적인 위치의 차이를 나타낸다.Referring to FIG. 1, the most similar to the current block 112 in the search area 122 of the reference picture 120 to predict the motion by estimating and compensating the motion of the current block 112 of the current picture 110. Find reference block 124. The motion vector represents a difference in relative position between the found reference block and the current block.

도 1에서 현재 블록(112)과 가장 유사한 참조 블록(124)은 참조 픽처(120)에서 현재 블록(112)과 대응하는 블록을 대각선 방향으로 이동시킨 지점에 위치하는 데, 이를 통해 현재 블록이 참조 픽처(120)의 참조 블록(124)에서 대각선 방향의 직선으로 움직였다는 알 수 있다.In FIG. 1, the reference block 124 most similar to the current block 112 is located at a point in the reference picture 120 where the block corresponding to the current block 112 is moved diagonally, so that the current block is referred to by the current block 112. It can be seen that the reference block 124 of the picture 120 moved in a straight line diagonally.

도 2는 본 발명의 제 1 실시예에 따른 영상 부호화 장치의 전자적인 구성을 간략하게 나타낸 블록 구성도이다.2 is a block diagram schematically illustrating an electronic configuration of an image encoding apparatus according to a first embodiment of the present invention.

본 발명의 제 1 실시예에 따른 영상 부호화 장치(200)는 예측부(210), 감산부(220), 변환부(230), 양자화부(240), 부호화부(250), 역 양자화부(260), 역 변환부(270), 가산부(280) 및 디블로킹 필터부(280)를 포함하여 구성될 수 있다.The image encoding apparatus 200 according to the first embodiment of the present invention includes a predictor 210, a subtractor 220, a transformer 230, a quantizer 240, an encoder 250, and an inverse quantizer ( 260, an inverse transform unit 270, an adder 280, and a deblocking filter unit 280.

이러한 영상 부호화 장치(200)는 개인용 컴퓨터(PC: Personal Computer), 노트북 컴퓨터, 개인 휴대 단말기(PDA: Personal Digital Assistant), 휴대형 멀티미디어 플레이어(PMP: Portable Multimedia Player), 플레이스테이션 포터블(PSP: PlayStation Portable), 이동통신 단말기(Mobile Communication Terminal) 등일 수 있으며, 각종 기기 또는 유무선 통신망과 통신을 수행하기 위한 통신 모뎀 등의 통신 장치, 영상을 부호화하기 위한 각종 프로그램과 데이터를 저장하기 위한 메모리, 프로그램을 실행하여 연산 및 제어하기 위한 마이크로프로세서 등을 구비하는 다양한 장치를 의미한다.The image encoding apparatus 200 may be a personal computer (PC), a notebook computer, a personal digital assistant (PDA), a portable multimedia player (PMP), a PlayStation Portable ), A mobile communication terminal, and the like, and may be a communication device such as a communication modem for performing communication with various devices or wired / wireless communication networks, a memory for storing various programs for encoding an image and data, a program And a microprocessor for calculating and controlling the microprocessor.

예측부(210)는 영상의 현재 블록을 예측하여 예측 블록을 생성한다. 즉, 예측부(210)는 인터 예측(Inter Prediction)을 이용하여 영상에서 부호화하고자 하는 현재 블록(Current Block)의 각 화소값을 예측함으로써 예측 화소값(Predicted Pixel Value)을 각 화소의 화소값으로 갖는 예측 블록(Predicted Block)을 생성한다. 이를 위해, 예측부(210)는 현재 블록이 입력되면 회전 움직임을 포함한 현재 블록의 움직임을 추정함으로써 현재 블록의 움직임 벡터 및 회전 정보를 결정하고 결정된 움직임 벡터 및 회전 정보를 이용하여 현재 블록의 움직임을 보상함으로써 현재 블록을 예측하여 예측 블록을 생성한다.The predictor 210 predicts a current block of an image and generates a predicted block. That is, the prediction unit 210 predicts each pixel value of the current block to be encoded in the image by using inter prediction, thereby converting the predicted pixel value to the pixel value of each pixel. Create a predicted block having To this end, when the current block is input, the prediction unit 210 determines the motion vector and the rotation information of the current block by estimating the motion of the current block including the rotation motion, and determines the motion of the current block by using the determined motion vector and the rotation information. By compensating, the prediction block is generated by predicting the current block.

일 실시예로서, 예측부(210)는 참조 픽처를 하나 이상의 회전 각도만큼 회전 시킨 하나 이상의 회전 참조 픽처를 생성하는데, 하나 이상의 회전 참조 픽처는 하나 이상의 블록들로 분할되고 하나의 팜조 픽처 내의 분할된 각 블록들은 같은 각도로 회전된다. 이와 같이, 회전 참조 픽처 내에서 분할되어 회전되는 블록을 이하에서는 참조 블록이라 칭한다. 예측부(210)는 하나 이상의 회전 참조 픽처를 이용하여 움직임 추정을 수행하여, 최소 부호화 비용을 갖는 참조 픽처에 대한 정보인 참조 픽처 정보를 포함하는 회전 정보와 움직임 벡터를 현재 블록의 회전 정보 및 움직임 벡터로서 결정할 수 있다. 참조 픽처 정보는 참조 픽처의 회전 각도 즉, 참조 픽처 내에서 분할된 블록들의 회전 각도에 대한 정보를 포함한다.In an embodiment, the predictor 210 generates one or more rotational reference pictures in which the reference picture is rotated by one or more rotational angles, wherein the one or more rotational reference pictures are divided into one or more blocks, and are divided within one palmar picture. Each block is rotated at the same angle. As described above, a block that is divided and rotated in the rotation reference picture is hereinafter referred to as a reference block. The prediction unit 210 performs motion estimation by using one or more rotational reference pictures, and rotates the motion information and the motion vector including the reference picture information, which is information about a reference picture having a minimum encoding cost, and the motion information of the current block. Can be determined as a vector. The reference picture information includes information about the rotation angle of the reference picture, that is, the rotation angle of blocks divided in the reference picture.

다른 실시예로서, 예측부(210)는 예측 움직임 벡터를 결정하여 참조 픽처에서 탐색 영역을 설정하고, 탐색 영역 내의 하나 이상의 탐색 위치점에서의 참조 블록에 대한 회전 움직임 추정을 포함하는 움직임 추정에 대한 비용 즉, 움직임 추정 비용을 계산하여 최소 부호화 비용을 갖는 탐색 위치점에서의 참조 블록에 대한 움직임 벡터 및 회전 정보를 현재 블록의 움직임 벡터 및 회전 정보로서 결정할 수 있다. 이때, 회전 정보는 현재 블록이 회전 움직임 추정을 수행한 블록임을 식별하기 위한 플래그 및 최소 부호화 비용을 갖는 참조 블록의 회전 각도를 포함할 수 있다.In another embodiment, the prediction unit 210 determines a predictive motion vector to set a search region in the reference picture, and estimates a motion estimation including a rotation motion estimation for a reference block at one or more search position points in the search region. The cost, ie, the motion estimation cost, may be calculated to determine the motion vector and rotation information for the reference block at the search location point having the minimum coding cost as the motion vector and rotation information of the current block. In this case, the rotation information may include a flag for identifying that the current block is a block that has performed the rotation motion estimation and a rotation angle of the reference block having the minimum encoding cost.

감산부(220)는 현재 블록에서 예측 블록을 감산하여 잔차 블록(Residual Block)을 생성한다. 즉, 감산부(220)는 현재 블록의 각 화소의 원 화소값(Original Pixel Value)과 예측 블록의 각 화소의 예측 화소값의 차이값을 계산하여 잔차 신호(Residual Signal)를 갖는 잔차 블록을 생성한다.The subtractor 220 subtracts the prediction block from the current block to generate a residual block. That is, the subtractor 220 generates a residual block having a residual signal by calculating a difference value between an original pixel value of each pixel of the current block and a predicted pixel value of each pixel of the prediction block. do.

변환부(230)는 잔차 블록을 주파수 영역으로 변환(Transform)한다. 즉, 변환부(230)는 잔차 블록을 주파수 영역(Frequency Domain)으로 변환하여 주파수 계수(Frequency Coefficient)를 갖는 잔차 블록을 생성한다. 여기서, 변환부(230)는 잔차 블록을 변환하는 데 있어서, 하다마드 변환(Hadamard Transform), 이산 코사인 변환 기반 변환(Discrete Cosine Transform Based Transform) 등과 같은 시간축의 화상 신호를 주파수축으로 변환하는 다양한 변환 기법을 이용하여 잔차 신호를 주파수 영역으로 변환할 수 있는데, 주파수 영역으로 변환된 잔차 신호가 주파수 계수가 된다.The transform unit 230 transforms the residual block into the frequency domain. That is, the transformer 230 converts the residual block into a frequency domain to generate a residual block having a frequency coefficient. Here, the transform unit 230 transforms the residual block, and various transforms for transforming the image signal of the time axis to the frequency axis, such as a Hadamard transform, a discrete cosine transform based transform, or the like. The residual signal can be converted into a frequency domain using a technique, and the residual signal converted into the frequency domain becomes a frequency coefficient.

양자화부(240)는 변환부(230)에서 변환된 잔차 블록을 양자화(Quantization)한다. 즉, 양자화부(240)는 잔차 블록의 주파수 계수를 양자화하여 양자화 주파수 계수를 생성한다. 여기서, 양자화부(240)는 잔차 블록의 주파수 계수를 양자화하는 데 있어서, 데드존 균일 경계 양자화(DZUTQ: Dead Zone Uniform Threshold Quantization), 양자화 가중치 매트릭스(Quantization Weighted Matrix)를 이용하거나 그를 계량한 양자화 방법 등을 이용할 수 있다.The quantization unit 240 quantizes the residual block transformed by the transformer 230. That is, the quantization unit 240 quantizes the frequency coefficients of the residual block to generate quantization frequency coefficients. Here, the quantization unit 240 uses Dead Zone Uniform Threshold Quantization (DZUTQ), Quantization Weighted Matrix, or the quantization method to quantize the frequency coefficient of the residual block. Etc. can be used.

부호화부(250)는 양자화부(240)에 의해 양자화된 잔차 블록의 주파수 계수들을 부호화하여 비트스트림을 생성한다. 또한, 부호화부(250)는 예측부(210)로부터 움직임 벡터 및 회전 정보가 전달되면, 잔차 블록의 양자화된 주파수 계수와 함께 부호화하여 비트스트림을 출력할 수 있다. 이러한 부호화 기술로서는 엔트로피 부호화(Entropy Encoding) 기술이 사용될 수 있으나, 반드시 이에 한정하지 않고 다른 다양한 부호화 기술이 사용될 수도 있을 것이다.The encoder 250 generates a bitstream by encoding the frequency coefficients of the residual block quantized by the quantizer 240. In addition, when the motion vector and the rotation information are transmitted from the predictor 210, the encoder 250 may code the quantized frequency coefficients of the residual block to output a bitstream. As such an encoding technique, entropy encoding technology may be used, but various other encoding techniques may be used without being limited thereto.

역 양자화부(260)는 양자화부(230)에 의해 양자화된 잔차 블록을 역 양자화(Inverse Quantization)한다. 즉, 역 양자화부(260)는 양자화된 잔차 블록의 양자화 주파수 계수를 역 양자화하여 주파수 계수를 생성한다.The inverse quantizer 260 inverse quantizes the residual block quantized by the quantizer 230. That is, the inverse quantizer 260 inversely quantizes the quantized frequency coefficients of the quantized residual block to generate frequency coefficients.

역 변환부(270)는 역 양자화부(260)에 의해 역 양자화된 잔차 블록을 역 변환(Inverse Transform)한다. 즉, 역 변환부(270)는 역 양자화된 잔차 블록의 주파수 계수를 역 변환하여 시간축상의 화소 신호를 갖는 잔차 블록을 복원한다.The inverse transform unit 270 inversely transforms the residual block inversely quantized by the inverse quantizer 260. That is, the inverse transform unit 270 inversely transforms the frequency coefficients of the inverse quantized residual block to restore the residual block having the pixel signal on the time axis.

가산부(280)는 역 변환부(270)에 의해 역 변환된 잔차 블록에 예측부(210)에서 예측한 예측 블록을 가산하여 현재 블록을 복원한다.The adder 280 reconstructs the current block by adding the prediction block predicted by the predictor 210 to the residual block inversely transformed by the inverse transformer 270.

디블로킹 필터부(290)는 가산부(280)에 의해 복원된 현재 블록을 디블로킹 필터링(Deblcking Filtering)한다. 여기서, 디블로킹 필터링이란 영상을 블록 단위로 부호화하면서 발생하는 블록 왜곡을 감소시키는 작업을 말하며, 블록 경계와 매 크로블록 경계에 디블로킹 필터를 적용하거나 매크로블록 경계에만 디블로킹 필터를 적용하거나 디블로킹 필터를 사용하지 않는 방법 중 하나를 선택적으로 사용할 수 있다.The deblocking filter 290 deblocking filtering the current block reconstructed by the adder 280. Here, the deblocking filtering refers to an operation of reducing block distortion generated by encoding an image in block units, and applying a deblocking filter to a block boundary and a macroblock boundary, or applying or applying a deblocking filter only to a macroblock boundary. You can optionally use one of the methods that does not use filters.

이와 같이, 가산부(280)에 의해 복원되고 디블로킹 필터부(290)에 의해 디블로킹 필터링된 현재 블록은 예측부(210)에 입력되어 다음 픽처를 예측할 때 사용되는 참조 픽처로서 저장된다.In this way, the current block reconstructed by the adder 280 and deblocked filtered by the deblocking filter 290 is input to the predictor 210 and stored as a reference picture used when predicting the next picture.

도 3은 본 발명의 제 1 실시예에 따른 영상 부호화 방법을 설명하기 위한 순서도이다.3 is a flowchart illustrating an image encoding method according to a first embodiment of the present invention.

영상 부호화 장치(200)는 부호화하고자 하는 원영상의 현재 픽처가 입력되면 영상을 매크로 블록 또는 매크로 블록의 서브 블록 단위로 구분하고 다양한 블록 모드(또는 부호화 모드) 중 최적의 블록 모드를 결정하여 결정된 블록 모드에 따라 부호화하고자 하는 현재 블록을 예측하여 부호화한다.When the current picture of the original image to be encoded is input, the image encoding apparatus 200 divides the image into macroblocks or subblock units of the macroblocks, and determines an optimal block mode among various block modes (or encoding modes). Predict and encode a current block to be encoded according to a mode.

이때, 블록 모드로서 인터 모드가 결정되어 인터 예측을 수행하는 경우, 영상 부호화 장치(200)는 이전에 부호화되고 복호화된 다른 픽처를 이용하여 부호화하고자 하는 현재 블록의 움직임을 예측한다. 즉, 영상 부호화 장치(200)는 현재 블록의 회전 움직임을 포함하는 움직임을 추정하여 현재 블록의 움직임 벡터 및 회전 정보를 결정하고(S310), 결정된 움직임 벡터와 회전 정보를 이용하여 현재 블록의 움직임을 보상함으로써 현재 블록을 예측하여 예측 블록을 생성한다(S320).In this case, when the inter mode is determined as the block mode and inter prediction is performed, the image encoding apparatus 200 predicts the motion of the current block to be encoded using another previously encoded and decoded picture. That is, the image encoding apparatus 200 determines a motion vector and rotation information of the current block by estimating a motion including the rotation motion of the current block (S310), and determines the motion of the current block by using the determined motion vector and the rotation information. By compensating, the current block is predicted to generate a prediction block (S320).

예측 블록이 생성되면 영상 부호화 장치(200)는 현재 블록에서 예측 블록을 감산하여 잔차 블록을 생성하고(S330), 잔차 블록을 변환하고 양자화하여(S340), 양자화된 잔차 블록, 움직임 벡터 및 회전 정보를 부호화하여 비트스트림을 생성한다(S350).When the prediction block is generated, the image encoding apparatus 200 generates a residual block by subtracting the prediction block from the current block (S330), transforms and quantizes the residual block (S340), and quantizes the residual block, motion vector, and rotation information. The bitstream is generated by encoding the signal (S350).

전술한 바와 같이, 영상 부호화 장치(200)에 의해 비트스트림으로 부호화된 영상은 실시간 또는 비실시간으로 인터넷, 근거리 무선 통신망, 무선랜망, 와이브로망, 이동통신망 등의 유무선 통신망 등을 통하거나 케이블, 범용 직렬 버스(USB: Universal Serial Bus) 등의 다양한 통신 인터페이스를 통해 후술할 영상 복호화 장치로 전송되고 영상 복호화 장치에서 복호화되어 영상으로 복원되고 재생될 수 있다.As described above, the image encoded in the bitstream by the image encoding apparatus 200 is real-time or non-real-time through the wired or wireless communication network such as the Internet, local area wireless communication network, wireless LAN network, WiBro network, mobile communication network, or the like, The image decoding apparatus may be transmitted to an image decoding apparatus to be described later through various communication interfaces such as a universal serial bus (USB), and may be decoded by the image decoding apparatus to restore and reproduce the image.

도 4는 본 발명의 제 2 실시예에 따른 영상 복호화 장치의 전자적인 구성을 간략하게 나타낸 블록 구성도이다.4 is a block diagram schematically illustrating an electronic configuration of an image decoding apparatus according to a second embodiment of the present invention.

본 발명의 제 2 실시예에 따른 영상 복호화 장치(400)는 복호화부(410), 역 양자화부(420), 역 변환부(430), 예측부(440), 가산부(450) 및 디블로킹 필터부(460)를 포함하여 구성될 수 있다.The image decoding apparatus 400 according to the second embodiment of the present invention includes a decoder 410, an inverse quantizer 420, an inverse transformer 430, a predictor 440, an adder 450, and deblocking. It may be configured to include a filter unit 460.

이러한 영상 복호화 장치(400)는 개인용 컴퓨터(PC: Personal Computer), 노트북 컴퓨터, 개인 휴대 단말기(PDA: Personal Digital Assistant), 휴대형 멀티미디어 플레이어(PMP: Portable Multimedia Player), 플레이스테이션 포터블(PSP: PlayStation Portable), 이동통신 단말기(Mobile Communication Terminal) 등일 수 있으며, 각종 기기 또는 유무선 통신망과 통신을 수행하기 위한 통신 모뎀 등의 통신 장치, 영상을 복호화하기 위한 각종 프로그램과 데이터를 저장하기 위한 메모리, 프로그램을 실행하여 연산 및 제어하기 위한 마이크로프로세서 등을 구비하는 다양한 장치를 의미한다.The video decoding apparatus 400 may be a personal computer (PC), a notebook computer, a personal digital assistant (PDA), a portable multimedia player (PMP), or a PlayStation Portable (PSP). ), A communication device such as a communication modem for communicating with various devices or a wired / wireless communication network, a memory for storing various programs and data for decoding an image, and executing a program. Means a variety of devices including a microprocessor for operation and control.

복호화부(410)는 비트스트림을 복호화하여 잔차 블록, 움직임 벡터 및 회전 정보를 추출한다. 즉, 복호화부(410)는 영상 부호화 장치(200)에 의해 부호화된 영상인 비트스트림을 복호화하여 영상의 현재 블록에 대한 화소 정보를 포함하고 있는 잔차 블록과 움직임 벡터 및 회전 정보를 추출한다.The decoder 410 decodes the bitstream to extract the residual block, the motion vector, and the rotation information. That is, the decoder 410 decodes a bitstream, which is an image encoded by the image encoding apparatus 200, and extracts a residual block, motion vector, and rotation information including pixel information of a current block of the image.

역 양자화부(420)는 복호화부(410)에 의해 추출된 잔차 블록을 역 양자화하고, 역 변환부(430)는 역 양자화된 잔차 블록을 역 변환한다. 여기서, 역 양자화와 역 변환은 각각 도 2를 통해 전술한 역 양자화와 역 변환과 같은 방식으로 역 양자와 역 변환될 수 있다.The inverse quantizer 420 inverse quantizes the residual block extracted by the decoder 410, and the inverse transformer 430 inversely transforms the inverse quantized residual block. Here, the inverse quantization and the inverse transform may be inversely transformed with the inverse quantization in the same manner as the inverse quantization and inverse transformation described above with reference to FIG. 2.

예측부(440)는 복호화부(410)에서 추출한 움직임 벡터 및 회전 정보를 이용하여 영상의 현재 블록의 회전 움직임을 포함하는 움직임을 보상함으로써 현재 블록을 예측하여 예측 블록을 생성한다.The prediction unit 440 generates a prediction block by predicting the current block by compensating for the motion including the rotation motion of the current block of the image by using the motion vector and the rotation information extracted by the decoder 410.

일 실시예로서, 예측부(440)는 참조 픽처를 하나 이상의 블록으로 분할하고 참조 픽처 정보에 의해 지시되는 회전 각도만큼 회전시켜 회전 참조 픽처를 생성하고, 회전 참조 픽처에서 움직임 벡터에 의해 지시되는 참조 블록을 검색함으로써 현재 블록의 회전 움직임을 포함하는 움직임을 보상할 수 있다.As an example, the prediction unit 440 divides the reference picture into one or more blocks and rotates the reference picture by the rotation angle indicated by the reference picture information to generate a rotation reference picture, and the reference indicated by the motion vector in the rotation reference picture. Searching for the block may compensate for the movement including the rotational movement of the current block.

다른 실시예로서, 예측부(440)는 참조 픽처에서 움직임 벡터가 지시하는 참조 블록을 검색하고 참조 블록을 회전 정보에 의해 지시되는 회전 각도만큼 회전하여 현재 블록의 회전 움직임을 포함하는 움직임을 보상할 수 있다.As another embodiment, the predictor 440 may search for a reference block indicated by the motion vector in the reference picture and rotate the reference block by the rotation angle indicated by the rotation information to compensate for the motion including the rotational movement of the current block. Can be.

가산부(450)는 역 변환부(430)에서 역 변환된 잔차 블록에 예측부(440)에 의 해 예측된 예측 블록을 가산하여 현재 블록을 복원한다.The adder 450 reconstructs the current block by adding the predicted block predicted by the predictor 440 to the residual block inversely transformed by the inverse transformer 430.

디블로킹 필터부(460)는 양자화 과정에서 발생할 수 있는 오차를 줄여 블록 왜곡을 감소시키기 위해, 가산부(450)에 의해 복원된 현재 블록을 디블로킹 필터링한다.The deblocking filter 460 deblocks the current block reconstructed by the adder 450 to reduce block distortion by reducing an error that may occur in the quantization process.

가산부(450)에 의해 복원된 현재 블록은 픽처 단위로 결합되어 복원 영상으로 출력되고, 디블로킹 필터부(460)에 의해 디블로킹 필터링된 현재 블록은 예측부(440)에서 다음 픽처를 예측할 때 사용되는 참조 픽처로서 저장된다.The current block reconstructed by the adder 450 is combined in picture units and output as a reconstructed image, and the current block deblocked and filtered by the deblocking filter 460 when the prediction unit 440 predicts the next picture. It is stored as a reference picture to be used.

도 5는 본 발명의 제 2 실시예에 따른 영상 복호화 방법을 설명하기 위한 순서도이다.5 is a flowchart illustrating an image decoding method according to a second embodiment of the present invention.

유무선 통신망 또는 케이블 등을 통해 영상에 대한 비트스트림을 수신하여 저장한 영상 복호화 장치(400)는 사용자의 선택 또는 실행 중인 다른 프로그램의 알고리즘에 따라 영상을 재생하기 위해, 영상을 복호화하여 복원한다. 이를 위해, 영상 복호화 장치(400)는 비트스트림을 복호화하여 잔차 블록을 추출하고, 이때 비트스트림에서 움직임 벡터와 회전 정보를 함께 추출한다(S510). 잔차 블록과 움직임 벡터, 회전 정보가 추출되면, 영상 복호화 장치(400)는 추출한 잔차 블록을 역 양자화하고 역 변환한다(S520).The image decoding apparatus 400 that receives and stores a bitstream of an image through a wired or wireless communication network or a cable, decodes and restores the image in order to reproduce the image according to a user's selection or an algorithm of another program being executed. To this end, the image decoding apparatus 400 extracts the residual block by decoding the bitstream, and extracts a motion vector and rotation information from the bitstream at step S510. When the residual block, the motion vector, and the rotation information are extracted, the image decoding apparatus 400 inverse quantizes and inversely transforms the extracted residual block (S520).

또한, 영상 복호화 장치(400)는 단계 S510에서 추출된 움직임 벡터 및 회전 정보를 이용하여 영상의 현재 블록의 회전 움직임을 보상함으로써 현재 블록을 예측하여 예측 블록을 생성한다(S530).In addition, the image decoding apparatus 400 generates a prediction block by predicting the current block by compensating for the rotational movement of the current block of the image using the motion vector and the rotation information extracted in step S510 (S530).

영상 복호화 장치(400)는 단계 S520에서 역 변환된 잔차 블록과 단계 S530에 서 생성된 예측 블록을 가산하여 현재 블록을 복원한다(S540). 영상 부호화 장치(400)는 복원된 현재 블록을 픽처 단위로 저장하여 복원 영상을 출력한다,The image decoding apparatus 400 reconstructs the current block by adding the residual block inversely transformed in operation S520 and the prediction block generated in operation S530 (S540). The image encoding apparatus 400 stores the reconstructed current block in picture units and outputs a reconstructed image.

도 6은 본 발명의 제 3 실시예에 따른 부호화를 위한 인터 예측 장치의 전자적인 구성을 간략하게 나타낸 블록 구성도이다.6 is a block diagram schematically illustrating an electronic configuration of an inter prediction apparatus for encoding according to a third embodiment of the present invention.

본 발명의 제 3 실시예에 따른 부호화를 위한 인터 예측 장치는 도 2를 통해 전술한 영상 부호화 장치(200)의 예측부(210)로 구현될 수 있다. 이하에서는 본 발명의 제 3 실시예에 따른 부호화를 위한 인터 예측 장치를 예측부(210)라 약칭한다.The inter prediction apparatus for encoding according to the third embodiment of the present invention may be implemented by the prediction unit 210 of the image encoding apparatus 200 described above with reference to FIG. 2. Hereinafter, the inter prediction apparatus for encoding according to the third embodiment of the present invention will be abbreviated as a predictor 210.

본 발명의 제 3 실시예에 따른 예측부(210)는 움직임 추정부(610), 움직임 보상부(620) 및 참조 픽처 저장부(630)를 포함하여 구성될 수 있다.The predictor 210 according to the third embodiment of the present invention may include a motion estimator 610, a motion compensator 620, and a reference picture storage 630.

움직임 추정부(610)는 예측 움직임 벡터를 결정하고, 참조 픽처 저장부(630)에 저장된 참조 픽처에서 탐색 영역을 설정하며, 탐색 영역 내의 하나 이상의 탐색 위치점에 대한 참조 블록을 하나 이상의 회전 각도만큼 회전시켜 부호화 비용을 계산하되, 최소 부호화 비용을 갖는 탐색 위치점에서의 참조 블록에 대한 움직임 벡터 및 회전 각도를 현재 블록의 움직임 벡터 및 회전 각도로서 결정한다.The motion estimator 610 determines a predicted motion vector, sets a search area in a reference picture stored in the reference picture storage 630, and sets a reference block for one or more search position points in the search area by one or more rotation angles. The coding cost is calculated by rotating, but the motion vector and the rotation angle for the reference block at the search location point having the minimum coding cost are determined as the motion vector and the rotation angle of the current block.

즉, 움직임 추정부(610)는 예측 움직임 벡터를 결정하고, 참조 픽처에서 예측 움직임 벡터가 지시하는 참조 블록을 중심으로 하는 소정의 영역을 탐색 영역으로서 설정하고, 탐색 영역 내의 하나 이상의 지점을 탐색 위치점으로 설정한다. 움직임 추정부(610)는 각 탐색 위치점에서의 참조 블록을 하나 이상의 회전 각도만큼 회전시킨 후, 회전된 참조 블록들의 부호화 비용을 계산하고, 각 회전 각도에 따른 부호화 비용을 비교함으로써 각 탐색 위치점에서의 최소 부호화 비용을 갖는 참조 블록의 회전 각도를 결정한다. 움직임 추정부(610)는 각 탐색 위치점에서의 최소 부호화 비용을 서로 비교하여 최소 부호화 비용을 갖는 탐색 위치점을 결정하고 해당 탐색 위치점에서의 참조 블록의 회전 각도를 최종 회전 각도로서 결정하며, 해당 참조 블록에 대한 현재 블록의 상대적인 위치를 움직임 벡터로서 결정한다.That is, the motion estimator 610 determines the predicted motion vector, sets a predetermined region around the reference block indicated by the predicted motion vector in the reference picture as the search region, and sets one or more points in the search region to the search position. Set to point. The motion estimation unit 610 rotates the reference block at each search position point by one or more rotation angles, calculates the encoding cost of the rotated reference blocks, and compares each encoding position point by comparing the encoding cost according to each rotation angle. Determine the rotation angle of the reference block with the minimum coding cost in. The motion estimation unit 610 compares the minimum coding cost at each search location point with each other to determine the search location point having the minimum coding cost, and determines the rotation angle of the reference block at the search location point as the final rotation angle. The position of the current block relative to the reference block is determined as a motion vector.

여기서, 부호화 비용은 현재 블록과 참조 블록의 차이를 기준으로 계산될 수 있는데, 차의 제곱 합(SSD: Sum of Squared Difference)과 차의 절대값 합(SAD: Sum of Absolute Difference) 등이 될 수 있다. 또한, 부호화 비용은 해당 참조 블록을 현재 블록의 예측 블록이라 가정하고 계산된 율-왜곡 비용(Rate-Distortion Cost)이 될 수도 있을 것이다.Here, the coding cost may be calculated based on the difference between the current block and the reference block, and may be a sum of squared difference (SSD) and a sum of absolute difference (SAD). have. In addition, the encoding cost may be a rate-distortion cost calculated by assuming that the reference block is a prediction block of the current block.

또한, 움직임 추정부(610)는 현재 블록의 이웃 블록의 움직임 벡터를 이용하여 움직임 추정을 위한 예측 움직임 벡터를 결정할 수 있는데, 현재 블록의 하나 이상의 이웃 블록 중 직선 움직임 보상을 수행한 이웃 블록의 움직임 벡터를 이용하여 결정하거나 직선 움직임 보상 또는 회전 움직임 보상의 여부와 관계 없이 이웃 블록의 움직임 벡터의 평균값을 이용하여 결정할 수 있다. 즉, 이웃 블록 중에서 회전 움직임 보상을 수행한 이웃 블록이 아닌 직선 움직임 보상을 수행한 이웃 블록의 움직임 벡터를 현재 블록의 움직임 벡터로서 결정할 수 있으며, 이웃 블록의 움직임 벡터를 평균한 움직임 벡터를 현재 블록의 움직임 벡터로서 결정할 수 있다. 영상의 회전 움직임이 있는 영역에서, 회전 움직임 추정의 성능은 회전 중심점에 따라 달라지기 때문에, 회전 움직임을 추정하여 결정된 최적의 움직임 벡터와 직선 움직임만을 추정하여 결정된 최적의 움직임 벡터가 불일치할 수 있다. 따라서, 직선 움직임만을 추정하여 결정된 이웃 블록의 움직임 벡터를 예측 움직임 벡터로서 사용함으로써 현재 블록의 움직임 벡터와 예측 움직임 벡터 간의 차이 벡터의 크기를 줄일 수 있다.In addition, the motion estimator 610 may determine a predicted motion vector for motion estimation using the motion vector of the neighboring block of the current block. The motion of the neighboring block that performs linear motion compensation among one or more neighboring blocks of the current block The determination may be performed using a vector or using an average value of a motion vector of a neighboring block regardless of whether linear motion compensation or rotational motion compensation is performed. That is, the motion vector of the neighboring block that performs the linear motion compensation instead of the neighboring block that performs the rotational motion compensation among the neighboring blocks may be determined as the motion vector of the current block, and the motion vector obtained by averaging the motion vector of the neighboring block is the current block. Can be determined as. Since the performance of the rotational motion estimation varies depending on the rotation center point in the region where the rotational motion of the image is located, the optimal motion vector determined by estimating the rotational motion and the linear motion only determined by estimating the rotational motion may be inconsistent. Therefore, the size of the difference vector between the motion vector of the current block and the predictive motion vector can be reduced by using the motion vector of the neighboring block determined by estimating only the linear motion as the predictive motion vector.

또한, 움직임 추정부(610)는 현재 블록의 이웃 블록의 움직임 벡터를 이용하여 차이벡터 계산을 위한 예측 움직임 벡터를 결정할 수 있는데, 현재 블록이 회전 움직임 보상을 수행했는지 또는 직선 움직임 보상을 수행했는지 여부에 따라 다르게 예측 움직임 벡터를 결정할 수 있다. 즉, 현재 블록이 회전 움직임 보상을 수행한 경우에는 이웃 블록 중 회전 움직임 보상을 수행한 이웃 블록들의 움직임 벡터만을 이용하여 차이벡터를 위한 예측 움직임 벡터를 결정할 수 있으며, 현재 블록이 직선 움직임 보상을 수행한 경우에는 이웃 블록 중 직선 움직임 보상을 수행한 이웃 블록들의 움직임 벡터만을 이용하여 차이벡터를 위한 예측 움직임 벡터를 결정할 수 있다.In addition, the motion estimator 610 may determine the predicted motion vector for calculating the difference vector using the motion vector of the neighboring block of the current block. Whether the current block performs the rotational motion compensation or the linear motion compensation is performed. According to the prediction motion vector can be determined differently. That is, when the current block performs the rotational motion compensation, the prediction motion vector for the difference vector may be determined using only the motion vectors of the neighboring blocks that perform the rotational motion compensation among the neighboring blocks, and the current block performs the linear motion compensation. In one case, a prediction motion vector for a difference vector may be determined using only motion vectors of neighboring blocks which have performed linear motion compensation among neighboring blocks.

도 12를 참조하여 예를 들면, 움직임 추정을 위한 예측 움직임 벡터는 회전 움직임 보상의 여부에 관계 없이, A, B, C 블록의 평균값을 예측 움직임 벡터로 사용하여 움직임 추정을 수행하거나 직선 움직임 벡터를 사용하는 C 블록의 움직임 벡터를 예측 벡터로 사용할 수 있다. 차이벡터를 위한 예측 움직임 벡터는, 현재 블록이 회전 움직임 보상을 수행한 경우에는, 차이벡터는 현재 블록의 움직임 벡터에서 A 블록과 B 블록의 평균값을 뺀 값이되고, 현재 블록이 직선 움직임 보상을 수행한 경우에는, 차이벡터는 현재 블록의 움직임 벡터에서 C 블록의 움직임 벡터 를 뺀 값이 된다.Referring to FIG. 12, for example, a predictive motion vector for motion estimation may be performed by performing motion estimation using average values of A, B, and C blocks as predictive motion vectors, regardless of whether or not rotation motion compensation is performed. The motion vector of the used C block can be used as a prediction vector. In the predicted motion vector for the difference vector, when the current block performs the rotational motion compensation, the difference vector is obtained by subtracting the average value of the A and B blocks from the motion vector of the current block, and the current block performs the linear motion compensation. In this case, the difference vector is obtained by subtracting the motion vector of the C block from the motion vector of the current block.

또한, 움직임 추정부(610)는 회전 각도를 설정할 때, 기 설정된 회전 각도 범위 내에서 하나 이상의 회전 각도를 설정할 수 있다. 또한, 움직임 추정부(610)는 현재 블록이 회전 움직임 추정을 수행한 블록임을 식별하기 위한 플래그를 생성하되, 플래그 및 회전 각도를 회전 정보로서 출력할 수 있다.In addition, when setting the rotation angle, the motion estimation unit 610 may set one or more rotation angles within a preset rotation angle range. In addition, the motion estimator 610 may generate a flag for identifying that the current block is a block in which the rotation motion estimation is performed, and output the flag and the rotation angle as rotation information.

또한, 움직임 추정부(610)는 예측 움직임 벡터를 결정하여 참조 픽처에서 탐색 영역을 설정하고, 탐색 영역 내의 하나 이상의 탐색 위치점에 대한 직선 움직임 추정 비용을 계산하고, 하나 이상의 탐색 위치점에 대한 회전 움직임을 추정할 지 여부를 결정하여 하나 이상의 탐색 위치점에 대한 회전 움직임을 추정하고 회전 움직임 추정 비용을 계산하며, 직선 움직임 추정 비용 및 회전 움직임 추정 비용 중 작은 비용을 하나 이상의 탐색 위치점에 대한 최소 부호화 비용으로 결정하고, 각 탐색 위치점에 대한 최소 부호화 비용 중 최소 부호화 비용을 갖는 탐색 위치점에서의 참조 블록에 대한 움직임 벡터 및 회전 각도를 현재 블록의 움직임 벡터 및 회전 각도로서 결정할 수도 있다.In addition, the motion estimator 610 determines a predicted motion vector to set a search region in the reference picture, calculates a linear motion estimation cost for one or more search position points in the search region, and rotates about one or more search position points. Determine whether to estimate motion to estimate rotational motion for one or more search location points, calculate cost of rotational motion estimation, and determine the minimum of linear motion estimates and rotational motion estimates for at least one search location point. The coding cost may be determined, and a motion vector and a rotation angle of the reference block at the search location point having the minimum coding cost among the minimum coding costs for each search location point may be determined as the motion vector and the rotation angle of the current block.

움직임 보상부(620)는 참조 픽처 저장부(630)에 저장된 참조 픽처에서 움직임 벡터가 지시하는 참조 블록을 회전 각도에 의해 지시되는 회전 각도만큼 회전시켜 현재 블록의 예측 블록을 생성하고 출력한다.The motion compensator 620 generates and outputs a prediction block of the current block by rotating the reference block indicated by the motion vector in the reference picture stored in the reference picture storage 630 by the rotation angle indicated by the rotation angle.

참조 픽처 저장부(630)는 디블로킹 필터부(290)로부터 출력되는 복원된 현재 블록을 픽처 단위로 저장하여 참조 픽처로서 저장한다.The reference picture storage unit 630 stores the reconstructed current block output from the deblocking filter unit 290 on a picture basis and stores the picture as a reference picture.

도 7은 본 발명의 제 3 실시예에 따른 움직임 추정부를 간략하게 나타낸 블 록 구성도이다.7 is a block diagram schematically illustrating a motion estimation unit according to a third embodiment of the present invention.

도 6을 통해 전술한 예측부(210)의 움직임 추정부(610)는 예측 움직임 벡터 결정부(710), 탐색 위치 설정부(720), 회전 각도 설정부(730), 중심점 설정부(740), 블록 회전부(750), 부호화 비용 계산부(760) 및 움직임 벡터 결정부(770)를 포함하여 구성될 수 있다.The motion estimator 610 of the predictor 210 described above with reference to FIG. 6 includes a predicted motion vector determiner 710, a search position setter 720, a rotation angle setter 730, and a center point setter 740. , A block rotation unit 750, an encoding cost calculator 760, and a motion vector determiner 770.

예측 움직임 벡터 결정부(710)는 이웃 블록의 움직임 벡터를 이용하여 예측 움직임 벡터를 결정한다. 탐색 위치 설정부(720)는 결정된 예측 움직임 벡터를 이용하여 참조 픽처에 탐색 영역을 설정하고 설정된 탐색 영역 내에서 하나 이상의 탐색 위치점을 설정한다. 회전 각도 설정부(730)는 기 설정된 회전 각도 범위 내에서 하나 이상의 회전 각도를 설정한다.The prediction motion vector determiner 710 determines the prediction motion vector using the motion vector of the neighboring block. The search position setting unit 720 sets a search region in the reference picture using the determined predicted motion vector, and sets one or more search position points within the set search region. The rotation angle setting unit 730 sets one or more rotation angles within a preset rotation angle range.

중심점 설정부(740)는 하나 이상의 탐색 위치점에서의 참조 블록에 대한 중심점을 설정한다. 즉, 중심점 설정부(740)는 참조 블록을 회전하는 데 중심이 되는 중심점을 설정하는데, 중심점은 탐색 위치점이 될 수도 있고 탐색 위치점에서의 참조 블록의 정중앙이 되는 점 등 탐색 블록 내의 다양한 위치가 중심점이 될 수 있다. 이러한 중심점의 설정에 따라 움직임 추정의 효율이 달라질 수 있다.The center point setting unit 740 sets a center point for a reference block at one or more search position points. That is, the center point setting unit 740 sets a center point that is the center of rotation of the reference block. The center point may be a search location point, and various positions in the search block, such as a point that becomes the center of the reference block at the search location point, may be Can be the center point. According to the setting of the center point, the efficiency of the motion estimation may vary.

블록 회전부(750)는 하나 이상의 탐색 위치점에 대한 참조 블록을 각 중심점을 기준으로 설정된 하나 이상의 회전 각도로 회전시킨다.The block rotating unit 750 rotates a reference block for one or more search position points at one or more rotation angles set based on each center point.

부호화 비용 계산부(760)는 블록 회전부(750)에 의해 회전된 참조 블록 각각에 대해 부호화 비용을 계산하고 하나의 탐색 위치점에서 각 회전 각도로 회전된 참조 블록 각각에 대해 부호화 비용을 계산한다.The encoding cost calculator 760 calculates an encoding cost for each reference block rotated by the block rotation unit 750 and calculates an encoding cost for each reference block rotated at each rotation angle at one search position point.

움직임 벡터 결정부(770)는 부호화 비용 계산부(760)에 의해 계산된 하나 이상의 탐색 위치점에서 하나 이상의 회전 각도로 회전된 참조 블록에 대한 부호화 비용 중 최소 부호화 비용을 갖는 참조 블록을 결정하고, 결정된 참조 블록의 회전 각도를 회전 움직임 추정을 위한 회전 각도로 결정하고 해당 참조 블록에 대한 현재 블록의 상대적인 위치를 움직임 벡터로서 결정한다.The motion vector determiner 770 determines a reference block having a minimum encoding cost among encoding costs for a reference block rotated by one or more rotation angles at one or more search position points calculated by the encoding cost calculator 760, The rotation angle of the determined reference block is determined as the rotation angle for the rotation motion estimation, and the relative position of the current block with respect to the reference block is determined as the motion vector.

도 8은 본 발명의 제 3 실시예에 따른 부호화를 위한 인터 예측 방법을 설명하기 위한 순서도이다.8 is a flowchart illustrating an inter prediction method for encoding according to a third embodiment of the present invention.

본 발명의 제 3 실시예에 따른 예측부(210)는 이웃 블록의 움직임 벡터를 이용하여 예측 움직임 벡터를 결정한다(S810). 예측부(210)는 결정된 예측 움직임 벡터를 이용하여 참조 픽처에 탐색 영역을 설정하고 설정된 탐색 영역 내에서 하나 이상의 탐색 위치점을 설정한다(S820).The prediction unit 210 according to the third embodiment of the present invention determines the prediction motion vector using the motion vector of the neighboring block (S810). The predictor 210 sets a search region in the reference picture using the determined predicted motion vector and sets one or more search position points in the set search region (S820).

예측부(210)는 각 탐색 위치점에서의 직선 움직임 추정 비용을 계산한다(S830). 즉, 예측부(210)는 각 탐색 위치점에서의 탐색 블록과 현재 블록의 SSD 또는 SAD 등을 계산하여 직선 움직임 추정 비용을 계산한다.The prediction unit 210 calculates a linear motion estimation cost at each search position point (S830). That is, the prediction unit 210 calculates the linear motion estimation cost by calculating the search block at each search location point and the SSD or SAD of the current block.

예측부(210)는 각 탐색 위치점에서의 회전 움직임 추정을 수행할 지 여부를 결정한다(S840). 여기서, 예측부(210)는 양자화 주파수 계수의 값을 이용하여 각 탐색 위치점에서의 회전 움직임 추정을 수행할지 여부를 결정할 수 있다. 즉, 예측부(210)는 각 탐색 위치점에 해당하는 참조 블록을 예측 블록으로 생성하고 현재 블록과 예측 블록의 차이를 잔차 블록으로 생성한 후, 잔차 블록을 변환 및 양자화한 양자화 주파수 계수 중 하나 이상이 '0'이 아닌지 여부를 확인하여, 하나 이상 이 '0'이 아닌 경우 각 탐색 위치점에서의 회전 움직임 추정을 수행하는 것으로 결정하고, 양자화 주파수 계수가 모두 '0'인 경우에는 해당 탐색 위치 점에서의 회전 움직임 추정을 수행하지 않는 것으로 결정한다. 이는 회전 움직임 추정을 수행하지 않은 채 부호화한 결과로서 양자화 주파수 계수가 모두 '0'인 경우에는 예측이 정확하다는 것을 의미하므로, 회전 움직임 추정을 수행할 필요가 없기 때문이다.The predictor 210 determines whether to perform rotation motion estimation at each search position point (S840). Here, the predictor 210 may determine whether to perform rotation motion estimation at each search position point using the value of the quantization frequency coefficient. That is, the prediction unit 210 generates a reference block corresponding to each search position point as a prediction block, generates a difference between the current block and the prediction block as a residual block, and then transforms and quantizes the residual block to one of the quantized frequency coefficients. It is determined whether the ideal is not '0', and when at least one is not '0', it is determined to perform rotation motion estimation at each search position point, and when the quantization frequency coefficients are all '0', the corresponding search is performed. Determine not to perform rotational motion estimation at the location point. This is because the prediction is accurate when the quantization frequency coefficients are all '0' as a result of encoding without performing the rotation motion estimation, and thus it is not necessary to perform the rotation motion estimation.

단계 S840의 확인 결과, 각 탐색 위치점에서의 회전 움직임 추정을 수행하는 경우에는, 각 탐색 위치점에서의 하나 이상의 회전 각도를 설정하고 각 탐색 위치점에서의 중심점을 설정하며, 각 탐색 위치점에 해당하는 참조 블록을 하나 이상의 회전 각도로 회전시켜 부호화 비용을 계산함으로써 각 탐색 위치점에서의 회전 움직임 추정 비용을 계산한다(S850).As a result of checking in step S840, when performing rotational motion estimation at each search position point, at least one rotation angle at each search position point is set, a center point at each search position point is set, and at each search position point, By calculating the encoding cost by rotating the corresponding reference block by one or more rotation angles, the rotational motion estimation cost at each search position point is calculated (S850).

단계 S840의 확인 결과, 각 탐색 위치점에서의 회전 움직임 추정을 수행하지 않는 경우에는, 해당 탐색 위치점에서는 단계 S830에서 계산된 직선 움직임 추정 비용만이 남는다.As a result of checking in step S840, when the rotation motion estimation is not performed at each search position point, only the linear motion estimation cost calculated in step S830 remains at the search position point.

예측부(210)는 단계 S830과 단계 S850과 같이 계산된, 하나 이상의 탐색 위치점에서의 직선 움직임 추정 비용과 회전 움직임 추정 비용(회전 움직임 추정을 수행한 경우에만 계산됨)을 비교하여 각 탐색 위치점에서의 최소 부호화 비용을 결정한다(S860).The prediction unit 210 compares the linear motion estimation cost and the rotational motion estimation cost (calculated only when the rotational motion estimation is performed) at one or more searched location points, which are calculated in steps S830 and S850, and are each search position. The minimum coding cost at the point is determined (S860).

각 탐색 위치점에서의 최소 부호화 비용이 결정되면 예측부(210)는 각 탐색 위치점에서의 최소 부호화 비용 중 최소 부호화 비용을 갖는 탐색 위치점에서의 참조블록의 움직임 벡터와 회전 각도를 현재 블록의 움직임 벡터와 회전 각도로서 결 정한다(S870).When the minimum coding cost at each search location point is determined, the prediction unit 210 determines the motion vector and the rotation angle of the reference block at the search location point having the minimum coding cost among the minimum coding costs at each search location point. It is determined as the motion vector and the rotation angle (S870).

탐색 영역 내에 2 개의 탐색 위치점이 설정되고 회전 각도 범위가 ±30°이며, 회전 각도의 크기가 10°씩이라고 가정하여 각 탐색 위치점에서의 최소 부호화 비용을 결정하는 것을 예를 들어 설명한다. 제 1 탐색 위치점의 경우 회전 움직임 추정을 수행하지 않는 것으로 결정된 경우에는, 제 1 탐색 위치점에 대한 직선 움직임 추정 비용이 최소 부호화 비용으로 결정된다. 제 2 탐색 위치점의 경우 회전 움직임 추정을 수행하는 것으로 결정된 경우에는, 제 2 탐색 위치점에 대한 참조 블록을 설정된 6 개의 회전 각도(±10°, ±20°, ±30)으로 회전 시키고 각 회전 각도에서의 부호화 비용을 계산하여 6 개의 회전 움직임 추정 비용을 계산한 후, 제 2 탐색 위치점에서의 직선 움직임 추정 비용과 6 개의 회전 움직임 추정 비용 중 가장 작은 비용(+10°의 회전 각도의 회전 움직임 추정 비용이 제 2 탐색 위치점에서의 최소 부호화 비용이라 가정)을 최소 부호화 비용을 결정한다. 다시, 제 1 탐색 위치점에서의 최소 부호화 비용인 제 1 탐색 위치점에 대한 직선 움직임 추정 비용과 제 2 탐색 위치점에서의 최소 부호화 비용인 +10°의 회전 각도의 회전 움직임 추정 비용 중 최소 부호화 비용(제 2 탐색 위치점에서의 최소 부호화 비용이 최소 부호화 비용이라 가정)을 갖는 참조 블록 즉, 제 2 탐색 위치점에서의 참조 블록의 회전 각도 +10°를 현재 블록의 회전 각도로서 결정하고, 제 2 탐색 위치점에서의 참조 블록과 현재 블록 간의 상대적인 위치의 차이를 현재 블록의 움직임 벡터로서 결정한다. 만약 회전 움직임 추정을 수행하지 않은 직선 움직임 추정 비용이 최소 부호화 비용으로 결정된 경우에는 움직임 벡터만이 출력되고 회전 각도 를 출력되지 않는다.An example of determining the minimum coding cost at each search position point assuming that two search position points are set in the search area, the rotation angle range is ± 30 °, and the magnitude of the rotation angle is 10 °. When it is determined that the rotational motion estimation is not performed for the first search location point, the linear motion estimation cost for the first search location point is determined as the minimum coding cost. In the case of the second search position point, when it is determined to perform the rotation motion estimation, the reference block for the second search position point is rotated by six set rotation angles (± 10 °, ± 20 °, ± 30) and each rotation After calculating the six rotational motion estimation costs by calculating the encoding cost at the angle, the smallest of the linear motion estimation cost and the six rotational motion estimation costs at the second search position point (the rotation of the rotation angle of + 10 °) Assuming that the motion estimation cost is the minimum coding cost at the second search location point, determine the minimum coding cost. Again, the minimum coding is performed between the linear motion estimation cost for the first search location point, which is the minimum coding cost at the first search location point, and the rotation motion estimation cost with a rotation angle of + 10 °, which is the minimum coding cost at the second search location point. Determine a reference block having a cost (assuming that the minimum coding cost at the second search point is the minimum coding cost), that is, the rotation angle + 10 ° of the reference block at the second search location point as the rotation angle of the current block, The difference of the relative position between the reference block and the current block at the second search position point is determined as the motion vector of the current block. If the linear motion estimation cost without the rotation motion estimation is determined as the minimum coding cost, only the motion vector is output and the rotation angle is not output.

단계 S870에서, 현재 블록의 움직임 벡터와 회전 각도가 결정되면, 예측부(210)는 움직임 벡터를 이용하여 참조 픽처에서 참조 블록을 검색하고 검색된 참조 블록을 회전 각도만큼 회전시켜 회전 움직임을 보상함으로써 예측 블록을 생성한다(S880).In operation S870, when the motion vector and the rotation angle of the current block are determined, the prediction unit 210 searches for the reference block in the reference picture using the motion vector, and predicts by compensating the rotational movement by rotating the retrieved reference block by the rotation angle. A block is generated (S880).

도 9는 본 발명의 제 3 실시예에 따른 복호화를 위한 인터 예측 장치의 전자적인 구성을 간략하게 나타낸 블록 구성도이다.9 is a block diagram schematically illustrating an electronic configuration of an inter prediction apparatus for decoding according to a third embodiment of the present invention.

본 발명의 제 3 실시예에 따른 복호화를 위한 인터 예측 장치는 도 4를 통해 전술한 영상 복호화 장치(400)의 예측부(440)로 구현될 수 있다. 이하에서는 본 발명의 제 3 실시예에 따른 복호화를 위한 인터 예측 장치를 예측부(440)라 약칭한다.The inter prediction apparatus for decoding according to the third embodiment of the present invention may be implemented by the prediction unit 440 of the image decoding apparatus 400 described above with reference to FIG. 4. Hereinafter, the inter prediction apparatus for decoding according to the third embodiment of the present invention is abbreviated as a predictor 440.

본 발명의 제 3 실시예에 따른 예측부(440)는 움직임 보상부(910) 및 참조 픽처 저장부(920)를 포함하여 구성된다.The predictor 440 according to the third embodiment of the present invention includes a motion compensator 910 and a reference picture storage 920.

움직임 보상부(910)는 복호화부(410)로부터 움직임 벡터 및 회전 정보를 수신하면, 회전 정보에 포함된 플래그를 이용하여 현재 블록이 회전 움직임 추정이 수행된 블록인지 여부를 확인하고 회전 움직임 추정이 수행된 블록인 경우에는 참조 픽처 저장부(920)에 저장된 참조 픽처에서 움직임 벡터가 지시하는 참조 블록을 회전 정보에 포함된 회전 각도만큼 회전시켜 예측 블록을 생성한다.When the motion compensator 910 receives the motion vector and the rotation information from the decoder 410, the motion compensator 910 checks whether or not the current block is a block on which the rotation motion estimation has been performed using a flag included in the rotation information. In the case of the performed block, the prediction block is generated by rotating the reference block indicated by the motion vector in the reference picture stored in the reference picture storage unit 920 by the rotation angle included in the rotation information.

참조 픽처 저장부(920)는 디블로킹 필터부(460)로부터 출력되는 디블로킹된 현재 블록을 픽처 단위로 저장하여 참조 픽처로서 저장한다.The reference picture storage unit 920 stores the deblocked current block output from the deblocking filter unit 460 in picture units and stores the picture as a reference picture.

도 10은 본 발명의 제 4 실시예에 따른 부호화를 위한 인터 예측 장치의 전자적인 구성을 간략하게 나타낸 블록 구성도이다.FIG. 10 is a block diagram schematically illustrating an electronic configuration of an inter prediction apparatus for encoding according to a fourth embodiment of the present invention.

본 발명의 제 4 실시예에 따른 부호화를 위한 인터 예측 장치 도 2를 통해 전술한 영상 부호화 장치(200)의 예측부(210)로 구현될 수 있다. 이하에서는 본 발명의 제 4 실시예에 따른 부호화를 위한 인터 예측 장치를 예측부(210)라 약칭한다.Inter prediction apparatus for encoding according to a fourth embodiment of the present invention Through FIG. 2, the prediction unit 210 of the image encoding apparatus 200 may be implemented. Hereinafter, the inter prediction apparatus for encoding according to the fourth embodiment of the present invention is abbreviated as a predictor 210.

본 발명의 제 4 실시예에 따른 예측부(210)는 움직임 추정부(1010), 움직임 보상부(1020), 참조 픽처 저장부(1030) 및 참조 픽처 회전부(1040)를 포함하여 구성될 수 있다.The predictor 210 according to the fourth embodiment of the present invention may include a motion estimator 1010, a motion compensator 1020, a reference picture storage unit 1030, and a reference picture rotation unit 1040. .

움직임 추정부(1010)는 하나 이상의 회전 참조 픽처의 참조 블록들 중에서 부호화 비용이 최소인 참조 블록을 결정하며, 결정된 참조 블록에 대한 움직임 벡터 및 결정된 참조 블록을 포함하는 참조 픽처를 식별하기 위한 참조 픽처 정보를 결정하며, 움직임 벡터, 참조 픽처 정보 등을 부호화부(250)로 출력한다. 즉, 움직임 추정부(1010)는 참조 픽처 회전부(1040)에 의해 회전되어 저장된 하나 이상의 참조 픽처의 참조 블록들 중에서 각 참조 블록에 대한 부호화 비용을 계산하고 비교하여 최소 부호화 비용을 갖는 참조 블록을 결정한다.The motion estimator 1010 determines a reference block having the lowest coding cost among the reference blocks of the one or more rotational reference pictures, and identifies a reference picture including a motion vector for the determined reference block and the determined reference block. The information is determined, and the motion vector, the reference picture information, and the like are output to the encoder 250. That is, the motion estimation unit 1010 calculates and compares encoding cost for each reference block among reference blocks of one or more reference pictures rotated by the reference picture rotation unit 1040 to determine a reference block having the minimum encoding cost. do.

여기서, 움직임 추정부(1010)는 현재 블록의 하나 이상의 이웃 블록 중 직선 움직임 보상을 수행한 이웃 블록의 움직임 벡터를 이용하여 예측 움직임 벡터를 결정할 수 있다. 또한, 움직임 추정부(1010)는 하나 이상의 참조 픽처에서 예측 움직임 벡터를 이용하여 탐색 영역을 설정하고 탐색 영역 내에서 부호화 비용이 최소인 참조 블록을 결정할 수 있다. 여기서, 부호화 비용은 현재 블록과 참조 블록의 차이를 기준으로 계산될 수 있는데, 차의 제곱 합(SSD: Sum of Squared Difference)과 차의 절대값 합(SAD : Sum of Absolute Difference) 등이 될 수 있다. 또한, 부호화 비용은 해당 참조 블록을 현재 블록의 예측 블록이라 가정하고 계산된 율-왜곡 비용(Rate-Distortion Cost)이 될 수도 있을 것이다. 또한, 회전 각도는 기 설정된 회전 각도 범위 내에서 결정될 수 있다.Here, the motion estimator 1010 may determine the predicted motion vector using the motion vector of the neighboring block that has performed linear motion compensation among one or more neighboring blocks of the current block. In addition, the motion estimator 1010 may set a search region using a predictive motion vector in one or more reference pictures, and determine a reference block having a minimum encoding cost in the search region. Here, the coding cost may be calculated based on the difference between the current block and the reference block, and may be a sum of squared difference (SSD) and a sum of absolute difference (SAD). have. In addition, the encoding cost may be a rate-distortion cost calculated by assuming that the reference block is a prediction block of the current block. In addition, the rotation angle may be determined within a preset rotation angle range.

움직임 보상부(1020)는 움직임 추정부(1010)에 의해 결정된 참조 픽처 정보에 의해 식별되는 각도만큼 참조 픽처가 회전된 회전 참조 픽처에서 움직임 추정부(1010)에 의해 결정된 움직임 벡터를 이용하여 움직임을 보상함으로써 현재 블록의 예측 블록을 생성하고 감산기(220)와 가산기(280)로 출력한다.The motion compensator 1020 performs motion using the motion vector determined by the motion estimator 1010 in the rotated reference picture in which the reference picture is rotated by the angle identified by the reference picture information determined by the motion estimator 1010. By compensating, a prediction block of the current block is generated and output to the subtractor 220 and the adder 280.

참조 픽처 회전부(1040)는 참조 픽처 저장부(1030)에 저장된 참조 픽처를 복수 개의 블록으로 분할하고 분할된 블록들을 기 설정된 하나 이상의 회전 각도로 회전시켜 하나 이상의 회전 참조 픽처를 생성한다. 즉, 회전 각도에 따라 복수 개의 회전 참조 픽처가 생성된다. 예를 들어, 회전 각도가 ±10°, ±20°인 경우, 회전 참조 픽처는 4 개가 생성된다. 각 회전 참조 픽처의 분할된 블록들은 해당 회전 각도만큼 회전되어 있다.The reference picture rotating unit 1040 divides the reference picture stored in the reference picture storage unit 1030 into a plurality of blocks and rotates the divided blocks at one or more preset rotation angles to generate one or more rotating reference pictures. That is, a plurality of rotational reference pictures are generated according to the rotational angle. For example, when the rotation angles are ± 10 ° and ± 20 °, four rotational reference pictures are generated. The divided blocks of each rotating reference picture are rotated by the corresponding rotation angle.

참조 픽처 저장부(1030)는 디블로킹 필터부(290)로부터 출력되는 디블로킹된 현재 블록을 픽처 단위로 저장하여 참조 픽처로서 저장한다.The reference picture storage unit 1030 stores the deblocked current block output from the deblocking filter unit 290 in picture units and stores the picture as a reference picture.

도 11은 본 발명의 제 4 실시예에 따른 부호화를 위한 인터 예측 방법을 설명하기 위한 순서도이다.11 is a flowchart illustrating an inter prediction method for encoding according to a fourth embodiment of the present invention.

본 발명의 제 4 실시예에 따른 예측부(210)는 참조 픽처를 하나 이상의 블록들로 분할하고(S1110), 참조 픽처에서 분할된 블록들을 하나 이상의 회전 각도만큼 회전시켜 하나 이상의 회전 참조 픽처를 생성한다(S1120). 예측부(210)는 생성된 하나 이상의 회전 참조 픽처를 이용하여 현재 블록의 움직임을 추정함으로써 하나 이상의 회전 참조 픽처의 참조 블록의 부호화 비용을 계산하고 비교하여 최소 부호화 비용을 갖는 참조 블록을 결정하고(S1130), 최소 부호화 비용을 갖는 참조 블록에 대한 참조 픽처 정보, 움직임 벡터 및 회전 각도를 결정한다(S1140). 예측부(210)는 결정된 참조 픽처 정보에 따른 참조 픽처에서 움직임 벡터에 의해 지시되는 참조 블록을 현재 블록의 예측 블록으로 출력한다(S1150).The prediction unit 210 according to the fourth embodiment of the present invention divides the reference picture into one or more blocks (S1110), and generates one or more rotating reference pictures by rotating the blocks divided from the reference picture by one or more rotation angles. (S1120). The prediction unit 210 calculates and compares encoding costs of reference blocks of one or more rotational reference pictures by estimating the motion of the current block using the generated one or more rotational reference pictures to determine a reference block having the minimum encoding cost ( In operation S1140, reference picture information, a motion vector, and a rotation angle of the reference block having the minimum coding cost are determined. The prediction unit 210 outputs the reference block indicated by the motion vector in the reference picture according to the determined reference picture information as the prediction block of the current block (S1150).

이상에서 전술한 본 발명의 실시예들은 후술할 또 다른 실시예와 같이 실현될 수도 있다. 본 발명의 제 5 실시예에 따른 영상 부호화 방법에 따르면, 영상 부호화 장치는 하나 이상의 참조 픽처를 이용하여 현재 블록의 회전 움직임을 포함하는 움직임을 추정하고, 추정된 움직임을 기초로 현재 블록의 움직임을 보상하여 예측 블록을 생성하며, 현재 블록과 예측 블록을 감산하여 잔차 블록을 생성하고 부호화할 수 있다. 여기서, 영상 부호화 장치는 움직임을 추정하는 데 있어서, 현재 블록의 움직임 보상을 위한 움직임 벡터 및 회전 정보를 생성할 수 있는데, 회전 정보는 움직임 벡터에 의해 지시되는 참조 블록의 회전 각도를 나타낼 수 있다.Embodiments of the present invention described above may be realized as another embodiment to be described later. According to an image encoding method according to a fifth embodiment of the present invention, an image encoding apparatus estimates a motion including a rotation movement of a current block by using one or more reference pictures, and based on the estimated motion, calculates a motion of the current block. A compensation block may be generated by compensating, and a residual block may be generated and encoded by subtracting the current block and the prediction block. Here, in estimating the motion, the image encoding apparatus may generate a motion vector and rotation information for motion compensation of the current block. The rotation information may indicate a rotation angle of the reference block indicated by the motion vector.

또한, 본 발명의 제 5 실시예에 따른 영상 복호화하는 방법에 따르면, 영상 부호화 장치는 비트스트림을 복호화하여 현재 블록의 잔차 블록을 생성하고 움직임 벡터와 회전 정보를 추출하고, 움직임 벡터와 회전 정보를 기초로 현재 블록의 회 전 움직임을 포함하는 움직임 보상을 수행하여 현재 블록의 예측 블록을 생성하며, 예측 블록과 잔차 블록을 가산하여 현재 블록을 복원할 수 있다. 여기서, 회전 정보는 전술한 바와 같이, 움직임 벡터에 의해 지시되는 참조 블록의 회전 각도를 나타낼 수 있다.In addition, according to the image decoding method according to the fifth embodiment of the present invention, the image encoding apparatus decodes a bitstream to generate a residual block of the current block, extract motion vector and rotation information, and extract motion vector and rotation information. Based on the motion compensation including the rotational motion of the current block, the prediction block of the current block is generated, and the prediction block and the residual block may be added to restore the current block. Here, the rotation information may indicate the rotation angle of the reference block indicated by the motion vector, as described above.

또한, 본 발명의 제 6 실시예에 따른 영상 부호화 방법에 따르면, 영상 부호화 장치는 하나 이상의 참조 픽처를 이용하여 현재 블록의 회전 움직임을 포함하는 움직임을 추정하고, 추정된 움직임을 기초로 현재 블록의 움직임을 보상하여 예측 블록을 생성하며, 현재 블록과 예측 블록을 감산하여 잔차 블록을 생성하고 부호화하는 부호화할 수 있다. 여기서, 영상 부호화 장치는 움직임을 추정하는 데 있어서, 현재 블록의 움직임 보상을 위한 움직임 벡터와 참조 픽처 정보를 생성할 수 있는데, 참조 픽처 정보는 소정 각도로 회신시킨 참조 픽처의 사용 여부를 나타내는 정보를 포함할 수 있으며, 회전 각도가 서로 다른 하나 이상의 참조 픽처 중 하나를 지시하는 참조 픽처 인덱스를 포함할 수 있다.Further, according to the image encoding method according to the sixth embodiment of the present invention, the image encoding apparatus estimates a motion including a rotational movement of the current block by using one or more reference pictures, and based on the estimated motion, The prediction block may be generated by compensating for the motion, and the encoding may be performed to generate and encode a residual block by subtracting the current block and the prediction block. Here, in estimating motion, the image encoding apparatus may generate a motion vector and reference picture information for motion compensation of the current block. The reference picture information includes information indicating whether to use a reference picture returned at a predetermined angle. It may include a reference picture index indicating one of one or more reference pictures having different rotation angles.

또한, 본 발명의 제 6 실시예에 따른 영상 부호화 방법에 다르면, 영상 부호화 장치는 비트스트림을 복호화하여 현재 블록의 잔차 블록을 생성하고 움직임 벡터와 참조 픽처 정보를 추출하고, 움직임 벡터와 참조 픽처 정보를 기초로 현재 블록의 회전 움직임을 포함하는 움직임 보상을 수행하여 현재 블록의 예측 블록을 생성하며, 예측 블록과 잔차 블록을 가산하여 현재 블록을 복원할 수 있다. 여기서, 참조 픽처 정보는 전술한 바와 같이, 소정 각도로 회전시킨 참조 픽처의 사용 여부를 나타내는 정보를 포함할 수 있으며, 회전 각도가 서로 다른 하나 이상의 참조 픽처들 중 하나를 지시하는 참조 픽처 인덱스를 포함할 수 있다.Also, according to the video encoding method according to the sixth embodiment of the present invention, the video encoding apparatus decodes the bitstream to generate a residual block of the current block, extract motion vector and reference picture information, and extract motion vector and reference picture information. The prediction block of the current block may be generated by performing motion compensation including the rotational movement of the current block, and the current block may be reconstructed by adding the prediction block and the residual block. Here, the reference picture information may include information indicating whether to use the reference picture rotated at a predetermined angle as described above, and includes a reference picture index indicating one of one or more reference pictures having different rotation angles. can do.

이상에서 설명한 바와 같이, 본 발명에 따르면, 영상의 직선 움직임뿐만 아니라 회전 움직임도 추정하고 보상함으로써 현재 블록을 예측할 수 있어, 예측의 정확도와 그를 통한 영상 부호화 및 복호화 효율을 향상시킬 수 있다.As described above, according to the present invention, the current block can be predicted by estimating and compensating not only the linear motion but also the rotational motion of the image, thereby improving the accuracy of prediction and the image encoding and decoding efficiency through the prediction.

또한, 본 발명에 따르면, 참조 픽처의 탐색 영역 내의 각 탐색 위치점에서 양자화 주파수 계수의 계수값을 이용하여 회전 움직임을 추정할지 여부를 결정하고 회전 움직임 추정이 필요한 경우에만 회전 움직임 추정을 할 수 있어, 회전 움직임 추정 및 보상에 따른 계산의 복잡도를 낮추어 계산량을 줄일 수 있다.Further, according to the present invention, it is possible to determine whether to estimate the rotational motion by using the coefficient value of the quantization frequency coefficient at each search position point in the search region of the reference picture, and to estimate the rotational motion only when the rotational motion estimation is necessary. In addition, the computational complexity can be reduced by lowering the complexity of the calculation according to the rotational motion estimation and compensation.

이상에서, 본 발명의 실시예를 구성하는 모든 구성 요소들이 하나로 결합되거나 결합되어 동작하는 것으로 설명되었다고 해서, 본 발명이 반드시 이러한 실시예에 한정되는 것은 아니다. 즉, 본 발명의 목적 범위 안에서라면, 그 모든 구성 요소들이 하나 이상으로 선택적으로 결합하여 동작할 수도 있다. 또한, 그 모든 구성 요소들이 각각 하나의 독립적인 하드웨어로 구현될 수 있지만, 각 구성 요소들의 그 일부 또는 전부가 선택적으로 조합되어 하나 또는 복수 개의 하드웨어에서 조합된 일부 또는 전부의 기능을 수행하는 프로그램 모듈을 갖는 컴퓨터 프로그램으로서 구현될 수도 있다. 그 컴퓨터 프로그램을 구성하는 코드들 및 코드 세그먼트들은 본 발명의 기술 분야의 당업자에 의해 용이하게 추론될 수 있을 것이다. 이러한 컴퓨터 프로그램은 컴퓨터가 읽을 수 있는 저장매체(Computer Readable Media)에 저장되어 컴퓨터에 의하여 읽혀지고 실행됨으로써, 본 발명의 실시예를 구현할 수 있다. 컴퓨터 프로그램의 저장매체로서는 자기 기록매체, 광 기록매체, 캐리어 웨이브 매체 등이 포함될 수 있다.While the present invention has been described in connection with what is presently considered to be the most practical and preferred embodiments, it is to be understood that the invention is not limited to the disclosed embodiments. That is, within the scope of the present invention, all of the components may be selectively coupled to one or more of them. In addition, although all of the components may be implemented as one independent hardware, some or all of the components may be selectively combined to perform a part or all of the functions in one or a plurality of hardware. As shown in FIG. Codes and code segments constituting the computer program may be easily inferred by those skilled in the art. Such a computer program can be stored in a computer-readable storage medium, readable and executed by a computer, thereby realizing an embodiment of the present invention. The storage medium of the computer program may include a magnetic recording medium, an optical recording medium, a carrier wave medium, and the like.

또한, 이상에서 기재된 "포함하다", "구성하다" 또는 "가지다" 등의 용어는, 특별히 반대되는 기재가 없는 한, 해당 구성 요소가 내재될 수 있음을 의미하는 것이므로, 다른 구성 요소를 제외하는 것이 아니라 다른 구성 요소를 더 포함할 수 있는 것으로 해석되어야 한다. 기술적이거나 과학적인 용어를 포함한 모든 용어들은, 다르게 정의되지 않는 한, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가진다. 사전에 정의된 용어와 같이 일반적으로 사용되는 용어들은 관련 기술의 문맥 상의 의미와 일치하는 것으로 해석되어야 하며, 본 발명에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.It is also to be understood that the terms such as " comprises, "" comprising," or "having ", as used herein, mean that a component can be implanted unless specifically stated to the contrary. But should be construed as including other elements. All terms, including technical and scientific terms, have the same meaning as commonly understood by one of ordinary skill in the art to which this invention belongs, unless otherwise defined. Commonly used terms, such as predefined terms, should be interpreted to be consistent with the contextual meanings of the related art, and are not to be construed as ideal or overly formal, unless expressly defined to the contrary.

이상의 설명은 본 발명의 기술 사상을 예시적으로 설명한 것에 불과한 것으로서, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자라면 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 다양한 수정 및 변형이 가능할 것이다. 따라서, 본 발명에 개시된 실시예들은 본 발명의 기술 사상을 한정하기 위한 것이 아니라 설명하기 위한 것이고, 이러한 실시예에 의하여 본 발명의 기술 사상의 범위가 한정되는 것은 아니다. 본 발명의 보호 범위는 아래의 청구범위에 의하여 해석되어야 하며, 그와 동등한 범위 내에 있는 모든 기술 사상은 본 발명의 권리범위에 포함되는 것으로 해석되어야 할 것이다.The foregoing description is merely illustrative of the technical idea of the present invention, and various changes and modifications may be made by those skilled in the art without departing from the essential characteristics of the present invention. Therefore, the embodiments disclosed in the present invention are intended to illustrate rather than limit the scope of the present invention, and the scope of the technical idea of the present invention is not limited by these embodiments. The protection scope of the present invention should be interpreted by the following claims, and all technical ideas within the equivalent scope should be interpreted as being included in the scope of the present invention.

이상에서 설명한 바와 같이 본 발명은 영상의 현재 블록을 예측할 때 현재 블록의 움직임을 효율적으로 추정하고 보상하여 현재 블록을 예측하는 방법 및 장치와 그를 이용하여 영상을 부호화하거나 복호화하는 장치 및 방법 분야에 적용되어, 영상의 회전 움직임을 효율적으로 추정하고 보상함으로써 부호화 및 복호화를 위한 영상의 예측 정확도를 향상시킬 수 있어 부호화 및 복호화 효율을 향상시킬 수 있는 효과를 발생하는 매우 유용한 발명이다.As described above, the present invention is applied to a method and apparatus for predicting a current block by efficiently estimating and compensating the motion of a current block when predicting a current block of an image, and an apparatus and method for encoding or decoding an image using the same. Thus, by effectively estimating and compensating for the rotational motion of the image, the prediction accuracy of the image for encoding and decoding can be improved, thereby generating an effect of improving the encoding and decoding efficiency.

도 1은 참조 블록에서 매크로 블록을 탐색하는 과정을 나타낸 예시도,1 is an exemplary diagram illustrating a process of searching for a macro block in a reference block;

도 2는 본 발명의 제 1 실시예에 따른 영상 부호화 장치의 전자적인 구성을 간략하게 나타낸 블록 구성도,2 is a block diagram schematically illustrating an electronic configuration of a video encoding apparatus according to a first embodiment of the present invention;

도 3은 본 발명의 제 1 실시예에 따른 영상 부호화 방법을 설명하기 위한 순서도,3 is a flowchart illustrating a video encoding method according to a first embodiment of the present invention;

도 4는 본 발명의 제 2 실시예에 따른 영상 복호화 장치의 전자적인 구성을 간략하게 나타낸 블록 구성도,4 is a block diagram schematically illustrating an electronic configuration of an image decoding apparatus according to a second embodiment of the present invention;

도 5는 본 발명의 제 2 실시예에 따른 영상 복호화 방법을 설명하기 위한 순서도,5 is a flowchart illustrating an image decoding method according to a second embodiment of the present invention;

도 6은 본 발명의 제 3 실시예에 따른 부호화를 위한 인터 예측 장치의 전자적인 구성을 간략하게 타나낸 블록 구성도,6 is a block diagram schematically illustrating an electronic configuration of an inter prediction apparatus for encoding according to a third embodiment of the present invention;

도 7은 본 발명의 제 3 실시예에 따른 움직임 추정부를 간략하게 나타낸 블록 구성도,7 is a block diagram schematically illustrating a motion estimation unit according to a third embodiment of the present invention;

도 8은 본 발명의 제 3 실시예에 따른 부호화를 위한 인터 예측 방법을 설명하기 위한 순서도,8 is a flowchart illustrating an inter prediction method for encoding according to a third embodiment of the present invention;

도 9는 본 발명의 제 3 실시예에 따른 복호화를 위한 인터 예측 장치의 전자적인 구성을 간략하게 나타낸 블록 구성도,9 is a block diagram schematically illustrating an electronic configuration of an inter prediction apparatus for decoding according to a third embodiment of the present invention;

도 10은 본 발명의 제 4 실시예에 따른 부호화를 위한 인터 예측 장치의 전자적인 구성을 간략하게 나타낸 블록 구성도,10 is a block diagram schematically illustrating an electronic configuration of an inter prediction apparatus for encoding according to a fourth embodiment of the present invention;

도 11은 본 발명의 제 4 실시예에 따른 부호화를 위한 인터 예측 방법을 설명하기 위한 순서도,11 is a flowchart illustrating an inter prediction method for encoding according to a fourth embodiment of the present invention;

도 12는 본 발명에 따라 예측 움직임 벡터를 결정하는 과정을 설명하기 위한 예시도이다.12 is an exemplary view for explaining a process of determining a predicted motion vector according to the present invention.

Claims (22)

영상을 부호화하는 장치에 있어서,In the apparatus for encoding a video, 참조 픽처로부터 현재 블록의 회전 움직임을 예측하여 예측 블록을 생성하는 예측부;A predictor configured to predict a rotational movement of the current block from the reference picture to generate a predicted block; 상기 현재 블록에서 상기 예측 블록을 감산하여 잔차 블록을 생성하는 감산부;A subtractor for subtracting the prediction block from the current block to generate a residual block; 상기 잔차 블록을 주파수 영역으로 변환하는 변환부;A transformer for converting the residual block into a frequency domain; 상기 변환된 잔차 블록을 양자화하는 양자화부; 및A quantizer for quantizing the transformed residual block; And 상기 양자화된 잔차 블록 및 상기 회전 움직임에 대한 회전 움직임 정보를 부호화함으로써 비트스트림을 출력하는 부호화부를 포함하되,An encoder which outputs a bitstream by encoding the quantized residual block and rotation motion information about the rotation motion, 상기 회전 움직임 정보는 상기 현재 블록이 회전 움직임을 예측하는 블록임을 지시하는 정보 및 상기 참조 픽처의 회전 각도를 지시하는 정보를 포함하는 것을 특징으로 하는 영상 부호화 장치.The rotation motion information includes information indicating that the current block is a block for predicting rotation motion and information indicating a rotation angle of the reference picture. 제 1 항에 있어서 상기 부호화부는,The method of claim 1, wherein the encoding unit, 상기 회전 움직임을 예측하기 위해 참조하는 참조 픽처의 식별 정보를 추가로 부호화하여 상기 비트스트림을 출력하는 것을 특징으로 하는 영상 부호화 장치.And encoding the identification information of the reference picture referred to for predicting the rotational motion to output the bitstream. 제 2 항에 있어서,The method of claim 2, 상기 예측부는 상기 현재 블록의 직선 움직임을 추가로 예측하여 상기 예측 블록을 생성하고,The prediction unit further predicts the linear motion of the current block to generate the prediction block, 상기 부호화부는 상기 직선 움직임에 대응하는 움직임 벡터 정보를 추가로 부호화하여 상기 비트스트림을 출력하는 것을 특징으로 영상 부호화 장치.The encoder encodes the motion vector information corresponding to the linear motion, and outputs the bitstream. 제 1 항에 있어서, 상기 예측부는,The method of claim 1, wherein the prediction unit, 상기 회전 각도에 따라 상기 참조 픽처의 참조 영역을 회전한 회전 참조 픽처로부터 상기 현재 블록의 직선 움직임을 예측하는 것을 특징으로 하는 영상 부호화 장치.And a linear motion of the current block is predicted from the rotated reference picture which rotates the reference area of the reference picture according to the rotational angle. 제 4 항에 있어서,5. The method of claim 4, 상기 움직임 벡터 정보는 주변 블록의 움직임 벡터로부터 결정되는 예측 움직임 벡터와 상기 예측된 직선 움직임의 차이에 대응하는 차이 벡터를 포함하는 것을 특징으로 하는 영상 부호화 장치.And the motion vector information includes a difference vector corresponding to a difference between a predicted motion vector determined from a motion vector of a neighboring block and the predicted linear motion. 영상을 부호화 방법에 있어서, In the video encoding method, 참조 픽처로부터 현재 블록의 회전 움직임을 예측하여 예측 블록을 생성하는 예측 단계;A prediction step of predicting rotational movement of the current block from the reference picture to generate a prediction block; 상기 현재 블록에서 상기 예측 블록을 감산하여 잔차 블록을 생성하는 감산 단계;Subtracting the prediction block from the current block to generate a residual block; 상기 잔차 블록을 주파수 영역으로 변환하는 변환 단계;Transforming the residual block into a frequency domain; 상기 변환된 잔차 블록을 양자화하는 양자화 단계; 및A quantization step of quantizing the transformed residual block; And 상기 양자화된 잔차 블록 및 상기 회전 움직임에 대한 회전 움직임 정보를 부호화함으로써 비트스트림을 출력하는 부호화 단계An encoding step of outputting a bitstream by encoding the quantized residual block and rotation motion information about the rotation motion 를 포함하고,Including, 상기 회전 움직임 정보는 상기 현재 블록이 회전 움직임을 예측하는 블록임을 지시하는 정보 및 상기 참조 픽처의 회전 각도를 지시하는 정보를 포함하는 것을 특징으로 하는 영상 부호화 방법.The rotation motion information includes information indicating that the current block is a block for predicting rotation motion and information indicating a rotation angle of the reference picture. 영상을 복호화하는 장치에 있어서,In the apparatus for decoding an image, 비트스트림을 복호화하여 현재 블록의 잔차 블록 및 회전 움직임 정보를 추출하되, 상기 회전 움직임 정보는 상기 현재 블록이 회전 움직임을 예측하는 블록임을 지시하는 정보 및 상기 현재 블록이 참조하는 참조 픽처의 회전 각도를 지시하는 정보를 포함하는 복호화부;Residual blocks and rotational motion information of the current block are extracted by decoding the bitstream, wherein the rotational motion information indicates information indicating that the current block is a block for predicting rotational motion and a rotation angle of a reference picture referenced by the current block. A decoder including information indicating; 상기 잔차 블록을 역 양자화하는 역 양자화부;An inverse quantizer for inversely quantizing the residual block; 상기 역 양자화된 잔차 블록을 역 변환하는 역 변환부;An inverse transform unit for inversely transforming the inverse quantized residual block; 상기 회전 움직임 정보를 이용하여 상기 참조 픽처로부터 상기 현재 블록의 예측 블록을 생성하는 예측부; 및A prediction unit generating a prediction block of the current block from the reference picture using the rotation motion information; And 상기 역 변환된 잔차 블록과 상기 예측 블록을 가산하여 상기 현재 블록을 복원하는 가산부An adder configured to add the inverse transformed residual block and the prediction block to restore the current block; 를 포함하는 것을 특징으로 하는 영상 복호화 장치.Video decoding apparatus comprising a. 제 7 항에 있어서,The method of claim 7, wherein 상기 복호화부는 상기 회전 움직임을 예측하기 위해 참조하는 참조 픽처의 식별 정보를 추가로 추출하는 것을 특징으로 하는 영상 복호화 장치.And the decoder further extracts identification information of a reference picture referenced to predict the rotational motion. 제 7 항에 있어서,The method of claim 7, wherein 상기 복호화부는 상기 현재 블록의 직선 움직임에 대응하는 움직임 벡터 정보를 추가로 추출하고,The decoder further extracts motion vector information corresponding to the linear motion of the current block, 상기 예측부는, 상기 움직임 벡터 정보 및 상기 회전 움직임 정보에 따라 상기 현재 블록의 직선 움직임 및 회전 움직임을 예측하여 상기 예측 블록을 생성하는 것을 특징으로 하는 영상 복호화 장치.And the prediction unit generates the prediction block by predicting the linear motion and the rotational motion of the current block according to the motion vector information and the rotation motion information. 영상을 복호화하는 방법에 있어서,In the method of decoding an image, 비트스트림을 복호화하여 현재 블록의 잔차 블록 및 회전 움직임 정보를 추출하되, 상기 회전 움직임 정보는 상기 현재 블록이 회전 움직임을 예측하는 블록임을 지시하는 정보 및 상기 현재 블록이 참조하는 참조 픽처의 회전 각도를 지시하는 정보를 포함하는 복호화 단계;Residual blocks and rotational motion information of the current block are extracted by decoding the bitstream, wherein the rotational motion information indicates information indicating that the current block is a block for predicting rotational motion and a rotation angle of a reference picture referenced by the current block. A decoding step including indicating information; 상기 잔차 블록을 역 양자화하는 역 양자화 단계;An inverse quantization step of inversely quantizing the residual block; 상기 역 양자화된 잔차 블록을 역 변환하는 역 변환 단계;Inverse transforming the inverse quantized residual block; 상기 회전 움직임 정보를 이용하여 상기 참조 픽처로부터 상기 현재 블록의 예측 블록을 생성하는 예측 단계; 및A prediction step of generating a prediction block of the current block from the reference picture using the rotation motion information; And 상기 역 변환된 잔차 블록과 상기 예측 블록을 가산하여 상기 현재 블록을 복원하는 가산 단계An addition step of reconstructing the current block by adding the inverse transformed residual block and the prediction block 를 포함하는 것을 특징으로 하는 영상 복호화 방법.Image decoding method comprising a. 영상의 현재 블록을 인터 예측하는 장치에 있어서,An apparatus for inter prediction of a current block of an image, 참조 픽처를 저장하는 참조 픽처 저장부;A reference picture storage unit for storing a reference picture; 예측 움직임 벡터를 결정하여 상기 참조 픽처에서 탐색 영역을 설정하고, 상기 탐색 영역 내의 하나 이상의 탐색 위치점에 대한 참조 블록을 하나 이상의 회전 각도만큼 회전하여 부호화 비용을 계산하되, 최소 부호화 비용을 갖는 탐색 위치점에서의 참조 블록에 대한 움직임 벡터 및 회전 각도를 상기 현재 블록의 움직임 벡터 및 회전 각도로서 결정하는 움직임 추정부; 및Determine a prediction motion vector to set a search region in the reference picture, and calculate a coding cost by rotating a reference block for one or more search position points in the search region by one or more rotation angles, wherein the search position has a minimum coding cost A motion estimator for determining a motion vector and a rotation angle with respect to a reference block at a point as the motion vector and the rotation angle of the current block; And 상기 참조 픽처에서 상기 움직임 벡터가 지시하는 참조 블록을 상기 회전 각도에 의해 지시되는 회전 각도만큼 회전시켜 상기 현재 블록의 예측 블록을 출력하는 움직임 보상부A motion compensator configured to rotate the reference block indicated by the motion vector in the reference picture by a rotation angle indicated by the rotation angle to output a prediction block of the current block 를 포함하는 것을 특징으로 하는 인터 예측 장치.Inter prediction apparatus comprising a. 제 11 항에 있어서, 상기 움직임 추정부는,The method of claim 11, wherein the motion estimation unit, 상기 예측 움직임 벡터를 결정하는 예측 움직임 벡터 결정부;A predicted motion vector determiner configured to determine the predicted motion vector; 상기 예측 움직임 벡터를 이용하여 상기 탐색 영역을 설정하고 상기 탐색 영역 내에서 상기 하나 이상의 탐색 위치점을 설정하는 탐색 위치 설정부;A search position setting unit configured to set the search region using the predicted motion vector and to set the at least one search position point in the search region; 상기 하나 이상의 회전 각도를 설정하는 회전 각도 설정부;A rotation angle setting unit configured to set the one or more rotation angles; 상기 하나 이상의 탐색 위치점에 대한 참조 블록에 대한 중심점을 설정하는 중심점 설정부;A center point setting unit for setting a center point of a reference block with respect to the at least one search position point; 상기 하나 이상의 탐색 위치점에 대한 참조 블록을 상기 중심점을 기준으로 상기 하나 이상의 회전 각도로 회전시키는 블록 회전부;A block rotation unit configured to rotate the reference block for the one or more search position points at the one or more rotation angles with respect to the center point; 상기 하나 이상의 탐색 위치점마다 상기 하나 이상의 회전 각도로 회전된 참조 블록에 대해 부호화 비용을 계산하는 부호화 비용 계산부; 및An encoding cost calculator configured to calculate an encoding cost for the reference block rotated by the one or more rotation angles for each of the one or more search position points; And 상기 최소 부호화 비용을 갖는 탐색 위치점에서의 참조 블록에 대한 움직임 벡터 및 회전 각도를 상기 움직임 벡터 및 상기 회전 각도로서 결정하는 움직임 벡터 결정부A motion vector determiner that determines a motion vector and a rotation angle with respect to a reference block at the search location point having the minimum coding cost as the motion vector and the rotation angle 를 포함하는 것을 특징으로 하는 인터 예측 장치.Inter prediction apparatus comprising a. 영상을 부호화하는 방법에 있어서,In the method of encoding an image, 하나 이상의 참조 픽처를 이용하여 현재 블록의 회전 움직임을 포함하는 움직임을 추정하는 움직임 추정 단계;A motion estimation step of estimating a motion including a rotational motion of the current block using one or more reference pictures; 상기 추정된 움직임을 기초로 상기 현재 블록의 움직임을 보상하여 예측 블록을 생성하는 움직임 보상 단계; 및A motion compensation step of generating a prediction block by compensating for the motion of the current block based on the estimated motion; And 상기 현재 블록과 상기 예측 블록을 감산하여 잔차 블록을 생성하고 부호화하는 부호화 단계An encoding step of generating and encoding a residual block by subtracting the current block and the prediction block 를 포함하되, 상기 움직임 추정 단계는 상기 현재 블록의 움직임 보상을 위 한 움직임 벡터 및 회전 정보를 생성하는 것을 특징으로 하는 영상 부호화 방법.Wherein the motion estimation step generates motion vectors and rotation information for motion compensation of the current block. 제 13 항에 있어서, 상기 회전 정보는,The method of claim 13, wherein the rotation information, 상기 움직임 벡터에 의해 지시되는 참조 블록의 회전 각도를 나타내는 것을 특징으로 하는 영상 부호화 방법.And a rotation angle of the reference block indicated by the motion vector. 영상을 부호화하는 방법에 있어서,In the method of encoding an image, 하나 이상의 참조 픽처를 이용하여 현재 블록의 회전 움직임을 포함하는 움직임을 추정하는 움직임 추정 단계;A motion estimation step of estimating a motion including a rotational motion of the current block using one or more reference pictures; 상기 추정된 움직임을 기초로 상기 현재 블록의 움직임을 보상하여 예측 블록을 생성하는 움직임 보상 단계; 및A motion compensation step of generating a prediction block by compensating for the motion of the current block based on the estimated motion; And 상기 현재 블록과 상기 예측 블록을 감산하여 잔차 블록을 생성하고 부호화하는 부호화 단계An encoding step of generating and encoding a residual block by subtracting the current block and the prediction block 를 포함하되, 상기 움직임 추정 단계는 상기 현재 블록의 움직임 보상을 위한 움직임 벡터와 참조 픽처 정보를 생성하는 것을 특징으로 하는 영상 부호화 방법.Wherein the motion estimation step generates motion vectors and reference picture information for motion compensation of the current block. 제 15 항에 있어서, 상기 참조 픽처 정보는,The method of claim 15, wherein the reference picture information, 소정 각도로 회신시킨 참조 픽처의 사용 여부를 나타내는 정보인 것을 특징으로 하는 영상 부호화 방법.And information indicating whether or not to use a reference picture returned at a predetermined angle. 제 15 항에 있어서, 상기 참조 픽처 정보는,The method of claim 15, wherein the reference picture information, 회전 각도가 서로 다른 하나 이상의 참조 픽처 중 하나를 지시하는 참조 픽처 인덱스를 포함하는 것을 특징으로 하는 영상 부호화 방법.And a reference picture index indicating one of one or more reference pictures having different rotation angles. 영상을 복호화하는 방법에 있어서,In the method of decoding an image, 비트스트림을 복호화하여 현재 블록의 잔차 블록을 생성하고 움직임 벡터와 회전 정보를 추출하는 복호화 단계;A decoding step of decoding the bitstream to generate a residual block of the current block and extracting motion vectors and rotation information; 상기 움직임 벡터와 상기 회전 정보를 기초로 상기 현재 블록의 회전 움직임을 포함하는 움직임 보상을 수행하여 상기 현재 블록의 예측 블록을 생성하는 움직임 보상 단계; 및A motion compensation step of generating a prediction block of the current block by performing motion compensation including a rotational motion of the current block based on the motion vector and the rotation information; And 상기 예측 블록과 상기 잔차 블록을 가산하여 상기 현재 블록을 복원하는 복원 단계Restoring the current block by adding the prediction block and the residual block; 를 포함하는 것을 특징으로 하는 영상 복호화 방법.Image decoding method comprising a. 제 18 항에 있어서, 상기 회전 정보는,The method of claim 18, wherein the rotation information, 상기 움직임 벡터에 의해 지시되는 참조 블록의 회전 각도를 나타내는 것을 특징으로 하는 영상 복호화 방법.And a rotation angle of the reference block indicated by the motion vector. 영상을 복호화하는 방법에 있어서,In the method of decoding an image, 비트스트림을 복호화하여 현재 블록의 잔차 블록을 생성하고 움직임 벡터와 참조 픽처 정보를 추출하는 복호화 단계;A decoding step of decoding the bitstream to generate a residual block of the current block and extracting a motion vector and reference picture information; 상기 움직임 벡터와 상기 참조 픽처 정보를 기초로 상기 현재 블록의 회전 움직임을 포함하는 움직임 보상을 수행하여 상기 현재 블록의 예측 블록을 생성하는 움직임 보상 단계; 및A motion compensation step of generating a prediction block of the current block by performing motion compensation including a rotational motion of the current block based on the motion vector and the reference picture information; And 상기 예측 블록과 상기 잔차 블록을 가산하여 상기 현재 블록을 복원하는 복원 단계Restoring the current block by adding the prediction block and the residual block; 를 포함하는 것을 특징으로 하는 영상 복호화 방법.Image decoding method comprising a. 제 20 항에 있어서, 상기 참조 픽처 정보는,The method of claim 20, wherein the reference picture information, 소정 각도로 회전시킨 참조 픽처의 사용 여부를 나타내는 정보를 포함하는 것을 특징으로 하는 영상 복호화 방법.And information indicating whether to use the reference picture rotated at a predetermined angle. 제 20 항에 있어서, 상기 참조 픽처 정보는,The method of claim 20, wherein the reference picture information, 회전 각도가 서로 다른 하나 이상의 참조 픽처들 중 하나를 지시하는 참조 픽처 인덱스를 포함하는 것을 특징으로 하는 영상 복호화 방법.And a reference picture index indicating one of one or more reference pictures having different rotation angles.
KR1020080088910A 2008-09-09 2008-09-09 Inter Prediction Apparatus of Considering Rotational Motion and Video Encoding/Decoding Method and Apparatus Using Same Expired - Fee Related KR101341998B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020080088910A KR101341998B1 (en) 2008-09-09 2008-09-09 Inter Prediction Apparatus of Considering Rotational Motion and Video Encoding/Decoding Method and Apparatus Using Same

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020080088910A KR101341998B1 (en) 2008-09-09 2008-09-09 Inter Prediction Apparatus of Considering Rotational Motion and Video Encoding/Decoding Method and Apparatus Using Same

Publications (2)

Publication Number Publication Date
KR20100030119A KR20100030119A (en) 2010-03-18
KR101341998B1 true KR101341998B1 (en) 2013-12-16

Family

ID=42180132

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020080088910A Expired - Fee Related KR101341998B1 (en) 2008-09-09 2008-09-09 Inter Prediction Apparatus of Considering Rotational Motion and Video Encoding/Decoding Method and Apparatus Using Same

Country Status (1)

Country Link
KR (1) KR101341998B1 (en)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101341993B1 (en) 2010-10-06 2013-12-16 에스케이텔레콤 주식회사 Method and Apparatus for Image Encoding/Decoding Using High Resolution Filter
WO2012047047A2 (en) * 2010-10-06 2012-04-12 에스케이텔레콤 주식회사 Method and apparatus for encoding/decoding video using high-precision filter
US10560678B2 (en) * 2016-11-09 2020-02-11 Mediatek Inc. Method and apparatus having video encoding function with syntax element signaling of rotation information of content-oriented rotation applied to 360-degree image content or 360-degree video content represented in projection format and associated method and apparatus having video decoding function

Also Published As

Publication number Publication date
KR20100030119A (en) 2010-03-18

Similar Documents

Publication Publication Date Title
KR101377660B1 (en) Motion Vector Encoding/Decoding Method and Apparatus Using Multiple Motion Vector Estimation and Video Encoding/Decoding Method and Apparatus Using Same
US9319714B2 (en) Intra prediction method and apparatus, and image encoding/decoding method and apparatus using same
US9571851B2 (en) Inter prediction method and apparatus using adjacent pixels, and image encoding/decoding method and apparatus using same
KR101681303B1 (en) Method and Apparatus for Encoding/Decoding of Video Data Using Partitioned-Block Prediction
US9602834B2 (en) Method and apparatus for encoding/decoding video using high-precision filter
KR20100041393A (en) Method and apparatus for encoding and decoding motion vector in plural number of reference pictures and video encoding/decoding method and apparatus using same
KR20130085838A (en) Video coding method and apparatus using weighted prediction
KR20130003718A (en) Method and apparatus for image encoding/decoding by fast coding unit mode decision
KR101418104B1 (en) Motion Vector Coding Method and Apparatus by Using Motion Vector Resolution Combination and Video Coding Method and Apparatus Using Same
KR20100042542A (en) Reference frame creating method and apparatus and video encoding/decoding method and apparatus using same
KR20080033813A (en) Data encoding / decoding method and apparatus
KR101432767B1 (en) Inter Prediction Method and Apparatus Using Motion Information Based Adjacent Pixels and Video Coding Method and Apparatus Using Same
KR20110033511A (en) Inter prediction method and apparatus using adjacent pixels and image encoding / decoding method and apparatus using same
KR101341998B1 (en) Inter Prediction Apparatus of Considering Rotational Motion and Video Encoding/Decoding Method and Apparatus Using Same
US9319710B2 (en) Video encoding and decoding apparatus and method
KR20100035243A (en) Quantization parameter determination method and apparatus and video encoding/decoding method and apparatus
KR101527148B1 (en) Inter prediction device and image encoding / decoding device and method using the same
KR20130023444A (en) Apparatus and method for video encoding/decoding using multi-step inter prediction
KR20110023023A (en) Motion vector encoding / decoding method and apparatus for video encoding and image encoding / decoding method using the same
KR101590493B1 (en) Method and Apparatus for Encoding and Decoding Video by Using Inter Prediction
KR101379189B1 (en) Video Coding Method and Apparatus by Using Filtering Motion Compensation Frame
KR20130098465A (en) Video encoding apparatus and method thereof, and video decoding apparatus and method thereof
KR101673026B1 (en) Method and Apparatus for Coding Competition-based Interleaved Motion Vector and Method and Apparatus for Encoding/Decoding of Video Data Thereof
KR101575616B1 (en) Method and Apparatus for Encoding and Decoding Motion Vector in Plural Number of Reference Pictures and Video Encoding/Decoding Method and Apparatus Using Same
KR101693284B1 (en) Method and Apparatus for Encoding/Decoding of Video Data Using Global Motion-based Enconding Structure

Legal Events

Date Code Title Description
PA0109 Patent application

St.27 status event code: A-0-1-A10-A12-nap-PA0109

PG1501 Laying open of application

St.27 status event code: A-1-1-Q10-Q12-nap-PG1501

PN2301 Change of applicant

St.27 status event code: A-3-3-R10-R13-asn-PN2301

St.27 status event code: A-3-3-R10-R11-asn-PN2301

A201 Request for examination
PA0201 Request for examination

St.27 status event code: A-1-2-D10-D11-exm-PA0201

D13-X000 Search requested

St.27 status event code: A-1-2-D10-D13-srh-X000

D14-X000 Search report completed

St.27 status event code: A-1-2-D10-D14-srh-X000

R18-X000 Changes to party contact information recorded

St.27 status event code: A-3-3-R10-R18-oth-X000

E902 Notification of reason for refusal
PE0902 Notice of grounds for rejection

St.27 status event code: A-1-2-D10-D21-exm-PE0902

P11-X000 Amendment of application requested

St.27 status event code: A-2-2-P10-P11-nap-X000

P13-X000 Application amended

St.27 status event code: A-2-2-P10-P13-nap-X000

E701 Decision to grant or registration of patent right
PE0701 Decision of registration

St.27 status event code: A-1-2-D10-D22-exm-PE0701

GRNT Written decision to grant
PR0701 Registration of establishment

St.27 status event code: A-2-4-F10-F11-exm-PR0701

PR1002 Payment of registration fee

St.27 status event code: A-2-2-U10-U11-oth-PR1002

Fee payment year number: 1

PG1601 Publication of registration

St.27 status event code: A-4-4-Q10-Q13-nap-PG1601

P22-X000 Classification modified

St.27 status event code: A-4-4-P10-P22-nap-X000

FPAY Annual fee payment

Payment date: 20161206

Year of fee payment: 4

PR1001 Payment of annual fee

St.27 status event code: A-4-4-U10-U11-oth-PR1001

Fee payment year number: 4

P22-X000 Classification modified

St.27 status event code: A-4-4-P10-P22-nap-X000

FPAY Annual fee payment

Payment date: 20171204

Year of fee payment: 5

PR1001 Payment of annual fee

St.27 status event code: A-4-4-U10-U11-oth-PR1001

Fee payment year number: 5

FPAY Annual fee payment

Payment date: 20181203

Year of fee payment: 6

PR1001 Payment of annual fee

St.27 status event code: A-4-4-U10-U11-oth-PR1001

Fee payment year number: 6

FPAY Annual fee payment

Payment date: 20190926

Year of fee payment: 7

PR1001 Payment of annual fee

St.27 status event code: A-4-4-U10-U11-oth-PR1001

Fee payment year number: 7

PR1001 Payment of annual fee

St.27 status event code: A-4-4-U10-U11-oth-PR1001

Fee payment year number: 8

PR1001 Payment of annual fee

St.27 status event code: A-4-4-U10-U11-oth-PR1001

Fee payment year number: 9

PR1001 Payment of annual fee

St.27 status event code: A-4-4-U10-U11-oth-PR1001

Fee payment year number: 10

PR1001 Payment of annual fee

St.27 status event code: A-4-4-U10-U11-oth-PR1001

Fee payment year number: 11

PC1903 Unpaid annual fee

St.27 status event code: A-4-4-U10-U13-oth-PC1903

Not in force date: 20241211

Payment event data comment text: Termination Category : DEFAULT_OF_REGISTRATION_FEE

PC1903 Unpaid annual fee

St.27 status event code: N-4-6-H10-H13-oth-PC1903

Ip right cessation event data comment text: Termination Category : DEFAULT_OF_REGISTRATION_FEE

Not in force date: 20241211