KR20090108567A - 동화상 처리 시스템, 부호화 장치, 부호화 방법, 복호화 장치, 복호화 방법, 및 기억 매체 - Google Patents
동화상 처리 시스템, 부호화 장치, 부호화 방법, 복호화 장치, 복호화 방법, 및 기억 매체 Download PDFInfo
- Publication number
- KR20090108567A KR20090108567A KR1020090031537A KR20090031537A KR20090108567A KR 20090108567 A KR20090108567 A KR 20090108567A KR 1020090031537 A KR1020090031537 A KR 1020090031537A KR 20090031537 A KR20090031537 A KR 20090031537A KR 20090108567 A KR20090108567 A KR 20090108567A
- Authority
- KR
- South Korea
- Prior art keywords
- encoding
- field
- frame
- macroblock
- prediction
- 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/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods 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/103—Selection of coding mode or of prediction mode
- H04N19/105—Selection of the reference unit for prediction within a chosen coding or prediction mode, e.g. adaptive choice of position and number of pixels used for prediction
-
- 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/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods 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/17—Methods 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/172—Methods 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 picture, frame or field
-
- 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/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods 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/17—Methods 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/176—Methods 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
-
- 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
- H04N19/517—Processing of motion vectors by encoding
- H04N19/52—Processing of motion vectors by encoding by predictive encoding
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
필드간 동화상 부호화시의 화질을 향상시키는 것을 과제로 한다. 부호화 장치는, 결정된 부호화 방법에 의해 매크로 블록을 부호화하고, 결정된 부호화 방법이 필드 예측 부호화일 때, 부호화된 동일 프레임 내의 제1 필드의 매크로 블록을 참조 화상의 하나로 하여, 동일 프레임 내의 제2 필드에 대하여 필드간 예측 부호화를 행한다. 그리고, 복호화 장치는, 부호화 장치에 의해 부호화된 동화상 프레임 및 부호화 정보를 수신하고, 처리 대상 프레임의 각 매크로 블록이 프레임 예측 또는 필드 예측에 의해 부호화되었는지를 판정하고, 판정된 부호화 방법에 대응하는 복호화 방법에 의해 매크로 블록을 복호화하고, 부호화 방법이 필드 예측 부호화일 때, 복호화된 동일 프레임 내의 제1 필드의 매크로 블록을 참조 화상의 하나로 하여, 동일 프레임 내의 제2 필드의 매크로 블록을 필드 예측 복호화한다.
동화상 처리, 부호화, 복호화, 매크로 블록, 프레임, 필드 예측
Description
본 발명은, 입력된 인터레이스 동화상의 각 프레임을 처리 대상으로 하여, 그 처리 대상 프레임에 대하여 프레임간 예측을 행하여 부호화한 부호화 동화상 데이터를 생성하고, 생성한 부호화 동화상 데이터를 복호화 장치에 송신하는 부호화 장치와, 상기 부호화 장치로부터 접수한 부호화 동화상 데이터를 복호화하여, 원래의 인터레이스 동화상을 얻는 복호화 장치로 구성되는 동화상 처리 시스템, 부호화 장치, 부호화 방법, 부호화 프로그램, 복호화 장치, 복호화 방법 및 복호화 프로그램에 관한 것이다.
종래부터, 입력된 동화상을 부호화하는 부호화 장치와, 부호화 장치에 의해 부호화된 데이터를 수신하여 복호하는 복호화 장치로 구성되는 동화상 처리 시스템이 널리 이용되고 있다. 이 동화상 처리 시스템에서 송수신되는 동화상의 정보량은 매우 커서, 미디어 축적이나 네트워크 전송을 그대로 행하는 것은 코스트가 매우 높아진다. 이 때문에, 동화상을 가역 혹은 비가역 방식으로 압축 부호화하는 기술 개발이나 표준화가 종래부터 널리 행해져 왔다. 그 대표예가, MPEG(Moving Picture Experts Group)에 의해 표준화된 MPEG-1, MPEG-2, MPEG-4, MPEG-4 AVC/H.264이다.
이들 표준에서는, 프레임간 움직임 예측 부호화를 채용하고 있다. 그리고, 이 프레임간 움직임 예측 부호화는, 프레임간에서 상관도가 높은 부분을 검색하여, 양자의 위치 차분(움직임 벡터) 및 양자의 화소값 차분(예측 오차)을 부호화하는 것이다. 일반적으로, 동화상에서는, 프레임간의 상관도가 높기 때문에, 화소 차분값이 원래의 화소값과 비교하여 작아져서, 높은 압축 효율을 실현할 수 있다.
또한,이들 표준(MPEG-1을 제외함)에서는, 동화상이 인터레이스 형식의 경우에 대응한 프레임간 예측 부호화, 구체적으로는,프레임 예측과 필드 예측의 동적 선택을 채용하고 있다. 프레임 예측의 경우, 처리 단위인 매크로 블록 및 참조 프레임은 모두, 프레임 구조(1 라인마다 짝수 필드와 홀수 필드가 교대로 출현함)로 된다. 한편,필드 예측의 경우에는, 처리 단위인 매크로 블록 및 참조 프레임은 모두 필드 구조(어느 한쪽의 필드)만으로 이루어진다.
여기에서, 인터레이스 형식, 프레임 예측, 필드 예측의 각각에 대하여 설명한다. 우선,인터레이스 형식의 동화상이란, 도 8a에 도시한 바와 같이, 홀수 라인의 집합인 필드(톱 필드)와, 짝수 라인의 집합인 필드(보텀 필드)를 교대로 묘화하는 형식이며, 도 8b에 도시한 바와 같이, 톱 필드와 보텀 필드를 교대로 묘화한 것을 프레임이라고 한다.
다음으로,프레임 예측이란, 도 9a에 도시한 바와 같이, 처리 대상으로 되어 있는 처리 프레임(처리 대상 프레임)의 처리 대상 매크로 블록에 대응하는, 그 처리 프레임과는 다른 시각의 프레임(예를 들면, 2프레임 전) 상의 예측 화소를 참조하여, 처리 대상의 매크로 블록과 예측 화소의 차분(오차) 화상을 부호화한다. 구체적으로는,도 9b에 도시한 바와 같이, 처리 프레임의 각 처리 매크로 블록에 대하여, 참조 프레임을 참조하여 산출한 차분과 화상의 움직임량을 추정하는 움직임 벡터를 이용하여 부호화한다.
그리고, 필드 예측이란, 도 10a에 도시한 바와 같이, 처리 대상으로 되어 있는 처리 필드(처리 대상 필드)의 처리 대상 매크로 블록에 대응하는, 그 처리 필드와는 다른 시각의 필드(예를 들면, 2필드 전) 상의 예측 화소를 참조하여, 처리 대상의 매크로 블록과 예측 화소의 차분(오차) 화상을 부호화한다. 구체적으로는, 도 10b에 도시한 바와 같이, 처리 필드의 각 처리 매크로 블록에 대하여, 참조 필드를 참조하여 산출한 차분과 화상의 움직임량을 추정하는 움직임 벡터를 이용하여 부호화한다.
이와 같은 매크로 블록 단위에서의 프레임 예측·필드 예측의 적응 절환을 행하는 다양한 기술이 개시되어 있지만(특허 문헌 1 참조), 최근에는, MPEG-4 AVC/H.264에서 채용되고 있는 MBAFF(Macroblock-adaptive Frame-Field)라고 불리는 부호화 방법이 많이 이용되고 있다. 이 방법은, 도 11a에 도시한 바와 같이, 동일 프레임 내에서 부호화의 단위를 세로 방향으로 연속하는 2개의 매크로 블록('매크로 블록 페어'라고 함)으로 하고, 2개의 프레임 예측 매크로 블록, 혹은 2개의 필드 예측 매크로 블록(하나의 톱 필드 매크로 블록과, 하나의 보텀 필드 매크로 블 록) 중 어느 하나를 매크로 블록 페어마다 선택한다.
이 MBAFF에서는, 프레임 화상 내의 매크로 블록의 움직임 예측 방식을 매크로 블록 단위로 프레임 예측 혹은 필드 예측으로 변경하는 것을 가능하게 하고 있다. 또한,프레임 예측은, 정지에 가까운 화상의 부호화에, 필드 예측은, 움직임이 큰 화상의 부호화에 각각 적합하다. 일반적으로, 화상 내에는 정지 부분과 움직임 부분이 혼재하므로, 도 11b에 도시한 바와 같이, 매크로 블록 단위로 예측 방식을 절환함으로써 부호화 효율을 향상하는 것이 가능하게 된다.
[특허 문헌 1] 일본 특허 공개 평5-91500호 공보
그러나, 상기한 종래의 기술에서는, 동일 프레임 내에 제한된 필드 예측을 할 수 없기 때문에, 움직임 예측의 효율이 나쁘다고 하는 과제가 있었다. 구체적으로는,움직임 예측 부호화 방식에서는, 프레임간/필드간 예측 부호화의 원칙으로서, 참조 픽처는 반드시 처리 픽처보다 먼저 부호화 및 국소 복호화되어 있을 필요가 있으며, 또한,상관도가 높은 픽처를 예측 화상으로 함으로써 예측 효율을 향상할 수 있다. 그리고, 이 상관도는, 처리 픽처와 참조 픽처와의 시간 간격에 역비례하기 때문에, 가능한 한 시간이 가까운 프레임 혹은 필드를 참조하는 것이 바람직하다.
그리고, MBAFF 방식에 의해 처리하는 경우, 프레임 예측 매크로 블록 페어는, 상기한 원칙으로부터 시간적으로 가까운(예를 들면 전후) 프레임(부호화 순번 적으로는 앞)을 참조한다. 또한,필드 예측 매크로 블록 페어 중, 시간적으로 앞의 필드에 속하는 매크로 블록은, 마찬가지로 상기한 원칙으로부터 시간적으로 전후의 프레임(부호화 순번적으로는 앞)의 필드를 참조한다. 남은 필드 예측 매크로 블록 페어의 시간적으로 후의 필드에 속하는 매크로 블록은, 동일 프레임 내의 시간적으로 앞의 필드를 참조 필드로 할 수 있으면, 예측 효율을 올릴 수 있다. 그런데, 종래의 MBAFF 방식에서는, 도 11c에 도시한 바와 같이, 매크로 블록 페어의 처리 순번은 화면 좌측 위로부터 우측 아래로 되어 있으며, 화면 내의 처리 순번적으로 앞의 위치의 매크로 블록이, 처리 순번적으로 뒤의 위치의 화소를 참조할 수 없기 때문에, 동일 프레임 내의 시간적으로 전의 필드를 참조 필드로 할 수 없다. 그 결과, 움직임 예측의 효율이 나쁘다.
따라서,본 발명은, 전술한 종래 기술의 과제를 해결하기 위해 이루어진 것으로, 필드간 예측을 이용한 동화상 부호화시의 움직임 예측 효율을 향상시키는 것이 가능한 동화상 처리 시스템, 부호화 장치, 부호화 방법, 부호화 프로그램, 복호화 장치, 복호화 방법 및 복호화 프로그램을 제공하는 것을 목적으로 한다.
전술한 과제를 해결하여, 목적을 달성하기 위해서, 본 시스템은, 처리 대상의 동화상 프레임에 대하여, 움직임 탐색에 의해 움직임 벡터를 추정하고, 추정된 움직임 벡터에 기초하여, 처리 대상 프레임의 각 매크로 블록에 대하여 프레임 예측 부호화를 행할지, 필드 예측 부호화를 행할지를 결정하는 예측 부호화 결정 수단과, 상기 예측 부호화 결정 수단에 의해 결정된 부호화 방법에 의해 매크로 블록 을 부호화하는 제1 부호화 수단과, 상기 예측 부호화 결정 수단에 의해 결정된 부호화 방법이 필드 예측 부호화일 때, 상기 제1 부호화 수단에 의해 부호화된 동일 프레임 내의 제1 필드의 매크로 블록을 참조 화상의 하나로 하여, 동일 프레임 내의 제2 필드에 대하여 필드 예측 부호화를 행하는 제2 부호화 수단과, 상기 제1 부호화 수단 및 제2 부호화 수단에 의해 부호화된 처리 대상의 동화상 프레임에서의 각 매크로 블록의 부호화 방법을 부호화 정보로서 부가하여 송신하는 부호화 데이터 송신 수단을 구비한 부호화 장치와, 상기 부호화 장치에 의해 부호화된 동화상 프레임 및 부호화 정보를 수신하고, 상기 처리 대상 프레임의 각 매크로 블록이 프레임 예측에 의해 부호화되었는지, 필드 예측에 의해 부호화되었는지를 판정하는 부호화 판정 수단과, 상기 부호화 판정 수단에 의해 판정된 부호화 방법에 대응하는 복호화 방법에 의해 부호화된 매크로 블록을 복호화하는 제1 복호화 수단과, 상기 부호화 판정 수단에 의해 판정된 부호화 방법이 필드 예측 부호화일 때, 상기 제1 복호화 수단에 의해 복호화된 동일 프레임 내의 제1 필드의 매크로 블록을 참조 화상의 하나로 하여, 동일 프레임 내의 제2 필드의 매크로 블록을 필드 예측 복호화하는 제2 복호화 수단을 구비한 복호화 장치로 구성된다.
본 발명에 의하면, 동일 프레임 내의 시간적으로 전의 필드를 참조 필드로서 필드 예측을 실시할 수 있어,움직임 예측의 효율을 향상시키는 것이 가능하다.
이하에 첨부 도면을 참조하여, 본 발명에 따른 동화상 처리 시스템, 부호화 장치, 부호화 방법, 부호화 프로그램, 복호화 장치, 복호화 방법 및 복호화 프로그램의 실시예를 상세히 설명한다. 또한,이하에서는, 본 실시예에 따른 동화상 처리 시스템의 개요 및 특징, 동화상 처리 시스템의 구성 및 처리의 흐름을 순서대로 설명하고, 마지막으로 본 실시예에 대한 다양한 변형예를 설명한다.
<실시예 1>
본 실시예에서는, 프레임 내에서 톱 필드가 시간적으로 앞이고, 보텀 필드가 시간적으로 뒤라고 하는 것을 전제로 하여 설명하였지만, 보텀 필드가 시간적으로 전인 경우에는 톱 필드와 보텀 필드를 바꿔 읽음으로써 대응 가능하다. 또한,MPEG-2에서도 매크로 블록 단위로 움직임 예측 방식을 프레임 예측 혹은 필드 예측으로 절환할 수 있지만, MPEG-4 AVC/H.264의 MBAFF는 MPEG-2와는 달리,프레임 내에서 상하로 인접하는 매크로 블록 페어라고 불리는 2개의 매크로 블록 단위로 행함으로써, 필드 예측시의 움직임 예측 단위를 매크로 블록 사이즈(16×16)로 하여, 부호화 효율을 향상하고 있다. 한편,MPEG-2의 경우에는 16×8로 된다.
[동화상 처리 시스템의 개요 및 특징]
처음에, 도 1a와 도 1b를 이용하여, 실시예 1에 따른 동화상 처리 시스템의 개요 및 특징을 설명한다. 도 1a와 도 1b는, 실시예 1에 따른 동화상 처리 시스템의 특징을 설명하기 위한 도면이다.
실시예 1에서는, 입력된 동화상을 부호화한 비트 스트림을 송신하는 부호화 장치와, 부호화 장치로부터 송신된 비트 스트림을 수신하여 복호화하는 복호화 장 치가, 네트워크를 통해서 서로 통신 가능하게 접속된 동화상 처리 시스템에 대하여 설명한다.
이 동화상 처리 시스템은, 상기한 바와 같이, 입력된 동화상을 부호화한 비트 스트림을 송신하고, 부호화 장치로부터 송신된 비트 스트림을 수신하여 복호화하는 것을 개요로 하는 것이며, 특히, 필드간 동화상 부호화시의 화질을 향상시키는 것이 가능한 것에 주된 특징이 있다.
구체적으로는,도 1a에 도시한 바와 같이, 화면 좌측 위로부터 우측 아래를 향해서 프레임 내에서 상하로 인접하는 2개의 매크로 블록 단위인 매크로 블록 페어를 부호화하는 경우에, 프레임 예측을 이용하여 부호화하는 매크로 블록 페어를 나타내는 프레임 예측 매크로 블록 페어에 대해서는 통상과 같이 부호화를 실시하고, 필드 예측을 이용하여 부호화하는 매크로 블록 페어를 나타내는 필드 예측 매크로 블록 페어에 대해서는, 예를 들면, 톱 필드 매크로 블록만을 먼저 부호화한다. 그리고, 1프레임 내의 화면 좌측 위로부터 우측 아래까지 한번 부호화를 실시한 후에, 도 1b에 도시한 바와 같이, 필드 예측 매크로 블록의 남은 보텀 필드 매크로 블록에 대하여, 각각의 보텀 필드 매크로 블록이 대응하는 톱 필드 매크로 블록을 참조 화상의 하나로 하여 부호화를 실시한다.
그 후, 이와 같이 하여 부호화된 비트 스트림을 수신한 복호화 장치는, 부호화 처리 방법과 마찬가지로,먼저, 1프레임 내의 화면 좌측 위로부터 우측 아래까지, 프레임 예측 매크로 블록과 필드 예측 매크로 블록에서의 톱 필드 매크로 블록의 각각에 대하여 복호화한 후에, 필드 예측 매크로 블록의 남은 보텀 필드 매크로 블록에 대하여, 각각의 보텀 필드 매크로 블록이 대응하는 톱 필드 매크로 블록을 참조 화상의 하나로 하여 복호화를 실시한다.
이와 같이 함으로써, 실시예 1에 따른 동화상 처리 시스템은, 화면 내의 처리 순번적으로 앞의 위치의 매크로 블록이, 처리 순번적으로 뒤의 위치의 화소를 참조할 수 있어,즉, 동일 프레임 내의 시간적으로 전인 필드를 참조 필드로 하여 필드 예측을 실시할 수 있어,움직임 예측의 효율을 향상시킬 수 있는 결과, 필드간 동화상 부호화시의 화질을 향상시키는 것이 가능하다.
[동화상 처리 시스템의 구성]
다음으로,도 2∼도 4를 이용하여, 도 1a와 도 1b에 도시한 동화상 처리 시스템의 구성을 설명한다. 이 동화상 처리 시스템은, 부호화 장치와 복호화 장치로 구성되므로,각각의 장치 구성을 구체적으로 설명한다.
<부호화 장치의 구성>
우선,도 2를 이용하여 동화상 처리 시스템에서의 부호화 장치의 구성에 대하여 설명한다. 도 2는, 실시예 1에 따른 동화상 처리 시스템에서의 부호화 장치의 구성을 나타내는 블록도이다.
이 부호화 장치는, FrameMemory(10)와, 감산기(11)와, DCT/Q(12)와, RateContorol(13)과, VLC(14)와, IQ/IDCT(15)와, 가산기(16)와, FrameMemory(17)와, DeblockingFilter(18)와, MCintraPred.(19)와, ME(20)와, 0rderControl(21)로 구성된다.
FrameMemory(10)는, 입력 동화상을 일단 보존하는 프레임 메모리이다. 구체 적으로 예를 들면, FrameMemory(10)는, 외부 네트워크나 외부 장치(예를 들면, CD나 HDD 등의 기억 장치 등)로부터 입력된 입력 동화상을 1프레임씩 일시 기억한다.
감산기(11)는, 입력 동화상 내의 부호화 대상 매크로 블록과, 예측 화상과의 차분을 취하고, 예측 오차 화상을 생성한다. 구체적으로 예를 들면, 감산기(11)는, FrameMemory(10)와 MCintraPred.(19)와 DCT/Q(12)에 각각 접속되며, 후술하는 MCintraPred.(19)에 의해 생성된 FrameMemory(10)에 저장된 1프레임인 입력 동화상 내의 부호화 대상 매크로 블록에 대한 예측 화상과의 차분을 취한 예측 오차 화상을 생성하고, 생성한 예측 오차 화상을 DCT/Q(12)에 출력한다.
DCT/Q(12)는, 예측 오차 화상에 대하여 DCT(이산 코사인 변환) 연산 및 양자화 연산을 행한다. 구체적으로 예를 들면, DCT/Q(12)는, RateContorol(13)과 VLC(14)와 IQ/IDCT(15)에 접속되며, 후술하는 RateContorol(13)로부터 입력된 양자화값을 이용하여, 감산기(11)로부터 입력된 예측 오차 화상에 대하여 DCT 연산 및 양자화 연산을 행하고, 그 결과를 VLC(14)와 IQ/IDCT(15)에 각각 출력한다.
RateContoro1(13)은, 레이트 제어부이다. 구체적으로 예를 들면, RateContorol(13)은, FrameMemory(10)에 저장된 1프레임인 입력 동화상으로부터 DCT/Q(12)에 의해 실시되는 양자화 연산에 이용하는 부호화 후의 비트 수와 화질을 제어하는 양자화값을 결정하고, 결정한 양자화값을 DCT/Q(12)에 출력한다.
VLC(14)는, 가변 길이 부호화부이며, 구체적으로는,DCT 및 양자화 연산된 예측 오차 화상에 대하여, 런 레벨 변환 등의 가역 부호화를 행하여, 부호화 동화상을 생성한다. 구체적으로 예를 들면, VLC(14)는, DCT/Q(12)에 의해 DCT 및 양자 화 연산된 예측 오차 화상에 대하여, 런 레벨 변환 등의 가역 부호화를 행하여 부호화 동화상 데이터를 생성하고, 생성한 부호화 동화상 데이터를 도 3에 도시한 바와 같은 비트 스트림으로서 복호화 장치에 송신한다. 또한,도 3은, 부호화 장치에 의해 생성되는 부호화 동화상 데이터의 예를 나타내는 도면이다.
여기에서, 도 3에 도시한 부호화 동화상 데이터에 대하여 설명한다. 도 3에 도시한 참조 부호 200은, SPS(Sequence Parameter Set)이며, 화면 사이즈나 픽처 종별(프레임, 필드, MBAFF 등)이라고 한, 복수 픽처(시퀀스)에서 공통의 파라미터가 기술된다. 참조 부호 201은, PPS(Picture Parameter Set)이며, 엔트로피 부호화 모드 등, 픽처 마다의 부호화 모드가 기술된다. 참조 부호 202는, 슬라이스이며, 하나의 픽처(프레임, 혹은 필드)에는 하나 내지 복수의 필드가 포함된다. 참조 부호 203은, MBAFF 플래그이며, 이 시퀀스 내의 프레임을 MBAFF 모드에서 부호화할지의 여부가 기술된다. MPEG-4 AVC/H.264에서는 mb_adaptive_frame_field_flag에 상당한다. 참조 부호 204는, SM0F(Separate MB Order Flag)이며, MBAFF 모드 시에, 동일 프레임 내에서의 필드간 참조를 행할지의 여부를 기술한다. 부정인 경우에는, MPEG-4 AVC/H.264와 동일한 MBAFF 부호화를 행하는 것을 의미한다.
그리고, 참조 부호 205는, 슬라이스 헤더이며, 참조 프레임 리스트 등이 기술된다. 참조 부호 206은, 매크로 블록 페어가 프레임 모드에서 부호화되었는지, 필드 모드에서 부호화되었는지를 식별하는 플래그이다. MPEG-4 AVC/H.264에서는 mb_field_decoding_flag에 상당한다. 참조 부호 207은, 프레임 매크로 블록 페어 의 매크로 블록, 혹은 필드 매크로 블록 페어의 톱 필드 매크로 블록의 데이터이며, 부호화 모드(인트라·인터), 참조 프레임 식별자, 움직임 벡터, 양자화 계수, 양자화 DCT 계수 등이 기술된다. 참조 부호 208은, 후술하는 플로우에서 설명하는 「전반」처리 부분과 「후반」처리 부분과의 경계를 나타내는 플래그이다. 참조 부호 209는, 필드 매크로 블록 페어의 보텀 필드 매크로 블록의 데이터이며, 부호화 모드(인트라·인터), 참조 프레임 식별자, 움직임 벡터, 양자화 계수, 양자화 DCT 계수 등이 기술된다.
도 2를 다시 참조하면, IQ/IDCT(15)는, DCT/Q(12)와 가산기(16)에 접속되는 역양자화부 및 IDCT(역이산 코사인 변환)부이며, DCT·양자화 연산된 예측 오차 화상에 대하여 역양자화 및 IDCT 연산 연산을 행한다. 가산기(16)는, IQ/IDCT(15)와 FrameMemory(17)에 접속되며, 역양자화 및 IDCT 연산된 예측 오차 화상에, 후술하는 MCintraPred.(19)에 의해 입력된 인트라 예측 화상 또는 인터 예측 화상을 가산하여 국소 복호화 화상을 생성하고, 생성한 국소 복호화 화상을 FrameMemory(17)에 저장한다.
FrameMemory(17)는, 국소 복호화 화상을 보존하는 프레임 메모리이며, 구체적으로 예를 들면, 가산기(16)와 DeblockingFilter(18)와 MCintraPred.(19)와 ME(20)에 접속되며, 가산기(16)에 의해 생성되어서 입력된 국소 복호화 화상을 접수하여 보존한다.
DeblockingFilter(18)는, FrameMemory(17)에 보존되는 국소 복호화 화상에 대하여, 매크로 블록 경계에 로우 패스 필터(디블록킹 필터)를 적용하여, 국소 복 호화 화상 내의 블록 왜곡을 제거하는 디블록킹 필터이다.
MCintraPred.(19)는, FrameMemory(17)에 보존되는 국소 복호화 화상으로부터 예측 화소를 생성한다. 구체적으로 예를 들면, MCintraPred.(19)는, 감산기(11)와 FrameMemory(17)와 ME(20)에 접속되며, 매크로 블록을 인트라 부호화하는 경우에는, FrameMemory(17)에 축적된 동일 프레임 내의 이미 부호화·국소 복호화한 화소로부터 인트라 예측 화상을 생성한다. 또한,MCintraPred.(19)는, 매크로 블록을 인터 부호화하는 경우에는, FrameMemory(17)에 축적된 참조 프레임·필드와, ME(20)에 의해 추정되어 입력된 움직임 벡터로부터 인터 예측 화상을 생성한다.
ME(20)는, 움직임 벡터를 추정한다. 구체적으로 예를 들면, ME(20)는, FrameMemory(10)와 FrameMemory(17)와 MCintraPred.(19)와 OrderControl(21)에 접속되며, FrameMemory(10)에 축적된 처리 대상의 프레임 혹은 필드와, FrameMemory(17)에 축적된 부호화·국소 복호화 완료의 프레임 혹은 필드 사이에서 움직임 벡터 추정 연산을 행하고, 움직임 벡터를 산출한다. 그리고, ME(20)는, 산출한 움직임 벡터를 MCintraPred.(19)와 0rderControl(21)에 출력한다.
0rderControl(21)은, 매크로 블록 처리 순서를 결정한다. 구체적으로 예를 들면, 0rderControl(21)는, FrameMemory(17)와 ME(20)에 접속되며, ME(20)의 움직임 벡터 추정 결과를 기초로, 각 매크로 블록 페어를 프레임 혹은 필드 중 어느 하나에서 예측 부호화할지를 결정하고, 또한, 그 처리 순번 및 화상 내의 매크로 블록 어드레스를 결정한다. 그리고, 0rderControl(21)은, 각 처리 순번에서의 매크로 블록의 매크로 블록 어드레스를 FrameMemory(10) 및 FrameMemory(17)에 통지한 다. 또한,OrderControl(21)에서의 상세한 처리에 대해서는, 처리의 흐름에서 설명한다.
<복호화 장치의 구성>
다음으로,도 4를 이용하여 동화상 처리 시스템에서의 복호화 장치의 구성에 대하여 설명한다. 도 4는, 실시예 1에 따른 동화상 처리 시스템에서의 복호화 장치의 구성을 나타내는 블록도이다.
이 복호화 장치는, VLD(50)와, IQ/IDCT(51)와, 가산기(52)와, FrameMemory(53)와, DeblockingFilter(54)와, MCintraPred.(55)와, OrderControl(56)로 구성된다. VLD(50)는, IQ/IDCT(51)와, MCintraPred.(55)와 0rderControl(56)에 접속되며, 부호화 장치로부터 수신한 부호화 동화상(도 3 참조)에 대하여 런 레벨 변환 등의 가역 복호화를 행하고, DCT·양자화 연산된 예측 오차 화상을 생성하는 가변 길이 복호화부이다. 또한,VLD(50)는, 각 매크로 블록 페어의 종별(프레임 혹은 필드)을 부호화 동화상으로부터 취득한다.
IQ/IDCT(51)는, VLD(50)와 가산기(52)에 접속되는 역양자화부 및 IDCT(역이산 코사인 변환)부이며, 구체적으로 예를 들면, VLD(50)에 의해 생성되어 입력된 DCT·양자화 연산된 예측 오차 화상에 대하여 역양자화 및 IDCT 연산을 행한다. 가산기(52)는, FrameMemory(53)와 MCintraPred.(55)에 접속되며, VLD(50)에 의해 생성되어 입력된 역양자화 및 IDCT 연산된 예측 오차 화상에 대하여, 후술하는 MCintraPred.(55)에 의해 입력된 인트라 예측 화상 또는 인터 예측 화상을 가산하여 복호화 화상을 생성하고, 생성한 복호화 화상을 FrameMemory(53)에 저장한다.
FrameMemory(53)는, 생성된 복호화 화상을 보존하는 프레임 메모리이며, 구체적으로 예를 들면, 가산기(52)와 DeblockingFilter(54)와 MCintraPred.(55)와 OrderControl(56)에 접속되며, 가산기(52)에 의해 생성되어 입력된 복호화 화상을 접수하여 보존한다. DeblockingFilter(54)는, FrameMemory(53)에 보존되는 복호화 화상에 대하여, 매크로 블록 경계에 로우 패스 필터(디블록킹 필터)를 적용하여, 복호화 화상 내의 블록 왜곡을 제거하는 디블록킹 필터이다.
MCintraPred.(55)는, FrameMemory(53)에 저장되는 복호화 화상으로부터 예측 화소를 생성한다. 구체적으로 예를 들면, MCintraPred.(55)는, VLD(50)와 가산기(52)와 FrameMemory(53)에 접속되며, 매크로 블록을 인트라 복호화하는 경우에는, FrameMemory(53)에 축적된 동일 프레임 내의 이미 복호화한 화소로부터 인트라 예측 화상을 생성한다. 또한,MCintraPred.(55)는, 매크로 블록을 인터 복호화하는 경우에는, FrameMemory(53)에 축적된 참조 프레임·필드와, VLD(50)에 의해 복호된 움직임 벡터로부터 인터 예측 화상을 생성한다. 그리고, MCintraPred.(55)는, 생성한 인트라 예측 화상 또는 인터 예측 화상을 가산기(52)에 출력한다.
0rderControl(56)은, 매크로 블록 처리 순서를 결정한다. 구체적으로 예를 들면, 0rderControl(56)은, VLD(50)와 FrameMemory(53)에 접속되며, VLD(50)에 의해 복호된 매크로 블록 페어의 종별로부터 그 처리 순번 및 화상 내의 매크로 블록 어드레스를 결정한다. 그리고, 0rderControl(56)은, 각 처리 순번에서의 매크로 블록의 매크로 블록 어드레스를 FrameMemory(53)에 통지한다.
[동화상 처리 시스템에 의한 처리]
다음으로,도 5와 도 6을 이용하여, 동화상 처리 시스템에 의한 처리를 설명한다. 또한,여기에서는, 실시예 1에 따른 동화상 처리 시스템에서의 프레임 처리와 매크로 블록 처리 순서 결정 처리에 대하여 각각 설명한다. 또한,부호화 장치와 복호화 장치에서는, 기본적으로 부호화할 것인지 복호화할 것인지 다를 뿐으로, 처리의 대략적인 흐름은 동일하므로, 여기에서는, 부호화 장치를 예로 하여 설명한다.
<프레임 처리의 흐름>
우선,도 5를 이용하여, 동화상 처리 시스템에서의 프레임 처리의 흐름에 대하여 설명한다. 도 5는, 실시예 1에 따른 동화상 처리 시스템에서의 프레임 처리의 흐름을 설명하는 플로우차트이다.
도 5에 도시한 바와 같이, 화상이 입력되면(스텝 S100 '긍정'), 부호화 장치는, 참조 프레임·필드의 리스트를 생성하는 초기화를 실시한다(스텝 S101).
계속해서, 부호화 장치는, 처리 프레임과, 참조 프레임·필드 사이에서 움직임 벡터 추정을 행한다(스텝 S102). 구체적으로는,부호화 장치는, 움직임 벡터 추정을 행함으로써, 매크로 블록 페어를 프레임 예측 부호화할지,혹은 필드 예측 부호화할지를 결정한다.
그리고, 부호화 장치는, 모든 프레임 매크로 블록 페어와, 모든 톱 필드 매크로 블록의 부호화 처리를 행하는 「전반」처리를 실시한다(스텝 S103). 구체적으로는,부호화 장치는, 모든 프레임 매크로 블록 페어와, 모든 톱 필드 매크로 블록의 부호화 처리를 행하여 생성한 가변 길이 부호화 및 국소 복호화 화상을 FrameMemory(17)에 기입한다.
계속해서, 부호화 장치는, 남은 모든 보텀 필드 매크로 블록에 대하여, 각각의 보텀 필드 매크로 블록에 대응하는 톱 필드 매크로 블록을 참조 화상의 하나로 한 부호화 처리(「후반」처리)를 행하여 부호화 동화상을 생성한다(스텝 S104). 그 후, 부호화 장치는, 생성된 부호화 동화상에 대하여, 매크로 블록의 경계에 적용되는 로우 패스 필터인 디블록킹 필터를 이용하여 디블록킹 필터 처리를 실시하고(스텝 S105), 복호화 장치에 송신한다. 또한,H.264에서는,프레임·필드간 예측에 사용되는 화상은 디블록킹 필터 적용 후의 화상이지만, 본 실시예에서는, 동일 프레임 내의 보텀 필드로부터 톱 필드로의 참조시에 한하여, 디블록킹 필터 적용 전의 화상으로 한다.
여기에서, 복호화 장치에서의 복호화 장치에 대해서도 간단히 설명하면, 복호화 장치는, 도 5의 스텝 S102의 처리는 실시하지 않는다. 구체적으로는, 복호화 장치는, 부호화 동화상 데이터를 접수하면, 스텝 S101에서, 프레임 예측·필드 예측의 정보는 부호화 동화상으로부터 추출한다. 그리고, 복호화 장치는, 스텝 S103에서, 모든 프레임 매크로 블록 페어와, 모든 톱 필드 매크로 블록의 복호화 처리를 행하고, 스텝 S104에서, 복호화 화상을 FrameMemory(53)에 기입한다. 그 후, 복호화 장치는, 디블록킹 필터를 이용하여 디블록킹 필터 처리를 실시한다. 또한,디블록킹 필터의 처리는, 「전반」 및 「후반」의 부호화·복호화 처리가 끝나고, 프레임 전체의 부호화·복호화 처리가 완료하고 나서 행한다.
<매크로 블록 처리 순서 결정 처리의 흐름>
다음으로,도 6을 이용하여, 동화상 처리 시스템에서의 매크로 블록 처리 순서 결정 처리의 흐름에 대하여 설명한다. 도 6은, 실시예 1에 따른 동화상 처리 시스템에서의 매크로 블록 처리 순서 결정 처리의 흐름을 설명하는 플로우차트이다. 또한,스텝 S201∼스텝 S206의 처리는, 프레임 부호화 혹은 복호화 처리의 「전반」에서 행해지는 처리이며, 스텝 S206∼스텝 S210의 처리는, 프레임 부호화 혹은 복호화 처리의 「후반」에서 행해지는 처리이다. 또한,각 매크로 블록을 프레임 예측에 의해 부호화할 것인지 필드 예측에 의해 부호화할 것인지를 결정하는 방법에 대해서는, 후술하므로, 여기에서는 상세한 설명은 생략한다.
도 6에 도시한 바와 같이, 부호화 장치(복호화 처리의 경우에는 「복호화 장치」, 이하 마찬가지)는, pair_count, mb_count, mb2_count를 초기화한다(스텝 S200). 구체적으로는,부호화 장치는, pair_count, mb_count, mb2_count는 각각, 처리한 매크로 블록 페어의 누적 수, 부호화(혹은, 복호화)한 매크로 블록의 누적 수 및 처리를 펜딩하여 「후반」에서 부호화를 행하는 매크로 블록의 누적 수이다.
그리고, 부호화 장치는, pair_count번째의 매크로 블록 페어가, 프레임 예측될지 필드 예측될지를 판정하는 분기 처리를 행한다(스텝 S201). 또한,MB_pair(num)는, num번째의 매크로 블록 페어의 예측 종별을 나타낸다.
계속해서, pair_count번째의 매크로 블록 페어가 프레임 예측인 경우(스텝 S201 '긍정'), 부호화 장치는, 상측 매크로 블록의 처리시에 이용하는 정보를 생성하고(스텝 S202), 하측 매크로 블록의 처리시에 이용하는 정보를 생성한다(스텝 S203). 여기에서, SEND_Frame(num, x, y)은, FrameMemory(10) 및 FrameMemory(17)(복호화 처리에는 FrameMemory(53)) 대하여, num번째의 프레임 예측 매크로 블록의 화면 내 어드레스가 (x, y)인 것을 통지하는 것을 의미하고 있다. 또한,MB_WIDTH는 프레임 내의 가로 방향의 매크로 블록 수이다.
그 후, pair_count번째의 매크로 블록 페어가 필드 예측인 경우(스텝 S201 '부정'), 부호화 장치는, 톱 필드 매크로 블록의 처리시에 필요로 되는 정보를 생성한다(스텝 S204). 여기에서, SEND_Field(num, x, y)는, FrameMemory(10) 및 FrameMemory(17)(복호화 처리에는 FrameMemory(53))에 대하여, num번째의 필드 예측 매크로 블록의 화면 내 어드레스가 (x, y)인 것을 통지하는 것을 의미하고 있다.
계속해서, 부호화 장치는, 보텀 필드 매크로 블록의 처리시에 필요로 되는 정보를 생성한다(스텝 S205). 또한,스텝 S205에서는, pair_count번째의 매크로 블록 페어가 필드 예측인 경우의 톱 필드 매크로 블록 페어의 처리시에 생성하는 정보이다. 또한,SAVE(num, x, y)는, OrderControl(21)(복호화 처리에는 0rderControl(56))의 내부에 있는 메모리 영역에 대하여, num번째의 필드 예측 보텀 매크로 블록의 화면 내 어드레스 (x, y)를 보존하는 것을 의미하고 있다.
그 후, 부호화 장치는, 프레임 부호화(혹은, 복호화 처리)의 「전반」에서 처리가 행해질 매크로 블록이 아직 존재하는지의 여부의 판정을 행한다(스텝 S206). 또한,MB_HEIGHT는, 프레임 내의 세로 방향의 매크로 블록 수이다.
그리고, 「전반」에서 처리가 행해질 매크로 블록이 아직 존재하지 않은 경우(스텝 S206 '긍정'), 부호화 장치는, 프레임 부호화(혹은, 복호화 처리)의 「후 반」에 앞서 행해지는 초기화를 행한다(스텝 S207). 또한,NUM_MB2는, 「전반」에서 처리가 펜딩되고 「후반」에서 부호화(혹은, 복호화)를 행하는 보텀 필드 매크로 블록의 총 수이다.
그렇게 하면,부호화 장치는, 「후반」의 mb2_count번째로 부호화(혹은, 복호화) 처리하는 보텀 필드 매크로 블록의 어드레스 정보를 취득한다(스텝 S208). 이 처리에서의 RESTORE(num, &x, &y)는, OrderControl(21)(복호화 처리에는 OrderControl(56))의 내부에 있는 메모리 영역에 대하여, num번째의 필드 예측 보텀 필드 매크로 블록의 화면 내 어드레스를 조회하고, 그 결과가 (&x, &y)에 저장되는 것을 의미하고 있다.
그 후, 부호화 장치는, mb2_count번째로 부호화(혹은, 복호화 처리)하는 보텀 필드 매크로 블록의 어드레스 정보의 통지를 행하고(스텝 S209), 프레임 부호화(혹은 복호화 처리)의 「후반」에서 처리가 행해질 보텀 필드 매크로 블록이 아직 존재하는지의 여부의 판정을 행하고(스텝 S210) 「후반」에서 처리가 행해질 보텀 필드 매크로 블록이 존재하지 않게 된 경우에, 처리를 종료한다.
[프레임 예측에 이용하는 참조 프레임에 대하여]
MPEG-4 AVC/H.264에서는, 복수의 프레임·필드 중으로부터, 움직임 예측에 이용하는 프레임·필드를 매크로 블록 단위로 선택할 수 있다. 슬라이스 단위에서의 선택 가능한 프레임·필드의 일람을 참조 프레임 리스트, 매크로 블록 단위의 선택 정보를 참조 프레임 식별자라고 부른다.
SMOF가 0ff인 경우에는, 참조 프레임 리스트는 MPEG-4 AVC/H.264인 것(RefPicList0[], RefPicList1[]) 그 자체를 이용한다. 한편,SMOF가 On인 경우에는, 「전반」처리시에, RefPicList0[] 및 RefPicListl[] 그 자체를 참조 프레임 리스트하고, 「후반」처리시에, 전방향 참조 프레임 리스트인 RefPicList0[]을 갱신한다. 구체적으로는 처음의 엔트리에, 처리 프레임에의 참조값을 넣는다. 계속되는 엔트리는, 원래의 리스트를 하나씩 시프트한다.
또한,보텀 필드 매크로 블록에서는,전방향 참조 인덱스를 "0"으로 함으로써, 참조 필드를 동일 프레임 내의 톱 필드로 할 수 있다. "0" 이외로 하면,다른 프레임 내의 필드를 참조하게 된다.
[필드·프레임 판정]
여기에서는, 매크로 블록 페어를 필드 예측에 의해 부호화할 것인지, 또는, 프레임 예측에 의해 부호화할 것인지를 판정하는 필드·프레임 판정에 대하여 설명한다. 이 예에서는 처리 프레임이 B 픽처(양방향 참조)의 경우를 나타낸다. P 픽처(전방향 참조)의 경우에는, 후방향의 움직임 벡터를 제외한 것으로 된다.
이 상태에서, 도 5의 스텝 S101 및 스텝 S102의 처리에서, 처리 프레임의 움직임 벡터 추정을 행한다. 이 때,각 매크로 블록 페어에 대하여, 이하의 값을 계산한다. 또한,복수의 참조 가능 프레임·필드로부터 참조하는 프레임·필드를 선택하는 방법, 및 참조하는 프레임·필드와 처리 프레임으로부터 최적 움직임 벡터를 추정하는 방법은, 일반적으로 이용되고 있는 공지의 방법을 적용하는 것으로 한다.
프레임 예측시의 상측 및 하측 매크로 블록의 전방향 참조 프레임 인덱 스(refIdxL0_Frame_Upper, refIdxL0_Frame_Lower)와, 프레임 예측시의 상측 및 하측 매크로 블록의 후방향 참조 프레임 인덱스(refIdxL1_Frame_Upper, refIdxL1_Frame_-Lower)와, 프레임 예측시의 상측 및 하측 매크로 블록의 전방향 움직임 벡터(mvL0_Frame_Upper, mvL0_Frame_Lower)와, 프레임 예측시의 상측 및 하측 매크로 블록의 후방향 움직임 벡터(mvL1_Frame_Upper, mvL1_Frame_Lower)와, 프레임 예측시의 상측 및 하측 매크로 블록의 움직임 예측 오차(차분 절대값의 총합)(cost_Frame_Upper, cost_Frame_Lower)와, 필드 예측시의 톱 필드 및 보텀 필드 매크로 블록의 전방향 참조 프레임 인덱스(refIdxL0_Field_Top, refIdxL0_Field_Bottom)와, 필드 예측시의 톱 필드 및 보텀 필드 매크로 블록의 후방향 참조 프레임 인덱스(refIdxL1_Field_Top, refIdxL1_Field_Bottom)와, 필드 예측시의 톱 필드 및 보텀 필드 매크로 블록의 전방향 움직임 벡터(mvL0_Field_Top, mvL0_Field_Bottom)와, 필드 예측시의 톱 필드 및 보텀 필드 매크로 블록의 후방향 움직임 벡터(mvL1_Field_Top, mvL1_Field_Bottom)와, 필드 예측시의 톱 필드 및 보텀 필드 매크로 블록의 움직임 예측 오차(차분 절대값의 총합)(cost_Field_Top, cost_Field_Bottom)를 계산한다.
그리고,「(cost_Frame_Upper+cost_Frame_Lower)≤(cost_Field_Top+cost_Field_Bottom)」의 조건이 만족되는 경우, 처리 매크로 블록 페어를 프레임 구조로 한다. 그렇지 않으면 필드 구조로 한다.
[실시예 1에 의한 효과]
이와 같이, 실시예 1에 의하면, 부호화 장치는, 처리 대상의 동화상 프레임 에 대하여, 움직임 탐색에 의해 움직임 벡터를 추정하고, 추정된 움직임 벡터에 기초하여, 처리 대상 프레임의 각 매크로 블록에 대하여 프레임 예측 부호화를 행할지, 필드 예측 부호화를 행할지를 결정하고, 결정된 부호화 방법에 의해 매크로 블록을 부호화하고, 결정된 부호화 방법이 필드 예측 부호화일 때, 부호화된 동일 프레임 내의 제1 필드의 매크로 블록을 참조 화상의 하나로 하여, 동일 프레임 내의 제2 필드에 대하여 필드간 예측 부호화를 행하고, 부호화된 처리 대상의 동화상 프레임에서의 각 매크로 블록의 부호화 방법을 부호화 정보로서 부가하여 송신한다. 그리고, 복호화 장치는, 부호화 장치에 의해 부호화된 동화상 프레임 및 부호화 정보를 수신하고, 처리 대상 프레임의 각 매크로 블록이 프레임 예측에 의해 부호화되었는지, 필드 예측에 의해 부호화되었는지를 판정하고, 판정된 부호화 방법에 대응하는 복호화 방법에 의해 부호화된 매크로 블록을 복호화하고, 판정된 부호화 방법이 필드 예측 부호화일 때, 복호화된 동일 프레임 내의 제1 필드의 매크로 블록을 참조 화상의 하나로 하여, 동일 프레임 내의 제2 필드의 매크로 블록을 필드 예측 복호화한다. 그 때문에,화면 내의 처리 순번적으로 앞의 위치의 매크로 블록이, 처리 순번적으로 뒤의 위치의 화소를 참조할 수 있어,즉, 동일 프레임 내의 시간적으로 전의 필드를 참조 필드로서 필드 예측을 실시할 수 있어,움직임 예측의 효율을 향상시킬 수 있는 결과, 필드간 동화상 부호화시의 화질을 향상시키는 것이 가능하다.
<실시예 2>
그런데, 지금까지 본 발명의 실시예에 대하여 설명하였지만, 본 발명은 전술 한 실시예 이외에도, 다양한 서로 다른 형태에 의해 실시되어도 되는 것이다. 따라서,이하에 설명하는 바와 같이, (1) 부호화 방법, (2) 시스템 구성 등, (3) 프로그램으로 각각 구분하여 다른 실시예를 설명한다.
(1) 부호화 방법
예를 들면, 본 실시예에서는, 프레임 내에서 톱 필드가 시간적으로 앞이고, 보텀 필드가 시간적으로 뒤라고 하는 것을 전제로 하여 설명하였지만, 본 발명은 이것에 한정되는 것이 아니라, 보텀 필드가 시간적으로 전인 경우에는 톱 필드와 보텀 필드를 바꿔 읽음으로써 대응 가능하다.
(2) 시스템 구성 등
또한,도시한 각 장치의 각 구성 요소는 기능 개념적인 것이며, 반드시 물리적으로 도시한 바와 같이 구성되어 있는 것을 요하지 않는다. 즉, 각 장치의 분산·통합의 구체적 형태는 도시한 것에 한정되지 않으며, 그 전부 또는 일부를, 각종 부하나 사용 상황 등에 따라서, 임의의 단위에 의해 기능적 또는 물리적으로 분산·통합하여 구성할 수 있다. 또한,각 장치에서 행해지는 각 처리 기능은, 그 전부 또는 임의의 일부가, CPU 및 그 CPU에서 해석 실행되는 프로그램에 의해 실현되거나, 혹은, 와이어드 로직에 의한 하드웨어로서 실현될 수 있다.
또한,본 실시예에서 설명한 각 처리 중,자동적으로 행해지는 것으로서 설명한 처리(예를 들면, 화상의 입력 처리 등)의 전부 또는 일부를 수동적으로 행할 수도 있다. 이 밖에, 상기 문서 내나 도면 내에서 도시한 처리 수순, 제어 수순, 구체적 명칭, 각종 데이터나 파라미터를 포함하는 정보에 대해서는, 특기하는 경우 를 제외하고 임의로 변경할 수 있다.
(3) 프로그램
그런데,상기한 실시예에서 설명한 각종 처리는, 미리 준비된 프로그램을 퍼스널 컴퓨터나 워크스테이션 등의 컴퓨터 시스템에 의해 실행함으로써 실현할 수 있다. 따라서,이하에서는, 상기한 실시예와 마찬가지의 기능을 갖는 프로그램을 실행하는 컴퓨터 시스템을 다른 실시예로서 설명한다.
우선,부호화 프로그램을 실행하는 컴퓨터 시스템의 예에 대하여 설명한다. 도 7a는, 부호화 프로그램을 실행하는 컴퓨터 시스템의 예를 나타내는 도면이다. 도 7a에 도시한 바와 같이, 컴퓨터 시스템(100)은, RAM(101)과, HDD(102)와, ROM(103)과, CPU(104)로 구성된다. 여기에서, ROM(103)에는, 상기한 실시예와 마찬가지의 기능을 발휘하는 프로그램, 즉, 도 7a에 도시한 바와 같이, 예측 부호화 결정 프로그램(103a)과, 제1 부호화 프로그램(103b)과, 제2 부호화 프로그램(103c)과, 부호화 데이터 송신 프로그램(103d)이 미리 기억되어 있다.
그리고, CPU(104)에는, 이들 프로그램(103a∼103c)을 읽어내어 실행함으로써, 도 7a에 도시한 바와 같이, 예측 부호화 결정 프로세스(104a)와, 제1 부호화 프로세스(104b)와, 제2 부호화 프로세스(104c)와, 부호화 데이터 송신 프로세스(104d)로 된다. 또한,예측 부호화 결정 프로세스(104a)는, 도 2에 도시한, 0rderControl(21)에 대응하고, 마찬가지로, 제1 부호화 프로세스(104b)와, 제2 부호화 프로세스(104c)와, 부호화 데이터 송신 프로그램(103d)은, VLC(14)에 대응한다. 또한,HDD(102)에는, 입력 동화상이나 국소 복호화 화상 등이 보존된다.
그런데,상기한 프로그램(103a∼103d)은, 반드시 ROM(103)에 기억시켜 놓을 필요는 없으며, 예를 들면, 컴퓨터 시스템(100)에 삽입되는 플렉시블 디스크(FD), CD-ROM, MO 디스크, DVD 디스크, 광자기 디스크, IC 카드 등의 「가반용 물리 매체」외에, 컴퓨터 시스템(100)의 내외에 구비되는 하드 디스크 드라이브(HDD) 등의 「고정용 물리 매체」, 또한,공중 회선, 인터넷, LAN, WAN 등을 통해서 컴퓨터 시스템(100)에 접속되는 「다른 컴퓨터 시스템」에 기억시켜 놓고, 컴퓨터 시스템(100)이 이들로부터 프로그램을 읽어내어 실행하도록 하여도 된다.
다음으로,복호화 프로그램을 실행하는 컴퓨터 시스템의 예에 대하여 설명한다. 도 7b는, 복호화 프로그램을 실행하는 컴퓨터 시스템의 예를 나타내는 도면이다. 도 7b에 도시한 바와 같이, 컴퓨터 시스템(200)은, RAM(201)과, HDD(202)와, ROM(203)과, CPU(204)로 구성된다. 여기에서, ROM(203)에는, 상기한 실시예와 마찬가지의 기능을 발휘하는 프로그램, 즉, 도 7b에 도시한 바와 같이, 부호화 판정 프로그램(203a)과, 제1 복호화 프로그램(203b)과, 제2 복호화 프로그램(203c)이 미리 기억되어 있다.
그리고, CPU(204)에는, 이들 프로그램(203a∼203d)을 읽어내어 실행함으로써, 도 7b에 도시한 바와 같이, 부호화 판정 프로세스(204a)와, 제1 복호화 프로세스(204b)와, 제2 복호화 프로세스(204c)로 된다. 또한,부호화 판정 프로세스(204a)는, 도 4에 도시한 0rderControl(56) 등에 대응하고, 마찬가지로, 제1 복호화 프로세스(204b)와, 제2 복호화 프로세스(204c)는, 도 4에 도시한 IQ/IDCT(51)나 가산기(52) 등에 대응한다. 또한,HDD(202)에는, 생성된 복호화 화상 등이 보 존된다.
그런데,상기한 프로그램(203a∼203c)은, 반드시 ROM(203)에 기억시켜 놓을 필요는 없으며, 예를 들면, 컴퓨터 시스템(200)에 삽입되는 플렉시블 디스크(FD), CD-ROM, MO 디스크, DVD 디스크, 광 자기 디스크, IC 카드 등의 「가반용 물리 매체」외에, 컴퓨터 시스템(200)의 내외에 구비되는 하드 디스크 드라이브(HDD) 등의 「고정용 물리 매체」, 또한,공중 회선, 인터넷, LAN, WAN 등을 통해서 컴퓨터 시스템(200)에 접속되는 「다른 컴퓨터 시스템」에 기억시켜 놓고, 컴퓨터 시스템(200)이 이들로부터 프로그램을 읽어내어 실행하도록 하여도 된다.
도 1a는 실시예 1에 따른 동화상 처리 시스템의 특징을 설명하기 위한 도면.
도 1b는 실시예 1에 따른 동화상 처리 시스템의 특징을 설명하기 위한 도면.
도 2는 실시예 1에 따른 동화상 처리 시스템에서의 부호화 장치의 구성을 나타내는 블록도.
도 3은 부호화 장치에 의해 생성되는 부호화 동화상 데이터의 예를 나타내는 도면.
도 4는 실시예 1에 따른 동화상 처리 시스템에서의 복호화 장치의 구성을 나타내는 블록도.
도 5는 실시예 1에 따른 동화상 처리 시스템에서의 프레임 처리의 흐름을 설명하는 플로우차트.
도 6은 실시예 1에 따른 동화상 처리 시스템에서의 매크로 블록 처리 순서 결정 처리의 흐름을 설명하는 플로우차트.
도 7a는 부호화 프로그램을 실행하는 컴퓨터 시스템의 예를 나타내는 도면.
도 7b는 복호화 프로그램을 실행하는 컴퓨터 시스템의 예를 나타내는 도면.
도 8a는 종래 기술에서의 프레임 구조와 필드 구조를 설명하기 위한 도면.
도 8b는 종래 기술에서의 프레임 구조와 필드 구조를 설명하기 위한 도면.
도 9a는 종래 기술에서의 프레임 예측을 설명하기 위한 도면.
도 9b는 종래 기술에서의 프레임 예측을 설명하기 위한 도면.
도 10a는 종래 기술에서의 필드 예측을 설명하기 위한 도면.
도 10b는 종래 기술에서의 필드 예측을 설명하기 위한 도면.
도 11a는 MBAFF를 설명하기 위한 도면.
도 11b는 MBAFF를 설명하기 위한 도면.
도 11c는 MBAFF를 설명하기 위한 도면.
<도면의 주요 부분에 대한 부호의 설명>
10, 17, 53: FrameMemory
11: 감산기
12: DCT/Q
13: RateControl
14: VLC
15, 51: IQ/IDCT
16, 52: 가산기
18, 54: DeblockingFilter
19, 55: MCintraPred.
20: ME
21, 56: OrderControl
50: VLD
100, 200: 컴퓨터 시스템
101, 201: RAM
102, 202: HDD
103, 203: ROM
103a: 예측 부호화 결정 프로그램
103b: 제1 부호화 프로그램
103c: 제2 부호화 프로그램
103d: 부호화 데이터 송신 프로그램
104, 204: CPU
104a: 예측 부호화 결정 프로세스
104b: 제1 부호화 프로세스
104c: 제2 부호화 프로세스
104d: 부호화 데이터 프로세스
203a: 부호화 판정 프로그램
203b: 제1 복호화 프로그램
203c: 제2 복호화 프로그램
204a: 부호화 판정 프로세스
204b: 제1 복호화 프로세스
204c: 제2 복호화 프로세스
Claims (7)
- 처리 대상의 동화상 프레임에 대하여, 움직임 탐색에 의해 움직임 벡터를 추정하고, 추정된 움직임 벡터에 기초하여, 처리 대상 프레임의 각 매크로 블록에 대하여 프레임 예측 부호화를 행할지, 필드 예측 부호화를 행할지를 결정하는 예측 부호화 결정 수단과,상기 예측 부호화 결정 수단에 의해 결정된 부호화 방법에 의해 매크로 블록을 부호화하는 제1 부호화 수단과,상기 예측 부호화 결정 수단에 의해 결정된 부호화 방법이 필드 예측 부호화일 때, 상기 제1 부호화 수단에 의해 부호화된 동일 프레임 내의 제1 필드의 매크로 블록을 참조 화상의 하나로 하여, 동일 프레임 내의 제2 필드에 대하여 필드 예측 부호화를 행하는 제2 부호화 수단과,상기 제1 부호화 수단 및 제2 부호화 수단에 의해 부호화된 처리 대상의 동화상 프레임에서의 각 매크로 블록의 부호화 방법을 부호화 정보로서 부가하여 송신하는 부호화 데이터 송신 수단을 구비한 부호화 장치와,상기 부호화 장치에 의해 부호화된 동화상 프레임 및 부호화 정보를 수신하고, 상기 처리 대상 프레임의 각 매크로 블록이 프레임 예측에 의해 부호화되었는지, 필드 예측에 의해 부호화되었는지를 판정하는 부호화 판정 수단과,상기 부호화 판정 수단에 의해 판정된 부호화 방법에 대응하는 복호화 방법 에 의해 부호화된 매크로 블록을 복호화하는 제1 복호화 수단과,상기 부호화 판정 수단에 의해 판정된 부호화 방법이 필드 예측 부호화일 때, 상기 제1 복호화 수단에 의해 복호화된 동일 프레임 내의 제1 필드의 매크로 블록을 참조 화상의 하나로 하여, 동일 프레임 내의 제2 필드의 매크로 블록을 필드 예측 복호화하는 제2 복호화 수단을 구비한 복호화 장치로 구성되는 동화상 처리 시스템.
- 처리 대상의 동화상 프레임에 대하여, 움직임 탐색에 의해 움직임 벡터를 추정하고, 추정된 움직임 벡터에 기초하여, 처리 대상 프레임의 각 매크로 블록에 대하여 프레임 예측 부호화를 행할지, 필드 예측 부호화를 행할지를 결정하는 예측 부호화 결정 수단과,상기 예측 부호화 결정 수단에 의해 결정된 부호화 방법에 의해 매크로 블록을 부호화하는 제1 부호화 수단과,상기 예측 부호화 결정 수단에 의해 결정된 부호화 방법이 필드 예측 부호화일 때, 상기 제1 부호화 수단에 의해 부호화된 동일 프레임 내의 제1 필드의 매크로 블록을 참조 화상의 하나로 하여, 동일 프레임 내의 제2 필드에 대하여 필드 예측 부호화를 행하는 제2 부호화 수단과,상기 제1 부호화 수단 및 제2 부호화 수단에 의해 부호화된 처리 대상의 동화상 프레임에서의 각 매크로 블록의 부호화 방법을 부호화 정보로서 부가하여 송신하는 부호화 데이터 송신 수단을 구비한 것을 특징으로 하는 부호화 장치.
- 부호화된 동화상 프레임 및 부호화 방법을 나타내는 부호화 정보를 수신하고, 상기 처리 대상 프레임의 각 매크로 블록이 프레임 예측에 의해 부호화되었는지, 필드 예측에 의해 부호화되었는지를 판정하는 부호화 판정 수단과,상기 부호화 판정 수단에 의해 판정된 부호화 방법에 대응하는 복호화 방법에 의해 부호화된 매크로 블록을 복호화하는 제1 복호화 수단과,상기 부호화 판정 수단에 의해 판정된 부호화 방법이 필드 예측 부호화일 때, 상기 제1 복호화 수단에 의해 복호화된 동일 프레임 내의 제1 필드의 매크로 블록을 참조 화상의 하나로 하여, 동일 프레임 내의 제2 필드의 매크로 블록을 필드 예측 복호화하는 제2 복호화 수단을 구비한 것을 특징으로 하는 복호화 장치.
- 처리 대상의 동화상 프레임에 대하여, 움직임 탐색에 의해 움직임 벡터를 추정하고, 추정된 움직임 벡터에 기초하여, 처리 대상 프레임의 각 매크로 블록에 대하여 프레임 예측 부호화를 행할지, 필드 예측 부호화를 행할지를 결정하는 예측 부호화 결정 공정과,상기 예측 부호화 결정 공정에 의해 결정된 부호화 방법에 의해 매크로 블록을 부호화하는 제1 부호화 공정과,상기 예측 부호화 결정 공정에 의해 결정된 부호화 방법이 필드 예측 부호화 일 때, 상기 제1 부호화 공정에 의해 부호화된 동일 프레임 내의 제1 필드의 매크로 블록을 참조 화상의 하나로 하여, 동일 프레임 내의 제2 필드에 대하여 필드 예측 부호화를 행하는 제2 부호화 공정과,상기 제1 부호화 공정 및 제2 부호화 공정에 의해 부호화된 처리 대상의 동화상 프레임에서의 각 매크로 블록의 부호화 방법을 부호화 정보로서 부가하여 송신하는 부호화 데이터 송신 공정을 포함한 것을 특징으로 하는 부호화 방법.
- 처리 대상의 동화상 프레임에 대하여, 움직임 탐색에 의해 움직임 벡터를 추정하고, 추정된 움직임 벡터에 기초하여, 처리 대상 프레임의 각 매크로 블록에 대하여 프레임 예측 부호화를 행할지, 필드 예측 부호화를 행할지를 결정하는 예측 부호화 결정 수순과,상기 예측 부호화 결정 수순에 의해 결정된 부호화 방법에 의해 매크로 블록을 부호화하는 제1 부호화 수순과,상기 예측 부호화 결정 수순에 의해 결정된 부호화 방법이 필드 예측 부호화일 때, 상기 제1 부호화 수순에 의해 부호화된 동일 프레임 내의 제1 필드의 매크로 블록을 참조 화상의 하나로 하여, 동일 프레임 내의 제2 필드에 대하여 필드 예측 부호화를 행하는 제2 부호화 수순과,상기 제1 부호화 수순 및 제2 부호화 수순에 의해 부호화된 처리 대상의 동화상 프레임에서의 각 매크로 블록의 부호화 방법을 부호화 정보로서 부가하여 송 신하는 부호화 데이터 송신 수순을 컴퓨터에 실행시키는 명령을 포함하는,컴퓨터가 판독 가능한 기억 매체.
- 부호화된 동화상 프레임 및 부호화 방법을 나타내는 부호화 정보를 수신하고, 상기 처리 대상 프레임의 각 매크로 블록이 프레임 예측에 의해 부호화되었는지, 필드 예측에 의해 부호화되었는지를 판정하는 부호화 판정 공정과,상기 부호화 판정 공정에 의해 판정된 부호화 방법에 대응하는 복호화 방법에 의해 부호화된 매크로 블록을 복호화하는 제1 복호화 공정과,상기 부호화 판정 공정에 의해 판정된 부호화 방법이 필드 예측 부호화일 때, 상기 제1 복호화 공정에 의해 복호화된 동일 프레임 내의 제1 필드의 매크로 블록을 참조 화상의 하나로 하여, 동일 프레임 내의 제2 필드의 매크로 블록을 필드 예측 복호화하는 제2 복호화 공정을 포함한 것을 특징으로 하는 복호화 방법.
- 부호화된 동화상 프레임 및 부호화 방법을 나타내는 부호화 정보를 수신하고, 상기 처리 대상 프레임의 각 매크로 블록이 프레임 예측에 의해 부호화되었는지, 필드 예측에 의해 부호화되었는지를 판정하는 부호화 판정 수순과,상기 부호화 판정 수순에 의해 판정된 부호화 방법에 대응하는 복호화 방법에 의해 부호화된 매크로 블록을 복호화하는 제1 복호화 수순과,상기 부호화 판정 수순에 의해 판정된 부호화 방법이 필드 예측 부호화일 때, 상기 제1 복호화 수순에 의해 복호화된 동일 프레임 내의 제1 필드의 매크로 블록을 참조 화상의 하나로 하여, 동일 프레임 내의 제2 필드의 매크로 블록을 필드 예측 복호화하는 제2 복호화 수순을 컴퓨터에 실행시키는 명령을 포함하는 컴퓨터가 판독 가능한 기억 매체.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020090031537A KR20090108567A (ko) | 2008-04-11 | 2009-04-10 | 동화상 처리 시스템, 부호화 장치, 부호화 방법, 복호화 장치, 복호화 방법, 및 기억 매체 |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JPJP-P-2008-103873 | 2008-04-11 | ||
KR1020090031537A KR20090108567A (ko) | 2008-04-11 | 2009-04-10 | 동화상 처리 시스템, 부호화 장치, 부호화 방법, 복호화 장치, 복호화 방법, 및 기억 매체 |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20090108567A true KR20090108567A (ko) | 2009-10-15 |
Family
ID=41551941
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020090031537A KR20090108567A (ko) | 2008-04-11 | 2009-04-10 | 동화상 처리 시스템, 부호화 장치, 부호화 방법, 복호화 장치, 복호화 방법, 및 기억 매체 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR20090108567A (ko) |
-
2009
- 2009-04-10 KR KR1020090031537A patent/KR20090108567A/ko not_active Application Discontinuation
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4724351B2 (ja) | 画像符号化装置、画像符号化方法、画像復号装置、画像復号方法、および通信装置 | |
JP5368631B2 (ja) | 画像符号化方法、装置、及びプログラム | |
CN107241604B (zh) | 图像处理设备和方法 | |
CN102823250B (zh) | 图像编码装置、图像解码装置、图像编码方法以及图像解码方法 | |
KR101990423B1 (ko) | 인터 예측 방법 및 그 장치 | |
KR20120140592A (ko) | 움직임 보상의 계산 복잡도 감소 및 부호화 효율을 증가시키는 방법 및 장치 | |
JP4793424B2 (ja) | 画像符号化装置、画像符号化方法、画像復号装置、画像復号方法、および通信装置 | |
CN111698500B (zh) | 一种编解码方法、装置及其设备 | |
US20070133689A1 (en) | Low-cost motion estimation apparatus and method thereof | |
EP2109319A1 (en) | Moving image encoding-decoding system with macroblock-level adaptive frame/field processing | |
JP4760552B2 (ja) | 動きベクトル復号化方法および復号化装置 | |
JP5209572B2 (ja) | 画像符号化装置及び画像復号装置 | |
WO2012056924A1 (ja) | 画像処理装置と画像処理方法 | |
KR20090108567A (ko) | 동화상 처리 시스템, 부호화 장치, 부호화 방법, 복호화 장치, 복호화 방법, 및 기억 매체 | |
JP4760551B2 (ja) | 動きベクトル復号化方法および復号化装置 | |
JP2014090459A (ja) | 画像符号化方法及び画像復号化方法 | |
Chiu et al. | Self-derivation of motion estimation techniques to improve video coding efficiency | |
CN114710663B (zh) | 一种解码、编码方法、装置及其设备 | |
KR100986992B1 (ko) | H.264 인코딩 시 고속 인터 모드 결정 방법 | |
JP5571229B2 (ja) | 画像符号化方法及び画像復号化方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E601 | Decision to refuse application |