WO2014129873A1 - 스케일러빌러티를 지원하는 멀티 레이어 구조의 비디오 인코딩 방법 및 비디오 디코딩 방법과 이를 이용하는 장치 - Google Patents

스케일러빌러티를 지원하는 멀티 레이어 구조의 비디오 인코딩 방법 및 비디오 디코딩 방법과 이를 이용하는 장치 Download PDF

Info

Publication number
WO2014129873A1
WO2014129873A1 PCT/KR2014/001517 KR2014001517W WO2014129873A1 WO 2014129873 A1 WO2014129873 A1 WO 2014129873A1 KR 2014001517 W KR2014001517 W KR 2014001517W WO 2014129873 A1 WO2014129873 A1 WO 2014129873A1
Authority
WO
WIPO (PCT)
Prior art keywords
block
current block
layer
prediction
current
Prior art date
Application number
PCT/KR2014/001517
Other languages
English (en)
French (fr)
Inventor
박준영
김철근
헨드리헨드리
전병문
김정선
Original Assignee
엘지전자 주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 엘지전자 주식회사 filed Critical 엘지전자 주식회사
Priority to KR1020157022990A priority Critical patent/KR20150140635A/ko
Priority to US14/770,241 priority patent/US10616607B2/en
Priority to EP14754088.4A priority patent/EP2961166B1/en
Priority to CN201480018231.3A priority patent/CN105075260B/zh
Publication of WO2014129873A1 publication Critical patent/WO2014129873A1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/80Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation
    • H04N19/82Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation involving filtering within a prediction loop
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/30Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/513Processing of motion vectors
    • H04N19/517Processing of motion vectors by encoding
    • H04N19/52Processing of motion vectors by encoding by predictive encoding

Abstract

본 발명은 스케일러빌러티를 지원하는 멀티 레이어 구조에서의 비디오 인코딩 및 디코딩 방법과 이를 이용하는 장치에 관한 것으로서, 본 발명에 따른 비디오 디코딩 방법은 현재 블록에 대한 예측 샘플을 유도하는 단계, 예측 샘플을 기반으로 현재 픽처를 복원하는 단계, 복원된 현재 픽처 내 블록 에지들에 대하여 디블록킹 필터링을 적용하는 단계 및 복원 픽처의 샘플에 대하여 오프셋을 적용하는 단계를 포함한다.

Description

스케일러빌러티를 지원하는 멀티 레이어 구조의 비디오 인코딩 방법 및 비디오 디코딩 방법과 이를 이용하는 장치
본 발명은 비디오 부호화 및 복호화에 관한 것으로서, 더 구체적으로는 멀티 레이어 구조에서 현재 레이어의 부호화/복호화 대상 픽처를 복원하는 방법 및 장치에 관한 것이다.
최근 고해상도, 고품질의 영상에 대한 요구가 다양한 응용 분야에서 증가하고 있다. 영상이 고해상도를 가지고 고품질이 될수록 해당 영상에 관한 정보량도 함께 증가하고 있다.
정보량의 증가로 인해 다양한 성능의 장치와 다양한 환경의 네트워크가 등장하고 있다. 다양한 성능의 장치와 다양한 환경의 네트워크가 등장함에 따라서, 동일한 콘텐츠를 다양한 품질로 이용할 수 있게 되었다.
구체적으로, 단말 장치가 지원할 수 있는 품질의 영상이 다양해지고, 구축된 네트워크 환경이 다양해짐으로써, 어떤 환경에서는 일반적인 품질의 영상을 이용하지만, 또 다른 환경에서는 더 높은 품질의 영상을 이용할 수 있게 된다.
예를 들어, 휴대 단말에서 비디오 콘텐츠를 구매한 소비자가 가정 내 대화면의 디스플레이를 통해 동일한 비디오 콘텐츠를 더 큰 화면과 더 높은 해상도로 감상할 수 있게 되는 것이다.
최근에는 HD(High Definition) 해상도를 가지는 방송이 서비스되면서 많은 사용자들은 이미 고해상도, 고화질의 영상에 익숙해지고 있고, 서비스 제공자와 사용자들은 HDTV와 더불어 HDTV의 4배 이상의 해상도를 갖는 UHD(Ultra High Definition)의 서비스에도 관심을 기울이고 있다.
따라서, 다양한 환경에서 사용자가 요구하는 영상 서비스를 품질에 따라서 다양하게 제공하기 위해 고용량 비디오에 대한 고효율의 인코딩/디코딩 방법을 기반으로 영상의 품질, 예컨대 영상의 화질, 영상의 해상도, 영상의 크기, 비디오의 프레임 레이트 등에 스케일러빌러티를 제공하는 것이 필요하다. 또한, 이러한 스케일러빌러티에 수반되는 다양한 영상 처리 방법이 논의될 필요가 있다.
본 발명은 멀티 레이어 구조의 스케일러블 비디오 코딩에서 효과적인 인터 레이어 예측이 수행되기 위한 방법 및 장치를 제공하는 것을 목적으로 한다.
본 발명은 멀티 레이어 구조의 스케일러블 비디오 코딩에서 인터 레이어 예측을 위해 다른 레이어의 픽처를 참조하여 현재 레이어의 픽처를 효과적으로 복원하기 위한 방법 및 장치를 제공하는 것을 목적으로 한다.
본 발명은 멀티 레이어 구조의 스케일러블 비디오 코딩에서 인터 레이어 예측을 위해 다른 레이어의 픽처에 대한 움직임 벡터를 포함하는 움직임 정보를 이용하는 방법 및 장치를 제공하는 것을 목적으로 한다.
본 발명의 일 실시형태는 스케일러빌러티(scalability)를 지원하는 멀티 레이어 구조의 비디오 디코딩 방법으로서, 현재 블록에 대한 인터 레이어 예측의 수행 가능성을 기반으로 현재 블록에 대한 예측 샘플을 유도하는 단계, 예측 샘플과 레지듀얼 신호를 더하여 현재 픽처를 복원하는 단계, 복원된 현재 픽처 내의 블록 에지에 대하여 디블록킹 필터를 적용하는 단계 및 현재 픽처의 샘플에 밴드 오프셋 또는 에지 오프셋을 적용하는 단계를 포함한다.
본 발명의 다른 실시형태는 스케일러빌러티(scalability)를 지원하는 멀티 레이어 구조의 비디오 인코딩 방법으로서, 현재 블록에 대한 인터 레이어 예측의 수행 가능성을 기반으로 현재 블록에 대한 예측 샘플을 유도하는 단계, 예측 샘플과 원 신호와의 차이인 레지듀얼을 생성하는 단계, 레이듀얼에 관한 정보 및 예측 샘플을 유도하기 위한 정보를 전송하는 단계를 포함한다.
본 발명에 의하면, 멀티 레이어 구조의 스케일러블 비디오 코딩에서 효과적인 인터 레이어 예측을 수행함으로써 비디오 코딩 효율을 높일 수 있다.
본 발명에 의하면, 멀티 레이어 구조의 스케일러블 비디오 코딩에서 인터 레이어 예측을 위해 다른 레이어의 픽처를 참조함으로써 현재 레이어의 픽처를 효과적으로 복원할 수 있다.
본 발명에 의하면, 멀티 레이어 구조의 스케일러블 비디오 코딩에서 인터 레이어 예측을 위해 다른 레이어의 픽처에 대한 움직임 벡터를 포함하는 움직임 정보를 효과적으로 이용할 수 있다.
도 1은 본 발명의 일 실시예에 따라 스케일러빌러티를 지원하는 비디오 인코딩 장치를 개략적으로 도시한 블록도이다.
도 2는 본 발명에 따라서 스케일러블 코딩을 수행하는 인코딩 장치에서의 인터 레이어 예측에 관한 일 예를 설명하는 블록도이다.
도 3은 스케일러빌러티를 지원하는 멀티 레이어 구조에서 발명에 따라 현재 블록에 움직임 벡터 예측 모드를 적용하는 방법을 개략적으로 설명하는 도면이다.
도 4는 스케일러빌러티를 지원하는 멀티 레이어 구조에서 발명에 따라 현재 블록에 머지 모드를 적용하는 방법을 개략적으로 설명하는 도면이다.
도 5는 본 발명에 따른 디블록킹 필터링의 진행 방식을 개략적으로 설명하는 도면이다.
도 6은 밴드 오프셋을 적용하는 방법의 일 예를 개략적으로 설명하는 도면이다.
도 7은 에지 오프셋의 네 가지 클래스를 나타내는 도면이다.
도 8은 에지 오프셋의 카테고리를 개략적으로 설명하는 도면이다.
도 9는 본 발명에 따른, 비디오 인코딩 장치의 동작에 관한 일 예를 개략적으로 설명하는 순서도이다.
도 10은 본 발명에 따른 비디오 디코딩 장치의 동작에 관한 일 예를 개략적으로 설명하는 순서도이다.
본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 상세하게 설명하고자 한다. 그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니다. 본 명세서에서 사용하는 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명의 기술적 사상을 한정하려는 의도로 사용되는 것은 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 명세서에서, "포함하다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성 요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성 요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
한편, 본 발명에서 설명되는 도면상의 각 구성들은 비디오 인코딩 장치/디코딩 장치에서 서로 다른 특징적인 기능들에 관한 설명의 편의를 위해 독립적으로 도시된 것으로서, 각 구성들이 서로 별개의 하드웨어나 별개의 소프트웨어로 구현된다는 것을 의미하지는 않는다. 예컨대, 각 구성 중 두 개 이상의 구성이 합쳐져 하나의 구성을 이룰 수도 있고, 하나의 구성이 복수의 구성으로 나뉘어질 수도 있다. 각 구성이 통합 및/또는 분리된 실시예도 본 발명의 본질에서 벗어나지 않는 한 본 발명의 권리범위에 포함된다.
이하, 첨부한 도면들을 참조하여, 본 발명의 바람직한 실시예를 보다 상세하게 설명하고자 한다. 이하, 도면상의 동일한 구성 요소에 대해서는 동일한 참조 부호를 사용하고 동일한 구성 요소에 대해서 중복된 설명은 생략한다.
스케일러빌러티를 지원하는 비디오 코딩 방법(이하, ‘스케일러블 코딩’이라 함)에서는 입력 신호들을 레이어 별로 처리할 수 있다. 레이어에 따라서 입력 신호(입력 영상)들은 해상도(resolution), 프레임 레이트(frame rate), 비트 뎁스(bit-depth), 컬러 포맷(color format), 애스팩트 율(aspect ratio), 뷰(view) 중 적어도 하나가 상이할 수 있다.
본 명세서에서, 스케일러블 코딩이라 함은 스케일러블 인코딩과 스케일러블 디코딩을 포함한다.
스케일러블 인코딩/디코딩에서는 레이어 간의 차이점을 이용하여, 즉 스케일러빌러티에 기반하여, 레이어 간의 예측을 수행함으로써 정보의 중복 전송/처리를 줄이고 압축 효율을 높일 수 있다.
도 1은 본 발명의 일 실시예에 따라 스케일러빌러티를 지원하는 비디오 인코딩 장치를 개략적으로 도시한 블록도이다.
도 1의 예에서는, 설명의 편의를 위해 두 개의 레이어로 구성된 멀티 레이어 구조를 예로서 설명한다. 하지만, 본 발명은 이에 한정되지 않으며, 본 발명이 적용되는 멀티 레이어 구조는 둘 이상의 레이어를 포함할 수 있음에 유의한다.
도 1을 참조하면, 인코딩 장치(100)는 레이어 1에 대한 인코딩부(105)와 레이어 0에 대한 인코딩부(135)를 포함한다.
레이어 0은 베이스 레이어, 참조 레이어 혹은 하위 레이어일 수 있으며, 레이어 1은 인핸스먼트 레이어, 현재 레이어 혹은 상위 레이어일 수 있다.
레이어 1의 인코딩부(105)는 예측부(110), 변환/양자화부(115), 필터링부(120), DPB(Decoded Picture Buffer, 125), 엔트로피 코딩부(130), 및 MUX(Multiplexer, 165)를 포함한다.
레이어 0의 인코딩부(135)는 예측부(140), 변환/양자화부(145), 필터링부(150), DPB(155) 및 엔트로피 코딩부(160)를 포함한다.
예측부(110, 140)는 입력된 영상에 대하여 인터 예측과 인트라 예측을 수행할 수 있다. 예측부(110, 140)는 소정의 처리 단위로 예측을 수행할 수 있다. 예측의 수행 단위는 코딩 유닛(Coding Unit: CU)일 수도 있고, 예측 유닛(Prediction Unit: PU)일 수도 있으며, 변환 유닛(Transform Unit: TU)일 수도 있다.
예컨대, 예측부(110, 140)는 CU 단위로 인터 예측을 적용할 것인지 인트라 예측을 적용할 것인지를 결정하고, PU 단위로 예측의 모드를 결정하며, PU 단위 혹은 TU 단위로 예측을 수행할 수도 있다. 수행되는 예측은 예측 블록의 생성과 레지듀얼 블록(레지듀얼 신호)의 생성을 포함한다.
인터 예측을 통해서는 현재 픽쳐의 이전 픽쳐 및/또는 이후 픽쳐 중 적어도 하나의 픽쳐의 정보를 기초로 예측을 수행하여 예측 블록을 생성할 수 있다. 인트라 예측을 통해서는 현재 픽쳐 내의 픽셀 정보를 기초로 예측을 수행하여 예측 블록을 생성할 수 있다.
인터 예측의 모드 또는 방법으로서, 스킵(skip) 모드, 머지(merge) 모드, MVP(Motion Vector Predictor) 모드 등이 있다. 인터 예측에서는 예측 대상인 현재 PU에 대하여 참조 픽쳐를 선택하고, 참조 픽쳐 내에서 현재 PU에 대응하는 참조 블록을 선택할 수 있다. 예측부(110, 140)는 참조 블록을 기반으로 예측 블록을 생성할 수 있다.
예측 블록은 정수 샘플 단위로 생성될 수도 있고, 정수 이하 픽셀 단위로 생성될 수도 있다. 이때, 움직임 벡터 역시 정수 픽셀 단위 혹은 정수 픽셀 이하의 단위로 표현될 수 있다.
인터 예측에 있어서 움직임 정보 즉, 참조 픽쳐의 인덱스, 움직임 벡터, 레지듀얼 신호 등의 정보는 엔트로피 인코딩되어 디코딩 장치에 전달된다. 스킵 모드가 적용되는 경우에는 레지듀얼을 생성, 변환, 양자화, 전송하지 않을 수 있다.
인트라 예측에서 예측 모드는 33개의 방향성 예측 모드와 적어도 두 개 이상의 비방향성 모드를 가질 수 있다. 비향성성 모드는 DC 예측 모드 및 플래이너 모드(Planar 모드)을 포함할 수 있다. 인트라 예측에서는 참조 샘플에 필터를 적용한 후 예측 블록을 생성할 수도 있다.
PU는 다양한 사이즈/형태의 블록일 수 있으며, 예컨대 인터 예측의 경우에 PU는 2N×2N 블록, 2N×N 블록, N×2N 블록, 또는 N×N 블록 (N은 정수) 등일 수 있다. 인트라 예측의 경우에 PU는 2N×2N 블록 또는 N×N 블록 (N은 정수) 등일 수 있다. 이때, N×N 블록 크기의 PU는 특정한 경우에만 적용하도록 설정할 수 있다. 예컨대 최소 크기 CU에 대해서만 NxN 블록 크기의 PU를 이용하도록 정하거나 인트라 예측에 대해서만 이용하도록 정할 수도 있다. 또한, 상술한 크기의 PU 외에, N×mN 블록, mN×N 블록, 2N×mN 블록 또는 mN×2N 블록 (m<1) 등의 PU를 더 정의하여 사용할 수도 있다.
또한, 예측부(110)는 레이어 0의 정보를 이용하여 레이어 1에 대한 예측을 수행할 수 있다. 본 명세서에서는 다른 레이어의 정보를 이용하여 현재 레이어의 정보를 예측하는 방법을, 설명의 편의를 위해, 인터 레이어 예측이라고 한다.
다른 레이어의 정보를 이용하여 예측되는 (즉, 인터 레이어 예측에 의해 예측되는) 현재 레이어의 정보로는 텍스처, 움직임 정보, 유닛 정보, 소정의 파라미터(예컨대, 필터링 파라미터 등) 중 적어도 하나일 수 있다.
또한, 현재 레이어에 대한 예측에 이용되는 (즉, 인터 레이어 예측에 이용되는) 다른 레이어의 정보로는 텍스처, 움직임 정보, 유닛 정보, 소정의 파라미터(예컨대, 필터링 파라미터 등) 중 적어도 하나일 수 있다.
인터 레이어 예측에 있어서, 현재 블록은 현재 레이어(도 1의 예에서는 레이어 1) 내 현재 픽처 내의 블록으로서, 부호화 대상 블록일 수 있다. 참조 블록은 현재 블록의 예측에 참조되는 레이어(참조 레이어, 도 1의 예에서는 레이어 0)에서 현재 블록이 속하는 픽처(현재 픽처)와 동일한 액세스 유닛(AU: access Unit)에 속하는 픽처(참조 픽처) 내의 블록으로서, 현재 블록에 대응하는 블록일 수 있다.
인터 레이어 예측의 일 예로서, 참조 레이어의 움직임 정보를 이용하여 현재 레이어의 움직임 정보를 예측하는 인터 레이어 움직임 예측이 있다. 인터 레이어 움직임 예측에 의하면, 참조 블록의 움직임 정보를 이용하여 현재 블록의 움직임 정보를 예측할 수 있다.
인터 레이어 움직임 예측을 적용하는 경우에, 에측부(110)는 참조 레이어의 움직임 정보를 스케일링하여 이용할 수도 있다.
인터 레이어 예측의 또 다른 예로서 인터 레이어 텍스쳐 예측은 복원된 참조 블록의 텍스처를 현재 블록에 대한 예측 값으로 사용할 수 있다. 이때, 예측부(110)는 참조 블록의 텍스처를 업샘플링에 의해 스케일링할 수도 있다.
인터 레이어 예측의 또 다른 예인 인터 레이어 유닛 정보 예측에서는 참조 레이어의 유닛(CU, PU 및/또는 TU) 정보를 유도하여 현재 레이어의 유닛 정보로 사용하거나, 참조 레이어의 유닛 정보를 기반으로 현재 레이어의 유닛 정보를 결정할 수 있다.
이때, 유닛 정보는 각 유닛 레벨에서의 정보를 포함할 수 있다. 예컨대, CU 정보의 경우, 파티션(CU, PU 및 또는 TU)에 관한 정보, 변환에 관한 정보, 예측에 대한 정보, 코딩에 대한 정보를 포함할 수 있다. PU 정보의 경우, PU 파티션에 관한 정보, 예측에 관한 정보(예컨대, 움직임 정보, 예측 모드에 관한 정보 등) 등을 포함할 수 있다. TU에 관한 정보는 TU 파티션에 관한 정보, 변환에 관한 정보(변환 계수, 변환 방법 등) 등을 포함할 수 있다.
인터 레이어 예측의 또 다른 예인 인터 레이어 파라미터 예측에서는 참조 레이어의 유도된 파라미터를 현재 레이어에서 재사용하거나 참조 레이어에서 사용한 파라미터를 기반으로 현재 레이어에 대한 파라미터를 유도할 수 있다.
인터 레이어 예측의 또 다른 예인 인터 레이어 레지듀얼 예측에서는 다른 레이어의 레지듀얼 정보를 이용하여 현재 레이어의 레지듀얼을 예측하고 이를 기반으로 현재 블록에 대한 예측을 수행할 수 있다.
인터 레이어 예측의 또 다른 예인 인터 레이어 차분 예측에서는, 현재 레이어의 복원 픽쳐와 참조 레이어의 복원 픽쳐를 업샘플링 혹은 다운샘플링한 영상들 간의 차분을 이용하여 현재 블록에 대한 예측을 수행할 수 있다.
인터 레이어 예측의 또 다른 예인 인터 레이어 신택스 예측에서는 참조 레이어의 신택스 정보를 이용하여 현재 블록의 텍스처를 예측하거나 생성할 수 있다. 이때, 참조되는 참조 레이어의 신택스 정보는 인트라 예측 모드에 관한 정보, 움직임 정보를 포함할 수 있다.

상술된 인터 레이어를 이용한 여러 예측 방법은 특정 블록에 대한 예측 시 복 수 개가 이용될 수도 있다.
여기서는 인터 레이어 예측의 예로서, 인터 레이어 텍스처 예측, 인터 레이어 움직임 예측, 인터 레이어 유닛 정보 예측, 인터 레이어 파라미터 예측, 인터 레이어 레지듀얼 예측, 인터 레이어 차분 예측, 인터 레이어 신택스 예측 등을 설명하였으나, 본 발명에서 적용할 수 있는 인터 레이어 예측은 이에 한정되지 않는다.
예컨대, 인터 레이어 예측을 현재 레이어에 대한 인터 예측의 확장으로서 적용할 수도 있다. 즉, 참조 레이어로부터 유도된 참조 픽처를 현재 블록의 인터 예측에 참조 가능한 참조 픽처들에 포함시켜서, 현재 블록에 대한 인터 예측을 수행할 수도 있다.
이 경우, 인터 레이어 참조 픽처는 현재 블록에 대한 참조 픽처 리스트에 포함될 수 있다. 예측부(110)는 인터 레이어 참조 픽처를 이용하여 현재 블록에 대한 인터 예측을 수행할 수 있다.
여기서, 인터 레이어 참조 픽처는 참조 레이어의 복원된 픽처를 현재 레이어에 대응하도록 샘플링하여 구성된 참조 픽처일 수 있다. 따라서, 참조 레이어의 복원된 픽처가 현재 레이어의 픽처에 대응하는 경우에는, 샘플링 없이 참조 레이어의 복원된 픽처를 인터 레이어 참조 픽처로 이용할 수 있다. 예컨대, 참조 레이의 복원된 픽처와 현재 레이어의 복원된 픽처에서 샘플들의 폭과 높이가 동일하고, 참조 레이어의 픽처에서 좌상단, 우상단, 좌하단, 우하단과 현재 레이어 의 픽처에서 좌상단, 우상단, 좌하단, 우하단 사이의 오프셋이 0이라면, 참조 레이어의 복원된 픽처를 다시 샘플링하지 않고, 현재 레이어의 인터 레이어 참조 픽처로 사용할 수도 있다.
또한, 인터 레이어 참조 픽처가 유도되는 참조 레이어의 복원 픽처는 부호화 대상인 현재 픽처와 동일한 AU에 속하는 픽처일 수 있다.
인터 레이어 참조 픽처를 참조 픽처 리스트에 포함하여, 현재 블록에 대한 인터 예측을 수행하는 경우에, 인터 레이어 참조 픽처의 참조 픽처 리스트 내 위치는 참조 픽처 리스트 L0과 L1에서 상이할 수 있다. 예컨대, 참조 픽처 리스트 L0에서는 현재 픽처 이전의 단기 참조 픽처들 다음에 인터 레이어 참조 픽처가 위치할 수 있고, 참조 픽처 리스트 L1에서는 참조 픽처 리스트의 마지막에 인터 레이어 참조 픽처가 위치할 수도 있다.
여기서, 참조 픽처 리스트 L0은 P 슬라이스의 인터 예측에 사용되는 참조 픽처 리스트 또는 B 슬라이스의 인터 예측에서 첫 번째 참조 픽처 리스트로 사용되는 참조 픽처 리스트이다. 참조 픽처 리스트 L1은 B 슬라이스의 인터 예측에 사용되는 두 번째 참조 픽처 리스트이다.
따라서, 참조 픽처 리스트 L0은 현재 픽처 이전의 단기 참조 픽처(들), 인터 레이어 참조 픽처, 현재 픽처 이후의 단기 참조 픽처(들), 장기 참조 픽처의 순서로 구성될 수 있다. 참조 픽처 리스트 L1은 현재 픽처 이후의 단기 참조 픽처(들), 현재 픽처 이전의 단기 참조 픽처(들), 장기 참조 픽처, 인터 레이어 참조 픽처의 순서로 구성될 수 있다.
이때, P 슬라이스(predictive slice)는 인트라 예측이 수행되거나 예측 블록 당 최대 1개의 움직임 벡터 및 참조 픽처 인덱스를 이용하여 인터 예측이 수행되는 슬라이스이다. B 슬라이스(bi-predictive slice)는 인트라 예측이 수행되거나 예측 블록 당 최대 두 개의 움직임 벡터와 참조 픽처 인덱스를 이용하여 예측이 수행되는 슬라이스이다. 이와 관련하여, I 슬라이스(intra slice)는 인트라 예측만이 적용된 슬라이스이다.
슬라이스는 하나 이상의 슬라이스 시그먼트(segment)들의 시퀀스이다. 슬라이스 시퀀스는 독립(independent) 슬라이스 시그먼트로부터 시작한다. 동일한 액세서 유닛 내에서 다음 번 독립 슬라이스 시그먼트보다 선행하는 종속(dependent) 슬라이스 시그먼트들이 존재한다면, 슬라이스는 슬라이스 시퀀스가 시작된 독립 슬라이스 시그먼트와 다음 독립 슬라이스 전의 종속 슬라이스 시그먼트들을 포함한다.
슬라이스 시그먼트는 타일 스캔에서 연속적으로 정렬(consecutively ordered)되고 단일 NAL(Network Abstraction Layer) 유닛에 포함된 코딩 트리 유닛(Coding Tree Unit: CTU) 또는 코딩 트리 블록(Coding Tree Block: CTB)의 시퀀스일 수 있다. 코딩 트리 유닛은 쿼드 트리(Quad-Tree) 구조의 코딩 유닛으로서, 최대 크기 코딩 유닛(Largest Coding Unit: LCU)일 수 있다. 본 명세서에서는 발명의 이해를 돕기 위해 필요한 곳에서 코딩 트리 유닛, 최대 코딩 유닛을 혼용하여 설명할 수도 있다.
슬라이스 시그먼트 내에서, 슬라이스 시그먼트의 첫 번째 코딩 트리 블록(코딩 트리 유닛) 혹은 모든 코딩 트리 블록(코딩 트리 유닛)들에 대한 데이터 요소를 포함하는 부분을 슬라이스 시그먼트 헤드라고 한다. 이때, 독립 슬라이스 시그먼트의 슬라이스 시그먼트 헤드를 슬라이스 헤더라고 한다.
슬라이스는 NAL 유닛의 전송 단위일 수 있다. 예컨대, NAL 유닛은 슬라이스들 혹은 슬라인스 세그먼트들로 구성될 수 있다.
또한, 인터 레이어 참조 픽처를 포함하는 참조 픽처 리스트를 기반으로 현재 블록에 대한 인터 예측을 수행하는 경우에, 참조 픽처 리스트는 복수의 레이어에서 유도된 복수의 인터 레이어 참조 픽처를 포함할 수 있다.
복수의 인터 레이어 참조 픽처를 포함하는 경우에, 인터 레이어 참조 픽처들은 참조 픽처 리스트 L0과 L1에서 교차 배치될 수도 있다. 예컨대, 두 개의 인터 레이어 참조 픽처, 인터 레이어 참조 픽처 ILRPi와 인터 레이어 참조 픽처 ILRPj가 현재 블록의 인터 예측에 사용되는 참조 픽처 리스트에 포함되는 경우를 가정하자. 이 경우, 참조 픽처 리스트 L0에서 ILRPi는 현재 픽처 이전의 단기 참조 픽처들 다음에 위치하고, ILRPj는 리스트의 마지막에 위치할 수 있다. 또한, 참조 픽처 리스트 L1에서 ILRPi는 리스트의 마지막에 위치하고, ILRPj는 현재 픽처 이후의 단기 참조 픽처들 다음에 위치할 수 있다.
이 경우, 참조 픽처 리스트 L0은 현재 픽처 이전의 단기 참조 픽처(들), 인터 레이어 참조 픽처 ILRPi, 현재 픽처 이후의 단기 참조 픽처(들), 장기 참조 픽처, 인터 레이어 참조 픽처 ILRPj의 순서로 구성될 수 있다. 참조 픽처 리스트 L1은 현재 픽처 이후의 단기 참조 픽처(들), 인터 레이어 참조 픽처 ILRPj, 현재 픽처 이전의 단기 참조 픽처(들), 장기 참조 픽처, 인터 레이어 참조 픽처 ILRPi의 순서로 구성될 수 있다.
또한, 두 인터 레이어 참조 픽처들 중 하나는 해상도에 관한 스케일러블 레이어로부터 유도한 인터 레이어 참조 픽처이고, 다른 하나는 다른 뷰를 제공하는 레이어로부터 유도한 인터 레이어 참조 픽처일 수도 있다. 이 경우, 예컨대, ILRPi가 다른 해상도를 제공하는 레이어로부터 유도한 인텉 레이어 참조 픽처이고, ILRPj가 다른 뷰를 제공하는 레이어로부터 유도한 인터 레이어 참조 픽처라면, 뷰(view)를 제외한 스케일러빌러티만을 지원하는 스케일러블 비디오 코딩의 경우 참조 픽처 리스트 L0은 현재 픽처 이전의 단기 참조 픽처(들), 인터 레이어 참조 픽처 ILRPi, 현재 픽처 이후의 단기 참조 픽처(들), 장기 참조 픽처의 순서로 구성될 수 있고, 참조 픽처 리스트 L1은 현재 픽처 이후의 단기 참조 픽처(들), 현재 픽처 이전의 단기 참조 픽처(들), 장기 참조 픽처, 인터 레이어 참조 픽처 ILRPi의 순서로 구성될 수 있다.
한편, 인터 레이어 예측에서 인터 레이어 참조 픽처의 정보는 샘플 값만 이용될 수도 있고, 움직임 정보(움직임 벡터)만 이용될 수도 있으며, 샘플 값과 움직임 정보가 모두 이용될 수도 있다. 예측부(110)는 참조 픽처 인덱스가 인터 레이어 참조 픽처를 지시하는 경우에, 인코딩 장치로부터 수신한 정보에 따라서 인터 레이어 참조 픽처의 샘플 값만 이용하거나, 인터 레이어 참조 픽처의 움직임 정보(움직임 벡터)만 이용하거나, 인터 레이어 참조 픽처의 샘플 값과 움직임 정보를 모두 이용할 수 있다.
인터 레이어 참조 픽처의 샘플 값만을 이용하는 경우에, 예측부(110)는 인터 레이어 참조 픽처에서 움직임 벡터가 특정하는 블록의 샘플들을 현재 블록의 예측 샘플로서 유도할 수 있다. 뷰(view)를 고려하지 않는 스케일러블 비디오 코딩의 경우에, 인터 레이어 참조 픽처를 이용하는 인터 예측(인터 레이어 예측)에서의 움직임 벡터는 고정된 값(예컨대, 0)으로 설정될 수 있다.
인터 레이어 참조 픽처의 움직임 정보만을 이용하는 경우에, 예측부(110)는 인터 레이어 참조 픽처에서 특정되는 움직임 벡터를 현재 블록의 움직임 벡터를 유도하기 위한 움직임 벡터 예측자로 사용할 수 있다. 또한, 예측부(110)는 인터 레이어 참조 픽처에서 특정되는 움직임 벡터를 현재 블록의 움직임 벡터로 이용할 수도 있다.
인터 레이어 참조 픽처의 샘플과 움직임 정보를 모두 이용하는 경우에, 예측부(110)는 인터 레이어 참조 픽처에서 현재 블록에 대응하는 영역의 샘플과 인터 레이어 참조 픽처에서 특정되는 움직임 정보(움직임 벡터)를 현재 블록의 예측에 이용할 수 있다.
인코딩 장치는 인터 레이어 예측이 적용되는 경우에, 참조 픽처 리스트에서 인터 레이어 참조 픽처를 지시하는 참조 인덱스를 디코딩 장치로 전송할 수 있으며, 인터 레이어 참조 픽처로부터 어떤 정보(샘플 정보, 움직임 정보 또는 샘플 정보와 움직임 정보)를 이용할 것인지를 특정하는 정보, 즉 두 레이어 사이에서 인터 레이어 예측에 관한 디펜던시(의존성, dependency)의 타입(dependency type)을 특정하는 정보도 디코딩 장치로 전송할 수 있다.
변환/양자화부(115, 145)는 변환 블록 단위로 레지듀얼 블록에 대한 변환을 수행하여 변환 계수를 생성하고, 변환 계수를 양자화 할 수 있다.
변환 블록은 샘플들의 사각형 블록으로서 동일한 변환이 적용되는 블록이다. 변환 블록은 변환 유닛(TU)일 수 있으며, 쿼드 트리(quad tree) 구조를 가질 수 있다.
변환/양자화부(115, 145)는 레지듀얼 블록에 적용된 예측 모드와 블록의 크기에 따라서 변환을 수행해서 변환 계수들의 2차원 어레이를 생성할 수 있다. 예컨대, 레지듀얼 블록에 인트라 예측이 적용되었고 블록이 4x4의 레지듀얼 배열이라면, 레지듀얼 블록을 DST(Discrete Sine Transform)를 이용하여 변환하고, 그 외의 경우라면 레지듀얼 블록을 DCT(Discrete Cosine Transform)를 이용하여 변환할 수 있다.
변환/양자화부(115, 145)는 변환 계수들을 양자화하여 양자화된 변환 계수를 생성할 수 있다.
변환/양자화부(115, 145)는 양자화된 변환 계수를 엔트로피 코딩부(130, 180)로 전달할 수 있다. 이때, 변환/양자화부(145)는 양자화된 변환 계수의 2차원 어레이를 소정의 스캔 순서에 따라 1차원 어레이로 재정렬하여 엔트로피 코딩부(130, 180)로 전달할 수도 있다. 또한, 변환/양자화부(115, 145)는 인터 예측을 위해, 레지듀얼과 예측 블록을 기반으로 생성된 복원 블록을 변환/양자화하지 않고, 필터링부(120, 150)에 전달할 수 있다.
한편, 변환/양자화부(115, 145)는 필요에 따라서, 변환을 생략(skip)하고 양자화만 수행하거나 변환과 양자화를 모두 생략할 수도 있다. 예컨대, 변환/양자화부(115, 165)는 특정한 예측 방법이 적용되거나 특정 크기를 갖는 블록, 혹은 특정 예측 블록이 적용된 특정한 크기의 블록에 대하여 변환을 생략할 수도 있다.
엔트로피 코딩부(130, 160)는 양자화된 변환 계수들에 대한 엔트로피 인코딩을 수행할 수 있다. 엔트로피 인코딩에는 예를 들어, 지수 골롬(Exponential Golomb), CABAC(Context-Adaptive Binary Arithmetic Coding) 등과 같은 인코딩 방법을 사용할 수 있다.
필터링부(120, 150)는 디블록킹 필터, ALF(Adaptive Loop Filter), SAO(Sample Adaptive Offset)를 복원된 픽쳐에 적용할 수 있다.
디블록킹 필터는 복원된 픽쳐에서 블록 간의 경계에 생긴 왜곡을 제거할 수 있다. ALF(Adaptive Loop Filter)는 디블록킹 필터를 통해 블록이 필터링된 후 복원된 영상과 원래의 영상을 비교한 값을 기초로 필터링을 수행할 수 있다. SAO는 디블록킹 필터가 적용된 레지듀얼 블록에 대하여, 픽셀 단위로 원본 영상과의 오프셋 차이를 복원하며, 밴드 오프셋(Band Offset), 에지 오프셋(Edge Offset) 등의 형태로 적용된다.
필터링부(120, 150)는 디블록킹 필터, ALF, SAO를 모두 적용하지 않고 디블록킹 필터만 적용하거나 디블록킹 필터와 ALF만 적용하거나 디블록킹 필터와 SAO만을 적용할 수도 있다.
DPB(125, 155)는 필터링부(120, 150)로부터 복원 블록 또는 복원 픽쳐를 전달받아 저장할 수 있다. DPB(125, 155)는 복원 블록 또는 픽쳐를 인터 예측을 수행하는 예측부(110, 140)에 제공할 수 있다.
레이어 0의 엔트로피 코딩부(160)에서 출력되는 정보와 레이어 1의 엔트로피 코딩부(130)에서 출력되는 정보는 MUX(185)에서 멀티플렉싱되어 비트스트림으로 출력될 수 있다.
한편, 여기서는 설명의 편의를 위해, 레이어 1의 인코딩부(105)가 MUX(165)를 포함하는 것으로 설명하였으나, MUX는 레이어 1의 인코딩부(105) 및 레이어 0의 인코딩부(135)와는 별도의 장치 혹은 모듈일 수 있다.
또한, 여기서는 두 개의 레이어로 구성된 멀티 레이어 구조에서 스케일러블 비디오 코딩이 수행되는 것을 설명하였으나, 본 발명은 이에 한정되지 않는다. 예컨대, 도 1의 인코딩 장치는 둘 이상의 레이어를 포함하는 멀티 레이어 구조에도 적용될 수 있다. N개의 레이어로 구성된 멀티 레이어 구조에 적용되는 경우에, 도 1의 레이어 0과 레이어 1은 N 개의 레이어 중 참조 관계를 나타내는 두 레이어일 수 있다.
이때, 인코딩 장치는 두 레이어 간의 참조 관계를 나타내는 정보를 디코딩 장치로 전송할 수 있다. 예컨대, 두 레이어 간에 인터 레이어 예측의 의존 관계가 존재하는 경우, 인코딩 장치는 direct_dependency_flag[L][M]을 전송할 수 있다. direct_dependency_flag[L][M]의 값이 1인 경우에 L 번째 레이어는 M 번째 레이어를 참조하여 예측될 수 있다.

도 2는 본 발명에 따라서 스케일러블 코딩을 수행하는 인코딩 장치에서의 인터 레이어 예측에 관한 일 예를 설명하는 블록도이다.
도 2를 참조하면, 디코딩 장치(200)는 레이어 1의 디코딩부(210)와 레이어 0의 디코딩부(250)를 포함한다.
레이어 0은 베이스 레이어, 참조 레이어 혹은 하위 레이어일 수 있으며, 레이어 1은 인핸스먼트 레이어, 현재 레이어 혹은 상위 레이어일 수 있다.
레이어 1의 디코딩부(210)는 엔트로피 디코딩부(215), 재정렬부(220), 역양자화부(225), 역변환부(230), 예측부(235), 필터링부(240), 메모리를 포함할 수 있다.
레이어 0의 디코딩부(250)는 엔트로피 디코딩부(255), 재정렬부(260), 역양자화부(265), 역변환부(270), 예측부(275), 필터링부(280), 메모리(285)를 포함할 수 있다.
인코딩 장치로부터 영상 정보를 포함하는 비트스트림이 전송되면, DEMUX(205)는 레이어별로 정보를 디멀티플렉싱하여 각 레이어별 디코딩 장치로 전달할 수 있다.
엔트로피 디코딩부(215, 255)는 인코딩 장치에서 사용한 엔트로피 코딩 방식에 대응하여 엔트로피 디코딩을 수행할 수 있다. 예컨대, 인코딩 장치에서 CABAC이 사용된 경우에, 엔트로피 디코딩부(215, 255)도 CABAC을 이용하여 엔트로피 디코딩을 수행할 수 있다.
엔트로피 디코딩부(215, 255)에서 디코딩된 정보 중 예측 블록을 생성하기 위한 정보는 예측부(235, 275)로 제공되고, 엔트로피 디코딩부(215, 255)에서 엔트로피 디코딩이 수행된 레지듀얼 값, 즉 양자화된 변환 계수는 재정렬부(220, 260)로 입력될 수 있다.
재정렬부(220, 260)는 엔트로피 디코딩부(215, 255)에서 엔트로피 디코딩된 비트스트림의 정보, 즉 양자화된 변환 계수를 인코딩 장치에서 재정렬한 방법을 기초로 재정렬할 수 있다.
예컨대, 재정렬부(220, 260)는 1차원 어레이의 양자화된 변환 계수들을 다시 2차원 어레이의 계수들로 재정렬할 수 있다. 재정렬부(220, 260)는 현재 블록(변환 블록)에 적용된 예측 모드 및/또는 변환 블록의 크기를 기반으로 스캐닝을 수행하여 계수(양자화된 변환 계수)들의 2차원 어레이를 생성할 수 있다.
역양자화부(225, 265)는 인코딩 장치에서 제공된 양자화 파라미터와 재정렬된 블록의 계수값을 기초로 역양자화를 수행하여 변환 계수들을 생성할 수 있다.
역변환부(230, 270)는 변환 계수들에 대하여 인코딩 장치의 변환부가 수행한 변환에 대한 역변환을 수행할 수 있다. 역변환부(230, 270)는 인코딩 장치에서 수행된 DCT(Discrete Cosine Transform) 및 DST(Discrete Sine Transform)에 대해 역DCT 및/또는 역DST를 수행할 수 있다.
인코딩 장치에서 DCT 및/또는 DST는 예측 방법, 현재 블록의 크기 및 예측 방향 등 복수의 정보에 따라 선택적으로 수행될 수 있고, 디코딩 장치의 역변환부(230, 270)는 인코딩 장치에서 수행된 변환 정보를 기초로 역변환을 수행할 수 있다.
예컨대, 역변환부(230, 270)은 예측 모드/블록 크기에 따라서 역DCT와 역DST를 적용할 수 있다. 가령, 역변환부(230, 270)은 인트라 예측이 적용된 4x4 루마 블록에 대해서 역DST를 적용할 수도 있다.
또한, 역변환부(230, 270)는 예측 모드/블록 크기에 상관 없이, 특정 역변환 방법을 고정적으로 사용할 수도 있다. 예컨대, 역변환부(330, 370)는 모든 변환 블록에 역DST만을 적용할 수 있다. 또한, 역변환부(330, 370)는 모든 변환 블록에 역DCT만을 적용할 수도 있다.
역변환부(230, 270)는 변환 계수들 혹은 변환 계수의 블록을 역변환하여 레지듀얼 혹은 레지듀얼 블록을 생성할 수 있다.
역변환부(230, 270)는 또한, 필요에 따라서 혹은 인코딩 장치에서 인코딩된 방식에 따라서, 변환을 생략(skip) 할 수도 있다. 예컨대, 역변환(230, 270)는 특정한 예측 방법이 적용되거나 특정 크기를 갖는 블록, 혹은 특정 예측 블록이 적용된 특정한 크기의 블록에 대하여 변환을 생략할 수도 있다.
예측부(235, 275)는 엔트로피 디코딩부(215, 255)로부터 전달된 예측 블록 생성 관련 정보와 메모리(245, 285)에서 제공된 이전에 디코딩된 블록 및/또는 픽쳐 정보를 기초로 현재 블록에 대한 예측 블록을 생성할 수 있다.
현재 블록에 대한 예측 모드가 인트라 예측(intra prediction) 모드인 경우에, 예측부(235, 275)는 현재 픽쳐 내의 픽셀 정보를 기초로 현재 블록에 대한 인트라 예측을 수행할 수 있다.
현재 블록에 대한 예측 모드가 인터 예측(inter prediction) 모드인 경우에, 예측부(235, 275)는 현재 픽쳐의 이전 픽쳐 또는 이후 픽쳐 중 적어도 하나의 픽쳐에 포함된 정보를 기초로 현재 블록에 대한 인터 예측을 수행할 수 있다. 인터 예측에 필요한 움직임 정보의 일부 또는 전부는 인코딩 장치로부터 수신한 정보를 확인하고, 이에 대응하여 유도될 수 있다.
인터 예측의 모드로서 스킵 모드가 적용되는 경우에는 인코딩 장치로부터 레지듀얼이 전송되지 않으며 예측 블록을 복원 블록으로 할 수 있다.
한편, 레이어 1의 예측부(235)는 레이어 1 내의 정보만을 이용하여 인터 예측 또는 인트라 예측을 수행할 수도 있고, 다른 레이어(레이어 0)의 정보를 이용하여 인터 레이어 예측을 수행할 수도 있다.
다른 레이어의 정보를 이용하여 예측되는 (즉, 인터 레이어 예측에 의해 예측되는) 현재 레이어의 정보로는 텍스처, 움직임 정보, 유닛 정보, 소정의 파라미터(예컨대, 필터링 파라미터 등) 중 적어도 하나일 수 있다.
또한, 현재 레이어에 대한 예측에 이용되는 (즉, 인터 레이어 예측에 이용되는) 다른 레이어의 정보로는 텍스처, 움직임 정보, 유닛 정보, 소정의 파라미터(예컨대, 필터링 파라미터 등) 중 적어도 하나일 수 있다.
인터 레이어 예측에 있어서, 현재 블록은 현재 레이어(도 2의 예에서는 레이어 1) 내 현재 픽처 내의 블록으로서, 복호화 대상 블록일 수 있다. 참조 블록은 현재 블록의 예측에 참조되는 레이어(참조 레이어, 도 2의 예에서는 레이어 0)에서 현재 블록이 속하는 픽처(현재 픽처)와 동일한 액세스 유닛(AU: access Unit)에 속하는 픽처(참조 픽처) 내의 블록으로서, 현재 블록에 대응하는 블록일 수 있다.
인터 레이어 예측의 일 예로서, 참조 레이어의 움직임 정보를 이용하여 현재 레이어의 움직임 정보를 예측하는 인터 레이어 움직임 예측이 있다. 인터 레이어 움직임 예측에 의하면, 참조 블록의 움직임 정보를 이용하여 현재 블록의 움직임 정보를 예측할 수 있다.
인터 레이어 움직임 예측을 적용하는 경우에, 에측부(235)는 참조 레이어의 움직임 정보를 스케일링하여 이용할 수도 있다.
인터 레이어 예측의 또 다른 예로서 인터 레이어 텍스쳐 예측은 복원된 참조 블록의 텍스처를 현재 블록에 대한 예측 값으로 사용할 수 있다. 이때, 예측부(235)는 참조 블록의 텍스처를 업샘플링에 의해 스케일링될 수 있다.
인터 레이어 예측의 또 다른 예인 인터 레이어 유닛 정보 예측에서는 참조 레이어의 유닛(CU, PU 및/또는 TU) 정보를 유도하여 현재 레이어의 유닛 정보로 사용하거나, 참조 레이어의 유닛 정보를 기반으로 현재 레이어의 유닛 정보를 결정할 수 있다.
이때, 유닛 정보는 각 유닛 레벨에서의 정보를 포함할 수 있다. 예컨대, CU 정보의 경우, 파티션(CU, PU 및 또는 TU)에 관한 정보, 변환에 관한 정보, 예측에 대한 정보, 코딩에 대한 정보를 포함할 수 있다. PU 정보의 경우, PU 파티션에 관한 정보, 예측에 관한 정보(예컨대, 움직임 정보, 예측 모드에 관한 정보 등) 등을 포함할 수 있다. TU에 관한 정보는 TU 파티션에 관한 정보, 변환에 관한 정보(변환 계수, 변환 방법 등) 등을 포함할 수 있다.
인터 레이어 예측의 또 다른 예인 인터 레이어 파라미터 예측에서는 참조 레이어의 유도된 파라미터를 현재 레이어에서 재사용하거나 참조 레이어에서 사용한 파라미터를 기반으로 현재 레이어에 대한 파라미터를 유도할 수 있다.
인터 레이어 예측의 또 다른 예인 인터 레이어 레지듀얼 예측에서는 다른 레이어의 레지듀얼 정보를 이용하여 현재 레이어의 레지듀얼을 예측하고 이를 기반으로 현재 블록에 대한 예측을 수행할 수 있다.
인터 레이어 예측의 또 다른 예인 인터 레이어 차분 예측에서는, 현재 레이어의 복원 픽쳐와 참조 레이어의 복원 픽쳐를 업샘플링 혹은 다운샘플링한 영상들 간의 차분을 이용하여 현재 블록에 대한 예측을 수행할 수 있다.
인터 레이어 예측의 또 다른 예인 인터 레이어 신택스 예측에서는 참조 레이어의 신택스 정보를 이용하여 현재 블록의 텍스처를 예측하거나 생성할 수 있다. 이때, 참조되는 참조 레이어의 신택스 정보는 인트라 예측 모드에 관한 정보, 움직임 정보를 포함할 수 있다.
상술된 인터 레이어를 이용한 여러 예측 방법은 특정 블록에 대한 예측 시 복 수 개가 이용될 수도 있다.

여기서는 인터 레이어 예측의 예로서, 인터 레이어 텍스처 예측, 인터 레이어 움직임 예측, 인터 레이어 유닛 정보 예측, 인터 레이어 파라미터 예측, 인터 레이어 레지듀얼 예측, 인터 레이어 차분 예측, 인터 레이어 신택스 예측 등을 설명하였으나, 본 발명에서 적용할 수 있는 인터 레이어 예측은 이에 한정되지 않는다.
예컨대, 인터 레이어 예측을 현재 레이어에 대한 인터 예측의 확장으로서 적용할 수도 있다. 즉, 참조 레이어로부터 유도된 참조 픽처를 현재 블록의 인터 예측에 참조 가능한 참조 픽처들에 포함시켜서, 현재 블록에 대한 인터 예측을 수행할 수도 있다.
예측부(235)는 인코딩 장치로부터 수신한 참조 픽처 인덱스 혹은 주변 블록으로부터 유도한 참조 픽처 인덱스가 참조 픽처 리스트 내에서 인터 레이어 참조 픽처를 지시하는 경우에, 인터 레이어 참조 픽처를 이용한 인터 레이어 예측을 수행할 수 있다. 예컨대, 예측부(235)는 참조 픽처 인덱스가 인터 레이어 참조 픽처를 지시하는 경우에, 인터 레이어 참조 픽처에서 움직임 벡터에 의해 특정되는 영역의 샘플 값을 현재 블록에 대한 예측 블록으로 유도할 수 있다.
이 경우, 인터 레이어 참조 픽처는 현재 블록에 대한 참조 픽처 리스트에 포함될 수 있다. 예측부(235)는 인터 레이어 참조 픽처를 이용하여 현재 블록에 대한 인터 예측을 수행할 수 있다.
여기서, 인터 레이어 참조 픽처는 참조 레이어의 복원된 픽처를 현재 레이어에 대응하도록 샘플링하여 구성된 참조 픽처일 수 있다. 따라서, 참조 레이어의 복원된 픽처가 현재 레이어의 픽처에 대응하는 경우에는, 샘플링 없이 참조 레이어의 복원된 픽처를 인터 레이어 참조 픽처로 이용할 수 있다. 예컨대, 참조 레이의 복원된 픽처와 현재 레이어의 복원된 픽처에서 샘플들의 폭과 높이가 동일하고, 참조 레이어의 픽처에서 좌상단, 우상단, 좌하단, 우하단과 현재 레이어 의 픽처에서 좌상단, 우상단, 좌하단, 우하단 사이의 오프셋이 0이라면, 참조 레이어의 복원된 픽처를 다시 샘플링하지 않고, 현재 레이어의 인터 레이어 참조 픽처로 사용할 수도 있다.
또한, 인터 레이어 참조 픽처가 유도되는 참조 레이어의 복원 픽처는 부호화 대상인 현재 픽처와 동일한 AU에 속하는 픽처일 수 있다. 인터 레이어 참조 픽처를 참조 픽처 리스트에 포함하여, 현재 블록에 대한 인터 예측을 수행하는 경우에, 인터 레이어 참조 픽처의 참조 픽처 리스트 내 위치는 참조 픽처 리스트 L0과 L1에서 상이할 수 있다. 예컨대, 참조 픽처 리스트 L0에서는 현재 픽처 이전의 단기 참조 픽처들 다음에 인터 레이어 참조 픽처가 위치할 수 있고, 참조 픽처 리스트 L1에서는 참조 픽처 리스트의 마지막에 인터 레이어 참조 픽처가 위치할 수도 있다.
여기서, 참조 픽처 리스트 L0은 P 슬라이스의 인터 예측에 사용되는 참조 픽처 리스트 또는 B 슬라이스의 인터 예측에서 첫 번째 참조 픽처 리스트로 사용되는 참조 픽처 리스트이다. 참조 픽처 리스트 L1은 B 슬라이스의 인터 예측에 사용되는 두 번째 참조 픽처 리스트이다.
따라서, 참조 픽처 리스트 L0은 현재 픽처 이전의 단기 참조 픽처(들), 인터 레이어 참조 픽처, 현재 픽처 이후의 단기 참조 픽처(들), 장기 참조 픽처의 순서로 구성될 수 있다. 참조 픽처 리스트 L1은 현재 픽처 이후의 단기 참조 픽처(들), 현재 픽처 이전의 단기 참조 픽처(들), 장기 참조 픽처, 인터 레이어 참조 픽처의 순서로 구성될 수 있다.
이때, P 슬라이스(predictive slice)는 인트라 예측이 수행되거나 예측 블록 당 최대 1개의 움직임 벡터 및 참조 픽처 인덱스를 이용하여 인터 예측이 수행되는 슬라이스이다. B 슬라이스(bi-predictive slice)는 인트라 예측이 수행되거나 예측 블록 당 최대 두 개의 움직임 벡터와 참조 픽처 인덱스를 이용하여 예측이 수행되는 슬라이스이다. 이와 관련하여, I 슬라이스(intra slice)는 인트라 예측만이 적용된 슬라이스이다.
또한, 인터 레이어 참조 픽처를 포함하는 참조 픽처 리스트를 기반으로 현재 블록에 대한 인터 예측을 수행하는 경우에, 참조 픽처 리스트는 복수의 레이어에서 유도된 복수의 인터 레이어 참조 픽처를 포함할 수 있다.
복수의 인터 레이어 참조 픽처를 포함하는 경우에, 인터 레이어 참조 픽처들은 참조 픽처 리스트 L0과 L1에서 교차 배치될 수도 있다. 예컨대, 두 개의 인터 레이어 참조 픽처, 인터 레이어 참조 픽처 ILRPi와 인터 레이어 참조 픽처 ILRPj가 현재 블록의 인터 예측에 사용되는 참조 픽처 리스트에 포함되는 경우를 가정하자. 이 경우, 참조 픽처 리스트 L0에서 ILRPi는 현재 픽처 이전의 단기 참조 픽처들 다음에 위치하고, ILRPj는 리스트의 마지막에 위치할 수 있다. 또한, 참조 픽처 리스트 L1에서 ILRPi는 리스트의 마지막에 위치하고, ILRPj는 현재 픽처 이후의 단기 참조 픽처들 다음에 위치할 수 있다.
이 경우, 참조 픽처 리스트 L0은 현재 픽처 이전의 단기 참조 픽처(들), 인터 레이어 참조 픽처 ILRPi, 현재 픽처 이후의 단기 참조 픽처(들), 장기 참조 픽처, 인터 레이어 참조 픽처 ILRPj의 순서로 구성될 수 있다. 참조 픽처 리스트 L1은 현재 픽처 이후의 단기 참조 픽처(들), 인터 레이어 참조 픽처 ILRPj, 현재 픽처 이전의 단기 참조 픽처(들), 장기 참조 픽처, 인터 레이어 참조 픽처 ILRPi의 순서로 구성될 수 있다.
또한, 두 인터 레이어 참조 픽처들 중 하나는 해상도에 관한 스케일러블 레이어로부터 유도한 인터 레이어 참조 픽처이고, 다른 하나는 다른 뷰를 제공하는 레이어로부터 유도한 인터 레이어 참조 픽처일 수도 있다. 이 경우, 예컨대, ILRPi가 다른 해상도를 제공하는 레이어로부터 유도한 인텉 레이어 참조 픽처이고, ILRPj가 다른 뷰를 제공하는 레이어로부터 유도한 인터 레이어 참조 픽처라면, 뷰(view)를 제외한 스케일러빌러티만을 지원하는 스케일러블 비디오 코딩의 경우 참조 픽처 리스트 L0은 현재 픽처 이전의 단기 참조 픽처(들), 인터 레이어 참조 픽처 ILRPi, 현재 픽처 이후의 단기 참조 픽처(들), 장기 참조 픽처의 순서로 구성될 수 있고, 참조 픽처 리스트 L1은 현재 픽처 이후의 단기 참조 픽처(들), 현재 픽처 이전의 단기 참조 픽처(들), 장기 참조 픽처, 인터 레이어 참조 픽처 ILRPi의 순서로 구성될 수 있다.
한편, 인터 레이어 예측에서 인터 레이어 참조 픽처의 정보는 샘플 값만 이용될 수도 있고, 움직임 정보(움직임 벡터)만 이용될 수도 있으며, 샘플 값과 움직임 정보가 모두 이용될 수도 있다. 예측부(235)는 참조 픽처 인덱스가 인터 레이어 참조 픽처를 지시하는 경우에, 인코딩 장치로부터 수신한 정보에 따라서 인터 레이어 참조 픽처의 샘플 값만 이용하거나, 인터 레이어 참조 픽처의 움직임 정보(움직임 벡터)만 이용하거나, 인터 레이어 참조 픽처의 샘플 값과 움직임 정보를 모두 이용할 수 있다.
인터 레이어 참조 픽처의 샘플 값만을 이용하는 경우에, 예측부(235)는 인터 레이어 참조 픽처에서 움직임 벡터가 특정하는 블록의 샘플들을 현재 블록의 예측 샘플로서 유도할 수 있다. 뷰(view)를 고려하지 않는 스케일러블 비디오 코딩의 경우에, 인터 레이어 참조 픽처를 이용하는 인터 예측(인터 레이어 예측)에서의 움직임 벡터는 고정된 값(예컨대, 0)으로 설정될 수 있다.
인터 레이어 참조 픽처의 움직임 정보만을 이용하는 경우에, 예측부(235)는 인터 레이어 참조 픽처에서 특정되는 움직임 벡터를 현재 블록의 움직임 벡터를 유도하기 위한 움직임 벡터 예측자로 사용할 수 있다. 또한, 예측브(235)는 인터 레이어 참조 픽처에서 특정되는 움직임 벡터를 현재 블록의 움직임 벡터로 이용할 수도 있다.
인터 레이어 참조 픽처의 샘플과 움직임 정보를 모두 이용하는 경우에, 예측부(235)는 인터 레이어 참조 픽처에서 현재 블록에 대응하는 영역의 샘플과 인터 레이어 참조 픽처에서 특정되는 움직임 정보(움직임 벡터)를 현재 블록의 예측에 이용할 수 있다.
디코딩 장치는 참조 픽처 리스트에서 인터 레이어 참조 픽처를 지시하는 참조 인덱스를 인코딩 장치로부터 수신하고, 이를 기반으로 인터 레이어 예측을 수행할 수 있다. 또한, 디코딩 장치는 인터 레이어 참조 픽처로부터 어떤 정보(샘플 정보, 움직임 정보, 샘플 정보와 움직임 정보)를 이용할 것인지를 지시하는 정보, 즉 두 레이어 사이에서 인터 레이어 예측에 관한 디펜던시(의존성, dependency)의 타입(dependency type)을 특정하는 정보도 인코딩 장치로부터 수신할 수 있다.
가산기(290, 295)는 예측부(235, 275)에서 생성된 예측 블록과 역변환부(230, 270)에서 생성된 레지듀얼 블록을 이용해 복원 블록을 생성할 수 있다. 이 경우, 가산기(290, 295)를 복원 블록을 생성하는 별도의 유닛(복원 블록 생성부)로 볼 수 있다.
가산기(290, 295)에서 복원된 블록 및/또는 픽쳐는 필터링부(240, 280)로 제공될 수 있다.
도 2의 예를 참조하면, 레이어 1의 필터링부(240)는 레이어 1의 예측부(235) 및/또는 레이어 0의 필터링부(280)으로부터 전달되는 파라미터 정보를 이용하여 복원된 픽쳐에 대한 필터링을 수행할 수도 있다. 예컨대, 레이어 1에서 필터링부(240)는 레이어 0에서 적용된 필터링의 파라미터로부터 예측된 파라미터를 이용하여 레이어 1에 대한 혹은 레이어 간의 필터링을 적용할 수 있다.
메모리(245, 285)는 복원된 픽쳐 또는 블록을 저장하여 참조 픽쳐 또는 참조 블록으로 사용할 수 있도록 할 수 있다. 메모리(245, 285)는 저장된 복원 픽쳐를 소정의 출력부(미도시) 혹은 디스플레이(미도시)를 통해 출력할 수도 있다.
도 2의 예에서는 재정렬부, 역양자화부, 역변환부 등으로 나누어 설명하였으나, 도 1의 인코딩 장치에서와 같이, 역양자화/역변환부의 한 모듈에서 재정렬, 역양자화, 역변환을 순서대로 수행하도록 디코딩 장치를 구성할 수도 있다.
또한, 여기서는 두 개의 레이어로 구성된 멀티 레이어 구조에서 스케일러블 비디오 디코딩이 수행되는 것을 설명하였으나, 본 발명은 이에 한정되지 않는다. 예컨대, 도 2의 디코딩 장치는 둘 이상의 레이어를 포함하는 멀티 레이어 구조에도 적용될 수 있다. N개의 레이어로 구성된 멀티 레이어 구조에 적용되는 경우에, 도 2의 레이어 0과 레이어 1은 N 개의 레이어 중 참조 관계를 나타내는 두 레이어일 수 있다.
이때, 디코딩 장치는 두 레이어 간의 참조 관계를 나타내는 정보를 인코딩 장치로부터 수신할 수 있다. 예컨대, 두 레이어 간에 인터 레이어 예측의 의존 관계가 존재하는 경우, 디코딩 장치는 direct_dependency_flag[L][M]을 수신할 수 있다. direct_dependency_flag[L][M]의 값이 1인 경우에 L 번째 레이어는 M 번째 레이어를 참조하여 예측될 수 있다.
도 1 및 도 2의 예에서는 예측부로 설명하였으나, 발명의 이해를 돕기 위해, 레이어 1의 예측부는 다른 레이어(레이어 0)의 정보를 이용하여 예측을 수행하는 인터 레이어 예측부와 다른 레이어(레이어 0)의 정보를 이용하지 않고 예측을 수행하는 인터/인트라 예측부를 포함하는 것으로 볼 수도 있다.

비트스트림 내 복수의 레이어를 지원하는 비디오의 부호화 및 복호화, 즉 스케일러블 코딩(scalable coding)의 경우, 복수의 레이어 간에는 강한 연관성(correlation)이 존재하기 때문에 이런 연관성을 이용하여 예측을 수행하면 데이터의 중복 요소를 제거할 수 있고 영상의 부호화 성능을 향상시킬 수 있다.
복수의 계층들은 해상도, 프레임 레이트, 컬러 포맷, 뷰(view) 중 적어도 하나가 상이할 수 있다. 따라서, 인터 레이어 예측 시에 다른 레이어의 정보를 이용하기 위해서, 해상도의 조절을 위한 업샘플링 또는 다운샘플링이 수행될 수 있다.
서로 다른 레이어 사이의 인터 레이어 의존성(Inter-layer dependency)은 한 레이어의 블록/픽쳐가 다른 레이어의 다른 블록/픽쳐를 참조하여 디코딩될 수 있는지를 나타낸다. 따라서, 멀티 레이어 구조에서 현재 레이어와 참조 레이어 사이에 의존성이 존재하는 경우에, 현재 레이어는 참조 레이어를 참조하여 예측될 수 있다. “레이어”는 코딩 디멘젼을 나타내는 것(representation)일 수 있다. 코딩 디멘젼(coding dimension)은, 스케일러빌러티(예를 들어, 공간적 스케일러빌러티, 시간적 스케일러빌러티, 화질적 스케일러빌러티), 뷰(시점, view) 및 뎁스(depth) 코딩 레프리젠테이션 등일 수 있다. 인터 레이어 디펜던시는 인터 레이어 예측을 적용함에 따라서 고려되는 것으로 여겨질 수도 있지만, 이에 한정되지는 않는다. 예컨대, 지만, 상술한 인터 레이어 인트라 예측, 인터 레이어 움직임 예측, 인터 레이어 신택스 예측, 인터 레이어 레지듀얼 예측, 인터 레이어 유닛 예측 등이 인터 레이어 디펜던시에 포함될 수도 있다.

도 1 및 도 2의 예에서 설명한 바와 같이, 디코딩 장치와 인코딩 장치는 스케일러빌러티(Scalability)를 지원하는 멀티 레이어 구조에서 현재 레이어의 현재 블록에 대하여 인터 예측을 수행할 수 있다. 이 경우, 현재 블록에 대한 예측은 인코딩 장치와 디코딩 장치의 예측부(들)에서 수행될 수 있다.
예측부는 현재 레이어 내의 참조 픽처를 이용하여 현재 블록에 대한 예측을 수행할 수도 있고, 현재 레이어가 아닌 참조 레이어의 픽처를 이용하여 현재 블록에 대한 예측을 수행할 수도 있다.

인코딩 장치와 디코딩 장치의 예측부는 현재 레이어의 부호화/복호화 대상 블록 (예컨대, 현재 CU)가 인트라 예측만 적용되는 I-슬라이스(I-slice)에 속하는지를 판단해서, I-슬라이스인 경우에는 인트라 예측을 적용하고 I-슬라이스가 아닌 경우에는 현재 블록에 적용할 예측 모드를 결정할 수 있다.
이 경우, 인코딩 장치는 RDO 등을 통해 현재 블록에 적용할 예측 방법을 결정하고, 디코딩 장치로 결정된 예측 방법을 지시하는 정보를 전송할 수 있다. 디코딩 장치와 인코딩 장치의 예측부는 결정된 예측 방법에 따라서 예측을 수행하고, 현재 블록에 대한 예측 샘플을 유도할 수 있다.
예컨대, 예측부는 현재 블록(예컨대, 현재 CU)에 스킵 모드(CU_skip)가 적용되는지를 결정할 수 있다. 예측부는 스킵 모드가 적용되는지를 지시하는 플래그를 기반으로 현재 블록에 스킵 모드가 적용되는지를 결정될 수 있다.
예측부는 현재 블록에 스킵 모드가 적용되지 않는 경우에, 현재 블록에 인터 예측을 적용할 것인지 인트라 예측을 적용할 것인지를 결정할 수 있다. 예측부는 인터 예측을 적용할 것인지 인트라 예측을 적용할 것인지를 지시하는 예측 모드 플래그를 기반으로 현재 블록에 인터 예측을 적용할 것인지 인트라 예측을 적용할 것인지를 결정할 수 있다. 가령 인터 예측이 수행되는지 인트라 예측이 수행되는지를 지시하는 예측 모드 플래그(pred_mode_flag)의 값이 인트라 예측이 수행되는 것을 지시하는 경우에, 예측부는 현재 블록에 대하여 인트라 예측을 적용할 수 있다. 또한, 예측 모드 플래그가 인터 예측이 수행되는 것을 지시하는 경우에, 예측부는 현재 블록에 대하여 인터 예측을 적용할 수 있다.
인터 예측이 적용되는 경우에, 예측부는 현재 블록(예컨대, 현재 PU)에 대한 인터 예측 파라미터(인터 예측에 필요한 움직임 정보)를 현재 블록 주변의 인터 예측된 블록으로부터 추정(infer)하는 머지 모드를 현재 블록에 적용할 수 있다.
이 경우, 현재 블록의 예측에 이용되는 주변 블록들은 현재 블록의 공간적 주변 블록과 시간적 주변 블록을 포함한다. 공간적 주변 블록은 현재 블록과 동일한 픽처 내에서 있는 주변 블록을 의미한다. 시간적 주변 블록은 현재 블록과 다른 픽처 내에서 현재 블록에 대응하는 블록을 의미한다. 시간적 주변 블록의 움직임 정보를 현재 블록의 움직임 정보로 이용하는 경우에 움직임 정보의 값은 소정의 값으로 설정될 수도 있다.
머지 모드가 적용되는 경우, 현재 블록의 주변 블록들 중 어느 한 블록의 움직임 정보를 그대로 혹은 수정하여 현재 블록의 움직임 정보로 이용할 수 있다. 예컨대, 시간적 주변 블록의 움직임 정보를 현재 블록의 움직임 정보로 이용하는 경우에는 참조 픽처 인덱스의 값을 0으로 설정할 수도 있다.
한편, 멀티 레이어 구조에서 스케일러빌러티를 지원하는 비디오 코딩의 경우, 머지 모드에서 이용되는 주변 블록은 현재 블록에 대응하는 참조 레이어의 블록을 포함할 수 있다.
인터 예측이 적용되는 경우에, 또한, 예측부는 현재 블록(예컨대, 현재 PU)의 주변 블록들 중 어느 한 블록의 움직임 벡터를 현재 블록의 움직임 벡터 예측자로 이용하는 움직임 벡터 예측 모드를 현재 블록에 적용할 수도 있다.
이 경우에도, 현재 블록의 예측에 이용되는 주변 블록들은 현재 블록의 공간적 주변 블록과 시간적 주변 블록을 포함한다. 한편, 멀티 레이어 구조에서 스케일러빌러티를 지원하는 비디오 코딩의 경우, 움직임 벡터 예측 모드에서 이용되는 주변 블록은 현재 블록에 대응하는 참조 레이어의 블록을 포함할 수 있다.
이하, 도 1 및 도 2의 비디오 인코딩 장치 및 비디오 디코딩 장치에서 현재 레이어의 현재 블록에 대한 예측 방법과 현재 픽처의 복원 방법에 대하여 구체적으로 설명한다.
이때, 현재 블록은 부호화/복호화의 대상으로서 부호화 단위 블록(예컨대, CU: Coding Unit)일 수도 있고, 예측 샘플의 유도 단위로서 예측 단위 블록(예컨대, PU: Prediction Unit)일 수도 있다.

상술한 바와 같이, 현재 블록에 대하여 인터 예측이 적용되는 경우에, 예측부는 현재 블록에 머지 모드를 적용할 것인지 움직임 벡터 예측(Motion Vector Prediction: MVP) 모드를 적용할 것인지를 결정할 수 있다.
현재 블록에 대한 인터 예측을 적용하는 경우에 예측부는 현재 블록과 동일한 레이어의 다른 픽처에 속하는 블록(시간적 후보 블록)의 움직임 정보(즉, 시간적 움직임 정보(temporal motion information))가 필요하게 된다. 시간적 움직임 정보 역시 현재 부호화/복호화 대상 픽처와는 다른 픽처의 정보이므로, 시간적 움직임 정보를 저장하고 필요에 따라 액세스할 필요가 생긴다.
이때 움직임 정보는, 예컨대 움직임 벡터, 예측 방향(L0, L1, bi), 참조 픽처 인덱스 중 적어도 하나를 포함할 수 있다. 저장된 정보는 머지 모드 혹은 MVP 모드를 적용할 때, 시간적 움직임 정보로서 활용될 수 있다. 예컨대, 예측부는 시간적 후보 블록의 움직임 벡터와 참조 픽처 인덱스를 머지 후보 리스트에 추가할 수 있다(이 경우, 예측부는 시간적 후보 블록의 움직임 정보를 소정 값으로 설정할 수도 있다). 또한 예측부는 시간적 후보 블록의 움직임 벡터를 MVP 후보 리스트에 추가할 수도 있다.
한편, 스케일러빌러티를 지원하는 멀티 레이어 구조에서 현재 레이어의 블록(현재 블록)에 대한 예측을 수행하는 예측부는, 현재 레이어가 아닌 참조 레이어의 정보를 기반으로 현재 블록의 예측 샘플을 유도할 수도 있다. 즉, 인터 레이어 예측을 적용할 수 있다.
이 경우에도, 예측부가 참조 레이어(예컨대, 베이스 레이어)의 정보를 기반으로 현재 블록에 대한 예측을 하기 위해서는, 참조 레이어의 움직임 정보가 필요하므로 참조 레이어의 움직임 정보를 저장하고 저장된 정보에 액세스 할 수 있어야 한다.
따라서, 인터 레이어 예측이 적용될 수 있는 경우에는 움직임 정보의 저장을 위한 메모리의 크기 및 메모리 액세스 회수를 줄이기 위해 시간적 움직임 정보를 사용하지 않을 수 있다. 예컨대, 인터 레이어 예측이 적용되는 경우에는 MVP 모드에서 시간적 움직임 벡터의 예측을 사용하기 않거나, 머지 모드에서 시간적 움직임 정보를 머지 후보 리스트에서 제외할 수도 있다. 이때, 사용하지 않는 시간적 움직임 정보 대신, 인터 레이어 예측이 적용될 수 있는 경우에는, 참조 레이어의 정보를 이용하도록 할 수 있다.
인터 레이어 예측이 사용될 수 있는지는 인코딩 장치로부터 디코딩 장치로 시그널링 될 수 있다.
표 1은 본 발명에 따라서 인터 레이어 예측의 사용 가부를 지시하는 정보의 일 예를 나타내는 신택스 구조이다.
<표 1>
Figure PCTKR2014001517-appb-I000001
표 1의 예에서, inter_layer_pred_enabled_flag의 값이 1이면 인터 레이어 예측이 적용될 수 있고, inter_layer_pred_enabled_flag의 값이 0이면 인터 레이어 예측이 적용되지 않는 것을 지시한다.

인터 레이어 예측이 사용될 수 있는 경우에, 예측부는 동일한 레이어 내 다른 픽처의 정보(시간적 움직임 정보)가 대체하여 참조 레이어의 정보를 이용할 수도 있다. 단순히 시간적 움직임 정보를 사용하지 않고 참조 레이어의 정보를 이용하는 것이 아니라, 시간적 움직임 정보를 참조 레이어의 정보로 대체하는 경우에, 참조 레이어의 정보는 머지 후보 리스트 또는 MVP 후보 리스트에서 시간적 후보 리스트의 위치에 놓일 수 있다.

멀티 레이어 구조에서 인터 예측을 수행하기 위해, 인터 예측 모드를 지시하는 정보가 전송될 수 있다.
예컨대, 인터 예측이 적용되는 경우에 슬라이스 레벨에서 인터 레이어 예측이 적용될 수 있는지가 결정되면, 코딩 블록 레벨에서 인터 예측으로서 머지 모드가 적용될 것인지 MVP 모드가 적용될 것인지가 결정될 수 있다.
표 2는 멀티 레이어 구조에서 현재 블록에 적용되는 예측 모드를 결정하기 위한 신택스 구조의 일 예를 개략적으로 설명하는 표이다.
<표 2>
Figure PCTKR2014001517-appb-I000002
표 2의 예에서, 예측부는 (x0, y0)에 의해 특정되는 현재 블록에 대하여 skip_flag의 값이 1이면 스킵 모드를 적용할 수 있다. 스킵 모드가 적용되는 경우에는, 머지 후보 인덱스인 머지 인덱스 외 추가적인 신택스 엘리먼트가 전송되지 않는다. 이에 관해서는 후술한다.
스킵 모드가 적용되지 않은 경우에는 pred_mode_flag가 전송되며, 예측부는 pred_mode_flag의 값에 따라서 (x0, y0)으로 특정되는 현재 블록에 대하여 인터 예측을 적용할 것인지 인트라 예측을 적용할 것인지를 결정할 수 있다. 예컨대, pred_mode_flag의 값이 0이면 현재 블록에 인터 예측을 적용하고, pred_mode_flag의 값이 1이면 현재 블록에 인트라 예측을 적용할 수 있다.
현재 블록에 적용되는 예측 모드를 결정하기 위해 멀티 레이어 구조의 특성을 고려하여 별도의 신택스를 이용할 수도 있다.
표 3은 멀티 레이어 구조에서 현재 블록에 적용되는 예측 모드를 결정하기 위한 신택스 구조의 다른 예를 개략적으로 설명하는 표이다.
<표 3>
Figure PCTKR2014001517-appb-I000003
표 3에서는 참조 레이어의 정보를 이용하는 경우에 베이스 레이어의 예측 방법을 지시하는 정보 base_pred_flag가 전송된다. 표 2의 예에서, base_pred_flag의 값이 1이면 인터 레이어 인트라 예측 혹은 인터 레이어 신택스 예측이 수행되고, base_pred_flag의 값이 0이면 인터 레이어 인트라 예측 및 인터 레이어 신택스 예측이 적용되지 않는다.
표 4는 멀티 레이어 구조에서 인터 예측이 수행되는 경우에 예측 대상 블록에서 인터 예측의 구체적인 모드를 결정하는데 이용되는 신택스 구조의 일 예를 개략적으로 설명하는 표이다.
<표 4>
Figure PCTKR2014001517-appb-I000004
코딩 유닛 레벨에서 인터 예측을 적용하는 것으로 결정된 뒤에, 표 4에 포함된 인터 예측 정보를 이용하여 현재 블록에 대한 인터 예측 모드를 결정할 수 있다.
표 4의 예에서는, 인터 예측이 적용되는 경우에 머지 모드를 적용할 것인지를 지시하는 정보(merge_flag)가 전송된다. 머지 모드가 적용되는 경우에는 이용 가능한 후보 블록들 중 어느 블록의 움직임 정보를 현재 블록의 움직임 정보로서 이용할 것인지를 지시하는 정보(머지 인덱스, merge_idx)가 전송된다.
표 4의 예에서는 스킵 모드가 적용되는 경우에도 머지 인덱스가 전송된다. 예측부는 머지 인덱스에 의해 특정되는 블록의 움직임 정보를 그대로 혹은 변형하여 현재 블록의 움직임 정보로 이용할 수 있다.
머지 모드가 적용되지 않는 경우(즉, merge_flag=0인 경우), 예측부는 움직임 벡터 예측 모드를 현재 블록에 적용할 수 있다.
표 4의 예에서, inter_pred_idc는 참조 픽처 리스트로서 L0을 이용할 것인지 L1을 이용할 것인지 혹은 양방향 예측(bi-prediction)을 적용할 것인지를 지시한다.
움직임 벡터 예측 모드의 경우에는 주변 블록 중 어느 블록의 움직임 벡터를 현재 블록의 움직임 벡터 예측자로 이용할 것인지를 지시하는 정보와 참조 픽처를 특정하는 정보가 전송된다.
표 4의 예에서, mvp_l0_flag는 참조 픽처 리스트 L0이 이용되는 경우에, 움직임 벡터 예측자를 특정하는 정보이며, mvp_l0_flag는 참조 픽처 리스트 L1이 이용되는 경우에 움직임 벡터 예측자를 특정하는 정보이다. 또한, ref_idx_l0은 참조 픽처 리스트 L0에서 현재 블록에 대한 참조 픽처를 특정하는 정보이며 ref_idx_l1은 참조 픽처 리스트 L1에서 현재 블록에 대한 참조 픽처를 특정하는 정보이다.
예측부는 별도로 전송되는 움직임 벡터 차이값(Motion Vector Difference: mvd)와 움직임 벡터 예측자를 더하여 현재 블록의 움직임 벡터를 유도할 수 있다. 이때, 움직임 벡터 차이값은 크기와 부호로 나뉘어 시그널링될 수도 있다.
한편, 인터 예측 모드에 대한 정보 역시 멀티 레이어 구조의 특성을 반영한 신택스를 구성하여 전송될 수도 있다.
표 5는 인터 예측 모드에 대한 정보를 전송하는 신택스 구조의 다른 예를 간단히 나타낸 것이다.
<표 5>
Figure PCTKR2014001517-appb-I000005
표 5의 예에서, inter_pred_flag는 L0을 사용하는 예측 또는 양예측을 적용하는지 아니면 컴바인드 참조 픽처 리스트(combined list) LC를 사용하는 예측을 적용하는지를 지시할 수 있다.

상술한 바와 같이, 본 발명의 실시예에서 인터 예측이 적용되는 경우에 예측부는 현재 레이어의 현재 블록에 머지 모드를 적용하거나 움직임 벡터 예측 모드를 적용할 수 있다.
본 발명에서는 머지 모드를 적용하는 경우에, 멀티 레이어 구조의 특성을 반영하여 인터 레이어 예측에 기반한 머지 모드를 현재 블록에 적용할 수 있다. 또한 본 발명에서는 움직임 벡터 예측 모드를 적용하는 경우에, 인터 레이어 예측에 기반한 움직임 벡터 예측 모드를 현재 블록에 적용할 수 있다.
이하, 본 발명에 따라서, 스케일러빌러티를 지원하는 멀티 레이어 구조에서 움직임 벡터 예측 모드를 적용하는 경우에 예측 샘플을 유도하는 방법을 머지 모드를 적용하는 경우에 예측 샘플을 유도하는 방법을 차례로 설명한다.
머지 모드가 적용된 경우에, 예측부는 주변 블록의 움직임 정보를 이용하여 현재 블록의 예측 샘플을 유도할 수 있다. 움직임 벡터 예측 모드가 적용된 경우에, 예측부는 주변 블록의 움직임 벡터를 움직임 벡터 예측자로 이용하여 유도된 움직임 벡터를 기반으로 현재 블록의 예측 샘플을 유도할 수 있다.
인코딩 장치/디코딩 장치는 예측 샘플과 레지듀얼을 더하여 현재 픽처를 복원할 수 있다.
도 3은 스케일러빌러티를 지원하는 멀티 레이어 구조에서 발명에 따라 현재 블록에 움직임 벡터 예측 모드를 적용하는 방법을 개략적으로 설명하는 도면이다.
움직임 벡터 예측 모드(이하, ‘MVP 모드’라 함)가 적용되는 경우에, 예측부는 움직임 벡터 예측자(이하 ‘MVP’라 함)로 사용될 후보들(움직임 벡터 후보 혹은 후보 움직임 벡터)로 구성되는 MVP 리스트를 구성할 수 있다.
도 3의 예에서, BL(310)은 현재 블록(300)의 하좌측(bottom-left) 주변 블록이고, L(320)은 현재 블록(300)의 좌측(left) 주변 블록이며, RA(340)는 현재 블록(300)의 우상측(right-above) 주변 블록이고, A(340)는 현재 블록(300)의 상측(above) 주변 블록이며, LA(350)는 현재 블록(300)의 좌상측(left-above) 주변 블록이다. BL(310), L(320), RA(330), A(340), LA(350)를 현재 블록과 동일한 픽처 내의 공간적 주변 블록(spatial neighbouring block)이라고 할 수 있다.
또한, T(360)는 현재 블록(300)의 시간적 주변 블록(temporal neighbouring block)으로서, 현재 블록(300)과 동일한 레이어 내 참조 픽처에서 현재 블록(300)에 대응하는 블록이다. IL(370)은 현재 블록(300)과 상이한 레이어(참조 레이어) 내에서 현재 블록의 예측에 이용되는 블록 혹은 픽처를 의미한다.
MVP 모드에서, 예측부는 BL(310)→L(320)의 순서로 후보의 가용성을 판단하고, RA(330)→A(340)→LA(350)의 순서로 후보의 가용성을 판단한다.
BL(310)→L(320)의 순서로 후보의 가용성을 판단할 때, 예측부는 ① 가용한 후보로서 현재 블록과 동일한 참조 픽처를 가지는 후보가 있는 경우, 해당 후보를 MVP 리스트에 포함시킬 수 있다. ①을 만족하는 후보가 없는 경우에, 예측부는 ② 현재 픽처와 현재 픽처의 참조 픽처 사이의 POC(Picture Order Count) 차이 및 현재 픽처와 후보의 참조 픽처 사이 POC 차이에 기반하여, 가용한 것으로 먼저 검색된 후보의 움직임 벡터를 스케일링할 수 있다. 예측부는 스케일링된 움직임 벡터를 MVP 리스트에 포함시킬 수 있다.
RA(330)→A(340)→LA(350)의 순서로 후보의 가용성을 판단할 때, 예측부는 ① 가용한 후보로서 현재 블록과 동일한 참조 픽처를 가지는 후보가 있는 경우, 해당 후보를 MVP 리스트에 포함시킨다. ①을 만족하는 후보가 없고 BL(310)과 L(320) 중에 가용한 후보가 없는 경우에, 예측부는 ② 현재 픽처와 현재 픽처의 참조 픽처 사이의 POC(Picture Order Count) 차이 및 현재 픽처와 후보의 참조 픽처 사이 POC 차이에 기반하여, 가용한 것으로 먼저 검색된 후보의 움직임 벡터를 스케일링할 수 있다. 예측부는 스케일링된 움직임 벡터를 MVP 리스트에 포함시킬 수 있다.
한편, 상술한 바와 같이 현재 블록에 대하여 인터 레이어 예측이 적용되지 않는 경우에, 예측부는 시간적 움직임 벡터를 MVP 후보 리스트에 포함시킬 수 있다.
시간적 주변 블록T(360)의 움직임 벡터를 움직임 벡터 후보로 사용하는 경우에는, 참조 픽처 리스트를 이용하여 T(360)이 포함된 콜로케이티드(colocated) 픽처(이하, COL 픽처)를 특정할 수 있다. COL 픽처에서 현재 블록과 동일 LCU 내에 있는 T(360)에 대하여 소정 위치를 포함하는 예측 블록의 움직임 정보를 시간적 움직임 벡토로 할 수 있다. 이때, 움직임 벡터 후보로 사용되는 시간적 움직임 벡터는 COL 픽처와 현재 픽처의 참조 픽처들을 고려하여 스케일링될 수 있다.
BL(310)→L(320)의 순서로 후보의 가용성을 판단하여 결정된 MVP 후보를 A라고 하고, RA(330)→A(340)→LA(350)의 순서로 후보의 가용성을 판단하여 결정된 MVP 후보를 B라고 하며, 시간적 후보에 대한 가용성 판단에 의해 결정된 MVP 후보를 TMVP라고 하자.
현재 블록에 대한 인터 예측으로서, 인터 레이어 예측을 적용하지 않는 경우의 MVP 리스트는 표 6과 같이 구성될 수 있다.
<표 6>
Figure PCTKR2014001517-appb-I000006
예측부는 이용 가능한 A, B, TMVP가 MVP 후보 리스트에 추가된 후, A와 B가 동일하면, 둘 중 하나를 MVP 후보 리스트로부터 삭제(pruning)할 수 있다.
또한, 예측부는 MVP 후보 리스트 내 MVP 후보들의 개수를 최대 후보 개수로 조정할 수 있다. 예컨대, MVP 후보 리스트의 최대 후보 개수가 2인 경우, A와 B 그리고 TMVP가 모두 유효하다면 예측부는 A와 B로 MVP 후보 리스트를 구성하고, TMVP를 MVP 후보 리스트에서 제거할 수 있다.
예측부는 MVP 후보 리스트 내 후보들의 개수가 최대 후보 개수보다 적은 경우에는 제로(0) 움직임 벡터를 후보로 추가할 수도 있다.
MVP 후보 리스트에서 후보 인덱스는 리스트에 추가된 순서대로 부여될 수 있다. 예컨대, A-B-TMVP-제로 벡터의 순서로 최대 후보 개수만큼(예컨대, 최대 후보 개수가 2인 경우 0, 1) 부여될 수 있다.
인코딩 장치는 MVP 후보 리스트 상에서 현재 블록에 대한 인터 예측에 사용할 MVP를 지시하는 MVP 인덱스, 움직임 벡터의 차분 mvd(motion vector difference)와 참조 픽처 리스트 상에서 현재 블록에 대한 참조 픽처를 지시하는 참조 인덱스를 디코딩 장치로 전송할 수 있다. 참조 픽처 리스트는 인터 예측에 사용될 수 있는 참조 픽처들의 리스트로서, 순방향 예측에 대한 L0과 역방향 예측에 대한 L1이 있다.
디코딩 장치/인코딩 장치의 예측부는 MVP 인덱스가 지시하는 MVP와 mvd로부터 유도한 움직임 벡터와 참조 인덱스가 지시하는 참조 픽처를 기반으로 현재 블록에 대한 예측 블록을 생성할 수 있다.
현재 블록에 대하여 인터 레이어 예측이 적용될 수 있는 경우에, 예측부는 시간적 움직임 벡터를 MVP 후보 리스트에서 제외하고, 참조 레이어의 정보를 MVP 후보 리스트에 포함시킬 수 있다.
참조 레이어에서 현재 픽처와 동일한 AU(Access Unit)에 속하는 인터 레이어 참조 픽처 혹은 인터 레이어 참조 픽처 내에서 현재 블록에 대응하는 인터 레이어 참조 블록을 IL(370)이라고 하자.
인터 레이어 예측이 적용되는 경우에, 예측부는 IL(370)의 움직임 벡터 혹은 IL(370)의 화소 값을 이용하여 현재 블록의 예측 샘플을 유도할 수 있다.
예컨대, 예측부는 IL(370)의 움직임 벡터를 제로 벡터로 설정하고, IL(370)을 참조 픽처로서 지시하는 참조 픽처 인덱스를 전송함으로써 IL(370)에서 현재 블록(300)에 대응하는 영역의 샘플들을 현재 블록(300)에 대한 예측 샘플로서 이용할 수 있다. 이 경우, IL(370)에서 현재 블록(300)에 대응하는 영역의 샘플들은 현재 레이어에 맞춰(예컨대, 현재 레이어의 해상도에 맞춰) 업샘플링될 수 있다.
BL(310)→L(320)의 순서로 후보의 가용성을 판단하여 결정된 MVP 후보를 A라고 하고, RA(330)→A(340)→LA(350)의 순서로 후보의 가용성을 판단하여 결정된 MVP 후보를 B라고 하며, 인터 레이어 참조 픽처(370)의 움직임 벡터를 인터 레이어 움직임 벡터 예측자(IL)라고 하자.
현재 블록에 인터 레이어 예측이 적용될 수 있는 경우에 본 발명에 따라서 구성되는 MVP 후보 리스트의 일 예는 표 7과 같다.
<표 7>
Figure PCTKR2014001517-appb-I000007
예측부는 이용 가능한 A, B, IL이 MVP 후보 리스트에 추가된 후, A와 B가 동일하면, 둘 중 하나를 MVP 후보 리스트로부터 삭제(pruning)할 수 있다.
또한, 예측부는 MVP 후보 리스트 내 MVP 후보들의 개수를 최대 후보 개수로 조정할 수 있다. 예컨대, MVP 후보 리스트의 최대 후보 개수가 2인 경우, A와 B 그리고 IL이 모두 유효하다면 예측부는 A와 B로 MVP 후보 리스트를 구성하고, IL을 MVP 후보 리스트에서 제거할 수 있다.
예측부는 MVP 후보 리스트 내 후보들의 개수가 최대 후보 개수보다 적은 경우에는 제로(0) 움직임 벡터를 후보로 추가할 수도 있다.
MVP 후보 리스트에서 후보 인덱스는 리스트에 추가된 순서대로 부여될 수 있다. 예컨대, A-B-IL-제로 벡터의 순서로 최대 후보 개수만큼(예컨대, 최대 후보 개수가 2인 경우 0, 1) 부여될 수 있다.
인코딩 장치는 MVP 후보 리스트 상에서 현재 블록에 대한 인터 예측에 사용할 MVP를 지시하는 MVP 인덱스, 움직임 벡터의 차분 mvd(motion vector difference)와 참조 픽처 리스트 상에서 현재 블록에 대한 참조 픽처를 지시하는 참조 인덱스를 디코딩 장치로 전송할 수 있다. 참조 픽처 리스트는 인터 예측에 사용될 수 있는 참조 픽처들의 리스트로서, 순방향 예측에 대한 L0과 역방향 예측에 대한 L1이 있다.
상술한 바와 같이, 인터 레이어 예측이 적용되는 경우에, MVP 인덱스는 IL의 움직임 벡터를 지시하며, 참조 인덱스는 IL을 참조 픽처로서 지시할 수 있다. 이때, IL의 움직임 벡터는 제로 벡터일 수 있으며, 예측부는 IL(370)에서 현재 블록(300)에 대응하는 영역의 샘플들을 현재 블록(300)에 대한 예측 샘플로서 이용할 수 있다. 이 경우, IL(370)에서 현재 블록(300)에 대응하는 영역의 샘플들은 현재 레이어에 맞춰(예컨대, 현재 레이어의 해상도에 맞춰) 업샘플링될 수 있다.
현재 블록에 인터 레이어 예측이 적용될 수 있는 경우에 본 발명에 따라서 구성되는 MVP 후보 리스트의 다른 예는 표 8과 같다.
<표 8>
Figure PCTKR2014001517-appb-I000008
예측부는 이용 가능한 A, B, IL이 MVP 후보 리스트에 추가된 후, A와 B가 동일하면, 둘 중 하나를 MVP 후보 리스트로부터 삭제(pruning)할 수 있다.
또한, 예측부는 MVP 후보 리스트 내 MVP 후보들의 개수를 최대 후보 개수로 조정할 수 있다. 예컨대, MVP 후보 리스트의 최대 후보 개수가 2인 경우, A와 B 그리고 IL이 모두 유효하다면 예측부는 A와 B 중 어느 하나를 MVP 후보 리스트에서 제거할 수 있다.
예측부는 MVP 후보 리스트 내 후보들의 개수가 최대 후보 개수보다 적은 경우에는 제로(0) 움직임 벡터를 후보로 추가할 수도 있다.
MVP 후보 리스트에서 후보 인덱스는 리스트에 추가된 순서대로 부여될 수 있다. 예컨대, IL-A-B-제로 벡터의 순서로 최대 후보 개수만큼(예컨대, 최대 후보 개수가 2인 경우 0, 1) 부여될 수 있다.
표 7의 경우와 마찬가지로, 인코딩 장치는 MVP 인덱스, mvd와 참조 인덱스를 디코딩 장치로 전송할 수 있다.
인터 레이어 예측이 적용되는 경우에, MVP 인덱스는 IL의 움직임 벡터를 지시하며, 참조 인덱스는 IL을 참조 픽처로서 지시할 수 있다. 이때, IL의 움직임 벡터는 제로 벡터일 수 있으며, 예측부는 IL(370)에서 현재 블록(300)에 대응하는 영역의 샘플들을 현재 블록(300)에 대한 예측 샘플로서 이용할 수 있다. 이 경우, IL(370)에서 현재 블록(300)에 대응하는 영역의 샘플들은 현재 레이어에 맞춰(예컨대, 현재 레이어의 해상도에 맞춰) 업샘플링될 수 있다.
도 4는 스케일러빌러티를 지원하는 멀티 레이어 구조에서 발명에 따라 현재 블록에 머지 모드를 적용하는 방법을 개략적으로 설명하는 도면이다.
머지 모드가 적용되는 경우에, 예측부는 머지 후보 리스트를 구성하여 현재 블록의 움직임 정보로 사용할 움직임 정보를 결정할 수 있다
머지 모드에서는 도 4에 도시된 주변 블록(neighboring block)들의 움직임 정보(이하, 움직임 정보 후보라 함)들로 구성된 머지 후보 리스트 상에서 선택된 움직임 정보를 현재 블록의 움직임 정보로 이용할 수 있다. 머지 후보 리스트 상에서 현재 블록의 움직임 정보로 사용될 움직임 정보 후보를 지시하는 정보(머지 인덱스)는 인코딩 장치로부터 디코딩 장치로 전송될 수 있다.
머지 후보 리스트는 스킵 모드가 적용되는 경우에도 머지 모드가 적용되는 경우와 동일하게 구성되며, 현재 블록의 움직임 정보를 결정하기 위해 사용될 수 있다. 예컨대, 스킵 모드가 적용되는 경우에도 머지 인덱스는 현재 블록의 움직임 정보로 이용될 정보를 머지 후보 리스트 상에서 지시하며, 머지 모드가 적용되는 경우에도 머지 인덱스는 현재 블록의 움직임 정보로 이용될 정보를 머지 후보 리스트 상에서 지시한다. 다만, 스킵 모드가 적용되는 경우에는, 머지 인덱스 외 추가적인 신택스 엘러먼트(syntax element)가 전송되지 않는다.
도 3의 경우와 마찬가지로, BL(440)은 현재 블록(400)의 하좌측(bottom-left) 주변 블록이고, L(410)은 현재 블록(400)의 좌측(left) 주변 블록이며, RA(430)는 현재 블록(400)의 우상측(right-above) 주변 블록이고, A(420)는 현재 블록(400)의 상측(above) 주변 블록이며, LA(450)는 현재 블록(400)의 좌상측(left-above) 주변 블록이다. L(410), A(420), RA(430), BL(440), LA(450)를 현재 블록과 동일한 픽처 내의 공간적 주변 블록(spatial neighbouring block)이라고 할 수 있다.
또한, T(460)는 현재 블록(400)의 시간적 주변 블록(temporal neighbouring block)으로서, 현재 블록(400)과 동일한 레이어 내 참조 픽처에서 현재 블록(400)에 대응하는 블록이다. IL(470)은 현재 블록(400)과 상이한 레이어(참조 레이어) 내에서 현재 블록의 예측에 이용되는 블록 혹은 픽처를 의미한다.
도 4의 예에서도, L(410)의 움직임 정보를 A1, A(420)의 움직임 정보를 B1, RA(430)의 움직임 정보를 B0, BL(440)의 움직임 정보를 A0, LA(450)의 움직임 정보를 B2라고 하고, T(460)의 움직임 정보를 설명의 편의상 TMVP, IL(470)의 움직임 정보를 IL이라고 하자.
머지 모드 또는 스킵 모드가 적용되는 경우에, 예측부는 현재 블록 주변의 공간적 후보들인 L(410), BL(440), LA(450), A(420), RA(430)에 대한 가용성을 판단할 수 있다. 가용성 판단은 소정의 순서로 진행될 수 있다. 예컨대, L(410)→A(420)→RA(430)→BL(440)→ LA(450)의 순서로 진행될 수 있다.
이때, 각 후보들의 가용성 판단에는 이전 후보와의 동일성 판단이 포함될 수 있다. 예컨대, A(420)에 대하여, L(410)과 움직임 정보가 동일한지를 고려하여 가용성 판단을 할 수 있다. 구체적으로, L(410)이 가용하고 L(410)과 A(420)의 움직임 정보가 동일하면 A(420)은 가용하지 않은 것으로 판단할 수 있다.
같은 방법으로, RA(430)에 대해서는 RA(430)가 A(420)와 움직임 정보가 동일한지를 고려하여 가용성 판단을 할 수 있으며, BL(440)에 대해서는 BL(440)이 L(410)과 움직임 정보가 동일한지를 고려하여 가용성 판단을 할 수 있다.
LA(450)에 대해서는 LA(450)가 L(410)와 움직임 정보가 동일한지, A(420)와 움직임 정보가 동일한지를 모두 고려하여 가용성 판단을 할 수 있으며, 이때, 앞선 네 후보(L, A, RA, BL)가 모두 가용한 경우에는 LA(450)이 가용하지 않은 것으로 판단할 수도 있다.
현재 블록에 대하여 인터 레이어 예측이 적용되지 않는 경우에, 예측부는 공간적 주변 블록의 움직임 정보에 더하여, 시간적 움직임 벡터를 MVP 후보 리스트에 포함시킬 수 있다.
T(460)의 움직임 정보를 움직임 정보 후보로 사용하는 경우에는, 참조 픽처 리스트를 이용하여 T(460)이 포함된 COL 픽처를 특정할 수 있다. COL 픽처에서 현재 블록과 동일 LCU 내에 있는 COL 블록에 대하여 소정 위치를 포함하는 예측 블록의 움직임 정보를 T(460)의 움직임 정보로 할 수 있다. 이때, T(460)의 움직임 벡터는 COL 픽처와 현재 픽처의 참조 픽처들을 고려하여 스케일링될 수 있으며, T(460)의 참조 인덱스는 소정의 값(예컨대, 0)으로 설정될 수 있다.
T(460) 후보를 포함하여 가용한 것(available)으로 판단된 후보들로, 가용성 판단 순서에 따라 머지 후보 리스트가 구성될 수 있다.
현재 블록에 대한 인터 예측으로서, 인터 레이어 예측을 적용하지 않는 경우의 머지 후보 리스트는 표 9와 같이 구성될 수 있다.
<표 9>
Figure PCTKR2014001517-appb-I000009
표 9의 예에서, 예측부는 움직임 정보의 유효성을 판단하여 공간적 주변 블록의 움직임 정보들을 머지 후보 리스트에 차례로 포함시킬 수 있다. 이때, 유효성을 판단하는 것은 상술한 바와 같이 앞선 움직임 정보와 동일하지 않을 것을 판단하는 것을 포함하며, 소정의 정해진 순서대로 진행될 수 있다.
B2의 경우는, 앞선 A1, B1, B0, A1이 모두 유효한 움직임 정보인 경우에는 머지 후보 리스트에 포함되지 않는다. 시간적 움직인 정보인 TMVP가 유효하게 포함되면 움직임 정보들에 대한 정리(일종의 후보 소거)를 수행할 수 있다. 예컨대, 최대 후보의 개수가 5개라면, 최대 후보 개수를 채우지 못하였고, 현재 블록의 슬라이스 타입이 B인 경우에 컴바인드 양 예측 후보(combined bi-prediction candidate)를 추가한다. 컴바인드 양 예측 후보를 추가하더라도 최대 후보 개수를 채우지 못하면 제로 벡터를 추가하여 머지 후보 리스트를 구성할 수 있다.
머지 후보 리스트 상에서의 인덱스는 추가된 순서대로, 즉 표 9의 예에서는 A1-B1-B0-A0-B2-TMVP-컴바인드 양 예측-제로 움직임 벡터의 순서로 최대 후보 개수만큼(예컨대, 최대 후보 개수가 5개인 경우면 0, 1, 2, 3, 4) 부여될 수 있다.
예측부는 인코딩 장치로부터 전송된 정보(예컨대, 머지 인덱스 merge_idx)가 머지 후보 리스트 상에서 지시하는 후보의 움직임 정보를 현재 블록에 대한 움직임 정보로 이용하여 인터 예측을 수행할 수 있다. 예컨대, 예측부는 머지 인덱스에 의해 선택된 후보의 움직임 정보가 지시하는 샘플들을 현재 블록의 예측 블록으로 할 수 있다.
현재 블록에 대하여 인터 레이어 예측이 적용되지 않는 경우에, 예측부는 공간적 주변 블록의 움직임 정보에 더하여, 시간적 움직임 벡터를 MVP 후보 리스트에 포함시킬 수 있다.
T(460)의 움직임 정보를 움직임 정보 후보로 사용하는 경우에는, 참조 픽처 리스트를 이용하여 T(460)이 포함된 COL 픽처를 특정할 수 있다. COL 픽처에서 현재 블록과 동일 LCU 내에 있는 COL 블록에 대하여 소정 위치를 포함하는 예측 블록의 움직임 정보를 T(460)의 움직임 정보로 할 수 있다. 이때, T(460)의 움직임 벡터는 COL 픽처와 현재 픽처의 참조 픽처들을 고려하여 스케일링될 수 있으며, T(460)의 참조 인덱스는 소정의 값(예컨대, 0)으로 설정될 수 있다.
T(460) 후보를 포함하여 가용한 것(available)으로 판단된 후보들로, 가용성 판단 순서에 따라 머지 후보 리스트가 구성될 수 있다.
한편, 현재 블록에 대하여 인터 레이어 예측이 적용될 수 있는 경우에 구성될 수 있는 머지 후보 리스트의 일 예는 표 10과 같다.
<표 10>
Figure PCTKR2014001517-appb-I000010
표 10의 예에서도, 예측부는 움직임 정보의 유효성을 판단하여 공간적 주변 블록의 움직임 정보들을 머지 후보 리스트에 차례로 포함시킬 수 있다. 이때, 유효성을 판단하는 것은 상술한 바와 같이 앞선 움직임 정보와 동일하지 않을 것을 판단하는 것을 포함하며, 소정의 정해진 순서대로 진행될 수 있다.
B2의 경우는, 앞선 A1, B1, B0, A1이 모두 유효한 움직임 정보인 경우에는 머지 후보 리스트에 포함되지 않는다.
인터 레이어 예측 정보인 IL가 유효하게 포함되면 움직임 정보들에 대한 정리(일종의 후보 소거)를 수행할 수 있다. 예컨대, 최대 후보의 개수가 5개라면, 최대 후보 개수를 채우지 못하였고, 현재 블록의 슬라이스 타입이 B인 경우에 컴바인드 양 예측 후보(combined bi-prediction candidate)를 추가한다. 컴바인드 양 예측 후보를 추가하더라도 최대 후보 개수를 채우지 못하면 제로 벡터를 추가하여 머지 후보 리스트를 구성할 수 있다.
머지 후보 리스트 상에서의 인덱스는 추가된 순서대로, 즉 표 10의 예에서는 A1-B1-B0-A0-B2-IL-컴바인드 양 예측-제로 움직임 벡터의 순서로 최대 후보 개수만큼(예컨대, 최대 후보 개수가 5인 경우에는 0, 1, 2, 3, 4) 부여될 수 있다.
예측부는 인코딩 장치로부터 전송된 정보(예컨대, 머지 인덱스 merge_idx)가 머지 후보 리스트 상에서 지시하는 후보의 움직임 정보를 현재 블록에 대한 움직임 정보로 이용하여 인터 예측을 수행할 수 있다. 예컨대, 예측부는 머지 인덱스에 의해 선택된 후보의 움직임 정보가 지시하는 샘플들을 현재 블록의 예측 블록으로 할 수 있다.
인터 레이어 예측이 적용되는 경우에, 머지 인덱스는 머지 리스트 상에서 IL을 지시할 수 있다. 이때, IL움직임 정보 IL의 움직임 벡터는 제로 벡터일 수 있으며, 움직임 정보 IL의 참조 인덱스는 참조 레이어의 참조 픽처를 지시할 수 있다. 참조 레이어의 참조 픽처는 참조 레이어 내에서 현재 픽처와 동일한 AU에 속하는 픽처일 수 있다. 즉, 인터 레이어 참조 픽처는 현재 픽처와 동일한 AU의 대응 픽처임을 고려할 때, IL의 움직임 벡터는 제로 벡터일 수 있으며, 예측부는 IL(470)에서 현재 블록(400)에 대응하는 영역의 샘플들을 현재 블록(400)에 대한 예측 샘플로서 이용할 수 있다. 이 경우, IL(470)에서 현재 블록(400)에 대응하는 영역의 샘플들은 현재 레이어에 맞춰(예컨대, 현재 레이어의 해상도에 맞춰) 업샘플링될 수 있다.
인코딩 장치/디코딩 장치는 예측부에서 유도한 예측 샘플들에 현재 픽처에 대한 레지듀얼을 더하여 현재 픽처를 복원할 수 있다. 예컨대, 예측부가 현재 픽처 내 각 예측 블록(예컨대, PU)들에 대한 예측 샘플을 유도한 뒤에, 인코딩 장치/디코딩 장치의 가산기(adder)에서는 현재 픽처에 대한 예측 샘플과 레지듀얼을 더하여 현재 픽처를 복원할 수 있다.
현재 블록에 대하여 인터 레이어 예측이 적용될 수 있는 경우에 구성될 수 있는 머지 후보 리스트의 다른 예는 표 11과 같다.
<표 11>
Figure PCTKR2014001517-appb-I000011
표 11의 예에서도, 예측부는 움직임 정보의 유효성을 판단하여 공간적 주변 블록의 움직임 정보들을 머지 후보 리스트에 차례로 포함시킬 수 있다. 이때, 유효성을 판단하는 것은 상술한 바와 같이 앞선 움직임 정보와 동일하지 않을 것을 판단하는 것을 포함하며, 소정의 정해진 순서대로 진행될 수 있다.
B2의 경우는, 앞선 A1, B1, B0, A1이 모두 유효한 움직임 정보인 경우에는 머지 후보 리스트에 포함되지 않는다.
B2에 대한 유효성까기 검토되면 움직임 정보들에 대한 정리(일종의 후보 소거)를 수행할 수 있다. 예컨대, 최대 후보의 개수가 5개라면, 최대 후보 개수를 채우지 못하였고, 현재 블록의 슬라이스 타입이 B인 경우에 컴바인드 양 예측 후보(combined bi-prediction candidate)를 추가한다. 컴바인드 양 예측 후보를 추가하더라도 최대 후보 개수를 채우지 못하면 제로 벡터를 추가하여 머지 후보 리스트를 구성할 수 있다.
머지 후보 리스트 상에서의 인덱스는 추가된 순서대로, 즉 표 11의 예에서는 IL-A1-B1-B0-A0-B2-컴바인드 양 예측-제로 움직임 벡터의 순서로 최대 후보 개수만큼(예컨대, 최대 후보 개수가 5인 경우에는 0, 1, 2, 3, 4) 부여될 수 있다.
예측부는 인코딩 장치로부터 전송된 정보(예컨대, 머지 인덱스 merge_idx)가 머지 후보 리스트 상에서 지시하는 후보의 움직임 정보를 현재 블록에 대한 움직임 정보로 이용하여 인터 예측을 수행할 수 있다. 예컨대, 예측부는 머지 인덱스에 의해 선택된 후보의 움직임 정보가 지시하는 샘플들을 현재 블록의 예측 블록으로 할 수 있다.
인터 레이어 예측이 적용되는 경우에, 머지 인덱스는 머지 리스트 상에서 IL을 지시할 수 있다. 이때, IL움직임 정보 IL의 움직임 벡터는 제로 벡터일 수 있으며, 움직임 정보 IL의 참조 인덱스는 참조 레이어의 참조 픽처를 지시할 수 있다. 참조 레이어의 참조 픽처는 참조 레이어 내에서 현재 픽처와 동일한 AU에 속하는 픽처일 수 있다. 즉, 인터 레이어 참조 픽처는 현재 픽처와 동일한 AU의 대응 픽처임을 고려할 때, IL의 움직임 벡터는 제로 벡터일 수 있으며, 예측부는 IL(470)에서 현재 블록(400)에 대응하는 영역의 샘플들을 현재 블록(400)에 대한 예측 샘플로서 이용할 수 있다. 이 경우, IL(470)에서 현재 블록(400)에 대응하는 영역의 샘플들은 현재 레이어에 맞춰(예컨대, 현재 레이어의 해상도에 맞춰) 업샘플링될 수 있다.
스킵 모드가 적용되거나 인터 예측으로서 머지 모드가 적용되는 경우, 인코딩 장치/디코딩 장치의 예측부는 머지 인덱스가 머지 후보 리스트에서 지시하는 움직임 정보를 현재 블록의 움직임 정보로 이용할 수 있다. 이때, 예측부는 머지 인덱스가 지시하는 움직임 정보에 의해 특정되는 참조 픽처의 샘플들을 현재 블록의 예측 샘플로 이용할 수 있다. 이때, 참조 픽처의 샘플들은 인터 레이어에서 현재 픽처와 동일한 AU 에 속하는 픽처에서 현재 블록에 대응하는 블록의 샘플일 수 있으며, 이 샘플들은 현재 레이어에 맞춰 업샘플링된 후 예측 샘플로서 이용될 수도 있다.
MVP 모드가 적용되는 경우, 예측부는 MVP 후보 리스트에서 MVP 후보 지시자에 의해 선택된 움직임 벡터를 현재 블록에 대한 움직임 벡터 예측자(MVP)로 사용할 수 있다. 예측부는 움직임 벡터 예측자와 별도로 전송된 움직임 벡터 차이값을 더하여 현재 블록의 움직임 벡터를 유도할 수 있다. 예측부는 유도된 움직임 벡터와 현재 블록에 대한 참조 인덱스에 의해 특정되는 참조 픽처의 샘플들을 현재 블록의 예측 샘플로 이용할 수 있다. 이때, 참조 픽처의 샘플들은 인터 레이어에서 현재 픽처와 동일한 AU 에 속하는 픽처에서 현재 블록에 대응하는 블록의 샘플일 수 있으며, 이 샘플들은 현재 레이어에 맞춰 업샘플링된 후 예측 샘플로서 이용될 수도 있다.
한편, 인트라 예측이 적용되는 경우에, 예측부는 도 1 및 도 2에서 설명한 바와 같이, 현재 블록의 주변 샘플을 참조 샘플로 이용하여 현재 블록에 대한 예측 샘플을 유도할 수 있다.
인코딩 장치와 디코딩 장치는, 예측 샘플에 레지듀얼을 더하여 현재 픽처를 복원할 수 있다. 레지듀얼은 인코딩 장치로부터 디코딩 장치로 전송될 수 있다. 한편, 스킵 모드가 적용되는 경우에는 머지 인덱스 외 추가적인 신택스 엘리먼트의 전송이 없으므로, 예측 샘플을 현재 블록의 복원 샘플로 이용할 수도 있다.
원본 픽처에 더 유사한 복원 픽처를 생성하기 위해, 복원 픽처 내 각 블록 경계에 대하여 디블록킹 필터가 적용될 수 있다. 디블록킹 필터링은 인코딩 장치와 디코딩 장치에서 수행될 수 있다, 예컨대, 도 1 및 도 2의 필터링부가 디블록킹 필터링을 수행할 수 있다.
디블록킹 필터링은 현재 픽처 내 블록들 간의 수직 에지(vertical edge)에 먼저 적용된 후 현재 픽처 내 블록들 간의 수평 에지(horizontal edge)에 적용된다. 수직 에지에 적용된 디블록킹 필터링에 의해 수정된 샘플들을 가지고(with the modified sample by deblocking filtering of vertical edges) 현재 픽처 내 수평 에지에 디블록킹 필터링이 적용된다.
도 5는 본 발명에 따른 디블록킹 필터링의 진행 방식을 개략적으로 설명하는 도면이다. 도 5를 참조하면, CTU(Coding Tree Unit) 단위로 해당 코딩 블록 내의 에지에 대하여 디블록킹 필터링이 진행된다. CTU는 트리 구조의 CU들 중 최상위 CU를 의미하며, LCU(Largest Coding Unit)일 수 있다. 본 명세서에서는 발명이 용이하게 이해될 수 있도록 필요에 따라 CTU와 LCU를 혼용하여 설명하도록 한다.
앞서 설명한 바와 같이, 필터링부는 현재 픽처 전체에 대하여 수직 에지에 대한 디블록킹 필터링(수평 필터링)을 수행한 후, 현재 픽처 전체에 대하여 수평 에지에 대한 디블록킹 필터링(수직 필터링)을 수행한다.
구체적으로, 필터부는 블록 간의 에지에 대하여 디블록킹 필터링을 적용하기 위한 블록 경계를 유도한다. 예컨대, 필터링부는 LCU 내 코딩 블록, 예측 블록에 해아여 경계를 유도할 수 있다.
이어서, 필터링부는 디블록킹 필터를 적용할 블록 경계에 대한 경계 세기(boundary strength: bS)를 유도한다. bS의 유도는 소정의 단위별로 수행될 수 있다. 예컨대, bS는 소정 사이즈의 블록을 단위로, 예컨대 8x8 픽셀 블록이나 4x4 픽셀 블록을 단위로 유도될 수도 있다. 혹은 8x8 블록의 경계에 대하여 4 픽셀 단위로 유도될 수도 있다.
필터링부는 bS에 따라서 블록 경계에 필터링을 수행한다. 필터링부는 디블록킹 필터링을 적용하지 않는 경우에는 bS 값을 0으로 유도하며 필터링이 적용되는 경우에는 bS 값을 1 또는 2로 유도한다. 예컨대, 필터링부는 필터링 대상 경계를 사이에 두고 인접하는 두 블록 중 적어도 하나가 인트라 코딩된 경우에는 이 필터링 대상 경계에 대한 bS를 2로 결정할 수 있다. 또한, 필터링부는 ‘두 블록 중 적어도 하나의 블록이 인트라 코딩된 경우’가 아닐 때, 두 블록 중 적어도 하나가 0이 아닌 변환 계수를 포함하거나, 서로 상이한 참조 픽처를 가지거나, 서로 상이한 움직임 벡터를 가지는 경우 등에 대하여 bS 값을 1로 유도할 수 있다.
필터링부는 bS에 따라서 블록 기반의 필터링 온/오프를 결정할 수 있다. 예컨대, 필터링부는 bS 값이 0인 경계에 대해서는 디블록킹 필터를 오프하고, bS 값이 1 또는 2인 경계에 대해서는 디블록킹 필터를 온(on)할 수 있다
필터링부는 디블록킹 필터가 적용되는 경계에 대하여 강한(strong) 필터를 적용할 것인지 약한(weak) 필터를 적용할 것인지를 결정하고, 필터링을 수행할 수 있다.
필터링부는 상술한 바와 같이 디블록킹 필터링 단계가 완료되면, 복원 픽처의 샘플들에 대하여 오프셋을 적용할 수 있다. 오프셋은 샘플에 대하여 적응적으로 적용될 수 있다. 즉, 샘플별로 오프셋의 적용 여부, 적용 타입 등이 결정될 수 있다.
이 샘플 적응적 오프셋(Sample Adaptive Offset: SAO)은 시퀀스 파라미터 레벨에서 적용 가능한지가 결정될 수 있고, CTU(Coding Tree Unit) 단위로 적용 여부가 결정될 수 있다.
SAO에는 밴드 오프셋(band offset)과 에지 오프셋(edge offset)이 있으며, SAO가 적용되는 경우에는 샘플 단위로 밴드 오프셋 혹은 에지 오프셋이 적용될 수 있다.
인코딩 장치는 밴드 오프셋을 적용할 것인지 에지 오프셋을 적용할 것인지를 지시하는 정보를 디코딩 장치에 전송할 수 있다. 이때, 인코딩 장치는 현재 CTU 주변의 이미 처리된 CTU의 SAO 정보를 이용하여 현재 CTU에서 SAO가 수행되도록 지시할 수도 있다. 예컨대, 디코딩 장치는 인코딩 장치로부터 시그널링된 정보가 주변 CTU의 SAO정보를 이용할 것을 지시하는 경우에, 현재 CTU의 좌측 CTU 또는 상측 CTU의 SAO 정보를 그대로 이용하여 현재 CTU에서 SAO를 수행할 수도 있다.
적용할 오프셋의 값은 인코딩 장치로부터 디코딩 장치로 시그널링될 수 있다. 오프셋 값은 카테고리에 따라서 CTU 별로 결정될 수 있다. 또한, 오프셋 값은 크기와 부호를 지시하는 각각의 정보(신택스 요소)를 이용하여 시그널링될 수도 있다.
밴드 오프셋은 픽셀 히스토그램에 따라서, 픽셀 값을 소정 구간의 밴드로 나눈 뒤, 네 개의 연속한 밴드에 속하는 샘플에 대하여 오프셋을 적용할 수 있다. 밴드 오프셋을 적용하는 경우에, 인코딩 장치는 밴드 오프셋을 적용할 4 개의 밴드를 결정하고, 4 개의 밴드들에 대한 오프셋들과 네 개의 밴드들 중 첫 번째 밴드를 지시하는(즉, 시작 밴드의 위치를 지시하는) 시작 밴드 정보를 전송할 수 있다.
도 6은 밴드 오프셋을 적용하는 방법의 일 예를 개략적으로 설명하는 도면이다.
도 6을 참조하면, 전체 픽셀의 픽셀 값 범위는 N개의 밴드로 균일하게 나뉘어 진다.
인코딩 장치는 밴드 오프셋을 적용할 4 개의 연속된 밴드(i, i+1, i+2, i+3)을 지시한다. 인코딩 장치는 시작 밴드(i)의 위치를 특정함으로써, 밴드 오프셋이 적용될 4 개의 밴드를 특정할 수도 있다.
디코딩 장치는 수신한 정보를 기반으로 밴드 오프셋을 적용할 4개의 연속된 밴드(i, i+1, i+2, i+3)를 특정할 수 있다. 디코딩 장치는 인코딩 장치로부터 시작 밴드(i)를 특정하는 정보(시작 밴드 정보)를 수신할 수 있다. 시작 밴드 정보는 SAO 신택스 레벨에서 전송될 수 있다.
디코딩 장치는 시작 밴드(i)를 포함하는 4 개의 연속된 밴드를 특정하고, 특정된 4 개의 밴드에 속하는 샘플에 대하여 밴드 오프셋을 적용할 수 있다.
적용할 오프셋 값은 밴드(카테고리)별로 결정될 수 있다. 인코딩 장치는 4 개의 밴드 각각에 대하여 적용할 오프셋 값을 특정하는 정보를 디코딩 장치에 전송할 수 있으며, 디코딩 장치는, 수신한 정보에 의해 특정되는 오프셋 값을 밴드별로 유도하고, 각 밴드에 속하는 픽셀들에 대응하는 오프셋 값을 적용할 수 있다. 이때, 오프셋 값은 크기를 지시하는 정보와 부호를 지시하는 정보로 나뉘어 인코딩 장치로부터 디코딩 장치로 전송될 수도 있다.
디코딩 장치는 밴드 오프셋을 적용하는 4 개의 밴드들에 속하는 픽셀에 대하여는, 해당 픽셀이 속하는 밴드에 대응하는 오프셋을 적용할 수 있다.
에지 오프셋은 SAO를 적용할 블록, 예컨대 CTU 내에서 영상이 전체적으로 어떤 에지(edge)를 가지는지 4개의 클래스(class)로 구분한다. 예컨대, 클레스는 수직 에지, 수평 에지, 45도 에지지, 135도 에지의 네 가지로 구분될 수 있다.
도 7은 에지 오프셋의 네 가지 클래스를 나타내는 도면이다. 도 7의 예에서, 현재 픽셀(c)과 주변 픽셀로 구성되는 에지가 (a)의 경우는 수평이며, (b)의 경우는 수직이고, (c)의 경우는 135도 에지이며, (d)의 경우는 45도 에지이다.
인코딩 장치와 디코딩 장치는 각 클레스 별로, 에지 오프셋을 적용할 픽셀의 화소값이 주변 픽셀의 화소값과 어떤 관계를 가지는지를 다시 4 가지 카테고리로 구분하여, 해당 카테고리에 따른 오프셋 값을 적용할 수 있다.
도 8은 에지 오프셋의 카테고리를 개략적으로 설명하는 도면이다.
도 8을 참조하면 에지 오프셋의 카테고리는 (a)와 같이 대상 픽셀의 화소 값이 주변의 두 픽셀보다 작은 경우, (b)와 같이, 대상 픽셀의 화소 값이 주변의 한 픽셀과 같고 다른 한 픽셀보다 큰 경우, (c)와 같이 대상 픽셀의 화소 값이 주변의 한 픽셀과 같고 다른 한 픽셀보다 작은 경우, (d)와 같이 대상 픽셀의 화소 값이 주변의 두 픽셀보다 큰 경우의 4 카테고리일 수 있다.
에지 오프셋의 카테고리를 결정하기 위해 비교되는 주변의 두 픽셀은 SAO를 적용할 블록, 예컨대 CTU가 어떤 클래스인지에 따라 결정될 수 있다. 예컨대, 카테고리를 결정하기 위해 비교되는 주변의 두 픽셀은, 수직 에지의 경우에 대상 픽셀 상하의 두 픽셀일 수 있으며, 수평 에지의 경우에는 대상 픽셀 좌우의 픽셀일 수 있고, 45도 에지의 경우에는 대상 픽셀의 좌상측 및 우하측 픽셀일 수 있으며, 135도 에지의 경우에는 대상 픽셀의 좌하측 및 우상측 픽셀일 수 있다.
에지 오프셋에 적용되는 오프셋 값은 클래스에 따라서 현재 픽셀의 두 주변 픽셀을 선택하고, 선택된 픽셀과의 관계에 따라서 카테고리가 결정되면, 현재 픽셀의 카테고리에 따라서 유도될 수 있다.
에지 오프셋을 적용하는 경우에, 인코딩 장치는 에지 오프셋을 적용하는 것을 지시하는 정보 및 카테고리에 따른 오프셋 정보를 디코딩 장치에 전송할 수 있다. 예컨대, 인코딩 장치는 카테고리별로 오프셋 값을 특정하는 정보를 디코딩 장치에 전송할 수 있다.
디코딩 장치는 에지 오프셋을 적용하는 경우, 대상 픽셀이 속하는 카테고리에 따라서 대상 픽셀에 오프셋을 적용할 수 있다. 예컨대, 디코딩 장치는, 인코딩 장칙로부터 수신한 오프셋 값에 관한 정보를 기반으로, 현재 픽처에 적용할 오프셋 값을 현재 픽서의 카테고리에 따라서 유도할 수 있다.
오프셋 값은 크기를 지시하는 정보와 부호를 지시하는 정보로 나뉘어 인코딩 장치로부터 디코딩 장치로 전송될 수도 있다.
인코딩 장치는 SAO를 적용할 때, 상술한 에지 오프셋과 밴드 오프셋 중 어느 것을 적용할 것인지를 특정하는 SAO 타입 인덱스를 디코딩 장치에 전송할 수 있다.
표 12는 적용할 SAO를 특정하는 SAO 타입 인덱스의 일 예를 나타낸 것이다.
<표 12>
Figure PCTKR2014001517-appb-I000012
표 12를 이용하는 예에서, 인코딩 장치는 SAO를 적용할 것인지, 밴드 오프셋을 적용할 것인지, 에지 오프셋을 적용할 것인지를 SAO 타입 인덱스를 통해서 디코딩 장치에 전송할 수 있다.
디코딩 장치는 수신한 SAO 타입 인덱스가 0인 경우에는 SAO를 적용하지 않고, 수신한 SAO 타입 인덱스가 1인 경우에는 밴드 오프셋을 적용하며. 수신한 SAO 타입 인덱스가 2인 경우에는 에지 오프셋을 적용할 수 있다.
표 12의 예에서, 밴드 오프셋을 적용할 것인지 에지 오프셋을 적용할 것인지는 SAO 타입 인덱스로 지시된다. 따라서, 밴드 오프셋을 적용하는 경우에 시작 밴드를 지시하는 정보와 오프셋 값을 지시하는 정보는 별도로 전송될 수 있고, 에지 오프셋을 적용하는 경우에 에지 클래스를 지시하는 정보와 오프셋 값은 별도로 전송될 수 있다.
도 9는 본 발명에 따른, 비디오 인코딩 장치의 동작에 관한 일 예를 개략적으로 설명하는 순서도이다.
도 9를 참조하면, 인코딩 장치는 현재 블록에 대한 예측 샘플을 유도할 수 있다(S910). 인코딩 장치는 인터 예측의 경우, 예측 블록 단위로 예측 샘플을 유도할 수 있다. 인코딩 장치는 인트라 예측의 경우, 변환 블록 단위로 예측 샘플을 유도할 수도 있다. 인코딩 장치는 블록 단위로 예측 샘플을 유도하여, 현재 픽처에 대한 예측 샘플을 유도할 수 있다.
인터 예측을 수행하는 경우에, 현재 블록에 대하여 인터 레이어 예측을 수행하지 않으면, 인코딩 장치는 현재 블록과 동일한 레이어의 공간적 주변 블록 및 시간적 주변 블록의 정보를 이용하여 현재 블록에 대한 예측 샘플을 유도할 수 있다. 현재 블록에 대하여 인터 레이어 예측을 수행할 수 있는 경우에, 인코딩 장치는 현재 블록과 동일한 레이어의 공간적 주변 블록 및 현재 블록의 레이어와 상이한 레이어 내 대응 블록의 정보를 이용하여 현재 블록에 대한 예측 샘플을 유도할 수 있다.
현재 블록에 대한 예측 샘플을 현재 블록에 대한 움직임 벡터 예측을 기반으로 유도하는 경우(MVP 모드를 적용하는 경우)에, 인터 레이어 예측을 수행할 수 있으면 인코딩 장치는 현재 블록과 동일한 레이어의 공간적 주변 블록들의 움직임 벡터, 현재 블록과 상이한 레이어 내 대응 블록의 움직임 벡터 중 어느 하나를 이용하여 현재 블록에 대한 움직임 벡터를 유도하며, 인터 레이어 예측을 수행할 수 없으면, 인코딩 장치는 현재 블록과 동일한 레이어의 공간적 주변 블록들의 움직임 벡터, 현재 블록과 동일한 레이어의 시간적 주변 블록의 움직임 벡터 중 어느 하나를 이용하여 현재 블록에 대한 움직임 벡터를 유도할 수 있다.
현재 블록에 대한 예측 샘플이 주변 블록의 움직임 정보를 이용하는 머지 모드를 기반으로 유도되는 경우에, 현재 블록에 대하여 인터 레이어 예측을 수행할 수 없으면, 인코딩 장치는 현재 블록과 동일한 레이어의 공간적 주변 블록들의 움직임 정보, 현재 블록과 동일한 레이어의 시간적 주변 블록의 움직임 정보 중 어느 하나를 이용하여 현재 블록에 대한 움직임 정보를 유도할 수 있으며, 현재 블록에 대하여 인터 레이어 예측을 수행할 수 있으면, 인코딩 장치는 현재 블록과 동일한 레이어의 공간적 주변 블록들의 움직임 정보, 현재 블록과 상이한 레이어 내 대응 블록의 움직임 정보 중 어느 하나를 이용하여 현재 블록에 대한 움직임 정보를 유도할 수 있다.
현재 블록의 예측 샘플을 유도하는 구체적인 방법은 앞서 설명한 바와 같다.
인코딩 장치는 현재 픽처를 복원할 수 있다(S920). 인코딩 장치는 유도한 예측 샘플과 레지듀얼을 더하여 현재 픽처를 복원할 수 있다
인코딩 장치는 복원된 현재 픽처 내 블록 에지들에 대하여 디블록킹 필터링을 적용할 수 있다(S930). 인코딩 장치는 블록 에지에 대한 경계 세기를 기반으로 디블록킹 필터링을 적용할 것인지를 결정할 수 있다. 구체적인 디블록킹 필터링의 방법은 앞서 설명한 바와 같다.
인코딩 장치는 디블록킹 프로세스가 완료된 복원 픽처의 샘플에 대하여 오프셋을 적용할 수 있다(S940). 인코딩 장치는 현재 픽처의 샘플에 밴드 오프셋 또는 에지 오프셋을 적용할 수 있다. 샘플별로 적용되는 오프셋(SAO)의 구체적인 내용은 앞서 설명한 바와 같다.
인코딩 장치는 현재 픽처의 복원에 관한 정보 및 복원된 픽처에 관한 저장하고 관련된 정보를 전송할 수 있다(S950). 인코딩 장치는 예측과 관련하여 인코딩 장치는 인터 레이어 예측이 가능한지에 관한 정보를 디코딩 장치에 전송할 수 있다. 또한, 인코딩 장치는 현재 블록에 스킵 모드를 적용할 것인지를 지시하는 정보, 인터 예측인지 인트라 예측인지를 지시하는 정보, 인터 예측의 모드를 지시하는 정보, 인트라 예측의 모드를 지시하는 정보, 레지듀얼 정보 등을 디코딩 장치에 전송할 수 있다. 인코딩 장치는 또한, 머지 모드의 경우 머지 인덱스를 포함하는 정보를 전송할 수 있으며, MVP 모드의 경우에는 MVP 지시 정보, MVD 정보, 참조 인덱스 등을 포함하는 정보를 전송할 수 있다.
도 10은 본 발명에 따른 비디오 디코딩 장치의 동작에 관한 일 예를 개략적으로 설명하는 순서도이다.
도 10을 참조하면, 디코딩 장치는 인코딩 장치로부터 수신한 정보를 기반으로 현재 블록에 대한 예측 샘플을 유도할 수 있다(S1010).
디코딩 장치는 예측과 관련하여 인코딩 장치로부터 인터 레이어 예측이 가능한지에 관한 정보를 수신할 수 있다. 또한, 디코딩 장치는 현재 블록에 스킵 모드를 적용할 것인지를 지시하는 정보, 인터 예측인지 인트라 예측인지를 지시하는 정보, 인터 예측의 모드를 지시하는 정보, 인트라 예측의 모드를 지시하는 정보, 레지듀얼 정보 등을 인코딩 장치로부터 수신할 수 있다. 디코딩 장치는 또한, 머지 모드의 경우 머지 인덱스를 포함하는 정보를 수신할 수 있으며, MVP 모드의 경우에는 MVP 지시 정보, MVD 정보, 참조 인덱스 등을 포함하는 정보를 수신할 수 있다.
디코딩 장치는 인터 예측의 경우, 예측 블록 단위로 예측 샘플을 유도할 수 있다. 디코딩 장치는 인트라 예측의 경우, 변환 블록 단위로 예측 샘플을 유도할 수도 있다. 디코딩 장치는 블록 단위로 예측 샘플을 유도하여, 현재 픽처에 대한 예측 샘플을 유도할 수 있다.
인터 예측을 수행하는 경우에, 현재 블록에 대하여 인터 레이어 예측을 수행하지 않으면, 디코딩 장치는 현재 블록과 동일한 레이어의 공간적 주변 블록 및 시간적 주변 블록의 정보를 이용하여 현재 블록에 대한 예측 샘플을 유도할 수 있다. 현재 블록에 대하여 인터 레이어 예측을 수행할 수 있는 경우에, 디코딩 장치는 현재 블록과 동일한 레이어의 공간적 주변 블록 및 현재 블록의 레이어와 상이한 레이어 내 대응 블록의 정보를 이용하여 현재 블록에 대한 예측 샘플을 유도할 수 있다.
현재 블록에 대한 예측 샘플을 현재 블록에 대한 움직임 벡터 예측을 기반으로 유도하는 경우(MVP 모드를 적용하는 경우)에, 인터 레이어 예측을 수행할 수 있으면 디코딩 장치는 현재 블록과 동일한 레이어의 공간적 주변 블록들의 움직임 벡터, 현재 블록과 상이한 레이어 내 대응 블록의 움직임 벡터 중 어느 하나를 이용하여 현재 블록에 대한 움직임 벡터를 유도하며, 인터 레이어 예측을 수행할 수 없으면, 디코딩 장치는 현재 블록과 동일한 레이어의 공간적 주변 블록들의 움직임 벡터, 현재 블록과 동일한 레이어의 시간적 주변 블록의 움직임 벡터 중 어느 하나를 이용하여 현재 블록에 대한 움직임 벡터를 유도할 수 있다.
현재 블록에 대한 예측 샘플이 주변 블록의 움직임 정보를 이용하는 머지 모드를 기반으로 유도되는 경우에, 현재 블록에 대하여 인터 레이어 예측을 수행할 수 없으면, 디코딩 장치는 현재 블록과 동일한 레이어의 공간적 주변 블록들의 움직임 정보, 현재 블록과 동일한 레이어의 시간적 주변 블록의 움직임 정보 중 어느 하나를 이용하여 현재 블록에 대한 움직임 정보를 유도할 수 있으며, 현재 블록에 대하여 인터 레이어 예측을 수행할 수 있으면, 디코딩 장치는 현재 블록과 동일한 레이어의 공간적 주변 블록들의 움직임 정보, 현재 블록과 상이한 레이어 내 대응 블록의 움직임 정보 중 어느 하나를 이용하여 현재 블록에 대한 움직임 정보를 유도할 수 있다.
현재 블록의 예측 샘플을 유도하는 구체적인 방법은 앞서 설명한 바와 같다.
디코딩 장치는 현재 픽처를 복원할 수 있다(S1020). 디코딩 장치는 유도한 예측 샘플과 레지듀얼을 더하여 현재 픽처를 복원할 수 있다
디코딩 장치는 복원된 현재 픽처 내 블록 에지들에 대하여 디블록킹 필터링을 적용할 수 있다(S1030). 디코딩 장치는 블록 에지에 대한 경계 세기를 기반으로 디블록킹 필터링을 적용할 것인지를 결정할 수 있다. 구체적인 디블록킹 필터링의 방법은 앞서 설명한 바와 같다.
디코딩 장치는 디블록킹 프로세스가 완료된 복원 픽처의 샘플에 대하여 오프셋을 적용할 수 있다(S1040). 디코딩 장치는 현재 픽처의 샘플에 밴드 오프셋 또는 에지 오프셋을 적용할 수 있다. 샘플별로 적용되는 오프셋(SAO)의 구체적인 내용은 앞서 설명한 바와 같다.

본 명세서에서는 베이스 레이어와 공간적 베이스 레이어를 혼용하여 기재하고, 인핸스먼트 레이어와 공간적 인핸스먼트 레이어를 혼용하여 기재하고 있으나 이는 설명의 편의를 위한 것이다. 따라서 본 발명의 실시예들은 공간적 베이스 레이어와 공간적 인핸스먼트 레이어에 한정되지 않는다. 공간적 베이스 레이어는 베이스 레이어의 스케일러빌러티로서 해상도가 적용되는 경우에 대한 예로서 사용된 것이며, 공간적 인핸스먼트 레이어는 인핸스먼트 레이어의 스케일러빌러티로서 해상도가 적용되는 경우에 대한 예로서 사용된 것이다. 본 발명의 실시예들은 해상도 외에 상술한 바와 같이 다양한 스케일러빌러티(시점, 비트율, 프레임율 등)에도 동일하게 적용될 수 있음에 유의한다.
또한, 본 명세서에서 현재 블록의 주변 블록은 주변 블록의 공간적 위치와 함께 주변 블록의 움직임 정보를 특정하도록 사용되고 있음에 유의한다. 구체적으로, 현재 블록의 주변 블록에 대한 유효성과 중복성은 주변 블록의 움직임 정보의 유효성과 다른 주변 블록의 움직임 정보와 중복되는지 여부를 의미할 수 있다.

상술한 예시적인 시스템에서, 방법들은 일련의 단계 또는 블록으로써 순서도를 기초로 설명되고 있지만, 본 발명은 단계들의 순서에 한정되는 것은 아니며, 어떤 단계는 상술한 바와 다른 단계와 다른 순서로 또는 동시에 발생할 수 있다. 또한, 상술한 실시예들은 다양한 양태의 예시들을 포함할 수 있으므로 각 실시예의 조합 역시 본 발명의 일 실시예로서 이해되어야 할 것이다. 따라서, 본 발명은 이하의 특허청구범위 내에 속하는 모든 다른 교체, 수정 및 변경을 포함한다고 할 것이다.

Claims (14)

  1. 스케일러빌러티(scalability)를 지원하는 멀티 레이어 구조의 비디오 디코딩 방법으로서,
    현재 블록에 대하여 인터 레이어 예측을 수행하지 않는 경우에는, 상기 현재 블록과 동일한 레이어의 공간적 주변 블록 및 시간적 주변 블록의 정보를 이용하여 상기 현재 블록에 대한 예측 샘플을 유도하는 단계;
    상기 현재 블록에 대하여 인터 레이어 예측을 수행할 수 있는 경우에는, 상기 현재 블록과 동일한 레이어의 공간적 주변 블록 및 상기 현재 블록의 레이어와 상이한 레이어 내 대응 블록의 정보를 이용하여 상기 현재 블록에 대한 예측 샘플을 유도하는 단계;
    상기 예측 샘플과 레지듀얼 신호를 더하여 현재 픽처를 복원하는 단계;
    상기 복원된 현재 픽처 내의 블록 에지에 대하여 디블록킹 필터를 적용하는 단계; 및
    상기 디블록킹 필터를 적용하는 단계가 완료된 후, 상기 현재 픽처의 샘플에 밴드 오프셋 또는 에지 오프셋을 적용하는 단계를 포함하는 것을 특징으로 하는 멀티 레이어 구조의 비디오 디코딩 방법.
  2. 제1항에 있어서, 상기 현재 블록에 대한 예측 샘플은 상기 현재 블록에 대한 움직임 벡터 예측을 기반으로 유도되며,
    상기 현재 블록에 대하여 인터 레이어 예측을 수행하지 않는 경우에는, 상기 현재 블록과 동일한 레이어의 공간적 주변 블록들의 움직임 벡터, 상기 현재 블록과 동일한 레이어의 시간적 주변 블록의 움직임 벡터 중 어느 하나를 이용하여 상기 현재 블록에 대한 움직임 벡터를 유도하며,
    상기 현재 블록에 대하여 인터 레이어 예측을 수행할 수 있는 경우에는, 상기 현재 블록과 동일한 레이어의 공간적 주변 블록들의 움직임 벡터, 상기 현재 블록과 상이한 레이어 내 대응 블록의 움직임 벡터 중 어느 하나를 이용하여 상기 현재 블록에 대한 움직임 벡터를 유도하는 것을 특징으로 하는 멀티 레이어 구조의 비디오 디코딩 방법.
  3. 제2항에 있어서, 상기 현재 블록과 상이한 레이어 내 대응 블록은 상기 현재 픽처와 동일한 POC(Picture Order Count)의 픽처에 속하는 블록인 것을 특징으로 하는 멀티 레이어 구조의 비디오 디코딩 방법.
  4. 제2항에 있어서, 상기 현재 블록과 상이한 레이어 내 대응 블록의 움직임 벡터는 제로(zero) 벡터인 것을 특징으로 하는 멀티 레이어 구조의 비디오 디코딩 방법.
  5. 제2항에 있어서, 상기 현재 블록에 대하여 인터 레이어 예측을 수행하지 않는 경우에는, 상기 현재 블록의 좌측 블록 및 좌하측 블록에서 선택되는 블록의 움직임 벡터인 제1 움직임 벡터, 상기 현재 블록의 좌상측 블록, 상측 블록 및 우상측 블록에서 선택되는 블록의 움직임 벡터인 제2 움직임 벡터 그리고 상기 현재 블록과 동일한 레이어의 시간적 주변 블록의 움직임 벡터인 제3 움직임 벡터 중 어느 하나가 상기 현재 블록에 대한 움직임 벡터 예측자로 선택되며,
    상기 현재 블록에 대하여 인터 레이어 예측을 수행할 수 있는 경우에는, 상기 현재 블록의 좌측 블록 및 좌하측 블록에서 선택되는 블록의 움직임 벡터인 제4 움직임 벡터, 상기 현재 블록의 좌상측 블록, 상측 블록 및 우상측 블록에서 선택되는 블록의 움직임 벡터인 제5 움직임 벡터 그리고 상기 현재 블록과 상이한 레이어 내 대응 블록의 움직임 벡터인 제6 움직임 벡터 중 어느 하나가 상기 현재 블록에 대한 움직임 벡터 예측자로 선택되고,
    상기 현재 블록에 대한 움직임 벡터는 상기 선택된 움직임 벡터 예측자와 움직임 벡터 차이값의 합으로 유도되는 것을 특징으로 하는 멀티 레이어 구조의 비디오 디코딩 방법.
  6. 제5항에 있어서, 상기 현재 블록에 대하여 인터 레이어 예측을 수행하지 않는 경우에는, 상기 제1 움직임 벡터, 상기 제2 움직임 벡터, 상기 제3 움직임 벡터를 포함하는 제1 움직임 벡터 후보자 리스트 내에서 선택되는 움직임 벡터를 상기 현재 블록에 대한 움직임 벡터 예측자로 사용하며,
    상기 현재 블록에 대하여 인터 레이어 예측을 수행할 수 있는 경우에는, 상기 제4 움직임 벡터, 상기 제5 움직임 벡터, 상기 제6 움직임 벡터를 포함하는 제2 움직임 벡터 후보자 리스트 내에서 선택되는 움직임 벡터를 상기 현재 블록에 대한 움직임 벡터 예측자로 사용하되,
    상기 제1 움직임 벡터 리스트 내에서 상기 제3 움직임 벡터의 위치는 상기 제2 움직임 벡터 리스트 내에서 상기 제6 움직임 벡터의 위치와 동일한 것을 특징으로 하는 멀티 레이어 구조의 비디오 디코딩 방법.
  7. 제1항에 있어서, 상기 현재 블록에 대한 예측 샘플은 주변 블록의 움직임 정보를 이용하는 머지 모드를 기반으로 유도되며,
    상기 현재 블록에 대하여 인터 레이어 예측을 수행하지 않는 경우에는, 상기 현재 블록과 동일한 레이어의 공간적 주변 블록들의 움직임 정보, 상기 현재 블록과 동일한 레이어의 시간적 주변 블록의 움직임 정보 중 어느 하나를 이용하여 상기 현재 블록에 대한 움직임 정보를 유도하며,
    상기 현재 블록에 대하여 인터 레이어 예측을 수행할 수 있는 경우에는, 상기 현재 블록과 동일한 레이어의 공간적 주변 블록들의 움직임 정보, 상기 현재 블록과 상이한 레이어 내 대응 블록의 움직임 정보 중 어느 하나를 이용하여 상기 현재 블록에 대한 움직임 정보를 유도하는 것을 특징으로 하는 멀티 레이어 구조의 비디오 디코딩 방법.
  8. 제7항에 있어서, 상기 현재 블록과 상이한 레이어 내 대응 블록은 상기 현재 픽처와 동일한 POC(Picture Order Count)의 픽처에 속하며, 상기 현재 블록과 상이한 레이어 내 대응 블록의 움직임 벡터는 제로(zero) 벡터인 것을 특징으로 하는 멀티 레이어 구조의 비디오 디코딩 방법.
  9. 제7항에 있어서, 상기 현재 블록에 대하여 인터 레이어 예측을 수행하지 않는 경우에는, 상기 현재 블록의 좌측 블록, 좌하측 블록, 좌상측 블록, 상측 블록, 우상측 블록, 및 상기 현재 블록과 동일한 레이어의 시간적 주변 블록의 가용한 움직임 정보들 중에서 상기 현재 블록에 대한 움직임 정보가 선택되며,
    상기 현재 블록에 대하여 인터 레이어 예측을 수행할 수 있는 경우에는, 상기 현재 블록의좌측 블록 및 좌하측 블록, 좌상측 블록, 상측 블록, 우상측 블록 및 상기 현재 블록과 상이한 레이어 내 대응 블록의 가용한 움직임 정보들에서 상기 현재 블록에 대한 움직임 정보가 선택되고,
    상기 선택된 움직임 정보는 상기 현재 블록에 대한 움직임 정보로서 이용되는 것을 특징으로 하는 멀티 레이어 구조의 비디오 디코딩 방법.
  10. 제9항에 있어서, 상기 움직임 정보는 움직임 벡터와 참조 픽처 인덱스를 포함하며, 상기 현재 블록과 동일한 레이어의 시간적 주변 블록의 참조 픽처 인덱스는 참조 픽처 리스트의 최상위 픽처를 지시하는 것을 특징으로 하는 멀티 레이어 구조의 비디오 디코딩 방법.
  11. 제9항에 있어서, 상기 현재 블록에 대하여 인터 레이어 예측을 수행하지 않는 경우에는, 상기 현재 블록의 좌측 블록, 좌하측 블록, 좌상측 블록, 상측 블록, 우상측 블록, 및 상기 현재 블록과 동일한 레이어의 시간적 주변 블록의 가용한 움직임 정보들을 포함하는 제1 머지 후보 리스트 중에서 선택되는 움직임 정보가 상기 현재 블록에 대한 움직임 정보로 이용되며,
    상기 현재 블록에 대하여 인터 레이어 예측을 수행할 수 있는 경우에는, 상기 현재 블록의 좌측 블록 및 좌하측 블록, 좌상측 블록, 상측 블록, 우상측 블록 및 상기 현재 블록과 상이한 레이어 내 대응 블록의 가용한 움직임 정보들을 포함하는 제2 머지 후보 리스트 주우에서 선택되는 움직임 정보가 상기 현재 블록에 대한 움직임 정보로 이용되고,
    상기 제1 머지 후보 리스트에서 상기 현재 블록과 동일한 레이어의 시간적 주변 블록의 움직임 정보의 위치는 상기 제2 머지 후보 리스트에서 상기 현재 블록과 상이한 레이어 내 대응 블록의 움직임 정보의 위치와 동일한 것을 특징으로 하는 멀티 레이어 구조의 비디오 디코딩 방법.
  12. 스케일러빌러티(scalability)를 지원하는 멀티 레이어 구조의 비디오 인코딩 방법으로서,
    현재 블록에 대하여 인터 레이어 예측을 수행하지 않는 경우에는, 상기 현재 블록과 동일한 레이어의 공간적 주변 블록 및 시간적 주변 블록의 정보를 이용하여 상기 현재 블록에 대한 예측 블록을 유도하는 단계;
    상기 현재 블록에 대하여 인터 레이어 예측을 수행할 수 있는 경우에는, 상기 현재 블록과 동일한 레이어의 공간적 주변 블록 및 상기 현재 블록의 레이어와 상이한 레이어 내 대응 블록의 정보를 이용하여 상기 현재 블록에 대한 예측 샘플을 유도하는 단계;
    상기 예측 샘플과 원 신호와의 차이인 레지듀얼을 생성하는 단계;
    상기 레이듀얼에 관한 정보 및 상기 예측 샘플을 유도하기 위한 정보를 전송하는 단계를 포함하는 것을 특징으로 하는 비디오 인코딩 방법.
  13. 제12항에 있어서, 상기 현재 블록에 대한 예측 샘플은 상기 현재 블록에 대한 움직임 벡터 예측을 기반으로 유도되며,
    상기 현재 블록에 대하여 인터 레이어 예측을 수행하지 않는 경우에는, 상기 현재 블록과 동일한 레이어의 공간적 주변 블록들의 움직임 벡터, 상기 현재 블록과 동일한 레이어의 시간적 주변 블록의 움직임 벡터 중 어느 하나를 이용하여 상기 현재 블록에 대한 움직임 벡터를 유도하며,
    상기 현재 블록에 대하여 인터 레이어 예측을 수행하는 경우에는, 상기 현재 블록과 동일한 레이어의 공간적 주변 블록들의 움직임 벡터, 상기 현재 블록과 상이한 레이어 내 대응 블록의 움직임 벡터 중 어느 하나를 이용하여 상기 현재 블록에 대한 움직임 벡터를 유도하는 것을 특징으로 하는 멀티 레이어 구조의 비디오 인코딩 방법.
  14. 제1항에 있어서, 상기 현재 블록에 대한 예측 샘플은 주변 블록의 움직임 정보를 이용하는 머지 모드를 기반으로 유도되며,
    상기 현재 블록에 대하여 인터 레이어 예측을 수행하지 않는 경우에는, 상기 현재 블록과 동일한 레이어의 공간적 주변 블록들의 움직임 정보, 상기 현재 블록과 동일한 레이어의 시간적 주변 블록의 움직임 정보 중 어느 하나를 이용하여 상기 현재 블록에 대한 움직임 정보를 유도하며,
    상기 현재 블록에 대하여 인터 레이어 예측을 수행하는 경우에는, 상기 현재 블록과 동일한 레이어의 공간적 주변 블록들의 움직임 정보, 상기 현재 블록과 상이한 레이어 내 대응 블록의 움직임 정보 중 어느 하나를 이용하여 상기 현재 블록에 대한 움직임 정보를 유도하는 것을 특징으로 하는 멀티 레이어 구조의 비디오 인코딩 방법.
PCT/KR2014/001517 2013-02-25 2014-02-25 스케일러빌러티를 지원하는 멀티 레이어 구조의 비디오 인코딩 방법 및 비디오 디코딩 방법과 이를 이용하는 장치 WO2014129873A1 (ko)

Priority Applications (4)

Application Number Priority Date Filing Date Title
KR1020157022990A KR20150140635A (ko) 2013-02-25 2014-02-25 스케일러빌러티를 지원하는 멀티 레이어 구조의 비디오 인코딩 방법 및 비디오 디코딩 방법과 이를 이용하는 장치
US14/770,241 US10616607B2 (en) 2013-02-25 2014-02-25 Method for encoding video of multi-layer structure supporting scalability and method for decoding same and apparatus therefor
EP14754088.4A EP2961166B1 (en) 2013-02-25 2014-02-25 Method for encoding video of multi-layer structure supporting scalability and method for decoding same and apparatus therefor
CN201480018231.3A CN105075260B (zh) 2013-02-25 2014-02-25 编码支持可伸缩性的多层结构视频的方法和解码其的方法以及用于其的装置

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US201361769184P 2013-02-25 2013-02-25
US61/769,184 2013-02-25

Publications (1)

Publication Number Publication Date
WO2014129873A1 true WO2014129873A1 (ko) 2014-08-28

Family

ID=51391577

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/KR2014/001517 WO2014129873A1 (ko) 2013-02-25 2014-02-25 스케일러빌러티를 지원하는 멀티 레이어 구조의 비디오 인코딩 방법 및 비디오 디코딩 방법과 이를 이용하는 장치

Country Status (4)

Country Link
EP (1) EP2961166B1 (ko)
KR (1) KR20150140635A (ko)
CN (1) CN105075260B (ko)
WO (1) WO2014129873A1 (ko)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116866594A (zh) * 2016-11-28 2023-10-10 韩国电子通信研究院 对图像编码/解码的方法和设备及存储比特流的记录介质
WO2021015536A1 (ko) * 2019-07-21 2021-01-28 엘지전자 주식회사 팔레트 모드의 적용 여부에 따라 디블로킹 필터링을 수행하는 영상 부호화/복호화 방법, 장치 및 비트스트림을 전송하는 방법

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20080013881A (ko) * 2005-04-01 2008-02-13 엘지전자 주식회사 스케일러블 비디오 신호 인코딩 및 디코딩 방법
KR20080037593A (ko) * 2006-10-25 2008-04-30 한국전자통신연구원 다시점 비디오의 스케일러블 코딩 및 디코딩 방법과, 코딩및 디코딩 장치
US20080165850A1 (en) * 2007-01-08 2008-07-10 Qualcomm Incorporated Extended inter-layer coding for spatial scability
US20120219060A1 (en) * 2005-05-03 2012-08-30 Qualcomm Incorporated System and method for scalable encoding and decoding of multimedia data using multiple layers
KR20130000334A (ko) * 2011-06-15 2013-01-02 광운대학교 산학협력단 스케일러블 비디오 코딩 및 디코딩 방법과 이를 이용한 장치

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20060063613A (ko) * 2004-12-06 2006-06-12 엘지전자 주식회사 영상 신호의 스케일러블 인코딩 및 디코딩 방법
KR20070092591A (ko) * 2006-03-10 2007-09-13 엘지전자 주식회사 영상신호의 엔코딩/디코딩시의 레이어간 예측 방법
KR101370892B1 (ko) * 2006-11-13 2014-03-26 엘지전자 주식회사 영상블록에 대한 레이어간 모션 예측 방법
CN101873484B (zh) * 2009-08-13 2012-05-30 杭州海康威视软件有限公司 分层视频编码中编码模式选择方法及装置
WO2013006310A1 (en) * 2011-07-01 2013-01-10 Vidyo, Inc. Loop filter techniques for cross-layer prediction
CN102740078B (zh) * 2012-07-12 2014-10-22 北方工业大学 基于hevc标准的自适应空间可伸缩编码

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20080013881A (ko) * 2005-04-01 2008-02-13 엘지전자 주식회사 스케일러블 비디오 신호 인코딩 및 디코딩 방법
US20120219060A1 (en) * 2005-05-03 2012-08-30 Qualcomm Incorporated System and method for scalable encoding and decoding of multimedia data using multiple layers
KR20080037593A (ko) * 2006-10-25 2008-04-30 한국전자통신연구원 다시점 비디오의 스케일러블 코딩 및 디코딩 방법과, 코딩및 디코딩 장치
US20080165850A1 (en) * 2007-01-08 2008-07-10 Qualcomm Incorporated Extended inter-layer coding for spatial scability
KR20130000334A (ko) * 2011-06-15 2013-01-02 광운대학교 산학협력단 스케일러블 비디오 코딩 및 디코딩 방법과 이를 이용한 장치

Also Published As

Publication number Publication date
KR20150140635A (ko) 2015-12-16
EP2961166A4 (en) 2016-08-03
CN105075260A (zh) 2015-11-18
EP2961166B1 (en) 2020-04-01
EP2961166A1 (en) 2015-12-30
CN105075260B (zh) 2020-09-11

Similar Documents

Publication Publication Date Title
US10873750B2 (en) Method for encoding video, method for decoding video, and apparatus using same
KR102083011B1 (ko) 인터 레이어 예측 방법 및 이를 이용하는 장치
US10616607B2 (en) Method for encoding video of multi-layer structure supporting scalability and method for decoding same and apparatus therefor
EP2829066B1 (en) Method and apparatus of scalable video coding
KR102062821B1 (ko) 필터 정보 예측을 이용한 영상 부호화/복호화 방법 및 장치
CN111886861A (zh) 根据图像编码系统中的块划分结构的图像解码方法和设备
CN107408400B (zh) 用于处理视频数据的装置和方法
EP3764643B1 (en) Image processing method based on inter prediction mode, and device therefor
KR102209109B1 (ko) 영상 부호화/복호화 방법 및 장치
US20150312571A1 (en) Method and device for encoding/ decoding image supporting plurality of layers
US9860549B2 (en) Inter-layer prediction method and encoding device and decoding device using same
KR20140005296A (ko) 스케일러블 비디오 코딩의 방법 및 장치
US9654786B2 (en) Image decoding method and apparatus using same
KR20150054752A (ko) 영상 복호화 방법 및 이를 이용하는 장치
JP7462094B2 (ja) ビデオ/映像コーディングシステムにおける重複シグナリング除去方法及び装置
WO2014129873A1 (ko) 스케일러빌러티를 지원하는 멀티 레이어 구조의 비디오 인코딩 방법 및 비디오 디코딩 방법과 이를 이용하는 장치
CN112567741A (zh) 图像编码系统中使用帧内预测信息的图像解码方法和装置
KR102025413B1 (ko) 복수의 레이어를 지원하는 영상의 부호화 및 복호화 방법 및 이를 이용하는 장치
KR102602633B1 (ko) 영상 부호화/복호화 방법 및 장치
US11240535B2 (en) Method and device for filtering image in image coding system
WO2013147497A1 (ko) 스케일러블 비디오 코딩에서 샘플 적응적 오프셋 적용 방법 및 이를 이용한 장치

Legal Events

Date Code Title Description
WWE Wipo information: entry into national phase

Ref document number: 201480018231.3

Country of ref document: CN

121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 14754088

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 20157022990

Country of ref document: KR

Kind code of ref document: A

NENP Non-entry into the national phase

Ref country code: DE

WWE Wipo information: entry into national phase

Ref document number: 14770241

Country of ref document: US

WWE Wipo information: entry into national phase

Ref document number: 2014754088

Country of ref document: EP