이하, 본 발명을 실시하기 위한 형태(이하 실시 형태라고 함)에 대해서 설명한다. 또한, 설명은 이하의 순서로 행한다.
0. 개요
1. 제1 실시 형태(화상 부호화 장치)
2. 제2 실시 형태(화상 복호 장치)
3. 제3 실시 형태(화상 부호화 장치)
4. 제4 실시 형태(화상 복호 장치)
5. 제5 실시 형태(화상 부호화 장치)
6. 제6 실시 형태(화상 복호 장치)
7. 개요 2
8. 제7 실시 형태(화상 부호화 장치)
9. 제8 실시 형태(화상 복호 장치)
10. 개요 3
11. 제9 실시 형태(화상 부호화 장치)
12. 제10 실시 형태(화상 복호 장치)
13. 제11 실시 형태(레이어간 신택스 예측 제어)
14. 기타
15. 제12 실시 형태(컴퓨터)
16. 응용예
17. 스케일러블 부호화의 응용예
18. 제13 실시 형태(세트·유닛·모듈·프로세서)
19. 제14 실시 형태(MPEG-DASH의 콘텐츠 재생 시스템의 응용예)
20. 제15 실시 형태(Wi-Fi 규격의 무선 통신 시스템의 응용예)
<0. 개요>
<부호화 방식>
이하에 있어서는 HEVC(High Efficiency Video Coding) 방식의 화상 부호화·복호에 적용하는 경우를 예로 들어 본 기술을 설명한다.
<코딩 유닛>
AVC(Advanced Video Coding) 방식에 있어서는, 매크로 블록과 서브매크로 블록에 의한 계층 구조가 규정되어 있다. 그러나, 16 화소×16 화소의 매크로 블록으로는, 차세대 부호화 방식의 대상이 되는 UHD(Ultra High Definition; 4000 화소×2000 화소)와 같은 큰 화면 프레임에 대하여 최적이지 않다.
이에 반해 HEVC 방식에 있어서는, 도 1에 도시한 바와 같이 코딩 유닛(CU(Coding Unit))이 규정되어 있다.
CU는 Coding Tree Block(CTB)이라고도 불리며, AVC 방식에 있어서의 매크로 블록과 마찬가지의 역할을 하는 픽처 단위 화상의 부분 영역이다. 후자는 16×16 화소의 크기로 고정되어 있는 것에 반해, 전자의 크기는 고정되고 있지 않고, 각각의 시퀀스에 있어서, 화상 압축 정보 중에서 지정되게 된다.
예를 들어, 출력이 되는 부호화 데이터에 포함되는 시퀀스 파라미터 세트(SPS(Sequence Parameter Set))에 있어서, CU의 최대 사이즈(LCU(Largest Coding Unit))와 최소 사이즈(SCU(Smallest Coding Unit))가 규정된다.
각각의 LCU 내에서는 SCU의 사이즈를 하회하지 않는 범위에서, split-flag=1로 함으로써, 보다 작은 사이즈의 CU로 분할할 수 있다. 도 1의 예에서는, LCU의 크기가 128이고, 최대 계층 심도가 5가 된다. 2N×2N 크기의 CU는 split_flag의 값이 「1」일 때, 하나 아래의 계층이 되는 N×N 크기의 CU로 분할된다.
또한, CU는 인트라 또는 인터 예측의 처리 단위가 되는 영역(픽처 단위의 화상 부분 영역)인 프레딕션 유닛(Prediction Unit(PU))으로 분할되고, 또한 직교 변환의 처리 단위가 되는 영역(픽처 단위 화상의 부분 영역)인 트랜스폼 유닛(Transform Unit(TU))으로 분할된다. 현재, HEVC 방식에 있어서는 4×4 및 8×8 외에 16×16 및 32×32 직교 변환을 사용하는 것이 가능하다.
이상의 HEVC 방식과 같이 CU를 정의하고, 그 CU를 단위로 하여 각종 처리를 행하는 부호화 방식의 경우, AVC 방식에 있어서의 매크로 블록은 LCU에 상당하고, 블록(서브 블록)은 CU에 상당한다고 생각할 수 있다. 또한, AVC 방식에 있어서의 움직임 보상 블록은, PU에 상당한다고 생각할 수 있다. 단, CU는 계층 구조를 가지므로, 그 최상위 계층의 LCU의 사이즈는, 예를 들어 128×128 화소와 같이, AVC 방식의 매크로 블록보다 크게 설정되는 것이 일반적이다.
따라서, 이하 LCU는 AVC 방식에 있어서의 매크로 블록도 포함하는 것으로 하고, CU는 AVC 방식에 있어서의 블록(서브 블록)도 포함하는 것으로 한다. 즉, 이하의 설명에 사용하는 「블록」은, 픽처 내의 임의의 부분 영역을 나타내고, 그 크기, 형상 및 특성 등은 한정되지 않는다. 즉, 「블록」에는, 예를 들어 TU, PU, SCU, CU, LCU, 서브 블록, 매크로 블록 또는 슬라이스 등 임의의 영역(처리 단위)이 포함된다. 물론, 이들 이외의 부분 영역(처리 단위)도 포함된다. 사이즈나 처리 단위 등을 한정할 필요가 있는 경우에는 적절히 설명한다.
또한, 본 명세서에 있어서, CTU(Coding Tree Unit)는 LCU(최대수의 CU)의 CTB(Coding Tree Block)와, 그 LCU 베이스(레벨)로 처리할 때의 파라미터를 포함하는 단위인 것으로 한다. 또한, CTU를 구성하는 CU(Coding Unit)는 CB(Coding Block)와, 그 CU 베이스(레벨)로 처리할 때의 파라미터를 포함하는 단위인 것으로 한다.
<모드 선택>
그런데, AVC 그리고 HEVC 부호화 방식에 있어서, 더 높은 부호화 효율을 달성하기 위해서는 적절한 예측 모드의 선택이 중요하다.
이러한 선택 방식의 예로서, JM(Joint Model)이라고 불리는 H.264/MPEG-4 AVC의 참조 소프트웨어(http://iphome.hhi.de/suehring/tml/index.htm에서 공개되어 있음)에 실장되어 있는 방법을 들 수 있다.
JM에 있어서는, 이하에 설명하는 High Complexity Mode와, Low Complexity Mode의 2가지 모드 판정 방법을 선택하는 것이 가능하다. 양쪽 모두 각각의 예측 모드 Mode에 관한 비용 함수 값을 산출하고, 이것을 최소로 하는 예측 모드를 당해 블록 내지 매크로 블록에 대한 최적 모드로서 선택한다.
High Complexity Mode에 있어서의 비용 함수는 이하의 식 (1)과 같이 나타내진다.
여기서, Ω은 당해 블록 내지 매크로 블록을 부호화하기 위한 후보 모드의 전체 집합, D는 당해 예측 모드로 부호화한 경우의, 복호 화상과 입력 화상의 차분 에너지이다. λ는 양자화 파라미터의 함수로서 부여되는 Lagrange 미정승수이다. R은 직교 변환 계수를 포함한, 당해 모드로 부호화한 경우의 총 부호량이다.
즉, High Complexity Mode에서의 부호화를 행하기 위해서는, 상기 파라미터 D 및 R을 산출하기 위해서 모든 후보 모드에 의해, 일단, 임시 인코드 처리를 행할 필요가 있어, 더 높은 연산량을 필요로 한다.
Low Complexity Mode에 있어서의 비용 함수는 이하의 식 (2)와 같이 나타내진다.
여기서, D는 High Complexity Mode의 경우와 달리, 예측 화상과 입력 화상의 차분 에너지가 된다. QP2Quant(QP)는 양자화 파라미터 QP의 함수로서 부여되고, HeaderBit은 직교 변환 계수를 포함하지 않는 움직임 벡터나, 모드와 같은 Header에 속하는 정보에 관한 부호량이다.
즉, Low Complexity Mode에 있어서는, 각각의 후보 모드에 대해서 예측 처리를 행할 필요가 있지만, 복호 화상까지는 필요 없기 때문에, 부호화 처리까지 행할 필요는 없다. 이로 인해, High Complexity Mode보다 낮은 연산량으로 실현이 가능하다.
<계층 부호화>
그런데, 지금까지의 MPEG2, AVC와 같은 화상 부호화 방식은, 도 2 내지 도 4에 나타내는 바와 같은 스케일러빌리티(scalability) 기능을 갖고 있었다. 스케일러블 부호화(계층 부호화)란, 화상을 복수 레이어화(계층화)하여, 레이어마다 부호화하는 방식이다.
화상의 계층화에 있어서는, 소정의 파라미터를 기준으로 해서 하나의 화상이 복수의 화상(레이어)으로 분할된다. 기본적으로 각 레이어는 용장성이 저감되도록 차분 데이터에 의해 구성된다. 예를 들어, 하나의 화상을 베이스 레이어와 인핸스먼트 레이어로 2계층화한 경우, 베이스 레이어의 데이터만으로 원래의 화상보다도 저품질의 화상이 얻어지고, 베이스 레이어의 데이터와 인핸스먼트 레이어의 데이터를 합성함으로써, 원래의 화상(즉 고품질의 화상)이 얻어진다.
이렇게 화상을 계층화함으로써, 상황에 따라서 다양한 품질의 화상을 용이하게 얻을 수 있다. 예를 들어 휴대 전화와 같이 처리 능력이 낮은 단말기에 대해서는 베이스 레이어(base layer)만의 화상 압축 정보를 전송하여 공간 시간 해상도가 낮거나 또는 화질이 좋지 않은 동화상을 재생하고, 텔레비전이나 퍼스널 컴퓨터와 같이 처리 능력이 높은 단말기에 대해서는 베이스 레이어(base layer) 외에, 인핸스먼트 레이어(enhancement layer)의 화상 압축 정보를 전송하여 공간 시간 해상도가 높거나 또는 화질이 높은 동화상을 재생하는 것처럼, 트랜스 코드 처리를 행하지 않고서 단말기나 네트워크의 능력에 따른 화상 압축 정보를 서버로부터 송신하는 것이 가능하게 된다.
이러한 스케일러빌리티성을 갖게 하는 파라미터로서, 예를 들어 도 2에 나타내는 바와 같은 공간 해상도가 있다(spatial scalability). 이 스페셜 스케일러빌리티(spatial scalability)의 경우, 레이어마다 해상도가 다르다. 즉, 도 2에 나타내진 바와 같이, 각 픽처가 원래의 화상보다 공간적으로 저해상도인 베이스 레이어와, 베이스 레이어의 화상과 합성함으로써 원래의 화상(원래의 공간 해상도)이 얻어지는 인핸스먼트 레이어의 2계층으로 계층화된다. 물론, 이 계층수는 일례이며, 임의의 계층수로 계층화할 수 있다.
또한, 이러한 스케일러빌리티성을 갖게 하는 파라미터로서, 이외에는 예를 들어 도 3에 나타내는 바와 같은 시간 해상도가 있다(temporal scalability). 이 템포럴 스케일러빌리티(temporal scalability)의 경우, 레이어마다 프레임 레이트가 다르다. 즉, 이 경우, 도 3에 나타내진 바와 같이, 서로 다른 프레임 레이트의 레이어로 계층화되어 있어, 저프레임 레이트의 레이어에 고프레임 레이트의 레이어를 가함으로써 보다 고프레임 레이트의 동화상을 얻을 수 있고, 모든 레이어를 가함으로써 원래의 동화상(원래의 프레임 레이트)을 얻을 수 있다. 이 계층수는 일례이며, 임의의 계층수로 계층화할 수 있다.
또한, 이러한 스케일러빌리티성을 갖게 하는 파라미터로서, 이외에는 예를 들어 신호 잡음비(SNR(Signal to Noise ratio))가 있다(SNR scalability). 이 SNR 스케일러빌리티(SNR scalability)의 경우, 레이어마다 SN비가 다르다. 즉, 도 4에 도시한 바와 같이, 각 픽처가 원래의 화상보다 SNR이 낮은 베이스 레이어와, 베이스 레이어의 화상과 합성함으로써 원래의 화상(원래의 SNR)이 얻어지는 인핸스먼트 레이어의 2계층으로 계층화된다. 즉, 베이스 레이어(base layer) 화상 압축 정보에 있어서는, 저PSNR의 화상에 관한 정보가 전송되고 있고, 이것에 인핸스먼트 레이어(enhancement layer) 화상 압축 정보를 가함으로써, 고PSNR 화상을 재구축하는 것이 가능하다. 물론, 이 계층수는 일례이며, 임의의 계층수로 계층화할 수 있다.
스케일러빌리티성을 갖게 하는 파라미터는, 상술한 예 이외의 것이라도 물론 좋다. 예를 들어, 베이스 레이어(base layer)가 8비트(bit) 화상으로 이루어지고, 이것에 인핸스먼트 레이어(enhancement layer)를 가함으로써, 10비트(bit) 화상이 얻어지는 비트 심도 스케일러빌리티(bit-depth scalability)가 있다.
또한, 베이스 레이어(base layer)가 4:2:0 포맷의 컴포넌트 화상으로 이루어지고, 이것에 인핸스먼트 레이어(enhancement layer)를 가함으로써, 4:2:2 포맷의 컴포넌트 화상이 얻어지는 크로마 스케일러빌리티(chroma scalability)가 있다.
<비디오 파라미터 세트>
그런데, HEVC에 있어서는, 시퀀스 파라미터 세트(SPS(Sequence Parameter Set)), 픽처 파라미터 세트(PPS(Picture Parameter Set)) 외에, 도 5에 나타내는 바와 같은 비디오 파라미터 세트(VPS(Video Parameter Set))가 규정되어 있다.
<레이어간 예측의 제어>
그런데, 스케일러블 부호화를 행할 때, 모든 픽처에 있어서, 계층간에서의 예측 처리를 행하는 것은 연산량의 증대로 이어진다.
따라서, 비특허문헌 2에 있어서는, 도 6에 도시한 바와 같이 픽처(Picture)마다 계층간의 예측 처리의 온/오프(on/off)를 NAL 유닛(NAL_Unit)에 있어서 지정하는 것이 제안되었다.
그러나 이 방법의 경우, 계층간의 예측 처리의 온/오프(on/off)를 제어하는 정보는 픽처마다 생성되어 전송되기 때문에, 이 정보의 전송에 의해 부호량이 증대하여, 부호화 효율이 저감될 우려가 있었다.
<레이어 구조>
따라서, 보다 효율적으로 계층간의 예측 처리를 제어하는 방법을 생각한다. 먼저, 스케일러블 부호화(계층 부호화)에 있어서는, 도 2 내지 도 4에 도시한 바와 같이 화상 데이터가 복수 레이어으로 계층화된다. 이하에 있어서는 설명의 편의상, 이 레이어를 주 레이어라고 칭한다.
각 주 레이어의 픽처 군은, 그 주 레이어에 있어서 시퀀스를 구성하게 된다. 그 시퀀스에 있어서 픽처는 단일 주 레이어의 동화상 데이터와 마찬가지로, 도 7에 도시한 바와 같이, 또한 계층 구조(GOP(Group Of Picture) 구조)를 형성한다. 이하에 있어서는 설명의 편의상, 이 1주 레이어 내의 레이어를 서브 레이어(sublayer)라고 칭한다.
도 7의 예의 경우, 주 레이어는 베이스 레이어(BaseLayer)와 인핸스먼트 레이어(EnhLayer)의 2개의 레이어에 의해 구성된다. 베이스 레이어는 다른 주 레이어에 의존하지 않고, 자신의 주 레이어만으로 화상이 형성되는 레이어이다. 베이스 레이어의 데이터는 다른 주 레이어를 참조하지 않고서 부호화·복호된다. 인핸스먼트 레이어는 베이스 레이어의 데이터와 합성됨으로써 화상이 얻어지는 주 레이어이다. 인핸스먼트 레이어의 데이터는, 대응하는 베이스 레이어와의 사이의 예측 처리(주 레이어간의 예측 처리(레이어간 예측이라고도 함))가 이용 가능하다.
스케일러블 부호화에 의해 계층화된 부호화 데이터의 주 레이어 수는 임의이다. 이하에 있어서는, 각 주 레이어가 베이스 레이어나 또는 인핸스먼트 레이어로 설정되고, 각 인핸스먼트 레이어에는 어느 한쪽의 베이스 레이어가 참조처로서 설정되는 것으로 한다.
또한, 도 7의 예의 경우, 베이스 레이어 및 인핸스먼트 레이어는 각각 서브 레이어0(Sublayer0), 서브 레이어1(Sublayer1), 서브 레이어2(Sublayer2)의 3개의 서브 레이어에 의해 구성되는 GOP 구조를 갖는다. 도 7에 표시된 사각은 픽처를 나타내고 있고, 그 중의 문자는 그 픽처의 타입을 나타내고 있다. 예를 들어, 「I」라고 기재된 사각은 I 픽처를 나타내고, 「B」라고 기재된 사각은 B 픽처를 나타낸다. 또한, 각 사각 간의 점선은 의존 관계(참조 관계)를 나타낸다. 이 점선으로 표시된 바와 같이, 상위의 서브 레이어 픽처는 하위의 서브 레이어 픽처에 의존한다. 즉, 서브 레이어2(Sublayer2)의 픽처는 서브 레이어1의 픽처나 서브 레이어0의 픽처를 참조한다. 또한, 서브 레이어1의 픽처는 서브 레이어0의 픽처를 참조한다. 서브 레이어0의 픽처는 서브 레이어0의 픽처를 적절히 참조한다.
또한, 서브 레이어의 계층수(서브 레이어수)는 임의이다. 또한, GOP 구조도 임의이며, 도 7의 예에 한정되지 않는다.
<서브 레이어를 사용한 레이어간 예측의 제어>
이러한 구조의 화상 데이터에 대하여 레이어간 예측의 제어를, 서브 레이어를 사용해서 행하도록 한다. 즉, 각 픽처에 있어서 복수의 주 레이어간의 예측을 행할지 여부를, 서브 레이어에 의해 제어하는 레이어간 예측 제어 정보를 생성하여 전송하도록 한다. 그리고, 부호화측에 있어서는, 부호화 시에 이 레이어간 예측 제어 정보에 있어서 지정되는 서브 레이어만 레이어간 예측을 이용하도록 한다. 복호측에 있어서는, 복호 시에 이 레이어간 예측 제어 정보에 있어서 지정되는 서브 레이어만 레이어간 예측을 이용하도록 한다.
즉, 레이어간 예측 제어 정보에 의해 지정되는 서브 레이어에 속하는 픽처만이 레이어간 예측을 행할 수 있다. 즉, 서브 레이어를 지정하기만 해도 되므로, 주 레이어 내의 모든 픽처에 대한 레이어간 예측의 제어를 행할 수 있다. 따라서, 각 픽처를 개별로 제어할 필요가 없이, 주 레이어마다 제어하면 되므로, 그 제어에 필요한 정보량을 대폭으로 저감시킬 수 있다. 따라서, 레이어간 예측 제어에 의한 부호화 효율의 저감을 억제할 수 있다.
이 레이어간 예측 제어 정보로서, 레이어간 예측을 허가하는 서브 레이어를 지정하는 정보를 사용해도 좋지만, 레이어간 예측을 허가하는 최상위 서브 레이어를 지정하는 정보를 사용해도 좋다.
예를 들어, 도 7의 예에 도시한 바와 같이, 상위의 서브 레이어2의 픽처에서는, 당해 픽처와 참조 픽처의 시간축 상의 거리가 가깝다. 그로 인해, 인터 예측 처리에 의한 효율이 높고, 레이어간 예측에 의한 부호화 효율의 향상은 크지 않다.
이에 반해, 예를 들어 서브 레이어1이나 서브 레이어0에 있어서의 픽처에서는, 당해 픽처와 참조 픽처의 시간축 상의 거리가 멀고, 단일 계층에 의한 부호화 처리에서는 인트라 예측이 행해지는 CU가 보다 많이 선택된다. 즉, 계층간에서의 예측에 의한 부호화 효율의 향상은 크다.
즉, 하위의 서브 레이어일수록, 레이어간 예측을 적용함으로써 부호화 효율을 보다 향상시킬 수 있다. 그 때문에, 레이어간 예측을 일부의 서브 레이어에서 행하는 경우, 최하위부터 소정의 하위층까지의 서브 레이어에 있어서 레이어간 예측을 행하도록 제어하는 것이 바람직하다.
그 경우, 레이어간 예측을 어느 서브 레이어까지 허가할지를 지정하면 된다. 이와 같이 함으로써, 1 서브 레이어를 지정하기만 해도 되므로, 레이어간 예측 제어 정보의 정보량은 더 저감시킬 수 있다.
<비디오 파라미터 세트>
그런데, HEVC에 있어서는, 시퀀스 파라미터 세트(SPS(Sequence Parameter Set)), 픽처 파라미터 세트(PPS) 외에, 비디오 파라미터 세트(VPS(Video Parameter Set))가 규정되어 있다.
비디오 파라미터 세트(VPS)는 스케일러블 부호화된 부호화 데이터 전체에 대하여 생성된다. 이 비디오 파라미터 세트(VPS)에는 모든 주 레이어에 관한 정보가 저장된다.
시퀀스 파라미터 세트(SPS)는 주 레이어마다 생성된다. 이 시퀀스 파라미터 세트(SPS)에는 당해 주 레이어에 관한 정보가 저장된다.
픽처 파라미터 세트(PPS)는 각 주 레이어의 픽처마다 생성된다. 이 픽처 파라미터 세트에는 당해 주 레이어의 당해 픽처에 관한 정보가 저장된다.
이러한 레이어간 예측 제어 정보는, 예를 들어 시퀀스 파라미터 세트(SPS) 등에 있어서, 주 레이어마다 전송하도록 해도 좋지만, 전체 주 레이어의 공통 정보로서, 비디오 파라미터 세트(VPS) 등에 있어서 전송하도록 해도 좋다.
도 8에 비디오 파라미터 세트의 신택스의 예를 나타낸다. 파라미터 max_layer_minus1은 스케일러블 부호화가 몇 개의 계층에 의해 행해지는지(즉 주 레이어 수)의 최대수를 나타낸다. 파라미터 vps_max_sub_layer_minus1은, 스케일러블 부호화의 각 주 레이어에 포함되는 서브 레이어의 최대수(최대 서브 레이어수)를 나타낸다.
파라미터 max_sub_layer_for_inter_layer_prediction[i]은 레이어간 예측을 행하는 서브 레이어를 나타낸다. 파라미터 max_sub_layer_for_inter_layer_prediction[i]은 레이어간 예측을 행하는 서브 레이어의 최상위 서브 레이어를 나타낸다. 즉, 최하위 서브 레이어로부터 파라미터 max_sub_layer_for_inter_layer_prediction[i]에 지정되는 서브 레이어까지의 서브 레이어에 있어서 레이어간 예측이 행해진다.
이 파라미터 max_sub_layer_for_inter_layer_prediction[i]은 주 레이어(i)마다 설정된다. 즉, 파라미터 max_sub_layer_for_inter_layer_prediction[i]은 파라미터 max_layer_minus1 이하의 주 레이어 각각에 대해서 설정된다. 또한, 파라미터 max_sub_layer_for_inter_layer_prediction[i]의 값은 파라미터vps_max_sub_layer_minus1 이하의 값으로 설정된다.
또한, 레이어간 예측은 임의의 파라미터에 대해서 행할 수 있다. 예를 들어, AVC 스케일러블 부호화에 있어서는 계층간 예측을 행하는 것으로서 움직임 벡터 정보, 모드 정보, 복호 화소값, 예측 잔차 신호 등이 있다. 또한, HEVC에 있어서는 이것 외에 직교 변환 스킵(Transform Skip)에 관한 플래그(flag), 참조 픽처, 양자화 파라미터, 스케일링 리스트(Scaling List), 적응 오프셋 등이 있다. 또한, 레이어간 예측이 행해지는 파라미터의 수도 임의여서, 1개여도 좋고, 복수여도 좋다.
단, 설명의 편의상, 이하에 있어서는 레이어간 예측의 일례로서, 레이어간의 움직임 예측(움직임 벡터 정보의 생성)을 행하는 경우에 대해서 설명한다.
이어서, 이상과 같은 본 기술에 대해서, 구체적인 장치에 대한 적용예에 대해서 설명한다.
<1. 제1 실시 형태>
<스케일러블 부호화 장치>
도 9는 스케일러블 부호화 장치의 주된 구성예를 나타내는 블록도이다.
도 9에 나타내는 스케일러블 부호화 장치(100)는 베이스 레이어와 인핸스먼트 레이어로 계층화된 화상 데이터의 각 레이어를 부호화한다. 이 계층화의 기준으로서 사용하는 파라미터는 임의이다. 스케일러블 부호화 장치(100)는 공통 정보 생성부(101), 부호화 제어부(102), 베이스 레이어 화상 부호화부(103), 레이어간 예측 제어부(104) 및 인핸스먼트 레이어 화상 부호화부(105)를 갖는다.
공통 정보 생성부(101)는, 예를 들어 NAL 유닛에 저장하는 화상 데이터의 부호화에 관한 정보를 취득한다. 또한, 공통 정보 생성부(101)는 필요에 따라, 베이스 레이어 화상 부호화부(103), 레이어간 예측 제어부(104) 및 인핸스먼트 레이어 화상 부호화부(105) 등으로부터 필요한 정보를 취득한다. 공통 정보 생성부(101)는 그들의 정보를 기초로 전체 주 레이어에 관한 정보인 공통 정보를 생성한다. 공통 정보에는, 예를 들어 비디오 파라미터 세트 등이 포함된다. 공통 정보 생성부(101)는 생성한 공통 정보를, 예를 들어 NAL 유닛으로서 스케일러블 부호화 장치(100)의 외부로 출력한다. 또한, 공통 정보 생성부(101)는 생성한 공통 정보를, 부호화 제어부(102)에도 공급한다. 또한, 공통 정보 생성부(101)는 필요에 따라, 생성한 공통 정보의 일부 또는 모두를 베이스 레이어 화상 부호화부(103) 내지 인핸스먼트 레이어 화상 부호화부(105)에도 공급한다. 예를 들어, 공통 정보 생성부(101)는 처리 대상인 커런트 주 레이어의 레이어간 예측 실행 최대 서브 레이어(max_sub_layer_for_inter_layer_prediction[i])을 레이어간 예측 제어부(104)에 공급한다.
부호화 제어부(102)는 공통 정보 생성부(101)로부터 공급되는 공통 정보에 기초하여, 베이스 레이어 화상 부호화부(103) 내지 인핸스먼트 레이어 화상 부호화부(105)를 제어함으로써, 각 주 레이어의 부호화를 제어한다.
베이스 레이어 화상 부호화부(103)는 베이스 레이어의 화상 정보(베이스 레이어 화상 정보)를 취득한다. 베이스 레이어 화상 부호화부(103)는 다른 레이어를 참조하지 않고서 그 베이스 레이어 화상 정보를 부호화하고, 베이스 레이어의 부호화 데이터(베이스 레이어 부호화 데이터)를 생성하여 출력한다. 또한, 베이스 레이어 화상 부호화부(103)는 부호화 시에 얻어진 베이스 레이어의 부호화에 관한 정보를 레이어간 예측 제어부(104)에 공급한다.
레이어간 예측 제어부(104)는 베이스 레이어 화상 부호화부(103)로부터 공급되는 베이스 레이어의 부호화에 관한 정보를 기억한다. 또한, 레이어간 예측 제어부(104)는 공통 정보 생성부(101)로부터 공급되는 커런트 주 레이어의 레이어간 예측 실행 최대 서브 레이어(max_sub_layer_for_inter_layer_prediction[i])을 취득한다. 레이어간 예측 제어부(104)는 그 정보에 기초하여, 기억하고 있는 베이스 레이어의 부호화에 관한 정보의 인핸스먼트 레이어 화상 부호화부(105)로의 공급을 제어한다.
인핸스먼트 레이어 화상 부호화부(105)는 인핸스먼트 레이어의 화상 정보(인핸스먼트 레이어 화상 정보)를 취득한다. 인핸스먼트 레이어 화상 부호화부(105)는 그 인핸스먼트 레이어 화상 정보를 부호화한다. 그 때, 인핸스먼트 레이어 화상 부호화부(105)는 레이어간 예측 제어부(104)의 제어에 따라, 베이스 레이어의 부호화에 관한 정보를 참조하여 레이어간 예측을 행한다. 보다 구체적으로는, 예를 들어 처리 대상인 커런트 서브 레이어가 레이어간 예측이 허가된 서브 레이어인 경우, 인핸스먼트 레이어 화상 부호화부(105)는 레이어간 예측 제어부(104)로부터 공급되는 베이스 레이어의 부호화에 관한 정보를 취득하고, 그것을 참조하여 레이어간 예측을 행하며, 그 예측 결과를 이용해서 인핸스먼트 레이어 화상 정보를 부호화한다. 또한, 예를 들어 커런트 서브 레이어가 레이어간 예측이 금지된 서브 레이어인 경우, 인핸스먼트 레이어 화상 부호화부(105)는 레이어간 예측을 행하지 않고서 인핸스먼트 레이어 화상 정보를 부호화한다. 인핸스먼트 레이어 화상 부호화부(105)는 이러한 부호화에 의해, 인핸스먼트 레이어의 부호화 데이터(인핸스먼트 레이어 부호화 데이터)를 생성하여 출력한다.
<베이스 레이어 화상 부호화부>
도 10은 도 9의 베이스 레이어 화상 부호화부(103)의 주된 구성예를 나타내는 블록도이다. 도 10에 도시한 바와 같이, 베이스 레이어 화상 부호화부(103)는 A/D 변환부(111), 화면 재배열 버퍼(112), 연산부(113), 직교 변환부(114), 양자화부(115), 가역 부호화부(116), 축적 버퍼(117), 역양자화부(118) 및 역직교 변환부(119)를 갖는다. 또한, 베이스 레이어 화상 부호화부(103)는 연산부(120), 루프 필터(121), 프레임 메모리(122), 선택부(123), 인트라 예측부(124), 움직임 예측·보상부(125), 예측 화상 선택부(126) 및 레이트 제어부(127)를 갖는다.
A/D 변환부(111)는 입력된 화상 데이터(베이스 레이어 화상 정보)를 A/D 변환하고, 변환 후의 화상 데이터(디지털 데이터)를 화면 재배열 버퍼(112)에 공급하여 기억시킨다. 화면 재배열 버퍼(112)는 기억한 표시 순서의 프레임 화상을, GOP(Group Of Picture)에 따라, 부호화를 위한 프레임 순서대로 재배열하고, 프레임의 순서를 재배열한 화상을 연산부(113)에 공급한다. 또한, 화면 재배열 버퍼(112)는 프레임의 순서를 재배열한 화상을, 인트라 예측부(124) 및 움직임 예측·보상부(125)에도 공급한다.
연산부(113)는 화면 재배열 버퍼(112)로부터 판독된 화상으로부터, 예측 화상 선택부(126)를 통해서 인트라 예측부(124) 또는 움직임 예측·보상부(125)로부터 공급되는 예측 화상을 감산하고, 그 차분 정보를 직교 변환부(114)에 출력한다. 예를 들어, 인트라 부호화가 행해지는 화상의 경우, 연산부(113)는 화면 재배열 버퍼(112)로부터 판독된 화상으로부터, 인트라 예측부(124)로부터 공급되는 예측 화상을 감산한다. 또한, 예를 들어 인터 부호화가 행해지는 화상의 경우, 연산부(113)는 화면 재배열 버퍼(112)로부터 판독된 화상으로부터, 움직임 예측·보상부(125)로부터 공급되는 예측 화상을 감산한다.
직교 변환부(114)는 연산부(113)로부터 공급되는 차분 정보에 대하여 이산 코사인 변환이나 카루넨 루베 변환 등의 직교 변환을 실시한다. 직교 변환부(114)는 그 변환 계수를 양자화부(115)에 공급한다.
양자화부(115)는 직교 변환부(114)로부터 공급되는 변환 계수를 양자화한다. 양자화부(115)는 레이트 제어부(127)로부터 공급되는 부호량의 목표 값에 관한 정보에 기초하여 양자화 파라미터를 설정하고, 그 양자화를 행한다. 양자화부(115)는 양자화된 변환 계수를 가역 부호화부(116)에 공급한다.
가역 부호화부(116)는 양자화부(115)에 있어서 양자화된 변환 계수를 임의의 부호화 방식으로 부호화한다. 계수 데이터는 레이트 제어부(127)의 제어 하에서 양자화되고 있으므로, 이 부호량은 레이트 제어부(127)가 설정한 목표 값이 된다(또는 목표 값에 근사함).
또한, 가역 부호화부(116)는 인트라 예측의 모드를 나타내는 정보 등을 인트라 예측부(124)로부터 취득하고, 인터 예측의 모드를 나타내는 정보나 차분 움직임 벡터 정보 등을 움직임 예측·보상부(125)로부터 취득한다. 또한, 가역 부호화부(116)는 시퀀스 파라미터 세트(SPS) 및 픽처 파라미터 세트(PPS) 등을 포함하는 베이스 레이어의 NAL 유닛을 적절히 생성한다.
가역 부호화부(116)는 이들 각종 정보를 임의의 부호화 방식으로 부호화하고, 부호화 데이터(부호화 스트림이라고도 함)의 일부로 한다(다중화함). 가역 부호화부(116)는 부호화해서 얻어진 부호화 데이터를 축적 버퍼(117)에 공급해서 축적시킨다.
가역 부호화부(116)의 부호화 방식으로는, 예를 들어 가변장 부호화 또는 산술 부호화 등을 들 수 있다. 가변장 부호화로는, 예를 들어 H.264/AVC 방식으로 정해져 있는 CAVLC(Context-Adaptive Variable Length Coding) 등을 들 수 있다. 산술 부호화로는, 예를 들어 CABAC(Context-Adaptive Binary Arithmetic Coding) 등을 들 수 있다.
축적 버퍼(117)는 가역 부호화부(116)로부터 공급된 부호화 데이터(베이스 레이어 부호화 데이터)를 일시적으로 유지한다. 축적 버퍼(117)는 소정의 타이밍에 있어서, 유지하고 있는 베이스 레이어 부호화 데이터를, 예를 들어 후단의 도시하지 않은 기록 장치(기록 매체)나 전송로 등에 출력한다. 즉, 축적 버퍼(117)는 부호화 데이터를 전송하는 전송부이기도 하다.
또한, 양자화부(115)에 있어서 양자화된 변환 계수는 역양자화부(118)에도 공급된다. 역양자화부(118)는 그 양자화된 변환 계수를, 양자화부(115)에 의한 양자화에 대응하는 방법으로 역양자화한다. 역양자화부(118)는 얻어진 변환 계수를 역직교 변환부(119)에 공급한다.
역직교 변환부(119)는 역양자화부(118)로부터 공급된 변환 계수를, 직교 변환부(114)에 의한 직교 변환 처리에 대응하는 방법으로 역직교 변환한다. 역직교 변환된 출력(복원된 차분 정보)은 연산부(120)에 공급된다.
연산부(120)는 역직교 변환부(119)로부터 공급된 역직교 변환 결과인 복원된 차분 정보에, 예측 화상 선택부(126)를 통해서 인트라 예측부(124) 또는 움직임 예측·보상부(125)로부터의 예측 화상을 가산하여, 국부적으로 복호된 화상(복호 화상)을 얻는다. 그 복호 화상은 루프 필터(121) 또는 프레임 메모리(122)에 공급된다.
루프 필터(121)는 디블록 필터나 적응 루프 필터 등을 포함하고, 연산부(120)로부터 공급되는 재구성 화상에 대하여 적절히 필터 처리를 행한다. 예를 들어, 루프 필터(121)는 재구성 화상에 대하여 디블록 필터 처리를 행함으로써 재구성 화상의 블록 노이즈를 제거한다. 또한, 예를 들어 루프 필터(121)는 그 디블록 필터 처리 결과(블록 노이즈의 제거가 행해진 재구성 화상)에 대하여 위너 필터(Wiener Filter)를 사용해서 루프 필터 처리를 행함으로써 화질 개선을 행한다. 루프 필터(121)는 필터 처리 결과(이하, 복호 화상이라고 함)를 프레임 메모리(122)에 공급한다.
또한, 루프 필터(121)가 재구성 화상에 대하여, 다른 임의의 필터 처리를 더 행하도록 해도 좋다. 또한, 루프 필터(121)는 필요에 따라, 필터 처리에 사용한 필터 계수 등의 정보를 가역 부호화부(116)에 공급하고, 그것을 부호화시키도록 할 수도 있다.
프레임 메모리(122)는 공급되는 복호 화상을 기억하고, 소정의 타이밍에 있어서, 기억하고 있는 복호 화상을 참조 화상으로 하여 선택부(123)에 공급한다.
보다 구체적으로는, 프레임 메모리(122)는 연산부(120)로부터 공급되는 재구성 화상과, 루프 필터(121)로부터 공급되는 복호 화상을 각각 기억한다. 프레임 메모리(122)는 소정의 타이밍에 있어서, 또는 인트라 예측부(124) 등의 외부로부터의 요구에 기초하여, 기억하고 있는 재구성 화상을, 선택부(123)를 통해서 인트라 예측부(124)에 공급한다. 또한, 프레임 메모리(122)는 소정의 타이밍에 있어서, 또는 움직임 예측·보상부(125) 등의 외부로부터의 요구에 기초하여, 기억하고 있는 복호 화상을, 선택부(123)를 통해서 움직임 예측·보상부(125)에 공급한다.
선택부(123)는 프레임 메모리(122)로부터 공급되는 참조 화상의 공급처를 선택한다. 예를 들어, 인트라 예측의 경우, 선택부(123)는 프레임 메모리(122)로부터 공급되는 참조 화상(커런트 픽처 내의 화소값)을 인트라 예측부(124)에 공급한다. 또한, 예를 들어 인터 예측의 경우, 선택부(123)는 프레임 메모리(122)로부터 공급되는 참조 화상을 움직임 예측·보상부(125)에 공급한다.
인트라 예측부(124)는 선택부(123)를 통해서 프레임 메모리(122)로부터 공급되는 참조 화상인 커런트 픽처 내의 화소값을 사용해서 예측 화상을 생성하는 인트라 예측(화면 내 예측)을 행한다. 인트라 예측부(124)는 미리 준비된 복수의 인트라 예측 모드로 이 인트라 예측을 행한다.
인트라 예측부(124)는 후보가 되는 모든 인트라 예측 모드로 예측 화상을 생성하고, 화면 재배열 버퍼(112)로부터 공급되는 입력 화상을 사용해서 각 예측 화상의 비용 함수 값을 평가하여 최적의 모드를 선택한다. 인트라 예측부(124)는 최적의 인트라 예측 모드를 선택하면, 그 최적의 모드로 생성된 예측 화상을 예측 화상 선택부(126)에 공급한다.
또한, 상술한 바와 같이, 인트라 예측부(124)는 채용된 인트라 예측 모드를 나타내는 인트라 예측 모드 정보 등을 적절히 가역 부호화부(116)에 공급하여 부호화시킨다.
움직임 예측·보상부(125)는 화면 재배열 버퍼(112)로부터 공급되는 입력 화상과, 선택부(123)를 통해서 프레임 메모리(122)로부터 공급되는 참조 화상을 사용해서 움직임 예측(인터 예측)을 행한다. 움직임 예측·보상부(125)는 검출된 움직임 벡터에 따라서 움직임 보상 처리를 행하여, 예측 화상(인터 예측 화상 정보)을 생성한다. 움직임 예측·보상부(125)는 미리 준비된 복수의 인터 예측 모드로 이러한 인터 예측을 행한다.
움직임 예측·보상부(125)는 후보가 되는 모든 인터 예측 모드로 예측 화상을 생성한다. 움직임 예측·보상부(125)는 화면 재배열 버퍼(112)로부터 공급되는 입력 화상과, 생성된 차분 움직임 벡터의 정보 등을 사용하여, 각 예측 화상의 비용 함수 값을 평가하여 최적의 모드를 선택한다. 움직임 예측·보상부(125)는 최적의 인터 예측 모드를 선택하면, 그 최적의 모드로 생성된 예측 화상을, 예측 화상 선택부(126)에 공급한다.
움직임 예측·보상부(125)는 채용된 인터 예측 모드를 나타내는 정보나, 부호화 데이터를 복호할 때, 그 인터 예측 모드로 처리를 행하기 위해서 필요한 정보 등을 가역 부호화부(116)에 공급하고, 부호화시킨다. 필요한 정보로는, 예를 들어 생성된 차분 움직임 벡터의 정보나, 예측 움직임 벡터 정보로서, 예측 움직임 벡터의 인덱스를 나타내는 플래그 등이 있다.
예측 화상 선택부(126)는 연산부(113)나 연산부(120)에 공급하는 예측 화상의 공급원을 선택한다. 예를 들어, 인트라 부호화의 경우, 예측 화상 선택부(126)는 예측 화상의 공급원으로서 인트라 예측부(124)를 선택하고, 그 인트라 예측부(124)로부터 공급되는 예측 화상을 연산부(113)나 연산부(120)에 공급한다. 또한, 예를 들어 인터 부호화의 경우, 예측 화상 선택부(126)는 예측 화상의 공급원으로서 움직임 예측·보상부(125)를 선택하고, 그 움직임 예측·보상부(125)로부터 공급되는 예측 화상을 연산부(113)나 연산부(120)에 공급한다.
레이트 제어부(127)는 축적 버퍼(117)에 축적된 부호화 데이터의 부호량에 기초하여, 오버플로우 또는 언더플로우가 발생하지 않도록 양자화부(115)의 양자화 동작의 레이트를 제어한다.
또한, 프레임 메모리(122)는 기억하고 있는 복호 화상을, 베이스 레이어의 부호화에 관한 정보로서 레이어간 예측 제어부(104)에 공급한다.
<인핸스먼트 레이어 화상 부호화부>
도 11은, 도 9의 인핸스먼트 레이어 화상 부호화부(105)의 주된 구성예를 나타내는 블록도이다. 도 11에 도시한 바와 같이, 인핸스먼트 레이어 화상 부호화부(105)는 도 10의 베이스 레이어 화상 부호화부(103)와 기본적으로 마찬가지의 구성을 갖는다.
단, 인핸스먼트 레이어 화상 부호화부(105)의 각 부는, 베이스 레이어가 아닌, 인핸스먼트 레이어 화상 정보의 부호화에 관한 처리를 행한다. 즉, 인핸스먼트 레이어 화상 부호화부(105)의 A/D 변환부(111)는 인핸스먼트 레이어 화상 정보를 A/D 변환하고, 인핸스먼트 레이어 화상 부호화부(105)의 축적 버퍼(117)는 인핸스먼트 레이어 부호화 데이터를, 예를 들어 후단의 도시하지 않은 기록 장치(기록 매체)나 전송로 등에 출력한다.
또한, 인핸스먼트 레이어 화상 부호화부(105)는 움직임 예측·보상부(125) 대신에 움직임 예측·보상부(135)를 갖는다.
움직임 예측·보상부(135)는 움직임 예측·보상부(125)가 행하는 픽처 간의 움직임 예측뿐만 아니라, 주 레이어간의 움직임 예측도 행할 수 있다. 움직임 예측·보상부(135)는 레이어간 예측 제어부(104)로부터 공급되는 베이스 레이어의 부호화에 관한 정보(예를 들어, 베이스 레이어의 복호 화상)를 취득한다. 움직임 예측·보상부(135)는 인터 예측의 후보 모드의 하나로서, 그 베이스 레이어의 부호화에 관한 정보를 사용해서 주 레이어의 움직임 예측을 행한다.
<공통 정보 생성부와 레이어간 예측 제어부>
도 12는 도 9의 공통 정보 생성부(101) 및 레이어간 예측 제어부(104)의 주된 구성예를 나타내는 블록도이다.
도 12에 도시한 바와 같이, 공통 정보 생성부(101)는 주 레이어 최대수 설정부(141), 서브 레이어 최대수 설정부(142), 레이어간 예측 실행 최대 서브 레이어 설정부(143)를 갖는다. 또한, 레이어간 예측 제어부(104)는 레이어간 예측 실행 제어부(151) 및 부호화 관련 정보 버퍼(152)를 갖는다.
주 레이어 최대수 설정부(141)는 주 레이어의 최대수를 나타내는 정보(max_layer_minus1)를 설정한다. 서브 레이어 최대수 설정부(142)는 서브 레이어의 최대수를 나타내는 정보(vps_max_sub_layer_minus1)를 설정한다. 레이어간 예측 실행 최대 서브 레이어 설정부(143)는 커런트 주 레이어의 레이어간 예측을 허가하는 서브 레이어의 최상위 서브 레이어를 지정하는 정보(max_sub_layer_for_inter_layer_prediction[i])를 설정한다.
공통 정보 생성부(101)는 그들 정보를 공통 정보(비디오 파라미터 세트(VPS))로 해서, 스케일러블 부호화 장치(100)의 외부에 출력한다. 또한, 공통 정보 생성부(101)는 그 공통 정보(비디오 파라미터 세트(VPS))를 부호화 제어부(102)에 공급한다. 또한, 공통 정보 생성부(101)는 커런트 주 레이어의 레이어간 예측을 허가하는 서브 레이어의 최상위 서브 레이어를 지정하는 정보(max_sub_layer_for_inter_layer_prediction[i])를 레이어간 예측 제어부(104)에 공급한다.
레이어간 예측 실행 제어부(151)는 공통 정보 생성부(101)로부터 공급되는 공통 정보에 기초하여, 레이어간 예측의 실행을 제어한다. 보다 구체적으로는, 레이어간 예측 실행 제어부(151)는 공통 정보 생성부(101)로부터 공급되는, 레이어간 예측을 허가하는 서브 레이어의 최상위 서브 레이어를 지정하는 정보(max_sub_layer_for_inter_layer_prediction[i])에 기초하여, 부호화 관련 정보 버퍼(152)를 제어한다.
부호화 관련 정보 버퍼(152)는 베이스 레이어 화상 부호화부(103)로부터 공급되는 베이스 레이어의 부호화에 관한 정보(예를 들어, 베이스 레이어의 복호 화상)를 취득하고 기억한다. 부호화 관련 정보 버퍼(152)는 레이어간 예측 실행 제어부(151)의 제어에 따라, 기억하고 있는 베이스 레이어의 부호화에 관한 정보를 인핸스먼트 레이어 화상 부호화부(105)에 공급한다.
레이어간 예측 실행 제어부(151)는 이 부호화 관련 정보 버퍼(152)로부터의 베이스 레이어의 부호화에 관한 정보의 공급을 제어한다. 예를 들어, 레이어간 예측을 허가하는 서브 레이어의 최상위 서브 레이어를 지정하는 정보(max_sub_layer_for_inter_layer_prediction[i])에 있어서, 커런트 서브 레이어의 레이어간 예측이 허가되어 있는 경우, 레이어간 예측 실행 제어부(151)는 커런트 서브 레이어에 대해서, 부호화 관련 정보 버퍼(152)에 기억되어 있는 베이스 레이어의 부호화에 관한 정보(예를 들어, 베이스 레이어의 복호 화상)를 인핸스먼트 레이어 화상 부호화부(105)에 공급시킨다.
또한, 예를 들어 레이어간 예측을 허가하는 서브 레이어의 최상위 서브 레이어를 지정하는 정보(max_sub_layer_for_inter_layer_prediction[i])에 있어서, 커런트 서브 레이어의 레이어간 예측이 허가되어 있지 않은 경우, 레이어간 예측 실행 제어부(151)는 커런트 서브 레이어에 대해서, 부호화 관련 정보 버퍼(152)에 기억되어 있는 베이스 레이어의 부호화에 관한 정보(예를 들어, 베이스 레이어의 복호 화상)를 인핸스먼트 레이어 화상 부호화부(105)에 공급시키지 않는다.
이상과 같이, 스케일러블 부호화 장치(100)는 서브 레이어를 사용해서 레이어간 예측을 제어하는 레이어간 예측 제어 정보를 전송하므로, 레이어간 예측 제어에 의한 부호화 효율의 저감을 억제할 수 있다. 이에 의해, 스케일러블 부호화 장치(100)는 부호화·복호에 의한 화질의 저감을 억제할 수 있다.
<부호화 처리의 흐름>
이어서, 이상과 같은 스케일러블 부호화 장치(100)에 의해 실행되는 각 처리의 흐름에 대해서 설명한다. 먼저 도 13의 흐름도를 참조하여, 부호화 처리의 흐름의 예를 설명한다.
부호화 처리가 개시되면, 스텝 S101에 있어서, 스케일러블 부호화 장치(100)의 공통 정보 생성부(101)는 공통 정보를 생성한다. 스텝 S102에 있어서, 부호화 제어부(102)는 최초의 주 레이어를 처리 대상으로 한다.
스텝 S103에 있어서, 부호화 제어부(102)는 스텝 S101에 있어서 생성된 공통 정보에 기초하여, 처리 대상인 커런트 주 레이어가 베이스 레이어인지 여부를 판정한다. 커런트 주 레이어가 베이스 레이어라고 판정된 경우, 처리는 스텝 S104로 진행한다.
스텝 S104에 있어서, 베이스 레이어 화상 부호화부(103)는 베이스 레이어 부호화 처리를 행한다. 스텝 S104의 처리가 종료되면, 처리는 스텝 S108로 진행한다.
또한, 스텝 S103에 있어서, 커런트 주 레이어가 인핸스먼트 레이어라고 판정된 경우, 처리는 스텝 S105로 진행한다. 스텝 S105에 있어서, 부호화 제어부(102)는 커런트 주 레이어에 대응하는(즉, 참조처로 하는) 베이스 레이어를 결정한다.
스텝 S106에 있어서, 레이어간 예측 제어부(104)는 레이어간 예측 제어 처리를 행한다.
스텝 S107에 있어서, 인핸스먼트 레이어 화상 부호화부(105)는 인핸스먼트 레이어 부호화 처리를 행한다. 스텝 S107의 처리가 종료되면, 처리는 스텝 S108로 진행한다.
스텝 S108에 있어서, 부호화 제어부(102)는 모든 주 레이어를 처리했는지 여부를 판정한다. 미처리 주 레이어가 존재한다고 판정된 경우, 처리는 스텝 S109로 진행한다.
스텝 S109에 있어서, 부호화 제어부(102)는 다음 미처리 주 레이어를 처리 대상(커런트 주 레이어)으로 한다. 스텝 S109의 처리가 종료되면, 처리는 스텝 S103으로 되돌아간다. 스텝 S103 내지 스텝 S109의 처리가 반복 실행되어, 각 주 레이어가 부호화된다.
그리고 스텝 S108에 있어서, 모든 주 레이어가 처리되었다고 판정된 경우, 부호화 처리가 종료된다.
<공통 정보 생성 처리의 흐름>
이어서, 도 14의 흐름도를 참조하여, 도 13의 스텝 S101에 있어서 실행되는 공통 정보 생성 처리의 흐름의 예를 설명한다.
공통 정보 생성 처리가 개시되면, 주 레이어 최대수 설정부(141)는 스텝 S121에 있어서, 파라미터(max_layer_minus1)를 설정한다. 스텝 S122에 있어서, 서브 레이어 최대수 설정부(142)는 파라미터(vps_max_sub_layers_minus1)를 설정한다. 스텝 S123에 있어서, 레이어간 예측 실행 최대 서브 레이어 설정부(143)는 각 주 레이어에 대해서, 파라미터(max_sub_layer_for_inter_layer_prediction[i])를 설정한다.
스텝 S124에 있어서, 공통 정보 생성부(101)는 스텝 S121 내지 스텝 S123에 있어서 설정된 각 파라미터를 포함하는 비디오 파라미터 세트를 공통 정보로서 생성한다.
스텝 S125에 있어서, 공통 정보 생성부(101)는 스텝 S124의 처리에 의해 생성한 비디오 파라미터 세트를, 스케일러블 부호화 장치(100)의 외부 및 부호화 제어부(102)에 공급한다. 또한, 공통 정보 생성부(101)는 스텝 S123에 있어서 설정한 파라미터(max_sub_layer_for_inter_layer_prediction[i])를 레이어간 예측 제어부(104)에 공급한다.
스텝 S125의 처리가 종료되면, 공통 정보 생성 처리가 종료되고, 처리는 도 13으로 되돌아간다.
<베이스 레이어 부호화 처리의 흐름>
이어서, 도 15의 흐름도를 참조하여, 도 13의 스텝 S104에 있어서 실행되는 베이스 레이어 부호화 처리의 흐름의 예를 설명한다.
스텝 S141에 있어서, 베이스 레이어 화상 부호화부(103)의 A/D 변환부(111)는 입력된 베이스 레이어의 화상 정보(화상 데이터)를 A/D 변환한다. 스텝 S142에 있어서, 화면 재배열 버퍼(112)는 A/D 변환된 베이스 레이어의 화상 정보(디지털 데이터)를 기억하여, 각 픽처를 표시하는 순서로부터 부호화하는 순서로 재배열한다.
스텝 S143에 있어서, 인트라 예측부(124)는 인트라 예측 모드의 인트라 예측 처리를 행한다. 스텝 S144에 있어서, 움직임 예측·보상부(125)는 인터 예측 모드에서의 움직임 예측이나 움직임 보상을 행하는 움직임 예측·보상 처리를 행한다. 스텝 S145에 있어서, 예측 화상 선택부(126)는 인트라 예측부(124) 및 움직임 예측·보상부(125)로부터 출력된 각 비용 함수 값에 기초하여 최적의 모드를 결정한다. 즉, 예측 화상 선택부(126)는 인트라 예측부(124)에 의해 생성된 예측 화상과, 움직임 예측·보상부(125)에 의해 생성된 예측 화상 중 어느 한쪽을 선택한다. 스텝 S146에 있어서, 연산부(113)는 스텝 S142의 처리에 의해 재배열된 화상과, 스텝 S145의 처리에 의해 선택된 예측 화상의 차분을 연산한다. 차분 데이터는 원래의 화상 데이터에 비해서 데이터량이 저감된다. 따라서, 화상을 그대로 부호화할 경우에 비하여 데이터량을 압축할 수 있다.
스텝 S147에 있어서, 직교 변환부(114)는 스텝 S146의 처리에 의해 생성된 차분 정보에 대한 직교 변환 처리를 행한다. 스텝 S148에 있어서, 양자화부(115)는 레이트 제어부(127)에 의해 산출된 양자화 파라미터를 사용하여, 스텝 S147의 처리에 의해 얻어진 직교 변환 계수를 양자화한다.
스텝 S148의 처리에 의해 양자화된 차분 정보는, 다음과 같이 해서 국부적으로 복호된다. 즉, 스텝 S149에 있어서, 역양자화부(118)는 스텝 S148의 처리에 의해 생성된 양자화된 계수(양자화 계수라고도 함)를 양자화부(115)의 특성에 대응하는 특성으로 역양자화한다. 스텝 S150에 있어서, 역직교 변환부(119)는 스텝 S147의 처리에 의해 얻어진 직교 변환 계수를 역직교 변환한다. 스텝 S151에 있어서, 연산부(120)는 예측 화상을 국부적으로 복호된 차분 정보에 가산하고, 국부적으로 복호된 화상(연산부(113)로의 입력에 대응하는 화상)을 생성한다.
스텝 S152에 있어서 루프 필터(121)는 스텝 S151의 처리에 의해 생성된 화상을 필터링한다. 이에 의해 블록 노이즈 등이 제거된다. 스텝 S153에 있어서, 프레임 메모리(122)는 스텝 S152의 처리에 의해 블록 노이즈의 제거 등이 행해진 화상을 기억한다. 또한, 프레임 메모리(122)에는 루프 필터(121)에 의해 필터 처리 되어 있지 않은 화상도 연산부(120)로부터 공급되어 기억된다. 이 프레임 메모리(122)에 기억된 화상은, 스텝 S143의 처리나 스텝 S144의 처리에 이용된다.
또한, 스텝 S154에 있어서, 프레임 메모리(122)는 자신에 기억된 화상을 베이스 레이어의 부호화에 관한 정보로서 레이어간 예측 제어부(104)에 공급하고 기억시킨다.
스텝 S155에 있어서, 가역 부호화부(116)는 스텝 S148의 처리에 의해 양자화된 계수를 부호화한다. 즉, 차분 화상에 대응하는 데이터에 대하여 가변장 부호화나 산술 부호화 등의 가역 부호화가 행해진다.
또한, 이때, 가역 부호화부(116)는 스텝 S145의 처리에 의해 선택된 예측 화상의 예측 모드에 관한 정보를 부호화하고, 차분 화상을 부호화해서 얻어지는 부호화 데이터에 부가한다. 즉, 가역 부호화부(116)는 인트라 예측부(124)로부터 공급되는 최적 인트라 예측 모드 정보 또는, 움직임 예측·보상부(125)로부터 공급되는 최적 인터 예측 모드에 따른 정보 등도 부호화하여, 부호화 데이터에 부가한다.
스텝 S156에 있어서 축적 버퍼(117)는 스텝 S155의 처리에 의해 얻어진 베이스 레이어 부호화 데이터를 축적한다. 축적 버퍼(117)에 축적된 베이스 레이어 부호화 데이터는 적절히 판독되어, 전송로나 기록 매체를 통해서 복호측에 전송된다.
스텝 S157에 있어서 레이트 제어부(127)는 스텝 S156의 처리에 의해 축적 버퍼(117)에 축적된 부호화 데이터의 부호량(발생 부호량)에 기초하여, 오버플로우 또는 언더플로우가 발생하지 않도록, 양자화부(115)의 양자화 동작의 레이트를 제어한다. 또한, 레이트 제어부(127)는 양자화 파라미터에 관한 정보를 양자화부(115)에 공급한다.
스텝 S157의 처리가 종료되면, 베이스 레이어 부호화 처리가 종료되고, 처리는 도 13으로 되돌아간다. 베이스 레이어 부호화 처리는, 예를 들어 픽처 단위로 실행된다. 즉, 커런트 레이어의 각 픽처에 대하여 베이스 레이어 부호화 처리가 실행된다. 단, 베이스 레이어 부호화 처리 내의 각 처리는, 각각의 처리 단위마다 행해진다.
<레이어간 예측 제어 처리의 흐름>
이어서, 도 13의 스텝 S106에 있어서 실행되는 레이어간 예측 제어 처리의 흐름의 예를, 도 16의 흐름도를 참조하여 설명한다.
레이어간 예측 제어 처리가 개시되면, 레이어간 예측 실행 제어부(151)는 스텝 S171에 있어서, 도 14의 공통 정보 생성 처리에 의해 공통 정보 생성부(101)로부터 공급된 파라미터(max_sub_layer_for_inter_layer_prediction[i])를 참조한다.
스텝 S172에 있어서, 레이어간 예측 실행 제어부(151)는 그 파라미터의 값에 기초하여, 커런트 픽처의 커런트 서브 레이어가, 레이어간 예측을 행하는 레이어 인지 여부를 판정한다. 파라미터(max_sub_layer_for_inter_layer_prediction[i])에 의해 지정되는 레이어가 커런트 서브 레이어보다도 상위의 서브 레이어이고, 커런트 서브 레이어에 있어서의 레이어간 예측이 허가되어 있다고 판정된 경우, 처리는 스텝 S173으로 진행한다.
스텝 S173에 있어서, 레이어간 예측 실행 제어부(151)는 부호화 관련 정보 버퍼(152)를 제어하고, 부호화 관련 정보 버퍼(152)에 기억되어 있는 베이스 레이어의 부호화에 관한 정보를, 인핸스먼트 레이어 화상 부호화부(105)에 공급시킨다. 스텝 S173의 처리가 종료되면, 레이어간 예측 제어 처리가 종료되고, 처리는 도 13으로 되돌아간다.
또한, 스텝 S172에 있어서, 커런트 서브 레이어에 있어서의 레이어간 예측이 허가되어 있지 않다고 판정된 경우, 베이스 레이어의 부호화에 관한 정보의 공급은 행해지지 않고서 레이어간 예측 제어 처리가 종료되고, 처리는 도 13으로 되돌아간다. 즉, 이 커런트 서브 레이어에 대한 부호화에 있어서는, 레이어간 예측은 행해지지 않는다.
<인핸스먼트 레이어 부호화 처리의 흐름>
이어서, 도 17의 흐름도를 참조하여, 도 13의 스텝 S107에 있어서 실행되는 인핸스먼트 레이어 부호화 처리의 흐름의 예를 설명한다.
인핸스먼트 레이어 부호화 처리의 스텝 S191 내지 스텝 S193, 및 스텝 S195 내지 스텝 S206의 각 처리는, 베이스 레이어 부호화 처리의 스텝 S141 내지 스텝 S143, 스텝 S145 내지 스텝 S153, 및 스텝 S155 내지 스텝 S157의 각 처리와 마찬가지로 실행된다. 단, 인핸스먼트 레이어 부호화 처리의 각 처리는, 인핸스먼트 레이어 화상 부호화부(105)의 각 처리부에 의해, 인핸스먼트 레이어 화상 정보에 대하여 행해진다.
또한, 스텝 S194에 있어서, 움직임 예측·보상부(135)는 인핸스먼트 레이어 화상 정보에 대하여 움직임 예측·보상 처리를 행한다.
스텝 S206의 처리가 종료되면, 인핸스먼트 레이어 부호화 처리가 종료되고, 처리는 도 13으로 되돌아간다. 인핸스먼트 레이어 부호화 처리는, 예를 들어 픽처 단위로 실행된다. 즉, 커런트 레이어의 각 픽처에 대하여 인핸스먼트 레이어 부호화 처리가 실행된다. 단, 인핸스먼트 레이어 부호화 처리 내의 각 처리는, 각각의 처리 단위마다 행해진다.
<움직임 예측·보상 처리의 흐름>
이어서, 도 18의 흐름도를 참조하여, 도 17의 스텝 S194에 있어서 실행되는 움직임 예측·보상 처리의 흐름의 예를 설명한다.
움직임 예측·보상 처리가 개시되면, 움직임 예측·보상부(135)는 스텝 S221에 있어서, 커런트 주 레이어 내에서 움직임 예측을 행한다.
스텝 S222에 있어서, 움직임 예측·보상부(135)는 커런트 픽처에 대해서, 레이어간 예측을 행할지 여부를 판정한다. 레이어간 예측 제어부(104)로부터 베이스 레이어의 부호화에 관한 정보가 공급되고, 레이어간 예측을 행한다고 판정된 경우, 처리는 스텝 S223으로 진행한다.
스텝 S223에 있어서, 움직임 예측·보상부(135)는 레이어간 예측 제어부(104)로부터 공급되는 베이스 레이어의 부호화에 관한 정보를 취득한다. 스텝 S224에 있어서, 움직임 예측·보상부(135)는 스텝 S223에 있어서 취득한 정보를 사용해서 레이어간 예측을 행한다. 스텝 S224의 처리가 종료되면, 처리는 스텝 S225로 진행된다.
또한, 스텝 S222에 있어서, 레이어간 예측 제어부(104)로부터 베이스 레이어의 부호화에 관한 정보가 공급되어 있지 않고, 레이어간 예측을 행하지 않는다고 판정된 경우, 커런트 픽처에 대해서 레이어간 예측이 생략되고, 처리는 스텝 S225로 진행한다.
스텝 S225에 있어서, 움직임 예측·보상부(135)는 각 예측 모드에 대해서 비용 함수 값을 산출한다. 스텝 S226에 있어서, 움직임 예측·보상부(135)는 그 비용 함수 값에 기초하여 최적의 인터 예측 모드를 선택한다.
스텝 S227에 있어서, 움직임 예측·보상부(135)는 스텝 S226에 있어서 선택된 최적의 인터 예측 모드로 움직임 보상을 행하고, 예측 화상을 생성한다. 스텝 S228에 있어서, 움직임 예측·보상부(135)는 그 최적의 인터 예측 모드에 대해서, 인터 예측에 관한 정보를 생성한다.
스텝 S228의 처리가 종료되면, 움직임 예측·보상 처리가 종료되고, 처리는 도 17로 되돌아간다. 이상과 같이 레이어간 예측을 적절히 사용한 움직임 예측·보상 처리가 행해진다. 이 처리는, 예를 들어 블록 단위로 실행된다. 단, 움직임 예측·보상 처리 내의 각 처리는 각각의 처리 단위마다 행해진다.
이상과 같이 각 처리를 실행함으로써, 스케일러블 부호화 장치(100)는 부호화 효율의 저감을 억제하고, 부호화·복호에 의한 화질의 저감을 억제할 수 있다.
<2. 제2 실시 형태>
<스케일러블 복호 장치>
이어서, 이상과 같이 스케일러블 부호화(계층 부호화)된 부호화 데이터(비트 스트림)의 복호에 대해서 설명한다. 도 19는 도 9의 스케일러블 부호화 장치(100)에 대응하는 스케일러블 복호 장치의 주된 구성예를 나타내는 블록도이다. 도 19에 나타내는 스케일러블 복호 장치(200)는, 예를 들어 스케일러블 부호화 장치(100)에 의해 화상 데이터가 스케일러블 부호화되어 얻어진 부호화 데이터를, 그 부호화 방법에 대응하는 방법으로 스케일러블 복호한다.
도 19에 도시한 바와 같이, 스케일러블 복호 장치(200)는 공통 정보 취득부(201), 복호 제어부(202), 베이스 레이어 화상 복호부(203), 레이어간 예측 제어부(204) 및 인핸스먼트 레이어 화상 복호부(205)를 갖는다.
공통 정보 취득부(201)는 부호화측으로부터 전송되는 공통 정보(예를 들어, 비디오 파라미터 세트(VPS))를 취득한다. 공통 정보 취득부(201)는 취득한 공통 정보로부터 복호에 관한 정보를 추출하고, 그것을 복호 제어부(202)에 공급한다. 또한, 공통 정보 취득부(201)는 공통 정보의 일부 또는 전부를, 베이스 레이어 화상 복호부(203) 내지 인핸스먼트 레이어 화상 복호부(205)에 적절히 공급한다.
복호 제어부(202)는 공통 정보 취득부(201)로부터 공급된 복호에 관한 정보를 취득하고, 그 정보에 기초하여 베이스 레이어 화상 복호부(203) 내지 인핸스먼트 레이어 화상 복호부(205)를 제어함으로써, 각 주 레이어의 복호를 제어한다.
베이스 레이어 화상 복호부(203)는 베이스 레이어 화상 부호화부(103)에 대응하는 화상 복호부이고, 예를 들어 베이스 레이어 화상 부호화부(103)에 의해 베이스 레이어 화상 정보가 부호화되어 얻어진 베이스 레이어 부호화 데이터를 취득한다. 베이스 레이어 화상 복호부(203)는 다른 레이어를 참조하지 않고, 그 베이스 레이어 부호화 데이터를 복호하고, 베이스 레이어 화상 정보를 재구축하여 출력한다. 또한, 베이스 레이어 화상 복호부(203)는 그 복호에 의해 얻어진 베이스 레이어의 복호에 관한 정보를 레이어간 예측 제어부(204)에 공급한다.
레이어간 예측 제어부(204)는 인핸스먼트 레이어 화상 복호부(205)에 의한 레이어간 예측의 실행을 제어한다. 레이어간 예측 제어부(204)는 베이스 레이어 화상 복호부(203)로부터 공급되는 베이스 레이어의 복호에 관한 정보를 취득하고, 기억한다. 또한, 레이어간 예측 제어부(204)는 레이어간 예측이 허가되는 서브 레이어의 복호에 있어서, 기억하고 있는 베이스 레이어의 복호에 관한 정보를 인핸스먼트 레이어 화상 복호부(205)에 공급한다.
인핸스먼트 레이어 화상 복호부(205)는 인핸스먼트 레이어 화상 부호화부(105)에 대응하는 화상 복호부이며, 예를 들어 인핸스먼트 레이어 화상 부호화부(105)에 의해 인핸스먼트 레이어 화상 정보가 부호화되어 얻어진 인핸스먼트 레이어 부호화 데이터를 취득한다. 인핸스먼트 레이어 화상 복호부(205)는 그 인핸스먼트 레이어 부호화 데이터를 복호한다. 그 때, 인핸스먼트 레이어 화상 복호부(205)는 레이어간 예측 제어부(204)의 제어에 따라, 베이스 레이어의 복호에 관한 정보를 참조하여 레이어간 예측을 행한다. 보다 구체적으로는, 예를 들어 처리 대상인 커런트 서브 레이어가, 레이어간 예측이 허가된 서브 레이어인 경우, 인핸스먼트 레이어 화상 복호부(205)는 레이어간 예측 제어부(204)로부터 공급되는 베이스 레이어의 복호에 관한 정보를 취득하고, 그것을 참조하여 레이어간 예측을 행하며, 그 예측 결과를 이용해서 인핸스먼트 레이어 부호화 데이터를 복호한다. 또한, 예를 들어 커런트 서브 레이어가 레이어간 예측이 금지된 서브 레이어인 경우, 인핸스먼트 레이어 화상 복호부(205)는 레이어간 예측을 행하지 않고서 인핸스먼트 레이어 부호화 데이터를 복호한다. 인핸스먼트 레이어 화상 복호부(205)는 이러한 부호화에 의해 인핸스먼트 레이어 화상 정보를 재구축하고 출력한다.
<베이스 레이어 화상 복호부>
도 20은 도 19의 베이스 레이어 화상 복호부(203)의 주된 구성예를 나타내는 블록도이다. 도 20에 나타내진 바와 같이 베이스 레이어 화상 복호부(203)는 축적 버퍼(211), 가역 복호부(212), 역양자화부(213), 역직교 변환부(214), 연산부(215), 루프 필터(216), 화면 재배열 버퍼(217) 및 D/A 변환부(218)를 갖는다. 또한, 베이스 레이어 화상 복호부(203)는 프레임 메모리(219), 선택부(220), 인트라 예측부(221), 움직임 보상부(222) 및 선택부(223)를 갖는다.
축적 버퍼(211)는 전송되어 온 베이스 레이어 부호화 데이터를 수취하는 수취부이기도 하다. 축적 버퍼(211)는 전송되어 온 베이스 레이어 부호화 데이터를 수취하여 축적하고, 소정의 타이밍에 있어서 그 부호화 데이터를 가역 복호부(212)에 공급한다. 이 베이스 레이어 부호화 데이터에는 예측 모드 정보 등의 복호에 필요한 정보가 부가되어 있다.
가역 복호부(212)는 축적 버퍼(211)로부터 공급된, 가역 부호화부(116)에 의해 부호화된 정보를, 가역 부호화부(116)의 부호화 방식에 대응하는 방식으로 복호한다. 가역 복호부(212)는 복호해서 얻어진 차분 화상의 양자화된 계수 데이터를, 역양자화부(213)에 공급한다.
또한, 가역 복호부(212)는 베이스 레이어 부호화 데이터에 포함되는 비디오 파라미터 세트(VPS), 시퀀스 파라미터 세트(SPS) 및 픽처 파라미터 세트(PPS) 등을 포함하는 NAL 유닛을 적절히 추출하고 취득한다. 가역 복호부(212)는 그 정보들로부터 최적의 예측 모드에 관한 정보를 추출하고, 그 정보에 기초하여 최적의 예측 모드에 인트라 예측 모드가 선택되었는지 인터 예측 모드가 선택되었는지를 판정하고, 그 최적의 예측 모드에 관한 정보를, 인트라 예측부(221) 및 움직임 보상부(222) 중, 선택되었다고 판정한 모드 쪽에 공급한다. 즉, 예를 들어 베이스 레이어 화상 부호화부(103)에 있어서 최적의 예측 모드로서 인트라 예측 모드가 선택된 경우, 그 최적의 예측 모드에 관한 정보가 인트라 예측부(221)에 공급된다. 또한, 예를 들어 베이스 레이어 화상 부호화부(103)에 있어서 최적의 예측 모드로서 인터 예측 모드가 선택된 경우, 그 최적의 예측 모드에 관한 정보가 움직임 보상부(222)에 공급된다.
또한, 가역 복호부(212)는, 예를 들어 양자화 행렬이나 양자화 파라미터 등의, 역양자화에 필요한 정보를 NAL 유닛 등으로부터 추출하고, 그것을 역양자화부(213)에 공급한다.
역양자화부(213)는 가역 복호부(212)에 의해 복호되어 얻어진 양자화된 계수 데이터를, 양자화부(115)의 양자화 방식에 대응하는 방식으로 역양자화한다. 또한, 이 역양자화부(213)는 역양자화부(118)와 마찬가지의 처리부이다. 즉, 역양자화부(213)의 설명은 역양자화부(118)에도 준용할 수 있다. 단, 데이터의 입출력처 등은, 장치에 따라서 적절히 바꾸어 읽을 필요가 있다. 역양자화부(213)는 얻어진 계수 데이터를 역직교 변환부(214)에 공급한다.
역직교 변환부(214)는 역양자화부(213)로부터 공급되는 계수 데이터를, 직교 변환부(114)의 직교 변환 방식에 대응하는 방식으로 역직교 변환한다. 또한, 이 역직교 변환부(214)는 역직교 변환부(119)와 마찬가지의 처리부이다. 즉, 역직교 변환부(214)의 설명은 역직교 변환부(119)에도 준용할 수 있다. 단, 데이터의 입출력처 등은, 장치에 따라서 적절히 바꾸어 읽을 필요가 있다.
역직교 변환부(214)는 이 역직교 변환 처리에 의해, 직교 변환부(114)에 있어서 직교 변환되기 전의 잔차 데이터에 대응하는 복호 잔차 데이터를 얻는다. 역직교 변환되어 얻어진 복호 잔차 데이터는 연산부(215)에 공급된다. 또한, 연산부(215)에는 선택부(223)를 통해서 인트라 예측부(221) 또는 움직임 보상부(222)로부터 예측 화상이 공급된다.
연산부(215)는 그 복호 잔차 데이터와 예측 화상을 가산하고, 연산부(113)에 의해 예측 화상이 감산되기 전의 화상 데이터에 대응하는 복호 화상 데이터를 얻는다. 연산부(215)는 그 복호 화상 데이터를 루프 필터(216)에 공급한다.
루프 필터(216)는 공급된 복호 화상에 대하여 디블록 필터나 적응 루프 필터 등을 포함하는 필터 처리를 적절히 실시하고, 그것을 화면 재배열 버퍼(217) 및 프레임 메모리(219)에 공급한다. 예를 들어, 루프 필터(216)는 복호 화상에 대하여 디블록 필터 처리를 행함으로써 복호 화상의 블록 노이즈를 제거한다. 또한, 예를 들어 루프 필터(216)는 그 디블록 필터 처리 결과(블록 노이즈의 제거가 행해진 복호 화상)에 대하여 위너 필터(Wiener Filter)를 사용해서 루프 필터 처리를 행함으로써 화질 개선을 행한다. 또한, 이 루프 필터(216)는 루프 필터(121)와 마찬가지의 처리부이다.
또한, 연산부(215)로부터 출력되는 복호 화상은, 루프 필터(216)를 통하지 않고 화면 재배열 버퍼(217)나 프레임 메모리(219)에 공급할 수 있다. 즉, 루프 필터(216)에 의한 필터 처리의 일부 또는 전부는 생략할 수 있다.
화면 재배열 버퍼(217)는 복호 화상의 재배열을 행한다. 즉, 화면 재배열 버퍼(112)에 의해 부호화의 순서를 위해서 재배열된 프레임의 순서가, 원래의 표시의 순서대로 재배열된다. D/A 변환부(218)는 화면 재배열 버퍼(217)로부터 공급된 화상을 D/A 변환하고, 도시하지 않은 디스플레이에 출력하여 표시시킨다.
프레임 메모리(219)는 공급되는 복호 화상을 기억하고, 소정의 타이밍에 있어서, 또는 인트라 예측부(221)나 움직임 보상부(222) 등의 외부의 요구에 기초하여, 기억하고 있는 복호 화상을 참조 화상으로서 선택부(220)에 공급한다.
또한, 프레임 메모리(219)는 기억하는 복호 화상을 베이스 레이어의 복호에 관한 정보로서 레이어간 예측 제어부(204)에 공급한다.
선택부(220)는 프레임 메모리(219)로부터 공급되는 참조 화상의 공급처를 선택한다. 선택부(220)는 인트라 부호화된 화상을 복호하는 경우, 프레임 메모리(219)로부터 공급되는 참조 화상을 인트라 예측부(221)에 공급한다. 또한, 선택부(220)는 인터 부호화된 화상을 복호하는 경우, 프레임 메모리(219)로부터 공급되는 참조 화상을 움직임 보상부(222)에 공급한다.
인트라 예측부(221)에는, 헤더 정보를 복호해서 얻어진 인트라 예측 모드를 나타내는 정보 등이 가역 복호부(212)로부터 적절히 공급된다. 인트라 예측부(221)는 인트라 예측부(124)에 있어서 사용된 인트라 예측 모드로, 프레임 메모리(219)로부터 취득한 참조 화상을 사용해서 인트라 예측을 행하고, 예측 화상을 생성한다. 인트라 예측부(221)는 생성한 예측 화상을 선택부(223)에 공급한다.
움직임 보상부(222)는 헤더 정보를 복호해서 얻어진 정보(최적 예측 모드 정보, 참조 화상 정보 등)를 가역 복호부(212)로부터 취득한다.
움직임 보상부(222)는 가역 복호부(212)로부터 취득된 최적 예측 모드 정보가 나타내는 인터 예측 모드로, 프레임 메모리(219)로부터 취득한 참조 화상을 사용해서 움직임 보상을 행하고, 예측 화상을 생성한다.
선택부(223)는 인트라 예측부(221)로부터의 예측 화상 또는 움직임 보상부(222)로부터의 예측 화상을 연산부(215)에 공급한다. 그리고, 연산부(215)에 있어서는, 움직임 벡터가 사용되어 생성된 예측 화상과 역직교 변환부(214)로부터의 복호 잔차 데이터(차분 화상 정보)가 가산되어 원래의 화상이 복호된다.
<인핸스먼트 레이어 화상 부호화부>
도 21은 도 19의 인핸스먼트 레이어 화상 복호부(205)의 주된 구성예를 나타내는 블록도이다. 도 21에 나타낸 바와 같이, 인핸스먼트 레이어 화상 복호부(205)는 도 20의 베이스 레이어 화상 복호부(203)와 기본적으로 마찬가지의 구성을 갖는다.
단, 인핸스먼트 레이어 화상 복호부(205)의 각 부는 베이스 레이어가 아닌, 인핸스먼트 레이어 부호화 데이터의 복호에 관한 처리를 행한다. 즉, 인핸스먼트 레이어 화상 복호부(205)의 축적 버퍼(211)는 인핸스먼트 레이어 부호화 데이터를 기억하고, 인핸스먼트 레이어 화상 복호부(205)의 D/A 변환부(218)는 인핸스먼트 레이어 화상 정보를, 예를 들어 후단의 도시하지 않은 기록 장치(기록 매체)나 전송로 등에 출력한다.
또한, 인핸스먼트 레이어 화상 복호부(205)는 움직임 보상부(222) 대신에 움직임 보상부(232)를 갖는다.
움직임 보상부(232)는 움직임 보상부(222)가 행하는 픽처간의 움직임 보상뿐만 아니라, 주 레이어간의 움직임 보상도 행할 수 있다. 그 경우, 움직임 보상부(232)는 레이어간 예측 제어부(204)로부터 공급되는 베이스 레이어의 복호에 관한 정보(예를 들어, 베이스 레이어의 복호 화상)를 취득한다. 움직임 보상부(232)는 그 베이스 레이어의 복호에 관한 정보를 사용해서 주 레이어의 움직임 보상을 행한다.
<공통 정보 취득부와 레이어간 예측 제어부>
도 22는 도 19의 공통 정보 취득부(201) 및 레이어간 예측 제어부(204)의 주된 구성예를 나타내는 블록도이다.
도 22에 도시한 바와 같이, 공통 정보 취득부(201)는 주 레이어 최대수 취득부(241), 서브 레이어 최대수 취득부(242), 레이어간 예측 실행 최대 서브 레이어 취득부(243)를 갖는다. 또한, 레이어간 예측 제어부(204)는 레이어간 예측 실행 제어부(251) 및 복호 관련 정보 버퍼(252)를 갖는다.
주 레이어 최대수 취득부(241)는 부호화측으로부터 전송된 공통 정보에 포함되는 주 레이어의 최대수를 나타내는 정보(max_layer_minus1)를 취득한다. 서브 레이어 최대수 취득부(242)는 부호화측으로부터 전송된 공통 정보에 포함되는 서브 레이어의 최대수를 나타내는 정보(vps_max_sub_layer_minus1)를 취득한다. 레이어간 예측 실행 최대 서브 레이어 취득부(243)는 부호화측으로부터 전송된 공통 정보에 포함되는 커런트 주 레이어의 레이어간 예측을 허가하는 서브 레이어의 최상위 서브 레이어를 지정하는 정보(max_sub_layer_for_inter_layer_prediction[i])를 취득한다.
공통 정보 취득부(201)는 취득한 공통 정보에 포함되는 복호에 관한 정보(예를 들어 비디오 파라미터 세트(VPS) 등)를 복호 제어부(202)에 공급한다. 또한, 공통 정보 취득부(201)는 커런트 주 레이어의 레이어간 예측을 허가하는 서브 레이어의 최상위 서브 레이어를 지정하는 정보(max_sub_layer_for_inter_layer_prediction[i])를 레이어간 예측 제어부(204)에 공급한다.
레이어간 예측 실행 제어부(251)는 공통 정보 취득부(201)로부터 공급되는 공통 정보에 기초하여, 레이어간 예측의 실행을 제어한다. 보다 구체적으로는, 레이어간 예측 실행 제어부(251)는 공통 정보 취득부(201)로부터 공급되는, 레이어간 예측을 허가하는 서브 레이어의 최상위 서브 레이어를 지정하는 정보(max_sub_layer_for_inter_layer_prediction[i])에 기초하여, 복호 관련 정보 버퍼(252)를 제어한다.
복호 관련 정보 버퍼(252)는 베이스 레이어 화상 복호부(203)로부터 공급되는 베이스 레이어의 복호에 관한 정보(예를 들어, 베이스 레이어의 복호 화상)를 취득하고 기억한다. 복호 관련 정보 버퍼(252)는 레이어간 예측 실행 제어부(251)의 제어에 따라, 기억하고 있는 베이스 레이어의 부호화에 관한 정보를 인핸스먼트 레이어 화상 복호부(205)에 공급한다.
레이어간 예측 실행 제어부(251)는, 이 복호 관련 정보 버퍼(252)로부터의 베이스 레이어의 복호에 관한 정보의 공급을 제어한다. 예를 들어 레이어간 예측을 허가하는 서브 레이어의 최상위 서브 레이어를 지정하는 정보(max_sub_layer_for_inter_layer_prediction[i])에 있어서, 커런트 서브 레이어의 레이어간 예측이 허가되어 있는 경우, 레이어간 예측 실행 제어부(251)는 커런트 서브 레이어에 대하여, 복호 관련 정보 버퍼(252)에 기억되어 있는 베이스 레이어의 복호에 관한 정보(예를 들어 베이스 레이어의 복호 화상)를 인핸스먼트 레이어 화상 복호부(205)에 공급시킨다.
또한 예를 들어 레이어간 예측을 허가하는 서브 레이어의 최상위 서브 레이어를 지정하는 정보(max_sub_layer_for_inter_layer_prediction[i])에 있어서, 커런트 서브 레이어의 레이어간 예측이 허가되어 있지 않은 경우, 레이어간 예측 실행 제어부(251)는 커런트 서브 레이어에 대하여, 복호 관련 정보 버퍼(252)에 기억되어 있는 베이스 레이어의 복호에 관한 정보(예를 들어 베이스 레이어의 복호 화상)를 인핸스먼트 레이어 화상 복호부(205)에 공급시키지 않는다.
이상과 같이 스케일러블 복호 장치(200)는, 서브 레이어를 사용하여 레이어간 예측를 제어하는 레이어간 예측 제어 정보를 전송하므로, 레이어간 예측 제어에 의한 부호화 효율의 저감을 억제할 수 있다. 이것에 의하여, 스케일러블 복호 장치(200)는 부호화·복호에 의한 화질의 저감을 억제할 수 있다.
<복호 처리의 흐름>
이어서, 이상과 같은 스케일러블 복호 장치(200)에 의하여 실행되는 각 처리의 흐름에 대하여 설명한다. 처음에, 도 23의 흐름도를 참조하여 복호 처리의 흐름의 예를 설명한다.
복호 처리가 개시되면, 스텝 S301에 있어서 스케일러블 복호 장치(200)의 공통 정보 취득부(201)는 공통 정보를 취득한다. 스텝 S302에 있어서 복호 제어부(202)는 최초의 주 레이어를 처리 대상으로 한다.
스텝 S303에 있어서 복호 제어부(202)는, 스텝 S301에 있어서 취득된, 부호화측으로부터 전송된 공통 정보에 기초하여, 처리 대상인 커런트 주 레이어가 베이스 레이어인지 여부를 판정한다. 커런트 주 레이어가 베이스 레이어라고 판정된 경우, 처리는 스텝 S304로 진행된다.
스텝 S304에 있어서 베이스 레이어 화상 복호부(203)는 베이스 레이어 복호 처리를 행한다. 스텝 S304의 처리가 종료되면, 처리는 스텝 S308로 진행된다.
또한 스텝 S303에 있어서 커런트 주 레이어가 인핸스먼트 레이어라고 판정된 경우, 처리는 스텝 S305로 진행된다. 스텝 S305에 있어서 복호 제어부(202)는, 커런트 주 레이어에 대응하는(즉, 참조처로 하는) 베이스 레이어를 결정한다.
스텝 S306에 있어서 레이어간 예측 제어부(204)는 레이어간 예측 제어 처리를 행한다.
스텝 S307에 있어서 인핸스먼트 레이어 화상 복호부(205)는 인핸스먼트 레이어 복호 처리를 행한다. 스텝 S307의 처리가 종료되면, 처리는 스텝 S308로 진행된다.
스텝 S308에 있어서 복호 제어부(202)는 모든 주 레이어를 처리했는지 여부를 판정한다. 미처리된 주 레이어가 존재한다고 판정된 경우, 처리는 스텝 S309로 진행된다.
스텝 S309에 있어서 복호 제어부(202)는 다음의 미처리된 주 레이어를 처리 대상(커런트 주 레이어)으로 한다. 스텝 S309의 처리가 종료되면, 처리는 스텝 S303으로 되돌아간다. 스텝 S303 내지 스텝 S309의 처리가 반복 실행되고 각 주 레이어가 복호된다.
그리고 스텝 S308에 있어서 모든 주 레이어가 처리되었다고 판정된 경우, 복호 처리가 종료된다.
<공통 정보 취득 처리의 흐름>
이어서, 도 24의 흐름도를 참조하여 도 23의 스텝 S301에 있어서 실행되는 공통 정보 취득 처리의 흐름의 예를 설명한다.
공통 정보 취득 처리가 개시되면 공통 정보 취득부(201)는, 스텝 S321에 있어서 부호화측으로부터 전송된 비디오 파라미터 세트(VPS)를 취득한다.
스텝 S322에 있어서 주 레이어 최대수 취득부(241)는 비디오 파라미터 세트로부터 파라미터(max_layer_minus1)를 취득한다. 스텝 S323에 있어서 서브 레이어 최대수 취득부(242)는 비디오 파라미터 세트로부터 파라미터(vps_max_sub_layers_minus1)를 취득한다. 스텝 S324에 있어서 레이어간 예측 실행 최대 서브 레이어 취득부(243)는 각 주 레이어에 대하여 파라미터(max_sub_layer_for_inter_layer_prediction[i])를 취득한다.
스텝 S325에 있어서 공통 정보 취득부(201)는 비디오 파라미터 세트로부터 복호의 제어에 필요한 정보를 추출하고, 그것을 복호에 관한 정보로서 복호 제어부(202)에 공급한다.
스텝 S325의 처리가 종료되면, 공통 정보 취득 처리가 종료되고 처리는 도 23으로 되돌아간다.
<베이스 레이어 복호 처리의 흐름>
이어서, 도 25의 흐름도를 참조하여 도 23의 스텝 S304에 있어서 실행되는 베이스 레이어 복호 처리의 흐름의 예를 설명한다.
베이스 레이어 복호 처리가 개시되면, 스텝 S341에 있어서 베이스 레이어 화상 복호부(203)의 축적 버퍼(211)는, 부호화측으로부터 전송된 베이스 레이어의 비트 스트림을 축적한다. 스텝 S342에 있어서 가역 복호부(212)는, 축적 버퍼(211)로부터 공급되는 베이스 레이어의 비트 스트림(부호화된 차분 화상 정보)을 복호한다. 즉, 가역 부호화부(116)에 의하여 부호화된 I 픽처, P 픽처 및 B 픽처가 복호된다. 이때, 헤더 정보 등의 비트 스트림에 포함된 차분 화상 정보 이외의 각종 정보도 복호된다.
스텝 S343에 있어서 역양자화부(213)는, 스텝 S342의 처리에 의하여 얻어진, 양자화된 계수를 역양자화한다.
스텝 S344에 있어서 역직교 변환부(214)는 커런트 블록(커런트 TU)을 역직교 변환한다.
스텝 S345에 있어서 인트라 예측부(221) 또는 움직임 보상부(222)는, 예측 처리를 행하고 예측 화상을 생성한다. 즉, 가역 복호부(212)에 있어서 판정된, 부호화 시에 적용된 예측 모드에서 예측 처리가 행해진다. 보다 구체적으로는, 예를 들어 부호화 시에 인트라 예측이 적용된 경우, 인트라 예측부(221)가, 부호화 시에 최적으로 된 인트라 예측 모드에서 예측 화상을 생성한다. 또한 예를 들어 부호화 시에 인터 예측이 적용된 경우, 움직임 보상부(222)가, 부호화 시에 최적으로 된 인터 예측 모드에서 예측 화상을 생성한다.
스텝 S346에 있어서 연산부(215)는, 스텝 S344의 역직교 변환 처리에 의하여 생성된 차분 화상 정보에, 스텝 S345에 있어서 생성된 예측 화상을 가산한다. 이것에 의하여 원래의 화상이 복호된다.
스텝 S347에 있어서 루프 필터(216)는, 스텝 S346에 있어서 얻어진 복호 화상에 대하여 루프 필터 처리를 적절히 행한다.
스텝 S348에 있어서 화면 재배열 버퍼(217)는, 스텝 S347에 있어서 필터 처리된 화상의 재배열을 행한다. 즉 화면 재배열 버퍼(112)에 의하여 부호화를 위하여 재배열된 프레임의 순서가, 원래의 표시의 순서로 재배열된다.
스텝 S349에 있어서 D/A 변환부(218)는, 스텝 S348에 있어서 프레임의 순서가 재배열된 화상을 D/A 변환한다. 이 화상이, 도시하지 않은 디스플레이에 출력되어 화상이 표시된다.
스텝 S350에 있어서 프레임 메모리(219)는, 스텝 S347에 있어서 루프 필터 처리된 화상을 기억한다.
스텝 S351에 있어서 프레임 메모리(219)는, 스텝 S350에 있어서 기억한 복호 화상을, 베이스 레이어의 복호에 관한 정보로서 레이어간 예측 제어부(204)의 복호 관련 정보 버퍼(252)에 공급하고 기억시킨다.
스텝 S351의 처리가 종료되면, 베이스 레이어 복호 처리가 종료되고 처리는 도 23으로 되돌아간다. 베이스 레이어 복호 처리는, 예를 들어 픽처 단위로 실행된다. 즉, 커런트 레이어의 각 픽처에 대하여 베이스 레이어 복호 처리가 실행된다. 단, 베이스 레이어 복호 처리 내의 각 처리는, 각각의 처리 단위마다 행해진다.
<레이어간 예측 제어 처리의 흐름>
이어서, 도 23의 스텝 S306에 있어서 실행되는 레이어간 예측 제어 처리의 흐름의 예를, 도 26의 흐름도를 참조하여 설명한다.
레이어간 예측 제어 처리가 개시되면 레이어간 예측 실행 제어부(251)는, 스텝 S371에 있어서 도 24의 공통 정보 생성 처리에 의하여 공통 정보 취득부(201)로부터 공급된 파라미터(max_sub_layer_for_inter_layer_prediction[i])를 참조한다.
스텝 S372에 있어서 레이어간 예측 실행 제어부(251)는, 그 파라미터의 값에 기초하여, 커런트 픽처의 커런트 서브 레이어가, 레이어간 예측을 행하는 레이어인지 여부를 판정한다. 파라미터(max_sub_layer_for_inter_layer_prediction[i])에 의하여 지정되는 레이어가 커런트 서브 레이어보다도 상위의 서브 레이어이며, 커런트 서브 레이어에 있어서의 레이어간 예측이 허가되어 있다고 판정된 경우, 처리는 스텝 S373으로 진행된다.
스텝 S373에 있어서 레이어간 예측 실행 제어부(251)는 복호 관련 정보 버퍼(252)를 제어하고, 복호 관련 정보 버퍼(252)에 기억되어 있는 베이스 레이어의 복호에 관한 정보를 인핸스먼트 레이어 화상 복호부(205)에 공급시킨다. 스텝 S373의 처리가 종료되면, 레이어간 예측 제어 처리가 종료되고 처리는 도 23으로 되돌아간다.
또한 스텝 S372에 있어서, 커런트 서브 레이어에 있어서의 레이어간 예측이 허가되어 있지 않다고 판정된 경우, 베이스 레이어의 부호화에 관한 정보의 공급은 행해지지 않으며, 레이어간 예측 제어 처리가 종료되고 처리는 도 23으로 되돌아간다. 즉, 이 커런트 서브 레이어에 대한 부호화에 있어서는, 레이어간 예측은 행해지지 않는다.
<인핸스먼트 레이어 복호 처리의 흐름>
이어서, 도 27의 흐름도를 참조하여 도 23의 스텝 S307에 있어서 실행되는 인핸스먼트 레이어 복호 처리의 흐름의 예를 설명한다.
인핸스먼트 레이어 복호 처리의 스텝 S391 내지 스텝 S394, 및 스텝 S396 내지 스텝 S400의 각 처리는, 베이스 레이어 복호 처리의 스텝 S341 내지 스텝 S344, 및 스텝 S346 내지 스텝 S350의 각 처리와 마찬가지로 실행된다. 단, 인핸스먼트 레이어 복호 처리의 각 처리는, 인핸스먼트 레이어 화상 복호부(205)의 각 처리부에 의하여, 인핸스먼트 레이어 부호화 데이터에 대하여 행해진다.
또한 스텝 S395에 있어서 인트라 예측부(221) 또는 움직임 보상부(232)는, 인핸스먼트 레이어 부호화 데이터에 대하여 예측 처리를 행한다.
스텝 S400의 처리가 종료되면, 인핸스먼트 레이어 복호 처리가 종료되고 처리는 도 23으로 되돌아간다. 인핸스먼트 레이어 복호 처리는, 예를 들어 픽처 단위로 실행된다. 즉, 커런트 레이어의 각 픽처에 대하여 인핸스먼트 레이어 복호 처리가 실행된다. 단, 인핸스먼트 레이어 복호 처리 내의 각 처리는, 각각의 처리 단위마다 행해진다.
<예측 처리의 흐름>
이어서, 도 28의 흐름도를 참조하여 도 27의 스텝 S395에 있어서 실행되는 예측 처리의 흐름의 예를 설명한다.
예측 처리가 개시되면 움직임 보상부(232)는, 스텝 S421에 있어서 예측 모드가 인터 예측인지 여부를 판정한다. 인터 예측이라고 판정한 경우, 처리는 스텝 S422로 진행된다.
스텝 S422에 있어서 움직임 보상부(232)는, 부호화 시에 채용된 인터 예측 모드인 최적 인터 예측 모드가, 레이어간 예측을 행하는 모드인지 여부를 판정한다. 최적 인터 예측 모드가 레이어간 예측을 행하는 모드라고 판정된 경우, 처리는 스텝 S423으로 진행된다.
스텝 S423에 있어서 움직임 보상부(232)는, 베이스 레이어의 복호에 관한 정보를 취득한다. 스텝 S424에 있어서 움직임 보상부(232)는, 베이스 레이어에 관한 정보를 사용하여 움직임 보상을 행하고, 레이어간 예측의 예측 화상을 생성한다. 스텝 S424의 처리가 종료되면, 처리는 스텝 S427로 진행된다.
또한 스텝 S422에 있어서 최적 인터 예측 모드가, 레이어간 예측을 행하는 모드가 아니라고 판정된 경우, 처리는 스텝 S425로 진행된다. 스텝 S425에 있어서 움직임 보상부(232)는, 커런트 주 레이어 내에서 움직임 보상을 행하고 예측 화상을 생성한다. 스텝 S425의 처리가 종료되면, 처리는 스텝 S427로 진행된다.
또한 스텝 S421에 있어서 인트라 예측이라고 판정된 경우, 처리는 스텝 S426으로 진행된다. 스텝 S426에 있어서 인트라 예측부(221)는, 부호화 시에 채용된 인트라 예측 모드인 최적 인트라 예측 모드에서 예측 화상을 생성한다. 스텝 S426의 처리가 종료되면, 처리는 스텝 S427로 진행된다.
스텝 S427에 있어서 선택부(223)는 예측 화상을 선택하여 연산부(215)에 공급한다. 스텝 S427의 처리가 종료되면, 예측 처리가 종료되고 처리가 도 27로 되돌아간다.
이상과 같이 각 처리를 실행함으로써, 스케일러블 복호 장치(200)는 부호화 효율의 저감을 억제하고, 부호화·복호에 의한 화질의 저감을 억제할 수 있다.
<3. 제3 실시 형태>
<주 레이어마다의 서브 레이어 지정>
이상에 있어서는 공통 정보로서, 예를 들어 비디오 파라미터 세트(VPS)에 있어서, 파라미터(vps_max_sub_layers_minus1)에 의하여 각 주 레이어에 있어서의 서브 레이어의 계층 수의 최대값을 지정하도록 설명했지만 이에 한정되지 않으며, 각 주 레이어에 있어서의 서브 레이어의 계층 수를 개별적으로 지정하도록 해도 된다.
도 29에, 이 경우의 비디오 파라미터 세트의 신택스 예를 나타낸다. 도 29에 나타난 바와 같이 이 경우, 비디오 파라미터 세트(VPS)에 있어서, 파라미터(vps_max_sub_layers_minus1) 대신 파라미터(vps_num_sub_layers_minus1[i])가 설정된다.
이 파라미터(vps_num_sub_layers_minus1[i])는 주 레이어마다 설정되는 파라미터이며, 대응하는 주 레이어에 있어서의 서브 레이어의 계층 수(서브 레이어 수)를 지정한다. 즉, 이 파라미터에 의하여 각 주 레이어의 서브 레이어 수가 개별적으로 지정된다.
계층화에는 다양한 방법이 있으며, 예를 들어 주 레이어마다 서브 레이어 수(예를 들어 GOP 구조)가 다르도록 할 수도 있다. 도 30에 도시되는 예의 경우, 주 레이어에 있어서, 하위 계층(베이스 레이어)에 비하여 상위 계층(인핸스먼트 레이어) 쪽이 서브 레이어가 적다. 또한 도 31에 도시되는 예의 경우, 주 레이어에 있어서, 하위 계층(베이스 레이어)에 비하여 상위 계층(인핸스먼트 레이어) 쪽이 서브 레이어가 많다.
파라미터(vps_num_sub_layers_minus1[i])에 따라서, 각 주 레이어의 서브 레이어 수가 개별적으로 지정됨으로써, 스케일러블 부호화 장치(100) 및 스케일러블 복호 장치(200)는 이 값을 사용하여, 레이어간 예측의, 보다 상세한(보다 정확한) 제어를 행할 수 있게 된다.
예를 들어 이상에 있어서는, 파라미터(max_sub_layer_for_inter_layer_prediction)의 값이 파라미터(vps_max_sub_layers_minus1) 이하로 되는 것으로 설명했지만, 실제로는 파라미터(max_sub_layer_for_inter_layer_prediction)에, 베이스 레이어와 인핸스먼트 레이어의 양쪽의 서브 레이어 수를 초과한 값을 설정하더라도, 실제의 서브 레이어 수가 최상위 레이어로 된다. 즉, 레이어간 예측을 정확히 제어하기 위해서는, 베이스 레이어와 인핸스먼트 레이어의 서브 레이어 수를 별도로 파악해 둘 필요가 있다.
따라서 파라미터(vps_num_sub_layers_minus1[i])의 값을 사용하여, 파라미터(max_sub_layer_for_inter_layer_prediction)의 값을, 베이스 레이어의 서브 레이어 수와, 인핸스먼트 레이어의 서브 레이어 수 중 적은 쪽의 서브 레이어 수 이하로 설정하도록 한다. 이와 같이 함으로써, 레이어간 예측을 보다 용이하게 정확히 제어할 수 있다.
<공통 정보 생성부와 레이어간 예측 제어부>
도 32는, 이 경우의, 스케일러블 부호화 장치(100)의 공통 정보 생성부 및 레이어간 예측 제어부의 주된 구성예를 도시하는 블록도이다. 이 경우, 스케일러블 부호화 장치(100)는 공통 정보 생성부(101) 대신 공통 정보 생성부(301)를 갖는다.
도 32에 도시된 바와 같이 공통 정보 생성부(301)는, 기본적으로 공통 정보 생성부(101)와 마찬가지의 처리부이며, 마찬가지의 구성을 갖지만, 서브 레이어 최대수 설정부(142)와 레이어간 예측 실행 최대 서브 레이어 설정부(143) 대신 서브 레이어 수 설정부(342)와 레이어간 예측 실행 최대 서브 레이어 설정부(343)를 갖는다.
서브 레이어 수 설정부(342)는, 대응하는 주 레이어의 서브 레이어 수를 지정하는 정보인 파라미터(vps_num_sub_layers_minus1[i])를 설정한다. 서브 레이어 수 설정부(342)는 주 레이어(i)마다 이 파라미터(vps_num_sub_layers_minus1[i])를 설정한다.
레이어간 예측 실행 최대 서브 레이어 설정부(343)는, 서브 레이어 수 설정부(342)에 의하여 설정된 파라미터(vps_num_sub_layers_minus1[i])의 값에 기초하여, 대응하는 주 레이어의, 레이어간 예측을 허가하는 서브 레이어의 최상위 서브 레이어를 지정하는 정보인 파라미터(max_sub_layer_for_inter_layer_prediction[i])를 설정한다.
이와 같이 함으로써, 스케일러블 부호화 장치(100)는 레이어간 예측을 보다 용이하게 정확히 제어할 수 있다.
<공통 정보 생성 처리의 흐름>
이 경우의 공통 정보 생성 처리의 흐름의 예를, 도 33의 흐름도를 참조하여 설명한다. 공통 정보 생성 처리가 개시되면 주 레이어 최대수 설정부(141)는, 스텝 S501에 있어서 파라미터(max_layer_minus1)를 설정한다.
스텝 S502에 있어서 서브 레이어 수 설정부(342)는, 각 주 레이어에 대하여 파라미터(vps_num_sub_layers_minus1[i])를 설정한다.
스텝 S503에 있어서 레이어간 예측 실행 최대 서브 레이어 설정부(343)는, 커런트 레이어 및 참조처 레이어의 파라미터(vps_num_sub_layers_minus1[i])에 기초하여, 각 주 레이어에 대하여 파라미터(max_sub_layer_for_inter_layer_prediction[i])를 설정한다.
스텝 S504에 있어서, 공통 정보 생성부(101)는 스텝 S501 내지 스텝 S503에 있어서 설정된 각 파라미터를 포함하는 비디오 파라미터 세트를 공통 정보로서 생성한다.
스텝 S505에 있어서 공통 정보 생성부(101)는, 스텝 S504의 처리에 의하여 생성된 비디오 파라미터 세트를 스케일러블 부호화 장치(100)의 외부 및 부호화 제어부(102)에 공급한다. 또한 공통 정보 생성부(101)는, 스텝 S503에 있어서 설정된 파라미터(max_sub_layer_for_inter_layer_prediction[i])를 레이어간 예측 제어부(104)에 공급한다.
스텝 S505의 처리가 종료되면, 공통 정보 생성 처리가 종료되고 처리는 도 13으로 되돌아간다.
이와 같이 처리를 행함으로써, 스케일러블 부호화 장치(100)는 레이어간 예측을 보다 용이하게 정확히 제어할 수 있다.
<4. 제4 실시 형태>
<공통 정보 취득부와 레이어간 예측 제어부>
이어서, 스케일러블 복호 장치(200)에 대하여 설명한다. 도 34는, 이 경우의, 스케일러블 복호 장치(200)의 공통 정보 취득부 및 레이어간 예측 제어부의 주된 구성예를 도시하는 블록도이다. 이 경우, 스케일러블 복호 장치(200)는 공통 정보 취득부(201) 대신 공통 정보 취득부(401)를 갖는다.
도 34에 도시된 바와 같이 공통 정보 취득부(401)는, 기본적으로 공통 정보 취득부(201)와 마찬가지의 처리부이며, 마찬가지의 구성을 갖지만, 서브 레이어 최대수 취득부(242)와 레이어간 예측 실행 최대 서브 레이어 취득부(243) 대신 서브 레이어 수 취득부(442)와 레이어간 예측 실행 최대 서브 레이어 취득부(443)를 갖는다.
서브 레이어 수 취득부(442)는, 부호화측으로부터 전송된 공통 정보에 포함되는 파라미터(vps_num_sub_layers_minus1[i])를 취득한다. 레이어간 예측 실행 최대 서브 레이어 취득부(443)는, 부호화측으로부터 전송된 공통 정보에 포함되는 파라미터(max_sub_layer_for_inter_layer_prediction[i])를 취득한다. 상술한 바와 같이 이 파라미터(max_sub_layer_for_inter_layer_prediction[i])는, 부호화측에 있어서 파라미터(vps_num_sub_layers_minus1[i])의 값을 사용하여 설정된 것이다.
공통 정보 취득부(401)는, 취득한 공통 정보에 포함되는 복호에 관한 정보(예를 들어 비디오 파라미터 세트(VPS) 등)를 복호 제어부(202)에 공급한다. 또한 공통 정보 취득부(401)는, 커런트 주 레이어의 레이어간 예측을 허가하는 서브 레이어의 최상위 서브 레이어를 지정하는 정보(max_sub_layer_for_inter_layer_prediction[i])를 레이어간 예측 제어부(204)에 공급한다.
이와 같이 함으로써, 스케일러블 복호 장치(200)는 레이어간 예측을 보다 용이하게 정확히 제어할 수 있다.
<공통 정보 취득 처리의 흐름>
이어서, 도 35의 흐름도를 참조하여 도 23의 스텝 S301에 있어서 실행되는 공통 정보 취득 처리의 흐름의 예를 설명한다.
공통 정보 취득 처리가 개시되면 공통 정보 취득부(401)는, 스텝 S521에 있어서 부호화측으로부터 전송된 비디오 파라미터 세트(VPS)를 취득한다.
스텝 S522에 있어서 주 레이어 최대수 취득부(241)는, 비디오 파라미터 세트로부터 파라미터(max_layer_minus1)를 취득한다.
스텝 S523에 있어서 서브 레이어 수 취득부(442)는, 비디오 파라미터 세트(VPS)로부터 각 주 레이어에 대하여 파라미터(vps_num_sub_layers_minus1[i])를 취득한다.
스텝 S524에 있어서 레이어간 예측 실행 최대 서브 레이어 취득부(443)는, 비디오 파라미터 세트(VPS)로부터 각 주 레이어에 대하여 파라미터(max_sub_layer_for_inter_layer_prediction[i])를 취득한다.
스텝 S525에 있어서 공통 정보 취득부(401)는, 비디오 파라미터 세트로부터 복호의 제어에 필요한 정보를 추출하고, 그것을 복호에 관한 정보로서 복호 제어부(202)에 공급한다. 또한 공통 정보 취득부(401)는, 스텝 S523에 있어서 설정한 파라미터(max_sub_layer_for_inter_layer_prediction[i])를 레이어간 예측 제어부(204)에 공급한다.
스텝 S525의 처리가 종료되면, 공통 정보 취득 처리가 종료되고 처리는 도 23으로 되돌아간다.
이와 같이 처리를 행함으로써, 스케일러블 복호 장치(200)는 레이어간 예측을 보다 용이하게 정확히 제어할 수 있다.
<5. 제5 실시 형태>
<주 레이어 공통의 레이어간 예측 제어 정보>
이상에 있어서는, 파라미터(max_sub_layer_for_inter_layer_prediction[i])를 주 레이어마다 설정하는 것으로 설명했지만 이에 한정되지 않으며, 이 값을, 모든 주 레이어에 공통인 값으로 해도 된다.
또한 레이어간 예측 제어 정보를 주 레이어마다 설정하는지, 전체 주 레이어 공통의 값으로 하는지를 제어하는 제어 정보(플래그)를 설정하도록 해도 된다.
도 36에, 이 경우의 비디오 파라미터 세트의 신택스예를 나타낸다. 도 36에 나타난 바와 같이 이 경우, 비디오 파라미터 세트(VPS)에 있어서 레이어간 예측 제어 정보로서 어떠한 파라미터를 설정할지를 제어하는 플래그(unified_max_sub_layer_for_inter_layer_prediction_flag)가 설정된다.
이 플래그(unified_max_sub_layer_inter_layer_prediction_flag)가 참인 경우, 전체 주 레이어 공통의 파라미터(unified_max_sub_layer_for_inter_layer_prediction)가 설정된다. 반대로 플래그(unified_max_sub_layer_inter_layer_prediction_flag)가 거짓인 경우, 파라미터(max_sub_layer_for_inter_layer_prediction[i])가 주 레이어마다 설정된다.
파라미터(max_sub_layer_for_inter_layer_prediction[i]) 대신 파라미터(unified_max_sub_layer_for_inter_layer_prediction)를 설정함으로써, 레이어간 예측 제어 정보의 정보량을 더 저감시킬 수 있어, 레이어간 예측 제어에 의한 부호화 효율의 저감을 억제하고, 부호화·복호에 의한 화질의 저감을 억제할 수 있다.
그러나 예를 들어 파라미터를 전체 레이어 공통의 값으로 하면, 정보량은 저감되지만 그 정밀도는 저감된다. 그 때문에, 레이어간 예측의 제어를 충분히 정확히 행할 수 없는 경우가 있을 수 있다. 따라서 레이어간 예측을 허가하는 서브 레이어의 최상위 서브 레이어를 지정하는 정보를 레이어마다 설정할지, 전체 레이어 공통의 값으로서 설정할지를 플래그에 의하여 제어하도록 함으로써, 보다 다양한 상황에 대응할 수 있는, 보다 적응적인 레이어간 예측 제어를 실현할 수 있다.
<공통 정보 생성부와 레이어간 예측 제어부>
도 37은, 이 경우의, 스케일러블 부호화 장치(100)의 공통 정보 생성부 및 레이어간 예측 제어부의 주된 구성예를 도시하는 블록도이다. 이 경우, 스케일러블 부호화 장치(100)는 공통 정보 생성부(101) 대신 공통 정보 생성부(501)를 갖는다. 또한 스케일러블 부호화 장치(100)는 레이어간 예측 제어부(104) 대신 레이어간 예측 제어부(504)를 갖는다.
도 37에 도시된 바와 같이 공통 정보 생성부(501)는, 기본적으로 공통 정보 생성부(101)와 마찬가지의 처리부이며, 마찬가지의 구성을 갖지만, 레이어간 예측 실행 최대 서브 레이어 설정부(143) 대신 공통 플래그 설정부(543)와 레이어간 예측 실행 최대 서브 레이어 설정부(544)를 갖는다.
공통 플래그 설정부(543)는 레이어간 예측 제어 정보로서 어떠한 파라미터를 설정할지를 제어하는 플래그(unified_max_sub_layer_inter_layer_prediction_flag)를 설정한다.
레이어간 예측 실행 최대 서브 레이어 설정부(544)는, 공통 플래그 설정부(543)가 설정한 플래그(unified_max_sub_layer_inter_layer_prediction_flag)의 값과, 서브 레이어 최대수 설정부(142)에 의하여 설정된 파라미터(vps_max_sub_layers_minus1)의 값에 기초하여, 레이어간 예측을 허가하는 서브 레이어의 최상위 서브 레이어를 지정하는 정보를 설정한다. 예를 들어 플래그(unified_max_sub_layer_inter_layer_prediction_flag)가 참인 경우, 레이어간 예측 실행 최대 서브 레이어 설정부(544)는 전체 주 레이어 공통의 파라미터(unified_max_sub_layer_for_inter_layer_prediction)를 설정한다. 또한 예를 들어 플래그(unified_max_sub_layer_inter_layer_prediction_flag)가 거짓인 경우, 레이어간 예측 실행 최대 서브 레이어 설정부(544)는 주 레이어마다의 파라미터(max_sub_layer_for_inter_layer_prediction[i])를 설정한다.
이와 같이 함으로써, 스케일러블 부호화 장치(100)는 레이어간 예측을 보다 적절히 제어할 수 있다.
<공통 정보 생성 처리의 흐름>
이 경우의 공통 정보 생성 처리의 흐름의 예를, 도 38의 흐름도를 참조하여 설명한다. 공통 정보 생성 처리가 개시되면 주 레이어 최대수 설정부(141)는, 스텝 S601에 있어서 파라미터(max_layer_minus1)를 설정한다. 스텝 S602에 있어서 서브 레이어 최대수 설정부(142)는 파라미터(vps_max_sub_layers_minus1)를 설정한다.
스텝 S603에 있어서 공통 플래그 설정부(543)는, 어떠한 파라미터를 설정할지를 제어하는 플래그(unified_max_sub_layer_inter_layer_prediction_flag)를 설정한다.
스텝 S604에 있어서 레이어간 예측 실행 최대 서브 레이어 설정부(544)는, 플래그(unified_max_sub_layer_inter_layer_prediction_flag)의 값이 참인지 여부를 판정한다. 참이라고 판정된 경우, 처리는 스텝 S605로 진행된다.
스텝 S605에 있어서 레이어간 예측 실행 최대 서브 레이어 설정부(544)는 전체 주 레이어 공통의 파라미터(unified_max_sub_layer_for_inter_layer_prediction)를 설정한다. 스텝 S605의 처리가 종료되면, 처리는 스텝 S607로 진행된다.
또한 스텝 S604에 있어서 거짓이라고 판정된 경우, 처리는 스텝 S606으로 진행된다. 스텝 S606에 있어서 레이어간 예측 실행 최대 서브 레이어 설정부(544)는 주 레이어마다의 파라미터(max_sub_layer_for_inter_layer_prediction[i])를 설정한다. 스텝 S606의 처리가 종료되면, 처리는 스텝 S607로 진행된다.
스텝 S607에 있어서 공통 정보 생성부(501)는, 스텝 S601 내지 스텝 S606에 있어서 설정된 각 파라미터를 포함하는 비디오 파라미터 세트를 공통 정보로서 생성한다.
스텝 S608에 있어서 공통 정보 생성부(501)는, 스텝 S607의 처리에 의하여 생성한 비디오 파라미터 세트를 스케일러블 부호화 장치(100)의 외부 및 부호화 제어부(102)에 공급한다. 또한 공통 정보 생성부(501)는, 스텝 S503에 있어서 설정된 파라미터(max_sub_layer_for_inter_layer_prediction[i])를 레이어간 예측 제어부(504)에 공급한다.
스텝 S608의 처리가 종료되면, 공통 정보 생성 처리가 종료되고 처리는 도 13으로 되돌아간다.
<레이어간 예측 제어 처리의 흐름>
이어서, 이 경우의 레이어간 예측 제어 처리의 흐름의 예를, 도 39의 흐름도를 참조하여 설명한다.
레이어간 예측 제어 처리가 개시되면 레이어간 예측 실행 제어부(551)는, 스텝 S621에 있어서 플래그(unified_max_sub_layer_inter_layer_prediction_flag)의 값이 참인지 여부를 판정한다. 참이라고 판정된 경우, 처리는 스텝 S622로 진행된다.
스텝 S622에 있어서 레이어간 예측 실행 제어부(551)는, 전체 주 레이어 공통의 파라미터(unified_max_sub_layer_for_inter_layer_prediction)를 참조한다. 스텝 S622의 처리가 종료되면, 처리는 스텝 S624로 진행된다.
또한 스텝 S621에 있어서 거짓이라고 판정된 경우, 처리는 스텝 S623으로 진행된다.
스텝 S623에 있어서 레이어간 예측 실행 제어부(551)는, 주 레이어마다의 파라미터(max_sub_layer_for_inter_layer_prediction[i])를 참조한다. 스텝 S623의 처리가 종료되면, 처리는 스텝 S624로 진행된다.
스텝 S624에 있어서 레이어간 예측 실행 제어부(551)는, 이들 정보에 기초하여 커런트 서브 레이어가 레이어간 예측을 행하는 레이어인지 여부를 판정한다. 레이어간 예측을 행하는 레이어라고 판정된 경우, 처리는 스텝 S625로 진행된다.
스텝 S625에 있어서 레이어간 예측 실행 제어부(551)는, 부호화 관련 정보 버퍼(152)를 제어하고, 부호화 관련 정보 버퍼(152)에 기억되어 있는 베이스 레이어의 부호화에 관한 정보를 인핸스먼트 레이어 화상 부호화부(105)에 공급시킨다. 스텝 S624의 처리가 종료되면, 레이어간 예측 제어 처리가 종료되고 처리는 도 13으로 되돌아간다.
또한 스텝 S624에 있어서, 커런트 서브 레이어에 있어서의 레이어간 예측이 허가되어 있지 않다고 판정된 경우, 베이스 레이어의 부호화에 관한 정보의 공급은 행해지지 않으며, 레이어간 예측 제어 처리가 종료되고 처리는 도 13으로 되돌아간다. 즉, 이 커런트 서브 레이어에 대한 부호화에 있어서는, 레이어간 예측은 행해지지 않는다.
이상과 같이 각 처리를 행함으로써, 스케일러블 부호화 장치(100)는 레이어간 예측을 보다 용이하게 정확히 제어할 수 있다.
<6. 제6 실시 형태>
<공통 정보 취득부와 레이어간 예측 제어부>
이어서, 스케일러블 복호 장치(200)에 대하여 설명한다. 도 40은, 이 경우의 공통 정보 생성부 및 레이어간 예측 제어부의 주된 구성예를 도시하는 블록도이다.
도 40에 도시된 바와 같이 이 경우, 스케일러블 복호 장치(200)는 공통 정보 취득부(201) 대신 공통 정보 취득부(601)를 갖는다. 또한 레이어간 예측 제어부(204) 대신 레이어간 예측 제어부(604)를 갖는다.
공통 정보 취득부(601)는, 기본적으로 공통 정보 취득부(201)와 마찬가지의 처리부이며, 마찬가지의 구성을 갖지만, 레이어간 예측 실행 최대 서브 레이어 취득부(243) 대신 공통 플래그 취득부(643)와 레이어간 예측 실행 최대 서브 레이어 취득부(644)를 갖는다.
공통 플래그 취득부(643)는, 레이어간 예측 제어 정보로서 어떠한 파라미터를 설정할지를 제어하는 플래그(unified_max_sub_layer_inter_layer_prediction_flag)를 취득한다.
레이어간 예측 실행 최대 서브 레이어 취득부(644)는, 예를 들어 플래그(unified_max_sub_layer_inter_layer_prediction_flag)가 참인 경우, 전체 주 레이어 공통의 파라미터(unified_max_sub_layer_for_inter_layer_prediction)를 취득한다. 또한 예를 들어 플래그(unified_max_sub_layer_inter_layer_prediction_flag)이 거짓인 경우, 레이어간 예측 실행 최대 서브 레이어 설정부(343)는 주 레이어마다의 파라미터(max_sub_layer_for_inter_layer_prediction[i])를 취득한다.
공통 정보 취득부(601)는, 취득한 공통 정보에 포함되는 복호에 관한 정보(예를 들어 비디오 파라미터 세트(VPS) 등)를 복호 제어부(202)에 공급한다. 또한 공통 정보 취득부(601)는, 파라미터(unified_max_sub_layer_for_inter_layer_prediction) 또는 파라미터(max_sub_layer_for_inter_layer_prediction[i])를 레이어간 예측 제어부(604)에 공급한다.
레이어간 예측 실행 제어부(651)는, 공통 정보 취득부(601)로부터 공급되는 파라미터(unified_max_sub_layer_for_inter_layer_prediction) 또는 파라미터(max_sub_layer_for_inter_layer_prediction[i])에 기초하여, 복호 관련 정보 버퍼(252)의 판독을 제어하고 레이어간 예측의 실행을 제어한다.
이와 같이 함으로써, 스케일러블 복호 장치(200)는 레이어간 예측을 보다 적절히 제어할 수 있다.
<공통 정보 취득 처리의 흐름>
이어서, 도 41의 흐름도를 참조하여 도 23의 스텝 S301에 있어서 실행되는 공통 정보 취득 처리의 흐름의 예를 설명한다.
공통 정보 취득 처리가 개시되면 공통 정보 취득부(601)는, 스텝 S641에 있어서 부호화측으로부터 전송된 비디오 파라미터 세트(VPS)를 취득한다.
스텝 S642에 있어서 주 레이어 최대수 취득부(241)는 비디오 파라미터 세트로부터 파라미터(max_layer_minus1)를 취득한다.
스텝 S643에 있어서 서브 레이어 최대수 취득부(242)는 비디오 파라미터 세트(VPS)로부터 파라미터(vps_max_sub_layers_minus1)를 취득한다.
스텝 S644에 있어서 공통 플래그 취득부(643)는 비디오 파라미터 세트(VPS)로부터 플래그(unified_max_sub_layer_inter_layer_prediction_flag)를 취득한다.
스텝 S645에 있어서 레이어간 예측 실행 최대 서브 레이어 취득부(644)는, 플래그(unified_max_sub_layer_inter_layer_prediction_flag)의 값이 참인지 여부를 판정한다. 참이라고 판정된 경우, 처리는 스텝 S646으로 진행된다.
스텝 S646에 있어서 레이어간 예측 실행 최대 서브 레이어 취득부(644)는 비디오 파라미터 세트(VPS)로부터 전체 레이어 공통의 파라미터(unified_max_sub_layer_for_inter_layer_prediction)를 취득한다. 스텝 S646의 처리가 종료되면, 처리는 스텝 S648로 진행된다.
또한 스텝 S645에 있어서 거짓이라고 판정된 경우, 처리는 스텝 S647로 진행된다. 스텝 S647에 있어서 레이어간 예측 실행 최대 서브 레이어 취득부(644)는 비디오 파라미터 세트(VPS)로부터 각 주 레이어에 대하여 파라미터(max_sub_layer_for_inter_layer_prediction[i])를 취득한다. 스텝 S647의 처리가 종료되면, 처리는 스텝 S648로 진행된다.
스텝 S648에 있어서 공통 정보 취득부(601)는, 비디오 파라미터 세트로부터 복호의 제어에 필요한 정보를 추출하고, 그것을 복호에 관한 정보로서 복호 제어부(202)에 공급한다. 또한 공통 정보 취득부(601)는, 스텝 S646에 있어서 설정한 파라미터(unified_max_sub_layer_for_inter_layer_prediction) 또는 스텝 S647에 있어서 설정한 파라미터(max_sub_layer_for_inter_layer_prediction[i])를 레이어간 예측 제어부(604)에 공급한다.
스텝 S648의 처리가 종료되면, 공통 정보 취득 처리가 종료되고 처리는 도 23으로 되돌아간다.
<레이어간 예측 제어 처리의 흐름>
이어서, 이 경우의 레이어간 예측 제어 처리의 흐름의 예를, 도 42의 흐름도를 참조하여 설명한다.
레이어간 예측 제어 처리가 개시되면 레이어간 예측 실행 제어부(651)는, 스텝 S661에 있어서 플래그(unified_max_sub_layer_inter_layer_prediction_flag)의 값이 참인지 여부를 판정한다. 참이라고 판정된 경우, 처리는 스텝 S662로 진행된다.
스텝 S662에 있어서 레이어간 예측 실행 제어부(651)는 파라미터(unified_max_sub_layer_for_inter_layer_prediction)를 참조한다. 스텝 S662의 처리가 종료되면, 처리는 스텝 S664로 진행된다.
또한 스텝 S661에 있어서 거짓이라고 판정된 경우, 처리는 스텝 S663으로 진행된다.
스텝 S663에 있어서 레이어간 예측 실행 제어부(651)는 파라미터(max_sub_layer_for_inter_layer_prediction[i])를 참조한다. 스텝 S663의 처리가 종료되면, 처리는 스텝 S664로 진행된다.
스텝 S664에 있어서 레이어간 예측 실행 제어부(651)는, 스텝 S662 또는 스텝 S663에 있어서 참조한 파라미터의 값에 기초하여, 커런트 픽처의 커런트 서브 레이어가, 레이어간 예측을 행하는 레이어인지 여부를 판정한다. 커런트 서브 레이어에 있어서의 레이어간 예측이 허가되어 있다고 판정된 경우, 처리는 스텝 S665로 진행된다.
스텝 S665에 있어서 레이어간 예측 실행 제어부(651)는, 복호 관련 정보 버퍼(252)를 제어하고, 복호 관련 정보 버퍼(252)에 기억되어 있는 베이스 레이어의 복호에 관한 정보를 인핸스먼트 레이어 화상 복호부(205)에 공급시킨다. 스텝 S665의 처리가 종료되면, 레이어간 예측 제어 처리가 종료되고 처리는 도 23으로 되돌아간다.
또한 스텝 S664에 있어서, 커런트 서브 레이어에 있어서의 레이어간 예측이 허가되어 있지 않다고 판정된 경우, 베이스 레이어의 부호화에 관한 정보의 공급은 행해지지 않으며, 레이어간 예측 제어 처리가 종료되고 처리는 도 23으로 되돌아간다. 즉, 이 커런트 서브 레이어에 대한 부호화에 있어서는, 레이어간 예측은 행해지지 않는다.
이상과 같이 각 처리를 실행함으로써, 스케일러블 복호 장치(200)는 레이어간 예측을 보다 적절히 제어할 수 있다.
<7. 개요 2>
레이어간 예측에 대하여, 예를 들어 HEVC에 있어서는, Liwei Guo(Chair), Yong He, Do-Kyoung Kwon, Jinwen Zan, Haricharan Lakshman, Jung Won Kang, "Description of Tool Experiment A2: Inter-layer Texture Prediction Signaling in SHVC", JCTVC-K1102, Joint Collaborative Team on Video Coding (JCT-VC) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 1111th Meeting: Shanghai, CN, 10-19 Oct. 2012에 있어서, 계층 간에서 픽셀(Pixel) 정보를 사용한 예측에 관한 검토가 이루어져 있다.
또한 Vadim Seregin, Patrice Onno, Shan Liu, Tammy Lee, Chulkeun Kim, Haitao Yang, Haricharan Laksman, "Description of Tool Experiment C5: Inter-layer syntax prediction using HEVC base layer", JCTVC-K1105, Joint Collaborative Team on Video Coding (JCT-VC) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 1111th Meeting: Shanghai, CN, 10-19 Oct. 2012에 있어서, 계층 간에서 신택스(Syntax) 정보(예를 들어 인트라 예측 모드 정보나 움직임 정보 등)를 사용한 예측에 관한 검토가 이루어져 있다.
이 픽셀 정보를 사용한 예측인 픽셀 예측과, 신택스 정보를 사용한 예측인 신택스 예측을, 도 43을 참조하여 특징을 비교한다.
우선 픽셀 예측에 대하여, 당해 화상(커런트 픽처)과 동일한 레이어의 픽처를 참조 화상(레퍼런스 픽처)으로 하는 레이어 내 예측(Intra-layer Prediction)과, 커런트 픽처와 다른 레이어의 픽처를 레퍼런스 픽처로 하는 레이어간 예측(Inter-layer Prediction)을 비교한다.
픽셀 예측의 경우, 레이어 내 예측에 있어서의 레퍼런스 픽처와 커런트 픽처의 시간축 상의 거리(예측 거리라고도 칭함)가 멀면 그 예측 효율이 높아지지 않으며, 상대적으로 레이어간 예측의 성능이 높아진다. 이에 비하여, 레이어 내 예측에 있어서의 예측 거리가 가까우면 그 예측 효율이 높아지고, 상대적으로 레이어간 예측의 성능이 높지 않게 된다.
즉, 도 43에 도시된 바와 같이 참조 화상과 당해 화상의 시간축 상의 거리가 긴 계층의 픽처, 즉, 보다 서브 레이어(temporal layer depth)가 낮은 픽처에서는, 레이어 내 인터 예측의 예측 정밀도가 저감될 가능성이 높다. 그 때문에, 레이어 내 예측(intra-layer)에서는, 인터 픽처이어도 인트라 예측에 의하여 부호화될 가능성이 높다. 그러나 레이어간 픽셀 예측(Inter-layer Pixel Prediction)의 예측 정밀도는 높으므로, 레이어 내 인트라 예측의 경우보다도 부호화 효율의 향상을 기대할 수 있다.
이에 비하여, 참조 화상과 당해 화상의 시간축 상의 거리가 짧은 계층의 픽처, 즉, 보다 서브 레이어(temporal layer depth)가 높은 픽처에 대해서는, 레이어 내 예측(intra-layer)에 의한 인터 예측이 효율적이다. 그 때문에, 레이어간 픽셀 예측(Inter-layer Pixel Prediction)을 적용하더라도, 레이어 내 인터 예측의 경우와 비교하여 부호화 효율의 대폭적인 향상을 기대할 수 없다.
또한 픽셀 예측은, 화상 정보를 레이어간에서 공유하기 때문에 메모리에 저장할 필요가 있다. 그 때문에, 메모리 액세스가 증대된다.
이에 비하여, 레이어간에서의 신택스의 상관성은 높으며, 커런트 픽처의 서브 레이어에 관계없이 레이어간 예측의 예측 효율은 상대적으로 높다. 즉, 도 43에 도시된 바와 같이 움직임 정보나 인트라 예측 모드 정보와 같은 신택스(Syntax) 정보는, 어느 서브 레이어이어도 레이어간(Baselayer와 Enhancementlayer 사이)에서 높은 상관 관계를 갖는다. 그로 인하여, 커런트 픽처의 서브 레이어에 의존하지 않고 레이어간 신택스 예측(Inter-layer Syntax Prediction)에 의한 부호화 효율의 향상을 기대할 수 있다.
또한 신택스 예측의 경우, 신택스 정보를 레이어간에서 공유하면 되므로, 메모리의 액세스는 픽셀 예측의 경우만큼 증대하지 않는다. 즉, 레이어간 신택스 예측(Inter-layer Syntax Prediction)을 위하여 저장해 두어야 하는 정보는, 각 PU(Prediction Unit)마다 하나의 예측 모드 정보 또는 움직임 정보이며, 모든 화소를 보존해 두어야 하는 레이어간 픽셀 예측(Inter-layer Pixel Prediction)에 비하여 메모리 액세스의 증대는 낮다.
이상과 같이 서로 다른 특징을 갖는 픽셀 예측과 신택스 예측을 마찬가지로 제어하면, 부호화 효율을 충분히 향상시킬 수 없을 우려가 있었다.
따라서 제1 실시 형태 내지 제6 실시 형태에 있어서, 상술한 바와 같은 레이어간 예측의 제어에 있어서 픽셀 예측과 신택스 예측을 서로 독립적으로 제어하도록 해도 된다. 즉, 레이어간 픽셀 예측과 레이어간 신택스 예측의 온/오프 제어를 서로 독립적으로 행하도록 해도 된다.
예를 들어 레이어간 픽셀 예측(Inter-layer Pixel Prediction)의 온/오프(on/off)를 제어하는 정보와, 레이어간 신택스 예측(Inter-layer Syntax Prediction)의 온/오프(on/off)를 제어하는 정보를 서로 독립적으로 부호화하도록 해도 된다.
레이어간 픽셀 예측(Inter-layer Pixel Prediction)에 대해서는, 어느 서브 레이어(시간 계층이라고도 칭함)까지 예측 처리를 행할지를 제어하는 정보를, 출력으로 되는 화상 압축 정보의, 예를 들어 비디오 파라미터 세트(VPS(Video Parameter Set) 또는 확장 비디오 파라미터 세트(vps_extension)에 있어서 전송하도록 해도 된다. 또한 이러한 레이어간 픽셀 예측에 관한 제어 정보를 날 유닛(nal_unit)에 있어서 전송하도록 해도 된다.
또한 레이어간 신택스 예측(Inter-layer Syntax Prediction)에 대해서는, 픽처(Picture) 또는 슬라이스(Slice)마다 레이어간 신택스 예측의 실행(온/오프(on/off))을 제어하는 제어 정보를, 출력으로 되는 화상 압축 정보의, 예를 들어 픽처 파라미터 세트(PPS(Picture Parameter Set) 또는 슬라이스 헤더(SliceHeader)에 있어서 전송하도록 해도 된다. 또한 이러한 레이어간 신택스 예측에 관한 제어 정보를 날 유닛(nal_unit)에 있어서 전송하도록 해도 된다.
또한 이상과 같은 레이어간 예측의 제어는, 베이스 레이어(Baselayer)가 AVC로 부호화되는 경우에도 적용할 수 있다.
이상과 같은 처리를 행함으로써, 연산량과 부호화 효율의 트레이드오프(trade-off)를 적절히 행할 수 있다.
<8. 제7 실시 형태>
<공통 정보 생성부와 레이어간 예측 제어부>
도 44는, <7. 개요 2>에 있어서 상술한 경우의, 스케일러블 부호화 장치(100)의 공통 정보 생성부 및 레이어간 예측 제어부의 주된 구성예를 도시하는 블록도이다. 도 44에 도시된 바와 같이 이 경우, 스케일러블 부호화 장치(100)는 공통 정보 생성부(101) 대신 공통 정보 생성부(701)를 갖고, 레이어간 예측 제어부(104) 대신 레이어간 예측 제어부(704)를 갖는다.
도 44에 도시된 바와 같이 공통 정보 생성부(701)는 레이어간 픽셀 예측 제어 정보 설정부(711)를 갖는다.
레이어간 픽셀 예측 제어 정보 설정부(711)는, 인핸스먼트 레이어에 있어서의 레이어간 픽셀 예측의 실행(온/오프)을 제어하는 제어 정보인 레이어간 픽셀 예측 제어 정보를 설정한다. 레이어간 픽셀 예측 제어 정보는, 예를 들어 레이어간 픽셀 예측의 실행을 허가하는 최상위의 서브 레이어를 지정하는 정보이다. 이 경우, 인핸스먼트 레이어에 있어서는, 최하위로부터, 이 레이어간 픽셀 예측 제어 정보에 의하여 지정되는 레이어까지의 서브 레이어에 있어서, 레이어간 픽셀 예측이 행해지고, 레이어간 픽셀 예측 제어 정보에 의하여 지정되는 레이어보다도 상위의 서브 레이어에 있어서는, 레이어간 픽셀 예측이 금지된다.
또한 레이어간 픽셀 예측 제어 정보 설정부(711)가, 이러한 레이어간 픽셀 예측 제어 정보를 인핸스먼트 레이어마다 설정하도록 해도 되고, 전체 인핸스먼트 레이어에 공통의 제어 정보로서 설정하도록 해도 된다.
또한 레이어간 픽셀 예측 제어 정보 설정부(711)는, 임의의 정보에 기초하여 레이어간 픽셀 예측 제어 정보를 설정할 수 있다. 예를 들어 이 설정이 사용자의 지시에 기초하여 행해지도록 해도 되고, 하드웨어나 소프트웨어 등의 조건에 기초하여 행해지도록 해도 된다.
레이어간 픽셀 예측 제어 정보 설정부(711)는, 설정한 레이어간 픽셀 예측 제어 정보를 레이어간 예측 제어부(704)(레이어간 픽셀 예측 제어부(722))에 공급한다. 또한 레이어간 픽셀 예측 제어 정보 설정부(711)는, 이 레이어간 픽셀 예측 제어 정보를 공통 정보로서, 예를 들어 비디오 파라미터 세트(VPS(Video Parameter Set) 또는 확장 비디오 파라미터 세트(vps_extension)에 있어서 전송시킨다. 또한 레이어간 픽셀 예측 제어 정보 설정부(711)가, 이 레이어간 픽셀 예측 제어 정보를 날 유닛(nal_unit)에 있어서 전송시키도록 해도 된다.
또한 도 44에 도시된 바와 같이 레이어간 예측 제어부(704)는, 업 샘플부(721), 레이어간 픽셀 예측 제어부(722), 베이스 레이어 픽셀 버퍼(723), 베이스 레이어 신택스 버퍼(724), 레이어간 신택스 예측 제어 정보 설정부(725) 및 레이어간 신택스 예측 제어부(726)를 갖는다.
업 샘플부(721)는, 베이스 레이어 화상 부호화부(103)의 프레임 메모리(122)로부터 베이스 레이어의 복호 화상(베이스 레이어 복호 화상이라고도 칭함)을 취득하면, 그 베이스 레이어 복호 화상을, 베이스 레이어와 인핸스먼트 레이어의 해상도 등의 비에 따라, 업 샘플 처리(해상도 변환 처리)한다. 업 샘플부(721)는, 업 샘플 처리된 베이스 레이어 복호 화상(업 샘플 복호 화상이라고도 칭함)을 베이스 레이어 픽셀 버퍼(723)에 공급한다.
레이어간 픽셀 예측 제어부(722)는, 레이어간 픽셀 예측 제어 정보 설정부(711)로부터 레이어간 픽셀 예측 제어 정보를 취득하면, 그 정보에 따라 인핸스먼트 레이어의 부호화에 있어서의 레이어간 픽셀 예측의 실행을 제어한다. 즉, 레이어간 픽셀 예측 제어부(722)는 레이어간 픽셀 예측 제어 정보에 따라, 베이스 레이어 픽셀 버퍼(723)에 기억되어 있는 베이스 레이어의 업 샘플 복호 화상의, 인핸스먼트 레이어 화상 부호화부(105)에의 공급을 제어한다.
보다 구체적으로는, 레이어간 픽셀 예측 제어부(722)는, 인핸스먼트 레이어 화상 부호화부(105)의 부호화 대상인 커런트 픽처가 속하는 서브 레이어가, 레이어간 픽셀 예측 제어 정보에 의하여 레이어간 픽셀 예측을 허가받은 레이어인 경우, 베이스 레이어 픽셀 버퍼(723)에 기억되어 있는 업 샘플 복호 화상의 공급을 허가한다. 또한 레이어간 픽셀 예측 제어부(722)는, 그 커런트 픽처가 속하는 서브 레이어가, 레이어간 픽셀 예측 제어 정보에 의하여 레이어간 픽셀 예측을 금지당한 레이어인 경우, 베이스 레이어 픽셀 버퍼(723)에 기억되어 있는 업 샘플 복호 화상의 공급을 금지한다.
또한 레이어간 픽셀 예측 제어부(722)는, 인핸스먼트 레이어 화상 부호화부(105)의 움직임 예측·보상부(135)에 대하여 레이어간 픽셀 예측 제어 정보를 공급함으로써, 인핸스먼트 레이어 화상 부호화부(105)의 움직임 예측·보상부(135)에 의한 레이어간 픽셀 예측의 실행을 제어한다.
베이스 레이어 픽셀 버퍼(723)는, 업 샘플부(721)로부터 공급되는 업 샘플 복호 화상을 기억하고, 레이어간 픽셀 예측 제어부(722)의 제어에 따라, 적절히 그 업 샘플 복호 화상을, 레이어간 픽셀 예측의 참조 화상(레퍼런스)으로서 인핸스먼트 레이어 화상 부호화부(105)의 프레임 메모리(122)에 공급한다. 인핸스먼트 레이어 화상 부호화부(105)의 움직임 예측·보상부(135)는, 레이어간 픽셀 예측을 행하는 경우, 그 프레임 메모리(122)에 기억된 베이스 레이어의 업 샘플 복호 화상을 참조 화상으로서 사용한다.
베이스 레이어 신택스 버퍼(724)는, 베이스 레이어 화상 부호화부(103)의 인트라 예측부(124)로부터 예측 모드 정보 등의 신택스 정보(베이스 레이어 신택스라고도 칭함)을 취득하고, 기억한다. 또한 베이스 레이어 신택스 버퍼(724)는, 베이스 레이어 화상 부호화부(103)의 움직임 예측·보상부(125)로부터 움직임 정보 등의 신택스 정보(베이스 레이어 신택스라고도 칭함)를 취득하고, 기억한다.
베이스 레이어 신택스 버퍼(724)는, 레이어간 신택스 예측 제어부(726)의 제어에 따라, 적절히 그 베이스 레이어 신택스를, 인핸스먼트 레이어 화상 부호화부(105)의 인트라 예측부(124)이나 움직임 예측·보상부(135)에 공급한다.
보다 구체적으로는, 예를 들어 베이스 레이어 신택스 버퍼(724)는, 인핸스먼트 레이어 화상 부호화부(105)의 인트라 예측부(124)의 인트라 예측의 처리 대상인 커런트 픽처에 대한 레이어간 신택스 예측이, 레이어간 신택스 예측 제어부(726)에 의하여 허가되어 있는 경우, 기억하고 있는 예측 모드 정보 등의 베이스 레이어 신택스를 인핸스먼트 레이어 화상 부호화부(105)의 인트라 예측부(124)에 공급한다. 인핸스먼트 레이어 화상 부호화부(105)의 인트라 예측부(124)는, 이와 같이 공급된 베이스 레이어 신택스(예측 모드 정보 등)를 사용하여 레이어간 신택스 예측을 행한다.
또한 예를 들어 베이스 레이어 신택스 버퍼(724)는, 인핸스먼트 레이어 화상 부호화부(105)의 움직임 예측·보상부(135)의 인터 예측의 처리 대상인 커런트 픽처에 대한 레이어간 신택스 예측이, 레이어간 신택스 예측 제어부(726)에 의하여 허가되어 있는 경우, 기억하고 있는 움직임 정보 등의 베이스 레이어 신택스를 인핸스먼트 레이어 화상 부호화부(105)의 움직임 예측·보상부(135)에 공급한다. 인핸스먼트 레이어 화상 부호화부(105)의 움직임 예측·보상부(135)는, 이와 같이 공급된 베이스 레이어 신택스(움직임 정보 등)를 사용하여 레이어간 신택스 예측을 행한다.
레이어간 신택스 예측 제어 정보 설정부(725)는, 인핸스먼트 레이어에 있어서의 레이어간 신택스 예측의 실행(온/오프)을 제어하는 제어 정보인 레이어간 신택스 예측 제어 정보를 설정한다. 레이어간 신택스 예측 제어 정보는, 예를 들어 픽처 또는 슬라이스마다 레이어간 신택스 예측의 실행을 허가할지 여부를 지정하는 정보이다.
레이어간 신택스 예측 제어 정보 설정부(725)는, 임의의 정보에 기초하여 이 레이어간 신택스 예측 제어 정보를 설정할 수 있다. 예를 들어 이 설정이 사용자의 지시에 기초하여 행해지도록 해도 되고, 하드웨어나 소프트웨어 등의 조건에 기초하여 행해지도록 해도 된다.
레이어간 신택스 예측 제어 정보 설정부(725)는, 설정한 레이어간 신택스 예측 제어 정보를 레이어간 신택스 예측 제어부(726)에 공급한다.
레이어간 신택스 예측 제어부(726)는, 레이어간 신택스 예측 제어 정보 설정부(725)로부터 레이어간 신택스 예측 제어 정보를 취득한다. 레이어간 신택스 예측 제어부(726)는 그 레이어간 신택스 예측 제어 정보에 따라, 인핸스먼트 레이어의 부호화에 있어서의 레이어간 신택스 예측의 실행을 제어한다. 즉, 레이어간 신택스 예측 제어부(726)는 레이어간 신택스 예측 제어 정보에 따라, 베이스 레이어 신택스 버퍼(724)에 기억되어 있는 베이스 레이어 신택스의, 인핸스먼트 레이어 화상 부호화부(105)에의 공급을 제어한다.
보다 구체적으로는, 레이어간 신택스 예측 제어부(726)는 인핸스먼트 레이어 화상 부호화부(105)의 부호화 대상인 커런트 픽처(또는 부호화 대상인 커런트 슬라이스)가, 레이어간 신택스 예측 제어 정보에 의하여 레이어간 신택스 예측을 허가받은 픽처(또는 슬라이스)인 경우, 베이스 레이어 신택스 버퍼(724)에 기억되어 있는 베이스 레이어 신택스의 공급을 허가한다. 또한 레이어간 신택스 예측 제어부(726)는, 그 커런트 픽처(또는 커런트 슬라이스)가, 레이어간 신택스 예측 제어 정보에 의하여 레이어간 신택스 예측을 금지당한 픽처(또는 슬라이스)인 경우, 베이스 레이어 신택스 버퍼(724)에 기억되어 있는 베이스 레이어 신택스의 공급을 금지한다.
또한 레이어간 신택스 예측 제어부(726)는, 인핸스먼트 레이어 화상 부호화부(105)의 인트라 예측부(124)나 움직임 예측·보상부(135)에 대하여 레이어간 신택스 예측 제어 정보를 공급함으로써, 인핸스먼트 레이어 화상 부호화부(105)의 인트라 예측부(124)나 움직임 예측·보상부(135)에 의한 레이어간 신택스 예측의 실행을 제어한다.
이상과 같이 함으로써, 스케일러블 부호화 장치(100)는 레이어간 픽셀 예측 및 레이어간 신택스 예측을 각각 보다 용이하고도 적절히 제어할 수 있고, 연산량과 부호화 효율의 트레이드오프(trade-off)를 보다 적절히 행할 수 있다. 즉, 스케일러블 부호화 장치(100)는 레이어간 예측을 보다 적절히 제어하고, 부호화 효율의 저감을 억제할 수 있다.
<공통 정보 생성 처리의 흐름>
이 경우의 공통 정보 생성 처리의 흐름의 예를, 도 45의 흐름도를 참조하여 설명한다. 공통 정보 생성 처리가 개시되면 공통 정보 생성부(701)는, 스텝 S701에 있어서 파라미터(max_layer_minus1)를 설정한다.
스텝 S702에 있어서 공통 정보 생성부(701)는, 각 주 레이어에 대하여 파라미터(vps_num_sub_layers_minus1[i])를 설정한다.
스텝 S703에 있어서 레이어간 픽셀 예측 제어 정보 설정부(711)는, 각 주 레이어에 대하여 레이어간 픽셀 예측 제어 정보를 설정한다.
스텝 S704에 있어서 공통 정보 생성부(701)는, 스텝 S701 내지 스텝 S703에 있어서 설정된 각종 정보를 포함하는 비디오 파라미터 세트를 공통 정보로서 생성한다.
스텝 S705에 있어서 공통 정보 생성부(701)는, 스텝 S704의 처리에 의하여 생성한 비디오 파라미터 세트를 스케일러블 부호화 장치(100)의 외부에 공급하고 전송시킨다.
스텝 S705의 처리가 종료되면, 공통 정보 생성 처리가 종료되고 처리는 도 13으로 되돌아간다.
<베이스 레이어 부호화 처리의 흐름>
이어서, 도 46의 흐름도를 참조하여 이 경우의 베이스 레이어 부호화 처리의 흐름의 예를 설명한다.
이 경우, 베이스 레이어 부호화 처리가 개시되면 스텝 S711 내지 스텝 S723의 각 처리가, 도 15의 스텝 S141 내지 스텝 S153의 각 처리와 마찬가지로 실행된다.
스텝 S724에 있어서 업 샘플부(721)는, 스텝 S722의 처리에 의하여 얻어진 베이스 레이어 복호 화상을 업 샘플한다.
스텝 S725에 있어서 베이스 레이어 픽셀 버퍼(723)는, 스텝 S724의 처리에 의하여 얻어진 업 샘플 복호 화상을 기억한다.
스텝 S726에 있어서 베이스 레이어 신택스 버퍼(724)는, 스텝 S713의 인트라 예측 처리나 스텝 S714의 인터 움직임 예측 처리 등에 있어서 얻어진 베이스 레이어 신택스를 기억한다.
그리고 스텝 S727 내지 스텝 S729의 각 처리가, 도 15의 스텝 S155 내지 스텝 S157의 각 처리와 마찬가지로 실행된다.
스텝 S729의 처리가 종료되면, 베이스 레이어 부호화 처리가 종료되고 처리는 도 13으로 되돌아간다. 베이스 레이어 부호화 처리는, 예를 들어 픽처 단위로 실행된다. 즉, 커런트 레이어의 각 픽처에 대하여 베이스 레이어 부호화 처리가 실행된다. 단, 베이스 레이어 부호화 처리 내의 각 처리는, 각각의 처리 단위마다 행해진다.
<레이어간 예측 제어 처리의 흐름>
이어서, 도 47의 흐름도를 참조하여 이 경우의 레이어간 예측 제어 처리의 흐름의 예를 설명한다.
레이어간 예측 제어 처리가 개시되면 레이어간 픽셀 예측 제어부(722)는, 스텝 S731에 있어서 도 45의 스텝 S703의 처리에 의하여 설정된 레이어간 픽셀 예측 제어 정보를 참조한다.
스텝 S732에 있어서 레이어간 픽셀 예측 제어부(722)는, 인핸스먼트 레이어의 커런트 픽처의 서브 레이어가, 레이어간 픽셀 예측을 행하는 레이어인지 여부를 판정한다. 레이어간 픽셀 예측을 행한다고 판정된 경우, 처리는 스텝 S733으로 진행된다.
스텝 S733에 있어서 베이스 레이어 픽셀 버퍼(723)는, 기억하고 있는 업 샘플 복호 화상을 인핸스먼트 레이어 화상 부호화부(105)의 프레임 메모리(122)에 공급한다.
스텝 S733의 처리가 종료되면, 처리는 스텝 S734로 진행된다. 또한 스텝 S732에 있어서 레이어간 픽셀 예측을 행하지 않는다고 판정된 경우, 처리는 스텝 S734로 진행된다.
스텝 S734에 있어서 레이어간 신택스 예측 제어 정보 설정부(725)는 레이어간 신택스 예측 제어 정보를 설정한다.
스텝 S735에 있어서 레이어간 신택스 예측 제어부(726)는, 스텝 S734에 있어서 설정된 레이어간 신택스 예측 제어 정보를 참조하여, 인핸스먼트 레이어의 커런트 픽처(또는 슬라이스)가, 레이어간 신택스 예측을 행하는 픽처(또는 슬라이스)인지 여부를 판정한다. 레이어간 신택스 예측을 행한다고 판정된 경우, 처리는 스텝 S736으로 진행된다.
스텝 S736에 있어서 베이스 레이어 신택스 버퍼(724)는, 기억하고 있는 베이스 레이어 신택스를 인핸스먼트 레이어 화상 부호화부(105)의 인트라 예측부(124) 또는 움직임 예측·보상부(135)에 공급한다.
스텝 S736의 처리가 종료되면, 레이어간 예측 제어 처리가 종료되고 처리는 도 13으로 되돌아간다. 또한 도 47의 스텝 S735에 있어서 레이어간 신택스 예측을 행하지 않는다고 판정된 경우, 레이어간 예측 제어 처리가 종료되고 처리는 도 13으로 되돌아간다.
<인핸스먼트 레이어 부호화 처리의 흐름>
이어서, 도 48의 흐름도를 참조하여 이 경우의 인핸스먼트 레이어 부호화 처리의 흐름의 예를 설명한다.
인핸스먼트 레이어 부호화 처리의 스텝 S741 및 스텝 S742, 및 스텝 S745 내지 스텝 S756의 각 처리는, 베이스 레이어 부호화 처리의 스텝 S711 및 스텝 S712, 스텝 S715 내지 스텝 S723, 및 스텝 S727 내지 스텝 S729의 각 처리(도 46)와 마찬가지로 실행된다. 단, 인핸스먼트 레이어 부호화 처리의 각 처리는, 인핸스먼트 레이어 화상 부호화부(105)의 각 처리부에 의하여, 인핸스먼트 레이어 화상 정보에 대하여 행해진다.
또한 도 48의 스텝 S743에 있어서 인핸스먼트 레이어 화상 부호화부(105)의 인트라 예측부(124)는, 인핸스먼트 레이어에 관한, 레이어간 신택스 예측에도 대응한 인트라 예측 처리를 행한다.
또한 스텝 S744에 있어서 움직임 예측·보상부(135)는, 인핸스먼트 레이어에 관한, 레이어간 픽셀 예측 및 레이어간 신택스 예측에도 대응한 움직임 예측·보상 처리를 행한다.
스텝 S756의 처리가 종료되면, 인핸스먼트 레이어 부호화 처리가 종료되고 처리는 도 13으로 되돌아간다. 인핸스먼트 레이어 부호화 처리는, 예를 들어 픽처 단위로 실행된다. 즉, 커런트 레이어의 각 픽처에 대하여 인핸스먼트 레이어 부호화 처리가 실행된다. 단, 인핸스먼트 레이어 부호화 처리 내의 각 처리는 각각의 처리 단위마다 행해진다.
<움직임 예측·보상 처리의 흐름>
이어서, 도 49의 흐름도를 참조하여 도 48의 스텝 S744에 있어서 실행되는 움직임 예측·보상 처리의 흐름의 예를 설명한다.
움직임 예측·보상 처리가 개시되면 움직임 예측·보상부(135)는, 스텝 S761에 있어서 커런트 주 레이어 내에서 움직여 예측을 행한다.
스텝 S762에 있어서 움직임 예측·보상부(135)는, 커런트 픽처에 대하여 레이어간 픽셀 예측을 행할지 여부를 판정한다. 레이어간 픽셀 예측 제어부(722)로부터 공급된 레이어간 픽셀 예측 제어 정보에 기초하여, 레이어간 픽셀 예측을 행한다고 판정된 경우, 처리는 스텝 S763으로 진행된다.
스텝 S763에 있어서 움직임 예측·보상부(135)는, 프레임 메모리(122)로부터 베이스 레이어의 업 샘플 복호 화상를 취득한다. 스텝 S764에 있어서 움직임 예측·보상부(135)는, 스텝 S763에 있어서 취득한 업 샘플 복호 화상을 참조하여 레이어간 픽셀 예측을 행한다. 스텝 S764의 처리가 종료되면, 처리는 스텝 S765로 진행된다.
또한 스텝 S762에 있어서 레이어간 픽셀 예측을 행하지 않는다고 판정된 경우, 처리는 스텝 S765로 진행된다.
스텝 S765에 있어서 움직임 예측·보상부(135)는, 커런트 픽처에 대하여 레이어간 신택스 예측을 행할지 여부를 판정한다. 레이어간 신택스 예측 제어부(726)로부터 공급된 레이어간 신택스 예측 제어 정보에 기초하여, 레이어간 신택스 예측을 행한다고 판정된 경우, 처리는 스텝 S766으로 진행된다.
스텝 S766에 있어서 움직임 예측·보상부(135)는, 베이스 레이어 신택스 버퍼(724)로부터 움직임 정보 등의 베이스 레이어 신택스를 취득한다. 스텝 S767에 있어서 움직임 예측·보상부(135)는, 스텝 S766에 있어서 취득한 베이스 레이어 신택스를 이용하여 레이어간 신택스 예측을 행한다. 스텝 S767의 처리가 종료되면, 처리는 스텝 S768로 진행된다.
또한 스텝 S765에 있어서 레이어간 신택스 예측을 행하지 않는다고 판정된 경우, 처리는 스텝 S768로 진행된다.
스텝 S768에 있어서 움직임 예측·보상부(135)는, 각 예측 모드에 대하여 비용 함수값을 산출한다. 스텝 S769에 있어서 움직임 예측·보상부(135)는, 그 비용 함수값에 기초하여 최적의 인터 예측 모드를 선택한다.
스텝 S770에 있어서 움직임 예측·보상부(135)는, 스텝 S769에 있어서 선택된 최적 인터 예측 모드에서 움직임 보상을 행하고, 예측 화상을 생성한다. 스텝 S771에 있어서 움직임 예측·보상부(135)는, 그 최적 인터 예측 모드에 대하여 인터 예측에 관한 정보를 생성한다.
스텝 S771의 처리가 종료되면, 움직임 예측·보상 처리가 종료되고 처리는 도 48로 되돌아간다. 이상과 같이 레이어간 픽셀 예측 및 레이어간 신택스 예측에 대응한 움직임 예측·보상 처리가 행해진다. 이 처리는, 예를 들어 블록 단위로 실행된다. 단, 움직임 예측·보상 처리 내의 각 처리는, 각각의 처리 단위마다 행해진다.
<인트라 예측 처리의 흐름>
이어서, 도 50의 흐름도를 참조하여 도 48의 스텝 S743에 있어서 실행되는 인트라 예측 처리의 흐름의 예를 설명한다.
인트라 예측 처리가 개시되면 인핸스먼트 레이어 화상 부호화부(105)의 인트라 예측부(124)는, 스텝 S781에 있어서 레이어 내의 각 인트라 예측 모드에서 인트라 예측을 행한다.
스텝 S782에 있어서 인트라 예측부(124)는, 커런트 픽처에 대하여 레이어간 신택스 예측을 행할지 여부를 판정한다. 레이어간 신택스 예측 제어부(726)로부터 공급된 레이어간 신택스 예측 제어 정보에 기초하여, 레이어간 신택스 예측을 행한다고 판정된 경우, 처리는 스텝 S783으로 진행된다.
스텝 S783에 있어서 인트라 예측부(124)는, 베이스 레이어 신택스 버퍼(724)로부터 예측 모드 정보 등의 베이스 레이어 신택스를 취득한다. 스텝 S784에 있어서 인트라 예측부(124)는, 스텝 S783에 있어서 취득한 베이스 레이어 신택스를 이용하여 레이어간 신택스 예측을 행한다. 스텝 S784의 처리가 종료되면, 처리는 스텝 S785로 진행된다.
또한 스텝 S782에 있어서 레이어간 신택스 예측을 행하지 않는다고 판정된 경우, 처리는 스텝 S785로 진행된다.
스텝 S785에 있어서 인트라 예측부(124)는, 인트라 예측(레이어간 신택스 예측을 포함함)을 행한 각 인트라 예측 모드에서 비용 함수값을 산출한다.
스텝 S786에 있어서 인트라 예측부(124)는, 스텝 S785에 있어서 산출한 비용 함수값에 기초하여 최적 인트라 예측 모드를 결정한다.
스텝 S787에 있어서 인트라 예측부(124)는, 스텝 S786에 있어서 결정된 최적 인트라 예측 모드에서 예측 화상을 생성한다.
스텝 S787의 처리가 종료되면, 인트라 예측 처리가 종료되고 처리는 도 48로 되돌아간다.
이상과 같이 각 처리를 실행함으로써, 스케일러블 부호화 장치(100)는, 레이어간 픽셀 예측 및 레이어간 신택스 예측을 각각 보다 용이하고도 적절히 제어할 수 있으며, 연산량과 부호화 효율의 트레이드오프(trade-off)를 보다 적절히 행할 수 있다. 즉, 스케일러블 부호화 장치(100)는, 레이어간 예측을 보다 적절히 제어하고, 부호화 효율의 저감을 억제할 수 있다. 바꾸어 말하면, 스케일러블 부호화 장치(100)는 부호화·복호에 의한 화질의 저감을 억제할 수 있다.
<9. 제8 실시 형태>
<공통 정보 취득부와 레이어간 예측 제어부>
이어서, 스케일러블 복호 장치(200)에 대하여 설명한다. 도 51은, <7. 개요2>에 있어서 상술한 경우의, 스케일러블 복호 장치(200)의 공통 정보 취득부 및 레이어간 예측 제어부의 주된 구성예를 도시하는 블록도이다. 이 경우, 스케일러블 복호 장치(200)는 공통 정보 취득부(201) 대신 공통 정보 취득부(801)를 갖고, 레이어간 예측 제어부(204) 대신 레이어간 예측 제어부(804)를 갖는다.
도 51에 도시된 바와 같이 공통 정보 취득부(801)는 레이어간 픽셀 예측 제어 정보 취득부(811)를 갖는다.
레이어간 픽셀 예측 제어 정보 취득부(811)는, 예를 들어 스케일러블 부호화 장치(100)로부터 비디오 파라미터 세트 등으로서 전송된 공통 정보인 레이어간 픽셀 예측 제어 정보를 취득한다.
레이어간 픽셀 예측 제어 정보 취득부(811)는, 취득한 레이어간 픽셀 예측 제어 정보를 레이어간 예측 제어부(804)(레이어간 픽셀 예측 제어부(822))에 공급한다.
또한 도 51에 도시된 바와 같이 레이어간 예측 제어부(804)는, 업 샘플부(821), 레이어간 픽셀 예측 제어부(822), 베이스 레이어 픽셀 버퍼(823), 베이스 레이어 신택스 버퍼(824), 레이어간 신택스 예측 제어 정보 취득부(825) 및 레이어간 신택스 예측 제어부(826)를 갖는다.
업 샘플부(821)는 베이스 레이어 화상 복호부(203)의 프레임 메모리(219)로부터 베이스 레이어 복호 화상을 취득하면, 그 베이스 레이어 복호 화상을, 베이스 레이어와 인핸스먼트 레이어의 해상도 등의 비에 따라 업 샘플 처리(해상도 변환 처리)한다. 업 샘플부(821)는, 얻어진 업 샘플 복호 화상을 베이스 레이어 픽셀 버퍼(823)에 공급한다.
레이어간 픽셀 예측 제어부(822)는, 레이어간 픽셀 예측 제어 정보 취득부(811)로부터 레이어간 픽셀 예측 제어 정보를 취득한다. 레이어간 픽셀 예측 제어부(822)는 그 레이어간 픽셀 예측 제어 정보에 따라, 베이스 레이어 픽셀 버퍼(823)에 기억되어 있는 베이스 레이어의 업 샘플 복호 화상의, 인핸스먼트 레이어 화상 복호부(205)에의 공급을 제어한다.
보다 구체적으로는, 레이어간 픽셀 예측 제어부(822)는, 인핸스먼트 레이어 화상 복호부(205)의 복호 대상인 커런트 픽처가 속하는 서브 레이어가, 레이어간 픽셀 예측 제어 정보에 의하여 레이어간 픽셀 예측을 허가받은 레이어인 경우, 베이스 레이어 픽셀 버퍼(823)에 기억되어 있는 업 샘플 복호 화상의 공급을 허가한다. 또한 레이어간 픽셀 예측 제어부(822)는, 그 커런트 픽처가 속하는 서브 레이어가, 레이어간 픽셀 예측 제어 정보에 의하여 레이어간 픽셀 예측을 금지당한 레이어인 경우, 베이스 레이어 픽셀 버퍼(823)에 기억되어 있는 업 샘플 복호 화상의 공급을 금지한다.
베이스 레이어 픽셀 버퍼(823)는, 업 샘플부(821)로부터 공급되는 업 샘플 복호 화상을 기억하고, 레이어간 픽셀 예측 제어부(822)의 제어에 따라, 적절히 그 업 샘플 복호 화상을, 레이어간 픽셀 예측의 참조 화상(레퍼런스)으로서 인핸스먼트 레이어 화상 복호부(205)의 프레임 메모리(219)에 공급한다.
베이스 레이어 신택스 버퍼(824)는, 베이스 레이어 화상 복호부(203)의 인트라 예측부(221)로부터 예측 모드 정보 등의 베이스 레이어 신택스를 취득하고, 기억한다. 또한 베이스 레이어 신택스 버퍼(824)는, 베이스 레이어 화상 복호부(203)의 움직임 보상부(222)로부터 움직임 정보 등의 베이스 레이어 신택스를 취득하고, 기억한다.
베이스 레이어 신택스 버퍼(824)는, 레이어간 신택스 예측 제어부(826)의 제어에 따라, 적절히 그 베이스 레이어 신택스를, 인핸스먼트 레이어 화상 복호부(205)의 인트라 예측부(221)나 움직임 보상부(232)에 공급한다. 예를 들어 베이스 레이어 신택스 버퍼(824)는, 기억하고 있는 예측 모드 정보 등의 베이스 레이어 신택스를 인핸스먼트 레이어 화상 복호부(205)의 인트라 예측부(221)에 공급한다. 또한 예를 들어 베이스 레이어 신택스 버퍼(824)는, 기억하고 있는 움직임 정보 등의 베이스 레이어 신택스를 인핸스먼트 레이어 화상 복호부(205)의 움직임 보상부(232)에 공급한다.
레이어간 신택스 예측 제어 정보 취득부(825)는, 예를 들어 스케일러블 부호화 장치(100)로부터 픽처 파라미터 세트 등으로서 전송된 레이어간 신택스 예측 제어 정보를 인핸스먼트 레이어 화상 복호부(205)를 통하여 취득한다.
레이어간 신택스 예측 제어 정보 취득부(825)는, 취득한 레이어간 신택스 예측 제어 정보를 레이어간 신택스 예측 제어부(826)에 공급한다.
레이어간 신택스 예측 제어부(826)는, 레이어간 신택스 예측 제어 정보 취득부(825)로부터 레이어간 신택스 예측 제어 정보를 취득한다. 레이어간 신택스 예측 제어부(826)는, 그 레이어간 신택스 예측 제어 정보에 따라, 베이스 레이어 신택스 버퍼(824)에 기억되어 있는 베이스 레이어 신택스의, 인핸스먼트 레이어 화상 복호부(205)에의 공급을 제어한다.
보다 구체적으로는, 레이어간 신택스 예측 제어부(826)는, 인핸스먼트 레이어 화상 복호부(205)의 복호 대상인 커런트 픽처(또는 복호 대상인 커런트 슬라이스)가, 레이어간 신택스 예측 제어 정보에 의하여 레이어간 신택스 예측을 허가받은 픽처(또는 슬라이스)인 경우, 베이스 레이어 신택스 버퍼(824)에 기억되어 있는 베이스 레이어 신택스의 공급을 허가한다. 또한 레이어간 신택스 예측 제어부(826)는, 그 커런트 픽처(또는 커런트 슬라이스)가, 레이어간 신택스 예측 제어 정보에 의하여 레이어간 신택스 예측을 금지당한 픽처(또는 슬라이스)인 경우, 베이스 레이어 신택스 버퍼(824)에 기억되어 있는 베이스 레이어 신택스의 공급을 금지한다.
인핸스먼트 레이어 화상 복호부(205)의 인트라 예측부(221)는, 예를 들어 스케일러블 부호화 장치(100)로부터 공급된 예측 모드에 관한 정보에 기초하여, 최적 인트라 예측 모드에서 인트라 예측을 행하고, 예측 화상을 생성한다. 그때, 최적 인트라 예측 모드로서 레이어간 신택스 예측이 지정되는 경우, 즉, 부호화 시에 레이어간 신택스 예측의 인트라 예측이 행해진 경우, 인트라 예측부(221)는 베이스 레이어 신택스 버퍼(824)로부터 공급되는 베이스 레이어 신택스를 이용하여 인트라 예측을 행하고, 예측 화상을 생성한다.
인핸스먼트 레이어 화상 복호부(205)의 움직임 보상부(232)는, 예를 들어 스케일러블 부호화 장치(100)로부터 공급된 예측 모드에 관한 정보에 기초하여, 최적 인터 예측 모드에서 움직임 보상을 행하고, 예측 화상을 생성한다. 그때, 최적 인트라 예측 모드로서 레이어간 픽셀 예측이 지정되는 경우, 즉, 부호화 시에 레이어간 픽셀 예측의 인터 예측이 행해진 경우, 움직임 보상부(232)는 프레임 메모리(219)에 기억되는 베이스 레이어의 업 샘플 복호 화상을 참조하여 움직임 보상을 행하고, 예측 화상을 생성한다.
또한 최적 인트라 예측 모드로서 레이어간 신택스 예측이 지정되는 경우, 즉, 부호화 시에 레이어간 신택스 예측의 인터 예측이 행해진 경우, 움직임 보상부(232)는 베이스 레이어 신택스 버퍼(824)로부터 공급되는 베이스 레이어 신택스를 이용하여, 프레임 메모리(219)에 기억되는 인핸스먼트 레이어의 복호 화상을 참조하여 움직임 보상을 행하고, 예측 화상을 생성한다.
이상과 같이 함으로써, 스케일러블 복호 장치(200)는 레이어간 픽셀 예측 및 레이어간 신택스 예측을 각각 보다 용이하고도 적절히 제어할 수 있고, 연산량과 부호화 효율의 트레이드오프(trade-off)를 보다 적절히 행할 수 있다. 즉, 스케일러블 복호 장치(200)는 레이어간 예측을 보다 적절히 제어하고, 부호화 효율의 저감을 억제할 수 있다.
<공통 정보 취득 처리의 흐름>
이 경우의 공통 정보 취득 처리의 흐름의 예를, 도 52의 흐름도를 참조하여 설명한다. 공통 정보 취득 처리가 개시되면 공통 정보 취득부(801)는, 스텝 S801에 있어서 부호화측으로부터 전송된 비디오 파라미터 세트(VPS)를 취득한다.
스텝 S802에 있어서 공통 정보 취득부(801)는, 비디오 파라미터 세트로부터 파라미터(max_layer_minus1)를 취득한다.
스텝 S803에 있어서 공통 정보 취득부(801)는, 비디오 파라미터 세트(VPS)로부터 각 주 레이어에 대하여 파라미터(vps_num_sub_layers_minus1[i])를 취득한다.
스텝 S804에 있어서 레이어간 픽셀 예측 제어 정보 취득부(811)는, 비디오 파라미터 세트(VPS)로부터 각 주 레이어에 대하여 레이어간 픽셀 예측 제어 정보를 취득한다.
스텝 S805에 있어서 레이어간 픽셀 예측 제어 정보 취득부(811)는, 스텝 S804에 있어서 취득한 레이어간 픽셀 예측 제어 정보를 레이어간 픽셀 예측 제어부(822)에 공급한다.
스텝 S805의 처리가 종료되면, 공통 정보 취득 처리가 종료되고 처리는 도 23으로 되돌아간다.
<베이스 레이어 복호 처리의 흐름>
이어서, 도 53의 흐름도를 참조하여 이 경우의 베이스 레이어 복호 처리의 흐름의 예를 설명한다.
이 경우, 베이스 레이어 복호 처리가 개시되면 스텝 S811 내지 스텝 S820의 각 처리가, 도 25의 스텝 S341 내지 스텝 S350의 각 처리와 마찬가지로 실행된다.
스텝 S821에 있어서 업 샘플부(821)는 베이스 레이어 복호 화상을 업 샘플한다.
스텝 S822에 있어서 베이스 레이어 픽셀 버퍼(823)는, 스텝 S821의 처리에 의하여 얻어진 업 샘플 복호 화상을 기억한다.
스텝 S823에 있어서 베이스 레이어 신택스 버퍼(824)는, 스텝 S815의 예측 처리 등에 있어서 얻어진 베이스 레이어 신택스(인트라 예측 모드 정보나 움직임 정보 등)를 기억한다.
스텝 S823의 처리가 종료되면, 베이스 레이어 복호 처리가 종료되고 처리는 도 23으로 되돌아간다. 베이스 레이어 복호 처리는, 예를 들어 픽처 단위로 실행된다. 즉, 커런트 레이어의 각 픽처에 대하여 베이스 레이어 복호 처리가 실행된다. 단, 베이스 레이어 복호 처리 내의 각 처리는, 각각의 처리 단위마다 행해진다.
<레이어간 예측 제어 처리의 흐름>
이어서, 도 54의 흐름도를 참조하여 이 경우의 레이어간 예측 제어 처리의 흐름의 예를 설명한다.
레이어간 예측 제어 처리가 개시되면 레이어간 픽셀 예측 제어부(822)는, 스텝 S831에 있어서 도 52의 스텝 S805의 처리에 의하여 공급된 레이어간 픽셀 예측 제어 정보를 참조한다.
스텝 S832에 있어서 베이스 레이어 픽셀 버퍼(823)는, 기억하고 있는 업 샘플 복호 화상을 인핸스먼트 레이어 화상 복호부(205)의 프레임 메모리(219)에 공급한다.
스텝 S833의 처리가 종료되면, 처리는 스텝 S834로 진행된다. 또한 스텝 S832에 있어서 레이어간 픽셀 예측을 행하지 않는다고 판정된 경우, 처리는 스텝 S834로 진행된다.
스텝 S834에 있어서 레이어간 신택스 예측 제어 정보 취득부(825)는 레이어간 신택스 예측 제어 정보를 취득한다.
스텝 S835에 있어서 레이어간 신택스 예측 제어부(826)는, 스텝 S834에 있어서 취득된 레이어간 신택스 예측 제어 정보를 참조하여, 인핸스먼트 레이어의 커런트 픽처(또는 슬라이스)가, 레이어간 신택스 예측을 행하는 픽처(또는 슬라이스)인지 여부를 판정한다. 레이어간 신택스 예측을 행한다고 판정된 경우, 처리는 스텝 S836으로 진행된다.
스텝 S836에 있어서 베이스 레이어 신택스 버퍼(824)는, 기억하고 있는 베이스 레이어 신택스를 인핸스먼트 레이어 화상 복호부(205)의 인트라 예측부(221) 또는 움직임 보상부(232)에 공급한다.
스텝 S836의 처리가 종료되면, 레이어간 예측 제어 처리가 종료되고 처리는 도 23으로 되돌아간다. 또한 도 54의 스텝 S835에 있어서 레이어간 신택스 예측을 행하지 않는다고 판정된 경우, 레이어간 예측 제어 처리가 종료되고 처리는 도 23으로 되돌아간다.
<예측 처리의 흐름>
인핸스먼트 레이어 복호 처리는 도 27의 흐름도를 참조하여 설명한 경우와 마찬가지로 실행되므로, 그 설명은 생략한다.
이어서, 도 55 및 도 56의 흐름도를 참조하여 이 경우의 예측 처리의 흐름의 예를 설명한다.
예측 처리가 개시되면 움직임 보상부(232)는, 스텝 S841에 있어서 예측 모드가 인터 예측인지 여부를 판정한다. 인터 예측이라고 판정한 경우, 처리는 스텝 S842로 진행된다.
스텝 S842에 있어서 움직임 보상부(232)는, 최적 인터 예측 모드가 레이어간 픽셀 예측을 행하는 모드인지 여부를 판정한다. 최적 인터 예측 모드가 레이어간 픽셀 예측을 행하는 모드라고 판정된 경우, 처리는 스텝 S843으로 진행된다.
스텝 S843에 있어서 움직임 보상부(232)는 베이스 레이어의 업 샘플 복호 화상를 취득한다.
스텝 S844에 있어서 움직임 보상부(232)는, 그 베이스 레이어의 업 샘플 복호 화상을 사용하여 움직임 보상을 행하고, 예측 화상을 생성한다. 스텝 S844의 처리가 종료되면, 처리는 스텝 S849로 진행된다.
또한 스텝 S842에 있어서 최적 인터 예측 모드가, 레이어간 픽셀 예측을 행하는 모드가 아니라고 판정된 경우, 처리는 스텝 S845로 진행된다.
스텝 S845에 있어서 움직임 보상부(232)는, 최적 인터 예측 모드가 레이어간 신택스 예측을 행하는 모드인지 여부를 판정한다. 최적 인터 예측 모드가 레이어간 신택스 예측을 행하는 모드라고 판정된 경우, 처리는 스텝 S846으로 진행된다.
스텝 S846에 있어서 움직임 보상부(232)는 움직임 정보 등의 베이스 레이어 신택스를 취득한다.
스텝 S847에 있어서 움직임 보상부(232)는, 그 베이스 레이어 신택스를 이용하여 움직임 보상을 행하고, 예측 화상을 생성한다. 스텝 S847의 처리가 종료되면, 처리는 스텝 S849로 진행된다.
또한 스텝 S845에 있어서 최적 인터 예측 모드가, 레이어간 신택스 예측을 행하는 모드가 아니라고 판정된 경우, 처리는 스텝 S848로 진행된다.
스텝 S848에 있어서 움직임 보상부(232)는, 커런트 주 레이어 내에서 움직임 보상을 행하고, 예측 화상을 생성한다. 스텝 S848의 처리가 종료되면, 처리는 스텝 S849로 진행된다.
스텝 S849에 있어서 움직임 보상부(232)는, 이상과 같이 생성한 예측 화상을 선택부(223)를 통하여 연산부(215)에 공급한다. 스텝 S849의 처리가 종료되면, 예측 처리가 종료되고 처리가 도 27로 되돌아간다.
또한 도 55의 스텝 S841에 있어서 인트라 예측이라고 판정된 경우, 처리는 도 56으로 진행된다.
도 56의 스텝 S851에 있어서 인핸스먼트 레이어 화상 복호부(205)의 인트라 예측부(221)는, 최적 인트라 예측 모드가, 레이어간 신택스 예측을 행하는 모드인지 여부를 판정한다. 최적 인트라 예측 모드가, 레이어간 신택스 예측을 행하는 모드라고 판정된 경우, 처리는 스텝 S852로 진행된다.
스텝 S852에 있어서 인트라 예측부(221)는 인트라 예측 모드 정보 등의 베이스 레이어 신택스를 취득한다.
스텝 S853에 있어서 인트라 예측부(221)는, 그 베이스 레이어 신택스를 이용하여 인트라 예측을 행하고, 예측 화상을 생성한다. 스텝 S853의 처리가 종료되면, 처리는 도 55의 스텝 S849로 되돌아간다.
또한 도 56의 스텝 S851에 있어서 최적 인트라 예측 모드가, 레이어간 신택스 예측을 행하는 모드가 아니라고 판정된 경우, 처리는 스텝 S854로 진행된다.
스텝 S854에 있어서 인트라 예측부(221)는, 부호화 시에 채용된 인트라 예측 모드인 최적 인트라 예측 모드에서 예측 화상을 생성한다. 스텝 S854의 처리가 종료되면, 처리는 도 55의 스텝 S849로 되돌아간다.
이상과 같이 각 처리를 실행함으로써, 스케일러블 복호 장치(200)는 레이어간 픽셀 예측 및 레이어간 신택스 예측을 각각 보다 용이하고도 적절히 제어할 수 있으며, 연산량과 부호화 효율의 트레이드오프(trade-off)를 보다 적절히 행할 수 있다. 즉, 스케일러블 복호 장치(200)는 레이어간 예측을 보다 적절히 제어하고, 부호화 효율의 저감을 억제할 수 있다. 바꾸어 말하면, 스케일러블 복호 장치(200)는 부호화·복호에 의한 화질의 저감을 억제할 수 있다.
<10. 개요 3>
레이어간 예측에 대하여, 예를 들어 SHVC(Scalable High Efficiency Video Coding)의 경우, Jianle Chen, Jill Boyce, Yan Ye, Miska M. Hannuksela," SHVC Test Model 1(SHM1)", JCTVC-L1007, Joint Collaborative Team on Video Coding (JCT-VC) of ITU-T SG16 WP3 and ISO/IEC JTC1/SC29/WG1112th Meeting: Geneva, CH, 14-23 Jan. 2013에 있어서, 텍스처 BL(Texture BL)과 레퍼런스 인덱스(Ref_idx)의 두 가지 프레임워크가 제안되어 있다.
텍스처 BL(Texture BL) 프레임워크의 경우, 베이스 레이어(Baselayer)의 복호 화상(또는 그 업 샘플(upsample) 화상)이 인트라 예측 모드(Intra Prediction Mode)의 하나(인트라 BL(Intra BL) 모드)로서 부호화된다. 버전 1(Version 1)로부터의 CU 레벨(CU-level) 이하에서의 신택스(Syntax) 변경이 가능하다.
이에 비하여, 레퍼런스 인덱스(Ref_idx) 프레임워크의 경우, 베이스 레이어(Baselayer)의 복호 화상(또는 그 업 샘플(upsample) 화상)이 롱텀(Long-Term) 참조 프레임(장시간 참조 프레임이라고도 칭함)에 저장되고, 이를 사용한 예측 처리가 행해진다. 버전 1(Version 1)로부터의 CU 레벨(CU-level) 이하에서의 신택스(Syntax)의 변경은 불가능하다.
그러나 모든 픽처(Picture)에 있어서 레이어간 텍스처 예측(Inter-layer texture prediction)을 행하는 것은, 복호 시에 베이스 레이어(Baselayer)와 인핸스먼트 레이어(Enhancementlayer)의 양쪽에서 움직임 보상을 행할 필요가 있었다. 그 때문에 연산량이 증대되고, 복호 처리의 부하가 증대될 우려가 있었다. 이는, 텍스처 BL(Texture BL) 프레임워크의 경우뿐만 아니라, 레퍼런스 인덱스(Ref_idx) 프레임워크의 경우도 마찬가지이다.
따라서 베이스 레이어(Baselayer)의 복호 화상(또는 그 업 샘플(upsample) 된 화상)을 저장하고 있는 롱텀(Long-Term) 참조 프레임에 관한 신택스(syntax)의 값을 제어함으로써, 픽처(Picture)마다 레이어간 텍스처 예측(Inter-layer texture prediction)의 실행을 제어하도록 한다.
도 57 및 도 58은, 시퀀스 파라미터 세트(seq_parameter_set_rbsp)의 신택스의 예를 나타내는 도면이다. 도 58에 나타난 바와 같이 시퀀스 파라미터 세트(seq_parameter_set_rbsp)에는, 롱텀 참조 프레임에 관한 신택스 used_by_curr_pic_lt_sps_flag [i]가 포함된다.
신택스 used_by_curr_pic_lt_sps_flag [i]는, 시퀀스 파라미터 세트에 있어서 지정되는 롱텀 참조 픽처의 i번째 후보가 참조 화상으로서 사용되는지 여부를 제어하는 플래그이다. 이 값이 「0」인 경우, 롱텀 참조 픽처의 i번째 후보는 사용되지 않는다.
또한 도 59 내지 도 61은, 슬라이스 헤더(slice_segment_header)의 신택스의 예를 나타내는 도면이다. 도 59에 나타난 바와 같이 슬라이스 헤더(slice_segment_header)에는, 롱텀 참조 프레임에 관한 신택스 used_by_curr_pic_lt_flag [i]가 포함된다.
신택스 used_by_curr_pic_lt_flag [i]는, 커런트 픽처의 롱텀 RPS(Reference Picture Set) 중 i번째 엔트리가, 커런트 픽처에 의하여 참조 화상으로서 사용될지 여부를 제어하는 플래그이다. 이 값이 「0」인 경우, 롱텀 RPS의 i번째 엔트리는 사용되지 않는다.
예를 들어 이 신택스의 값을 제어함으로써, 픽처마다 레이어간 텍스처 예측의 실행을 제어하도록 한다. 즉, 예를 들어 레이어간 텍스처 예측(Inter-layer texture prediction)을 행할 수 없도록 하기 위하여, 신택스 used_by_curr_pic_lt_sps_flag [i]나 신택스 used_by_curr_pic_lt_flag [i]의 값을 「0」으로 한다. 반대로 레이어간 텍스처 예측(Inter-layer texture prediction)을 행할 수 있도록 하기 위하여, 신택스 used_by_curr_pic_lt_sps_flag [i]나 신택스 used_by_curr_pic_lt_flag [i]의 값을 「1」로 한다.
이와 같이 롱텀 참조 프레임에 관한 신택스의 값을 제어함으로써, 픽처마다 레이어간 텍스처 예측의 실행을 제어할 수 있다. 따라서 복호 처리에 있어서의 각 레이어의 움직임 보상 실행을 적절히 제어할 수 있으며, 복호 처리의 부하 증대를 억제할 수 있다.
<11. 제9 실시 형태>
<화상 부호화 장치>
이어서, 이상과 같은 본 기술을 실현하는 장치와 그 방법에 대하여 설명한다. 도 62는, 본 기술을 적용한 화상 처리 장치의 일 형태인 화상 부호화 장치를 도시하는 도면이다. 도 62에 도시된 화상 부호화 장치(900)는 계층 화상 부호화를 행하는 장치이다. 이 화상 부호화 장치(900)는, 도 9의 스케일러블 부호화 장치(100)와 기본적으로 마찬가지의 화상 처리 장치이지만, 설명의 편의상, <10. 개요 3>에 있어서 설명한, 본 기술과 직접적인 관계가 적은 구성(예를 들어 공통 정보 생성부(101), 부호화 제어부(102), 레이어간 예측 제어부(104) 등)에 관한 설명은 생략하고 있다.
도 62에 도시된 바와 같이 화상 부호화 장치(900)는, 베이스 레이어 화상 부호화부(901), 인핸스먼트 레이어 화상 부호화부(902) 및 다중화부(903)를 갖는다.
베이스 레이어 화상 부호화부(901)는, 베이스 레이어 화상 부호화부(103)(도 9)와 기본적으로 마찬가지의 처리부이며, 베이스 레이어 화상을 부호화하여, 베이스 레이어 화상 부호화 스트림을 생성한다. 인핸스먼트 레이어 화상 부호화부(902)는, 인핸스먼트 레이어 화상 부호화부(105)(도 9)와 기본적으로 마찬가지의 처리부이며, 인핸스먼트 레이어 화상을 부호화하여, 인핸스먼트 레이어 화상 부호화 스트림을 생성한다. 다중화부(903)는, 베이스 레이어 화상 부호화부(901)에 있어서 생성된 베이스 레이어 화상 부호화 스트림과, 인핸스먼트 레이어 화상 부호화부(902)에 있어서 생성된 인핸스먼트 레이어 화상 부호화 스트림을 다중화하여, 계층 화상 부호화 스트림을 생성한다. 다중화부(903)는, 생성한 계층 화상 부호화 스트림을 복호측에 전송한다.
베이스 레이어 화상 부호화부(901)는, 베이스 레이어의 부호화에 있어서 얻어진 복호 화상(베이스 레이어 복호 화상이라고도 칭함)을 인핸스먼트 레이어 화상 부호화부(902)에 공급한다.
인핸스먼트 레이어 화상 부호화부(902)는, 베이스 레이어 화상 부호화부(901)로부터 공급되는 베이스 레이어 복호 화상을 취득하고, 기억한다. 인핸스먼트 레이어 화상 부호화부(902)는, 그 기억한 베이스 레이어 복호 화상을 참조 화상으로서, 인핸스먼트 레이어의 부호화에 있어서의 예측 처리에 사용한다.
<베이스 레이어 화상 부호화부>
도 63은, 도 62의 베이스 레이어 화상 부호화부(901)의 주된 구성예를 도시하는 블록도이다. 도 63에 도시된 바와 같이 베이스 레이어 화상 부호화부(901)는, A/D 변환부(911), 화면 재배열 버퍼(912), 연산부(913), 직교 변환부(914), 양자화부(915), 가역 부호화부(916), 축적 버퍼(917), 역양자화부(918) 및 역직교 변환부(919)를 갖는다. 또한 베이스 레이어 화상 부호화부(901)는, 연산부(920), 루프 필터(921), 프레임 메모리(922), 선택부(923), 인트라 예측부(924), 인터 예측부(925), 예측 화상 선택부(926) 및 레이트 제어부(927)를 갖는다.
A/D 변환부(911)는, 베이스 레이어 화상 부호화부(103)의 A/D 변환부(111)(도 10)와 마찬가지의 처리부이다. 화면 재배열 버퍼(912)는, 베이스 레이어 화상 부호화부(103)의 화면 재배열 버퍼(112)(도 10)와 마찬가지의 처리부이다. 연산부(913)는, 베이스 레이어 화상 부호화부(103)의 연산부(113)(도 10)와 마찬가지의 처리부이다. 직교 변환부(914)는, 베이스 레이어 화상 부호화부(103)의 직교 변환부(114)(도 10)와 마찬가지의 처리부이다. 양자화부(915)는, 베이스 레이어 화상 부호화부(103)의 양자화부(115)(도 10)와 마찬가지의 처리부이다. 가역 부호화부(916)는, 베이스 레이어 화상 부호화부(103)의 가역 부호화부(116)(도 10)와 마찬가지의 처리부이다. 축적 버퍼(917)는, 베이스 레이어 화상 부호화부(103)의 축적 버퍼(117)(도 10)와 마찬가지의 처리부이다.
역양자화부(918)는, 베이스 레이어 화상 부호화부(103)의 역양자화부(118)(도 10)와 마찬가지의 처리부이다. 역직교 변환부(919)는, 베이스 레이어 화상 부호화부(103)의 역직교 변환부(119)(도 10)와 마찬가지의 처리부이다. 연산부(920)는, 베이스 레이어 화상 부호화부(103)의 연산부(120)(도 10)와 마찬가지의 처리부이다. 루프 필터(921)는, 베이스 레이어 화상 부호화부(103)의 루프 필터(121)(도 10)와 마찬가지의 처리부이다.
프레임 메모리(922)는 베이스 레이어 화상 부호화부(103)의 프레임 메모리(122)(도 10)와 마찬가지의 처리부이다. 단, 프레임 메모리(922)는 기억하고 있는 복호 화상(베이스 레이어 복호 화상이라고도 칭함)을, 인핸스먼트 레이어 화상 부호화부(902)에 공급한다.
선택부(923)는 베이스 레이어 화상 부호화부(103)의 선택부(123)(도 10)와 마찬가지의 처리부이다.
인트라 예측부(924)는 베이스 레이어 화상 부호화부(103)의 인트라 예측부(124)(도 10)와 마찬가지의 처리부이다. 인트라 예측부(924)는 처리 대상의 프레임 화상인 커런트 픽처에 대해서, 소정의 블록마다(블록을 처리 단위로 하여), 화면 내 예측(인트라 예측이라고도 칭함)을 행하여, 예측 화상을 생성한다. 인트라 예측의 경우, 예측에 사용되는 참조 화상으로서, 처리 대상인 커런트 블록의 공간적으로 주변에 위치하는(즉, 커런트 픽처 내에서 커런트 블록의 주변에 위치하는) 처리된 화소(주변 화소라고도 칭함)의 화소값이 사용된다. 인트라 예측부(924)는 그와 같은 참조 화상을 프레임 메모리(922)에 저장되는 재구성 화상으로부터 (선택부(923)를 통해서) 취득한다.
이 인트라 예측에는(즉, 예측 화상의 생성 방법에는), 복수의 방법(인트라 예측 모드라고도 칭함)이 후보로서 미리 준비되어 있다. 인트라 예측부(924)는 이 미리 준비된 모든 인트라 예측 모드에서 이 인트라 예측을 행한다. 그리고, 인트라 예측부(924)는, 생성한 모든 인트라 예측 모드의 예측 화상의 비용 함수값을, 화면 재배열 버퍼(912)로부터 공급되는 입력 화상을 사용하여 산출하고, 그 비용 함수값에 기초하여 최적의 모드를 선택한다.
인트라 예측부(924)는, 최적의 인트라 예측 모드를 선택하면, 그 최적의 모드에서 생성된 예측 화상을, 예측 화상 선택부(926)에 공급한다. 그리고, 인트라 예측부(924)는, 채용된 인트라 예측 모드를 나타내는 인트라 예측 모드 정보 등을, 적절히 가역 부호화부(916)에 공급하여, 부호화시킨다.
인터 예측부(925)는, 베이스 레이어 화상 부호화부(103)의 움직임 예측ㆍ보상부(125)(도 10)와 마찬가지의 처리부이다. 인터 예측부(925)는, 커런트 픽처에 대해서, 소정의 블록마다(블록을 처리 단위로 하여), 화면간 예측(인터 예측이라고도 칭함)을 행하여, 예측 화상을 생성한다. 인터 예측의 경우, 예측에 사용되는 참조 화상으로서, 처리 대상인 커런트 블록의 시간적으로 주변에 위치하는(즉, 커런트 픽처와 다른 픽처의, 커런트 블록에 대응하는 위치의 블록) 처리된 화소의 화소값이 사용된다. 인터 예측부(925)는, 그와 같은 참조 화상을 프레임 메모리(922)에 저장되는 재구성 화상으로부터(선택부(923)를 통해서) 취득한다.
또한, 인터 예측은 움직임 예측과 움직임 보상을 포함한다. 인터 예측부(925)는, 화면 재배열 버퍼(912)로부터 공급되는 커런트 블록의 화상 데이터(입력 화상)와, 프레임 메모리(922)로부터 참조 화상으로서 공급되는 참조 화상의 화상 데이터를 사용하여, 커런트 블록에 대해서 움직임 예측을 행하고, 움직임 벡터를 검출한다. 그리고, 인터 예측부(925)는, 참조 화상을 사용하여, 검출된 움직임 벡터에 따라서 움직임 보상 처리를 행하여, 커런트 블록의 예측 화상을 생성한다.
인터 예측에는(즉, 예측 화상의 생성 방법에는), 복수의 방법(인터 예측 모드라고도 칭함)이 후보로서 미리 준비되어 있다. 인터 예측부(925)는 이 미리 준비된 모든 인터 예측 모드에서 이와 같은 인터 예측을 행한다. 그리고, 인터 예측부(925)는, 이 미리 준비된 모든 인터 예측 모드에서 인터 예측을 행한다. 그리고, 인터 예측부(925)는, 생성한 모든 인터 예측 모드의 예측 화상의 비용 함수값을, 화면 재배열 버퍼(912)로부터 공급되는 입력 화상이나, 생성한 차분 움직임 벡터의 정보 등을 사용하여 산출하고, 그 비용 함수값에 기초하여 최적의 모드를 선택한다.
인터 예측부(925)는, 최적의 인터 예측 모드를 선택하면, 그 최적의 모드에서 생성된 예측 화상을, 예측 화상 선택부(926)에 공급한다. 그리고, 인터 예측부(925)는, 채용된 인터 예측 모드를 나타내는 정보나, 부호화 데이터를 복호할 때, 그 인터 예측 모드에서 처리를 행하기 위해서 필요한 정보 등을 가역 부호화부(916)에 공급하여, 부호화시킨다. 필요한 정보로서는, 예를 들어 생성된 차분 움직임 벡터의 정보나, 예측 움직임 벡터 정보로서 예측 움직임 벡터의 인덱스를 나타내는 플래그 등이 있다.
예측 화상 선택부(926)는, 베이스 레이어 화상 부호화부(103)의 예측 화상 선택부(126)(도 10)와 마찬가지의 처리부이다. 레이트 제어부(927)는, 베이스 레이어 화상 부호화부(103)의 레이트 제어부(127)(도 10)와 마찬가지의 처리부이다.
또한, 베이스 레이어 화상 부호화부(901)는 다른 레이어를 참조하지 않고 부호화를 행한다. 즉, 인트라 예측부(924) 및 인터 예측부(925)는 다른 레이어의 복호 화상을 참조 화상으로서 이용하지 않는다.
<인핸스먼트 레이어 화상 부호화부>
도 64는 도 62의 인핸스먼트 레이어 화상 부호화부(902)의 주된 구성예를 나타내는 블록도이다. 도 64에 도시한 바와 같이, 인핸스먼트 레이어 화상 부호화부(902)는 도 63의 베이스 레이어 화상 부호화부(901)와 기본적으로 마찬가지의 구성을 갖는다.
즉, 인핸스먼트 레이어 화상 부호화부(902)는, 도 64에 도시한 바와 같이, A/D 변환부(931), 화면 재배열 버퍼(932), 연산부(933), 직교 변환부(934), 양자화부(935), 가역 부호화부(936), 축적 버퍼(937), 역양자화부(938) 및 역직교 변환부(939)를 갖는다. 또한, 인핸스먼트 레이어 화상 부호화부(902)는 연산부(940), 루프 필터(941), 프레임 메모리(942), 선택부(943), 인트라 예측부(944), 인터 예측부(945), 예측 화상 선택부(946) 및 레이트 제어부(947)를 갖는다.
이들 A/D 변환부(931) 내지 레이트 제어부(947)는, 도 63의 A/D 변환부(911) 내지 레이트 제어부(927)에 대응하고, 각각, 대응하는 처리부와 마찬가지의 처리를 행한다. 단, 인핸스먼트 레이어 화상 부호화부(902)의 각 부는 베이스 레이어가 아니라, 인핸스먼트 레이어 화상 정보의 부호화에 대한 처리를 행한다. 따라서, A/D 변환부(931) 내지 레이트 제어부(947)의 처리의 설명으로서, 상술한 도 63의 A/D 변환부(911) 내지 레이트 제어부(927)에 대한 설명을 적용할 수 있지만, 그 경우, 처리하는 데이터는, 베이스 레이어의 데이터가 아니라, 인핸스먼트 레이어의 데이터인 것으로 할 필요가 있다. 또한, 데이터의 입력원이나 출력처의 처리부는, 적절히, A/D 변환부(931) 내지 레이트 제어부(947) 중의 대응하는 처리부로 바꿔 이해할 필요가 있다.
또한, 인핸스먼트 레이어 화상 부호화부(902)는, 다른 레이어(예를 들어 베이스 레이어)의 정보를 참조하여 부호화를 행한다. 그리고, 인핸스먼트 레이어 화상 부호화부(902)는 <10. 개요 3>에 있어서 상술한 처리를 행한다.
예를 들어, 프레임 메모리(942)는 복수의 참조 프레임을 기억할 수 있고, 인핸스먼트 레이어의 복호 화상(인핸스먼트 레이어 복호 화상이라고도 칭함)을 기억할 뿐만 아니라, 베이스 레이어 화상 부호화부(901)로부터 베이스 레이어 복호 화상을 취득하고, 롱 텀 참조 프레임으로서 기억한다. 이때, 프레임 메모리(942)에 기억되는 베이스 레이어 복호 화상은, 업 샘플 처리된 것이어도 된다(예를 들어, 프레임 메모리(942)가, 베이스 레이어 화상 부호화부(901)로부터 공급되는 베이스 레이어 복호 화상을 업 샘플하여 기억하도록 해도 된다).
베이스 레이어 화상 부호화부(901)의 경우와 마찬가지로, 프레임 메모리(942)에 기억된 화상, 즉, 인핸스먼트 레이어 복호 화상이나 베이스 레이어 복호 화상은, 인트라 예측부(944)나 인터 예측부(945)에 의한 예측 처리에 있어서, 참조 화상으로서 이용된다.
즉, 인트라 예측부(944)는, 인트라 예측의 후보의 하나로서, 텍스처 BL(texture BL) 모드를 갖는다. 텍스처 BL 모드의 경우, 참조 화상으로서, 인핸스먼트 레이어의 커런트 픽처가 아니라, 베이스 레이어의 커런트 픽처의 복호 화상이 사용된다. 즉, 인트라 예측부(944)는, 베이스 레이어의 커런트 픽처의, 인핸스먼트 레이어에 있어서의 커런트 블록에 대응하는 블록(코로케이티드 블록이라고도 칭함)의 화소값을 프레임 메모리(942)의 롱 텀 참조 프레임으로부터 (선택부(943)를 통해서) 취득하고, 그것을 참조 화상으로서 사용하여 인트라 예측을 행한다.
그리고, 인트라 예측부(944)는, 그 밖의 인트라 예측 모드의 경우와 마찬가지로, 비용 함수값을 산출하여 평가한다. 즉, 인트라 예측부(944)는, 이 텍스처 BL 모드도 포함하는, 후보로 되는 모든 인트라 예측 모드 중으로부터 최적의 인트라 예측 모드를 선택한다.
인터 예측부(945)도 마찬가지로, 인터 예측의 후보의 하나로서, 레퍼런스 인덱스(Ref_idx) 모드를 갖는다. 레퍼런스 인덱스 모드의 경우, 참조 화상으로서, 인핸스먼트 레이어의 픽처가 아니라, 베이스 레이어의 픽처 복호 화상이 사용된다. 즉, 인터 예측부(945)는, 프레임 메모리(942)의 롱 텀 참조 프레임에 저장되는 베이스 레이어 복호 화상을 참조 화상으로서 취득하고, 그것을 사용하여 인터 예측(움직임 예측이나 움직임 보상 등)을 행한다.
그리고, 인터 예측부(945)는, 그 밖의 인터 예측 모드의 경우와 마찬가지로, 비용 함수값을 산출하여 평가한다. 즉, 인터 예측부(945)는, 이 레퍼런스 인덱스 모드도 포함하는, 후보로 되는 모든 인터 예측 모드 중으로부터 최적의 인터 예측 모드를 선택한다.
그런데, 도 64에 도시한 바와 같이, 인핸스먼트 레이어 화상 부호화부(902)는 헤더 생성부(948)를 더 갖는다.
헤더 생성부(948)는, 예를 들어 시퀀스 파라미터 세트(SPS), 픽처 파라미터 세트(PPS), 슬라이스 헤더 등의 헤더 정보를 생성한다. 그때, 헤더 생성부(948)는 시퀀스 파라미터 세트(seq_parameter_set_rbsp)의 롱 텀 참조 프레임에 대한 신택스 used_by_curr_pic_lt_sps_flag[i]나, 슬라이스 헤더(slice_segment_header)의 롱 텀 참조 프레임에 대한 신택스 used_by_curr_pic_lt_flag[i]의 값을 제어한다.
예를 들어, 헤더 생성부(948)는 레이어간 텍스처 예측을 행할 수 없도록 제어하는 픽처에 대하여, 신택스 used_by_curr_pic_lt_sps_flag[i]나 신택스 used_by_curr_pic_lt_flag[i]의 값을 「0」으로 한다. 또한, 예를 들어 헤더 생성부(948)는, 레이어간 텍스처 예측을 행할 수 있도록 제어하는 픽처에 대하여, 신택스 used_by_curr_pic_lt_sps_flag[i]나 신택스 used_by_curr_pic_lt_flag[i]의 값을 「1」로 한다.
헤더 생성부(948)는, 이와 같이 생성한 헤더 정보를 가역 부호화부(936)에 공급한다. 가역 부호화부(936)는, 헤더 생성부(948)로부터 공급된 헤더 정보를 부호화하고, 부호화 데이터(부호화 스트림)에 포함시켜 축적 버퍼(117)에 공급하고, 복호측에 전송시킨다.
또한, 헤더 생성부(948)는, 이와 같이 생성한 헤더 정보를, 적절히, 인핸스먼트 레이어 화상 부호화부(902)의 각 처리부에 공급한다. 인핸스먼트 레이어 화상 부호화부(902)의 각 처리부는, 적절히, 이 헤더 정보에 따라서 각각의 처리를 행한다.
인트라 예측부(944)는, 헤더 생성부(948)에 의해 설정된 신택스 used_by_curr_pic_lt_sps_flag[i]나 신택스 used_by_curr_pic_lt_flag[i]의 값에 따라서 인트라 예측을 행한다. 예를 들어, 신택스 used_by_curr_pic_lt_sps_flag[i]나 신택스 used_by_curr_pic_lt_flag[i]의 값이 「0」인 경우, 인트라 예측부(944)는 텍스처 BL 모드를 사용하지 않고 인트라 예측을 행한다. 즉, 이 픽처에 대해서는 인트라 예측에 베이스 레이어 복호 화상이 이용되지 않는다. 즉, 이 픽처의 인트라 예측에 있어서는, 레이어간 텍스처 예측을 위한 움직임 보상이 생략된다. 반대로, 신택스 used_by_curr_pic_lt_sps_flag[i]나 신택스 used_by_curr_pic_lt_flag[i]의 값이 「1」인 경우, 인트라 예측부(944)는 텍스처 BL 모드를 후보의 하나로서 사용하여 인트라 예측을 행한다.
또한, 인터 예측부(945)는, 헤더 생성부(948)에 의해 설정된 신택스 used_by_curr_pic_lt_sps_flag[i]나 신택스 used_by_curr_pic_lt_flag[i]의 값에 따라서 인터 예측을 행한다. 예를 들어, 신택스 used_by_curr_pic_lt_sps_flag[i]나 신택스 used_by_curr_pic_lt_flag[i]의 값이 「0」인 경우, 인터 예측부(945)는 레퍼런스 인덱스 모드를 사용하지 않고 인터 예측을 행한다. 즉, 이 픽처에 대해서는, 인터 예측에 베이스 레이어 복호 화상이 이용되지 않는다. 즉, 이 픽처의 인터 예측에 있어서는, 레이어간 텍스처 예측을 위한 움직임 보상이 생략된다. 반대로, 신택스 used_by_curr_pic_lt_sps_flag[i]나 신택스 used_by_curr_pic_lt_flag[i]의 값이 「1」인 경우, 인터 예측부(945)는 레퍼런스 인덱스 모드를 후보의 하나로서 사용하여 인터 예측을 행한다.
이상과 같이, 롱 텀 참조 프레임에 대한 신택스의 값을 제어하고, 그 신택스의 값에 기초하여 인트라 예측이나 인터 예측을 행하고, 또한 그 신택스의 값을 복호측에 전송함으로써, 화상 부호화 장치(900)는 인핸스먼트 레이어의 복호 처리에 있어서의 레이어간 텍스처 예측의 실행을 픽처마다 제어할 수 있다. 즉, 화상 부호화 장치(900)는, 복호 처리에 있어서의 각 레이어의 움직임 보상의 실행을 적절하게 제어할 수 있어, 복호 처리의 부하의 증대를 억제할 수 있다.
<화상 부호화 처리의 흐름>
다음에, 이상과 같은 화상 부호화 장치(900)에 의해 실행되는 각 처리의 흐름에 대하여 설명한다. 처음에, 도 65의 흐름도를 참조하여, 화상 부호화 처리의 흐름의 예를 설명한다.
화상 부호화 처리가 개시되면, 스텝 S901에 있어서, 화상 부호화 장치(900)의 베이스 레이어 화상 부호화부(901)는 베이스 레이어의 화상 데이터를 부호화한다.
스텝 S902에 있어서, 인핸스먼트 레이어 화상 부호화부(902)의 헤더 생성부(948)는 인핸스먼트 레이어의 시퀀스 파라미터 세트를 생성한다.
스텝 S903에 있어서, 인핸스먼트 레이어 화상 부호화부(902)는, 스텝 S902에 있어서 생성된 시퀀스 파라미터 세트를 사용하여, 인핸스먼트 레이어의 화상 데이터를 부호화한다.
스텝 S904에 있어서, 다중화부(903)는, 스텝 S901의 처리에 의해 생성된 베이스 레이어 화상 부호화 스트림과, 스텝 S903의 처리에 의해 생성된 인핸스먼트 레이어 화상 부호화 스트림을(즉, 각 레이어의 부호화 스트림을) 다중화하여, 1계통의 계층 화상 부호화 스트림을 생성한다.
스텝 S904의 처리가 종료되면, 화상 부호화 처리가 종료된다.
또한, 헤더 생성부(948)는 시퀀스 파라미터 세트 이외의 헤더 정보도 생성하지만, 후술하는 슬라이스 헤더를 제외하고, 그 설명은 생략한다. 또한, 베이스 레이어 화상 부호화부(901)(예를 들어 가역 부호화부(916))도, 베이스 레이어에 대해서, 시퀀스 파라미터 세트, 픽처 파라미터 세트, 슬라이스 헤더 등의 헤더 정보를 생성하지만, 그 설명은 생략한다.
또한, 스텝 S901, 스텝 S903 및 스텝 S904의 각 처리는 픽처마다 실행된다. 또한, 스텝 S902의 처리는 시퀀스마다 실행된다.
<베이스 레이어 부호화 처리의 흐름>
다음에, 도 65의 스텝 S901에 있어서 실행되는 베이스 레이어 부호화 처리의 흐름의 예를, 도 66의 흐름도를 참조하여 설명한다.
베이스 레이어 부호화 처리가 개시되면, 스텝 S921 내지 스텝 S923의 각 처리가 도 15의 스텝 S141 내지 스텝 S143의 각 처리와 마찬가지로 실행된다.
스텝 S924에 있어서, 인터 예측부(925)는 인터 예측 모드에서의 움직임 예측이나 움직임 보상 등을 행하는 인터 예측 처리를 행한다.
스텝 S925 내지 스텝 S933의 각 처리가, 도 15의 스텝 S145 내지 스텝 S153의 각 처리와 마찬가지로 실행된다. 스텝 S934 내지 스텝 S936의 각 처리가, 도 15의 스텝 S155 내지 스텝 S157의 각 처리와 마찬가지로 실행된다.
스텝 S937에 있어서, 프레임 메모리(922)는, 이상과 같은 베이스 레이어 부호화 처리에 있어서 얻어진 베이스 레이어의 복호 화상을, 인핸스먼트 레이어의 부호화 처리에 공급한다.
스텝 S937의 처리가 종료되면, 베이스 레이어 부호화 처리가 종료되고, 처리는 도 65로 되돌아간다.
<시퀀스 파라미터 세트 생성 처리의 흐름>
다음에, 도 65의 스텝 S902에 있어서 실행되는 시퀀스 파라미터 세트 생성 처리의 흐름의 예를 도 67의 흐름도를 참조하여 설명한다.
시퀀스 파라미터 세트 생성 처리가 개시되면, 인핸스먼트 레이어 화상 부호화부(902)의 헤더 생성부(948)는, 스텝 S941에 있어서, 롱 텀 참조 프레임에 대한 신택스 used_by_curr_pic_lt_sps_flag[i]를 설정한다.
스텝 S942에 있어서, 헤더 생성부(948)는 그 밖의 신택스의 값을 설정하고, 그들 신택스와, 스텝 S941에 있어서 설정한 신택스 used_by_curr_pic_lt_sps_flag[i]를 포함한 시퀀스 파라미터 세트를 생성한다.
스텝 S942의 처리가 종료되면, 시퀀스 파라미터 세트 생성 처리가 종료되고, 처리는 도 65로 되돌아간다.
<인핸스먼트 레이어 부호화 처리의 흐름>
다음에, 도 65의 스텝 S903에 있어서 실행되는 인핸스먼트 레이어 부호화 처리의 흐름의 예를, 도 68의 흐름도를 참조하여 설명한다.
인핸스먼트 레이어 부호화 처리가 개시되면, 스텝 S951 및 스텝 S952의 각 처리가 도 17의 스텝 S191 및 스텝 S192의 각 처리와 마찬가지로 실행된다.
스텝 S953에 있어서, 헤더 생성부(948)는 롱 텀 참조 프레임에 대한 신택스 used_by_curr_pic_lt_flag[i]를 설정한다.
스텝 S954에 있어서, 헤더 생성부(948)는 그 밖의 신택스의 값을 설정하고, 그들 신택스와, 스텝 S953에 있어서 설정한 신택스 used_by_curr_pic_lt_flag[i]를 포함시킨 슬라이스 헤더를 생성한다.
스텝 S955에 있어서, 인트라 예측부(944)는 인트라 예측 처리를 행한다.
스텝 S956에 있어서, 인터 예측부(945)는 인터 예측 처리를 행한다.
스텝 S957 내지 스텝 S968의 각 처리는 도 17의 스텝 S195 내지 스텝 S206의 각 처리와 마찬가지로 실행된다.
스텝 S968의 처리가 종료되면, 인핸스먼트 레이어 부호화 처리가 종료되고, 처리는 도 65로 되돌아간다.
<인트라 예측 처리의 흐름>
다음에, 도 68의 스텝 S955에 있어서 실행되는 인트라 예측 처리의 흐름의 예를, 도 69의 흐름도를 참조하여 설명한다.
인트라 예측 처리가 개시되면, 인트라 예측부(944)는, 스텝 S971에 있어서, 텍스처 BL 모드 이외의 각 후보 모드에서 인트라 예측을 행하여, 각 모드의 예측 화상을 생성한다.
스텝 S972에 있어서, 인트라 예측부(944)는, 도 67의 스텝 S941에 있어서 설정된 시퀀스 파라미터 세트(seq_parameter_set_rbsp)의 신택스 used_by_curr_pic_lt_sps_flag[i], 및, 도 68의 스텝 S953에 있어서 설정된 슬라이스 헤더(slice_segment_header)의 신택스 used_by_curr_pic_lt_flag[i]에 기초하여, 베이스 레이어의 화상을 참조할지 여부를 판정한다.
예를 들어, 이들 신택스의 값이 「1」로 설정되어 있어, 베이스 레이어의 화상을 참조한다고 판정된 경우, 처리는 스텝 S973으로 진행한다. 스텝 S973에 있어서, 인트라 예측부(944)는 텍스처 BL 모드에서 인트라 예측을 행하여, 텍스처 BL 모드의 예측 화상을 생성한다. 텍스처 BL 모드의 예측 화상이 생성되면, 처리는 스텝 S974로 진행한다. 또한, 스텝 S972에 있어서, 상술한 신택스의 값이 「0」으로 설정되어 있어, 베이스 레이어의 화상을 참조하지 않는다고 판정된 경우, 처리는 스텝 S974로 진행한다.
스텝 S974에 있어서, 인트라 예측부(944)는, 각 인트라 예측 모드의 예측 화상에 대해서 비용 함수값을 산출한다. 스텝 S975에 있어서, 인트라 예측부(944)는, 스텝 S974에 있어서 산출된 비용 함수값을 사용하여 최적 예측 모드를 결정한다. 스텝 S976에 있어서, 인트라 예측부(944)는, 스텝 S975에 있어서 최적 예측 모드로 결정된 인트라 예측 모드에 관한 정보인 인트라 예측 모드 정보를 부호화하고, 가역 부호화부(936)에 공급한다.
스텝 S976의 처리가 종료되면, 인트라 예측 처리가 종료되고, 처리는 도 68로 되돌아간다.
<인터 예측 처리의 흐름>
다음에, 도 68의 스텝 S956에 있어서 실행되는 인터 예측 처리의 흐름의 예를, 도 70의 흐름도를 참조하여 설명한다.
인터 예측 처리가 개시되면, 인터 예측부(945)는, 스텝 S981에 있어서, 레퍼런스 인덱스 모드 이외의 각 후보 모드에서 인터 예측을 행하여, 각 모드의 예측 화상을 생성한다.
스텝 S982에 있어서, 인터 예측부(945)는, 도 67의 스텝 S941에 있어서 설정된 시퀀스 파라미터 세트(seq_parameter_set_rbsp)의 신택스 used_by_curr_pic_lt_sps_flag[i], 및, 도 68의 스텝 S953에 있어서 설정된 슬라이스 헤더(slice_segment_header)의 신택스 used_by_curr_pic_lt_flag[i]에 기초하여, 베이스 레이어의 화상을 참조할지 여부를 판정한다.
예를 들어, 이 신택스의 값이 「1」로 설정되어 있어, 베이스 레이어의 화상을 참조한다고 판정된 경우, 처리는 스텝 S983으로 진행한다. 스텝 S983에 있어서, 인터 예측부(945)는, 레퍼런스 인덱스 모드에서 인터 예측을 행하여, 레퍼런스 인덱스 모드의 예측 화상을 생성한다. 레퍼런스 인덱스 모드의 예측 화상이 생성되면, 처리는 스텝 S984로 진행한다. 또한, 스텝 S982에 있어서, 상술한 신택스의 값이 「0」으로 설정되어 있어, 베이스 레이어의 화상을 참조하지 않는다고 판정된 경우, 처리는 스텝 S984로 진행한다.
스텝 S984에 있어서, 인터 예측부(945)는, 각 인터 예측 모드의 예측 화상에 대해서 비용 함수값을 산출한다. 스텝 S985에 있어서, 인터 예측부(945)는, 스텝 S984에 있어서 산출된 비용 함수값을 사용하여 최적 예측 모드를 결정한다. 스텝 S986에 있어서, 인터 예측부(945)는, 스텝 S985에 있어서 최적 예측 모드로 결정된 인터 예측 모드에 관한 정보인 인터 예측 모드 정보를 부호화하고, 가역 부호화부(936)에 공급한다.
스텝 S986의 처리가 종료되면, 인터 예측 처리가 종료되고, 처리는 도 68로 되돌아간다.
이상과 같이 각 처리가 실행됨으로써, 화상 부호화 장치(900)(인핸스먼트 레이어 화상 부호화부(902))는, 복호 처리에 있어서의 각 레이어의 움직임 보상의 실행을 적절하게 제어할 수 있어, 복호 처리의 부하의 증대를 억제할 수 있다.
<12. 제10 실시 형태>
<화상 복호 장치>
다음에, 이상과 같이 부호화된 부호화 데이터의 복호에 대하여 설명한다. 도 71은 본 기술을 적용한 화상 처리 장치의 일 형태인, 도 62의 화상 부호화 장치(900)에 대응하는 화상 복호 장치의 주된 구성예를 나타내는 블록도이다. 도 71에 도시한 화상 복호 장치(1000)는, 화상 부호화 장치(900)가 생성한 부호화 데이터를, 그 부호화 방법에 대응하는 복호 방법에 의해 복호한다(즉, 계층 부호화된 부호화 데이터를 계층 복호한다). 이 화상 복호 장치(1000)는, 도 19의 스케일러블 복호 장치(200)와 기본적으로 마찬가지의 화상 처리 장치이지만, 설명의 편의상, <10. 개요 3>에 있어서 설명한 본 기술과 직접적인 관계가 적은 구성(예를 들어 공통 정보 취득부(201), 복호 제어부(202), 레이어간 예측 제어부(204) 등)에 대한 설명은 생략하였다.
도 71에 도시한 바와 같이, 화상 복호 장치(1000)는 역다중화부(1001), 베이스 레이어 화상 복호부(1002) 및 인핸스먼트 레이어 화상 복호부(1003)를 갖는다.
역다중화부(1001)는, 부호화측으로부터 전송된, 베이스 레이어 화상 부호화 스트림과 인핸스먼트 레이어 화상 부호화 스트림이 다중화된 계층 화상 부호화 스트림을 수취하고, 그것을 역다중화하여, 베이스 레이어 화상 부호화 스트림과, 인핸스먼트 레이어 화상 부호화 스트림을 추출한다. 베이스 레이어 화상 복호부(1002)는, 베이스 레이어 화상 복호부(203)(도 19)와 기본적으로 마찬가지의 처리부이며, 역다중화부(1001)에 의해 추출된 베이스 레이어 화상 부호화 스트림을 복호하여, 베이스 레이어 화상을 얻는다. 인핸스먼트 레이어 화상 복호부(1003)는, 인핸스먼트 레이어 화상 복호부(205)(도 19)와 기본적으로 마찬가지의 처리부이며, 역다중화부(1001)에 의해 추출된 인핸스먼트 레이어 화상 부호화 스트림을 복호하여, 인핸스먼트 레이어 화상을 얻는다.
베이스 레이어 화상 복호부(1002)는, 베이스 레이어의 복호에 있어서 얻어진 베이스 레이어 복호 화상을, 인핸스먼트 레이어 화상 복호부(1003)에 공급한다.
인핸스먼트 레이어 화상 복호부(1003)는, 베이스 레이어 화상 복호부(1002)로부터 공급되는 베이스 레이어 복호 화상을 취득하고, 기억한다. 인핸스먼트 레이어 화상 복호부(1003)는, 그 기억한 베이스 레이어 복호 화상을 참조 화상으로 하여, 인핸스먼트 레이어의 복호에 있어서의 예측 처리에 사용한다.
<베이스 레이어 화상 복호부>
도 72는 도 71의 베이스 레이어 화상 복호부(1002)의 주된 구성예를 나타내는 블록도이다. 도 72에 도시한 바와 같이 베이스 레이어 화상 복호부(1002)는, 축적 버퍼(1011), 가역 복호부(1012), 역양자화부(1013), 역직교 변환부(1014), 연산부(1015), 루프 필터(1016), 화면 재배열 버퍼(1017) 및 D/A 변환부(1018)를 갖는다. 또한, 베이스 레이어 화상 복호부(1002)는, 프레임 메모리(1019), 선택부(1020), 인트라 예측부(1021), 인터 예측부(1022) 및 예측 화상 선택부(1023)를 갖는다.
축적 버퍼(1011)는 베이스 레이어 화상 복호부(203)의 축적 버퍼(211)(도 20)와 마찬가지의 처리부이다. 가역 복호부(1012)는, 베이스 레이어 화상 복호부(203)의 가역 복호부(212)(도 20)와 마찬가지의 처리부이다. 역양자화부(1013)는, 베이스 레이어 화상 복호부(203)의 역양자화부(213)(도 20)와 마찬가지의 처리부이다. 역직교 변환부(1014)는 베이스 레이어 화상 복호부(203)의 역직교 변환부(214)(도 20)와 마찬가지의 처리부이다. 연산부(1015)는 베이스 레이어 화상 복호부(203)의 연산부(215)(도 20)와 마찬가지의 처리부이다. 루프 필터(1016)는 베이스 레이어 화상 복호부(203)의 루프 필터(216)(도 20)와 마찬가지의 처리부이다. 화면 재배열 버퍼(1017)는 베이스 레이어 화상 복호부(203)의 화면 재배열 버퍼(217)(도 20)와 마찬가지의 처리부이다. D/A 변환부(1018)는 베이스 레이어 화상 복호부(203)의 D/A 변환부(218)(도 20)와 마찬가지의 처리부이다.
프레임 메모리(1019)는 베이스 레이어 화상 복호부(203)의 프레임 메모리(219)(도 20)와 마찬가지의 처리부이다. 단, 프레임 메모리(1019)는, 기억하고 있는 복호 화상(베이스 레이어 복호 화상이라고도 칭함)을, 인핸스먼트 레이어 화상 복호부(1003)에 공급한다.
선택부(1020)는 베이스 레이어 화상 복호부(203)의 선택부(220)(도 20)와 마찬가지의 처리부이다.
인트라 예측부(1021)에는 인트라 예측 모드 정보 등이 가역 복호부(1012)로부터 적절히 공급된다. 인트라 예측부(1021)는, 부호화 시의 인트라 예측에 사용된 인트라 예측 모드(최적 인트라 예측 모드)에서 인트라 예측을 행하여, 소정의 블록마다(블록을 처리 단위로 하여) 예측 화상을 생성한다. 그때, 인트라 예측부(1021)는, 선택부(1020)를 통해서 프레임 메모리(1019)로부터 공급되는 재구성 화상(예측 화상 선택부(1023)에 의해 선택된 예측 화상과 역직교 변환부(214)로부터의 복호 잔차 데이터(차분 화상 정보)가 가산되고, 적절히 디블록 필터 처리가 행해진 화상)의 화상 데이터를 사용하여 인트라 예측을 행한다. 즉, 인트라 예측부(1021)는 이 재구성 화상을 참조 화상(주변 화소)으로서 이용한다. 인트라 예측부(1021)는, 생성한 예측 화상을 예측 화상 선택부(1023)에 공급한다.
인터 예측부(1022)에는 최적 예측 모드 정보나 움직임 정보 등이 가역 복호부(1012)로부터 적절히 공급된다. 인터 예측부(1022)는, 부호화 시의 인터 예측에 사용된 인터 예측 모드(최적 인터 예측 모드)에서 인터 예측을 행하고, 소정의 블록마다(블록을 처리 단위로 하여) 예측 화상을 생성한다. 그때, 인터 예측부(1022)는, 선택부(1020)를 통해서 프레임 메모리(1019)로부터 공급되는 복호 화상(적절히 루프 필터 처리 등이 행해진 재구성 화상)의 화상 데이터를 참조 화상으로서 이용하여, 인터 예측을 행한다. 인터 예측부(1022)는 생성한 예측 화상을 예측 화상 선택부(1023)에 공급한다.
예측 화상 선택부(1023)는 베이스 레이어 화상 복호부(203)의 선택부(223)(도 20)와 마찬가지의 처리부이다.
또한, 베이스 레이어 화상 복호부(1002)는 다른 레이어를 참조하지 않고 복호를 행한다. 즉, 인트라 예측부(1021) 및 인터 예측부(1022)는 다른 레이어의 복호 화상을 참조 화상으로서 이용하지 않는다.
<인핸스먼트 레이어 화상 복호부>
도 73은 도 71의 인핸스먼트 레이어 화상 복호부(1003)의 주된 구성예를 나타내는 블록도이다. 도 73에 도시한 바와 같이, 인핸스먼트 레이어 화상 복호부(1003)는 도 72의 베이스 레이어 화상 복호부(1002)와 기본적으로 마찬가지의 구성을 갖는다.
즉, 인핸스먼트 레이어 화상 복호부(1003)는, 도 73에 도시한 바와 같이, 축적 버퍼(1031), 가역 복호부(1032), 역양자화부(1033), 역직교 변환부(1034), 연산부(1035), 루프 필터(1036), 화면 재배열 버퍼(1037) 및 D/A 변환부(1038)를 갖는다. 또한, 인핸스먼트 레이어 화상 복호부(1003)는, 프레임 메모리(1039), 선택부(1040), 인트라 예측부(1041), 인터 예측부(1042) 및 예측 화상 선택부(1043)를 갖는다.
이들 축적 버퍼(1031) 내지 예측 화상 선택부(1043)는, 도 72의 축적 버퍼(1011) 내지 예측 화상 선택부(1023)에 대응하고, 각각, 대응하는 처리부와 마찬가지의 처리를 행한다. 단, 인핸스먼트 레이어 화상 복호부(1003)의 각 부는 베이스 레이어가 아니라, 인핸스먼트 레이어 화상 정보의 부호화에 대한 처리를 행한다. 따라서, 축적 버퍼(1031) 내지 예측 화상 선택부(1043)의 처리의 설명으로서, 상술한 도 72의 축적 버퍼(1011) 내지 예측 화상 선택부(1023)에 대한 설명을 적용할 수 있지만, 그 경우, 처리하는 데이터는 베이스 레이어의 데이터가 아니라, 인핸스먼트 레이어의 데이터인 것으로 할 필요가 있다. 또한, 데이터의 입력원이나 출력처의 처리부는, 적절히, 인핸스먼트 레이어 화상 복호부(1003)의, 대응하는 처리부로 바꿔 이해할 필요가 있다.
또한, 인핸스먼트 레이어 화상 복호부(1003)는, 다른 레이어(예를 들어 베이스 레이어)의 정보를 참조하여 부호화를 행한다. 그리고, 인핸스먼트 레이어 화상 복호부(1003)는 <10. 개요 3>에 있어서 상술한 처리를 행한다.
예를 들어, 프레임 메모리(1039)는 복수의 참조 프레임을 기억할 수 있고, 인핸스먼트 레이어의 복호 화상(인핸스먼트 레이어 복호 화상이라고도 칭함)을 기억할뿐만 아니라, 베이스 레이어 화상 복호부(1002)로부터 베이스 레이어 복호 화상을 취득하여, 롱 텀 참조 프레임으로서 기억한다. 이때, 프레임 메모리(1039)에 기억되는 베이스 레이어 복호 화상은 업 샘플 처리된 것이어도 된다(예를 들어, 프레임 메모리(1039)가, 베이스 레이어 화상 복호부(1002)로부터 공급되는 베이스 레이어 복호 화상을 업 샘플하여 기억하도록 해도 된다).
베이스 레이어 화상 복호부(1002)의 경우와 마찬가지로, 프레임 메모리(1039)에 기억된 화상, 즉, 인핸스먼트 레이어 복호 화상이나 베이스 레이어 복호 화상은, 인트라 예측부(1041)나 인터 예측부(1042)에 의한 예측 처리에 있어서, 참조 화상으로서 이용된다.
예를 들어, 인트라 예측부(1041)는, 부호화 시의 인트라 예측에 있어서 텍스처 BL(texture BL) 모드가 채용된 경우, 그 텍스처 BL 모드에 의해 인트라 예측을 행한다. 즉, 인트라 예측부(1041)는, 베이스 레이어의 커런트 픽처의, 인핸스먼트 레이어의 코로케이티드 블록의 화소값을 프레임 메모리(1039)의 롱 텀 참조 프레임으로부터(선택부(1040)를 통해서) 취득하고, 그것을 참조 화상으로서 사용하여 인트라 예측을 행하여, 예측 화상을 생성한다. 생성된 예측 화상은 예측 화상 선택부(1043)를 통해서 연산부(1035)에 공급된다.
또한, 예를 들어 인터 예측부(1042)는, 부호화 시의 인터 예측에 있어서 레퍼런스 인덱스(Ref_idx) 모드가 채용된 경우, 그 레퍼런스 인덱스(Ref_idx) 모드에 의해 인터 예측을 행한다. 즉, 인터 예측부(1042)는, 프레임 메모리(1039)의 롱 텀 참조 프레임에 저장되는 베이스 레이어 복호 화상을 취득하고, 그것을 참조 화상으로서 사용하여 인터 예측을 행하여, 예측 화상을 생성한다. 생성된 예측 화상은 예측 화상 선택부(1043)를 통해서 연산부(1035)에 공급된다.
그런데, 도 73에 도시한 바와 같이, 인핸스먼트 레이어 화상 복호부(1003)는 헤더 해독부(1044)를 더 갖는다.
헤더 해독부(1044)는, 가역 복호부에 의해 추출된, 예를 들어 시퀀스 파라미터 세트(SPS), 픽처 파라미터 세트(PPS), 슬라이스 헤더 등의 헤더 정보를 해독한다. 그때, 헤더 해독부(1044)는 시퀀스 파라미터 세트(seq_parameter_set_rbsp)의 롱 텀 참조 프레임에 대한 신택스 used_by_curr_pic_lt_sps_flag[i]나, 슬라이스 헤더(slice_segment_header)의 롱 텀 참조 프레임에 대한 신택스 used_by_curr_pic_lt_flag[i]의 값도 해독한다.
헤더 해독부(1044)는, 헤더 정보의 해독 결과에 기초하여, 인핸스먼트 레이어 화상 복호부(1003)의 각 처리부의 동작을 제어한다. 즉, 인핸스먼트 레이어 화상 복호부(1003)의 각 처리부는, 적절히, 이 헤더 정보에 따라서 각각의 처리를 행한다.
인트라 예측부(1041)는 신택스 used_by_curr_pic_lt_sps_flag[i]나 신택스 used_by_curr_pic_lt_flag[i]의 값에 따라서 인트라 예측을 행한다. 예를 들어, 신택스 used_by_curr_pic_lt_sps_flag[i]나 신택스 used_by_curr_pic_lt_flag[i]의 값이 「0」인 경우, 인트라 예측부(1041)는, 그 픽처에 대해서, 텍스처 BL 모드 이외의 모드에서 인트라 예측을 행한다. 즉, 이 픽처에 대해서는, 인트라 예측에 베이스 레이어 복호 화상이 이용되지 않는다. 즉, 이 픽처의 인트라 예측에 있어서는 레이어간 텍스처 예측을 위한 움직임 보상이 생략된다. 반대로, 신택스 used_by_curr_pic_lt_sps_flag[i]나 신택스 used_by_curr_pic_lt_flag[i]의 값이 「1」인 경우, 인트라 예측부(1041)는 최적 인트라 예측 모드가 텍스처 BL 모드이면, 그 텍스처 BL 모드에서 인트라 예측을 행한다.
인터 예측부(1042)는, 신택스 used_by_curr_pic_lt_sps_flag[i]나 신택스 used_by_curr_pic_lt_flag[i]의 값에 따라서 인터 예측을 행한다. 예를 들어, 신택스 used_by_curr_pic_lt_sps_flag[i]나 신택스 used_by_curr_pic_lt_flag[i]의 값이 「0」인 경우, 인터 예측부(1042)는, 그 픽처에 대해서, 레퍼런스 인덱스 모드 이외의 모드에서 인터 예측을 행한다. 즉, 이 픽처에 대해서는 인터 예측에 베이스 레이어 복호 화상이 이용되지 않는다. 즉, 이 픽처의 인터 예측에 있어서는, 레이어간 텍스처 예측을 위한 움직임 보상이 생략된다. 반대로, 신택스 used_by_curr_pic_lt_sps_flag[i]나 신택스 used_by_curr_pic_lt_flag[i]의 값이 「1」인 경우, 인터 예측부(1042)는 최적 인터 예측 모드가 레퍼런스 인덱스 모드이면, 그 레퍼런스 인덱스 모드에서 인터 예측을 행한다.
이상과 같이, 롱 텀 참조 프레임에 대한 신택스의 값에 기초하여 인트라 예측이나 인터 예측을 행함으로써, 화상 복호 장치(1000)는 인핸스먼트 레이어의 복호 처리에 있어서의 레이어간 텍스처 예측의 실행을 픽처마다 제어할 수 있다. 즉, 화상 복호 장치(1000)는 복호 처리에 있어서의 각 레이어의 움직임 보상의 실행을 적절하게 제어할 수 있어, 복호 처리의 부하의 증대를 억제할 수 있다.
<화상 복호 처리의 흐름>
다음에, 이상과 같은 화상 복호 장치(1000)에 의해 실행되는 각 처리의 흐름에 대해서 설명한다. 처음에, 도 74의 흐름도를 참조하여, 화상 복호 처리의 흐름의 예를 설명한다.
화상 복호 처리가 개시되면, 스텝 S1001에 있어서, 화상 복호 장치(1000)의 역다중화부(1001)는 부호화측으로부터 전송되는 계층 화상 부호화 스트림을 역다중화하여, 레이어마다의 비트 스트림을 생성한다.
스텝 S1002에 있어서, 베이스 레이어 화상 복호부(1002)는, 스텝 S1001의 처리에 의해 얻어진 베이스 레이어 화상 부호화 스트림을 복호한다. 베이스 레이어 화상 복호부(1002)는 이 복호에 의해 생성된 베이스 레이어 화상의 데이터를 출력한다.
스텝 S1003에 있어서, 인핸스먼트 레이어 화상 복호부(1003)의 헤더 해독부(1044)는, 스텝 S1001의 처리에 의해 얻어진 인핸스먼트 레이어 화상 부호화 스트림으로부터 추출된 헤더 정보의 시퀀스 파라미터 세트를 해독한다.
스텝 S1004에 있어서, 인핸스먼트 레이어 화상 복호부(1003)는, 스텝 S1001의 처리에 의해 얻어진 인핸스먼트 레이어 화상 부호화 스트림을 복호한다.
스텝 S1004의 처리가 종료되면, 화상 복호 처리가 종료된다.
또한, 헤더 해독부(1044)는, 시퀀스 파라미터 세트 이외의 헤더 정보도 해독하지만, 후술하는 슬라이스 헤더를 제외하고, 그 설명은 생략한다. 또한, 베이스 레이어 화상 복호부(1002)(예를 들어 가역 복호부(1012))도, 베이스 레이어에 대해서, 시퀀스 파라미터 세트, 픽처 파라미터 세트, 슬라이스 헤더 등의 헤더 정보를 해독하지만, 그 설명은 생략한다.
또한, 스텝 S1001, 스텝 S1002 및 스텝 S1004의 각 처리는 픽처마다 실행된다. 또한, 스텝 S1003의 처리는 시퀀스마다 실행된다.
<베이스 레이어 복호 처리의 흐름>
다음에, 도 74의 스텝 S1002에 있어서 실행되는 베이스 레이어 복호 처리의 흐름의 예를 도 75의 흐름도를 참조하여 설명한다.
베이스 레이어 복호 처리가 개시되면, 스텝 S1021 내지 스텝 S1030의 각 처리가 도 25의 스텝 S341 내지 스텝 S350의 각 처리와 마찬가지로 실행된다.
스텝 S1031에 있어서, 프레임 메모리(1019)는 이상과 같은 베이스 레이어 복호 처리에 있어서 얻어진 베이스 레이어 복호 화상을, 인핸스먼트 레이어의 복호 처리에 공급한다.
스텝 S1031의 처리가 종료되면, 베이스 레이어 복호 처리가 종료되고, 처리는 도 74로 되돌아간다.
<시퀀스 파라미터 세트 해독 처리의 흐름>
다음에, 도 74의 스텝 S1003에 있어서 실행되는 시퀀스 파라미터 세트 해독 처리의 흐름의 예를 도 76의 흐름도를 참조하여 설명한다.
시퀀스 파라미터 세트 해독 처리가 개시되면, 인핸스먼트 레이어 화상 복호부(1003)의 헤더 해독부(1044)는, 스텝 S1041에 있어서, 시퀀스 파라미터 세트의 각 파라미터를 해독하고, 각 처리부에 대하여 해독 결과에 기초한 제어를 행한다.
스텝 S1042에 있어서, 헤더 해독부(1044)는, 시퀀스 파라미터 세트의 롱 텀 참조 프레임에 대한 신택스 used_by_curr_pic_lt_sps_flag[i]를 해독하고, 인트라 예측부(1041)나 인터 예측부(1042) 등에 대하여 해독 결과에 기초한 제어를 행한다.
스텝 S1042의 처리가 종료되면, 시퀀스 파라미터 세트 해독 처리가 종료되고, 처리는 도 74로 되돌아간다.
<인핸스먼트 레이어 복호 처리의 흐름>
다음에, 도 74의 스텝 S1004에 있어서 실행되는 인핸스먼트 레이어 복호 처리의 흐름의 예를 도 77의 흐름도를 참조하여 설명한다.
인핸스먼트 레이어 복호 처리가 개시되면, 스텝 S1051 및 스텝 S1052의 각 처리가 도 27의 스텝 S391 및 스텝 S392의 각 처리와 마찬가지로 실행된다.
스텝 S1053에 있어서, 헤더 해독부(1044)는 슬라이스 헤더의 각 파라미터를 해독하고, 각 처리부에 대하여 해독 결과에 기초한 제어를 행한다. 스텝 S1054에 있어서, 헤더 해독부(1044)는 슬라이스 헤더의 롱 텀 참조 프레임에 대한 신택스 used_by_curr_pic_lt_flag[i]를 해독하고, 인트라 예측부(1041)나 인터 예측부(1042) 등에 대하여 해독 결과에 기초한 제어를 행한다.
스텝 S1055 및 스텝 S1056의 각 처리는 도 27의 스텝 S393 및 스텝 S394의 각 처리와 마찬가지로 실행된다.
스텝 S1057에 있어서, 인트라 예측부(1041) 및 인터 예측부(1042)는 예측 처리를 행하여, 인트라 예측 혹은 인터 예측에 의해 예측 화상을 생성한다. 그때, 인트라 예측부(1041) 및 인터 예측부(1042)는, 도 76의 스텝 S1042의 처리에 의한 신택스 used_by_curr_pic_lt_sps_flag[i]의 해독 결과와, 스텝 S1054의 처리에 의한 신택스 used_by_curr_pic_lt_flag[i]의 해독 결과에 기초하는 헤더 해독부(1044)의 제어에 따라서, 예측 처리를 행한다.
스텝 S1058 내지 스텝 S1062의 각 처리는 도 27의 스텝 S396 내지 스텝 S400의 각 처리와 마찬가지로 실행된다.
스텝 S1062의 처리가 종료되면, 인핸스먼트 레이어 복호 처리가 종료되고, 처리는 도 74로 되돌아간다.
<예측 처리의 흐름>
다음에, 도 77의 스텝 S1057에 있어서 실행되는 예측 처리의 흐름의 예를 도 78의 흐름도를 참조하여 설명한다.
예측 처리가 개시되면, 인트라 예측부(1041) 및 인터 예측부(1042)는, 스텝 S1071에 있어서, 처리 대상인 커런트 블록에 대해서, 최적 모드(부호화 시에 채용된 예측 처리의 모드)가 인트라 예측 모드인지 여부를 판정한다. 인트라 예측에 의해 예측 화상이 생성되었다고 판정된 경우, 처리는 스텝 S1072로 진행한다.
스텝 S1072에 있어서, 인트라 예측부(1041)는 베이스 레이어의 화상을 참조할지 여부를 판정한다. 헤더 해독부(1044)에 의해, 커런트 블록이 속하는 커런트 픽처에 대해서 레이어간 텍스처 예측을 행할 수 있도록 제어되고 있고, 또한, 커런트 블록의 최적 인트라 예측 모드가 텍스처 BL 모드인 경우, 인트라 예측부(1041)는 커런트 블록의 예측 처리에 있어서 베이스 레이어의 화상을 참조한다고 판정한다. 이와 같이 판정된 경우, 처리는 스텝 S1073으로 진행한다.
스텝 S1073에 있어서, 인트라 예측부(1041)는, 참조 화상으로서, 프레임 메모리(1039)의 롱 텀 참조 프레임으로부터 베이스 레이어 복호 화상을 취득한다. 스텝 S1074에 있어서, 인트라 예측부(1041)는 텍스처 BL 모드에서 인트라 예측을 행하여, 예측 화상을 생성한다. 스텝 S1074의 처리가 종료되면, 처리는 스텝 S1080으로 진행한다.
또한, 스텝 S1072에 있어서, 헤더 해독부(1044)에 의해 커런트 픽처에 대해서 레이어간 텍스처 예측을 행할 수 있도록 제어되고 있고, 또한, 커런트 블록의 최적 인트라 예측 모드가 텍스처 BL 모드가 아닌 경우나, 혹은, 헤더 해독부(1044)에 의해 커런트 픽처에 대해서 레이어간 텍스처 예측을 행하지 않도록 제어되고 있는 경우, 인트라 예측부(1041)는 커런트 블록의 예측 처리에 있어서 베이스 레이어의 화상을 참조하지 않는다고 판정한다. 이와 같이 판정된 경우, 처리는 스텝 S1075로 진행한다.
스텝 S1075에 있어서, 인트라 예측부(1041)는, 참조 화상으로서, 프레임 메모리(1039)로부터 인핸스먼트 레이어 복호 화상을 취득한다. 그리고, 인트라 예측부(1041)는 텍스처 BL 모드가 아닌 최적 인트라 예측 모드에서 인트라 예측을 행하여, 예측 화상을 생성한다. 스텝 S1075의 처리가 종료되면, 처리는 스텝 S1080으로 진행한다.
또한, 스텝 S1071에 있어서, 커런트 블록에 대해서, 최적 모드가 인터 예측 모드라고 판정된 경우, 처리는 스텝 S1076으로 진행한다.
스텝 S1076에 있어서, 인터 예측부(1042)는, 베이스 레이어의 화상을 참조할지 여부를 판정한다. 헤더 해독부(1044)에 의해 커런트 픽처에 대해서 레이어간 텍스처 예측을 행할 수 있도록 제어되고 있고, 또한, 커런트 블록의 최적 인터 예측 모드가 레퍼런스 인덱스 모드인 경우, 인터 예측부(1042)는, 커런트 블록의 예측 처리에 있어서 베이스 레이어의 화상을 참조한다고 판정한다. 이와 같이 판정된 경우, 처리는 스텝 S1077로 진행한다.
스텝 S1077에 있어서, 인터 예측부(1042)는, 참조 화상으로서, 프레임 메모리(1039)의 롱 텀 참조 프레임으로부터 베이스 레이어 복호 화상을 취득한다. 스텝 S1078에 있어서, 인터 예측부(1042)는 레퍼런스 인덱스 모드에서 인터 예측을 행하여, 예측 화상을 생성한다. 스텝 S1078의 처리가 종료되면, 처리는 스텝 S1080으로 진행한다.
또한, 스텝 S1076에 있어서, 헤더 해독부(1044)에 의해 커런트 픽처에 대해서 레이어간 텍스처 예측을 행할 수 있도록 제어되고 있고, 또한, 커런트 블록의 최적 인터 예측 모드가 레퍼런스 인덱스 모드가 아닌 경우나, 혹은, 헤더 해독부(1044)에 의해 커런트 픽처에 대해서 레이어간 텍스처 예측을 행하지 않도록 제어되고 있는 경우, 인터 예측부(1042)는 커런트 블록의 예측 처리에 있어서 베이스 레이어의 화상을 참조하지 않는다고 판정한다. 이와 같이 판정된 경우, 처리는 스텝 S1079로 진행한다.
스텝 S1079에 있어서, 인터 예측부(1042)는, 참조 화상으로서, 프레임 메모리(1039)로부터 인핸스먼트 레이어 복호 화상을 취득한다. 그리고, 인터 예측부(1042)는, 레퍼런스 인덱스 모드가 아닌 최적 인터 예측 모드에서 인터 예측을 행하여, 예측 화상을 생성한다. 스텝 S1079의 처리가 종료되면, 처리는 스텝 S1080으로 진행한다.
스텝 S1080에 있어서, 인트라 예측부(1041) 혹은 인터 예측부(1042)는, 생성한 예측 화상을 예측 화상 선택부(1043)를 통해서 연산부(1035)에 공급한다.
스텝 S1080의 처리가 종료되면, 예측 처리가 종료되고, 처리는 도 77로 되돌아간다.
이상과 같은 예측 처리에 있어서, 예를 들어 스텝 S1075의 처리나 스텝 S1079의 처리 시와 같이, 헤더 해독부(1044)에 의해 커런트 픽처에 대해서 레이어간 텍스처 예측을 행하지 않도록 제어되고 있는 픽처에 대해서는(예를 들어, 신택스 used_by_curr_pic_lt_sps_flag[i]나 신택스 used_by_curr_pic_lt_flag[i]의 값이 「0」인 경우), 레이어간 텍스처 예측을 위한 움직임 보상이 생략된다.
따라서, 이상과 같이 각 처리가 실행됨으로써, 화상 복호 장치(1000)(인핸스먼트 레이어 화상 복호부(1003))는 복호 처리의 부하의 증대를 억제할 수 있다.
<13. 제11 실시 형태>
<레이어간 신택스 예측 제어>
<7. 개요 2>, <8. 제7 실시 형태> 및 <9. 제8 실시 형태>에 있어서는, 레이어간 픽셀 예측(Inter-layer Pixel Prediction)의 실행과 레이어간 신택스 예측(Inter-layer Syntax Prediction)의 실행을 서로 독립적으로 제어하는 예에 대해서 설명하였다.
이 경우, 베이스 레이어의 부호화 방식이 AVC이며, 인핸스먼트 레이어의 부호화 방식이 HEVC인 것으로 하면, 레이어간 신택스 예측에서는, AVC의 신택스(syntax)를 사용하여 HEVC의 신택스의 예측 처리가 행해지게 된다. 그러나, 실제로는, HEVC와는 다른 부호화 방식인 AVC의 신택스(syntax)를 사용하여, HEVC의 신택스의 예측 처리를 행하는 것은 곤란하였다. 따라서, 부호화 방식이 AVC인 베이스 레이어의 신택스를 사용하여 레이어간 신택스 예측을 행하는 것을 금지로 하도록 해도 된다.
<부호화측에서의 제어>
예를 들어, 부호화측에 있어서, 베이스 레이어의 부호화 방식이 AVC이며, 레이어 0(layer=0)을 참조하는 경우, 레이어간 신택스 예측의 실행을 제어하는 레이어간 신택스 예측 제어 정보가 레이어간 신택스 예측을 실행시키지 않도록 제어하는 값으로 설정되어, 전송되도록 해도 된다.
이 경우의 스케일러블 부호화 장치(100)의 구성은, 도 9를 참조하여 설명한 예와 마찬가지이다. 그리고, 스케일러블 부호화 장치(100)의 각 부의 구성은 도 44를 참조하여 설명한 예와 마찬가지이다.
이 경우, 스케일러블 부호화 장치(100)에 의해 실행되는 부호화 처리는, 도 13에 도시한 흐름도의 예와 마찬가지로 실행된다. 그리고, 그 부호화 처리에 있어서 실행되는 공통 정보 생성 처리는, 도 45에 도시한 흐름도의 예와 마찬가지로 실행된다. 또한, 그 부호화 처리에 있어서 실행되는 베이스 레이어 부호화 처리는, 도 46에 도시한 흐름도의 예와 마찬가지로 실행된다. 또한, 그 부호화 처리에 있어서 실행되는 인핸스먼트 레이어 부호화 처리는, 도 48에 도시한 흐름도의 예와 마찬가지로 실행된다. 또한, 그 인핸스먼트 레이어 부호화 처리에 있어서 실행되는 움직임 예측ㆍ보상 처리는, 도 49에 도시한 흐름도의 예와 마찬가지로 실행된다. 또한, 그 부호화 처리에 있어서 실행되는 인트라 예측 처리는 도 50에 도시한 흐름도의 예와 마찬가지로 실행된다.
그리고, 그 부호화 처리의 스텝 S106에 있어서 실행되는 레이어간 예측 제어 처리의 흐름의 예를 도 79의 흐름도를 참조하여 설명한다.
스텝 S1101 내지 스텝 S1103의 각 처리가 도 47의 스텝 S731 내지 스텝 S733의 각 처리와 마찬가지로 실행되고, 레이어간 픽셀 예측 제어 정보에 기초하여 레이어간 픽셀 예측에 관한 제어가 행해진다.
스텝 S1104에 있어서, 레이어간 신택스 예측 제어 정보 설정부(725)는, 베이스 레이어의 부호화 방식이 AVC이며, 참조 레이어가 레이어 0인지 여부를 판정한다. 보다 구체적으로는, 레이어간 신택스 예측 제어 정보 설정부(725)는, 예를 들어 베이스 레이어의 부호화 방식이 AVC인지 여부를 나타내는 플래그 정보인 avc_base_layer_flag의 값이 「1」(avc_base_layer_flag=1)이고, 참조 레이어를 나타내는 파라미터인 layer의 값이 「0」(layer=0)인지 여부를 판정한다.
스텝 S1104에 있어서, avc_base_layer_flag=0이거나, 혹은, layer=0이 아니라고 판정된 경우, 처리는 스텝 S1105로 진행한다.
그 경우, 스텝 S1105 내지 스텝 S1107의 각 처리가 도 47의 스텝 S734 내지 스텝 S736의 각 처리와 마찬가지로 실행되고, 임의의 정보에 기초하여 레이어간 신택스 예측 제어 정보가 설정되어, 레이어간 신택스 예측에 관한 제어가 행해진다. 스텝 S1107의 처리가 종료되면, 혹은, 스텝 S1106에 있어서, 커런트 픽처가 레이어간 신택스 예측을 행하지 않는 픽처라고 판정되면, 레이어간 예측 제어 처리가 종료되고, 처리는 도 13으로 되돌아간다.
또한, 스텝 S1104에 있어서, avc_base_layer_flag=1이고, layer=0이라고 판정된 경우, 처리는 스텝 S1108로 진행한다.
스텝 S1108에 있어서, 레이어간 신택스 예측 제어 정보 설정부(725)는, 레이어간 신택스 예측의 실행을 오프로 하도록, 레이어간 신택스 예측 제어 정보를 설정한다. 즉, 이 경우, 레이어간 신택스 예측은 행해지지 않는다(생략된다). 스텝 S1108의 처리가 종료되면, 레이어간 예측 제어 처리가 종료되고, 처리는 도 13으로 되돌아간다.
또한, 레이어간 픽셀 예측 제어 정보 설정부(711)는, 레이어간 픽셀 예측의 실행(온/오프)을 제어하는 제어 정보인 레이어간 픽셀 예측 제어 정보를, 예를 들어 비디오 파라미터 세트(VPS(Video Parameter Set)), 확장 비디오 파라미터 세트(Vps_extension( )) 또는 날 유닛(nal_unit)에 있어서 전송시킨다.
그리고, 레이어간 신택스 예측의 실행(온/오프)을 제어하는 제어 정보인 레이어간 신택스 예측 제어 정보는, 예를 들어 픽처 파라미터 세트(PPS(Picture Parameter Set), 슬라이스 헤더(SliceHeader) 또는 날 유닛(nal_unit)에 있어서 복호측으로 전송된다. 또한, 이 레이어간 신택스 예측 제어 정보는, 예를 들어 비디오 파라미터 세트(VPS(Video Parameter Set))나, 확장 비디오 파라미터 세트(Vps_extension( ))에 있어서 복호측으로 전송되도록 해도 된다.
이와 같이 함으로써, 스케일러블 부호화 장치(100)는, 베이스 레이어의 부호화 방식이 AVC인 경우의 레이어간 신택스 예측 제어에 관한 처리의 실행을 생략시킬 수 있어, 부호화 처리의 부하의 불필요한 증대를 억제할 수 있다. 또한, 이와 같이 설정된 레이어간 신택스 예측 제어 정보를 복호측으로 전송함으로써, 복호측에 있어서도, 베이스 레이어의 부호화 방식이 AVC인 경우의 레이어간 신택스 예측 제어에 관한 처리의 실행을 생략시킬 수 있다. 즉, 스케일러블 부호화 장치(100)는 복호 처리의 부하의 불필요한 증대도 억제할 수 있다.
<복호측에서의 제어>
또한, 예를 들어 복호측에 있어서, 베이스 레이어의 부호화 방식이 AVC이고, 레이어 0(layer=0)을 참조하는 경우, 레이어간 신택스 예측 제어 정보의 값이 실제의 값에 관계없이 강제적으로 「0」이라고 간주되도록 해도 된다.
이 경우의 스케일러블 복호 장치(200)의 구성은, 도 19를 참조하여 설명한 예와 마찬가지이다. 그리고, 스케일러블 복호 장치(200)의 각 부의 구성은 도 51을 참조하여 설명한 예와 마찬가지이다.
이 경우, 스케일러블 복호 장치(200)에 의해 실행되는 복호 처리는, 도 23에 도시한 흐름도의 예와 마찬가지로 실행된다. 그리고, 그 복호 처리에 있어서 실행되는 공통 정보 취득 처리는, 도 52에 도시한 흐름도의 예와 마찬가지로 실행된다. 또한, 그 복호 처리에 있어서 실행되는 베이스 레이어 복호 처리는, 도 53에 도시한 흐름도의 예와 마찬가지로 실행된다. 또한, 그 복호 처리에 있어서 실행되는 인핸스먼트 레이어 복호 처리는, 도 27에 도시한 흐름도의 예와 마찬가지로 실행된다. 또한, 그 인핸스먼트 레이어 복호 처리에 있어서 실행되는 예측 처리는, 도 55에 도시한 흐름도의 예와 마찬가지로 실행된다.
그리고, 그 복호 처리의 스텝 S306에 있어서 실행되는 레이어간 예측 제어 처리의 흐름의 예를 도 80의 흐름도를 참조하여 설명한다.
스텝 S1121 내지 스텝 S1123의 각 처리가 도 54의 스텝 S831 내지 스텝 S833의 각 처리와 마찬가지로 실행되고, 레이어간 픽셀 예측 제어 정보에 기초하여 레이어간 픽셀 예측에 관한 제어가 행해진다.
스텝 S1124에 있어서, 레이어간 신택스 예측 제어부(826)는 베이스 레이어의 부호화 방식이 AVC이고, 참조 레이어가 레이어 0인지 여부를 판정한다. 보다 구체적으로는, 레이어간 신택스 예측 제어부(826)는, 예를 들어 부호화측으로부터 전송된 확장 비디오 파라미터 세트(Vps_extension( ))에 있어서, 베이스 레이어의 부호화 방식이 AVC인지 여부를 나타내는 플래그 정보인 avc_base_layer_flag의 값이 「1」(avc_base_layer_flag=1)이고, 참조 레이어를 나타내는 파라미터인 layer의 값이 「0」(layer=0)인지 여부를 판정한다.
스텝 S1124에 있어서, avc_base_layer_flag=0이거나, 혹은, layer=0이 아니라고 판정된 경우, 처리는 스텝 S1125로 진행한다.
이 경우, 스텝 S1125 내지 스텝 S1127의 각 처리가 도 54의 스텝 S834 내지 스텝 S836의 각 처리와 마찬가지로 실행되고, 레이어간 신택스 예측 제어 정보에 기초하여 레이어간 신택스 예측에 관한 제어가 행해진다. 스텝 S1127의 처리가 종료되면, 혹은, 스텝 S1126에 있어서, 커런트 픽처가 레이어간 신택스 예측을 행하지 않는 픽처라고 판정되면, 레이어간 예측 제어 처리가 종료되고, 처리는 도 23으로 되돌아간다.
또한, 스텝 S1124에 있어서, avc_base_layer_flag=1이고, layer=0이라고 판정된 경우, 처리는 스텝 S1128로 진행한다.
스텝 S1128에 있어서, 레이어간 신택스 예측 제어부(826)는 레이어간 신택스 예측의 실행을 오프로 한다. 즉, 이 경우, 레이어간 신택스 예측은 행해지지 않는다(생략된다). 스텝 S1128의 처리가 종료되면, 레이어간 예측 제어 처리가 종료되고, 처리는 도 23으로 되돌아간다.
이와 같이 함으로써, 스케일러블 복호 장치(200)는, 베이스 레이어의 부호화 방식이 AVC인 경우의 레이어간 신택스 예측 제어에 관한 처리의 실행을 생략할 수 있어, 복호 처리의 부하의 불필요한 증대를 억제할 수 있다.
<14. 기타>
이상에 있어서는, 스케일러블 부호화에 의해 화상 데이터가 계층화되어 복수 레이어화되는 것으로 설명하였지만, 그 레이어수는 임의이다. 또한, 예를 들어 도 81의 예에 도시한 바와 같이, 일부의 픽처가 계층화되도록 해도 된다. 또한, 이상에 있어서는, 부호화ㆍ복호에 있어서, 인핸스먼트 레이어는 베이스 레이어를 참조하여 처리되는 것으로 설명하였지만, 이에 한하지 않고, 인핸스먼트 레이어가, 처리된 다른 인핸스먼트 레이어를 참조하여 처리되도록 해도 된다.
또한, 이상에 설명한 레이어에는, 다시점 화상 부호화ㆍ복호에 있어서의 뷰도 포함된다. 즉, 본 기술은, 다시점 화상 부호화ㆍ다시점 화상 복호에 적용할 수 있다. 도 82는 다시점 화상 부호화 방식의 일례를 나타낸다.
도 82에 도시한 바와 같이, 다시점 화상은 복수의 시점(뷰)의 화상을 포함하고, 그 복수의 시점 중 소정의 하나의 시점의 화상이 베이스 뷰의 화상으로 지정되어 있다. 베이스 뷰의 화상 이외의 각 시점의 화상은 논베이스 뷰의 화상으로서 취급된다.
도 82와 같은 다시점 화상을 부호화ㆍ복호하는 경우, 각 뷰의 화상을 부호화ㆍ복호하지만, 이 각 뷰의 부호화ㆍ복호에 대하여, 상술한 방법을 적용하도록 해도 된다. 즉, 부호화나 복호에 관한 정보를, 이와 같은 다시점 부호화ㆍ복호에 있어서의 복수의 뷰에 있어서 공유하도록 해도 된다.
예를 들어, 베이스 뷰에 대해서는, 다른 뷰의 부호화나 복호에 관한 정보를 참조하지 않고 부호화ㆍ복호를 행하도록 하고, 논베이스 뷰에 대해서는, 베이스 뷰의 부호화나 복호에 관한 정보를 참조하여 부호화ㆍ복호를 행하도록 한다. 그리고, 베이스 뷰에 관한 부호화나 복호에 관한 정보만을 전송하도록 한다.
이와 같이 함으로써, 상술한 계층 부호화ㆍ복호의 경우와 마찬가지로, 다시점 부호화ㆍ복호에 있어서도, 부호화 효율의 저감을 억제할 수 있다.
이상과 같이, 본 기술의 적용 범위는 스케일러블한 부호화ㆍ복호 방식에 기초하는 모든 화상 부호화 장치 및 화상 복호 장치에 적용할 수 있다.
또한, 본 기술은, 예를 들어 MPEG, H.26x 등과 같이, 이산 코사인 변환 등의 직교 변환과 움직임 보상에 의해 압축된 화상 정보(비트 스트림)를, 위성 방송, 케이블 텔레비전, 인터넷 또는 휴대 전화기 등의 네트워크 미디어를 통해서 수신할 때 사용되는 화상 부호화 장치 및 화상 복호 장치에 적용할 수 있다. 또한, 본 기술은 광자기 디스크 및 플래시 메모리와 같은 기억 미디어 상에서 처리할 때 사용되는 화상 부호화 장치 및 화상 복호 장치에 적용할 수 있다. 또한, 본 기술은 그들 화상 부호화 장치 및 화상 복호 장치 등에 포함되는 직교 변환 장치 혹은 역직교 변환 장치에도 적용할 수 있다.
<15. 제12 실시 형태>
<컴퓨터>
상술한 일련의 처리는 하드웨어에 의해 실행시킬 수도 있고, 소프트웨어에 의해 실행시킬 수도 있다. 일련의 처리를 소프트웨어에 의해 실행하는 경우에는, 그 소프트웨어를 구성하는 프로그램이 컴퓨터에 인스톨된다. 여기서 컴퓨터에는 전용의 하드웨어에 내장되어 있는 컴퓨터나, 각종 프로그램을 인스톨함으로써, 각종 기능을 실행하는 것이 가능한, 예를 들어 범용의 퍼스널 컴퓨터 등이 포함된다.
도 83은 상술한 일련의 처리를 프로그램에 의해 실행하는 컴퓨터의 하드웨어의 구성예를 나타내는 블록도이다.
도 83에 도시한 컴퓨터(1850)에 있어서, CPU(Central Processing Unit)(1851), ROM(Read Only Memory)(1852), RAM(Random Access Memory)(1853)은 버스(1854)를 통해서 서로 접속되어 있다.
버스(1854)에는 또한 입출력 인터페이스(1860)도 접속되어 있다. 입출력 인터페이스(1860)에는 입력부(1861), 출력부(1862), 기억부(1863), 통신부(1864) 및 드라이브(1865)가 접속되어 있다.
입력부(1861)는, 예를 들어 키보드, 마우스, 마이크로폰, 터치 패널, 입력 단자 등을 포함한다. 출력부(1862)는, 예를 들어 디스플레이, 스피커, 출력 단자 등을 포함한다. 기억부(1863)는, 예를 들어 하드 디스크, RAM 디스크, 불휘발성 메모리 등을 포함한다. 통신부(1864)는, 예를 들어 네트워크 인터페이스를 포함한다. 드라이브(1865)는 자기 디스크, 광 디스크, 광자기 디스크 또는 반도체 메모리 등의 리무버블 미디어(1871)를 구동한다.
이상과 같이 구성되는 컴퓨터에서는, CPU(1851)가, 예를 들어 기억부(1863)에 기억되어 있는 프로그램을, 입출력 인터페이스(1860) 및 버스(1854)를 통해서, RAM(1853)에 로드하여 실행함으로써, 상술한 일련의 처리가 행해진다. RAM(1853)에는 또한 CPU(1851)가 각종 처리를 실행하는 데 있어서 필요한 데이터 등도 적절히 기억된다.
컴퓨터(CPU(1851))가 실행하는 프로그램은, 예를 들어 패키지 미디어 등으로서의 리무버블 미디어(1871)에 기록하여 적용할 수 있다.
그 경우, 프로그램은 리무버블 미디어(1871)를 드라이브(1865)에 장착함으로써, 입출력 인터페이스(1860)를 통해서 기억부(1863)에 인스톨할 수 있다.
또한, 이 프로그램은 로컬 에리어 네트워크, 인터넷, 디지털 위성 방송 등의, 유선 또는 무선의 전송 매체를 통해서 제공할 수도 있다. 그 경우, 프로그램은 통신부(1864)에서 수신하고, 기억부(1863)에 인스톨할 수 있다. 그 밖에, 이 프로그램은 ROM(1852)이나 기억부(1863)에 미리 인스톨해 둘 수 있다.
또한, 컴퓨터가 실행하는 프로그램은, 본 명세서에서 설명하는 순서에 따라서 시계열로 처리가 행해지는 프로그램이어도 되고, 병렬로, 혹은 호출이 행해졌을 때 등의 필요한 타이밍에서 처리가 행해지는 프로그램이어도 된다.
또한, 본 명세서에 있어서, 기록 매체에 기록되는 프로그램을 기술하는 스텝은, 기재된 순서에 따라서 시계열적으로 행해지는 처리는 물론, 반드시 시계열적으로 처리되지 않더라도, 병렬적 혹은 개별로 실행되는 처리도 포함하는 것이다.
또한, 본 명세서에 있어서, 시스템이란, 복수의 구성 요소(장치, 모듈(부품) 등)의 집합을 의미하고, 모든 구성 요소가 동일 하우징 내에 있는지 여부는 불문한다. 따라서, 별개의 하우징에 수납되어, 네트워크를 통해서 접속되어 있는 복수의 장치 및 하나의 하우징 내에 복수의 모듈이 수납되어 있는 하나의 장치는, 모두, 시스템이다.
또한, 이상에 있어서, 하나의 장치(또는 처리부)로서 설명한 구성을 분할하여, 복수의 장치(또는 처리부)로서 구성하도록 해도 된다. 반대로, 이상에 있어서 복수의 장치(또는 처리부)로서 설명한 구성을 통합하여 하나의 장치(또는 처리부)로서 구성되도록 해도 된다. 또한, 각 장치(또는 각 처리부)의 구성에 상술한 것 이외의 구성을 부가하도록 해도 물론 된다. 또한, 시스템 전체로서의 구성이나 동작이 실질적으로 동일하면, 어떤 장치(또는 처리부)의 구성의 일부를 다른 장치(또는 다른 처리부)의 구성에 포함시키도록 해도 된다.
이상, 첨부 도면을 참조하면서 본 개시의 적합한 실시 형태에 대해서 상세하게 설명하였지만, 본 개시의 기술적 범위는 이러한 예에 한정되지 않는다. 본 개시의 기술 분야에 있어서의 통상의 지식을 갖는 사람이면, 청구 범위에 기재된 기술적 사상의 범주 내에서, 각종 변경예 또는 수정예에 상도할 수 있는 것은 명백하고, 이들에 대해서도, 당연히 본 개시의 기술적 범위에 속하는 것으로 이해된다.
예를 들어, 본 기술은, 하나의 기능을, 네트워크를 통해서 복수의 장치에서 분담, 공동적으로 처리하는 클라우드 컴퓨팅의 구성을 취할 수 있다.
또한, 상술한 흐름도에서 설명한 각 스텝은, 하나의 장치에서 실행하는 것 외에, 복수의 장치에서 분담하여 실행할 수 있다.
또한, 하나의 스텝에 복수의 처리가 포함되는 경우에는, 그 하나의 스텝에 포함되는 복수의 처리는 하나의 장치에서 실행하는 것 외에, 복수의 장치에서 분담하여 실행할 수 있다.
상술한 실시 형태에 따른 화상 부호화 장치 및 화상 복호 장치는, 예를 들어 위성 방송, 케이블 TV 등의 유선 방송, 인터넷 상에서의 배신 및 셀룰러 통신에 의한 단말기에의 배신 등에 있어서의 송신기 혹은 수신기, 광 디스크, 자기 디스크 및 플래시 메모리 등의 매체에 화상을 기록하는 기록 장치, 또는, 이들 기억 매체로부터 화상을 재생하는 재생 장치 등의 다양한 전자 기기에 응용될 수 있다. 이하, 4개의 응용예에 대해서 설명한다.
<16. 응용예>
<제1 응용예 : 텔레비전 수상기>
도 84는 상술한 실시 형태를 적용한 텔레비전 장치의 개략적인 구성의 일례를 나타내고 있다. 텔레비전 장치(1900)는 안테나(1901), 튜너(1902), 디멀티플렉서(1903), 디코더(1904), 영상 신호 처리부(1905), 표시부(1906), 음성 신호 처리부(1907), 스피커(1908), 외부 인터페이스(I/F)부(1909), 제어부(1910), 유저 인터페이스부(1911) 및 버스(1912)를 구비한다.
튜너(1902)는, 안테나(1901)를 통해서 수신되는 방송 신호로부터 원하는 채널의 신호를 추출하고, 추출한 신호를 복조한다. 그리고, 튜너(1902)는, 복조에 의해 얻어진 부호화 비트 스트림을 디멀티플렉서(1903)에 출력한다. 즉, 튜너(1902)는, 화상이 부호화되어 있는 부호화 스트림을 수신하는, 텔레비전 장치(1900)에 있어서의 전송부로서의 역할을 갖는다.
디멀티플렉서(1903)는, 부호화 비트 스트림으로부터 시청 대상의 프로그램의 영상 스트림 및 음성 스트림을 분리하고, 분리한 각 스트림을 디코더(1904)에 출력한다. 또한, 디멀티플렉서(1903)는, 부호화 비트 스트림으로부터 EPG(Electronic Program Guide) 등의 보조적인 데이터를 추출하고, 추출한 데이터를 제어부(1910)에 공급한다. 또한, 디멀티플렉서(1903)는, 부호화 비트 스트림이 스크램블되어 있는 경우에는 디스크램블을 행해도 된다.
디코더(1904)는 디멀티플렉서(1903)로부터 입력되는 영상 스트림 및 음성 스트림을 복호한다. 그리고, 디코더(1904)는 복호 처리에 의해 생성되는 영상 데이터를 영상 신호 처리부(1905)에 출력한다. 또한, 디코더(1904)는 복호 처리에 의해 생성되는 음성 데이터를 음성 신호 처리부(1907)에 출력한다.
영상 신호 처리부(1905)는, 디코더(1904)로부터 입력되는 영상 데이터를 재생하여, 표시부(1906)에 영상을 표시시킨다. 또한, 영상 신호 처리부(1905)는, 네트워크를 통해서 공급되는 애플리케이션 화면을 표시부(1906)에 표시시켜도 된다. 또한, 영상 신호 처리부(1905)는, 영상 데이터에 대해서, 설정에 따라서, 예를 들어 노이즈 제거 등의 추가적인 처리를 행해도 된다. 또한, 영상 신호 처리부(1905)는, 예를 들어 메뉴, 버튼 또는 커서 등의 GUI(Graphical User Interface)의 화상을 생성하고, 생성한 화상을 출력 화상에 중첩해도 된다.
표시부(1906)는, 영상 신호 처리부(1905)로부터 공급되는 구동 신호에 의해 구동되어, 표시 디바이스(예를 들어, 액정 디스플레이, 플라즈마 디스플레이 또는 OELD(Organic ElectroLuminescence Display)(유기 EL 디스플레이) 등)의 영상면 상에 영상 또는 화상을 표시한다.
음성 신호 처리부(1907)는, 디코더(1904)로부터 입력되는 음성 데이터에 대해서 D/A 변환 및 증폭 등의 재생 처리를 행하여, 스피커(1908)로부터 음성을 출력시킨다. 또한, 음성 신호 처리부(1907)는, 음성 데이터에 대해서 노이즈 제거 등의 추가적인 처리를 행해도 된다.
외부 인터페이스부(1909)는 텔레비전 장치(1900)와 외부 기기 또는 네트워크를 접속하기 위한 인터페이스이다. 예를 들어, 외부 인터페이스부(1909)를 통해서 수신되는 영상 스트림 또는 음성 스트림이, 디코더(1904)에 의해 복호되어도 된다. 즉, 외부 인터페이스부(1909)도 또한, 화상이 부호화되어 있는 부호화 스트림을 수신하는, 텔레비전 장치(1900)에 있어서의 전송부로서의 역할을 갖는다.
제어부(1910)는, CPU 등의 프로세서, 및 RAM 및 ROM 등의 메모리를 갖는다. 메모리는 CPU에 의해 실행되는 프로그램, 프로그램 데이터, EPG 데이터, 및 네트워크를 통해서 취득되는 데이터 등을 기억한다. 메모리에 의해 기억되는 프로그램은, 예를 들어 텔레비전 장치(1900)의 기동 시에 CPU에 의해 읽어들여져, 실행된다. CPU는 프로그램을 실행함으로써, 예를 들어 유저 인터페이스부(1911)로부터 입력되는 조작 신호에 따라서, 텔레비전 장치(1900)의 동작을 제어한다.
유저 인터페이스부(1911)는 제어부(1910)와 접속된다. 유저 인터페이스부(1911)는, 예를 들어 유저가 텔레비전 장치(1900)를 조작하기 위한 버튼 및 스위치, 및 원격 제어 신호의 수신부 등을 갖는다. 유저 인터페이스부(1911)는, 이들 구성 요소를 통해서 유저에 의한 조작을 검출하여 조작 신호를 생성하고, 생성한 조작 신호를 제어부(1910)에 출력한다.
버스(1912)는 튜너(1902), 디멀티플렉서(1903), 디코더(1904), 영상 신호 처리부(1905), 음성 신호 처리부(1907), 외부 인터페이스부(1909) 및 제어부(1910)를 서로 접속한다.
이와 같이 구성된 텔레비전 장치(1900)에 있어서, 디코더(1904)는, 상술한 실시 형태에 따른 스케일러블 복호 장치(200) 또는 화상 복호 장치(1000)(도 71)의 기능을 갖는다. 그것에 의해, 텔레비전 장치(1900)에서의 화상의 복호 시에, 부호화 효율의 저감의 억제를 실현하여, 부호화ㆍ복호에 의한 화질의 저감의 억제를 실현할 수 있다.
<제2 응용예 : 휴대 전화기>
도 85는 상술한 실시 형태를 적용한 휴대 전화기의 개략적인 구성의 일례를 나타내고 있다. 휴대 전화기(1920)는 안테나(1921), 통신부(1922), 음성 코덱(1923), 스피커(1924), 마이크로폰(1925), 카메라부(1926), 화상 처리부(1927), 다중 분리부(1928), 기록 재생부(1929), 표시부(1930), 제어부(1931), 조작부(1932) 및 버스(1933)를 구비한다.
안테나(1921)는 통신부(1922)에 접속된다. 스피커(1924) 및 마이크로폰(1925)은 음성 코덱(1923)에 접속된다. 조작부(1932)는 제어부(1931)에 접속된다. 버스(1933)는 통신부(1922), 음성 코덱(1923), 카메라부(1926), 화상 처리부(1927), 다중 분리부(1928), 기록 재생부(1929), 표시부(1930) 및 제어부(1931)를 서로 접속한다.
휴대 전화기(1920)는 음성 통화 모드, 데이터 통신 모드, 촬영 모드 및 텔레비전 전화 모드를 포함하는 다양한 동작 모드에서, 음성 신호의 송수신, 전자 메일 또는 화상 데이터의 송수신, 화상의 촬상 및 데이터의 기록 등의 동작을 행한다.
음성 통화 모드에서, 마이크로폰(1925)에 의해 생성되는 아날로그 음성 신호는 음성 코덱(1923)에 공급된다. 음성 코덱(1923)은 아날로그 음성 신호를 음성 데이터로 변환하고, 변환된 음성 데이터를 A/D 변환하여 압축한다. 그리고, 음성 코덱(1923)은 압축 후의 음성 데이터를 통신부(1922)에 출력한다. 통신부(1922)는 음성 데이터를 부호화 및 변조하여, 송신 신호를 생성한다. 그리고, 통신부(1922)는, 생성한 송신 신호를, 안테나(1921)를 통해서 기지국(도시하지 않음)에 송신한다. 또한, 통신부(1922)는 안테나(1921)를 통해서 수신되는 무선 신호를 증폭하고 및 주파수 변환하여, 수신 신호를 취득한다. 그리고, 통신부(1922)는 수신 신호를 복조 및 복호하여 음성 데이터를 생성하고, 생성한 음성 데이터를 음성 코덱(1923)에 출력한다. 음성 코덱(1923)은, 음성 데이터를 신장하고 및 D/A 변환하여, 아날로그 음성 신호를 생성한다. 그리고, 음성 코덱(1923)은 생성한 음성 신호를 스피커(1924)에 공급하여 음성을 출력시킨다.
또한, 데이터 통신 모드에서, 예를 들어 제어부(1931)는, 조작부(1932)를 통한 유저에 의한 조작에 따라서, 전자 메일을 구성하는 문자 데이터를 생성한다. 또한, 제어부(1931)는 문자를 표시부(1930)에 표시시킨다. 또한, 제어부(1931)는, 조작부(1932)를 통한 유저로부터의 송신 지시에 따라서 전자 메일 데이터를 생성하고, 생성한 전자 메일 데이터를 통신부(1922)에 출력한다. 통신부(1922)는 전자 메일 데이터를 부호화 및 변조하여, 송신 신호를 생성한다. 그리고, 통신부(1922)는, 생성한 송신 신호를, 안테나(1921)를 통해서 기지국(도시하지 않음)에 송신한다. 또한, 통신부(1922)는, 안테나(1921)를 통해서 수신되는 무선 신호를 증폭하고 및 주파수 변환하여, 수신 신호를 취득한다. 그리고, 통신부(1922)는 수신 신호를 복조 및 복호하여 전자 메일 데이터를 복원하고, 복원한 전자 메일 데이터를 제어부(1931)에 출력한다. 제어부(1931)는 표시부(1930)에 전자 메일의 내용을 표시시킴과 함께, 전자 메일 데이터를 기록 재생부(1929)에 공급하여, 그 기억 매체에 기입시킨다.
기록 재생부(1929)는 판독 기입 가능한 임의의 기억 매체를 갖는다. 예를 들어, 기억 매체는 RAM 또는 플래시 메모리 등의 내장형 기억 매체이어도 되고, 하드 디스크, 자기 디스크, 광자기 디스크, 광 디스크, USB(Universal Serial Bus) 메모리, 또는 메모리 카드 등의 외부 장착형 기억 매체이어도 된다.
또한, 촬영 모드에서, 예를 들어 카메라부(1926)는 피사체를 촬상하여 화상 데이터를 생성하고, 생성한 화상 데이터를 화상 처리부(1927)에 출력한다. 화상 처리부(1927)는 카메라부(1926)로부터 입력되는 화상 데이터를 부호화하고, 부호화 스트림을 기록 재생부(1929)에 공급하여, 그 기억 매체에 기입시킨다. 또한, 화상 표시 모드에서, 기록 재생부(1929)는, 기억 매체에 기록되어 있는 부호화 스트림을 판독하여 화상 처리부(1927)에 출력한다. 화상 처리부(1927)는 기록 재생부(1929)로부터 입력되는 부호화 스트림을 복호하고, 화상 데이터를 표시부(1930)에 공급하여, 그 화상을 표시시킨다.
또한, 텔레비전 전화 모드에서, 예를 들어 다중 분리부(1928)는 화상 처리부(1927)에 의해 부호화된 영상 스트림과, 음성 코덱(1923)으로부터 입력되는 음성 스트림을 다중화하고, 다중화한 스트림을 통신부(1922)에 출력한다. 통신부(1922)는 스트림을 부호화 및 변조하여, 송신 신호를 생성한다. 그리고, 통신부(1922)는, 생성한 송신 신호를, 안테나(1921)를 통해서 기지국(도시하지 않음)에 송신한다. 또한, 통신부(1922)는 안테나(1921)를 통해서 수신되는 무선 신호를 증폭하고 및 주파수 변환하여, 수신 신호를 취득한다. 이들 송신 신호 및 수신 신호에는 부호화 비트 스트림이 포함될 수 있다. 그리고, 통신부(1922)는 수신 신호를 복조 및 복호하여 스트림을 복원하고, 복원한 스트림을 다중 분리부(1928)에 출력한다. 다중 분리부(1928)는, 입력되는 스트림으로부터 영상 스트림 및 음성 스트림을 분리하여, 영상 스트림을 화상 처리부(1927), 음성 스트림을 음성 코덱(1923)에 출력한다. 화상 처리부(1927)는, 영상 스트림을 복호하여, 영상 데이터를 생성한다. 영상 데이터는, 표시부(1930)에 공급되어, 표시부(1930)에 의해 일련의 화상이 표시된다. 음성 코덱(1923)은 음성 스트림을 신장하고 및 D/A 변환하여, 아날로그 음성 신호를 생성한다. 그리고, 음성 코덱(1923)은, 생성한 음성 신호를 스피커(1924)에 공급하여 음성을 출력시킨다.
이와 같이 구성된 휴대 전화기(1920)에 있어서, 화상 처리부(1927)는, 상술한 실시 형태에 따른 스케일러블 부호화 장치(100) 및 스케일러블 복호 장치(200), 또는, 화상 부호화 장치(900)(도 62) 및 화상 복호 장치(1000)(도 71)의 기능을 갖는다. 그것에 의해, 휴대 전화기(1920)에서의 화상의 부호화 및 복호 시에, 부호화 효율의 저감을 억제하여, 부호화ㆍ복호에 의한 화질의 저감을 억제할 수 있다.
<제3 응용예 : 기록 재생 장치>
도 86은 상술한 실시 형태를 적용한 기록 재생 장치의 개략적인 구성의 일례를 나타내고 있다. 기록 재생 장치(1940)는, 예를 들어 수신한 방송 프로그램의 음성 데이터 및 영상 데이터를 부호화하여 기록 매체에 기록한다. 또한, 기록 재생 장치(1940)는, 예를 들어 다른 장치로부터 취득되는 음성 데이터 및 영상 데이터를 부호화하여 기록 매체에 기록해도 된다. 또한, 기록 재생 장치(1940)는, 예를 들어 유저의 지시에 따라서, 기록 매체에 기록되어 있는 데이터를 모니터 및 스피커 상에서 재생한다. 이때, 기록 재생 장치(1940)는 음성 데이터 및 영상 데이터를 복호한다.
기록 재생 장치(1940)는 튜너(1941), 외부 인터페이스(I/F)부(1942), 인코더(1943), HDD(Hard Disk Drive)(1944), 디스크 드라이브(1945), 셀렉터(1946), 디코더(1947), OSD(On-Screen Display)(1948), 제어부(1949) 및 유저 인터페이스(I/F)부(1950)를 구비한다.
튜너(1941)는 안테나(도시하지 않음)를 통해서 수신되는 방송 신호로부터 원하는 채널의 신호를 추출하고, 추출한 신호를 복조한다. 그리고, 튜너(1941)는 복조에 의해 얻어진 부호화 비트 스트림을 셀렉터(1946)에 출력한다. 즉, 튜너(1941)는 기록 재생 장치(1940)에 있어서의 전송부로서의 역할을 갖는다.
외부 인터페이스부(1942)는 기록 재생 장치(1940)와 외부 기기 또는 네트워크를 접속하기 위한 인터페이스이다. 외부 인터페이스부(1942)는, 예를 들어IEEE(Institute of Electrical and Electronic Engineers)1394 인터페이스, 네트워크 인터페이스, USB 인터페이스, 또는 플래시 메모리 인터페이스 등이어도 된다. 예를 들어, 외부 인터페이스부(1942)를 통해서 수신되는 영상 데이터 및 음성 데이터는 인코더(1943)에 입력된다. 즉, 외부 인터페이스부(1942)는 기록 재생 장치(1940)에 있어서의 전송부로서의 역할을 갖는다.
인코더(1943)는, 외부 인터페이스부(1942)로부터 입력되는 영상 데이터 및 음성 데이터가 부호화되어 있지 않은 경우에, 영상 데이터 및 음성 데이터를 부호화한다. 그리고, 인코더(1943)는 부호화 비트 스트림을 셀렉터(1946)에 출력한다.
HDD(1944)는 영상 및 음성 등의 콘텐츠 데이터가 압축된 부호화 비트 스트림, 각종 프로그램 및 그 밖의 데이터를 내부의 하드 디스크에 기록한다. 또한, HDD(1944)는 영상 및 음성의 재생 시에, 이들 데이터를 하드 디스크로부터 판독한다.
디스크 드라이브(1945)는, 장착되어 있는 기록 매체에의 데이터의 기록 및 판독을 행한다. 디스크 드라이브(1945)에 장착되는 기록 매체는, 예를 들어 DVD(Digital Versatile Disc) 디스크(DVD-Video, DVD-RAM(DVD-Random Access Memory), DVD-R(DVD-Recordable), DVD-RW(DVD-Rewritable), DVD+R(DVD+Recordable), DVD+RW(DVD+Rewritable) 등) 또는 Blu-ray(등록상표) 디스크 등이어도 된다.
셀렉터(1946)는, 영상 및 음성의 기록 시에는, 튜너(1941) 또는 인코더(1943)로부터 입력되는 부호화 비트 스트림을 선택하고, 선택한 부호화 비트 스트림을 HDD(1944) 또는 디스크 드라이브(1945)에 출력한다. 또한, 셀렉터(1946)는, 영상 및 음성의 재생 시에는, HDD(1944) 또는 디스크 드라이브(1945)로부터 입력되는 부호화 비트 스트림을 디코더(1947)에 출력한다.
디코더(1947)는 부호화 비트 스트림을 복호하여, 영상 데이터 및 음성 데이터를 생성한다. 그리고, 디코더(1947)는 생성한 영상 데이터를 OSD(1948)에 출력한다. 또한, 디코더(1947)는 생성한 음성 데이터를 외부의 스피커에 출력한다.
OSD(1948)는 디코더(1947)로부터 입력되는 영상 데이터를 재생하여, 영상을 표시한다. 또한, OSD(1948)는, 표시하는 영상에, 예를 들어 메뉴, 버튼 또는 커서 등의 GUI의 화상을 중첩해도 된다.
제어부(1949)는 CPU 등의 프로세서, 및 RAM 및 ROM 등의 메모리를 갖는다. 메모리는 CPU에 의해 실행되는 프로그램 및 프로그램 데이터 등을 기억한다. 메모리에 의해 기억되는 프로그램은, 예를 들어 기록 재생 장치(1940)의 기동 시에 CPU에 의해 읽어들여져, 실행된다. CPU는 프로그램을 실행함으로써, 예를 들어 유저 인터페이스부(1950)로부터 입력되는 조작 신호에 따라서, 기록 재생 장치(1940)의 동작을 제어한다.
유저 인터페이스부(1950)는 제어부(1949)와 접속된다. 유저 인터페이스부(1950)는, 예를 들어 유저가 기록 재생 장치(1940)를 조작하기 위한 버튼 및 스위치, 및 원격 제어 신호의 수신부 등을 갖는다. 유저 인터페이스부(1950)는, 이들 구성 요소를 통해서 유저에 의한 조작을 검출하여 조작 신호를 생성하고, 생성한 조작 신호를 제어부(1949)에 출력한다.
이와 같이 구성된 기록 재생 장치(1940)에 있어서, 인코더(1943)는, 상술한 실시 형태에 따른 스케일러블 부호화 장치(100) 또는 화상 부호화 장치(900)(도 62)의 기능을 갖는다. 또한, 디코더(1947)는, 상술한 실시 형태에 따른 스케일러블 복호 장치(200) 또는 화상 복호 장치(1000)(도 71)의 기능을 갖는다. 그것에 의해, 기록 재생 장치(1940)에서의 화상의 부호화 및 복호 시에, 부호화 효율의 저감을 억제하여, 부호화ㆍ복호에 의한 화질의 저감을 억제할 수 있다.
<제4 응용예 : 촬상 장치>
도 87은 상술한 실시 형태를 적용한 촬상 장치의 개략적인 구성의 일례를 나타내고 있다. 촬상 장치(1960)는 피사체를 촬상하여 화상을 생성하고, 화상 데이터를 부호화하여 기록 매체에 기록한다.
촬상 장치(1960)는 광학 블록(1961), 촬상부(1962), 신호 처리부(1963), 화상 처리부(1964), 표시부(1965), 외부 인터페이스(I/F)부(1966), 메모리부(1967), 미디어 드라이브(1968), OSD(1969), 제어부(1970), 유저 인터페이스(I/F)부(1971) 및 버스(1972)를 구비한다.
광학 블록(1961)은 촬상부(1962)에 접속된다. 촬상부(1962)는 신호 처리부(1963)에 접속된다. 표시부(1965)는 화상 처리부(1964)에 접속된다. 유저 인터페이스부(1971)는 제어부(1970)에 접속된다. 버스(1972)는 화상 처리부(1964), 외부 인터페이스부(1966), 메모리부(1967), 미디어 드라이브(1968), OSD(1969) 및 제어부(1970)를 서로 접속한다.
광학 블록(1961)은 포커스 렌즈 및 조리개 기구 등을 갖는다. 광학 블록(1961)은 피사체의 광학상을 촬상부(1962)의 촬상면에 결상시킨다. 촬상부(1962)는 CCD(Charge Coupled Device) 또는 CMOS(Complementary Metal Oxide Semiconductor) 등의 이미지 센서를 갖고, 촬상면에 결상한 광학상을 광전 변환에 의해 전기 신호로서의 화상 신호로 변환한다. 그리고, 촬상부(1962)는 화상 신호를 신호 처리부(1963)에 출력한다.
신호 처리부(1963)는 촬상부(1962)로부터 입력되는 화상 신호에 대하여 니 보정, 감마 보정, 색 보정 등의 다양한 카메라 신호 처리를 행한다. 신호 처리부(1963)는 카메라 신호 처리 후의 화상 데이터를 화상 처리부(1964)에 출력한다.
화상 처리부(1964)는 신호 처리부(1963)로부터 입력되는 화상 데이터를 부호화하여, 부호화 데이터를 생성한다. 그리고, 화상 처리부(1964)는, 생성한 부호화 데이터를 외부 인터페이스부(1966) 또는 미디어 드라이브(1968)에 출력한다. 또한, 화상 처리부(1964)는 외부 인터페이스부(1966) 또는 미디어 드라이브(1968)로부터 입력되는 부호화 데이터를 복호하여, 화상 데이터를 생성한다. 그리고, 화상 처리부(1964)는 생성한 화상 데이터를 표시부(1965)에 출력한다. 또한, 화상 처리부(1964)는 신호 처리부(1963)로부터 입력되는 화상 데이터를 표시부(1965)에 출력하여 화상을 표시시켜도 된다. 또한, 화상 처리부(1964)는, OSD(1969)로부터 취득되는 표시용 데이터를, 표시부(1965)에 출력하는 화상에 중첩해도 된다.
OSD(1969)는, 예를 들어 메뉴, 버튼 또는 커서 등의 GUI의 화상을 생성하고, 생성한 화상을 화상 처리부(1964)에 출력한다.
외부 인터페이스부(1966)는, 예를 들어 USB 입출력 단자로서 구성된다. 외부 인터페이스부(1966)는, 예를 들어 화상의 인쇄 시에, 촬상 장치(1960)와 프린터를 접속한다. 또한, 외부 인터페이스부(1966)에는, 예를 들어 필요에 따라서 드라이브가 접속된다. 드라이브에는, 예를 들어 자기 디스크 또는 광 디스크 등의 리무버블 미디어가 장착되고, 리무버블 미디어로부터 판독되는 프로그램이, 촬상 장치(1960)에 인스톨될 수 있다. 또한, 외부 인터페이스부(1966)는 LAN 또는 인터넷 등의 네트워크에 접속되는 네트워크 인터페이스로서 구성되어도 된다. 즉, 외부 인터페이스부(1966)는 촬상 장치(1960)에 있어서의 전송부로서의 역할을 갖는다.
미디어 드라이브(1968)에 장착되는 기록 매체는, 예를 들어 자기 디스크, 광자기 디스크, 광 디스크, 또는 반도체 메모리 등의, 판독 기입 가능한 임의의 리무버블 미디어이어도 된다. 또한, 미디어 드라이브(1968)에 기록 매체가 고정적으로 장착되어, 예를 들어 내장형 하드디스크 드라이브 또는 SSD(Solid State Drive)와 같은 비가반성의 기억부가 구성되어도 된다.
제어부(1970)는 CPU 등의 프로세서, 및 RAM 및 ROM 등의 메모리를 갖는다. 메모리는 CPU에 의해 실행되는 프로그램 및 프로그램 데이터 등을 기억한다. 메모리에 의해 기억되는 프로그램은, 예를 들어 촬상 장치(1960)의 기동 시에 CPU에 의해 읽어들여져, 실행된다. CPU는 프로그램을 실행함으로써, 예를 들어 유저 인터페이스부(1971)로부터 입력되는 조작 신호에 따라서, 촬상 장치(1960)의 동작을 제어한다.
유저 인터페이스부(1971)는 제어부(1970)와 접속된다. 유저 인터페이스부(1971)는, 예를 들어 유저가 촬상 장치(1960)를 조작하기 위한 버튼 및 스위치 등을 갖는다. 유저 인터페이스부(1971)는, 이들 구성 요소를 통해서 유저에 의한 조작을 검출하여 조작 신호를 생성하고, 생성한 조작 신호를 제어부(1970)에 출력한다.
이와 같이 구성된 촬상 장치(1960)에 있어서, 화상 처리부(1964)는, 상술한 실시 형태에 따른 스케일러블 부호화 장치(100) 및 스케일러블 복호 장치(200) 또는 화상 부호화 장치(900)(도 62) 및 화상 복호 장치(1000)(도 71)의 기능을 갖는다. 그것에 의해, 촬상 장치(1960)에서의 화상의 부호화 및 복호 시에, 부호화 효율의 저감을 억제하여, 부호화ㆍ복호에 의한 화질의 저감을 억제할 수 있다.
<17. 스케일러블 부호화의 응용예>
<제1 시스템>
다음에, 스케일러블 부호화(계층(화상) 부호화)된 스케일러블 부호화 데이터의 구체적인 이용예에 대하여 설명한다. 스케일러블 부호화는, 예를 들어 도 88에 도시한 예와 같이, 전송하는 데이터의 선택을 위해서 이용된다.
도 88에 도시한 데이터 전송 시스템(2000)에 있어서, 배신 서버(2002)는 스케일러블 부호화 데이터 기억부(2001)에 기억되어 있는 스케일러블 부호화 데이터를 판독하고, 네트워크(2003)를 통해서, 퍼스널 컴퓨터(2004), AV 기기(2005), 태블릿 디바이스(2006) 및 휴대 전화기(2007) 등의 단말 장치에 배신한다.
그때, 배신 서버(2002)는, 단말 장치의 능력이나 통신 환경 등에 따라서, 적절한 품질의 부호화 데이터를 선택하여 전송한다. 배신 서버(2002)가 불필요하게 고품질의 데이터를 전송해도, 단말 장치에 있어서 고화질의 화상이 얻어진다고는 할 수 없고, 지연이나 오버플로우의 발생 요인으로 될 우려가 있다. 또한, 불필요하게 통신 대역을 점유하거나, 단말 장치의 부하를 불필요하게 증대시키거나 해 버릴 우려도 있다. 반대로, 배신 서버(2002)가 불필요하게 저품질의 데이터를 전송해도, 단말 장치에 있어서 충분한 화질의 화상을 얻을 수 없을 우려가 있다. 그 때문에, 배신 서버(2002)는, 스케일러블 부호화 데이터 기억부(2001)에 기억되어 있는 스케일러블 부호화 데이터를, 적절히, 단말 장치의 능력이나 통신 환경 등에 대하여 적절한 품질의 부호화 데이터로서 판독하고, 전송한다.
예를 들어, 스케일러블 부호화 데이터 기억부(2001)는 스케일러블하게 부호화된 스케일러블 부호화 데이터(BL+EL)(2011)를 기억한다고 하자. 이 스케일러블 부호화 데이터(BL+EL)(2011)는 베이스 레이어와 인핸스먼트 레이어의 양쪽을 포함하는 부호화 데이터이며, 복호함으로써, 베이스 레이어의 화상 및 인핸스먼트 레이어의 화상의 양쪽을 얻을 수 있는 데이터이다.
배신 서버(2002)는 데이터를 전송하는 단말 장치의 능력이나 통신 환경 등에 따라서, 적절한 레이어를 선택하고, 그 레이어의 데이터를 판독한다. 예를 들어, 배신 서버(2002)는 처리 능력이 높은 퍼스널 컴퓨터(2004)나 태블릿 디바이스(2006)에 대해서는, 고품질의 스케일러블 부호화 데이터(BL+EL)(2011)를 스케일러블 부호화 데이터 기억부(2001)로부터 판독하고, 그대로 전송한다. 이에 반해, 예를 들어 배신 서버(2002)는 처리 능력이 낮은 AV 기기(2005)나 휴대 전화기(2007)에 대해서는, 스케일러블 부호화 데이터(BL+EL)(2011)로부터 베이스 레이어의 데이터를 추출하고, 스케일러블 부호화 데이터(BL+EL)(2011)와 동일한 콘텐츠의 데이터이지만, 스케일러블 부호화 데이터(BL+EL)(2011)보다도 저품질의 스케일러블 부호화 데이터(BL)(2012)로서 전송한다.
이와 같이 스케일러블 부호화 데이터를 사용함으로써, 데이터량을 용이하게 조정할 수 있으므로, 지연이나 오버플로우의 발생을 억제하거나, 단말 장치나 통신 매체의 부하의 불필요한 증대를 억제하거나 할 수 있다. 또한, 스케일러블 부호화 데이터(BL+EL)(2011)는 레이어간의 용장성이 저감되어 있으므로, 각 레이어의 부호화 데이터를 개별의 데이터로 하는 경우보다도 그 데이터량을 저감시킬 수 있다. 따라서, 스케일러블 부호화 데이터 기억부(2001)의 기억 영역을 보다 효율적으로 사용할 수 있다.
또한, 퍼스널 컴퓨터(2004) 내지 휴대 전화기(2007)와 같이, 단말 장치에는 다양한 장치를 적용할 수 있으므로, 단말 장치의 하드웨어 성능은 장치에 따라서 다르다. 또한, 단말 장치가 실행하는 애플리케이션도 다양하므로, 그 소프트웨어의 능력도 다양하다. 또한, 통신 매체로 되는 네트워크(2003)도, 예를 들어 인터넷이나 LAN(Local Area Network) 등, 유선 혹은 무선, 또는 그 양쪽을 포함하는 모든 통신 회선망을 적용할 수 있어, 그 데이터 전송 능력은 다양하다. 또한, 다른 통신 등에 의해서도 변화될 우려가 있다.
따라서, 배신 서버(2002)는 데이터 전송을 개시하기 전에, 데이터의 전송처로 되는 단말기 장치와 통신을 행하여, 단말 장치의 하드웨어 성능이나, 단말 장치가 실행하는 애플리케이션(소프트웨어)의 성능 등과 같은 단말 장치의 능력에 관한 정보, 및, 네트워크(2003)의 이용 가능 대역폭 등의 통신 환경에 관한 정보를 얻도록 해도 된다. 그리고, 배신 서버(2002)가, 여기에서 얻은 정보를 기초로, 적절한 레이어를 선택하도록 해도 된다.
또한, 레이어의 추출은 단말 장치에 있어서 행하도록 해도 된다. 예를 들어, 퍼스널 컴퓨터(2004)가, 전송된 스케일러블 부호화 데이터(BL+EL)(2011)를 복호하여, 베이스 레이어의 화상을 표시해도 되고, 인핸스먼트 레이어의 화상을 표시해도 된다. 또한, 예를 들어 퍼스널 컴퓨터(2004)가, 전송된 스케일러블 부호화 데이터(BL+EL)(2011)로부터, 베이스 레이어의 스케일러블 부호화 데이터(BL)(2012)를 추출하여, 기억하거나, 다른 장치에 전송하거나, 복호하여 베이스 레이어의 화상을 표시하거나 하도록 해도 된다.
물론, 스케일러블 부호화 데이터 기억부(2001), 배신 서버(2002), 네트워크(2003) 및 단말 장치의 수는 모두 임의이다. 또한, 이상에 있어서는, 배신 서버(2002)가 데이터를 단말 장치에 전송하는 예에 대하여 설명하였지만, 이용예는 이것에 한정되지 않는다. 데이터 전송 시스템(2000)은, 스케일러블 부호화된 부호화 데이터를 단말 장치에 전송할 때, 단말 장치의 능력이나 통신 환경 등에 따라서, 적절한 레이어를 선택하여 전송하는 시스템이면, 임의의 시스템에 적용할 수 있다.
그리고, 도 88과 같은 데이터 전송 시스템(2000)에 있어서도, 도 1 내지 도 80을 참조하여 상술한 계층 부호화ㆍ계층 복호에의 적용과 마찬가지로 본 기술을 적용함으로써, 도 1 내지 도 80을 참조하여 상술한 효과와 마찬가지의 효과를 얻을 수 있다.
<제2 시스템>
또한, 스케일러블 부호화는, 예를 들어 도 89에 도시한 예와 같이, 복수의 통신 매체를 통한 전송을 위해서 이용된다.
도 89에 도시한 데이터 전송 시스템(2100)에 있어서, 방송국(2101)은 지상파 방송(2111)에 의해, 베이스 레이어의 스케일러블 부호화 데이터(BL)(2121)를 전송한다. 또한, 방송국(2101)은, 유선 혹은 무선 또는 그 양쪽의 통신망을 포함하는 임의의 네트워크(2112)를 통해서, 인핸스먼트 레이어의 스케일러블 부호화 데이터(EL)(2122)를 전송한다(예를 들어 패킷화하여 전송한다).
단말 장치(2102)는 방송국(2101)이 방송하는 지상파 방송(2111)의 수신 기능을 갖고, 이 지상파 방송(2111)을 통해서 전송되는 베이스 레이어의 스케일러블 부호화 데이터(BL)(2121)를 수취한다. 또한, 단말 장치(2102)는 네트워크(2112)를 통한 통신을 행하는 통신 기능을 더 갖고, 이 네트워크(2112)를 통해서 전송되는 인핸스먼트 레이어의 스케일러블 부호화 데이터(EL)(2122)를 수취한다.
단말 장치(2102)는 예를 들어 유저 지시 등에 따라, 지상파 방송(2111)을 통해서 취득한 베이스 레이어의 스케일러블 부호화 데이터(BL)(2121)를, 복호해서 베이스 레이어의 화상을 얻거나, 기억하거나, 다른 장치로 전송하거나 한다.
또한, 단말 장치(2102)는 예를 들어 유저 지시 등에 따라, 지상파 방송(2111)을 통해서 취득한 베이스 레이어의 스케일러블 부호화 데이터(BL)(2121)와, 네트워크(2112)를 통해서 취득한 인핸스먼트 레이어의 스케일러블 부호화 데이터(EL)(2122)를 합성하여, 스케일러블 부호화 데이터(BL+EL)를 얻거나, 그것을 복호해서 인핸스먼트 레이어의 화상을 얻거나, 기억하거나, 다른 장치로 전송하거나 한다.
이상과 같이, 스케일러블 부호화 데이터는, 예를 들어 레이어마다 다른 통신 매체를 통해서 전송시킬 수 있다. 따라서, 부하를 분산시킬 수 있고, 지연이나 오버플로우의 발생을 억제할 수 있다.
또한, 상황에 따라, 전송에 사용하는 통신 매체를, 레이어마다 선택할 수 있도록 해도 된다. 예를 들어 데이터량이 비교적 많은 베이스 레이어의 스케일러블 부호화 데이터(BL)(2121)를 대역폭이 넓은 통신 매체를 통해서 전송시키고, 데이터량이 비교적 적은 인핸스먼트 레이어의 스케일러블 부호화 데이터(EL)(2122)를 대역폭이 좁은 통신 매체를 통해서 전송시키도록 해도 된다. 또한, 예를 들어 인핸스먼트 레이어의 스케일러블 부호화 데이터(EL)(2122)를 전송하는 통신 매체를, 네트워크(2112)로 할지, 지상파 방송(2111)으로 할지를, 네트워크(2112)의 이용 가능 대역폭에 따라서 전환하도록 해도 된다. 물론, 임의의 레이어의 데이터에 대해서 마찬가지이다.
이와 같이 제어함으로써, 데이터 전송에 있어서의 부하의 증대를, 보다 억제할 수 있다.
물론, 레이어수는 임의이며, 전송에 이용하는 통신 매체의 수도 임의이다. 또한, 데이터 배신처로 되는 단말 장치(2102)의 수도 임의이다. 또한, 이상에 있어서는, 방송국(2101)으로부터의 방송을 예로 들어 설명했지만, 이용예는 이것에 한정되지 않는다. 데이터 전송 시스템(2100)은 스케일러블 부호화된 부호화 데이터를, 레이어를 단위로 해서 복수로 분할하고, 복수의 회선을 통해서 전송하는 시스템이면, 임의의 시스템에 적용할 수 있다.
그리고, 이상과 같은 도 89와 같은 데이터 전송 시스템(2100)에 있어서도, 도 1 내지 도 80을 참조하여 상술한 계층 부호화·계층 복호에의 적용과 마찬가지로 본 기술을 적용함으로써, 도 1 내지 도 80을 참조하여 상술한 효과와 마찬가지 효과를 얻을 수 있다.
<제3 시스템>
또한, 스케일러블 부호화는, 예를 들어 도 90에 도시한 예와 같이, 부호화 데이터의 기억에 이용된다.
도 90에 도시하는 촬상 시스템(2200)에 있어서, 촬상 장치(2201)는 피사체(2211)를 촬상해서 얻어진 화상 데이터를 스케일러블 부호화하고, 스케일러블 부호화 데이터(BL+EL)(2221)로서, 스케일러블 부호화 데이터 기억 장치(2202)에 공급한다.
스케일러블 부호화 데이터 기억 장치(2202)는 촬상 장치(2201)로부터 공급되는 스케일러블 부호화 데이터(BL+EL)(2221)를, 상황에 따른 품질로 기억한다. 예를 들어 통상 시의 경우, 스케일러블 부호화 데이터 기억 장치(2202)는 스케일러블 부호화 데이터(BL+EL)(2221)로부터 베이스 레이어의 데이터를 추출하고, 저품질이고 데이터량이 적은 베이스 레이어의 스케일러블 부호화 데이터(BL)(2222)로서 기억한다. 이에 반해, 예를 들어 주목 시의 경우, 스케일러블 부호화 데이터 기억 장치(2202)는 고품질이고 데이터량이 많은 스케일러블 부호화 데이터(BL+EL)(2221) 그대로 기억한다.
이와 같이 함으로써, 스케일러블 부호화 데이터 기억 장치(2202)는 필요한 경우만, 화상을 고화질로 보존할 수 있으므로, 화질 열화에 의한 화상 가치의 저감을 억제하면서, 데이터량의 증대를 억제할 수 있고, 기억 영역의 이용 효율을 향상시킬 수 있다.
예를 들어 촬상 장치(2201)가 감시 카메라라 하자. 촬상 화상에 감시 대상(예를 들어 침입자)이 찍히지 않은 경우(통상 시의 경우), 촬상 화상의 내용은 중요하지 않을 가능성이 높으므로, 데이터량의 저감이 우선되어, 그 화상 데이터(스케일러블 부호화 데이터)는 저품질로 기억된다. 이에 반해, 촬상 화상에 감시 대상이 피사체(2211)로서 찍힌 경우(주목 시의 경우), 그 촬상 화상의 내용은 중요할 가능성이 높으므로, 화질이 우선되어, 그 화상 데이터(스케일러블 부호화 데이터)는 고품질로 기억된다.
또한, 통상 시인지 주목 시인지는, 예를 들어 스케일러블 부호화 데이터 기억 장치(2202)가 화상을 해석함으로써 판정해도 된다. 또한, 촬상 장치(2201)가 판정하고, 그 판정 결과를 스케일러블 부호화 데이터 기억 장치(2202)로 전송하도록 해도 된다.
또한, 통상 시인지 주목 시인지의 판정 기준은 임의이며, 판정 기준으로 하는 화상의 내용은 임의이다. 물론, 화상의 내용 이외의 조건을 판정 기준으로 할 수도 있다. 예를 들어 수록한 음성의 크기나 파형 등에 따라서 전환하도록 해도 되고, 소정의 시일마다 전환하도록 해도 되고, 유저 지시 등의 외부로부터의 지시에 의해 전환하도록 해도 된다.
또한, 이상에 있어서는, 통상 시와 주목 시의 2개의 상태를 전환하는 예를 설명했지만, 상태의 수는 임의이며, 예를 들어 통상 시, 약간 주목 시, 주목 시, 매우 주목 시 등과 같이, 3개 이상의 상태를 전환하도록 해도 된다. 단, 이 전환하는 상태의 상한수는, 스케일러블 부호화 데이터의 레이어수에 의존한다.
또한, 촬상 장치(2201)가 스케일러블 부호화의 레이어수를, 상태에 따라서 결정하도록 해도 된다. 예를 들어 통상 시의 경우, 촬상 장치(2201)가 저품질이고 데이터량이 적은 베이스 레이어의 스케일러블 부호화 데이터(BL)(2222)를 생성하고, 스케일러블 부호화 데이터 기억 장치(2202)에 공급하도록 해도 된다. 또한, 예를 들어 주목 시의 경우, 촬상 장치(2201)가 고품질이고 데이터량이 많은 베이스 레이어의 스케일러블 부호화 데이터(BL+EL)(2221)를 생성하고, 스케일러블 부호화 데이터 기억 장치(2202)에 공급하도록 해도 된다.
이상에 있어서는, 감시 카메라를 예로 들어 설명했지만, 이 촬상 시스템(2200)의 용도는 임의이며, 감시 카메라에 한정되지 않는다.
그리고, 도 90과 같은 촬상 시스템(2200)에 있어서도, 도 1 내지 도 80을 참조하여 상술한 계층 부호화·계층 복호에의 적용과 마찬가지로 본 기술을 적용함으로써, 도 1 내지 도 80을 참조하여 상술한 효과와 마찬가지 효과를 얻을 수 있다.
또한, 본 기술은, 미리 준비된 해상도 등이 서로 다른 복수의 부호화 데이터 중에서 적절한 것을 세그먼트 단위로 선택해서 사용하는, 예를 들어 MPEG DASH 등과 같은 HTTP 스트리밍에도 적용할 수 있다. 즉, 이러한 복수의 부호화 데이터 사이에서, 부호화나 복호에 관한 정보를 공유할 수도 있다.
<18. 제13 실시 형태>
<실시의 그 밖의 예>
이상에 있어서 본 기술을 적용하는 장치나 시스템 등의 예를 설명했지만, 본 기술은, 이에 한정하지 않고, 이러한 장치 또는 시스템을 구성하는 장치에 탑재하는 모든 구성, 예를 들어 시스템 LSI(Large Scale Integration) 등으로서의 프로세서, 복수의 프로세서 등을 사용하는 모듈, 복수의 모듈 등을 사용하는 유닛, 유닛에 그 밖의 기능을 더 부가한 세트 등(즉, 장치의 일부 구성)으로서 실시할 수도 있다.
<비디오 세트>
본 기술을 세트로 해서 실시하는 경우의 예에 대해서, 도 91을 참조하여 설명한다. 도 91은 본 기술을 적용한 비디오 세트의 개략적인 구성의 일례를 나타내고 있다.
최근 들어, 전자 기기의 다기능화가 진행되고 있고, 그 개발이나 제조에 있어서, 그 일부 구성을 판매나 제공 등으로서 실시하는 경우, 1 기능을 갖는 구성으로서 실시를 행하는 경우뿐만 아니라, 관련된 기능을 갖는 복수의 구성을 조합하여, 복수의 기능을 갖는 1 세트로서 실시를 행하는 경우도 많이 볼 수 있게 되었다.
도 91에 도시하는 비디오 세트(2300)는 이러한 다기능화된 구성이며, 화상의 부호화나 복호(어느 한쪽이어도 되고, 양쪽이어도 된다)에 관한 기능을 갖는 디바이스에, 그 기능에 관련된 그 밖의 기능을 갖는 디바이스를 조합한 것이다.
도 91에 도시한 바와 같이, 비디오 세트(2300)는 비디오 모듈(2311), 외부 메모리(2312), 파워 매니지먼트 모듈(2313) 및 프론트엔드 모듈(2314) 등 모듈군과, 커넥티비티(2321), 카메라(2322) 및 센서(2323) 등 관련된 기능을 갖는 디바이스를 갖는다.
모듈은, 서로 관련된 몇가지의 부품적 기능을 묶어, 통합된 기능을 가진 부품으로 한 것이다. 구체적인 물리적 구성은 임의이지만, 예를 들어 각각 기능을 갖는 복수의 프로세서, 저항이나 콘덴서 등 전자 회로 소자, 그 밖의 디바이스 등을 배선 기판 등에 배치해서 일체화된 것이 생각된다. 또한, 모듈에 다른 모듈이나 프로세서 등을 조합해서 새로운 모듈로 하는 것도 생각된다.
도 91의 예의 경우, 비디오 모듈(2311)은 화상 처리에 관한 기능을 갖는 구성을 조합한 것이며, 애플리케이션 프로세서(2331), 비디오 프로세서(2332), 브로드밴드 모뎀(2333) 및 RF 모듈(2334)을 갖는다.
프로세서는, 소정의 기능을 갖는 구성을 SoC(System On a Chip)에 의해 반도체 칩에 집적한 것이며, 예를 들어 시스템 LSI(Large Scale Integration) 등으로 칭해지는 것도 있다. 이 소정의 기능을 갖는 구성은, 논리 회로(하드웨어 구성)여도 되고, CPU, ROM, RAM 등과, 그들을 사용해서 실행되는 프로그램(소프트웨어 구성)이어도 되고, 그 양쪽을 조합한 것이어도 된다. 예를 들어 프로세서가, 논리 회로와 CPU, ROM, RAM 등을 갖고, 기능의 일부를 논리 회로(하드웨어 구성)에 의해 실현하고, 그 밖의 기능을 CPU에 있어서 실행되는 프로그램(소프트웨어 구성)에 의해 실현하도록 해도 된다.
도 91의 애플리케이션 프로세서(2331)는 화상 처리에 관한 애플리케이션을 실행하는 프로세서이다. 이 애플리케이션 프로세서(2331)에 있어서 실행되는 애플리케이션은, 소정의 기능을 실현하기 위해서, 연산 처리를 행할 뿐만 아니라, 예를 들어 비디오 프로세서(2332) 등, 비디오 모듈(2311) 내외의 구성을 필요에 따라서 제어할 수도 있다.
비디오 프로세서(2332)는 화상의 부호화·복호(그 한쪽 또는 양쪽)에 관한 기능을 갖는 프로세서이다.
브로드밴드 모뎀(2333)은 인터넷이나 공중 전화 회선망 등 광대역의 회선을 통해서 행해지는 유선 또는 무선(또는 그 양쪽)의 광대역 통신에 의해 송신하는 데이터(디지털 신호)를 디지털 변조하는 등으로 해서 아날로그 신호로 변환하거나, 그 광대역 통신에 의해 수신한 아날로그 신호를 복조해서 데이터(디지털 신호)로 변환하거나 한다. 브로드밴드 모뎀(2333)은, 예를 들어 비디오 프로세서(2332)가 처리하는 화상 데이터, 화상 데이터가 부호화된 스트림, 애플리케이션 프로그램, 설정 데이터 등, 임의의 정보를 처리한다.
RF 모듈(2334)은 안테나를 통해서 송수신되는 RF(Radio Frequency) 신호에 대하여 주파수 변환, 변복조, 증폭, 필터 처리 등을 행하는 모듈이다. 예를 들어 RF 모듈(2334)은 브로드밴드 모뎀(2333)에 의해 생성된 기저 대역 신호에 대하여 주파수 변환 등을 행하여 RF 신호를 생성한다. 또한, 예를 들어 RF 모듈(2334)은 프론트엔드 모듈(2314)을 통해서 수신된 RF 신호에 대하여 주파수 변환 등을 행하여 기저 대역 신호를 생성한다.
또한, 도 91에 있어서 점선(2341)으로 나타낸 바와 같이, 애플리케이션 프로세서(2331)와 비디오 프로세서(2332)를 일체화하여, 1개의 프로세서로서 구성되도록 해도 된다.
외부 메모리(2312)는 비디오 모듈(2311)의 외부에 설치된, 비디오 모듈(2311)에 의해 이용되는 기억 디바이스를 갖는 모듈이다. 이 외부 메모리(2312)의 기억 디바이스는, 어느 물리 구성에 의해 실현하도록 해도 되지만, 일반적으로 프레임 단위의 화상 데이터와 같은 대용량의 데이터의 저장에 이용되는 경우가 많으므로, 예를 들어 DRAM(Dynamic Random Access Memory)과 같은 비교적 저렴하고 대용량인 반도체 메모리에 의해 실현하는 것이 바람직하다.
파워 매니지먼트 모듈(2313)은, 비디오 모듈(2311)(비디오 모듈(2311) 내의 각 구성)에의 전력 공급을 관리하고, 제어한다.
프론트엔드 모듈(2314)은 RF 모듈(2334)에 대하여 프론트엔드 기능(안테나측 송수신 단부의 회로)을 제공하는 모듈이다. 도 91에 도시한 바와 같이, 프론트엔드 모듈(2314)은, 예를 들어 안테나부(2351), 필터(2352) 및 증폭부(2353)를 갖는다.
안테나부(2351)는 무선 신호를 송수신하는 안테나 및 그 주변의 구성을 갖는다. 안테나부(2351)는 증폭부(2353)로부터 공급되는 신호를 무선 신호로서 송신하고, 수신한 무선 신호를 전기 신호(RF 신호)로서 필터(2352)에 공급한다. 필터(2352)는 안테나부(2351)를 통해서 수신된 RF 신호에 대하여 필터 처리 등을 행하고, 처리 후의 RF 신호를 RF 모듈(2334)에 공급한다. 증폭부(2353)는 RF 모듈(2334)로부터 공급되는 RF 신호를 증폭하고, 안테나부(2351)에 공급한다.
커넥티비티(2321)는 외부와의 접속에 관한 기능을 갖는 모듈이다. 커넥티비티(2321)의 물리 구성은 임의이다. 예를 들어 커넥티비티(2321)는 브로드밴드 모뎀(2333)이 대응하는 통신 규격 이외의 통신 기능을 갖는 구성이나, 외부 입출력 단자 등을 갖는다.
예를 들어 커넥티비티(2321)가 Bluetooth(등록상표), IEEE 802.11(예를 들어 Wi-Fi(Wireless Fidelity, 등록상표)), NFC(Near Field Communication), IrDA(InfraRed Data Association) 등 무선 통신 규격에 준거하는 통신 기능을 갖는 모듈이나, 그 규격에 준거한 신호를 송수신하는 안테나 등을 갖도록 해도 된다. 또한, 예를 들어 커넥티비티(2321)가 USB(Universal Serial Bus), HDMI(등록상표)(High-Definition Multimedia Interface) 등 유선 통신 규격에 준거하는 통신 기능을 갖는 모듈이나, 그 규격에 준거한 단자를 갖도록 해도 된다. 또한, 예를 들어 커넥티비티(2321)가 아날로그 입출력 단자 등의 그 밖의 데이터(신호) 전송 기능 등을 갖도록 해도 된다.
또한, 커넥티비티(2321)가 데이터(신호)의 전송처의 디바이스를 포함하도록 해도 된다. 예를 들어 커넥티비티(2321)가 자기 디스크, 광 디스크, 광자기 디스크 또는 반도체 메모리 등의 기록 매체에 대하여 데이터의 판독이나 기입을 행하는 드라이브(리무버블 미디어의 드라이브뿐만 아니라, 하드 디스크, SSD(Solid State Drive), NAS(Network Attached Storage) 등도 포함)를 갖도록 해도 된다. 또한, 커넥티비티(2321)가 화상이나 음성의 출력 디바이스(모니터나 스피커 등)를 갖도록 해도 된다.
카메라(2322)는 피사체를 촬상하고, 피사체의 화상 데이터를 얻는 기능을 갖는 모듈이다. 카메라(2322)의 촬상에 의해 얻어진 화상 데이터는, 예를 들어 비디오 프로세서(2332)에 공급되어 부호화된다.
센서(2323)는, 예를 들어 음성 센서, 초음파 센서, 광 센서, 조도 센서, 적외선 센서, 이미지 센서, 회전 센서, 각도 센서, 각속도 센서, 속도 센서, 가속도 센서, 경사 센서, 자기 식별 센서, 충격 센서, 온도 센서 등, 임의의 센서 기능을 갖는 모듈이다. 센서(2323)에 의해 검출된 데이터는, 예를 들어 애플리케이션 프로세서(2331)에 공급되어 애플리케이션 등에 의해 이용된다.
이상에 있어서 모듈로서 설명한 구성을 프로세서로서 실현하도록 해도 되고, 반대로 프로세서로서 설명한 구성을 모듈로서 실현하도록 해도 된다.
이상과 같은 구성의 비디오 세트(2300)에 있어서, 후술하는 바와 같이 비디오 프로세서(2332)에 본 기술을 적용할 수 있다. 따라서, 비디오 세트(2300)는 본 기술을 적용한 세트로 해서 실시할 수 있다.
<비디오 프로세서의 구성예>
도 92는 본 기술을 적용한 비디오 프로세서(2332)(도 91)의 개략적인 구성의 일례를 나타내고 있다.
도 92의 예의 경우, 비디오 프로세서(2332)는 비디오 신호 및 오디오 신호의 입력을 받아서 이들을 소정의 방식으로 부호화하는 기능과, 부호화된 비디오 데이터 및 오디오 데이터를 복호하고, 비디오 신호 및 오디오 신호를 재생 출력하는 기능을 갖는다.
도 92에 도시한 바와 같이, 비디오 프로세서(2332)는 비디오 입력 처리부(2401), 제1 화상 확대 축소부(2402), 제2 화상 확대 축소부(2403), 비디오 출력 처리부(2404), 프레임 메모리(2405) 및 메모리 제어부(2406)를 갖는다. 또한, 비디오 프로세서(2332)는 인코드·디코드 엔진(2407), 비디오 ES(Elementary Stream) 버퍼(2408A 및 2408B), 및 오디오 ES 버퍼(2409A 및 2409B)를 갖는다. 또한, 비디오 프로세서(2332)는 오디오 인코더(2410), 오디오 디코더(2411), 다중화부(MUX(Multiplexer))(2412), 역다중화부(DMUX(Demultiplexer))(2413) 및 스트림 버퍼(2414)를 갖는다.
비디오 입력 처리부(2401)는 예를 들어 커넥티비티(2321)(도 91) 등으로부터 입력된 비디오 신호를 취득하고, 디지털 화상 데이터로 변환한다. 제1 화상 확대 축소부(2402)는 화상 데이터에 대하여 포맷 변환이나 화상의 확대 축소 처리 등을 행한다. 제2 화상 확대 축소부(2403)는 화상 데이터에 대하여 비디오 출력 처리부(2404)를 통해서 출력하는 상대에서의 포맷에 따라서 화상의 확대 축소 처리를 행하거나, 제1 화상 확대 축소부(2402)와 마찬가지 포맷 변환이나 화상의 확대 축소 처리 등을 행하거나 한다. 비디오 출력 처리부(2404)는 화상 데이터에 대하여 포맷 변환이나 아날로그 신호로의 변환 등을 행하여, 재생된 비디오 신호로서 예를 들어 커넥티비티(2321)(도 91) 등에 출력한다.
프레임 메모리(2405)는 비디오 입력 처리부(2401), 제1 화상 확대 축소부(2402), 제2 화상 확대 축소부(2403), 비디오 출력 처리부(2404) 및 인코드·디코드 엔진(2407)에 의해 공용되는 화상 데이터용 메모리이다. 프레임 메모리(2405)는 예를 들어 DRAM 등의 반도체 메모리로서 실현된다.
메모리 제어부(2406)는 인코드·디코드 엔진(2407)으로부터의 동기 신호를 받아, 액세스 관리 테이블(2406A)에 기입된 프레임 메모리(2405)에의 액세스 스케줄에 따라서 프레임 메모리(2405)에 대한 기입·판독의 액세스를 제어한다. 액세스 관리 테이블(2406A)은, 인코드·디코드 엔진(2407), 제1 화상 확대 축소부(2402), 제2 화상 확대 축소부(2403) 등에서 실행되는 처리에 따라서, 메모리 제어부(2406)에 의해 갱신된다.
인코드·디코드 엔진(2407)은 화상 데이터의 인코드 처리, 및 화상 데이터가 부호화된 데이터인 비디오 스트림의 디코드 처리를 행한다. 예를 들어 인코드·디코드 엔진(2407)은 프레임 메모리(2405)로부터 판독한 화상 데이터를 부호화하고, 비디오 스트림으로서 비디오 ES 버퍼(2408A)에 순차 기입한다. 또한, 예를 들어 비디오 ES 버퍼(2408B)로부터 비디오 스트림을 순차 판독해서 복호하고, 화상 데이터로서 프레임 메모리(2405)에 순차 기입한다. 인코드·디코드 엔진(2407)은 이들 부호화나 복호에 있어서, 프레임 메모리(2405)를 작업 영역으로서 사용한다. 또한, 인코드·디코드 엔진(2407)은 예를 들어 매크로 블록마다의 처리를 개시하는 타이밍에, 메모리 제어부(2406)에 대하여 동기 신호를 출력한다.
비디오 ES 버퍼(2408A)는, 인코드·디코드 엔진(2407)에 의해 생성된 비디오 스트림을 버퍼링하여, 다중화부(MUX)(2412)에 공급한다. 비디오 ES 버퍼(2408B)는, 역다중화부(DMUX)(2413)로부터 공급된 비디오 스트림을 버퍼링하여, 인코드·디코드 엔진(2407)에 공급한다.
오디오 ES 버퍼(2409A)는, 오디오 인코더(2410)에 의해 생성된 오디오 스트림을 버퍼링하여, 다중화부(MUX)(2412)에 공급한다. 오디오 ES 버퍼(2409B)는, 역다중화부(DMUX)(2413)로부터 공급된 오디오 스트림을 버퍼링하여, 오디오 디코더(2411)에 공급한다.
오디오 인코더(2410)는 예를 들어 커넥티비티(2321)(도 91) 등으로부터 입력된 오디오 신호를 예를 들어 디지털 변환하고, 예를 들어 MPEG 오디오 방식이나 AC3(AudioCode number 3) 방식 등의 소정의 방식으로 부호화한다. 오디오 인코더(2410)는 오디오 신호가 부호화된 데이터인 오디오 스트림을 오디오 ES 버퍼(2409A)에 순차 기입한다. 오디오 디코더(2411)는 오디오 ES 버퍼(2409B)로부터 공급된 오디오 스트림을 복호하고, 예를 들어 아날로그 신호로의 변환 등을 행하여, 재생된 오디오 신호로서 예를 들어 커넥티비티(2321)(도 91) 등에 공급한다.
다중화부(MUX)(2412)는, 비디오 스트림과 오디오 스트림을 다중화한다. 이 다중화의 방법(즉, 다중화에 의해 생성되는 비트 스트림의 포맷)은 임의이다. 또한, 이 다중화 시에, 다중화부(MUX)(2412)는, 소정의 헤더 정보 등을 비트 스트림에 부가할 수도 있다. 즉, 다중화부(MUX)(2412)는, 다중화에 의해 스트림의 포맷을 변환할 수 있다. 예를 들어 다중화부(MUX)(2412)는, 비디오 스트림과 오디오 스트림을 다중화함으로써, 전송용 포맷의 비트 스트림인 트랜스포트 스트림으로 변환한다. 또한, 예를 들어 다중화부(MUX)(2412)는, 비디오 스트림과 오디오 스트림을 다중화함으로써, 기록용 파일 포맷의 데이터(파일 데이터)로 변환한다.
역다중화부(DMUX)(2413)는, 다중화부(MUX)(2412)에 의한 다중화에 대응하는 방법이며, 비디오 스트림과 오디오 스트림이 다중화된 비트 스트림을 역다중화한다. 즉, 역다중화부(DMUX)(2413)는 스트림 버퍼(2414)로부터 판독된 비트 스트림으로부터 비디오 스트림과 오디오 스트림을 추출한다(비디오 스트림과 오디오 스트림을 분리한다). 즉, 역다중화부(DMUX)(2413)는, 역다중화에 의해 스트림의 포맷을 변환(다중화부(MUX)(2412)에 의한 변환의 역변환)할 수 있다. 예를 들어 역다중화부(DMUX)(2413)는, 예를 들어 커넥티비티(2321)나 브로드밴드 모뎀(2333) 등(모두 도 91)으로부터 공급된 트랜스포트 스트림을, 스트림 버퍼(2414)를 통해서 취득하고, 역다중화함으로써, 비디오 스트림과 오디오 스트림으로 변환할 수 있다. 또한, 예를 들어 역다중화부(DMUX)(2413)는, 예를 들어 커넥티비티(2321)에 의해(도 91) 각종 기록 매체로부터 판독된 파일 데이터를, 스트림 버퍼(2414)를 통해서 취득하고, 역다중화함으로써, 비디오 스트림과 오디오 스트림으로 변환할 수 있다.
스트림 버퍼(2414)는 비트 스트림을 버퍼링한다. 예를 들어 스트림 버퍼(2414)는 다중화부(MUX)(2412)로부터 공급된 트랜스포트 스트림을 버퍼링하고, 소정의 타이밍에 있어서, 또는 외부로부터의 요구 등에 기초하여, 예를 들어 커넥티비티(2321)나 브로드밴드 모뎀(2333)(모두 도 91) 등에 공급한다.
또한, 예를 들어 스트림 버퍼(2414)는 다중화부(MUX)(2412)로부터 공급된 파일 데이터를 버퍼링하고, 소정의 타이밍에 있어서, 또는 외부로부터의 요구 등에 기초하여, 예를 들어 커넥티비티(2321)(도 91) 등에 공급하고, 각종 기록 매체에 기록시킨다.
또한, 스트림 버퍼(2414)는 예를 들어 커넥티비티(2321)나 브로드밴드 모뎀(2333) 등(모두 도 91)을 통해서 취득한 트랜스포트 스트림을 버퍼링하고, 소정의 타이밍에 있어서, 또는 외부로부터의 요구 등에 기초하여, 역다중화부(DMUX)(2413)에 공급한다.
또한, 스트림 버퍼(2414)는 예를 들어 커넥티비티(2321)(도 91) 등에 있어서 각종 기록 매체로부터 판독된 파일 데이터를 버퍼링하고, 소정의 타이밍에 있어서, 또는 외부로부터의 요구 등에 기초하여, 역다중화부(DMUX)(2413)에 공급한다.
이어서, 이와 같은 구성의 비디오 프로세서(2332)의 동작의 예에 대해서 설명한다. 예를 들어 커넥티비티(2321)(도 91) 등으로부터 비디오 프로세서(2332)에 입력된 비디오 신호는, 비디오 입력 처리부(2401)에 있어서 4:2:2Y/Cb/Cr 방식 등의 소정의 방식의 디지털 화상 데이터로 변환되어, 프레임 메모리(2405)에 순차 기입된다. 이 디지털 화상 데이터는, 제1 화상 확대 축소부(2402) 또는 제2 화상 확대 축소부(2403)에 판독되고, 4:2:0Y/Cb/Cr 방식 등의 소정의 방식에의 포맷 변환 및 확대 축소 처리가 행해지고, 다시 프레임 메모리(2405)에 기입된다. 이 화상 데이터는, 인코드·디코드 엔진(2407)에 의해 부호화되어, 비디오 스트림으로서 비디오 ES 버퍼(2408A)에 기입된다.
또한, 커넥티비티(2321)(도 91) 등으로부터 비디오 프로세서(2332)에 입력된 오디오 신호는, 오디오 인코더(2410)에 의해 부호화되고, 오디오 스트림으로서, 오디오 ES 버퍼(2409A)에 기입된다.
비디오 ES 버퍼(2408A)의 비디오 스트림과, 오디오 ES 버퍼(2409A)의 오디오 스트림은, 다중화부(MUX)(2412)에 판독되어 다중화되고, 트랜스포트 스트림 또는 파일 데이터 등으로 변환된다. 다중화부(MUX)(2412)에 의해 생성된 트랜스포트 스트림은, 스트림 버퍼(2414)에 버퍼된 후, 예를 들어 커넥티비티(2321)나 브로드밴드 모뎀(2333)(모두 도 91) 등을 통해서 외부 네트워크에 출력된다. 또한, 다중화부(MUX)(2412)에 의해 생성된 파일 데이터는, 스트림 버퍼(2414)에 버퍼된 후, 예를 들어 커넥티비티(2321)(도 91) 등에 출력되고, 각종 기록 매체에 기록된다.
또한, 예를 들어 커넥티비티(2321)나 브로드밴드 모뎀(2333)(모두 도 91) 등을 통해서 외부 네트워크로부터 비디오 프로세서(2332)에 입력된 트랜스포트 스트림은, 스트림 버퍼(2414)에 버퍼된 후, 역다중화부(DMUX)(2413)에 의해 역다중화된다. 또한, 예를 들어 커넥티비티(2321)(도 91) 등에 있어서 각종 기록 매체로부터 판독되고, 비디오 프로세서(2332)에 입력된 파일 데이터는, 스트림 버퍼(2414)에 버퍼된 후, 역다중화부(DMUX)(2413)에 의해 역다중화된다. 즉, 비디오 프로세서(2332)에 입력된 트랜스포트 스트림 또는 파일 데이터는, 역다중화부(DMUX)(2413)에 의해 비디오 스트림과 오디오 스트림으로 분리된다.
오디오 스트림은, 오디오 ES 버퍼(2409B)를 통해서 오디오 디코더(2411)에 공급되고, 복호되어 오디오 신호가 재생된다. 또한, 비디오 스트림은, 비디오 ES 버퍼(2408B)에 기입된 후, 인코드·디코드 엔진(2407)에 의해 순차 판독되고 복호되어 프레임 메모리(2405)에 기입된다. 복호된 화상 데이터는, 제2 화상 확대 축소부(2403)에 의해 확대 축소 처리되고, 프레임 메모리(2405)에 기입된다. 그리고, 복호된 화상 데이터는, 비디오 출력 처리부(2404)에 판독되고, 4:2:2Y/Cb/Cr 방식 등의 소정의 방식으로 포맷 변환되고, 또한 아날로그 신호로 변환되어, 비디오 신호가 재생 출력된다.
이와 같이 구성되는 비디오 프로세서(2332)에 본 기술을 적용하는 경우, 인코드·디코드 엔진(2407)에, 상술한 각 실시 형태에 따른 본 기술을 적용하면 된다. 즉, 예를 들어 인코드·디코드 엔진(2407)이 상술한 실시 형태에 따른 스케일러블 부호화 장치(100) 및 스케일러블 복호 장치(200) 또는 화상 부호화 장치(900)(도 62) 및 화상 복호 장치(1000)(도 71)의 기능을 갖도록 하면 된다. 이와 같이 함으로써, 비디오 프로세서(2332)는 도 1 내지 도 80을 참조하여 상술한 효과와 마찬가지 효과를 얻을 수 있다.
또한, 인코드·디코드 엔진(2407)에 있어서, 본 기술(즉, 상술한 각 실시 형태에 따른 화상 부호화 장치나 화상 복호 장치의 기능)은 논리 회로 등 하드웨어에 의해 실현하도록 해도 되고, 내장 프로그램 등 소프트웨어에 의해 실현하도록 해도 되고, 그들 양쪽에 의해 실현하도록 해도 된다.
<비디오 프로세서의 다른 구성예>
도 93은 본 기술을 적용한 비디오 프로세서(2332)(도 91)의 개략적인 구성의 다른 예를 나타내고 있다. 도 93의 예의 경우, 비디오 프로세서(2332)는 비디오 데이터를 소정의 방식으로 부호화·복호하는 기능을 갖는다.
보다 구체적으로는, 도 93에 도시한 바와 같이, 비디오 프로세서(2332)는 제어부(2511), 디스플레이 인터페이스(2512), 디스플레이 엔진(2513), 화상 처리 엔진(2514) 및 내부 메모리(2515)를 갖는다. 또한, 비디오 프로세서(2332)는 코덱 엔진(2516), 메모리 인터페이스(2517), 다중화·역다중화부(MUX DMUX)(2518), 네트워크 인터페이스(2519) 및 비디오 인터페이스(2520)를 갖는다.
제어부(2511)는 디스플레이 인터페이스(2512), 디스플레이 엔진(2513), 화상 처리 엔진(2514) 및 코덱 엔진(2516) 등, 비디오 프로세서(2332) 내의 각 처리부의 동작을 제어한다.
도 93에 도시한 바와 같이, 제어부(2511)는, 예를 들어 메인 CPU(2531), 서브 CPU(2532) 및 시스템 컨트롤러(2533)를 갖는다. 메인 CPU(2531)는, 비디오 프로세서(2332) 내의 각 처리부의 동작을 제어하기 위한 프로그램 등을 실행한다. 메인 CPU(2531)는, 그 프로그램 등에 따라서 제어 신호를 생성하고, 각 처리부에 공급한다(즉, 각 처리부의 동작을 제어한다). 서브 CPU(2532)는 메인 CPU(2531)의 보조적인 역할을 한다. 예를 들어 서브 CPU(2532)는, 메인 CPU(2531)가 실행하는 프로그램 등의 자 프로세스나 서브루틴 등을 실행한다. 시스템 컨트롤러(2533)는 메인 CPU(2531) 및 서브 CPU(2532)가 실행하는 프로그램을 지정하는 등, 메인 CPU(2531) 및 서브 CPU(2532)의 동작을 제어한다.
디스플레이 인터페이스(2512)는 제어부(2511)의 제어 하에, 화상 데이터를 예를 들어 커넥티비티(2321)(도 91) 등에 출력한다. 예를 들어 디스플레이 인터페이스(2512)는 디지털 데이터의 화상 데이터를 아날로그 신호로 변환하고, 재생된 비디오 신호로서 또는 디지털 데이터의 화상 데이터 그대로, 커넥티비티(2321)(도 91)의 모니터 장치 등에 출력한다.
디스플레이 엔진(2513)은 제어부(2511)의 제어 하에, 화상 데이터에 대하여 그 화상을 표시시키는 모니터 장치 등 하드웨어 스펙에 맞추도록, 포맷 변환, 사이즈 변환, 색 영역 변환 등 각종 변환 처리를 행한다.
화상 처리 엔진(2514)은 제어부(2511)의 제어 하에, 화상 데이터에 대하여 예를 들어 화질 개선을 위한 필터 처리 등, 소정의 화상 처리를 실시한다.
내부 메모리(2515)는 디스플레이 엔진(2513), 화상 처리 엔진(2514) 및 코덱 엔진(2516)에 의해 공용되는, 비디오 프로세서(2332)의 내부에 설치된 메모리이다. 내부 메모리(2515)는, 예를 들어 디스플레이 엔진(2513), 화상 처리 엔진(2514) 및 코덱 엔진(2516) 사이에서 행해지는 데이터의 수수에 이용된다. 예를 들어 내부 메모리(2515)는 디스플레이 엔진(2513), 화상 처리 엔진(2514) 또는 코덱 엔진(2516)으로부터 공급되는 데이터를 저장하고, 필요에 따라서(예를 들어 요구에 따라서), 그 데이터를, 디스플레이 엔진(2513), 화상 처리 엔진(2514) 또는 코덱 엔진(2516)에 공급한다. 이 내부 메모리(2515)는 어떠한 기억 디바이스에 의해 실현하도록 해도 되지만, 일반적으로 블록 단위의 화상 데이터나 파라미터 등과 같은 소용량의 데이터 저장에 이용하는 경우가 많으므로, 예를 들어 SRAM(Static Random Access Memory)과 같은 비교적(예를 들어 외부 메모리(2312)와 비교해서) 소용량이지만 응답 속도가 고속인 반도체 메모리에 의해 실현하는 것이 바람직하다.
코덱 엔진(2516)은 화상 데이터의 부호화나 복호에 관한 처리를 행한다. 이 코덱 엔진(2516)이 대응하는 부호화·복호의 방식은 임의이며, 그 수는 하나여도 되고, 복수여도 된다. 예를 들어 코덱 엔진(2516)은 복수의 부호화·복호 방식의 코덱 기능을 구비하고, 그 중에서 선택된 것으로 화상 데이터의 부호화 또는 부호화 데이터의 복호를 행하도록 해도 된다.
도 93에 도시하는 예에 있어서, 코덱 엔진(2516)은 코덱에 관한 처리의 기능 블록으로 해서, 예를 들어 MPEG-2 Video(2541), AVC/H.264(2542), HEVC/H.265(2543), HEVC/H.265(Scalable)(2544), HEVC/H.265(Multi-view)(2545) 및 MPEG-DASH(2551)를 갖는다.
MPEG-2 Video(2541)는 화상 데이터를 MPEG-2 방식으로 부호화하거나 복호하거나 하는 기능 블록이다. AVC/H.264(2542)는 화상 데이터를 AVC 방식으로 부호화하거나 복호하거나 하는 기능 블록이다. HEVC/H.265(2543)는 화상 데이터를 HEVC 방식으로 부호화하거나 복호하거나 하는 기능 블록이다. HEVC/H.265(Scalable)(2544)는 화상 데이터를 HEVC 방식으로 스케일러블 부호화하거나 스케일러블 복호하거나 하는 기능 블록이다. HEVC/H.265(Multi-view)(2545)는, 화상 데이터를 HEVC 방식으로 다시점 부호화하거나 다시점 복호하거나 하는 기능 블록이다.
MPEG-DASH(2551)는 화상 데이터를 MPEG-DASH(MPEG-Dynamic Adaptive Streaming over HTTP) 방식으로 송수신하는 기능 블록이다. MPEG-DASH는, HTTP(HyperText Transfer Protocol)를 사용해서 비디오의 스트리밍을 행하는 기술이며, 미리 준비된 해상도 등이 서로 다른 복수의 부호화 데이터 중에서 적절한 것을 세그먼트 단위로 선택해서 전송하는 것을 특징 중 하나로 한다. MPEG-DASH(2551)는, 규격에 준거하는 스트림의 생성이나 그 스트림의 전송 제어 등을 행하고, 화상 데이터의 부호화·복호에 대해서는, 상술한 MPEG-2 Video(2541) 내지 HEVC/H.265(Multi-view)(2545)를 이용한다.
메모리 인터페이스(2517)는 외부 메모리(2312)용 인터페이스이다. 화상 처리 엔진(2514)이나 코덱 엔진(2516)으로부터 공급되는 데이터는, 메모리 인터페이스(2517)를 통해서 외부 메모리(2312)에 공급된다. 또한, 외부 메모리(2312)로부터 판독된 데이터는, 메모리 인터페이스(2517)를 통해서 비디오 프로세서(2332)(화상 처리 엔진(2514) 또는 코덱 엔진(2516))에 공급된다.
다중화·역다중화부(MUX DMUX)(2518)는, 부호화 데이터의 비트 스트림, 화상 데이터, 비디오 신호 등, 화상에 관한 각종 데이터의 다중화나 역다중화를 행한다. 이 다중화·역다중화의 방법은 임의이다. 예를 들어 다중화 시에, 다중화·역다중화부(MUX DMUX)(2518)는, 복수의 데이터를 하나로 묶을 뿐만 아니라, 소정의 헤더 정보 등을 그 데이터에 부가할 수도 있다. 또한, 역다중화 시에, 다중화·역다중화부(MUX DMUX)(2518)는, 하나의 데이터를 복수로 분할할 뿐만 아니라, 분할한 각 데이터에 소정의 헤더 정보 등을 부가할 수도 있다. 즉, 다중화·역다중화부(MUX DMUX)(2518)는, 다중화·역다중화에 의해 데이터의 포맷을 변환할 수 있다. 예를 들어 다중화·역다중화부(MUX DMUX)(2518)는, 비트 스트림을 다중화함으로써, 전송용 포맷의 비트 스트림인 트랜스포트 스트림이나, 기록용 파일 포맷의 데이터(파일 데이터)로 변환할 수 있다. 물론, 역다중화에 의해 그 역변환도 가능하다.
네트워크 인터페이스(2519)는 예를 들어 브로드밴드 모뎀(2333)이나 커넥티비티(2321)(모두 도 91) 등을 위한 인터페이스이다. 비디오 인터페이스(2520)는 예를 들어 커넥티비티(2321)나 카메라(2322)(모두 도 91) 등을 위한 인터페이스이다.
이어서, 이러한 비디오 프로세서(2332)의 동작의 예에 대해서 설명한다. 예를 들어 커넥티비티(2321)나 브로드밴드 모뎀(2333)(모두 도 91) 등을 통해서 외부 네트워크로부터 트랜스포트 스트림을 수신하면, 그 트랜스포트 스트림은, 네트워크 인터페이스(2519)를 통해서 다중화·역다중화부(MUX DMUX)(2518)에 공급되어 역다중화되고, 코덱 엔진(2516)에 의해 복호된다. 코덱 엔진(2516)의 복호에 의해 얻어진 화상 데이터는, 예를 들어 화상 처리 엔진(2514)에 의해 소정의 화상 처리가 실시되어, 디스플레이 엔진(2513)에 의해 소정의 변환이 행해지고, 디스플레이 인터페이스(2512)를 통해서 예를 들어 커넥티비티(2321)(도 91) 등에 공급되고, 그 화상이 모니터에 표시된다. 또한, 예를 들어 코덱 엔진(2516)의 복호에 의해 얻어진 화상 데이터는, 코덱 엔진(2516)에 의해 재부호화되어, 다중화·역다중화부(MUX DMUX)(2518)에 의해 다중화되어 파일 데이터로 변환되고, 비디오 인터페이스(2520)를 통해서 예를 들어 커넥티비티(2321)(도 91) 등에 출력되고, 각종 기록 매체에 기록된다.
또한, 예를 들어 커넥티비티(2321)(도 91) 등에 의해 도시하지 않은 기록 매체로부터 판독된, 화상 데이터가 부호화된 부호화 데이터의 파일 데이터는, 비디오 인터페이스(2520)를 통해서 다중화·역다중화부(MUX DMUX)(2518)에 공급되어 역다중화되고, 코덱 엔진(2516)에 의해 복호된다. 코덱 엔진(2516)의 복호에 의해 얻어진 화상 데이터는, 화상 처리 엔진(2514)에 의해 소정의 화상 처리가 실시되어, 디스플레이 엔진(2513)에 의해 소정의 변환이 행해지고, 디스플레이 인터페이스(2512)를 통해서 예를 들어 커넥티비티(2321)(도 91) 등에 공급되고, 그 화상이 모니터에 표시된다. 또한, 예를 들어 코덱 엔진(2516)의 복호에 의해 얻어진 화상 데이터는, 코덱 엔진(2516)에 의해 재부호화되어, 다중화·역다중화부(MUX DMUX)(2518)에 의해 다중화되어 트랜스포트 스트림으로 변환되고, 네트워크 인터페이스(2519)를 통해서 예를 들어 커넥티비티(2321)나 브로드밴드 모뎀(2333)(모두 도 91) 등에 공급되어 도시하지 않은 다른 장치로 전송된다.
또한, 비디오 프로세서(2332) 내의 각 처리부 사이에서의 화상 데이터나 그 밖의 데이터의 수수는, 예를 들어 내부 메모리(2515)나 외부 메모리(2312)를 이용해서 행해진다. 또한, 파워 매니지먼트 모듈(2313)은, 예를 들어 제어부(2511)에의 전력 공급을 제어한다.
이와 같이 구성되는 비디오 프로세서(2332)에 본 기술을 적용하는 경우, 코덱 엔진(2516)에, 상술한 각 실시 형태에 따른 본 기술을 적용하면 된다. 즉, 예를 들어 코덱 엔진(2516)이 상술한 실시 형태에 따른 스케일러블 부호화 장치(100) 및 스케일러블 복호 장치(200) 또는 화상 부호화 장치(900)(도 62) 및 화상 복호 장치(1000)(도 71)를 실현하는 기능 블록을 갖도록 하면 된다. 이와 같이 함으로써, 비디오 프로세서(2332)는 도 1 내지 도 80을 참조하여 상술한 효과와 마찬가지 효과를 얻을 수 있다.
또한, 코덱 엔진(2516)에 있어서, 본 기술(즉, 상술한 각 실시 형태에 따른 화상 부호화 장치나 화상 복호 장치의 기능)은 논리 회로 등 하드웨어에 의해 실현하도록 해도 되고, 내장 프로그램 등 소프트웨어에 의해 실현하도록 해도 되고, 그들 양쪽에 의해 실현하도록 해도 된다.
이상으로 비디오 프로세서(2332)의 구성을 2 예시했지만, 비디오 프로세서(2332)의 구성은 임의이며, 상술한 2 예 이외의 것이어도 된다. 또한, 이 비디오 프로세서(2332)는 1개의 반도체 칩으로서 구성되도록 해도 되지만, 복수의 반도체 칩으로서 구성되도록 해도 된다. 예를 들어 복수의 반도체를 적층하는 3차원 적층 LSI로 해도 된다. 또한, 복수의 LSI에 의해 실현되도록 해도 된다.
<장치에의 적용예>
비디오 세트(2300)는 화상 데이터를 처리하는 각종 장치에 내장할 수 있다. 예를 들어 비디오 세트(2300)는 텔레비전 장치(1900)(도 84), 휴대 전화기(1920)(도 85), 기록 재생 장치(1940)(도 86), 촬상 장치(1960)(도 87) 등에 내장할 수 있다. 비디오 세트(2300)를 내장함으로써, 그 장치는, 도 1 내지 도 80을 참조하여 상술한 효과와 마찬가지 효과를 얻을 수 있다.
또한, 비디오 세트(2300)는, 예를 들어 도 88의 데이터 전송 시스템(2000)에 있어서의 퍼스널 컴퓨터(2004), AV 기기(2005), 태블릿 디바이스(2006) 및 휴대 전화기(2007) 등의 단말 장치, 도 89의 데이터 전송 시스템(2100)에 있어서의 방송국(2101) 및 단말 장치(2102), 및 도 90의 촬상 시스템(2200)에 있어서의 촬상 장치(2201) 및 스케일러블 부호화 데이터 기억 장치(2202) 등에도 내장할 수 있다. 비디오 세트(2300)를 내장함으로써, 그 장치는, 도 1 내지 도 80을 참조하여 상술한 효과와 마찬가지 효과를 얻을 수 있다.
또한, 상술한 비디오 세트(2300)의 각 구성의 일부라도, 비디오 프로세서(2332)를 포함하는 것이면, 본 기술을 적용한 구성으로 해서 실시할 수 있다. 예를 들어 비디오 프로세서(2332)만을 본 기술을 적용한 비디오 프로세서로서 실시할 수 있다. 또한, 예를 들어 상술한 바와 같이 점선(2341)에 의해 나타내는 프로세서나 비디오 모듈(2311) 등을 본 기술을 적용한 프로세서나 모듈 등으로서 실시할 수 있다. 또한, 예를 들어 비디오 모듈(2311), 외부 메모리(2312), 파워 매니지먼트 모듈(2313) 및 프론트엔드 모듈(2314)을 조합하여, 본 기술을 적용한 비디오 유닛(2361)으로서 실시할 수도 있다. 어느 쪽 구성의 경우에도, 도 1 내지 도 80을 참조하여 상술한 효과와 마찬가지 효과를 얻을 수 있다.
즉, 비디오 프로세서(2332)를 포함하는 것이면 어떤 구성에도, 비디오 세트(2300)의 경우와 마찬가지로, 화상 데이터를 처리하는 각종 장치에 내장할 수 있다. 예를 들어 비디오 프로세서(2332), 점선(2341)에 의해 나타내는 프로세서, 비디오 모듈(2311) 또는 비디오 유닛(2361)을 텔레비전 장치(1900)(도 84), 휴대 전화기(1920)(도 85), 기록 재생 장치(1940)(도 86), 촬상 장치(1960)(도 87), 도 88의 데이터 전송 시스템(2000)에 있어서의 퍼스널 컴퓨터(2004), AV 기기(2005), 태블릿 디바이스(2006) 및 휴대 전화기(2007) 등의 단말 장치, 도 89의 데이터 전송 시스템(2100)에 있어서의 방송국(2101) 및 단말 장치(2102), 및 도 90의 촬상 시스템(2200)에 있어서의 촬상 장치(2201) 및 스케일러블 부호화 데이터 기억 장치(2202) 등에 내장할 수 있다. 그리고, 본 기술을 적용한 어느 하나의 구성을 내장함으로써, 그 장치는, 비디오 세트(2300)의 경우와 마찬가지로, 도 1 내지 도 80을 참조하여 상술한 효과와 마찬가지 효과를 얻을 수 있다.
<19. 제14 실시 형태>
<MPEG-DASH의 응용예>
또한, 본 기술은, 미리 준비된 해상도 등이 서로 다른 복수의 부호화 데이터 중에서 적절한 것을 세그먼트 단위로 선택해서 사용하는, 예를 들어 후술하는 MPEG DASH 등과 같은 HTTP 스트리밍의 콘텐츠 재생 시스템이나 Wi-Fi 규격의 무선 통신 시스템에도 적용할 수 있다.
<콘텐츠 재생 시스템의 개요>
먼저, 도 94 내지 도 96을 참조하여, 본 기술을 적용 가능한 콘텐츠 재생 시스템에 대해서 개략적으로 설명한다.
이하에서는, 먼저, 이러한 각 실시 형태에 있어서 공통되는 기본 구성에 대해서 도 94 및 도 95를 참조하여 설명한다.
도 94는 콘텐츠 재생 시스템의 구성을 도시한 설명도이다. 도 94에 도시한 바와 같이, 콘텐츠 재생 시스템은, 콘텐츠 서버(2610, 2611)와, 네트워크(2612)와, 콘텐츠 재생 장치(2620)(클라이언트 장치)를 구비한다.
콘텐츠 서버(2610, 2611)와 콘텐츠 재생 장치(2620)는 네트워크(2612)를 통해서 접속되어 있다. 이 네트워크(2612)는 네트워크(2612)에 접속되어 있는 장치로부터 송신되는 정보의 유선 또는 무선의 전송로이다.
예를 들어 네트워크(2612)는 인터넷, 전화 회선망, 위성 통신망 등 공중 회선망이나, Ethernet(등록상표)을 포함하는 각종 LAN(Local Area Network), WAN(Wide Area Network) 등을 포함해도 된다. 또한, 네트워크(2612)는 IP-VPN(Internet Protocol-Virtual Private Network) 등 전용 회선망을 포함해도 된다.
콘텐츠 서버(2610)는 콘텐츠 데이터를 부호화하고, 부호화 데이터 및 부호화 데이터의 메타 정보를 포함하는 데이터 파일을 생성해서 기억한다. 또한, 콘텐츠 서버(2610)가 MP4 형식의 데이터 파일을 생성하는 경우, 부호화 데이터는 「mdat」에 해당하고, 메타 정보는 「moov」에 해당한다.
또한, 콘텐츠 데이터는, 음악, 강연 및 라디오 프로그램 등의 음악 데이터나, 영화, 텔레비전 프로그램, 비디오 프로그램, 사진, 문서, 회화 및 도표 등 영상 데이터나, 게임 및 소프트웨어 등이어도 된다.
여기서, 콘텐츠 서버(2610)는 동일 콘텐츠에 관해서, 다른 비트레이트로 복수의 데이터 파일을 생성한다. 또한 콘텐츠 서버(2611)는 콘텐츠 재생 장치(2620)로부터의 콘텐츠의 재생 요구에 대하여 콘텐츠 서버(2610)의 URL의 정보에, 콘텐츠 재생 장치(2620)에서 그 URL에 부가시키는 파라미터의 정보를 포함시켜 콘텐츠 재생 장치(2620)로 송신한다. 이하, 도 95를 참조하여 해당 사항에 대해서 구체적으로 설명한다.
도 95는 도 94의 콘텐츠 재생 시스템에 있어서의 데이터의 흐름을 도시한 설명도이다. 콘텐츠 서버(2610)는 동일한 콘텐츠 데이터를 다른 비트레이트로 부호화하고, 도 95에 도시한 바와 같이 예를 들어 2Mbps의 파일 A, 1.5Mbps의 파일 B, 1Mbps의 파일 C를 생성한다. 상대적으로, 파일 A는 하이 비트레이트이고, 파일 B는 표준 비트레이트이고, 파일 C는 로우 비트레이트이다.
또한, 도 95에 도시한 바와 같이, 각 파일의 부호화 데이터는 복수의 세그먼트로 구분되어 있다. 예를 들어 파일 A의 부호화 데이터는 「A1」, 「A2」, 「A3」, …「An」이라는 세그먼트로 구분되어 있고, 파일 B의 부호화 데이터는 「B1」, 「B2」, 「B3」, …「Bn」이라는 세그먼트로 구분되어 있고, 파일 C의 부호화 데이터는 「C1」, 「C2」, 「C3」, …「Cn」이라는 세그먼트로 구분되어 있다.
또한, 각 세그먼트는 MP4의 싱크 샘플(예를 들어 AVC/H.264의 영상 부호화에서는 IDR- 픽처)에서 시작되는 단독으로 재생 가능한 1 또는 2 이상의 영상 부호화 데이터 및 음성 부호화 데이터로부터 구성 샘플로 구성되어도 된다. 예를 들어 1초 30프레임의 비디오 데이터가 15프레임 고정 길이의 GOP(Group of Picture)로 부호화되어 있는 경우, 각 세그먼트는, 4GOP에 상당하는 2초분의 영상 및 음성 부호화 데이터여도 되고, 20GOP에 상당하는 10초분의 영상 및 음성 부호화 데이터여도 된다.
또한, 각 파일에 있어서의 배치 순서가 동일한 세그먼트에 의한 재생 범위(콘텐츠의 선두로부터의 시간 위치의 범위)는 동일하다. 예를 들어 세그먼트 「A2」, 세그먼트 「B2」 및 세그먼트 「C2」의 재생 범위는 동일하며, 각 세그먼트가 2초분의 부호화 데이터인 경우, 세그먼트 「A2」, 세그먼트 「B2」 및 세그먼트 「C2」의 재생 범위는 모두 콘텐츠에 2초 내지 4초이다.
콘텐츠 서버(2610)는 이러한 복수의 세그먼트를 포함하는 파일 A 내지 파일 C를 생성하면, 파일 A 내지 파일 C를 기억한다. 그리고, 콘텐츠 서버(2610)는 도 95에 도시한 바와 같이, 다른 파일을 구성하는 세그먼트를 콘텐츠 재생 장치(2620)에 순차적으로 송신하고, 콘텐츠 재생 장치(2620)는 수신한 세그먼트를 스트리밍 재생한다.
여기서, 본 실시 형태에 따른 콘텐츠 서버(2610)는 각 부호화 데이터의 비트레이트 정보 및 액세스 정보를 포함하는 플레이 리스트 파일(이하, MPD: Media Presentation Description)을 콘텐츠 재생 장치(2620)로 송신하고, 콘텐츠 재생 장치(2620)는 MPD에 기초하여, 복수의 비트레이트 중 어느 하나의 비트레이트를 선택하고, 선택한 비트레이트에 대응하는 세그먼트의 송신을 콘텐츠 서버(2610)에 요구한다.
도 94에서는, 1개의 콘텐츠 서버(2610)만이 도시되어 있지만, 본 발명은 관계되는 예에 한정되지 않는 것은 물론이다.
도 96은 MPD의 구체예를 도시한 설명도이다. 도 96에 도시한 바와 같이, MPD에는, 다른 비트레이트(BANDWIDTH)를 갖는 복수의 부호화 데이터에 관한 액세스 정보가 포함된다. 예를 들어 도 96에 도시한 MPD는, 256Kbps, 1.024Mbps, 1.384Mbps, 1.536Mbps, 2.048Mbps의 각각의 부호화 데이터가 존재하는 것을 나타냄과 함께, 각 부호화 데이터에 관한 액세스 정보를 포함한다. 콘텐츠 재생 장치(2620)는, 이러한 MPD에 기초하여, 스트리밍 재생하는 부호화 데이터의 비트레이트를 동적으로 변경하는 것이 가능하다.
또한, 도 94에는 콘텐츠 재생 장치(2620)의 일례로서 휴대 단말기를 나타내고 있지만, 콘텐츠 재생 장치(2620)는 이러한 예에 한정되지 않는다. 예를 들어 콘텐츠 재생 장치(2620)는 PC(Personal Computer), 가정용 영상 처리 장치(DVD 레코더, 비디오데크 등), PDA(Personal Digital Assistants), 가정용 게임 기기, 가전 기기 등의 정보 처리 장치여도 된다. 또한, 콘텐츠 재생 장치(2620)는 휴대 전화, PHS(Personal Handyphone System), 휴대용 음악 재생 장치, 휴대용 영상 처리 장치, 휴대용 게임 기기 등의 정보 처리 장치여도 된다.
<콘텐츠 서버(2610)의 구성>
이상, 도 94 내지 도 96을 참조하여, 콘텐츠 재생 시스템의 개요를 설명하였다. 계속해서, 도 97을 참조하여, 콘텐츠 서버(2610)의 구성을 설명한다.
도 97은 콘텐츠 서버(2610)의 구성을 도시한 기능 블록도이다. 도 97에 도시한 바와 같이, 콘텐츠 서버(2610)는 파일 생성부(2631)와, 기억부(2632)와, 통신부(2633)를 구비한다.
파일 생성부(2631)는 콘텐츠 데이터를 부호화하는 인코더(2641)를 구비하고, 동일한 콘텐츠로 비트레이트가 다른 복수의 부호화 데이터 및 상술한 MPD를 생성한다. 예를 들어 파일 생성부(2631)는 256Kbps, 1.024Mbps, 1.384Mbps, 1.536Mbps, 2.048Mbps의 각각의 부호화 데이터를 생성한 경우, 도 96에 도시한 바와 같은 MPD를 생성한다.
기억부(2632)는 파일 생성부(2631)에 의해 생성된 비트레이트가 다른 복수의 부호화 데이터 및 MPD를 기억한다. 이 기억부(2632)는 불휘발성 메모리, 자기 디스크, 광 디스크 및 MO(Magneto Optical) 디스크 등의 기억 매체여도 된다. 불휘발성 메모리로서는, 예를 들어 EEPROM(Electrically Erasable Programmable Read-Only Memory), EPROM(Erasable Programmable ROM)을 들 수 있다. 또한, 자기 디스크로서는, 하드 디스크 및 원반형 자성체 디스크 등을 들 수 있다. 또한, 광 디스크로서는, CD(Compact Disc), DVD-R(Digital Versatile Disc Recordable) 및 BD(Blu-Ray Disc(등록상표)) 등을 들 수 있다.
통신부(2633)는 콘텐츠 재생 장치(2620)와의 인터페이스이며, 네트워크(2612)를 통해서 콘텐츠 재생 장치(2620)와 통신한다. 보다상세하게는, 통신부(2633)는 HTTP에 따라서 콘텐츠 재생 장치(2620)와 통신하는 HTTP 서버로서의 기능을 갖는다. 예를 들어 통신부(2633)는 MPD를 콘텐츠 재생 장치(2620)로 송신하고, HTTP에 따라서 콘텐츠 재생 장치(2620)로부터 MPD에 기초하여 요구된 부호화 데이터를 기억부(2632)로부터 추출하고, HTTP 리스펀스로서 콘텐츠 재생 장치(2620)에 부호화 데이터를 송신한다.
<콘텐츠 재생 장치(2620)의 구성>
이상, 본 실시 형태에 따른 콘텐츠 서버(2610)의 구성을 설명하였다. 계속해서, 도 98을 참조하여, 콘텐츠 재생 장치(2620)의 구성을 설명한다.
도 98은, 콘텐츠 재생 장치(2620)의 구성을 도시한 기능 블록도이다. 도 98에 도시한 바와 같이, 콘텐츠 재생 장치(2620)는 통신부(2651)와, 기억부(2652)와, 재생부(2653)와, 선택부(2654)와, 현재지 취득부(2656)를 구비한다.
통신부(2651)는 콘텐츠 서버(2610)와의 인터페이스이며, 콘텐츠 서버(2610)에 대하여 데이터를 요구하고, 콘텐츠 서버(2610)로부터 데이터를 취득한다. 보다상세하게는, 통신부(2651)는 HTTP에 따라서 콘텐츠 재생 장치(2620)와 통신하는 HTTP 클라이언트로서의 기능을 갖는다. 예를 들어 통신부(2651)는 HTTP Range를 이용함으로써, 콘텐츠 서버(2610)로부터 MPD나 부호화 데이터의 세그먼트를 선택적으로 취득할 수 있다.
기억부(2652)는 콘텐츠의 재생에 관한 다양한 정보를 기억한다. 예를 들어 통신부(2651)에 의해 콘텐츠 서버(2610)로부터 취득되는 세그먼트를 순차적으로 버퍼링한다. 기억부(2652)에 버퍼링된 부호화 데이터의 세그먼트는, FIFO(First In First Out)에서 재생부(2653)에 순차적으로 공급된다.
또한 기억부(2652)는 후술하는 콘텐츠 서버(2611)로부터 요구된, MPD에 기술되어 있는 콘텐츠의 URL에의 파라미터의 부가 지시에 기초하여, 통신부(2651)로 URL에 파라미터를 부가하고, 그 URL에 액세스하기 위한 정의를 기억한다.
재생부(2653)는 기억부(2652)로부터 공급되는 세그먼트를 순차적으로 재생한다. 구체적으로는, 재생부(2653)는 세그먼트의 디코드, DA 변환 및 렌더링 등을 행한다.
선택부(2654)는 MPD에 포함되는 어느 하나의 비트레이트에 대응하는 부호화 데이터의 세그먼트를 취득할지를 동일 콘텐츠 내에서 순차적으로 선택한다. 예를 들어 선택부(2654)가 네트워크(2612)의 대역에 따라서 세그먼트 「A1」, 「B2」, 「A3」을 순차적으로 선택하면, 도 95에 도시한 바와 같이, 통신부(2651)가 콘텐츠 서버(2610)로부터 세그먼트 「A1」, 「B2」, 「A3」을 순차적으로 취득한다.
현재지 취득부(2656)는 콘텐츠 재생 장치(2620)의 현재의 위치를 취득하는 것이며, 예를 들어 GPS(Global Positioning System) 수신기 등 현재지를 취득하는 모듈로 구성되어 있어도 된다. 또한 현재지 취득부(2656)는 무선 네트워크를 사용해서 콘텐츠 재생 장치(2620)의 현재의 위치를 취득하는 것이어도 된다.
<콘텐츠 서버(2611)의 구성>
도 99는, 콘텐츠 서버(2611)의 구성예를 도시하는 설명도이다. 도 99에 도시한 바와 같이, 콘텐츠 서버(2611)는 기억부(2671)와, 통신부(2672)를 구비한다.
기억부(2671)는 MPD의 URL의 정보를 기억한다. MPD의 URL의 정보는, 콘텐츠의 재생을 요구하는 콘텐츠 재생 장치(2620)로부터의 요구에 따라서, 콘텐츠 서버(2611)로부터 콘텐츠 재생 장치(2620)로 송신된다. 또한 기억부(2671)는 콘텐츠 재생 장치(2620)에의 MPD의 URL의 정보를 제공할 때 그 MPD에 기술되어 있는 URL에 콘텐츠 재생 장치(2620)에서 파라미터를 부가시킬 때의 정의 정보를 기억한다.
통신부(2672)는 콘텐츠 재생 장치(2620)와의 인터페이스이며, 네트워크(2612)를 통해서 콘텐츠 재생 장치(2620)와 통신한다. 즉 통신부(2672)는 콘텐츠의 재생을 요구하는 콘텐츠 재생 장치(2620)로부터, MPD의 URL의 정보의 요구를 수신하고, 콘텐츠 재생 장치(2620)로 MPD의 URL의 정보를 송신한다. 통신부(2672)로부터 송신되는 MPD의 URL에는, 콘텐츠 재생 장치(2620)에서 파라미터를 부가시키기 위한 정보가 포함된다.
콘텐츠 재생 장치(2620)에서 MPD의 URL에 부가시키는 파라미터에 대해서는, 콘텐츠 서버(2611) 및 콘텐츠 재생 장치(2620)에서 공유하는 정의 정보로 다양하게 설정할 수 있다. 일례를 들면, 콘텐츠 재생 장치(2620)의 현재 위치, 콘텐츠 재생 장치(2620)를 사용하는 유저의 유저 ID, 콘텐츠 재생 장치(2620)의 메모리 사이즈, 콘텐츠 재생 장치(2620)의 스토리지 용량 등의 정보를, 콘텐츠 재생 장치(2620)에서 MPD의 URL에 부가시킬 수 있다.
이상과 같은 구성의 콘텐츠 재생 시스템에 있어서, 도 1 내지 도 80을 참조하여 상술한 바와 같은 본 기술을 적용함으로써, 도 1 내지 도 80을 참조하여 상술한 효과와 마찬가지 효과를 얻을 수 있다.
즉, 콘텐츠 서버(2610)의 인코더(2641)는 상술한 실시 형태에 따른 화상 부호화 장치의 기능을 갖는다. 또한, 콘텐츠 재생 장치(2620)의 재생부(2653)는 상술한 실시 형태에 따른 화상 복호 장치의 기능을 갖는다. 그에 의해, 부호화·복호에 필요한 기억 용량의 증대를 억제할 수 있다.
또한, 콘텐츠 재생 시스템에 있어서, 본 기술에 의해 부호화된 데이터를 송수신함으로써, 부호화·복호에 필요한 기억 용량의 증대를 억제할 수 있다.
<16. Wi-Fi 규격의 무선 통신 시스템의 응용예>
<Wi-Fi 규격의 무선 통신 시스템의 응용예>
본 기술을 적용 가능한 무선 통신 시스템에 있어서의 무선 통신 장치의 기본 동작예에 대해서 설명한다.
<무선 통신 장치의 기본 동작예>
처음에, P2P(Peer to Peer) 접속을 확립해서 특정한 애플리케이션을 동작시킬 때까지의 무선 패킷 송수신이 이루어진다.
이어서, 제2 층에서 접속하기 전에, 사용하는 특정한 애플리케이션을 지정하고 나서 P2P 접속을 확립해서 특정한 애플리케이션을 동작시킬 때까지의 무선 패킷 송수신이 이루어진다. 그 후, 제2 층에서의 접속 후에, 특정한 애플리케이션을 기동하는 경우의 무선 패킷 송수신이 이루어진다.
<특정한 애플리케이션 동작 개시 시에 있어서의 통신예>
도 100 및 도 101은 상술한 P2P(Peer to Peer) 접속을 확립해서 특정한 애플리케이션을 동작시킬 때까지의 무선 패킷 송수신의 예이며, 무선 통신의 기초로 되는 각 장치에 의한 통신 처리예를 나타내는 시퀀스차트이다. 구체적으로는, Wi-Fi Alliance에 있어서 표준화되어 있는 Wi-Fi 다이렉트(Direct) 규격(Wi-Fi P2P라 불리는 경우도 있음)에서의 접속에 이르는 다이렉트 접속의 확립 수순의 일례를 나타낸다.
여기서, Wi-Fi 다이렉트에서는, 복수의 무선 통신 장치가 서로의 존재를 검출한다(Device Discovery, Service Discovery). 그리고, 접속 기기 선택을 행하면 그 선택된 기기간에 있어서, WPS(Wi-Fi Protected Setup)에서 기기 인증을 행함으로써 다이렉트 접속을 확립한다. 또한, Wi-Fi 다이렉트에서는, 복수의 무선 통신 장치가 본체(Group Owner) 또는 별체(Client)의 어느 것으로서의 역할을 담당할지를 결정해서 통신 그룹을 형성한다.
단, 이 통신 처리예에서는, 일부 패킷 송수신에 대해서는 생략해서 나타낸다. 예를 들어 첫회 접속 시에는, 상술한 바와 같이, WPS를 사용하기 위한 패킷 교환이 필요하며, Authentication Request/Response의 교환 등에 있어서도 패킷 교환이 필요해진다. 그러나, 도 100 및 도 101에서는, 이들 패킷 교환에 대한 도시를 생략하고, 2회째 이후의 접속에 대해서만 나타낸다.
또한, 도 100 및 도 101에서는, 제1 무선 통신 장치(2701) 및 제2 무선 통신 장치(2702) 사이에 있어서의 통신 처리예를 나타내지만, 다른 무선 통신 장치간에 있어서의 통신 처리에 대해서도 마찬가지이다.
처음에, 제1 무선 통신 장치(2701) 및 제2 무선 통신 장치(2702) 사이에 있어서 Device discovery가 행해진다(2711). 예를 들어 제1 무선 통신 장치(2701)는 Probe request(응답 요구 신호)를 송신하고, 이 Probe request에 대한 Probe response(응답 신호)를 제2 무선 통신 장치(2702)로부터 수신한다. 이에 의해, 제1 무선 통신 장치(2701) 및 제2 무선 통신 장치(2702)는 서로의 존재를 알아낼 수 있다. 또한, Device discovery에 의해, 상대의 디바이스명이나 종류(TV, PC, 스마트폰 등)를 취득할 수 있다.
계속해서, 제1 무선 통신 장치(2701) 및 제2 무선 통신 장치(2702) 사이에 있어서 Service discovery가 행해진다(2712). 예를 들어 제1 무선 통신 장치(2701)는 Device discovery에서 알아낸 제2 무선 통신 장치(2702)가 대응하고 있는 서비스를 문의하는 Service discovery Query를 송신한다. 그리고, 제1 무선 통신 장치(2701)는 Service discovery Response를 제2 무선 통신 장치(2702)로부터 수신함으로써, 제2 무선 통신 장치(2702)가 대응하고 있는 서비스를 취득한다. 즉, Service discovery에 의해, 상대가 실행 가능한 서비스 등을 취득할 수 있다. 상대가 실행 가능한 서비스는, 예를 들어 service, protocol(DLNA(Digital Living Network Alliance) DMR(Digital Media Renderer) 등)이다.
계속해서, 유저에 의해 접속 상대의 선택 조작(접속 상대 선택 조작)이 행해진다(2713). 이 접속 상대 선택 조작은, 제1 무선 통신 장치(2701) 및 제2 무선 통신 장치(2702) 중 어느 한쪽에만 발생하기도 한다. 예를 들어 제1 무선 통신 장치(2701)의 표시부에 접속 상대 선택 화면이 표시되고, 이 접속 상대 선택 화면에 있어서 접속 상대로서 제2 무선 통신 장치(2702)가 유저 조작에 의해 선택된다.
유저에 의해 접속 상대 선택 조작이 행해지면(2713), 제1 무선 통신 장치(2701) 및 제2 무선 통신 장치(2702) 사이에 있어서 Group Owner Negotiation이 행해진다(2714). 도 100 및 도 101에서는, Group Owner Negotiation의 결과에 의해, 제1 무선 통신 장치(2701)가 그룹 오너(Group Owner)(2715)가 되고, 제2 무선 통신 장치(2702)가 클라이언트(Client)(2716)가 되는 예를 나타낸다.
계속해서, 제1 무선 통신 장치(2701) 및 제2 무선 통신 장치(2702) 사이에 있어서, 각 처리(2717 내지 2720)가 행해짐으로써, 다이렉트 접속이 확립된다. 즉, Association(L2(제2 층)link 확립)(2717), Secure link 확립(2718)이 순차 행해진다. 또한, IP Address Assignment(2719), SSDP(Simple Service Discovery Protocol) 등에 의한 L3 상에서의 L4 setup(2720)이 순차 행해진다. 또한, L2(layer2)는 제2 층(데이터 링크층)을 의미하고, L3(layer3)은 제3 층(네트워크층)을 의미하고, L4(layer4)는 제4 층(트랜스포트층)을 의미한다.
계속해서, 유저에 의해 특정한 애플리케이션의 지정 또는 기동 조작(애플리케이션 지정·기동 조작)이 행해진다(2721). 이 애플리케이션 지정·기동 조작은, 제1 무선 통신 장치(2701) 및 제2 무선 통신 장치(2702) 중 어느 한쪽에만 발생하기도 한다. 예를 들어 제1 무선 통신 장치(2701)의 표시부에 애플리케이션 지정·기동 조작 화면이 표시되고, 이 애플리케이션 지정·기동 조작 화면에 있어서 특정한 애플리케이션이 유저 조작에 의해 선택된다.
유저에 의해 애플리케이션 지정·기동 조작이 행해지면(2721), 이 애플리케이션 지정·기동 조작에 대응하는 특정한 애플리케이션이 제1 무선 통신 장치(2701) 및 제2 무선 통신 장치(2702) 사이에 있어서 실행된다(2722).
여기서, Wi-Fi Direct 규격 이전의 사양(IEEE802.11로 표준화된 사양)의 범위 내에서, AP(Access Point)-STA(Station)간의 접속을 행하는 경우를 상정한다. 이 경우에는, 제2 층에서 접속하기 전(IEEE802.11 용어에서는 association 전)에는, 어떤 디바이스와 연결하려고 하는 것인지를 사전에 알 수 없었다.
이에 반해, 도 100 및 도 101에 도시한 바와 같이, Wi-Fi Direct에서는, Device discovery나 Service discovery(option)에 있어서, 접속 후보 상대를 찾을 때, 접속 상대의 정보를 취득할 수 있다. 이 접속 상대의 정보는, 예를 들어 기본적인 디바이스의 타입이나, 대응하고 있는 특정한 애플리케이션 등이다. 그리고, 그 취득된 접속 상대의 정보에 기초하여, 유저에게 접속 상대를 선택시킬 수 있다.
이 구조를 확장하여, 제2 층에서 접속하기 전에 특정한 애플리케이션을 지정하고, 접속 상대를 선택하고, 이 선택 후에, 자동으로 특정한 애플리케이션을 기동시키는 무선 통신 시스템을 실현하는 것도 가능하다. 이러한 경우의 접속에 이르는 시퀀스의 일례를, 도 103에 도시한다. 또한, 이 통신 처리에 있어서 송수신되는 프레임 포맷(frame format)의 구성예를 도 102에 도시한다.
<프레임 포맷의 구성예>
도 102는 본 기술의 기초로 되는 각 장치에 의한 통신 처리에 있어서 송수신되는 프레임 포맷(frame format)의 구성예를 모식적으로 도시하는 도면이다. 즉, 도 102에는, 제2 층에서의 접속을 확립하기 위한 MAC frame의 구성예를 나타낸다. 구체적으로는, 도 103에 도시하는 시퀀스를 실현하기 위한 Association Request/Response(2787)의 프레임 포맷의 일례이다.
도 102에 도시한 바와 같이, MAC frame은, Frame Control(2751) 내지 FCS(2758)로 이루어지고, 그 중 Frame Control(2751)로부터 Sequence Control(2756)까지는, MAC 헤더이다. 또한, Association Request를 송신할 때는, Frame Control(2751)에 있어서, B3B2="0b00" 또한 B7B6B5B4="0b0000"이 설정된다. 또한, Association Response를 encapsulate할 때에는, Frame Control(2751)에 있어서, B3B2="0b00" 또한 B7B6B5B4="0b0001"이 설정된다. 또한, 「0b00」은 이진법으로 「00」인 것을 나타내고, 「0b0000」은, 이진법으로 「0000」인 것을 나타내고, 「0b0001」은, 이진법으로 「0001」인 것을 나타낸다.
여기서, 도 100에 도시하는 MAC frame(Frame body(2757))은 기본적으로는, IEEE802.11-2007 사양서 section7.2.3.4절과 7.2.3.5절에 기재된 Association Request/Response frame format이다. 단, IEEE802.11 사양서 내에서 정의되어 있는 Information Element(이하, IE라 약칭)(2759)뿐만 아니라, 독자적으로 확장된 IE를 포함시키고 있는 점이 다르다.
또한, Vendor Specific IE(2760)인 것을 나타내기 때문에, IE Type(Information Element ID(2761))에는, 10진수로 127이 세트된다. 이 경우, IEEE802.11-2007 사양 7.3.2.26절에 의해, Length 필드(2762)과, OUI 필드(2763)이 계속되고, 이 후에 vendor specific content(2764)가 배치된다.
Vendor specific content(2764)의 내용으로서는, 최초에 vendor specific IE의 type을 나타내는 필드(IE type(2765))를 설치한다. 그리고, 이 후에, 복수의subelement(2766)를 저장할 수 있는 구성으로 하는 것이 생각된다.
subelement(2766)의 내용으로서, 사용되어야 할 특정한 애플리케이션의 명칭(2767)이나, 그 특정한 애플리케이션 동작 시의 디바이스의 역할(2768)을 포함시키는 것이 생각된다. 또한, 특정한 애플리케이션 또는, 그 제어를 위해서 사용되는 포트 번호 등의 정보(L4 셋업을 위한 정보)(2769)나, 특정한 애플리케이션 내에서의 Capability에 관한 정보(Capability 정보)(2770)를 포함시키는 것이 생각된다. 여기서, Capability 정보는, 예를 들어 지정하는 특정한 애플리케이션이 DLNA의 경우에, 음성 송출/재생에 대응하고 있는, 영상 송출/재생에 대응하고 있는 등을 특정하기 위한 정보이다.
이상과 같은 구성의 무선 통신 시스템에 있어서, 도 1 내지 도 80을 참조하여 상술한 바와 같은 본 기술을 적용함으로써, 도 1 내지 도 80을 참조하여 상술한 효과와 마찬가지 효과를 얻을 수 있다. 즉, 부호화·복호에 필요한 기억 용량의 증대를 억제할 수 있다. 또한, 상술한 무선 통신 시스템에 있어서, 본 기술에 의해 부호화된 데이터를 송수신함으로써, 부호화·복호에 필요한 기억 용량의 증대를 억제할 수 있다.
또한, 본 명세서에서는, 각종 정보가, 부호화 스트림에 다중화되어, 부호화측으로부터 복호측으로 전송되는 예에 대해서 설명하였다. 그러나, 이들 정보를 전송하는 방법은 이러한 예에 한정되지 않는다. 예를 들어 이들 정보는, 부호화 비트 스트림에 다중화되는 일 없이, 부호화 비트 스트림과 관련지어진 별개인 데이터로서 전송되고 또는 기록되어도 된다. 여기서, 「관련짓는다」라는 용어는, 비트 스트림에 포함되는 화상(슬라이스 또는 블록 등, 화상의 일부여도 된다)과 그 화상에 대응하는 정보를 복호 시에 링크시킬 수 있도록 하는 것을 의미한다. 즉, 정보는 화상(또는 비트 스트림)과는 다른 전송로 상에서 전송되어도 된다. 또한, 정보는 화상(또는 비트 스트림)과는 다른 기록 매체(또는 동일한 기록 매체의 다른 기록 에리어)에 기록되어도 된다. 또한, 정보와 화상(또는 비트 스트림)은, 예를 들어 복수 프레임, 1 프레임, 또는 프레임 내의 일부분 등의 임의의 단위로 서로 관련지어져도 된다.
이상, 첨부 도면을 참조하면서 본 발명의 적합한 실시 형태에 대해서 상세하게 설명했지만, 본 발명은 이러한 예에 한정되지 않는다. 본 발명의 속하는 기술의 분야에 있어서의 통상의 지식을 갖는 사람이라면, 청구범위에 기재된 기술적 사상의 범주 내에서, 각종 변경예 또는 수정예에 상도할 수 있는 것은 명확하며, 이들에 대해서도, 당연히 본 발명의 기술적 범위에 속하는 것으로 이해된다.
또한, 본 기술은 이하와 같은 구성도 취할 수 있다.
(1) 복수의 주 레이어를 갖는 화상이 부호화된 부호화 데이터와, 상기 복수의 주 레이어간의 예측인 레이어간 예측을 행할지를, 서브 레이어를 사용해서 제어하는 레이어간 예측 제어 정보를 수취하는 수취부와,
상기 수취부에 의해 수취된 상기 레이어간 예측 제어 정보에 의해 지정되는 서브 레이어만 상기 레이어간 예측을 행하도록 하여, 상기 수취부에 의해 수취된 상기 부호화 데이터의 각 주 레이어를 복호하는 복호부
를 구비하는 화상 처리 장치.
(2) 상기 복호부는, 커런트 주 레이어의 커런트 픽처가, 상기 레이어간 예측 제어 정보에 의해 상기 레이어간 예측을 행하도록 지정되는 서브 레이어에 속하는 경우, 상기 커런트 픽처의 부호화 데이터를, 상기 레이어간 예측을 사용해서 복호하는
(1), (3) 내지 (9) 중 어느 하나에 기재된 화상 처리 장치.
(3) 상기 레이어간 예측 제어 정보는, 상기 레이어간 예측을 허가하는 최상위 서브 레이어를 지정하고,
상기 복호부는, 최하위 서브 레이어로부터 상기 레이어간 예측 제어 정보에 의해 지정되는 상기 최상위 서브 레이어까지의 서브 레이어에 속하는 픽처의 부호화 데이터를, 상기 레이어간 예측을 사용해서 복호하는
(1), (2), (4) 내지 (9) 중 어느 하나에 기재된 화상 처리 장치.
(4) 상기 레이어간 예측 제어 정보는, 주 레이어마다 설정되는
(1) 내지 (3), (5) 내지 (9) 중 어느 하나에 기재된 화상 처리 장치.
(5) 상기 레이어간 예측 제어 정보는, 전체 주 레이어 공통의 파라미터로서 설정되는
(1) 내지 (4), (6) 내지 (9) 중 어느 하나에 기재된 화상 처리 장치.
(6) 상기 수취부는, 상기 레이어간 예측 제어 정보로서, 서로 독립적으로 설정된, 상기 복수의 주 레이어간의 픽셀 예측인 레이어간 픽셀 예측을 행할지를 제어하는 레이어간 픽셀 예측 제어 정보와, 상기 복수의 주 레이어간의 신택스 예측인 레이어간 신택스 예측을 행할지를 제어하는 레이어간 신택스 예측 제어 정보를 수취하고,
상기 복호부는, 상기 수취부에 의해 수취된 상기 레이어간 픽셀 예측 제어 정보에 기초하여 상기 레이어간 픽셀 예측을 행하고, 상기 수취부에 의해 수취된 상기 레이어간 신택스 예측 제어 정보에 기초하여 상기 레이어간 신택스 예측을 행하는
(1) 내지 (5), (7) 내지 (9) 중 어느 하나에 기재된 화상 처리 장치.
(7) 상기 레이어간 픽셀 예측 제어 정보는, 상기 레이어간 픽셀 예측을 행할지를, 상기 서브 레이어를 사용해서 제어하고,
상기 복호부는, 상기 레이어간 픽셀 예측 제어 정보에 의해 지정되는 서브 레이어만 상기 레이어간 픽셀 예측을 행하고,
상기 레이어간 신택스 예측 제어 정보는, 상기 레이어간 신택스 예측을 행할지를, 픽처 또는 슬라이스마다 제어하고,
상기 복호부는, 상기 레이어간 신택스 예측 제어 정보에 의해 지정되는 픽처 또는 슬라이스만 상기 레이어간 신택스 예측을 행하는
(1) 내지 (6), (8), (9) 중 어느 하나에 기재된 화상 처리 장치.
(8) 상기 레이어간 픽셀 예측 제어 정보는, 날 유닛(nal_unit), 비디오 파라미터 세트(VPS(Video Parameter Set)), 또는 확장 비디오 파라미터 세트(vps_extension)로서 전송되는
(1) 내지 (7), (9) 중 어느 하나에 기재된 화상 처리 장치.
(9) 상기 레이어간 신택스 예측 제어 정보는, 날 유닛(nal_unit), 픽처 파라미터 세트(PPS(Picture Parameter Set)), 또는 슬라이스 헤더(SliceHeader)로서 전송되는
(1) 내지 (8) 중 어느 하나에 기재된 화상 처리 장치.
(10) 복수의 주 레이어를 갖는 화상이 부호화된 부호화 데이터와, 상기 복수의 주 레이어간의 예측인 레이어간 예측을 행할지를, 서브 레이어를 사용해서 제어하는 레이어간 예측 제어 정보를 수취하고,
수취된 상기 레이어간 예측 제어 정보에 의해 지정되는 서브 레이어만 상기 레이어간 예측을 행하도록 하여, 수취된 상기 부호화 데이터의 각 주 레이어를 복호하는
화상 처리 방법.
(11) 복수의 주 레이어간의 예측인 레이어간 예측을 행할지를, 서브 레이어를 사용해서 제어하는 레이어간 예측 제어 정보에 의해 지정되는 서브 레이어만 상기 레이어간 예측을 행하도록 하여, 상기 화상 데이터의 각 주 레이어를 부호화하는 부호화부와,
상기 부호화부에 의해 부호화되어 얻어진 부호화 데이터와, 상기 레이어간 예측 제어 정보를 전송하는 전송부를 구비하는 화상 처리 장치.
(12) 상기 부호화부는, 커런트 주 레이어의 커런트 픽처가, 상기 레이어간 예측 제어 정보에 의해 상기 레이어간 예측을 행하도록 지정되는 서브 레이어에 속하는 경우, 상기 커런트 픽처의 화상 데이터를, 상기 레이어간 예측을 사용해서 부호화하는
(11), (13) 내지 (19) 중 어느 하나에 기재된 화상 처리 장치.
(13) 상기 레이어간 예측 제어 정보는, 상기 레이어간 예측을 허가하는 최상위 서브 레이어를 지정하고,
상기 부호화부는, 최하위 서브 레이어로부터 상기 레이어간 예측 제어 정보에 의해 지정되는 상기 최상위 서브 레이어까지의 서브 레이어에 속하는 픽처의 화상 데이터를, 상기 레이어간 예측을 사용해서 부호화하는
(11), (12), (14) 내지 (19) 중 어느 하나에 기재된 화상 처리 장치.
(14) 상기 레이어간 예측 제어 정보는, 주 레이어마다 설정되는
(11) 내지 (13), (15) 내지 (19) 중 어느 하나에 기재된 화상 처리 장치.
(15) 상기 레이어간 예측 제어 정보는, 전체 주 레이어 공통의 파라미터로서 설정되는
(11) 내지 (14), (16) 내지 (19) 중 어느 하나에 기재된 화상 처리 장치.
(16) 상기 부호화부는,
상기 레이어간 예측 제어 정보로서 설정된, 상기 복수의 주 레이어간의 픽셀 예측인 레이어간 픽셀 예측을 행할지를 제어하는 레이어간 픽셀 예측 제어 정보에 기초하여 상기 레이어간 픽셀 예측을 행하고,
상기 레이어간 예측 제어 정보로서, 상기 레이어간 픽셀 예측 제어 정보와는 독립적으로 설정된, 상기 복수의 주 레이어간의 신택스 예측인 레이어간 신택스 예측을 행할지를 제어하는 레이어간 신택스 예측 제어 정보에 기초하여 상기 레이어간 신택스 예측을 행하고,
상기 전송부는, 상기 레이어간 예측 제어 정보로서, 서로 독립적으로 설정된 상기 레이어간 픽셀 예측 제어 정보 및 상기 레이어간 신택스 예측 제어 정보를 전송하는
(11) 내지 (15), (17) 내지 (19) 중 어느 하나에 기재된 화상 처리 장치.
(17) 상기 레이어간 픽셀 예측 제어 정보는, 상기 레이어간 픽셀 예측을 행할지를, 상기 서브 레이어를 사용해서 제어하고,
상기 부호화부는, 상기 레이어간 픽셀 예측 제어 정보에 의해 지정되는 서브 레이어만 상기 레이어간 픽셀 예측을 행하고,
상기 레이어간 신택스 예측 제어 정보는, 상기 레이어간 신택스 예측을 행할지를, 픽처 또는 슬라이스마다 제어하고,
상기 부호화부는, 상기 레이어간 신택스 예측 제어 정보에 의해 지정되는 픽처 또는 슬라이스만 상기 레이어간 신택스 예측을 행하는
(11) 내지 (16), (18), (19) 중 어느 하나에 기재된 화상 처리 장치.
(18) 상기 전송부는, 상기 레이어간 픽셀 예측 제어 정보를, 날 유닛(nal_unit), 비디오 파라미터 세트(VPS(Video Parameter Set)), 또는 확장 비디오 파라미터 세트(vps_extension)로서 전송하는
(11) 내지 (17), (19) 중 어느 하나에 기재된 화상 처리 장치.
(19) 상기 전송부는, 상기 레이어간 신택스 예측 제어 정보를, 날 유닛(nal_unit), 픽처 파라미터 세트(PPS(Picture Parameter Set)), 또는 슬라이스 헤더(SliceHeader)로서 전송하는
(11) 내지 (18) 중 어느 하나에 기재된 화상 처리 장치.
(20) 복수의 주 레이어간의 예측인 레이어간 예측을 행할지를, 서브 레이어를 사용해서 제어하는 레이어간 예측 제어 정보에 의해 지정되는 서브 레이어만 상기 레이어간 예측을 행하도록 하여, 상기 화상 데이터의 각 주 레이어를 부호화하고,
부호화되어 얻어진 부호화 데이터와, 상기 레이어간 예측 제어 정보를 전송하는 화상 처리 방법.
(21) 상기 레이어간 예측 제어 정보는, 상기 주 레이어의 최대수 이하의 주 레이어의 각각에 대해서 설정되는
(1) 내지 (9) 중 어느 하나에 기재된 화상 처리 장치.
(22) 상기 레이어간 예측 제어 정보는, 상기 서브 레이어의 최대수 이하의 값으로 설정되는
(1) 내지 (9) 중 어느 하나에 기재된 화상 처리 장치.
(23) 상기 레이어간 예측 제어 정보는, 참조원 주 레이어의 서브 레이어수와, 참조처 주 레이어의 서브 레이어수 중, 적은 분의 서브 레이어수 이하의 값으로 설정되는
(1) 내지 (9) 중 어느 하나에 기재된 화상 처리 장치.
(24) 상기 레이어간 예측 제어 정보는, 전체 주 레이어에 관한 정보로 이루어지는 공통 정보로서 전송되는
(1) 내지 (9) 중 어느 하나에 기재된 화상 처리 장치.
(25) 상기 레이어간 예측 제어 정보는, 상기 주 레이어의 최대수 이하의 주 레이어의 각각에 대해서 설정되는
(11) 내지 (19) 중 어느 하나에 기재된 화상 처리 장치.
(26) 상기 레이어간 예측 제어 정보는, 상기 서브 레이어의 최대수 이하의 값으로 설정되는
(11) 내지 (19) 중 어느 하나에 기재된 화상 처리 장치.
(27) 상기 레이어간 예측 제어 정보는, 참조원 주 레이어의 서브 레이어수와, 참조처 주 레이어의 서브 레이어수 중, 적은 쪽의 서브 레이어수 이하의 값으로 설정되는
(11) 내지 (19) 중 어느 하나에 기재된 화상 처리 장치.
(28) 상기 전송부는, 상기 레이어간 예측 제어 정보를, 전체 주 레이어에 관한 정보로 이루어지는 공통 정보로서 전송하는
(11) 내지 (19) 중 어느 하나에 기재된 화상 처리 장치.
(31) 복수 레이어로 이루어지는 화상 데이터가 부호화된 부호화 데이터와, 다른 레이어의 화상을 참조 화상으로서 이용해서 예측 화상을 생성하는 레이어간 텍스처 예측의 실행을 픽처마다 제어하는 정보를 수취하는 수취부와,
상기 수취부에 의해 수취된 상기 정보에 따라서 상기 레이어간 텍스처 예측을 적용하는 예측 처리를 행하여 예측 화상을 생성하고, 상기 예측 화상을 사용하여, 상기 수취부에 의해 수취된 상기 부호화 데이터를 복호하는 복호부
를 구비하는 화상 처리 장치.
(32) 상기 정보는, 상기 다른 레이어의 화상을 저장하는 프레임 메모리의 롱 텀 참조 프레임에 대한 신택스인
(31), (33) 내지 (39) 중 어느 하나에 기재된 화상 처리 장치.
(33) 상기 수취부는, 상기 정보를, 시퀀스 파라미터 세트(seq_parameter_set_rbsp)로서 수취하는
(31), (32), (34) 내지 (39) 중 어느 하나에 기재된 화상 처리 장치.
(34) 상기 수취부는, 상기 정보로서, 시퀀스 파라미터 세트의 신택스 used_by_curr_pic_lt_sps_flag[i]를 수취하는
(31) 내지 (33), (35) 내지 (39) 중 어느 하나에 기재된 화상 처리 장치.
(35) 상기 복호부는, 상기 신택스 used_by_curr_pic_lt_sps_flag[i]의 값이 「0」으로 설정된 픽처는, 상기 레이어간 텍스처 예측을 실행할 수 없도록 제어되고 있다고 하고, 상기 신택스 used_by_curr_pic_lt_sps_flag[i]의 값이 「1」로 설정된 픽처는, 상기 레이어간 텍스처 예측을 실행할 수 있도록 제어되고 있다고 해서 예측 처리를 행하는
(31) 내지 (34), (36) 내지 (39) 중 어느 하나에 기재된 화상 처리 장치.
(36) 상기 수취부는, 상기 정보를, 슬라이스 헤더(slice_segment_header)로서 수취하는
(31) 내지 (35), (37) 내지 (39) 중 어느 하나에 기재된 화상 처리 장치.
(37) 상기 수취부는, 상기 정보로서, 슬라이스 헤더의 신택스 used_by_curr_pic_lt_flag[i]를 수취하는
(31) 내지 (36), (38), (39) 중 어느 하나에 기재된 화상 처리 장치.
(38) 상기 복호부는, 상기 신택스 used_by_curr_pic_lt_flag[i]의 값이 「0」으로 설정된 픽처는, 상기 레이어간 텍스처 예측을 실행할 수 없도록 제어되고 있다고 하고, 상기 신택스 used_by_curr_pic_lt_flag[i]의 값이 「1」로 설정된 픽처는, 상기 레이어간 텍스처 예측을 실행할 수 있도록 제어되고 있다고 해서 예측 처리를 행하는
(31) 내지 (37), (39) 중 어느 하나에 기재된 화상 처리 장치.
(39) 상기 복호부는,
인트라 예측을 행하는 경우, 상기 레이어간 텍스처 예측으로서, 텍스처 BL 모드로 인트라 예측을 행하고,
인터 예측을 행하는 경우, 상기 레이어간 텍스처 예측으로서, 레퍼런스 인덱스 모드로 인터 예측을 행하는
(31) 내지 (38) 중 어느 하나에 기재된 화상 처리 장치.
(40) 복수 레이어로 이루어지는 화상 데이터가 부호화된 부호화 데이터와, 다른 레이어의 화상을 참조 화상으로서 이용해서 예측 화상을 생성하는 레이어간 텍스처 예측의 실행을 픽처마다 제어하는 정보를 수취하고,
수취된 상기 정보에 따라서 상기 레이어간 텍스처 예측을 적용하는 예측 처리를 행하여 예측 화상을 생성하고, 상기 예측 화상을 사용하여, 수취된 상기 부호화 데이터를 복호하는
화상 처리 방법.
(41) 복수 레이어로 이루어지는 화상 데이터에 있어서 다른 레이어의 화상을 참조 화상으로서 이용해서 예측 화상을 생성하는 레이어간 텍스처 예측의 실행을 픽처마다 제어하는 정보를 생성하는 생성부와,
상기 생성부에 의해 생성된 상기 정보에 따라서 상기 레이어간 텍스처 예측을 적용하는 예측 처리를 행하여 예측 화상을 생성하고, 상기 예측 화상을 사용해서 상기 화상 데이터를 부호화하는 부호화부와,
상기 부호화부에 의해 부호화되어 얻어진 부호화 데이터와, 상기 생성부에 의해 생성된 상기 정보를 전송하는 전송부
를 구비하는 화상 처리 장치.
(42) 상기 생성부는, 상기 정보로서, 상기 다른 레이어의 화상을 저장하는 프레임 메모리의 롱 텀 참조 프레임에 대한 신택스를 생성하는
(41), (43) 내지 (49) 중 어느 하나에 기재된 화상 처리 장치.
(43) 상기 전송부는, 상기 신택스를 시퀀스 파라미터 세트(seq_parameter_set_rbsp)에 있어서 전송하는
(41), (42), (44) 내지 (49) 중 어느 하나에 기재된 화상 처리 장치.
(44) 상기 생성부는, 상기 신택스로서, 시퀀스 파라미터 세트의 신택스 used_by_curr_pic_lt_sps_flag[i]의 값을 설정하는
(41) 내지 (43), (45) 내지 (49) 중 어느 하나에 기재된 화상 처리 장치.
(45) 상기 생성부는, 레이어간 텍스처 예측을 실행할 수 없도록 하는 픽처에 대하여 상기 신택스 used_by_curr_pic_lt_sps_flag[i]의 값을 「0」으로 설정하고, 레이어간 텍스처 예측을 실행할 수 있도록 하는 픽처에 대하여 상기 신택스 used_by_curr_pic_lt_sps_flag[i]의 값을 「1」로 설정하는
(41) 내지 (44), (46) 내지 (49) 중 어느 하나에 기재된 화상 처리 장치.
(46) 상기 전송부는, 상기 신택스를 슬라이스 헤더(slice_segment_header)에 있어서 전송하는
(41) 내지 (45), (47) 내지 (49) 중 어느 하나에 기재된 화상 처리 장치.
(47) 상기 생성부는, 상기 신택스로서, 슬라이스 헤더의 신택스 used_by_curr_pic_lt_flag[i]의 값을 설정하는
(41) 내지 (46), (48), (49) 중 어느 하나에 기재된 화상 처리 장치.
(48) 상기 생성부는, 레이어간 텍스처 예측을 실행할 수 없도록 하는 픽처에 대하여 상기 신택스 used_by_curr_pic_lt_flag[i]의 값을 「0」으로 설정하고, 레이어간 텍스처 예측을 실행할 수 있도록 하는 픽처에 대하여 상기 신택스 used_by_curr_pic_lt_flag[i]의 값을 「1」로 설정하는
(41) 내지 (47), (49) 중 어느 하나에 기재된 화상 처리 장치.
(49) 상기 부호화부는,
인트라 예측을 행하는 경우, 상기 레이어간 텍스처 예측으로서, 텍스처 BL 모드로 인트라 예측을 행하고,
인터 예측을 행하는 경우, 상기 레이어간 텍스처 예측으로서, 레퍼런스 인덱스 모드로 인터 예측을 행하는
(41) 내지 (48) 중 어느 하나에 기재된 화상 처리 장치.
(50) 복수 레이어로 이루어지는 화상 데이터에 있어서 다른 레이어의 화상을 참조 화상으로서 이용해서 예측 화상을 생성하는 레이어간 텍스처 예측의 실행을 픽처마다 제어하는 정보를 생성하고,
생성된 상기 정보에 따라서 상기 레이어간 텍스처 예측을 적용하는 예측 처리를 행하여 예측 화상을 생성하고, 상기 예측 화상을 사용해서 상기 화상 데이터를 부호화하고,
얻어진 상기 화상 데이터의 부호화 데이터와, 생성된 상기 정보를 전송하는
화상 처리 방법.