KR20090027091A - Method and apparatus for encoding/decoding moving picture - Google Patents
Method and apparatus for encoding/decoding moving picture Download PDFInfo
- Publication number
- KR20090027091A KR20090027091A KR1020070092296A KR20070092296A KR20090027091A KR 20090027091 A KR20090027091 A KR 20090027091A KR 1020070092296 A KR1020070092296 A KR 1020070092296A KR 20070092296 A KR20070092296 A KR 20070092296A KR 20090027091 A KR20090027091 A KR 20090027091A
- Authority
- KR
- South Korea
- Prior art keywords
- reference picture
- picture
- block
- current
- motion vector
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
- H04N19/51—Motion estimation or motion compensation
- H04N19/513—Processing of motion vectors
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
- H04N19/51—Motion estimation or motion compensation
- H04N19/573—Motion compensation with multiple frame prediction using two or more reference frames in a given prediction direction
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/59—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial sub-sampling or interpolation, e.g. alteration of picture size or resolution
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
Description
본 발명은 동영상을 부호화하는 방법 및 장치, 동영상을 복호화하는 방법 및 장치에 관한 것이다.The present invention relates to a method and apparatus for encoding a video, and a method and apparatus for decoding a video.
H.264/AVC(Advanced Video Coding) 규격은 MPEG(Moving Picture Experts Group)-4 및 H.263 등과 이전의 규격들에 비해 동영상 부호화 효율이 매우 높다. H.264/AVC 규격에서 제안된 여러 기술들 중에서 하나의 참조 픽처가 아닌, 다수의 참조 픽처들(multiple reference pictures)로부터 현재 픽처의 예측 픽처를 생성하는 기술은 다수의 참조 픽처들의 블록들 중에서 현재 픽처의 블록들과 가장 잘 매칭(matching)되는 블록을 찾도록 함으로써 동영상 부호화 결과의 전체적인 압축률을 향상시켰다. 도 1에는 다수의 참조 픽처들로부터 현재 픽처의 예측 픽처가 생성되는 모습이 도시되어 있다.The H.264 / Advanced Video Coding (AVC) standard has a much higher video encoding efficiency than the previous standards such as Moving Picture Experts Group (MPEG) -4, H.263, and the like. A technique for generating a predictive picture of a current picture from multiple reference pictures, rather than one reference picture among several techniques proposed in the H.264 / AVC specification, is currently available among blocks of multiple reference pictures. The overall compression ratio of the video encoding result is improved by finding a block that best matches the blocks of the picture. 1 shows a state in which a predictive picture of a current picture is generated from a plurality of reference pictures.
본 발명이 이루고자 하는 기술적 과제는 현재 픽처에 보다 더 가까운 참조 픽처를 이용하여 현재 픽처를 부호화하거나 복호화함으로써 동영상 부호화 및 복호화 효율을 향상시킬 수 있는 동영상 부호화 장치 및 방법, 동영상 복호화 방법 및 장치를 제공하는데 있다. 또한, 상기된 방법들을 컴퓨터에서 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록 매체를 제공하는데 있다.The present invention provides a video encoding apparatus and method, a video decoding method and apparatus for improving video encoding and decoding efficiency by encoding or decoding a current picture using a reference picture closer to the current picture. have. Further, the present invention provides a computer-readable recording medium having recorded thereon a program for executing the above-described methods on a computer.
본 발명이 이루고자 하는 기술적 과제는 상기된 바와 같은 기술적 과제들로 한정되지 않으며, 또 다른 기술적 과제들이 존재할 수 있다. 이것은 본 발명이 속하는 기술 분야에서 통상적인 지식을 가진 자들이라면 아래의 기재로부터 명확하게 이해될 수 있다. The technical problem to be achieved by the present invention is not limited to the above technical problems, and other technical problems may exist. This can be clearly understood by those skilled in the art from the following description.
상기 기술적 과제를 해결하기 위한 본 발명에 따른 동영상 부호화 방법은 동영상을 구성하는 픽처들 중 현재 픽처의 적어도 하나의 참조 픽처에 대하여 적어도 하나의 참조 픽처를 보간하거나 외삽하는 단계; 상기 참조 픽처 및 상기 보간되거나 외삽된 참조 픽처 중 적어도 하나를 기준으로 상기 현재 픽처의 움직임을 추정하는 단계; 상기 현재 픽처의 움직임 추정을 이용하여 상기 적어도 하나의 참조 픽처로부터 상기 현재 픽처의 예측 픽처를 생성하는 단계; 및 상기 현재 픽처와 상기 생성된 예측 픽처간의 차이를 부호화하는 단계를 포함한다. According to an aspect of the present invention, there is provided a video encoding method comprising: interpolating or extrapolating at least one reference picture with respect to at least one reference picture of a current picture among pictures constituting a video; Estimating a motion of the current picture based on at least one of the reference picture and the interpolated or extrapolated reference picture; Generating a predictive picture of the current picture from the at least one reference picture using motion estimation of the current picture; And encoding a difference between the current picture and the generated predictive picture.
상기 다른 기술적 과제를 해결하기 위하여, 본 발명은 상기된 동영상 부호화 방법을 컴퓨터에서 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록 매체를 제공한다. In order to solve the above other technical problem, the present invention provides a computer readable recording medium having recorded thereon a program for executing the above video encoding method on a computer.
상기 또 다른 기술적 과제를 해결하기 위한 본 발명에 따른 동영상 부호화 장치는 동영상을 구성하는 픽처들 중 현재 픽처의 적어도 하나의 참조 픽처에 대하여 적어도 하나의 참조 픽처를 보간하거나 외삽하는 보간/외삽부; 상기 참조 픽처 및 상기 보간되거나 외삽된 참조 픽처 중 적어도 하나를 기준으로 상기 현재 픽처의 움직임을 추정하는 움직임 추정부; 상기 현재 픽처의 움직임 추정을 이용하여 상기 적어도 하나의 참조 픽처로부터 상기 현재 픽처의 예측 픽처를 생성하는 움직임 보상부; 및 상기 현재 픽처와 상기 생성된 예측 픽처간의 차이를 부호화하는 부호화부를 포함한다.According to another aspect of the present invention, there is provided a video encoding apparatus comprising: an interpolation / extrapolation unit for interpolating or extrapolating at least one reference picture with respect to at least one reference picture of a current picture among pictures constituting a video; A motion estimator estimating a motion of the current picture based on at least one of the reference picture and the interpolated or extrapolated reference picture; A motion compensator configured to generate a predictive picture of the current picture from the at least one reference picture using the motion estimation of the current picture; And an encoder for encoding a difference between the current picture and the generated prediction picture.
상기 또 다른 기술적 과제를 해결하기 위한 본 발명에 따른 동영상 복호화 방법은 비트스트림을 복호화함으로써 동영상을 구성하는 픽처들 중 현재 픽처와 상기 현재 픽처의 예측 픽처간의 차이를 복원하는 단계; 상기 현재 픽처의 적어도 하나의 참조 픽처에 대하여 적어도 하나의 참조 픽처를 보간하거나 외삽하는 단계; 상기 참조 픽처 및 상기 보간되거나 외삽된 참조 픽처 중 적어도 하나로부터 상기 현재 픽처의 예측 픽처를 생성하는 단계; 및 상기 생성된 예측 픽처에 상기 복원된 차이를 가산함으로써 상기 현재 픽처의 복원 픽처를 생성하는 단계를 포함한다. According to another aspect of the present invention, there is provided a video decoding method comprising reconstructing a difference between a current picture and a prediction picture of the current picture among pictures constituting a video by decoding a bitstream; Interpolating or extrapolating at least one reference picture with respect to at least one reference picture of the current picture; Generating a predictive picture of the current picture from at least one of the reference picture and the interpolated or extrapolated reference picture; And generating a reconstructed picture of the current picture by adding the reconstructed difference to the generated predicted picture.
상기 또 다른 기술적 과제를 해결하기 위하여, 본 발명은 상기된 동영상 복호화 방법을 컴퓨터에서 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록 매체를 제공한다. In order to solve the another technical problem, the present invention provides a computer-readable recording medium recording a program for executing the above-described video decoding method on a computer.
상기 또 다른 기술적 과제를 해결하기 위한 본 발명에 따른 동영상 복호화 장치는 비트스트림을 복호화함으로써 동영상을 구성하는 픽처들 중 현재 픽처와 상기 현재 픽처의 예측 픽처간의 차이를 복원하는 복호화부; 상기 현재 픽처의 적어도 하나의 참조 픽처에 대하여 적어도 하나의 참조 픽처를 보간하거나 외삽하는 보간/외삽부; 상기 참조 픽처 및 상기 보간되거나 외삽된 참조 픽처 중 적어도 하나로부터 상기 현재 픽처의 예측 픽처를 생성하는 움직임 보상부; 및 상기 생성된 예측 픽처에 상기 복원된 차이를 가산함으로써 상기 현재 픽처의 복원 픽처를 생성하는 가산기를 포함한다.According to another aspect of the present invention, there is provided a video decoding apparatus comprising: a decoder configured to restore a difference between a current picture and a predictive picture of the current picture among pictures constituting a video by decoding a bitstream; An interpolation / extrapolation unit for interpolating or extrapolating at least one reference picture with respect to at least one reference picture of the current picture; A motion compensation unit generating a predictive picture of the current picture from at least one of the reference picture and the interpolated or extrapolated reference picture; And an adder for generating a reconstructed picture of the current picture by adding the reconstructed difference to the generated predicted picture.
본 발명에 따르면, 동영상 부호화 과정 및 동영상 복호화 과정에서 기존의 참조 픽처에 대하여 새로운 참조 픽처를 보간하거나 외삽함으로써 참조 픽처들의 개수를 증가시킬 수 있다. 이와 같이, 참조 픽처들의 개수가 증가됨으로 인하여 현재 픽처에 보다 더 가까운 참조 픽처가 존재할 확률이 높아지게 된다. 즉, 새롭게 보간되거나 외삽된 참조 픽처가 기존 참조 픽처에 비해 현재 픽처에 보다 잘 매칭되는 경우, 종래 방식에 비해 동영상 부호화 및 복호화 효율이 크게 향상될 수 있다. According to the present invention, the number of reference pictures can be increased by interpolating or extrapolating a new reference picture with respect to an existing reference picture in a video encoding process and a video decoding process. As described above, as the number of reference pictures increases, the probability that there is a reference picture closer to the current picture increases. That is, when the newly interpolated or extrapolated reference picture is better matched with the current picture than the existing reference picture, the video encoding and decoding efficiency may be greatly improved as compared with the conventional method.
이하에서는 도면을 참조하여 본 발명의 바람직한 실시예들을 상세히 설명한다.Hereinafter, exemplary embodiments of the present invention will be described in detail with reference to the accompanying drawings.
도 2는 본 발명의 바람직한 일 실시예에 따른 동영상 부호화 장치의 구성도 이다.2 is a block diagram of a video encoding apparatus according to an embodiment of the present invention.
도 2를 참조하면, 본 실시예에 따른 동영상 부호화 장치는 움직임 추정부(21), 움직임 보상부(22), 인트라 예측부(23), 감산기(24), 변환부(25), 양자화부(26), 엔트로피 부호화부(27), 역양자화부(28), 역변환부(29), 가산기(210), 보간/외삽부(211) 및 참조 픽처 버퍼(212)로 구성된다. 특히, 이하에 기재된 "픽처(picture)"라는 용어는 프레임(frame) 등과 같은 동등한 의미를 갖는 다른 용어로 대치되어 사용될 수 있고, "블록(block)"의 크기는 16x16, 16x8, 8x16, 8x8, 4x4 등의 다양한 크기가 될 수 있음은 본 실시예가 속하는 기술 분야에서 통상의 지식을 가진 자라면 이해할 수 있다. Referring to FIG. 2, the video encoding apparatus according to the present embodiment includes a
움직임 추정부(21)는 참조 픽처 버퍼(212)에 저장된 참조 픽처들 중 적어도 하나의 참조 픽처를 기준으로 동영상을 구성하는 픽처들 중 외부로부터 현재 입력된 픽처(이하 "현재 픽처"라 한다)의 움직임을 추정(estimate)한다. 보다 상세하게 설명하면, 움직임 추정부(21)는 현재 픽처를 구성하는 블록들 중 인터 모드(inter mode)에 해당하는 블록들 각각에 대하여 참조 픽처 버퍼(212)에 저장된 참조 픽처들 중 현재 픽처의 블록에 가장 잘 매칭(matching)되는 참조 픽처의 블록을 결정하고, 이와 같이 결정된 참조 픽처의 블록과 현재 픽처의 블록간의 변위를 나타내는 움직임 벡터(motion vector)를 산출한다. 특히, 본 실시예에 따르면, 참조 픽처 버퍼(212)에 저장된 참조 픽처들은 가산기(210)에 의해 생성된 복원 픽처 외에 보간/외삽부(211)에 의해 보간되거나 외삽된 새로운 참조 픽처를 더 포함한다.The
움직임 보상부(22)는 움직임 추정부(21)에 의한 현재 픽처의 움직임 추정을 이용하여 참조 픽처 버퍼(212)에 저장된 적어도 하나의 참조 픽처로부터 현재 픽처의 예측 픽처를 생성한다. 보다 상세하게 설명하면, 움직임 보상부(22)는 움직임 추정부(21)에 의해 산출된 현재 픽처의 블록들 각각의 움직임 벡터가 지시하는 적어도 하나의 참조 픽처의 블록들의 값을 현재 픽처의 블록들의 값으로 결정함으로써 현재 픽처의 예측 픽처를 생성한다. The
인트라 예측부(23)는 현재 픽처를 구성하는 블록들 중 인트라 모드(intra mode)에 해당하는 블록들 각각에 대하여 가산기(210)에 의해 생성된 복원 픽처를 구성하는 블록들 중 현재 픽처의 블록의 이웃에 위치한 복원 픽처의 블록의 값으로부터 현재 픽처의 블록의 값을 예측함으로써 현재 픽처의 예측 픽처를 생성한다. The
감산기(24)는 현재 픽처로부터 움직임 보상부(22) 또는 인트라 예측부(23)에 의해 생성된 예측 픽처를 감산함으로써 현재 픽처와 예측 픽처의 차이(residue)를 산출한다.The
변환부(25)는 감산기(24)에 의해 산출된 차이를 색 공간으로부터 주파수 공간으로 변환한다. 예를 들면, 변환부(25)는 DHT(Discrete Hadamard Transform) DCT(Discrete Cosine Transform) 등을 이용하여 감산기(24)에 의해 산출된 차이를 색 공간으로부터 주파수 공간으로 변환할 수 있다.The
양자화부(26)는 변환부(25)에 의해 변환된 결과들을 양자화한다. 보다 상세하게 설명하면, 양자화부(26)는 변환부(25)에 의해 변환된 결과들, 즉 주파수 성분 값들을 양자화 파라미터로 나누고, 그 결과를 정수 값들로 근사화한다.The
엔트로피 부호화부(27)는 양자화부(26)에 의해 양자화된 결과들을 엔트로피 부호화함으로써 비트 스트림을 생성한다. 예를 들면, 엔트로피 부호화부(27)는 CAVLC(Context-Adaptive Variable-Length Coding), CAVAC(Context-Adaptive Binary Arithmetic Coding) 등을 이용하여 양자화부(26)에 의해 양자화된 결과들을 엔트로피 부호화할 수 있다. 특히, 엔트로피 부호화부(27)는 동영상에 해당하는 정수 값들 이외에 동영상 복호화를 위한 정보, 예를 들면 인터 예측에 사용된 참조 픽처의 색인 정보, 움직임 벡터 정보, 인트라 예측에 사용된 복원 픽처의 블록의 위치 정보 등을 엔트로피 부호화한다.The
역양자화부(28)는 양자화부(26)에 의해 양자화된 결과들을 역양자화한다. 보다 상세하게 설명하면, 역양자화부(28)는 양자화부(26)에 의해 근사화된 정수 값들에 양자화 파라미터를 곱함으로써 주파수 성분 값들을 복원한다.The
역변환부(29)는 역양자화부(28)에 의해 역양자화된 결과들, 즉 주파수 성분 값들을 주파수 공간으로부터 색 공간으로 변환함으로써 현재 픽처와 예측 픽처의 차이를 복원한다.The
가산기(210)는 움직임 보상부(22) 또는 인트라 예측부(23)에 의해 생성된 예측 픽처에 역변환부(29)에 의해 복원된 차이를 가산함으로써 현재 픽처의 복원 픽처를 생성하고, 이 복원 픽처를 참조 픽처 버퍼(212)에 저장한다. 참조 픽처 버퍼(212)에 현재 저장된 복원 픽처는 현재 픽처의 이후에 등장하는 미래의 픽처들 또는 현재 픽처 이전에 존재했던 과거의 픽처들의 참조 픽처로 사용된다. The
보간/외삽부(211)는 참조 픽처 버퍼(212)에 저장된 참조 픽처들 중 적어도 하나의 참조 픽처에 대하여 적어도 하나의 참조 픽처를 보간(interpolate)하거나 외삽(extrapolate)하고, 이와 같이 보간되거나 외삽된 새로운 참조 픽처를 참조 픽처 버퍼(212)에 저장한다. 보다 상세하게 설명하면, 보간/외삽부(211)는 참조 픽처 버퍼(212)에 저장된 참조 픽처들 중 두 개의 참조 픽처에 기초하여 보간 참조 픽처를 생성하고, 적어도 하나의 참조 픽처에 기초하여 외삽 참조 픽처를 생성한다. 특히, 본 실시예에 따르면, 보간/외삽부(211)는 참조 픽처 버퍼(212)에 저장된 참조 픽처들 중 보간하거나 외삽하고자 하는 참조 픽처에 가장 가까운 참조 픽처의 블록들 각각의 움직임 벡터에 기초하여 보간 참조 픽처 또는 외삽 참조 픽처를 생성한다. 이와 같은 보간 참조 픽처, 외삽 참조 픽처는 가산기(210)에 의해 생성된 기존의 참조 픽처보다 현재 픽처에 보다 잘 매칭될 수 있다. 따라서, 기존의 참조 픽처를 이용하지 않고, 현재 픽처에 가장 잘 매칭되는 보간 참조 픽처, 외삽 참조 픽처를 이용하여 현재 픽처를 부호화한다면, 현재 픽처의 부호화 효율은 크게 향상될 수 있다. The interpolation /
도 3은 본 발명의 바람직한 일 실시예에 따른 동영상 복호화 장치의 구성도이다.3 is a block diagram of a video decoding apparatus according to an embodiment of the present invention.
도 3을 참조하면, 본 실시예에 따른 동영상 복호화 장치는 엔트로피 복호화부(31), 역양자화부(32), 역변환부(33), 움직임 보상부(34), 인트라 예측부(35), 가산기(36), 보간/외삽부(37) 및 참조 픽처 버퍼(38)로 구성된다. 특히, 상기된 구성 요소들 이외에 가산기(36)에 의해 생성된 복원 픽처의 블록들간의 불연속성으로 인한 블록 경계의 왜곡을 부드럽게 하는 디블럭킹 필터(deblocking filter) 등을 더 포함할 수 있음을 본 실시예가 속하는 기술 분야에서 통상의 지식을 가진 자라 면 이해할 수 있다. Referring to FIG. 3, the video decoding apparatus according to the present embodiment includes an entropy decoder 31, an
엔트로피 복호화부(31)는 도 2에 도시된 동영상 부호화 장치로부터 출력된 비트 스트림을 엔트로피 복호화함으로서 동영상에 해당하는 정수 값들과 동영상 복호화를 위한 정보 등을 복원한다. The entropy decoding unit 31 entropy decodes the bit stream output from the video encoding apparatus illustrated in FIG. 2 to restore integer values corresponding to the video and information for video decoding.
역양자화부(32)는 엔트로피 복호화부(31)에 의해 복원된 정수 값들을 역양자화함으로서 주파수 성분 값들을 복원한다. 즉, 역양자화부(32)는 엔트로피 복호화부(31)에 의해 복원된 정수 값들에 양자화 파라미터를 곱함으로서 주파수 성분 값들을 복원한다. The
역변환부(33)는 역양자화부(32)에 의해 복원된 주파수 성분 값들을 주파수 공간으로부터 색 공간으로 변환함으로써 현재 픽처와 예측 픽처의 차이를 복원한다. The
움직임 보상부(34)는 참조 픽처 버퍼(38)에 저장된 참조 픽처들 중 적어도 하나의 참조 픽처 기준의 현재 픽처의 움직임 추정을 이용하여 적어도 하나의 참조 픽처로부터 현재 픽처의 예측 픽처를 생성한다. 보다 상세하게 설명하면, 움직임 보상부(34)는 현재 픽처를 구성하는 블록들 중 인터 모드에 해당하는 블록들 각각에 대하여 현재 픽처의 블록들 각각의 움직임 벡터가 지시하는 적어도 하나의 참조 픽처의 블록들의 값을 현재 픽처의 블록들의 값으로 결정함으로써 현재 픽처의 예측 픽처를 생성한다. 인터 예측에 사용된 참조 픽처의 색인 정보, 움직임 벡터 정보 등과 같은 동영상 복호화를 위한 정보는 비트 스트림에 포함된다. 다만, 어떤 블록의 움직임 벡터는 비트 스트림에 포함되지 않고, 참조 픽처의 블록들 각각의 움직임 벡터로부터 유도될 수 있다. The
인트라 예측부(35)는 현재 픽처를 구성하는 블록들 중 인트라 모드에 해당하는 블록들 각각에 대하여 가산기(36)에 의해 생성된 복원 픽처를 구성하는 블록들 중 현재 픽처의 블록의 이웃에 위치한 복원 픽처의 블록의 값으로부터 현재 픽처의 블록의 값을 예측함으로써 현재 픽처의 예측 픽처를 생성한다. 인트라 예측에 사용된 복원 픽처의 블록의 위치 정보 등과 같은 동영상 복호화를 위한 정보는 비트 스트림에 포함된다. The
가산기(36)는 움직임 보상부(34) 또는 인트라 예측부(35)에 의해 생성된 예측 화면에 역변환부(33)에 의해 복원된 차이를 가산함으로써 현재 픽처의 복원 픽처를 생성하고, 이 복원 픽처를 참조 픽처 버퍼(38)에 저장한다. 참조 픽처 버퍼(38)에 현재 저장된 복원 픽처는 현재 픽처의 이후에 등장하는 미래의 픽처들 또는 현재 픽처 이전에 존재했던 과거의 픽처들의 참조 픽처로 사용된다. The
보간/외삽부(37)는 참조 픽처 버퍼(38)에 저장된 참조 픽처들 중 적어도 하나의 참조 픽처에 대하여 적어도 하나의 참조 픽처를 보간(interpolate)하거나 외삽(extrapolate)하고, 이와 같이 보간되거나 외삽된 새로운 참조 픽처를 참조 픽처 버퍼(38)에 저장한다. 보다 상세하게 설명하면, 보간/외삽부(37)는 참조 픽처 버퍼(38)에 저장된 참조 픽처들 중 두 개의 참조 픽처에 기초하여 보간 참조 픽처를 생성하고, 적어도 하나의 참조 픽처에 기초하여 외삽 참조 픽처를 생성한다. 특히, 본 실시예에 따르면, 보간/외삽부(37)는 참조 픽처 버퍼(38)에 저장된 참조 픽처들 중 보간하거나 외삽하고자 하는 참조 픽처에 가장 가까운 참조 픽처의 블록들 각각 의 움직임 벡터에 기초하여 보간 참조 픽처 또는 외삽 참조 픽처를 생성한다. 동영상 복호화 과정은 동영상 부호화 과정과 정확하게 대응되어야 하기 때문에, 도 5에 도시된 보간/외삽부(37)와 도 6에 도시된 보간/외삽부(37)는 서로 동일한 방식으로 보간하거나 외삽함은 물론이다.The interpolation /
도 4는 도 2 및 도 3에 도시된 보간/외삽부(211 또는 37)의 구성도이다.4 is a configuration diagram of the interpolation /
도 4를 참조하면, 도 2 및 도 3에 도시된 보간/외삽부(211 또는 37)는 움직임 벡터 결정부(41), 보간부(42), 제 1 외삽부(43), 제 2 외삽부(44) 및 제 3 외삽부(45)로 구성된다. Referring to FIG. 4, the interpolation /
움직임 추정부(21)에 의해 산출된 현재 블록의 움직임 벡터는 참조 픽처의 보간 내지 외삽에 사용되기에는 그다지 신뢰적(reliable)이지 않다. 현존하는 대부분의 동영상 부호화 방식(scheme)에서는 현재 블록의 픽셀 값들과 참조 픽처의 픽셀 값들간의 SAD(Sum of absolute differences), MSE(Mean Squared Error) 등을 사용하여 참조 픽처 내에서 현재 블록과 가장 잘 매치(match)되는 블록, 즉 현재 블록에 대응되는 블록을 찾는다. 이와 방식에 따르면, 동영상 부호화 결과의 용량은 감소될 수는 있으나, 움직임 큰 동영상에 대해서는 현재 블록의 실제(actual) 움직임 벡터가 산출되지 않을 수가 있다. 특히, 움직임 매우 큰 동영상에 대해서는 현재 블록에 가장 가깝게 위치한 8 개의 블록들(이하 "이웃 블록들(neighbor blocks)"이라 한다)의 움직임 벡터들과 매우 다른 비정상적인(abnormal) 움직임 벡터가 산출될 수 있다. The motion vector of the current block calculated by the
움직임 벡터 결정부(41)는 이와 같은 비정상적인 움직임 벡터를 제거하기 위 하여, 현재 블록의 이웃 블록들의 움직임 벡터들에 기초하여 현재 블록의 움직임 벡터를 결정한다. 보다 상세하게 설명하면, 움직임 벡터 결정부(41)는 다음 수학식 2에 따라, 현재 블록의 이웃 블록들의 움직임 벡터들의 중간 값(median value)을 현재 블록의 움직임 벡터로 결정한다. The
도 5에는 수학식 1에 따라 움직임 벡터 결정부(41)에서 현재 블록의 움직임 벡터를 결정하는 모습이 도시되어 있다. 다만, 움직임 벡터 결정부(41)는 현재 블록의 이웃 블록들의 움직임 벡터들의 중간 값 대신에 이 움직임 벡터들의 평균 값(averaged value)을 현재 블록의 움직임 벡터로 결정할 수도 있다. FIG. 5 illustrates a state in which the
특히, 움직임 벡터 결정부(41)는 참조 버퍼(212 또는 38)에 현재 저장된 참조 픽처들의 개수가 참조 버퍼(212 또는 38)에 저장 가능한 참조 픽처들의 최대 개수에 도달한 경우에 상기된 바에 따라 현재 블록의 움직임 벡터를 결정한다. 이것은 참조 버퍼(212 또는 38)의 저장 공간이 남아 있는 경우에는 종래와 같이 가산기(36)에 의해 생성된 복원 픽처가 저장되도록 하고, 참조 버퍼(212 또는 38)의 저장 공간이 남아 있지 않은 경우에는 현재 픽처로부터 가장 먼 참조 픽처가 제거되고, 보간되거나 외삽된 참조 픽처가 저장되도록 하기 위함이다. 이와 같이 함으로써, 참조 버퍼(38)의 저장 공간이 남아 있지 않은 경우에도 참조 버퍼(212 또는 38)에 저장된 참조 픽처들은 현재 픽처에 보다 가까운 참조 픽처들로 계속적으로 갱신되게 된다.In particular, the
도 6은 도 4에 도시된 보간부(42)에서의 보간 참조 픽처를 생성하는 모습을 도시한 도면이다. FIG. 6 is a diagram illustrating an example of generating interpolation reference pictures in the
도 6을 참조하면, 도 6에는 보간하거나 외삽하고자 하는 참조 픽처를 구성하게 될 블록들 중 현재 보간될 하나의 블록(이하 "현재 블록"이라 한다)과 그것의 공통 위치 블록을 중심으로 보간부(42)에 의해 참조 픽처가 어떻게 보간되는지가 도시되어 있다. 또한, 도 6에 도시된 순방향(forward) 참조 픽처는 보간하거나 외삽하고자 하는 참조 픽처 이전의 참조 픽처를 의미하며, 역방향(backward) 참조 픽처는 보간하거나 외삽하고자 하는 참조 픽처 이후의 참조 픽처를 의미한다.Referring to FIG. 6, FIG. 6 illustrates an interpolation unit based on one block to be interpolated (hereinafter, referred to as a “current block”) and its common position block among blocks that will constitute a reference picture to be interpolated or extrapolated. 42 shows how the reference picture is interpolated. In addition, a forward reference picture illustrated in FIG. 6 refers to a reference picture before a reference picture to be interpolated or extrapolated, and a backward reference picture refers to a reference picture after a reference picture to be interpolated or extrapolated. .
도 7은 도 4에 도시된 보간부(42)에 의해 보간 참조 픽처가 생성되는 과정을 나타낸 흐름도이다. FIG. 7 is a flowchart illustrating a process of generating an interpolation reference picture by the
도 7을 참조하면, 보간부(42)에 의해 현재 블록이 생성되는 과정은 다음과 같은 단계들로 구성된다. 특히, 이하에서는 도 6에 도시된 현재 블록과 그것의 공통 위치 블록을 중심으로 설명하기로 하기로 한다.Referring to FIG. 7, the process of generating a current block by the
71 단계에서 보간부(42)는 보간 참조 픽처에 가장 가까운 역방향 참조 픽처 내에서 보간 참조 픽처의 현재 블록과 공통되는 위치의 블록(co-located block)을 탐색한다. In
72 단계에서 보간부(42)는 71 단계에서 탐색된 공통 위치 블록의 움직임 벡터 MV를 다음 수학식 2에 따라 스케일링(scaling)함으로써 보간 참조 픽처에 가장 가까운 순방향 참조 픽처를 종점으로 하는 현재 블록의 움직임 벡터 MVF와 보간 참 조 픽처의 시점에서 가장 가까운 역방향 참조 픽처를 종점으로 하는 현재 블록의 움직임 벡터 MVB를 산출한다. In
수학식 2에서 "TD1"은 보간 참조 픽처와 순방향 참조 픽처간의 시간적 거리를 나타내고, "TD2"는 보간 참조 픽처와 역방향 참조 픽처간의 시간적 거리를 나타낸다. 즉, 72 단계에서 참조 픽처 보간부(42)는 71 단계에서 탐색된 공통 위치 블록의 움직임 벡터 MV에 TD1과 TD2의 합에 대한 TD2의 비를 곱함으로써 현재 블록의 움직임 벡터 MVF를 산출할 수 있고, 71 단계에서 탐색된 공통 위치 블록의 움직임 벡터 MV에 TD1과 TD2의 전체 합과 TD1의 비의 음의 값을 곱함으로써 현재 블록의 움직임 벡터 MVB를 산출할 수 있다.In Equation 2, "TD 1 " represents a temporal distance between an interpolated reference picture and a forward reference picture, and "TD 2 " represents a temporal distance between an interpolated reference picture and a backward reference picture. That is, the reference
73 단계에서 보간부(42)는 보간 참조 픽처에 가장 가까운 순방향 참조 픽처 내에서 72 단계에서 산출된 움직임 벡터 MVF가 지시하는 현재 블록의 대응 블록을 탐색하고, 보간 참조 픽처에 가장 가까운 역방향 참조 픽처 내에서 72 단계에서 산출된 움직임 벡터 MVB가 지시하는 현재 블록의 대응 블록을 탐색한다.In
74 단계에서 보간부(42)는 73 단계에서 탐색된 순방향 참조 픽처의 대응 블 록의 값과 역방향 참조 픽처의 대응 블록의 값을 평균하고, 그 평균 값을 현재 블록의 값으로 결정한다.In
75 단계에서 보간부(42)는 보간 참조 픽처를 구성하는 모든 블록들에 대해 상기된 71 - 74 단계들이 완료된 경우에는 76 단계로 진행하고, 그렇지 않은 경우에는 71 단계로 돌아간다.In
76 단계에서 보간부(42)는 참조 버퍼(212 또는 38)에 저장된 참조 픽처들 중 현재 픽처에 가장 먼 참조 픽처를 제거하고, 참조 버퍼(212 또는 38)에 보간 참조 픽처를 저장한다.In
도 8은 도 4에 도시된 제 1 외삽부(43)에서의 제 1 외삽 참조 픽처를 생성하는 모습을 도시한 도면이다. 도 9는 도 4에 도시된 제 1 외삽부(43)에 의해 제 1 외삽 참조 픽처가 생성되는 과정을 나타낸 흐름도이다. FIG. 8 is a diagram illustrating a first extrapolation reference picture generated by the
도 9를 참조하면, 제 1 외삽부(43)에 의해 현재 블록이 생성되는 과정은 다음과 같은 단계들로 구성된다. 특히, 이하에서는 도 8에 도시된 현재 블록과 그것의 공통 위치 블록을 중심으로 설명하기로 하기로 한다.Referring to FIG. 9, the process of generating the current block by the
91 단계에서 제 1 외삽부(43)는 제 1 외삽 참조 픽처에 가장 가까운 첫 번째 순방향 참조 픽처 내에서 제 1 외삽 참조 픽처의 현재 블록과 공통되는 위치의 블록을 탐색한다.In
92 단계에서 제 1 외삽부(43)는 91 단계에서 탐색된 공통 위치 블록의 움직임 벡터 MV를 다음 수학식 3에 따라 스케일링함으로써 첫 번째 순방향 참조 픽처를 종점으로 하는 현재 블록의 움직임 벡터 MV1과 제 1 외삽 참조 픽처에 두 번째로 가까운 두 번째 순방향 참조 픽처를 종점으로 하는 현재 블록의 움직임 벡터 MV2를 산출한다. In
수학식 3에서 "TD1"은 추가 참조 픽처와 첫 번째 순방향 참조 픽처간의 시간적 거리를 나타내고, "TD2"는 첫 번째 순방향 참조 픽처와 두 번째 순방향 참조 픽처간의 시간적 거리를 나타낸다. 즉, 92 단계에서 제 1 외삽부(43)는 91 단계에서 탐색된 공통 위치 블록의 움직임 벡터 MV에 TD2에 대한 TD1과 TD2의 합의 비를 곱함으로써 현재 블록의 움직임 벡터 MV2를 산출할 수 있고, 공통 위치 블록의 움직임 벡터 MV에 TD2에 대한 TD1의 비를 곱함으로써 현재 블록의 움직임 벡터 MV1을 산출할 수 있다.In Equation 3, "TD 1 " represents a temporal distance between the additional reference picture and the first forward reference picture, and "TD 2 " represents the temporal distance between the first forward reference picture and the second forward reference picture. That is, in
93 단계에서 제 1 외삽부(43)는 첫 번째 순방향 참조 픽처 내에서 92 단계에서 산출된 움직임 벡터 MV1이 지시하는 현재 블록의 대응 블록을 탐색하고, 두 번째 순방향 참조 픽처 내에서 92 단계에서 산출된 움직임 벡터 MV2가 지시하는 현재 블록의 대응 블록을 탐색한다.In
94 단계에서 제 1 외삽부(43)는 93 단계에서 탐색된 첫 번째 순방향 참조 픽처의 대응 블록과 두 번째 역방향 참조 픽처의 대응 블록을 평균하고, 그 평균 값을 현재 블록의 값으로 결정한다.In
95 단계에서 제 1 외삽부(43)는 제 1 외삽 참조 픽처를 구성하는 모든 블록들에 대해 상기된 91 - 94 단계들이 완료된 경우에는 96 단계로 진행하고, 그렇지 않은 경우에는 91 단계로 돌아간다.In
96 단계에서 제 1 외삽부(43)는 참조 버퍼(212 또는 38)에 저장된 참조 픽처들 중 현재 픽처에 가장 먼 참조 픽처를 제거하고, 참조 버퍼(212 또는 38)에 제 1 외삽 참조 픽처를 저장한다.In
도 10은 도 4에 도시된 제 2 외삽부(44)에서의 제 2 외삽 참조 픽처를 생성하는 모습을 도시한 도면이다. 도 11은 도 4에 도시된 제 2 외삽부(44)에 의해 제 2 외삽 참조 픽처가 생성되는 과정을 나타낸 흐름도이다. FIG. 10 is a diagram illustrating the generation of a second extrapolation reference picture in the
도 11을 참조하면, 제 2 외삽부(44)에 의해 현재 블록이 생성되는 과정은 다음과 같은 단계들로 구성된다. 특히, 이하에서는 도 10에 도시된 현재 블록과 그것의 공통 위치 블록을 중심으로 설명하기로 하기로 한다.Referring to FIG. 11, a process of generating a current block by the
111 단계에서 제 2 외삽부(44)는 제 2 외삽 참조 픽처에 가장 가까운 첫 번째 순방향 참조 픽처 내에서 제 2 외삽 참조 픽처의 현재 블록과 공통되는 위치의 블록을 탐색한다.In
112 단계에서 제 2 외삽부(44)는 111 단계에서 탐색된 공통 위치 블록의 움직임 벡터 MV를 다음 수학식 4에 따라 스케일링함으로써 첫 번째 순방향 참조 픽처 를 종점으로 하는 현재 블록의 움직임 벡터 MV1을 산출한다. In
수학식 4에서 "TD1"은 추가 참조 픽처와 첫 번째 순방향 참조 픽처간의 시간적 거리를 나타내고, "TD2"는 첫 번째 순방향 참조 픽처와 움직임 벡터 MV가 지시하는 두 번째 순방향 참조 픽처간의 시간적 거리를 나타낸다. 즉, 112 단계에서 제 2 외삽부(44)는 111 단계에서 탐색된 공통 위치 블록의 움직임 벡터 MV에 TD2에 대한 TD1의 비를 곱함으로써 현재 블록의 움직임 벡터 MV1을 산출할 수 있다.In Equation 4, "TD 1 " represents the temporal distance between the additional reference picture and the first forward reference picture, and "TD 2 " indicates the temporal distance between the first forward reference picture and the second forward reference picture indicated by the motion vector MV. Indicates. That is, in
113 단계에서 제 2 외삽부(44)는 첫 번째 순방향 참조 픽처 내에서 112 단계에서 산출된 움직임 벡터 MV1이 지시하는 현재 블록의 대응 블록을 탐색한다.In
114 단계에서 제 2 외삽부(44)는 113 단계에서 탐색된 첫 번째 순방향 참조 픽처의 대응 블록의 값을 현재 블록의 값으로 결정한다.In
115 단계에서 제 2 외삽부(44)는 제 2 외삽 참조 픽처를 구성하는 모든 블록들에 대해 상기된 121 - 124 단계들이 완료된 경우에는 116 단계로 진행하고, 그렇지 않은 경우에는 121 단계로 돌아간다.In
116 단계에서 제 2 외삽부(44)는 참조 버퍼(212 또는 38)에 저장된 참조 픽처들 중 현재 픽처에 가장 먼 참조 픽처를 제거하고, 참조 버퍼(212 또는 38)에 제 2 외삽 참조 픽처를 저장한다.In
도 12는 도 4에 도시된 제 3 외삽부(45)에서의 제 3 외삽 참조 픽처를 생성하는 모습을 도시한 도면이다. 도 13은 도 4에 도시된 제 3 외삽부(45)에 의해 제 3 외삽 참조 픽처가 생성되는 과정을 나타낸 흐름도이다. FIG. 12 is a diagram illustrating a third extrapolation reference picture generated by the
도 13을 참조하면, 제 3 외삽부(45)에 의해 현재 블록이 생성되는 과정은 다음과 같은 단계들로 구성된다. 특히, 이하에서는 도 12에 도시된 현재 블록과 그것의 공통 위치 블록을 중심으로 설명하기로 하기로 한다.Referring to FIG. 13, a process of generating a current block by the
131 단계에서 제 3 외삽부(45)는 제 3 외삽 참조 픽처에 가장 가까운 첫 번째 순방향 참조 픽처 내에서 제 3 외삽 참조 픽처의 현재 블록과 공통되는 위치의 블록을 탐색한다.In
132 단계에서 제 3 외삽부(45)는 131 단계에서 탐색된 공통 위치 블록의 움직임 벡터 MV를 다음 수학식 5에 따라 스케일링함으로써 제 3 외삽 참조 픽처를 종점으로 하는 공통 위치 블록의 움직임 벡터 MV1을 산출한다. 여기에서, 추가 참조 픽처를 종점으로 하는 공통 위치 블록의 움직임 벡터 MV1의 방향은 131 단계에서 탐색된 공통 위치 블록의 움직임 벡터 MV의 반대 방향이다.In
수학식 5에서 "TD1"은 추가 참조 픽처와 첫 번째 순방향 참조 픽처간의 시간적 거리를 나타내고, "TD2"는 첫 번째 순방향 참조 픽처와 움직임 벡터 MV가 지시하 는 두 번째 순방향 참조 픽처간의 시간적 거리를 나타낸다. 즉, 132 단계에서 제 3 외삽부(45)는 141 단계에서 탐색된 공통 위치 블록의 움직임 벡터 MV에 TD2에 대한 TD1의 비의 음의 값을 곱함으로써 현재 블록의 움직임 벡터 MV1을 산출할 수 있다. In Equation 5, "TD 1 " represents the temporal distance between the additional reference picture and the first forward reference picture, and "TD 2 " represents the temporal distance between the first forward reference picture and the second forward reference picture indicated by the motion vector MV. Indicates. That is, in
133 단계에서 제 3 외삽부(45)는 제 3 참조 픽처 내에서 132 단계에서 산출된 움직임 벡터 MV1이 지시하는 유도 블록(derived block)을 탐색한다.In
134 단계에서 제 3 외삽부(45)는 131 단계에서 탐색된 공통 위치 블록의 값을 133 단계에서 탐색된 유도 블록의 값으로 결정한다. In
135 단계에서 제 3 외삽부(45)는 첫 번째 순방향 참조 픽처를 구성하는 모든 블록들에 대해 상기된 131 - 134 단계들이 완료된 경우에는 136 단계로 진행하고, 그렇지 않은 경우에는 131 단계로 돌아간다.In
상기된 바와 같이, 순방향 참조 픽처의 블록들의 움직임 벡터들의 반대 방향의 벡터들을 이용하여 순방향 참조 픽처의 블록들의 값으로부터 추가 참조 픽처의 블록들의 값이 결정되게 되면, 순방향 참조 픽처의 블록들의 어떠한 움직임 벡터들도 지시하지 않는 영역, 즉 미복원 영역(uncovered region)과 순방향 참조 픽처의 블록들의 적어도 두 개 이상의 움직임 벡터들이 중복적으로 지시하는 중복 영역(overlapped region)이 발생할 수 있다.As described above, when the values of the blocks of the additional reference picture are determined from the values of the blocks of the forward reference picture using the vectors in the opposite directions of the motion vectors of the blocks of the forward reference picture, any motion vector of the blocks of the forward reference picture is determined. In this case, an unlapped region, that is, an uncovered region and an overlapped region in which at least two or more motion vectors of blocks of the forward reference picture are overlapped may occur.
도 14는 도 4에 도시된 제 3 외삽부(45)에 의해 발생되는 미복원 영역을 도시한 도면이다.FIG. 14 is a view showing an unrestored area generated by the
도 14를 참조하면, 추가 참조 픽처의 영역 Ui는 순방향 참조 픽처의 블록들 의 어떠한 움직임 벡터들도 지시하지 않는 미복원 영역이다. 그런데, 이 미복원 영역이 순방향 참조 픽처를 구성하는 블록들 중 어떠한 블록과도 대응되지 않는다는 사실은 이 미복원 영역이 추가 참조 픽처 내의 공간적 중복성을 이용하여 부호화된 결과로서 실제 픽셀 값들이 생략된 영역, 즉 인터 방식이 아닌 인트라 방식으로 부호화된 영역임을 암시한다. 다시 말하면, 이 미복원 영역은 인트라 방식으로 부호화되었기 때문에 이 영역에 관한 어떠한 움직임 정보는 없는 것으로, 주로 움직임이 없는 배경이 이러한 영역에 해당한다. 따라서, 미복원 영역에 해당하는 적어도 하나의 블록의 값은 다음과 같은 방식으로 결정될 수 있다.Referring to FIG. 14, the region Ui of the additional reference picture is an unrestored region that does not indicate any motion vectors of blocks of the forward reference picture. However, the fact that this unrestored region does not correspond to any of the blocks constituting the forward reference picture is an area in which the actual pixel values are omitted as a result of the unrecovered region being encoded using spatial redundancy in the additional reference picture. That is, it implies that the region is encoded by the intra method rather than the inter method. In other words, since this unrestored region is encoded in an intra manner, there is no motion information about this region, and a background without movement mainly corresponds to this region. Therefore, the value of at least one block corresponding to the unrestored region may be determined in the following manner.
즉, 136 단계에서 제 3 외삽부(45)는 다음 수학식 6에 따라 첫 번째 순방향 참조 픽처의 블록들의 어떠한 움직임 벡터들도 지시하지 않는 미복원 영역의 적어도 하나의 블록의 값을 미복원 영역의 블록과 공통되는 위치의 첫 번째 참조 픽처 내의 블록의 값으로 결정한다.That is, in
또한, 136 단계에서 미복원 영역에 해당하는 블록의 값이 결정된 이후에, 첫 번째 순방향 참조 픽처의 블록들의 적어도 두 개 이상의 움직임 벡터들이 중복적으로 지시하는 중복 영역에 해당하는 블록들의 값들은 다음과 방식으로 결정될 수 있다.Further, after the value of the block corresponding to the unrestored region is determined in
즉, 137 단계에서 제 3 외삽부(45)는 첫 번째 순방향 참조 픽처의 블록들의 적어도 두 개 이상의 움직임 벡터들이 중복적으로 지시하는 중복 영역의 적어도 하 나의 유도 블록의 값으로 상기 유도 블록에 대응하는 적어도 두 개 이상의 첫 번째 순방향 참조 픽처의 블록들의 값들의 평균 값을 결정한다. That is, in
138 단계에서 제 3 외삽부(45)는 참조 버퍼(212 또는 38)에 저장된 참조 픽처들 중 현재 픽처에 가장 먼 참조 픽처를 제거하고, 참조 버퍼(212 또는 38)에 제 3 외삽 참조 픽처를 저장한다.In
도 15는 본 발명의 바람직한 일 실시예에 따른 동영상 부호화 방법의 흐름도이다.15 is a flowchart of a video encoding method according to an embodiment of the present invention.
도 15를 참조하면, 본 실시예에 따른 동영상 부호화 방법은 도 2에 도시된 동영상 부호화 장치에서 시계열적으로 처리되는 단계들로 구성된다. 따라서, 이하 생략된 내용이라 하더라도 도 2에 도시된 동영상 부호화 장치에 관하여 이상에서 기술된 내용은 본 실시예에 따른 동영상 부호화 방법에도 적용된다. Referring to FIG. 15, the video encoding method according to the present embodiment includes steps that are processed in time series in the video encoding apparatus shown in FIG. 2. Therefore, even if omitted below, the contents described above with respect to the video encoding apparatus shown in FIG. 2 are also applied to the video encoding method according to the present embodiment.
151 단계에서 동영상 부호화 장치는 참조 픽처 버퍼(212)에 저장된 참조 픽처들 중 적어도 하나의 참조 픽처를 기준으로 현재 픽처의 움직임을 추정한다. In operation 151, the video encoding apparatus estimates the motion of the current picture based on at least one reference picture among the reference pictures stored in the
152 단계에서 동영상 부호화 장치는 151 단계에서의 현재 픽처의 움직임 추정을 이용하여 참조 픽처 버퍼(212)에 저장된 적어도 하나의 참조 픽처로부터 현재 픽처의 예측 픽처를 생성한다. In
153 단계에서 동영상 부호화 장치는 현재 픽처의 복원 픽처를 구성하는 블록들 중 현재 픽처의 블록의 이웃에 위치한 복원 픽처의 블록의 값으로부터 현재 픽 처의 블록의 값을 예측함으로써 현재 픽처의 예측 픽처를 생성한다. In
154 단계에서 동영상 부호화 장치는 현재 픽처로부터 152 단계 또는 153 단계에서 생성된 예측 픽처를 감산함으로써 현재 픽처와 예측 픽처의 차이를 산출한다.In
155 단계에서 동영상 부호화 장치는 154 단계에서 산출된 차이를 색 공간으로부터 주파수 공간으로 변환한다. In
156 단계에서 동영상 부호화 장치는 155 단계에서 변환된 결과들을 양자화한다. In
157 단계에서 동영상 부호화 장치는 156 단계에서 양자화된 결과들을 엔트로피 부호화함으로써 비트 스트림을 생성한다. In
158 단계에서 동영상 부호화 장치는 157 단계에서 양자화된 결과들을 역양자화한다. In
159 단계에서 동영상 부호화 장치는 158 단계에서 역양자화된 결과들, 즉 주파수 성분 값들을 주파수 공간으로부터 색 공간으로 변환함으로써 현재 픽처와 예측 픽처의 차이를 복원한다.In
1510 단계에서 동영상 부호화 장치는 152 단계 또는 153 단계에서 생성된 예측 픽처에 159 단계에서 복원된 차이를 가산함으로써 현재 픽처의 복원 픽처를 생성하고, 이 복원 픽처를 참조 픽처 버퍼(212)에 저장한다. In
1511 단계에서 동영상 부호화 장치는 참조 버퍼(212)에 현재 저장된 참조 픽처들의 개수가 참조 버퍼(212)에 저장 가능한 참조 픽처들의 최대 개수에 도달한 경우에는 1512 단계로 진행하고, 그렇지 않은 경우에는 151 단계로 돌아간다.In
1512 단계에서 동영상 부호화 장치는 참조 픽처 버퍼(212)에 저장된 참조 픽처들 중 적어도 하나의 참조 픽처에 대하여 적어도 하나의 참조 픽처를 보간하거나 외삽한다. 이어서, 1512 단계에서 동영상 부호화 장치는 참조 버퍼(212)에 저장된 참조 픽처들 중 현재 픽처에 가장 먼 참조 픽처를 제거하고, 보간되거나 외삽된 새로운 참조 픽처를 참조 픽처 버퍼(212)에 저장하고, 1511 단계로 돌아간다. In
도 16은 본 발명의 바람직한 일 실시예에 따른 동영상 복호화 방법의 흐름도이다.16 is a flowchart of a video decoding method according to an embodiment of the present invention.
도 16을 참조하면, 본 실시예에 따른 동영상 복호화 방법은 도 3에 도시된 동영상 복호화 장치에서 시계열적으로 처리되는 단계들로 구성된다. 따라서, 이하 생략된 내용이라 하더라도 도 3에 도시된 동영상 복호화 장치에 관하여 이상에서 기술된 내용은 본 실시예에 따른 동영상 복호화 방법에도 적용된다. Referring to FIG. 16, the video decoding method according to the present embodiment includes steps that are processed in time series in the video decoding apparatus illustrated in FIG. 3. Therefore, even if omitted below, the contents described above with respect to the video decoding apparatus shown in FIG. 3 also apply to the video decoding method according to the present embodiment.
161 단계에서 동영상 복호화 장치는 도 2에 도시된 동영상 부호화 장치로부터 출력된 비트 스트림을 엔트로피 복호화함으로서 동영상에 해당하는 정수 값들과 동영상 복호화를 위한 정보 등을 복원한다. In
162 단계에서 동영상 복호화 장치는 161 단계에서 복원된 정수 값들을 역양자화함으로서 주파수 성분 값들을 복원한다. In
163 단계에서 동영상 복호화 장치는 162 단계에서 복원된 주파수 성분 값들을 주파수 공간으로부터 색 공간으로 변환함으로써 현재 픽처와 예측 픽처의 차이를 복원한다. In
164 단계에서 동영상 복호화 장치는 참조 픽처 버퍼(38)에 저장된 참조 픽처들 중 적어도 하나의 참조 픽처 기준의 현재 픽처의 움직임 추정을 이용하여 적어도 하나의 참조 픽처로부터 현재 픽처의 예측 픽처를 생성한다. In
165 단계에서 동영상 복호화 장치는 현재 픽처의 복원 픽처를 구성하는 블록들 중 현재 픽처의 블록의 이웃에 위치한 복원 픽처의 블록의 값으로부터 현재 픽처의 블록의 값을 예측함으로써 현재 픽처의 예측 픽처를 생성한다. In
165 단계에서 동영상 복호화 장치는 164 단계 또는 165 단계에서 생성된 예측 화면에 163 단계에서 복원된 차이를 가산함으로써 현재 픽처의 복원 픽처를 생성하고, 이 복원 픽처를 참조 픽처 버퍼(38)에 저장한다.In
166 단계에서 동영상 복호화 장치는 참조 버퍼(38)에 현재 저장된 참조 픽처들의 개수가 참조 버퍼(38)에 저장 가능한 참조 픽처들의 최대 개수에 도달한 경우에는 167 단계로 진행하고, 그렇지 않은 경우에는 161 단계로 돌아간다.If the number of reference pictures currently stored in the
167 단계에서 동영상 복호화 장치는 참조 픽처 버퍼(38)에 저장된 참조 픽처들 중 적어도 하나의 참조 픽처에 대하여 적어도 하나의 참조 픽처를 보간하거나 외삽한다. 이어서, 167 단계에서 동영상 복호화 장치는 참조 버퍼(38)에 저장된 참조 픽처들 중 현재 픽처에 가장 먼 참조 픽처를 제거하고, 보간되거나 외삽된 새로운 참조 픽처를 참조 픽처 버퍼(38)에 저장하고, 161 단계로 돌아간다. In
한편, 상술한 본 발명의 실시예들은 컴퓨터에서 실행될 수 있는 프로그램으로 작성가능하고, 컴퓨터로 읽을 수 있는 기록매체를 이용하여 상기 프로그램을 동작시키는 범용 디지털 컴퓨터에서 구현될 수 있다. 또한, 상술한 본 발명의 실시예 에서 사용된 데이터의 구조는 컴퓨터로 읽을 수 있는 기록매체에 여러 수단을 통하여 기록될 수 있다. 상기 컴퓨터로 읽을 수 있는 기록매체는 마그네틱 저장매체(예를 들면, 롬, 플로피 디스크, 하드 디스크 등), 광학적 판독 매체(예를 들면, 시디롬, 디브이디 등)와 같은 저장매체를 포함한다.Meanwhile, the above-described embodiments of the present invention can be written as a program that can be executed in a computer, and can be implemented in a general-purpose digital computer that operates the program using a computer-readable recording medium. In addition, the structure of the data used in the above-described embodiment of the present invention can be recorded on the computer-readable recording medium through various means. The computer-readable recording medium may include a storage medium such as a magnetic storage medium (eg, a ROM, a floppy disk, a hard disk, etc.) and an optical reading medium (eg, a CD-ROM, a DVD, etc.).
이제까지 본 발명에 대하여 그 바람직한 실시예들을 중심으로 살펴보았다. 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자는 본 발명이 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 변형된 형태로 구현될 수 있음을 이해할 수 있을 것이다. 그러므로 개시된 실시예들은 한정적인 관점이 아니라 설명적인 관점에서 고려되어야 한다. 본 발명의 범위는 전술한 설명이 아니라 특허청구범위에 나타나 있으며, 그와 동등한 범위 내에 있는 모든 차이점은 본 발명에 포함된 것으로 해석되어야 할 것이다.So far I looked at the center of the preferred embodiment for the present invention. Those skilled in the art will appreciate that the present invention can be implemented in a modified form without departing from the essential features of the present invention. Therefore, the disclosed embodiments should be considered in descriptive sense only and not for purposes of limitation. The scope of the present invention is shown in the claims rather than the foregoing description, and all differences within the scope will be construed as being included in the present invention.
도 1은 다수의 참조 픽처들로부터 현재 픽처의 예측 픽처가 생성되는 모습을 도시한 도면이다.1 is a diagram illustrating a state in which a predictive picture of a current picture is generated from a plurality of reference pictures.
도 2는 본 발명의 바람직한 일 실시예에 따른 동영상 부호화 장치의 구성도이다.2 is a block diagram of a video encoding apparatus according to an embodiment of the present invention.
도 3은 본 발명의 바람직한 일 실시예에 따른 동영상 복호화 장치의 구성도이다.3 is a block diagram of a video decoding apparatus according to an embodiment of the present invention.
도 4는 도 2 및 도 3에 도시된 보간/외삽부(211 또는 37)의 구성도이다.4 is a configuration diagram of the interpolation /
도 5는 도 4에 도시된 움직임 벡터 결정부(41)에서 현재 블록의 움직임 벡터를 결정하는 모습을 도시한 도면이다. 5 is a diagram illustrating a state in which the
도 6은 도 4에 도시된 보간부(42)에서의 보간 참조 픽처를 생성하는 모습을 도시한 도면이다. FIG. 6 is a diagram illustrating an example of generating interpolation reference pictures in the
도 7은 도 4에 도시된 보간부(42)에 의해 보간 참조 픽처가 생성되는 과정을 나타낸 흐름도이다. FIG. 7 is a flowchart illustrating a process of generating an interpolation reference picture by the
도 8은 도 4에 도시된 제 1 외삽부(43)에서의 제 1 외삽 참조 픽처를 생성하는 모습을 도시한 도면이다. FIG. 8 is a diagram illustrating a first extrapolation reference picture generated by the
도 9는 도 4에 도시된 제 1 외삽부(43)에 의해 제 1 외삽 참조 픽처가 생성되는 과정을 나타낸 흐름도이다. FIG. 9 is a flowchart illustrating a process of generating a first extrapolation reference picture by the
도 10은 도 4에 도시된 제 2 외삽부(44)에서의 제 2 외삽 참조 픽처를 생성하는 모습을 도시한 도면이다. FIG. 10 is a diagram illustrating the generation of a second extrapolation reference picture in the
도 11은 도 4에 도시된 제 2 외삽부(44)에 의해 제 2 외삽 참조 픽처가 생성되는 과정을 나타낸 흐름도이다. FIG. 11 is a flowchart illustrating a process of generating a second extrapolation reference picture by the
도 12는 도 4에 도시된 제 3 외삽부(45)에서의 제 3 외삽 참조 픽처를 생성하는 모습을 도시한 도면이다. FIG. 12 is a diagram illustrating a third extrapolation reference picture generated by the
도 13은 도 4에 도시된 제 3 외삽부(45)에 의해 제 3 외삽 참조 픽처가 생성되는 과정을 나타낸 흐름도이다. FIG. 13 is a flowchart illustrating a process of generating a third extrapolation reference picture by the
도 14는 도 4에 도시된 제 3 외삽부(45)에 의해 발생되는 미복원 영역을 도시한 도면이다.FIG. 14 is a view showing an unrestored area generated by the
도 15는 본 발명의 바람직한 일 실시예에 따른 동영상 부호화 방법의 흐름도이다.15 is a flowchart of a video encoding method according to an embodiment of the present invention.
도 16은 본 발명의 바람직한 일 실시예에 따른 동영상 복호화 방법의 흐름도이다.16 is a flowchart of a video decoding method according to an embodiment of the present invention.
Claims (19)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020070092296A KR20090027091A (en) | 2007-09-11 | 2007-09-11 | Method and apparatus for encoding/decoding moving picture |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020070092296A KR20090027091A (en) | 2007-09-11 | 2007-09-11 | Method and apparatus for encoding/decoding moving picture |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20090027091A true KR20090027091A (en) | 2009-03-16 |
Family
ID=40694843
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020070092296A KR20090027091A (en) | 2007-09-11 | 2007-09-11 | Method and apparatus for encoding/decoding moving picture |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR20090027091A (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101348613B1 (en) * | 2009-12-23 | 2014-01-10 | 한국전자통신연구원 | Apparatus and method for image incoding/decoding |
-
2007
- 2007-09-11 KR KR1020070092296A patent/KR20090027091A/en not_active Application Discontinuation
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101348613B1 (en) * | 2009-12-23 | 2014-01-10 | 한국전자통신연구원 | Apparatus and method for image incoding/decoding |
KR101424221B1 (en) * | 2009-12-23 | 2014-07-30 | 한국전자통신연구원 | Apparatus and method for image incoding/decoding |
US8953686B2 (en) | 2009-12-23 | 2015-02-10 | Electronics And Telecommunications Research Institute | Image encoding/decoding apparatus and method |
US9363528B2 (en) | 2009-12-23 | 2016-06-07 | Electronics And Telecommunications Research Institute | Image encoding/decoding apparatus and method |
US9602832B2 (en) | 2009-12-23 | 2017-03-21 | Electronics And Telecommunications Research Institute | Image encoding/decoding apparatus and method |
US10212448B2 (en) | 2009-12-23 | 2019-02-19 | Electronics And Telecommunications Research Institute | Image encoding/decoding apparatus and method |
US10484706B2 (en) | 2009-12-23 | 2019-11-19 | Electronics And Telecommunications Research Institute | Image encoding/decoding apparatus and method |
US10798409B2 (en) | 2009-12-23 | 2020-10-06 | Electronics And Telecommunications Research Institute | Image encoding/decoding apparatus and method |
US10958933B2 (en) | 2009-12-23 | 2021-03-23 | Electronics And Telecommunications Research Institute | Image encoding/decoding apparatus and method |
US10965953B2 (en) | 2009-12-23 | 2021-03-30 | Electronics And Telecommunications Research Institute | Image encoding/decoding apparatus and method |
US10965952B2 (en) | 2009-12-23 | 2021-03-30 | Electronics And Telecommunications Research Institute | Image encoding/decoding apparatus and method |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101365575B1 (en) | Method and apparatus for encoding and decoding based on inter prediction | |
JP5061179B2 (en) | Illumination change compensation motion prediction encoding and decoding method and apparatus | |
JP5620109B2 (en) | Motion vector estimation method, motion vector estimation device, video encoder, video decoder, and decoding method | |
JP5684823B2 (en) | Hybrid video coding | |
JP5277257B2 (en) | Video decoding method and video encoding method | |
US8582904B2 (en) | Method of second order prediction and video encoder and decoder using the same | |
US9736494B2 (en) | Video prediction encoding device, video prediction encoding method, video prediction decoding device and video prediction decoding method | |
WO2010143583A1 (en) | Image processing device and method | |
KR20080064355A (en) | Method and apparatus for prediction video encoding, and method and apparatus for prediction video decoding | |
KR101442608B1 (en) | Method and apparatus for encoding/decoding image efficiently | |
WO2011121894A1 (en) | Image encoding device, image decoding device, image encoding method, and image decoding method | |
JP2014014169A (en) | Method and apparatus for estimating motion vector using plurality of motion vector predictors, encoder, decoder, and decoding method | |
JP2006246474A (en) | Prediction image generation method and apparatus using single coding mode for all color components, and image and video encoding and decoding methods and apparatuses using the same | |
KR20090095012A (en) | Method and apparatus for encoding and decoding image using consecutive motion estimation | |
KR20100042542A (en) | Reference frame creating method and apparatus and video encoding/decoding method and apparatus using same | |
KR101375667B1 (en) | Method and apparatus for Video encoding and decoding | |
KR101527148B1 (en) | Inter Prediction Apparatus and Video Encoding/Decoding Apparatus and Method Using Same | |
JP6016488B2 (en) | Video compression format conversion apparatus, video compression format conversion method, and program | |
KR20090027091A (en) | Method and apparatus for encoding/decoding moving picture | |
KR101524664B1 (en) | Reference Frame Creating Method and Apparatus and Video Encoding/Decoding Method and Apparatus Using Same | |
KR101575605B1 (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 | |
KR101575635B1 (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 | |
KR101615507B1 (en) | Method for scaling a resolution using motion information and an apparatus thereof | |
KR101533435B1 (en) | Reference Frame Creating Method and Apparatus and Video Encoding/Decoding Method and Apparatus Using Same | |
KR101533441B1 (en) | Reference Frame Creating Method and Apparatus and Video Encoding/Decoding Method and Apparatus Using Same |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
WITN | Withdrawal due to no request for examination |