KR101766101B1 - 스케일러블 비디오 코딩을 위한 개선된 기준 영역 활용 - Google Patents

스케일러블 비디오 코딩을 위한 개선된 기준 영역 활용 Download PDF

Info

Publication number
KR101766101B1
KR101766101B1 KR1020157004926A KR20157004926A KR101766101B1 KR 101766101 B1 KR101766101 B1 KR 101766101B1 KR 1020157004926 A KR1020157004926 A KR 1020157004926A KR 20157004926 A KR20157004926 A KR 20157004926A KR 101766101 B1 KR101766101 B1 KR 101766101B1
Authority
KR
South Korea
Prior art keywords
region
area
image
areas
temporal
Prior art date
Application number
KR1020157004926A
Other languages
English (en)
Other versions
KR20150038357A (ko
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 인텔 코포레이션
Publication of KR20150038357A publication Critical patent/KR20150038357A/ko
Application granted granted Critical
Publication of KR101766101B1 publication Critical patent/KR101766101B1/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/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/61Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
    • H04N19/615Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding using motion compensated temporal filtering [MCTF]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/105Selection of the reference unit for prediction within a chosen coding or prediction mode, e.g. adaptive choice of position and number of pixels used for prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/136Incoming video signal characteristics or properties
    • H04N19/137Motion inside a coding unit, e.g. average field, frame or block difference
    • H04N19/139Analysis of motion vectors, e.g. their magnitude, direction, variance or reliability
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/146Data rate or code amount at the encoder output
    • H04N19/147Data rate or code amount at the encoder output according to rate distortion criteria
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/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/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/61Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/61Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
    • H04N19/619Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding the transform being operated outside the 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/70Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards

Landscapes

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

Abstract

현재 코딩 블록을 인코딩하기 위해 예측 블록을 생성하는데 이용되는 하나 이상의 후보 기준 블록을 식별하는 기법들. 후보 기준 블록들은 현재 코딩 블록과 동일한 계층 또는 상이한 계층에 있을 수 있다. 또한, 후보 기준 블록들은 현재 코딩 블록과 공동 위치될 필요는 없다. 모션 벡터들 및 시프트 벡터들은 하나 이상의 후보 기준 블록을 식별하는데 이용될 수 있다. 또한, 예측 블록이 생성되도록 균일 및 비-균일 가중이 하나 이상의 후보 기준 블록에 적용될 수 있다. 따라서, 인코더는 바람직한 레이트-왜곡 코스트를 제공할 수 있는 디코더에 대한 기준 블록들을 판정하고 식별할 수 있다.

Description

스케일러블 비디오 코딩을 위한 개선된 기준 영역 활용{ENHANCED REFERENCE REGION UTILIZATION FOR SCALABLE VIDEO CODING}
고효율 비디오 코딩(High Efficient Video Coding)(HEVC)은 ISO/IEC 동화상 전문가 그룹(MPEG) 및 ITU-T 비디오 코딩 전문가 그룹(VCEG)에 의해 구성된 JCT-VC(Joint Collaborative Team on Video Coding)가 개발 중인 진화하는 비디오 압축 표준이다. 이전의 비디오 코딩 표준에서와 같이, HEVC는 인트라/인터(intra/inter) 예측, 변환(transform), 양자화 및 인-루프 필터링(in-loop filtering) 및 엔트로피(entropy) 코딩과 같은 기본 모듈들의 이용을 기술하고 있다. JCT-VC는 스케일러블 비디오 코딩(SVC) 확장을 HEVC 표준에 부가할 계획이다. HEVC의 SVC 확장은 잠재적으로 비디오 서비스 환경에서 네트워크들과 디바이스들의 이질성에 대처할 수 있다.
도 1은 하나의 베이스 계층과 2개의 향상 계층을 생성하는 예시적인 시스템을 도시한다.
도 2a는 공동 위치(co-locate)된 하위 계층 블록의 위치를 도시한다.
도 2b는 상이한 층에 공동 위치될 수 없는 계층 간(inter-layer) 기준 블록의 이용 예를 도시한다.
도 3은 다수의 기준 블록들이 검색될 수 있고 잠재적으로 현재 코딩 블록을 코딩하는데 이용될 수 있는 예를 도시한다.
도 4는 인코더가 블록을 인코딩하는데 이용하는 예시적인 프로세스를 도시한다.
도 5는 디코더가 하나 이상의 후보 기준 블록들에 기초하여 블록을 디코딩하는데 이용하는 예시적인 프로세스를 도시한다.
도 6은 기준 블록 인덱스들 및 시프트 벡터들을 디코더에 전송하는 예시적인 방식을 도시한다.
도 7은 시스템의 실시예를 예시한다.
도 8은 디바이스를 도시한다.
비디오 인코딩의 경우, HEVC는 코딩 유닛들(Coding Units)(CU들)을 정의하며, 이들은 가변 크기를 갖는 직사각형 블록들로 화상을 서브-파티션(sub-partition)하는데 이용된다. 각각의 CU 내에서는, 쿼드-트리 기반 스플리팅 방식(quad-tree based splitting scheme)이 CU 파티션 패턴을 특정하는데 이용될 수 있다. 또한, HEVC는 예측 및 변환 각각에 대해 CU를 어떻게 분할해야 하는지를 특정하기 위해 예측 유닛들(Prediction Units)(PUs) 및 변환 유닛들(Transform Units)(TUs)을 정의한다. 인트라(intra) 또는 인터(inter) 예측 후에, 계수들을 생성하기 위해서 변환이 레지듀얼 블록들(residual blocks)에 적용된다. 이후, 계수들은 양자화되고, 1-차원으로 스캐닝된 후 CABAC(context-adaptive binary arithmetic coding) 코딩된다.
SVC 비트 스트림은 여러 개의 디코딩가능 서브세트 비트 스트림을 포함한다. 서브세트 비트 스트림들은 상이한 해상도, 프레임 레이트, 품질, 비트 깊이 등으로 소스 비디오 콘텐츠를 나타낸다. 확장성(scalability)은 다중-계층 코딩 구조를 이용함으로써 달성될 수 있다. SVC 시스템에서, 하나의 베이스 계층(BL)과 여러 개의 향상 계층(Enhancement Layer)(EL)이 있다.
도 1은 하나의 BL과 2개의 EL을 생성하는 예시적인 시스템을 도시한다. BL은 HEVC에 따라 코딩될 수 있다. EL이 N과 동일한 계층 식별자를 가질 때, N보다 작은 계층 식별자를 갖는 모든 계층들이 이용 가능하다. EL에 속하는 블록들은 하위 계층 화상들로부터의 계층 간 기준 블록들(ILRB)을 이용하거나 동일 계층 내의 이전에 코딩된 화상들로부터의 시간적 기준 블록들(TRB)에 의해서 예측될 수 있다. 용어 "블록"은 "영역"으로 상호교환 가능하다. "블록"은 정사각형, 직사각형, 삼각형, 원 등과 같은 임의의 모양의 화소 영역일 수 있다.
도시되지 않았지만, 인코더들 각각 및 디코더는, 이것으로 한정되는 것은 아니지만, 라디오(radio) 또는 네트워크 인터페이스에 의한 출력 비트 스트림의 전송을 포함하는 각각의 구성요소의 작업들을 개시하는 제어기를 포함할 수 있다.
이전의 SVC 표준 및 시스템들에서는, EL 블록이 코딩될 때 단지 하나의 기준 블록이 이용될 수 있다. 블록이 인터-예측되면, TRB가 이용될 것이다. 그러나 블록이 계층 간 예측되면, ILRB가 이용될 것이다. 공지된 SVC 표준 및 시스템에서, 계층 간 화소/재구성 예측 또는 계층 간 레지듀얼 예측(inter-later residual prediction)을 적용할 때, 하위 계층의 공동 위치된 블록은 계층 간 기준 블록(ILRB)으로서 이용되도록 표시된다. 공동 위치된이라는 의미는 영역이 베이스 계층 및 향상 계층 내의 동일 좌표를 포함한다는 것이다. 예를 들어, 도 2a는 공동 위치된 하위 계층 블록의 위치가 상위 계층의 현재 코딩 블록에 정확히 정열(align)되어 있음을 도시한다. 그러나 공동 위치된 하위 계층 블록을 이용하면 최고의 압축 성능을 야기하지 않을 수 있다. 다시 말해서, 공동 위치된 하위 계층 블록을 이용하여 현재 코딩 블록을 인코딩하는 것은 바람직한 레이트-왜곡 코스트(rate-distortion cost)를 제공하지 못할 수 있다. 일부 경우들에서, 바람직한 레이트-왜곡 코스트는 가장 낮은 레이트-왜곡 코스트이다. 레이트-왜곡 코스트는 비디오를 인코딩하는데 필요한 데이터량에 대한 왜곡(비디오 품질의 손실)양의 측정치일 수 있다. 레이트-왜곡 코스트를 측정하는데 다양한 기법들이 이용될 수 있다.
도 2b는 상이한 계층에 공동 위치될 수 없는 계층 간 기준 블록의 이용 예를 도시하고 있다. 2차원 오프셋 파라미터, shift_vector는 현재 코딩 블록에 관해서 공동 위치되어 있는 ILRB와 동일한 계층 내의 블록과 관련하여 ILRB의 상위 좌측 코너 화소 좌표를 특정하는데 이용될 수 있다. 예를 들어, shift_vector가 파라미터들(Hor, Ver)를 가지면, 공동 위치된 위치는 원점(original point)이며 shift_vector는 (0, 0)과 같다. Hor이 양의 값이면, ILRB는 공동 위치된 위치 아래에 있다. Hor이 음의 값이면, ILRB는 공동 위치된 위치 위에 있다. Ver이 양의 값이면, ILRB는 공동 위치된 위치의 우측 상에 있지만 Ver이 음의 값이면 ILRB는 공동 위치된 위치의 좌측 상에 있다. ILRB의 상위 좌측 화소 좌표 장소를 식별하는데 다른 규약이 이용될 수 있다.
다양한 실시예들은 현재 코딩 블록을 인코딩하기 위해 예측 블록을 생성하는데 이용되는 하나 이상의 후보 기준 블록을 식별하는 방식을 제공한다. 후보 기준 블록들은 현재 코딩 블록과 같은 계층 또는 상이한 계층에 있을 수 있다. 또한, 후보 기준 블록들은 현재 코딩 블록과 공동 위치될 필요가 없다. 모션(motion) 벡터들과 시프트(shift) 벡터들은 후보 기준 블록들을 식별하는데 이용될 수 있다. 또한, 균일 또는 비-균일한 가중(weighting)이 예측 블록을 생성하기 위해 후보 기준 블록들에 적용될 수 있다. 따라서, 인코더는 바람직한 레이트-왜곡 코스트를 제공할 수 있는 디코더에 대한 기준 블록들을 판정하고 식별할 수 있다. 따라서, 비디오의 품질은 비디오를 송신하는데 이용된 동일 대역폭을 유지하면서도 개선될 수 있다.
다양한 실시예는 블록을 인코딩하기 위해 다수의 기준 블록의 이용을 제공한다. 일부 실시예에서는, 4종류의 기준 블록이 현재 코딩 블록을 코딩하는데 이용 가능하다. 그러나 다른 수의 기준 블록이 이용될 수 있다. 예를 들어:
1. 시간적 기준 블록(TRB)은 동일 계층 내의 시간적 기준 화상의 블록이며 시간적 motion_vector에 의해 특정될 수 있다.
2. 계층 간 기준 블록(ILRB)은 하위 계층 내의 대응 화상의 블록이며 shift_vector에 의해 특정될 수 있다. 예를 들어, 계층 0이 베이스 계층이면, 계층 1 내의 블록들은 계층 0으로부터의 ILRB들을 이용할 수 있고 계층 2 내의 블록들은 계층 0 및 1로부터의 ILRB들을 이용할 수 있다. 공간 확장성(spatial scalability)이 이용되면, 하위 계층 내의 블록은 현재 코딩 블록의 크기까지 업-샘플링될 수 있다. 업-샘플링은 현재 코딩 블록의 계층의 해상도(resolution)에 대한 화소 보간 및 스케일링을 포함할 수 있다.
3. T+ILRB는 TRB의 ILRB이다. 공간 확장성이 이용되면, 하위 계층의 블록은 현재 코딩 블록의 크기까지 업-샘플링될 수 있다.
4. IL+TRB는 ILRB의 TRB이다. 공간 확장성이 이용되면, 하위 계층의 블록은 현재 코딩 블록의 크기까지 업-샘플링될 수 있다.
도 3은 다수의 기준 블록들이 현재 코딩 블록의 코딩을 위해 검색될 수 있고 잠재적으로 이용될 수 있는 예를 도시한다. 화상 A는 현재 코딩 화상이며 계층 id = n 및 시간적 id = t를 갖고 있다. 화상 A는 2개의 시간적 기준 화상: (1) 시간적 id가 t-1과 동일한 포워드 기준 화상 B 및 (2) 시간적 id가 t+1과 동일한 백워드 기준 화상 C를 갖고 있다. 계층 n-1에서, 화상 D는 화상 A의 대응 화상이다. 화상 D는 화상 A와 동일한 시간적 id를 갖고 있다. 화상 E 및 F는 화상 D의 각각의 시간적 포워드 및 백워드 기준 화상이다. 화상 E 및 F의 시간적 id들은 각각 t-1 및 t+1이다. 계층 n-2에서, 화상 G는 화상 A의 대응물이다.
예를 들어, 화상 A의 블록이 현재 코딩 블록인 경우, 기준 블록들 b 내지 i의 다수의 기준 블록 리스트가 생성될 수 있다. 다음은 기준 블록 리스트의 예이다.
1. 블록들 b, c 및 d는 블록 a의 TRB들이고, motion_vector들을 이용하여 찾아질 수 있다(can be located).
2. 블록 e 및 f는 계층 n-1 내의 블록 a(계층 n-1 내의 블록 a는 a’으로 도시되어 있음)의 ILRB들이며, shift_vector들을 이용하여 찾아질 수 있다. 블록들 e 및 f의 업샘플링은 그들의 화소 차원을 블록 a의 차원에 정합하는데(match) 적용될 수 있다.
3. 블록 g는 계층 n-1 내의 블록 a의 T+ILRB이다. 블록 g는 계층 n-1 내의 블록 c의 공동 위치된 버전인 c’에 관한 shift_vector를 이용함으로써 기존 TRB c로부터 도출될 수 있다. 블록 g의 업샘플링은 그의 화소 차원을 블록 a의 차원에 정합하는데 적용될 수 있다.
4. 블록 h는 계층 n-1 내의 블록 a의 IL+TRB이다. 블록 h는 f의 motion_vector를 이용함으로써 기존 ILRB f로부터 도출될 수 있다. 블록 h의 업샘플링은 그의 화소 차원들을 블록 a의 차원에 정합하는데 적용될 수 있다.
5. 블록 i는 계층 n-2 내의 블록 a의 ILRB이다(a”으로 도시되어 있음). 블록 i는 shift_vector를 이용하여 찾아질 수 있다. 블록 i의 업샘플링은 그의 화소 차원을 블록 a의 차원에 정합하는데 적용될 수 있다.
기준 블록 리스트 구축 프로세스는 적응형일 수 있거나 고정형일 수 있다. 현재 코딩 블록과 관련하여 절대 차의 가장 낮은 합(sum of absolute difference)(SAD)을 갖는 기준 블록들이 선택될 수 있다. 적응형 구현에서, 기준 블록들은 가장 낮은 것에서 가장 높은 것까지 그들의 상대적인 SAD 값들에 기초하여 선택되어 정렬될 수 있다.
일 구현에서, 기준 블록 리스트는 모든 ILRB들이 그들의 계층 거리가 증가하는 순서로 리스트에 부가되도록 설정된다. 다음에, 모든 TRB들은 그들의 시간적 거리가 증가하는 순서로 리스트의 끝에 부가될 수 있다. 그리고 나서, 모든 T-ILRB들은 그들의 계층 거리가 증가하는 순서로 리스트의 끝에 부가될 수 있다. 이후, 모든 IL-TRB들은 그들의 시간적 거리가 증가하는 순서로 리스트의 끝에 부가될 수 있다.
일부 구현에서, 관심 블록을 인코딩하는데 모든 식별된 기준 블록들이 이용되는 것은 아니다. 인코더는 기준 블록 리스트로부터 이용하고자 하는 하나 이상의 기준 블록을 선택할 수 있다. 예를 들어, 레이트-왜곡(RD) 코스트는 가장 낮은 RD 코스트를 야기하는 기준 블록들을 선택하는데 이용될 수 있다. 기준 블록들을 선택하는데 비-RD 코스트 판정이 이용될 수 있다.
하나 이상의 기준 블록을 선택하는데 RD 코스트 기반 접근법을 이용하는 경우, 일 예시적인 구현은 단일의 최상의 기준 블록을 찾는 것이다. 인코더는 기준 블록들의 리스트를 구축할 수 있고 각각의 기준 블록은 인덱스로 표기될 수 있다. RD 코스트는 다음 식을 이용하여 각각의 기준 블록에 대하여 계산될 수 있다:
Figure 112015018878620-pct00001
여기서:
SAD(i)는 원래의 블록 화소 샘플과 기준 블록 화소 블록 간의 SAD 값을 나타내며,
Bits(i)는 이 기준 블록을 이용하는 경우의 코딩 비트들의 결과적인 수이다.
가장 작은 RD(i)를 갖는 기준 블록은 마지막 인코딩을 위해 이용될 수 있고 그의 인덱스는 디코더에 전송된다.
다른 예시적인 구현은 관심 블록의 코딩에 이용되는 다수의 기준 블록들을 식별한다. 다수의 기준 블록은 M 블록들의 식별을 위해 검색될 수 있다. RD 코스트 방정식은 다음과 같을 수 있다:
Figure 112015018878620-pct00002
따라서, 인코더는 가장 낮은 RD 코스트를 산출하는 M 블록들을 발견함으로써 M 블록들의 최상의 조합을 발견한다. 최상의 기준 블록들의 인덱스들은 디코더로의 송신을 위해 인코더에 의해 제공될 수 있다. 디코더는 블록을 디코딩하는데 이용하기 위해 식별된 기준 블록을 이용할 수 있다.
블록을 코딩하기 위해 이용되는 기준 블록들을 식별하기 위한 비-RD 기반 접근법은 다음과 같을 수 있다. 기준 블록들의 순서는 고정될 수 있고 제1 N 이용가능 블록들의 이용은 기준 블록들로서 식별될 수 있다. 시간적 및 계층 거리는 순서화를 위한 메트릭(metric)으로서 이용될 수 있다. 가중 인자(weighting factor)들도 또한 고정될 수 있다. 예를 들어, 가장 큰 가중 인자는 제1 기준 블록에 주어지며, 제2 가장 큰 가중 인자는 제2 기준 블록에 주어진다, 등등. 예를 들어, 제1 기준 블록은 관심 블록으로부터 가장 낮은 시간적 및 가장 낮은 계층 거리 등을 갖는 것일 수 있다.
best_reference_block_idx라 불리는 신택스(syntax)는 비트스트림 내의 인덱스를 시그널링할 수 있다. 일부 실시예에서, JCT-VC의 고효율 비디오 코딩(HEVC) 텍스트 사양 드래프트 8(2012)의 섹션 7.3.9.1 또는 7.3.10의 일반적인 코딩 유닛 신택스는 best_reference_block_idx를 송신하는데 이용될 수 있다.
디코더 측에서, 기준 블록 리스트가 재구성된다. 적응-기반 RB 리스트, 예를 들어, RD-코스트 기반에 대하여, 디코더는 리스트를 재구성할 수 있다. 고정형 방법 RB 리스트에 대하여, 디코더는 인코더가 리스트를 구성한 것과 유사한 방식으로 리스트를 구성할 수 있다. 디코더는 디코딩 프로세스를 완료하기 위해서 best_reference_block_idx에 따라서 최상의 기준 블록을 선택한다. 일부 경우에, 디코더는 최상의 기준 블록들 중에서 선택한다. 일부 경우에, 가장 낮은 RD 코스트를 갖는 여러 개의 기준 블록들은 디코더에 식별될 수 있다. 수신된 best_reference_block_idx가 없는 경우, 디코더는 모든 이용 가능한 기준 블록들을 이용할 수 있다.
일부 경우에, 값 N을 갖는 파라미터 max_active_reference_block_num은 모든 기준 블록들 대신에, 제1 N개의 이용 가능 기준 블록들을 이용하도록 디코더에 알려 주기 위해 인코더의 명령에 의해 또는 명령으로 형성될 수 있다. 파라미터 max_active_reference_block_num은 SPS(Sequence Parameter Set), PPS(Picture Parameter Set), 또는 슬라이스 헤더(slice header)를 이용하여 디코더에 송신될 수 있다. 모든 이용 가능 기준 블록들보다 적은 블록들을 이용하면 디코더가 더 적은 버퍼 사이즈를 이용할 수 있으므로 유리하다. SPS는 예를 들어 고효율 비디오 코딩(HEVC) 텍스트 사양 드래프트 8(2012) 내의 섹션 7.3.2.2에 설명되어 있고 PPS는 고효율 비디오 코딩(HEVC) 텍스트 사양 드래프트 8(2012) 내의 섹션 7.3.2.3에 설명되어 있다. 전체 비디오 또는 전체 화상을 제어하는 신택스들은 SPS및 PPS로 송신될 수 있다.
다수의 기준 블록이 선택된 후 인코더에서, 예측 블록이 판정될 수 있다. TRBs, ILRBs, T+ILRBs 및 IL+TRBs를 포함하는 N개의 기준 블록이 있다고 가정하면, 예측된 블록(predicted block)은 다음 식으로 계산될 수 있다:
Figure 112015018878620-pct00003
여기서
pred는 결과적인 예측된 블록을 나타내고
w 0 내지 w N 은 가중 인자들을 나타내고
ref 0 내지 ref N 은 다수의 기준 블록을 가리킨다.
기준 블록들 내의 모든 화소 샘플 값들은 가중 인자들에 의해 승산된다. 구체적으로, 루마(luma) 및 크로마(chroma) 값들이 가중 인자에 의해서 승산된다.
예측 블록 pred의 경우, 가중 인자 w 0 내지 w N 은 오프셋 인자 o뿐만 아니라 각각의 기준 블록의 크기를 제어한다. 일부 구현에서, 디폴트 가중 인자들 및 오프셋 인자가 이용된다. 일부 구현에서, 가중 인자들 및 오프셋 인자는 인코더에 의해 생성되어 디코더에 전송된다.
가중 인자는, 예를 들어, 다양한 방식으로 판정될 수 있다:
1. 일부 구현에서는, 단순한 평균이 이용되고, 따라서 모든 가중 인자들은 1/N과 같고
2. 일부 구현에서는, 가중 인자들은 현재 코딩 블록까지의 시간적 및 공간적 거리에 관련되어 있다. motion_vector/shift_vector 값들이 더 큰 경우, 기준 블록이 현재 코딩 블록에서 더 떨어져 있기 때문에, 더 작은 가중 인자가 이용될 수 있다.
오프셋 인자 o은 유연성을 위한 가중된 예측 결과를 조율(tune)하는데 이용될 수 있다. 오프셋 인자는 인코더에 의해 판정될 수 있다. 인코더가 가중된 예측 결과가 항상 원래의 화소 값보다 작음을 검출하면, 양의 오프셋 인자가 이용되며 그 역도 같다.
경우에 따라서, 모션 벡터들 및 시프트 벡터들은 예측 블록, pred를 인코딩하는데 이용되는 기준 블록 ref0 내지 refN의 위치를 식별한다. 모션 벡터들과 시프트 벡터들은 디코더로의 전송을 위해 인코더에 의해 제공될 수 있다.
일부 구현에서, shift_vector는 블록 레벨로 시그널링될 수 있고, 이는 각각의 CU/PU/TU가 상이한 shift_vector를 가질 수 있음을 의미한다. 다른 구현들에서, shift_vector는 슬라이스/화상/계층 레벨로 시그널링될 수 있고, 이는 슬라이스/화상/계층에 속하는 모든 블록이 동일한 영역 시프트 벡터를 이용할 수 있음을 의미한다. 일부 경우에, 슬라이스 내의 모든 블록들에 대한 레이트 왜곡 코스트 기반 기준 블록 선택 후에, 시프트 벡터들 대부분은 일부 값에 집중되어 있다. 이 집중된 값은 영역 시프트 벡터로서 선택될 수 있다. 집중된 시프트 벡터를 슬라이스 레벨에서 코딩하는 것은 슬라이스 내의 블록들 대부분에 유리할 수 있다. 슬라이스/화상/계층 영역 시프트 벡터의 이용은 각각의 블록에 대한 시프트 벡터들을 코딩하는데 이용되었던 비트의 이용을 피할 수 있다. 영역 시프트 벡터는 동일한 시프트 벡터가 슬라이스/화상/계층 레벨로 블록들 또는 영역들을 디코딩하는데 이용된다는 것을 의미한다. 일부 구현에서, 동일한 슬라이스/화상/계층 내의 모든 블록은 그들의 ILRB들을 찾기 위해 영역 시프트 벡터를 이용한다.
일부 경우에, 각각의 블록은 또한 델타 시프트 벡터를 송신할 수 있고, ILRB를 찾는데 이용된 실제 시프트 벡터는 영역 시프트 벡터와 델타 시프트 벡터들을 가산함으로써 획득될 수 있다.
블록 a가 화상 A 내의 현재 코딩 블록이고 예측 블록 pred가 블록 a를 코딩하는데 이용되면, 블록 a와 예측 블록 pred 간의 에러 차이는 레지듀얼(residual)이다. 레지듀얼은 비트스트림으로 변환, 양자화 및 엔트로피 코딩되고 디코더로의 송신을 위해 제공된다.
도 4는 인코더가 블록을 인코딩하는데 이용하는 예시적인 프로세스를 도시하고 있다.
블록(401)은 후보 블록을 인코딩하는데 있어서 이용하기 위한 하나 이상의 후보 기준 블록을 선택하는 것을 포함한다. 후보 블록은 임의의 차원일 수 있다. 예를 들어, 후보 블록은 정사각형, 직사각형, 삼각형, 원형 또는 임의의 형상일 수 있다. 예를 들어, 후보 블록은 가변 크기의 직사각형 블록일 수 있다. 후보 블록은 HEVC CU일 수 있다. 예를 들어, 하나 이상의 후보 기준 블록은 후보 블록의 것과 같은 계층 내에 또는 상이한 계층 내에 있을 수 있다. 하나 이상의 기준 블록은 상이한 계층 내에 후보 블록과 공동 위치되지 않을 수 있다. 후보 기준 블록과 동일한 계층 내의 각각의 후보 기준 블록에 대하여, x, y 좌표 및 기준 화상 인덱스 성분을 갖는 모션 벡터는 후보 블록으로부터 후보 기준 블록의 오프셋을 식별하는데 이용될 수 있다. 후보 기준 블록이 상이한 계층 내에 있지만 동등한 프레임 내에 있는 경우, 시프트 벡터는 후보 기준 블록과 같은 계층 내의 공동 위치된 후보 블록과 관련하여 후보 기준 블록의 위치를 식별하는데 이용될 수 있다. 후보 기준 블록이 상이한 계층 내에 있고 상이한 프레임 내에 있는 경우, 공동 위치된 후보 블록에 관한 모션 벡터와 시프트 벡터는 공동 위치된 후보 블록과 관련하여 후보 기준 블록의 위치를 식별하는데 이용될 수 있다.
하나 이상의 기준 블록은 RD 코스트 또는 후보 블록으로부터의 거리를 기반으로 선택될 수 있다.
블록(402)은 선택된 하나 이상의 후보 기준 블록에 적용된 가중을 판정하는 것을 포함한다. 판정된 가중에 기초하여, 후보 기준 블록들 모두는 후보 블록에 대한 예측 블록을 형성하는데 이용될 수 있다. 가중 인자들을 판정하기 위한 기법들이 먼저 기술된다.
일부 경우에, 블록(402)은 또한 오프셋 인자를 판정하는 것을 포함할 수 있다. 오프셋 인자의 판정이 먼저 기술된다.
블록(403)은 디코더로의 송신을 위해 인코딩 파라미터를 제공하는 것을 포함한다. 인코딩 파라미터들은 모든 후보 기준 블록의 계층 인덱스, 모션 벡터들, 시프트 벡터들, 가중 인자들, 및 후보 기준 블록들에 대한 오프셋을 포함할 수 있다. 에측 블록과 후보 블록 간의 레지듀얼 차는 양자화되고 엔트로피 인코딩되고 디코더로의 송신을 위해 제공된다.
파라미터들의 송신은 비디오 비트스트림을 이용하여 이루어질 수 있다. 비트스트림 내의 신택스 정보는 파라미터들을 송신하는데 이용될 수 있다.
도 5는 하나 이상의 후보 기준 블록에 기초하여 디코더가 블록을 디코딩하는데 이용한 예시적인 프로세스를 도시하고 있다. 블록은 임의의 화소 크기의 정사각형 또는 직사각형 또는 다른 형상일 수 있다. 디코딩되는 블록은 HEVC CU일 수 있다.
블록(501)은 다수의 기준 블록이 예측 블록을 위해 이용되는지를 판정하는 것을 포함한다. 예측 블록은 블록을 디코딩하는데 이용될 수 있다. 다수의 기준 블록이 예측 블록을 판정하는데 이용되면, 블록(502)이 블록(501)에 후속할 수 있다. 다수의 기준 블록이 예측 블록을 판정하는데 이용되지 않으면, 블록(530)이 블록(501)에 후속할 수 있다. 각각의 기준 블록은 계층 인덱스, 모션 벡터, 또는 시프트 벡터를 이용하여 식별될 수 있다. 기준 블록들은 비디오 인코더에 의해 식별될 수 있다.
블록(502)은 기준 블록을 생성하는 것을 포함한다. 기준 블록을 생성하기 위한 기법은 기준 블록의 유형에 의존한다. 디코더는 기준 블록과 함께 수신된 파라미터를 기반으로 기준 블록이 ILRB, TRB, T+ILRB, 또는 IL+TRB 인지를 알 수 있다. 예를 들어, 시프트 벡터가 없이 단지 모션 벡터만이 수신된다면, 디코더는 기준 블록이 TRB임을 안다. 모션 벡터가 없이 스프트 벡터만이 수신되면, 디코더는 기준 블록이 ILRB임을 안다. TRB가 그 자신의 시프트 벡터를 가지고 있다면, 시프트 벡터를 이용하여 식별된 기준 블록은 T+ILRB이다. ILRB가 그 자신의 모션 벡터를 가지고 있다면, 모션 벡터를 이용하여 식별된 기준 블록은 IL+TRB이다.
TRB를 생성하는 것은 디코딩될 블록의 위치와 관련하여 TRB의 상부 좌측 좌표를 식별하기 위해 수신된 모션 벡터를 이용하는 것을 포함할 수 있다.
ILRB를 생성하는 것은 하위 레벨에 있는 공동 위치된 블록과 관련하여 ILRB의 상부 좌측 좌표를 식별하기 위해 수신된 시프트 벡터를 이용하는 것을 포함할 수 있다. 디코더는 비디오 스트림 내에 수신된 정보를 기반으로 ILRB의 계층 레벨을 판정할 수 있다. 또한, 업-샘플링은 ILRB를 디코딩될 블록의 차원 및 해상도로 변환하는데 적용될 수 있다.
T+ILRB를 생성하는 것은 (a) 디코딩될 블록 위치에 대해 TRB의 상부 좌측 좌표를 식별하기 위해 수신된 모션 벡터를 이용하는 것과 (b) 하위 레벨 내의 TRB의 공동-위치된 블록과 관련하여 T+ILRB의 상부 좌측 좌표를 식별하기 위해 시프트 벡터를 이용하는 것을 포함할 수 있다.
IL+TRB를 생성하는 것은 (a) 공동 위치된 블록에 대해 하위 레벨 내의 블록의 상부 좌측 좌표를 식별하기 위해 시프트 벡터를 이용하는 것과 (b) 시프트 벡터를 이용하여 식별된 블록의 위치와 관련하여 IL-TRB의 상부 좌측 좌표를 식별하기 위해 수신된 모션 벡터를 이용하는 것을 포함한다.
공간 확장성이 이용되면, 하위 계층 내의 블록은 현재 코딩 블록의 크기로 업-샘플링될 수 있다. 업-샘플링은 현재 코딩 블록의 계층의 해상도로의 화소 보간 및 스케일링을 포함할 수 있다.
shift_vector의 해상도는 정수 또는 분수일 수 있다. shift_vector가 분수 해상도를 갖는 경우, 보간 필터는 실제 ILRB를 생성하는데 이용될 수 있다. 이것으로 한정되는 아니지만, 바이리니어 필터(bilinear filter), 바이-큐빅 필터(bi-cubic filter), 폴리-페이즈 FIR 필터(poly-phase FIR filter) 등을 포함하는 다양한 보간 필터가 이용될 수 있다.
블록(510)은 관심 블록을 디코딩하는데 이용하기 위해 제공된 모든 기준 블록이 식별되었는지를 판정하는 것을 포함한다. 관련 기준 블록들은 인코더에 의해 식별될 수 있다. 블록(502)은 블록(510)이 모든 기준 블록이 생성되었음을 나타낼 때까지 반복한다.
블록(520)은 하나 이상의 기준 블록으로부터 예측 블록을 생성하는 것을 포함한다. 예를 들어, 예측 블록은 하나 이상의 기준 블록 각각의 가중으로부터 생성될 수 있다. 기준 블록들 각각의 가중은 상이하거나 동일할 수 있다. 예측 블록을 생성하는 예시적인 방식이 먼저 기술된다.
블록(530)은 관심 블록에 대한 예측 블록을 판정하기 위해 단일 기준 블록을 이용하는 인터 또는 인트라 예측을 적용하는 것을 포함한다. 임의의 다양한 H.264 및 MPEG는 물론이고 HEVC에 관련해서 제안된 기법들은 예측 블록의 인터 또는 인트라 예측에 이용될 수 있다.
블록(540)은 레지듀얼 디코딩을 예측 블록에 적용하는 것을 포함한다. 예측 블록은 하나 이상의 기준 블록을 이용하여 판정될 수 있다. 레지듀얼 값들은 비디오의 인코더에 의해 제공될 수 있고 엔트로피 인코딩된 포맷으로 수신될 수 있다. 블록(540)은 레지듀얼 값들을 디코딩하는 것을 포함한다. 레지듀얼 값들을 디코딩하는 것은 엔트로피 디코딩 및 역 양자화(inverse quantization)를 적용하는 것을 포함한다. 레지듀얼 값들은 원래의 사전-인코딩된 관심 블록 내의 화소들과 예측된 블록 내의 화소들 간의 화소 차이 값들을 포함할 수 있다.
블록(550)은 관심 블록을 재구성하는 것을 포함한다. 관심 블록을 재구성하는 것은 화소 기반마다 레지듀얼 값들을 예측 블록과 합산하는 것을 포함할 수 있다. 결과적인 관심 블록은 인코딩된 블록의 재구성된 버전이다.
도 6은 기준 블록 인덱스들 및 시프트 벡터들을 디코더에 전송하는 예시적인 방식을 도시하고 있다. 도 6에 도시된 표현들 및 파라미터들은 기준 블록 인덱스 번호들 및 기준 블록들 각각의 시프트 벡터의 수평 및 수직 값들을 식별하기 위해 비디오 스트림 내에 이용될 수 있다. 또한, 시프트 벡터들은 특정 계층에 관련되어 있으며, 가장 낮은 계층으로부터 가장 높은 기준 계층으로 송신될 수 있다. 기준 블록들은 TU, PU, CU, 슬라이스, 화상, 또는 계층 레벨일 수 있다. 일부 구현에서, JCT-VC의 고효율 비디오 코딩(HEVC) 텍스트 사양 드래프트 8(2012)의 섹션 7.3.9.1 또는 7.3.10의 일반적인 코딩 유닛 신택스는 기준 블록의 인덱스들 및 syntax_vectors를 전송하는데 이용될 수 있다.
다음은 디코더에 송신될 수 있는 도 6에 참조된 파라미터들의 표를 제공한다.
Figure 112015018878620-pct00004
도 7은 시스템(700)의 실시예를 도시하고 있다. 실시예들에서, 시스템(700)은 미디어 시스템일 수 있지만 시스템(700)은 이러한 맥락으로 한정되지 않는다. 예를 들어, 시스템(700)은 개인용 컴퓨터(PC), 랩톱 컴퓨터, 울트라-랩톱 컴퓨터, 태블릿, 터치 패드, 휴대용 컴퓨터, 핸드헬드 컴퓨터, 팜톱 컴퓨터, PDA(personal digital assistant), 셀룰러 전화, 컴비네이션 셀룰러 전화/PDA, 텔레비전, 스마트 디바이스(예를 들어, 스마트폰, 스마트 태블릿 또는 스마트 텔레비전), 모바일 인터넷 디바이스(MID), 메시징 디바이스, 데이터 통신 디바이스 등에 통합될 수 있다.
실시예들에서, 시스템(700)은 디스플레이(720)에 결합된 플랫폼(702)을 포함한다. 플랫폼(702)은 콘텐츠 서비스 디바이스(들)(730) 또는 콘텐츠 전달 디바이스(들)(740) 또는 다른 유사한 콘텐츠 소스와 같은 콘텐츠 디바이스로부터 콘텐츠를 수신할 수 있다. 하나 이상의 내비게이션 특징을 포함하는 내비게이션 제어기(750)는, 예를 들어, 플랫폼(702) 및/또는 디스플레이(720)와 상호작용하도록 이용될 수 있다. 이들 컴포넌트 각각은 이하에서 더 상세히 기술된다. 일부 경우에, 플랫폼(702)은 디스플레이 인터페이스를 통해서 디스플레이(720)와 통신가능할 수 있다.
실시예들에서, 플랫폼(702)은 칩셋(705), 프로세서(710), 메모리(712), 스토리지(714), 그래픽 서브시스템(715), 애플리케이션들(716) 및/또는 라디오(718)의 임의의 조합을 포함할 수 있다. 칩셋(705)은 프로세서(710), 메모리(712), 스토리지(714), 그래픽 서브시스템(715), 애플리케이션들(716) 및/또는 라디오(718) 간의 상호통신을 제공할 수 있다. 예를 들어, 칩셋(705)은 스토리지(714)와의 상호통신을 제공할 수 있는 스토리지 어댑터(도시되지 않음)를 포함할 수 있다.
프로세서(710)는 CISC(Complex Instruction Set Computer) 또는 RISC(Reduced Instruction Set Computer) 프로세서들, x86 명령어 세트 호환 프로세서들, 멀티-코어, 또는 임의의 다른 마이크로프로세서 또는 중앙 처리 유닛(CPU)으로 구현될 수 있다. 실시예들에서, 프로세서(710)는 듀얼-코어 프로세서(들), 듀얼-코어 모바일 프로세서(들) 등을 포함할 수 있다.
메모리(712)는, 이것으로 한정되는 것은 아니지만, 랜덤 액세스 메모리(RAM), 동적 랜덤 액세스 메모리(DRAM) 또는 정적 RAM(SRAM)과 같은 휘발성 메모리 디바이스로 구현될 수 있다.
스토리지(714)는, 이것으로 한정되는 것은 아니지만, 자기 디스크 드라이브, 광학 디스크 드라이브, 테이프 드라이브, 내부 스토리지 디바이스, 부착형 스토리지 디바이스, 플래시 메모리, 배터리 백-업 SDRAM(동기 DRAM), 및/또는 네트워크 액세스가능 스토리지 디바이스와 같은 비-휘발성 스토리지 디바이스로 구현될 수 있다. 실시예들에서, 스토리지(714)는, 예를 들어, 다수의 하드 드라이브가 포함되는 경우 가치있는 디지털 미디어를 위한 스토리지 성능 향상 보호를 증가시키는 기술을 포함할 수 있다.
그래픽 서브시스템(715)은 디스플레이를 위한 정지(still) 또는 비디오과 같은 이미지들의 처리를 수행할 수 있다. 그래픽 서브시스템(715)은, 예를 들어, 그래픽 처리 유닛(GPU) 또는 시각적 처리 유닛(visual processing unit)(VPU)일 수 있다. VPU의 다양한 실시예는 하드웨어, 소프트웨어 및/또는 펌웨어를 이용하여 비디오 인코딩 또는 디코딩을 제공할 수 있다. VPU의 다양한 실시예들은 본원에서 설명된 실시예들을 이용할 수 있다. 아날로그 또는 디지털 인터페이스는 그래픽 서브시스템(715)과 디스플레이(720)를 통신가능하게 결합하는데 이용될 수 있다. 예를 들어, 인터페이스는 고-선명 멀티미디어 인터페이스(High-Definition Multimedia Interface), 디스플레이포트(DisplayPort), 무선 HDMI, 및/또는 무선 HD 준수 기법들 중 임의의 것일 수 있다. 그래픽 서브시스템(715)은 프로세서(710) 또는 칩셋(705)에 통합될 수 있다. 그래픽 서브시스템(715)은 칩셋(705)에 통신가능하게 결합되는 독립형 카드일 수 있다.
본원에 기술된 그래픽 및/또는 비디오 처리 기법들은 다양한 하드웨어 아키텍처로 구현될 수 있다. 예들 들어, 그래픽 및/또는 비디오 기능은 칩셋과 통합될 수 있다. 대안적으로, 이산 그래픽(discrete graphics) 및/또는 비디오 프로세서가 이용될 수 있다. 또 다른 실시예로서, 그래픽 및/또는 비디오 기능들이 멀티-코어 프로세서를 포함하는 범용 프로세서에 의해 구현될 수 있다. 추가의 실시예에서, 기능들은 소비자 전자 디바이스에 구현될 수 있다.
라디오(718)는 다양한 적합한 무선 통신 기법들을 이용하여 신호를 송신 및 수신할 수 있는 하나 이상의 라디오를 포함할 수 있다. 그러한 기법들은 하나 이상의 무선 네트워크에 걸친 통신을 수반할 수 있다. 예시적인 무선 네트워크는, 이것으로 한정되는 것은 아니지만, 무선 로컬 영역 네트워크(WLAN)들, 무선 개인 영역 네트워크(WPAN)들, 무선 메트로폴리탄 영역 네트워크(WMAN)들, 셀룰러 네트워크들, 및 위성 네트워크들을 포함한다(이들에 한정되지 않음). 그러한 네트워크들 간의 통신에서, 라디오(718)는 하나 이상의 적용가능한 임의의 버전의 표준에 따라서 동작할 수 있다.
실시예들에서, 디스플레이(720)는 임의의 텔레비전 유형 모니터 또는 디스플레이를 포함할 수 있다. 디스플레이(720)는, 예를 들어, 컴퓨터 디스플레이 스크린, 터치 스크린 디스플레이, 비디오 모니터, 텔레비전-유형 디바이스, 및/또는 텔레비전을 포함할 수 있다. 디스플레이(720)는 디지털 및/또는 아날로그일 수 있다. 실시예들에서, 디스플레이(720)는 홀로그래픽(holographic) 디스플레이일 수 있다. 또한 디스플레이(720)는 비주얼 프로젝션(visual projection)을 수신할 수 있는 투명한 표면일 수 있다. 그러한 프로젝션들은 다양한 형태의 정보, 이미지 및/또는 객체들을 전달할 수 있다. 예를 들어, 그러한 프로젝션들은 모바일 증강 현실(MAR) 애플리케이션을 위한 비주얼 오버레이일 수 있다. 하나 이상의 소프트웨어 애플리케이션(716)의 제어하에, 플랫폼(702)은 디스플레이(720) 상에 사용자 인터페이스(722)를 디스플레이할 수 있다.
실시예들에서, 콘텐츠 서비스 디바이스(들)(730)은 국내(national), 국제(international) 및/또는 독립(independent) 서비스에 의해 호스트(host)될 수 있어서, 예를 들어, 인터넷을 통해 플랫폼(702)에 액세스할 수 있다. 콘텐츠 서비스 디바이스(들)(730)은 플랫폼(702) 및/또는 디스플레이(720)에 결합될 수 있다. 플랫폼(702) 및/또는 콘텐츠 서비스 디바이스(들)(730)은 네트워크(760)에 결합되어 네트워크(760)로 그리고 네트워크(760)로부터 미디어 정보를 통신(예를 들어 전송 및/또는 수신)할 수 있다. 콘텐츠 전달 디바이스(들)(740)은 또한 플랫폼(702)에 및/또는 디스플레이(720)에 결합될 수 있다.
실시예들에서, 콘텐츠 서비스 디바이스(들)(730)은 케이블 텔레비전 박스, 개인용 컴퓨터, 네트워크, 전화, 디지털 정보 및/또는 콘텐츠를 전달할 수 있는 인터넷 가능 디바이스들 또는 기기, 및 네트워크(760)를 통해서 또는 직접 콘텐츠 제공자들과 플랫폼(702) 및/또는 디스플레이(720) 사이에서 콘텐츠를 단방향 또는 양방향으로 통신할 수 있는 임의의 다른 유사한 디바이스를 포함할 수 있다. 콘텐츠가 네트워크(760)를 통해서 시스템(700) 내의 컴포넌트들 중 임의의 하나 및 콘텐츠 제공자들로/로부터 단방향 또는 양방향으로 통신될 수 있음을 이해할 것이다. 콘텐츠의 예들은, 예를 들어, 비디오, 음악, 의학 및 게임 정보 등을 포함하는 임의의 미디어 정보를 포함할 수 있다.
콘텐츠 서비스 디바이스(들)(730)은 미디어 정보, 디지털 정보, 및/또는 다른 콘텐츠를 포함하는 케이블 텔레비전 프로그래밍과 같은 콘텐츠를 수신한다. 콘텐츠 제공자들의 예는 임의의 케이블 또는 위성 텔레비전 또는 라디오 또는 인터넷 콘텐츠 제공자를 포함할 수 있다. 제시된 예들은 본 발명의 실시예들을 한정하려는 것이 아니다.
실시예들에서, 플랫폼(702)은 하나 이상의 내비게이션 특징을 포함하는 내비게이션 제어기(750)로부터 제어 신호를 수신할 수 있다. 제어기(750)의 내비게이션 특징들은, 예를 들어, 사용자 인터페이스(722)와 상호작용하는데 이용될 수 있다. 실시예들에서, 내비게이션 제어기(750)는 사용자가 공간(예를 들어, 연속 및 다-차원) 데이터를 컴퓨터에 입력할 수 있게 해주는 컴퓨터 하드웨어 컴포넌트(구체적으로 휴먼 인터페이스 디바이스)일 수 있는 포인팅 디바이스일 수 있다. 그래픽 사용자 인터페이스(GUI), 및 텔레비전 및 모니터와 같은 많은 시스템은 사용자가 물리적 제스처를 이용하여 컴퓨터 또는 텔레비젼을 제어하고 이들에 데이터를 제공할 수 있게 해준다.
제어기(750)의 내비게이션 특징들의 움직임은 디스플레이 상에 디스플레이된 포인터, 커서, 포커스 링, 또는 다른 시각적 표시자의 움직임에 의해서 디스플레이(예를 들어, 디스플레이(720)) 상에 반향(echo)될 수 있다. 예를 들어, 소프트웨어 애플리케이션(716)의 제어하에, 내비게이션 제어기(750)에 위치한 내비게이션 특징들은, 예를 들어, 사용자 인터페이스(722) 상에 디스플레이된 가상 내비게이션 특징들에 매핑될 수 있다. 실시예들에서, 제어기(750)는 개별 컴포넌트는 아니라 플랫폼(702) 및/또는 디스플레이(720)에 통합될 수 있다. 그러나 실시예들은 본원에 도시되거나 기술된 요소들 또는 맥락으로 한정되지 않는다.
실시예들에서, 드라이버들(도시되지 않음)은, 예를 들어, 인에이블되는 경우, 사용자가 개시 부트-업(boot-up) 후에 버튼의 터치를 이용하여 텔레비전과 같은 플랫폼(702)을 순간적으로 턴-온 및 턴-오프할 수 있게 해주는 기술을 포함할 수 있다. 프로그램 로직은 플랫폼(702)이 턴 "오프"되는 경우, 콘텐츠를 미디어 어댑터들 또는 다른 콘텐츠 서비스 디바이스(들)(730) 또는 콘텐츠 전달 디바이스(들)(740)에 스트림(stream)할 수 있게 해준다. 또한, 칩셋(705)은, 예를 들어, 5.1 서라운드 사운드 오디오 및/또는 고선명 7.1 서라운드 사운드 오디오용의 하드웨어 및/또는 소프트웨어 지원을 포함할 수 있다. 드라이버들은 통합 그래픽 플랫폼들을 위한 그래픽 드라이버를 포함할 수 있다. 실시예들에서, 그래픽 드라이버는 PCI(peripheral component interconnect) Express 그래픽 카드를 포함할 수 있다.
다양한 실시예에서, 시스템(700)에 도시된 컴포넌트들 중 임의의 하나 이상이 통합될 수 있다. 예를 들어, 플랫폼(702)과 콘텐츠 서비스 디바이스(들)(730)가 통합될 수 있고 또는 플랫폼(702)과 콘텐츠 전달 디바이스(들)(740)이 통합될 수 있고, 또는 플랫폼(702), 콘텐츠 서비스 디바이스(들)(730) 및 콘텐츠 전달 디바이스(들)(740)이 통합될 수 있다. 다양한 실시예에서, 플랫폼(702) 및 디스플레이(720)는 통합된 유닛일 수 있다. 예를 들어, 디스플레이(720) 및 콘텐츠 서비스 디바이스(들)(730)이 통합될 수 있고, 또는 디스플레이(720) 및 콘텐츠 전달 디바이스(들)(740)이 통합될 수 있다. 이들 예는 본 발명을 한정하는 것이 아니다.
다양한 실시예에서, 시스템(700)은 무선 시스템, 유선 시스템 또는 이들의 조합으로 구현될 수 있다. 무선 시스템으로 구현되는 경우, 시스템(700)은 하나 이상의 안테나, 송신기들, 수신기들, 송수신기들, 증폭기들, 필터들, 제어 로직 등과 같은, 무선 공유 매체를 통해 통신하기 적합한 컴포넌트들 및 인터페이스들을 포함할 수 있다. 무선 공유 매체의 예는 RF 스펙트럼 등과 같은, 무선 스펙트럼의 부분들을 포함할 수 있다. 유선 시스템으로 구현되는 경우, 시스템(700)은 입력/출력(I/O) 어댑터들, I/O 어댑터를 상응하는 유선 통신 매체와 접속하기 위한 물리적 커넥터들, 네트워크 인터페이스 카드(NIC), 디스크 제어기, 비디오 제어기, 오디오 제어기 등과 같은, 유선 통신 매체를 통한 통신에 적합한 컴포넌트들 및 인터페이스들을 포함할 수 있다. 유선 통신 매체의 예는 와이어, 케이블, 금속 리드들, PCB(printed circuit board), 백플레인(backplane), 스위치 패브릭(switch fabric), 반도체 재료, 트위스티드-페어 와이어(twisted-pair wire), 동축 케이블, 광섬유 등을 포함할 수 있다.
플랫폼(702)은 정보를 통신하기 위한 하나 이상의 논리적 또는 물리적 채널을 구축할 수 있다. 정보는 미디어 정보 및 제어 정보를 포함할 수 있다. 미디어 정보는 사용자를 위해 의도된 콘텐츠를 나타내는 임의의 데이터를 지칭할 수 있다. 콘텐츠의 예는, 예를 들어, 음성 대화, 비디오회의, 스트리밍 비디오, 전자 메일("이메일") 메시지, 음성 메일 메시지, 영숫자 기호들, 그래픽들, 이미지, 비디오, 텍스트 등으로부터의 데이터를 포함할 수 있다. 음성 대화로부터의 데이터는, 예를 들어, 스피치 정보, 묵음 기간들, 배경 잡음, 컴포트 잡음(comfort noise), 톤(tone) 등일 수 있다. 제어 정보는 자동화된 시스템을 위해 의도된 명령들(commands), 명령어들(instructions) 또는 제어 워드들을 나타내는 임의의 데이터를 지칭할 수 있다. 예를 들어, 제어 정보는 시스템을 통해서 미디어 정보를 라우트(route)하거나, 미디어 정보를 미리결정된 방식으로 처리하도록 노드에 지시하는데 이용될 수 있다. 그러나 실시예들은 도 7에 도시되거나 설명된 요소들로 또는 맥락으로 한정되지 않는다.
전술한 바와 같이, 시스템(700)은 다양한 물리적 스타일 또는 폼 팩터(form factor)들로 실시될 수 있다. 도 8은 시스템(700)이 실시될 수 있는 작은 폼 팩터 디바이스(small form factor device)(800)의 실시예들을 도시한다. 실시예들에서, 예를 들어, 디바이스(800)는 무선 능력들을 갖는 모바일 컴퓨팅 디바이스로서 구현될 수 있다. 모바일 컴퓨팅 디바이스는 처리 시스템 및, 예를 들어, 하나 이상의 배터리와 같은, 모바일 전력 소스 또는 서플라이를 갖는 임의의 디바이스를 지칭할 수 있다.
전술한 바와 같이, 모바일 컴퓨팅 디바이스의 예는 개인용 컴퓨터(PC), 랩톱 컴퓨터, 울트라-랩톱 컴퓨터, 태블릿, 터치 패드, 휴대용 컴퓨터, 핸드헬드 컴퓨터, 팜톱 컴퓨터, PDA(personal digital assistant), 셀룰러 전화, 컴비네이션 셀룰러 전화/PDA, 텔레비전, 스마트 디바이스(예를 들어, 스마트폰, 스마트 태블릿 또는 스마트 텔레비전), 모바일 인터넷 디바이스(MID), 메시징 디바이스, 데이터 통신 디바이스 등을 포함할 수 있다.
모바일 컴퓨팅 디바이스의 예는 또한 손목 컴퓨터, 손가락 컴퓨터, 반지 컴퓨터, 안경 컴퓨터, 벨트-클립 컴퓨터, 암-밴드(arm-band) 컴퓨터, 신발 컴퓨터, 의복 컴퓨터, 및 기타 착용가능 컴퓨터와 같은, 사람이 착용하도록 구성된 컴퓨터들을 포함할 수 있다. 실시예들에서, 예를 들어, 모바일 컴퓨팅 디바이스는 음성 통신 및/또는 데이터 통신뿐만 아니라 컴퓨터 애플리케이션들을 실행할 수 있는 스마트폰으로 구현될 수 있다. 일부 실시예들이 예로서 스마트폰으로 구현된 모바일 컴퓨팅 디바이스로 설명될 수 있지만, 다른 무선 모바일 컴퓨팅 디바이스들을 이용하여 다른 실시예들이 또한 구현될 수 있음을 이해할 것이다. 실시예들은 이러한 맥락으로 한정되지 않는다.
도 8은 본 발명의 실시예들을 이용할 수 있는 디바이스(800)를 도시한다. 디바이스(800)는 하우징(802), 디스플레이(804), 입력/출력(I/O) 디바이스(806) 및 안테나(808)를 포함한다. 디바이스(800)는 또한 내비게이션 특징들(812)을 포함할 수 있다. 디스플레이(804)는 모바일 컴퓨팅 디바이스에 적절한 정보를 표시하기 위한 임의의 적합한 디스플레이 유닛을 포함할 수 있다. I/O 디바이스(806)는 정보를 모바일 컴퓨팅 디바이스에 입력하기 위한 임의의 적합한 I/O 디바이스를 포함할 수 있다. I/O 디바이스(806)의 예는 영숫자 키보드, 숫자 키패드, 터치 패드, 입력 키들, 버튼들, 스위치들, 로커(rocker) 스위치들, 마이크로폰들, 스피커들, 음성 인식 디바이스 및 소프트웨어 등을 포함할 수 있다. 정보는 또한 마이크로폰으로 디바이스(800)에 입력될 수 있다. 그러한 정보는 음성 인식 디바이스에 의해 디지털화될 수 있다. 실시예들은 이러한 맥락으로 한정되지 않는다.
다양한 실시예는 하드웨어 요소들, 소프트웨어 요소들 또는 이들의 조합을 이용하여 구현될 수 있다. 하드웨어 요소들의 예는 프로세서들, 마이크로프로세서들, 회로들, 회로 요소들(예를 들어, 트랜지스터들, 저항기들, 캐패시터들, 인덕터들 등), 집적 회로들, ASIC(application specific integrated circuits), 프로그램가능 로직 디바이스들(PLD), 디지털 신호 프로세서들(DSP), 필드 프로그램가능 게이트 어레이(FPGA), 로직 게이트들, 레지스터들, 반도체 디바이스, 칩들, 마이크로칩들, 칩셋들 등을 포함할 수 있다. 소프트웨어의 예는 소프트웨어 컴포넌트들, 프로그램들, 애플리케이션들, 컴퓨터 프로그램들, 애플리케이션 프로그램들, 시스템 프로그램들, 머신 프로그램들, 운영 시스템 소프트웨어, 미들웨어, 펌웨어, 소프트웨어 모듈들, 루틴들, 서브루틴들, 기능들, 방법들, 프로시저들(procedures), 소프트웨어 인터페이스들, 애플리케이션 프로그램 인터페이스(API)들, 명령어 세트들, 컴퓨팅 코드, 컴퓨터 코드, 코드 세그먼트들, 컴퓨터 코드 세그먼트들, 워드들, 값들, 심볼들, 또는 이들의 임의의 조합을 포함할 수 있다. 실시예가 하드웨어 요소들 및/또는 소프트웨어 요소들을 이용하여 구현될 수 있는지를 판정하는 것은 원하는 계산 레이트, 전력 레벨, 내열성, 처리 사이클 버짓, 입력 데이터 레이트, 출력 데이터 레이트, 메모리 자원, 데이터 버스 속도 및 다른 디자인 또는 성능 제약과 같은, 임의의 수의 인자에 따라서 변할 수 있다.
용어 "로직"은, 예로, 소프트웨어, 하드웨어 및/또는 소프트웨어와 하드웨어의 조합을 포함할 수 있다.
일부 실시예들은 표현 "결합된" 및 "접속된"과 이들의 파생어를 이용하여 설명될 수 있다. 이들 용어는 서로 동의어로서 의도되지 않는다. 예를 들어, 일부 실시예는 2 이상의 요소들이 서로 직접 물리적으로 또는 전기적으로 접촉하고 있음을 나타내기 위해 용어 "접속된" 및/또는 "결합된"을 이용하여 설명될 수 있다. 그러나 용어 "결합된"은 또한 2 이상의 요소들이 서로 직접 접촉하지는 않지만 서로 협동하거나 상호작용하는 것을 의미할 수 있다.
일부 실시예들은, 예를 들어, 머신에 의해서 실행되는 경우, 머신으로 하여금, 실시예들에 따른 방법 및/또는 작업들을 수행하게 하는 명령어들 또는 명령어들의 세트를 저장할 수 있는 머신-판독가능 매체 또는 물품을 이용하여 구현될 수 있다. 그러한 머신은, 예를 들어, 임의의 적합한 처리 플랫폼, 컴퓨팅 플랫폼, 컴퓨팅 디바이스, 처리 디바이스, 컴퓨팅 시스템, 처리 시스템, 컴퓨터, 프로세서 등을 포함할 수 있고 하드웨어 및/또는 소프트웨어의 임의의 적합한 조합을 이용하여 구현될 수 있다. 머신-판독가능 매체 또는 물품은, 예를 들어, 임의의 적합한 유형의 메모리 유닛, 메모리 디바이스, 메모리 물품, 메모리 매체, 스토리지 디바이스, 스토리지 물품, 스토리지 매체 및/또는 스토리지 유닛, 예를 들어, 메모리, 탈착형(removable) 또는 비-탈착형 매체, 소거가능 또는 소거 불가능 매체, 기록가능 또는 재-기록가능 매체, 디지털 또는 아날로그 매체, 하드 디스크, 플로피 디스크, CD-ROM(Compact Disk Read Only Memory), CD-R(Compact Disk Recordable), CD-RW(Compact Disk Rewriteable), 광학 디스크, 자기 매체, 광자기 매체, 탈착형 메모리 카드 또는 디스크, 다양한 유형의 DVD(Digital Versatile Disk), 테이프, 카셋트 등을 포함할 수 있다. 명령어들은 임의의 적합한 하이-레벨, 로우-레벨, 객체-지향, 비주얼, 컴파일된(compiled) 및/또는 인터프리트된(interpreted) 프로그래밍 언어를 이용하여 구현된, 소스 코드, 컴파일된 코드, 인터프리트된 코드, 실행가능 코드, 스태틱 코드, 다이내믹 코드 등과 같은, 임의의 적합한 유형의 코드를 포함할 수 있다.
달리 구체적으로 언급하지 않는 한, "처리", "컴퓨팅", "계산", "판정" 등과 같은 용어는 컴퓨팅 시스템의 레지스터들 및/또는 메모리들 내에 물리적 양들(예를 들어, 전자)로 표현된 데이터를 컴퓨팅 시스템의 메모리들, 레지스터들 또는 다른 그러한 정보 스토리지, 송신 또는 디스플레이 내의 물리적 양들로 유사하게 표현된 다른 데이터로 조정 및/또는 변환하는 컴퓨터 또는 컴퓨팅 시스템, 또는 유사한 전자 컴퓨팅 디바이스의 액션 및/또는 프로세스들을 나타낸다는 것을 이해할 수 있다. 실시예들은 이러한 맥락으로 한정되지 않는다.
다수의 특정 상세들이 실시예들의 철저한 이해를 위해 개시되었다. 그러나 본 기술분야의 통상의 기술자는 이들 실시예가 이러한 특정 세부사항들 없이도 실시될 수 있음을 이해할 것이다. 다른 예들에서, 공지된 작업들, 컴포넌트들 및 회로들은 이들 실시예가 불명료해지지 않도록 상세히 기술되지 않았다. 본원에 공개된 특정 구조적 및 기능적 상세들은 대표적인 것일 수 있으며 반드시 이들 실시예들의 범주를 제한하는 것이 아니라는 것을 이해할 수 있을 것이다.
본 발명이 구조적 특징들 및/또는 방법론적 액션들에 특정한 언어로 설명되었지만, 첨부하는 특허청구범위에 정의된 발명은 반드시 위에 기술된 특정 특징들 또는 액션들에 한정되지 않는다는 것을 이해해야 한다. 오히려, 전술한 특정한 특징들 및 액션들은 청구항들을 구현하기 위한 예시적인 형태로서 개시되었다.
실시예들은 이미지 영역을 디코딩하기 위한 장치를 포함할 수 있고, 장치는 적어도 부분적으로 파라미터들에 기초하여 제1 기준 영역을 식별하고 - 제1 기준 영역은 이미지 영역보다 하위 계층에 위치하고 제1 기준 영역은 이미지 영역에 대해 공동 위치되었거나 공동 위치되지 않음 - ; 적어도 제1 기준 영역에 기초하여 예측 영역을 형성하고; 그리고 적어도 예측 영역 및 레지듀얼 값에 기초하여 이미지 영역을 형성하도록 프로그램, 구성(configured) 또는 구성된(adapted) 회로, 로직 또는 하나 이상의 프로세서를 포함할 수 있다.
실시예들은 컴퓨터-구현 방법을 포함할 수 있고, 본 방법은, 수신된 비디오 스트림으로부터 파라미터들을 액세스하는 것 - 파라미터들은 하나 이상의 기준 영역을 식별하고, 파라미터들은 하나 이상의 모션 벡터, 하나 이상의 시프트 벡터, 계층 식별자, 하나 이상의 기준 블록 인덱스, 및 하나 이상의 기준 영역들에 대한 가중 인자들을 포함함 - ; 하나 이상의 기준 영역 및 가중 인자들에 기초하여 예측 영역을 판정하는 것; 수신된 비디오 스트림의 적어도 일부로부터 레지듀얼 값을 판정하는 것; 및 예측 영역 및 레지듀얼 값에 기초하여 제1 영역을 형성하는 것을 포함한다.
실시예들은 하나 이상의 기준 영역과 관련하여 이미지 영역을 인코딩하는 시스템을 포함할 수 있다. 시스템은 이미지 영역의 계층보다 하위 계층 내의 하나 이상의 기준 영역들을 식별하거나 찾고; 하나 이상의 기준 영역 각각에 적용된 가중을 판정하거나 계산하고; 그리고 비디오 디코더를 갖는 디바이스 또는 비디오 디코더로의 송신을 위해 인코딩 파라미터들을 제공하도록 프로그램, 구성 또는 적응된 회로, 로직 또는 프로세서를 포함할 수 있다.
실시예들은 하나 이상의 기준 영역과 관련하여 이미지 영역을 인코딩하는 방법을 포함할 수 있다. 방법은 이미지 영역의 계층보다 하위 계층 내의 하나 이상의 기준 영역을 식별하거나 찾는 것; 하나 이상의 기준 블록 각각에 적용된 가중을 판정하거나 계산하는 것; 및 비디오 디코더를 갖는 디바이스 또는 비디오 디코더로의 송신을 위해 인코딩 파라미터들을 제공하는 것을 포함할 수 있다.
실시예들은 인코딩을 위한 비디오의 제1 영역을 인코딩하는 방법을 포함할 수 있으며, 방법은, 인코딩을 위한 비디오의 제1 영역을 식별하는 것; 제1 영역을 인코딩하기 위해 하나 이상의 기준 영역을 판정하는 것 - 하나 이상의 기준 영역은 제1 영역의 계층보다 하위 계층에 있고 제1 영역과 공동 위치되거나 공동 위치되지 않음 - ; 하나 이상의 기준 영역을 정렬하는 것(ordering); 및 제1 영역의 인코딩을 위해 하나 이상의 기준 영역에 대한 가중 인자를 판정하는 것을 포함한다.
이미지 영역의 계층보다 하위 계층 내의 하나 이상의 기준 영역은 하나 이상의 모션 벡터 및/또는 하나 이상의 시프트 벡터를 이용하여 식별되거나 찾아질 수 있다. 또한, 하나 이상의 기준 영역은 가장 낮은 또는 낮은 레이트 왜곡 코스트를 갖는 영역 또는 영역들을 식별함으로써 선택될 수 있다. 기준 영역들 각각에 적용된 가중은 균일하거나 균일하지 않을 수 있다. 일부 경우에, 파라미터들은 디코더가 이용하기 위한 최상의 또는 여러 개의 최상의 기준 영역들을 식별할 수 있다. 파라미터들은 하나 이상의 모션 벡터, 하나 이상의 시프트 벡터, 계층 식별자, 적어도 하나의 기준 블록 인덱스, 가중 인자들, 및 오프셋 인자를 포함할 수 있다. 파라미터들은 JCT-VC의 고효율 비디오 코딩(HEVC) 텍스트 사양 드래프트 8(2012)의 섹션 7.3.9.1 또는 7.3.10의 코딩 유닛 신택스를 이용하여 수신기에 전송될 수 있다. 또한, 시스템은 예측 영역과 이미지 영역 간의 레지듀얼을 판정 또는 계산하고 디코더를 갖는 디바이스 또는 디코더로의 송신을 위해 레지듀얼을 양자화하고 엔트로피 인코딩하도록 프로그램, 구성(configured) 또는 구성된(adapted) 회로, 로직 또는 프로세서를 포함할 수 있다. 방법은 예측 영역과 이미지 영역 간의 레지듀얼을 판정 또는 계산하는 것 및 디코더를 갖는 디바이스 또는 디코더로의 송신을 위해 레지듀얼을 양자화하고 엔트로피 인코딩하는 것을 포함할 수 있다.

Claims (20)

  1. 현재 화상의 이미지 영역을 디코딩하는 장치로서,
    상기 장치는 하나 이상의 프로세서를 포함하고,
    상기 하나 이상의 프로세서는,
    비트스트림을 통해 수신된 파라미터들에 적어도 부분적으로 기초하여 제1 기준 영역을 식별하고 - 상기 제1 기준 영역은 상기 이미지 영역보다 하위 계층의 기준 화상에 위치하고 상기 제1 기준 영역은 상기 이미지 영역에 공동 위치(co-locate)되어 있지 않고, 상기 현재 화상 및 상기 기준 화상은 동일한 시간적 식별을 갖고, 상기 제1 기준 영역을 식별하기 위해, 상기 하나 이상의 프로세서는, 상기 제1 기준 영역이 계층 간 기준 영역(inter-layer reference region)인 것에 응답하여, 상기 비트스트림의 상기 파라미터들을 통해 수신되고 상기 현재 화상의 상기 이미지 영역에 대응하는 시프트 벡터를 적용하고, 상기 시프트 벡터는 상기 제1 기준 영역을 식별하기 위해 상기 하위 계층의 상기 기준 화상의 공동 위치된 영역에 관한 시프트를 제공하고, 상기 공동 위치된 영역은 상기 이미지 영역과 공동 위치됨 - ;
    상기 파라미터들에 적어도 부분적으로 기초하여 제2 기준 영역을 식별하고 - 상기 제2 기준 영역은 상기 이미지 영역보다 하위 계층에 위치하고 상기 제2 기준 영역은 상기 이미지 영역과 공동 위치되어 있지 않음 - ;
    적어도 상기 제1 기준 영역 및 상기 제2 기준 영역에 기초하여 예측 영역을 형성하고 - 상기 제1 및 제2 기준 영역들은 상기 이미지 영역을 코딩하기 위한 가장 낮은 레이트-왜곡 코스트(rate-distortion cost)의 일부를 제공하고, 상기 예측 영역을 형성하기 위해, 상기 하나 이상의 프로세서는 상기 제1 기준 영역에 제1 기준-영역 가중 인자(weighting factor)를 적용하고, 상기 제2 기준 영역에 제2 기준-영역 가중 인자를 적용하고, 상기 제1 기준 영역과 상기 이미지 영역 사이의 제1 공간적 및 시간적 거리가 상기 제2 기준 영역과 상기 이미지 영역 사이의 제2 공간적 및 시간적 거리보다 작다는 것에 기초하여 상기 제1 기준-영역 가중 인자는 상기 제2 기준-영역 가중 인자보다 큼 - ;
    적어도 상기 예측 영역 및 레지듀얼 값(residual value)에 기초하여 상기 이미지 영역을 형성
    하도록 구성되는 장치.
  2. 제1항에 있어서, 제2 기준 영역을 식별하기 위해, 상기 하나 이상의 프로세서는, 상기 제2 기준 영역이 계층 간 기준 영역인 것에 응답하여, 상기 기준 화상에 상기 제2 기준 영역을 위치시키도록 상기 공동 위치된 영역에 제2 시프트 벡터를 적용하는 장치.
  3. 제1항에 있어서, 제2 기준 영역을 식별하기 위해, 상기 하나 이상의 프로세서는, 상기 제2 기준 영역이 계층 간 기준 영역에 관한 시간적 기준 영역(temporal reference region)인 것에 응답하여, 상기 기준 화상에 상기 계층 간 기준 영역을 위치시키도록 상기 공동 위치된 영역에 제2 시프트 벡터를 적용하고, 상기 계층 간 기준 영역에 관하여 제2 기준 화상에 상기 제2 기준 영역을 위치시키도록 모션 벡터를 적용하는 장치.
  4. 제1항에 있어서, 제2 기준 영역을 식별하기 위해, 상기 하나 이상의 프로세서는, 상기 제2 기준 영역이 시간적 기준 영역에 관한 계층 간 기준 영역인 것에 응답하여, 제2 기준 화상에 상기 시간적 기준 영역을 위치시키도록 상기 이미지 영역에 모션 벡터를 적용하고, 상기 시간적 기준 영역에 관하여 제3 기준 화상에 상기 제2 기준 영역을 위치시키도록 제2 시프트 벡터를 적용하는 장치.
  5. 제1항에 있어서, 상기 하나 이상의 프로세서는, 순서대로, 하나 이상의 시간적 기준 영역, 하나 이상의 계층 간 기준 영역, 하나 이상의 시간적 기준 영역의 하나 이상의 계층 간 기준 영역, 및 하나 이상의 계층 간 기준 영역의 하나 이상의 시간적 기준 영역을 포함하는 기준 영역 리스트를 구성하고, 상기 기준 영역 리스트로부터 디코딩하기 위해 다수의 기준 영역을 선택하고, 상기 다수의 기준 영역은 상기 제1 기준 영역을 포함하는 장치.
  6. 제5항에 있어서, 디코딩하기 위해 상기 다수의 기준 영역을 선택하기 위해, 상기 하나 이상의 프로세서는 가장 낮은 레이트-왜곡 코스트를 갖는 상기 다수의 기준 영역을 식별하는 장치.
  7. 시스템으로서,
    디스플레이;
    무선 네트워크 인터페이스; 및
    상기 디스플레이 및 상기 무선 네트워크 인터페이스에 통신가능하게 결합된 회로
    를 포함하고,
    상기 회로는 이미지 영역을 형성하고, 상기 이미지 영역을 형성하는 상기 회로는:
    비트스트림을 통해 수신된 파라미터들에 적어도 부분적으로 기초하여 제1 기준 영역을 찾고 - 상기 제1 기준 영역은 상기 이미지 영역보다 하위 계층의 기준 화상에 위치하고 상기 제1 기준 영역은 상기 이미지 영역에 공동 위치되어 있지 않고, 현재 화상 및 상기 기준 화상은 동일한 시간적 식별을 갖고, 상기 제1 기준 영역을 찾기 위해, 상기 회로는, 상기 제1 기준 영역이 적어도 계층 간 기준 영역인 것에 응답하여, 상기 비트스트림의 상기 파라미터들을 통해 수신되고 상기 현재 화상의 상기 이미지 영역에 대응하는 시프트 벡터를 적용하고, 상기 시프트 벡터는 상기 제1 기준 영역을 식별하기 위해 상기 하위 계층의 상기 기준 화상의 공동 위치된 영역에 관한 시프트를 제공하고, 상기 공동 위치된 영역은 상기 이미지 영역과 공동 위치됨 - ;
    상기 파라미터들에 적어도 부분적으로 기초하여 제2 기준 영역을 식별하고 - 상기 제2 기준 영역은 상기 이미지 영역보다 하위 계층에 위치하고 상기 제2 기준 영역은 상기 이미지 영역과 공동 위치되어 있지 않음 - ;
    적어도 상기 제1 기준 영역 및 상기 제2 기준 영역에 기초하여 예측 영역을 생성하고 - 상기 예측 영역을 생성하기 위해, 상기 회로는 상기 제1 기준 영역에 제1 가중 인자를 적용하고, 상기 제2 기준 영역에 제2 가중 인자를 적용하고, 상기 가중된 제1 및 제2 기준 영역들을 합산하여 상기 예측 영역을 생성하고, 상기 제1 기준 영역과 상기 이미지 영역 사이의 제1 공간적 및 시간적 거리가 상기 제2 기준 영역과 상기 이미지 영역 사이의 제2 공간적 및 시간적 거리보다 작다는 것에 기초하여 상기 제1 가중 인자는 상기 제2 가중 인자보다 큼 - ;
    적어도 상기 예측 영역 및 레지듀얼 값에 기초하여 상기 이미지 영역을 형성하는 시스템.
  8. 제7항에 있어서, 제2 기준 영역을 식별하기 위해, 상기 회로는, 상기 제2 기준 영역이 계층 간 기준 영역인 것에 응답하여, 상기 기준 화상에 상기 제2 기준 영역을 위치시키도록 상기 공동 위치된 영역에 제2 시프트 벡터를 적용하는 시스템.
  9. 제7항에 있어서, 제2 기준 영역을 찾기 위해, 상기 회로는:
    상기 제2 기준 영역이 계층 간 기준 영역에 관한 시간적 기준 영역인 것에 응답하여, 상기 기준 화상에 상기 계층 간 기준 영역을 위치시키도록 상기 공동 위치된 영역에 제2 시프트 벡터를 적용하고, 상기 계층 간 기준 영역에 관하여 제2 기준 화상에 상기 제2 기준 영역을 위치시키도록 모션 벡터를 적용하는 시스템.
  10. 제7항에 있어서, 제2 기준 영역을 찾기 위해, 상기 회로는, 상기 제2 기준 영역이 시간적 기준 영역에 관한 계층 간 기준 영역인 것에 응답하여, 제2 기준 화상에 상기 시간적 기준 영역을 위치시키도록 상기 이미지 영역에 모션 벡터를 적용하고, 상기 시간적 기준 영역에 관하여 제3 기준 화상에 상기 제2 기준 영역을 위치시키도록 제2 시프트 벡터를 적용하는 시스템.
  11. 제7항에 있어서, 상기 회로는, 순서대로, 하나 이상의 시간적 기준 영역, 하나 이상의 계층 간 기준 영역, 하나 이상의 시간적 기준 영역의 하나 이상의 계층 간 기준 영역, 및 하나 이상의 계층 간 기준 영역의 하나 이상의 시간적 기준 영역을 포함하는 기준 영역 리스트를 구성하고, 상기 기준 영역 리스트로부터 디코딩하기 위해 다수의 기준 영역을 선택하고, 상기 다수의 기준 영역은 상기 제1 기준 영역을 포함하는 시스템.
  12. 컴퓨터에 의해 구현된 방법으로서,
    수신된 비디오 스트림으로부터 파라미터들을 액세스하는 단계 - 상기 파라미터들은 하나 이상의 기준 영역을 식별하며, 상기 파라미터들은 하나 이상의 모션 벡터, 하나 이상의 시프트 벡터, 계층 식별자, 하나 이상의 기준 영역 인덱스, 및 상기 하나 이상의 기준 영역에 대한 기준-영역 가중 인자들을 포함함 -;
    제1 기준 영역을 식별하는 단계를 포함하는 상기 하나 이상의 기준 영역을 식별하는 단계 - 상기 제1 기준 영역은 디코딩되는 이미지 영역보다 하위 계층의 기준 화상에 위치하고, 상기 이미지 영역은 현재 화상 내에 있고, 상기 제1 기준 영역은 상기 이미지 영역에 공동 위치되어 있지 않고, 상기 현재 화상 및 상기 기준 화상은 동일한 시간적 식별을 갖고, 상기 제1 기준 영역을 식별하는 단계는, 상기 제1 기준 영역이 적어도 계층 간 기준 영역인 것에 응답하여, 상기 현재 화상의 상기 이미지 영역에 대응하는 상기 하나 이상의 모션 벡터의 시프트 벡터를 적용하는 단계를 포함하고, 상기 시프트 벡터는 상기 제1 기준 영역을 식별하기 위해 상기 하위 계층의 상기 기준 화상의 공동 위치된 영역에 관한 시프트를 제공하고, 상기 공동 위치된 영역은 상기 이미지 영역과 공동 위치됨 - ;
    상기 하나 이상의 기준 영역 및 상기 기준-영역 가중 인자들에 기초하여 예측 영역을 판정하는 단계 - 상기 예측 영역을 판정하는 단계는 상기 제1 기준 영역에 제1 기준-영역 가중 인자를 적용하는 단계, 상기 하나 이상의 기준 영역의 제2 기준 영역에 제2 기준-영역 가중 인자를 적용하는 단계, 및 상기 가중된 제1 및 제2 기준 영역들을 합산하는 단계를 포함하고, 상기 제1 기준 영역과 상기 이미지 영역 사이의 제1 공간적 및 시간적 거리가 상기 제2 기준 영역과 상기 이미지 영역 사이의 제2 공간적 및 시간적 거리보다 작다는 것에 기초하여 상기 제1 기준-영역 가중 인자는 상기 제2 기준-영역 가중 인자보다 큼 - ;
    상기 수신된 비디오 스트림의 적어도 일부로부터 레지듀얼 값을 판정하는 단계; 및
    상기 예측 영역 및 상기 레지듀얼 값에 기초하여 상기 이미지 영역을 형성하는 단계
    를 포함하는 컴퓨터에 의해 구현된 방법.
  13. 제12항에 있어서, 상기 하나 이상의 기준 영역을 식별하는 단계는, 제2 기준 영역이 계층 간 기준 영역인 것에 응답하여, 상기 제2 기준 영역을 식별하는 단계, 및 상기 기준 화상에 상기 제2 기준 영역을 위치시키도록 상기 공동 위치된 영역에 제2 시프트 벡터를 적용하는 단계를 포함하는 컴퓨터에 의해 구현된 방법.
  14. 제12항에 있어서, 상기 하나 이상의 기준 영역을 식별하는 단계는, 제2 기준 영역이 계층 간 기준 영역에 관한 시간적 기준 영역인 것에 응답하여, 상기 제2 기준 영역을 식별하는 단계, 상기 기준 화상에 상기 계층 간 기준 영역을 위치시키도록 상기 공동 위치된 영역에 제2 시프트 벡터를 적용하는 단계, 및 상기 계층 간 기준 영역에 관하여 제2 기준 화상에 상기 제2 기준 영역을 위치시키도록 모션 벡터를 적용하는 단계를 포함하는 컴퓨터에 의해 구현된 방법.
  15. 제12항에 있어서, 상기 하나 이상의 기준 영역을 식별하는 단계는, 제2 기준 영역이 시간적 기준 영역에 관한 계층 간 기준 영역인 것에 응답하여, 상기 제2 기준 영역을 식별하는 단계, 상기 시간적 기준 영역을 위치시키도록 상기 이미지 영역에 모션 벡터를 적용하는 단계, 및 상기 시간적 기준 영역에 관하여 상기 제2 기준 영역을 위치시키도록 제2 시프트 벡터를 적용하는 단계를 포함하는 컴퓨터에 의해 구현된 방법.
  16. 제12항에 있어서, 순서대로, 하나 이상의 시간적 기준 영역, 하나 이상의 계층 간 기준 영역, 하나 이상의 시간적 기준 영역의 하나 이상의 계층 간 기준 영역, 및 하나 이상의 계층 간 기준 영역의 하나 이상의 시간적 기준 영역을 포함하는 기준 영역 리스트를 구성하는 단계; 및
    상기 기준 영역 리스트로부터 디코딩하기 위해 다수의 기준 영역을 선택하는 단계를 더 포함하고, 상기 다수의 기준 영역은 상기 제1 기준 영역을 포함하는 컴퓨터에 의해 구현된 방법.
  17. 제1항에 있어서, 상기 하나 이상의 프로세서는:
    적어도 상기 제1 기준 영역 및 상기 제2 기준 영역을 포함하는 기준 영역들의 리스트를 구성하고;
    상기 이미지 영역을 코딩하기 위한 가장 낮은 레이트-왜곡(RD) 코스트를 제공하는 상기 기준 영역들의 리스트의 M 기준 영역들의 세트를 판정하고 - 상기 RD 코스트는 상기 M 기준 영역들의 세트에 대응하는 코딩 비트들의 수의 배수와 합산되는 상기 M 기준 영역들의 세트에 대응하는 절대 차의 합(sum of absolute difference)(SAD)에 기초하여 산출되고, 상기 M 기준 영역들의 세트는 상기 파라미터들을 통해 수신된 기준 블록들의 최대 수에 의해 확립된 기준 영역들의 수 N을 가짐 -;
    상기 기준 영역들의 리스트의 제1 N 기준 영역들에 N 기준-영역 가중 인자들의 개별적으로 대응하는 리스트를 적용하고;
    상기 기준 영역들의 리스트의 상기 가중된 제1 N 기준 영역들을 합산하여 상기 예측 영역을 형성하는 장치.
  18. 제7항에 있어서, 상기 회로는:
    적어도 상기 제1 기준 영역 및 상기 제2 기준 영역을 포함하는 기준 영역들의 리스트를 구성하고;
    상기 이미지 영역을 코딩하기 위한 가장 낮은 레이트-왜곡(RD) 코스트를 제공하는 상기 기준 영역들의 리스트의 M 기준 영역들의 세트를 판정하고 - 상기 RD 코스트는 상기 M 기준 영역들의 세트에 대응하는 코딩 비트들의 수의 배수와 합산되는 상기 M 기준 영역들의 세트에 대응하는 절대 차의 합(SAD)에 기초하여 산출되고, 상기 M 기준 영역들의 세트는 상기 파라미터들을 통해 수신된 기준 블록들의 최대 수에 의해 확립된 기준 영역들의 수 N을 가짐 -;
    상기 기준 영역들의 리스트의 제1 N 기준 영역들에 N 가중 인자들의 개별적으로 대응하는 리스트를 적용하고;
    상기 기준 영역들의 리스트의 상기 가중된 제1 N 기준 영역들을 합산하여 상기 예측 영역을 생성하는 시스템.
  19. 제12항에 있어서,
    적어도 상기 제1 기준 영역 및 상기 제2 기준 영역을 포함하는 기준 영역들의 리스트를 구성하는 단계;
    상기 이미지 영역을 코딩하기 위한 가장 낮은 레이트-왜곡(RD) 코스트를 제공하는 상기 기준 영역들의 리스트의 M 기준 영역들의 세트를 판정하는 단계 - 상기 RD 코스트는 상기 M 기준 영역들의 세트에 대응하는 코딩 비트들의 수의 배수와 합산되는 상기 M 기준 영역들의 세트에 대응하는 절대 차의 합(SAD)에 기초하여 산출되고, 상기 M 기준 영역들의 세트는 상기 파라미터들을 통해 수신된 기준 블록들의 최대 수에 의해 확립된 기준 영역들의 수 N을 가짐 -;
    상기 기준 영역들의 리스트의 제1 N 기준 영역들에 N 기준-영역 가중 인자들의 개별적으로 대응하는 리스트를 적용하는 단계; 및
    상기 기준 영역들의 리스트의 상기 가중된 제1 N 기준 영역들을 합산하여 상기 예측 영역을 형성하는 단계
    를 더 포함하는 컴퓨터에 의해 구현된 방법.
  20. 삭제
KR1020157004926A 2012-09-28 2012-09-28 스케일러블 비디오 코딩을 위한 개선된 기준 영역 활용 KR101766101B1 (ko)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2012/082339 WO2014047885A1 (en) 2012-09-28 2012-09-28 Enhanced reference region utilization for scalable video coding

Publications (2)

Publication Number Publication Date
KR20150038357A KR20150038357A (ko) 2015-04-08
KR101766101B1 true KR101766101B1 (ko) 2017-08-07

Family

ID=50386859

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020157004926A KR101766101B1 (ko) 2012-09-28 2012-09-28 스케일러블 비디오 코딩을 위한 개선된 기준 영역 활용

Country Status (6)

Country Link
US (1) US9769475B2 (ko)
EP (1) EP2901691A4 (ko)
JP (1) JP6005865B2 (ko)
KR (1) KR101766101B1 (ko)
CN (1) CN104937932B (ko)
WO (1) WO2014047885A1 (ko)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
MX341203B (es) * 2012-05-14 2016-08-11 Rossato Luca Descomposicion de datos residuales durante la codificacion, decodificacion y reconstruccion de señal en jerarquia escalonada.
WO2014104104A1 (ja) * 2012-12-28 2014-07-03 日本電信電話株式会社 映像符号化装置および方法、映像復号装置および方法、及びそれらのプログラム
CN105379276A (zh) 2013-07-15 2016-03-02 株式会社Kt 可伸缩视频信号编码/解码方法和装置
CN105379277B (zh) * 2013-07-15 2019-12-17 株式会社Kt 用于编码/解码可伸缩视频信号的方法和装置
KR20150026927A (ko) * 2013-09-03 2015-03-11 주식회사 케이티 스케일러블 비디오 신호 인코딩/디코딩 방법 및 장치
EP3202151B1 (en) * 2014-11-05 2020-07-29 MediaTek Singapore Pte. Ltd. Method and apparatus of video coding with prediction offset
KR20170058838A (ko) * 2015-11-19 2017-05-29 한국전자통신연구원 화면간 예측 향상을 위한 부호화/복호화 방법 및 장치
US10368073B2 (en) * 2015-12-07 2019-07-30 Qualcomm Incorporated Multi-region search range for block prediction mode for display stream compression (DSC)
GB201607879D0 (en) * 2016-05-05 2016-06-22 Magic Pony Technology Ltd Video encoding using hierarchical algorithms
EP3306924A1 (en) * 2016-10-05 2018-04-11 Thomson Licensing Method and device for context-adaptive binary arithmetic coding a sequence of binary symbols representing a syntax element related to picture data
CN118042095A (zh) 2017-10-09 2024-05-14 诺基亚技术有限公司 用于视频编码和解码的装置、方法和计算机程序

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060233263A1 (en) * 2005-04-13 2006-10-19 Lg Electronics Inc. Method and apparatus for decoding video signal using reference pictures

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA2126467A1 (en) 1993-07-13 1995-01-14 Barin Geoffry Haskell Scalable encoding and decoding of high-resolution progressive video
US20020037046A1 (en) 2000-09-22 2002-03-28 Philips Electronics North America Corporation Totally embedded FGS video coding with motion compensation
JP4272810B2 (ja) * 2000-12-26 2009-06-03 キヤノン株式会社 放送受信装置及び放送受信装置の制御方法
US20020118742A1 (en) * 2001-02-26 2002-08-29 Philips Electronics North America Corporation. Prediction structures for enhancement layer in fine granular scalability video coding
KR100508798B1 (ko) * 2002-04-09 2005-08-19 엘지전자 주식회사 쌍방향 예측 블록 예측 방법
US7376186B2 (en) * 2002-07-15 2008-05-20 Thomson Licensing Motion estimation with weighting prediction
US7881386B2 (en) * 2004-03-11 2011-02-01 Qualcomm Incorporated Methods and apparatus for performing fast mode decisions in video codecs
WO2006078115A1 (en) * 2005-01-21 2006-07-27 Samsung Electronics Co., Ltd. Video coding method and apparatus for efficiently predicting unsynchronized frame
US20080089411A1 (en) * 2006-10-16 2008-04-17 Nokia Corporation Multiple-hypothesis cross-layer prediction
WO2009009475A2 (en) 2007-07-06 2009-01-15 Massachusetts Institute Of Technology Batch fabricated rectangular rod, planar mems quadrupole with ion optics
TWI416961B (zh) * 2010-04-02 2013-11-21 Univ Nat Chiao Tung 用於可調式視訊編碼系統之選擇性移動向量預測方法、移動估測方法及其裝置

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060233263A1 (en) * 2005-04-13 2006-10-19 Lg Electronics Inc. Method and apparatus for decoding video signal using reference pictures

Also Published As

Publication number Publication date
EP2901691A4 (en) 2016-05-25
US9769475B2 (en) 2017-09-19
CN104937932B (zh) 2019-04-19
JP2015534361A (ja) 2015-11-26
CN104937932A (zh) 2015-09-23
JP6005865B2 (ja) 2016-10-12
WO2014047885A1 (en) 2014-04-03
US20140286409A1 (en) 2014-09-25
KR20150038357A (ko) 2015-04-08
EP2901691A1 (en) 2015-08-05

Similar Documents

Publication Publication Date Title
KR101766101B1 (ko) 스케일러블 비디오 코딩을 위한 개선된 기준 영역 활용
US11818389B2 (en) Method and device for encoding/decoding motion vector
JP6550633B2 (ja) 3dビデオコーディングのための予測パラメータ継承
US10659777B2 (en) Cross-channel residual prediction
US10154271B2 (en) Method and apparatus for inter-layer decoding video using depth-based disparity vector, and method and apparatus for inter-layer encoding video using depth-based disparity vector
KR101668202B1 (ko) 스케일러블 비디오 코딩을 위한 인터레이어 샘플 적응 필터 파라미터 재사용
US10536710B2 (en) Cross-layer cross-channel residual prediction
CN112313959A (zh) 使用基于图像编码***中的lut导出的mvd解码图像的方法和设备
US10182234B2 (en) Method and apparatus for applying view synthesized prediction according to illumination compensation
KR102610110B1 (ko) 비디오 처리 시스템에서 인터 예측 방법 및 장치

Legal Events

Date Code Title Description
A201 Request for examination
E90F Notification of reason for final refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant