KR101936663B1 - 고효율 비디오 코딩 중 계산 부하의 경감 방법 및 장치 - Google Patents

고효율 비디오 코딩 중 계산 부하의 경감 방법 및 장치 Download PDF

Info

Publication number
KR101936663B1
KR101936663B1 KR1020177000475A KR20177000475A KR101936663B1 KR 101936663 B1 KR101936663 B1 KR 101936663B1 KR 1020177000475 A KR1020177000475 A KR 1020177000475A KR 20177000475 A KR20177000475 A KR 20177000475A KR 101936663 B1 KR101936663 B1 KR 101936663B1
Authority
KR
South Korea
Prior art keywords
intra prediction
mode
prediction mode
rate distortion
distortion cost
Prior art date
Application number
KR1020177000475A
Other languages
English (en)
Other versions
KR20170018385A (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 KR20170018385A publication Critical patent/KR20170018385A/ko
Application granted granted Critical
Publication of KR101936663B1 publication Critical patent/KR101936663B1/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/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/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/11Selection of coding mode or of prediction mode among a plurality of spatial predictive coding modes
    • 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/119Adaptive subdivision aspects, e.g. subdivision of a picture into rectangular or non-rectangular coding blocks
    • 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/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/597Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding specially adapted for multi-view video sequence encoding

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Testing, Inspecting, Measuring Of Stereoscopic Televisions And Televisions (AREA)

Abstract

고효율 비디오 코딩 중 계산 부하의 경감 방법(500)은 선택된 인트라 코딩 모드의 전체 율 왜곡 계산 목록을 생성하는 단계(504)를 포함하고, 상기 인트라 코딩 모드는 인트라 예측 모드 및 깊이 모델링 모드를 포함한다. 세그먼트-와이즈 깊이 코딩 모드가 디스에이블될 때, 상기 전체 율 왜곡 계산 목록 중의 각각의 인트라 예측 모드에 대한 율 왜곡 비용이 결정되고 최소 율 왜곡 비용 인트라 예측 모드가 선택된다(506). 인에이블된 상기 세그먼트-와이즈 깊이 코딩 모드를 통해 특정 인트라 예측 모드에 대해 율 왜곡 비용이 계산된다(510). 비교(512) 이후, 상기 특정 인트라 예측 모드(514) 및 상기 최소 율 왜곡 비용을 가지는 최소 율 왜곡 비용 인트라 예측 모드(516) 중 하나가 예측 유닛에 적용된다.

Description

고효율 비디오 코딩 중 계산 부하의 경감 방법 및 장치{METHOD AND DEVICE FOR REDUCING A COMPUTATIONAL LOAD IN HIGH EFFICIENCY VIDEO CODING}
본 개시는 일반적으로 고효율 비디오 코딩에 관한 것이고, 특히 고효율 비디오 코딩(HEVC) 중 계산 부하의 경감 방법 및 장치에 관한 것이다.
3D-HEVC 인트라 예측 과정에서, 인트라 예측 모드 결정은 라그랑주 승수법(Lagrange multiplier)를 사용하여 최소 율 왜곡(rate distortion, RD) 비용을 가진 모드를 찾기 위해 모든 가능한 인트라 코딩 모드를 사용하여 실행된다. 그러나 이 기법은 극히 큰 계산상의 복잡성을 초래하고 실제 응용에서 3D-HEVC 인코더 및 디코더의 사용을 제한시킨다. 그러므로, 코딩 효율과 타협함 없이 인트라 결정의 복잡성을 경감시킬 수 있는 고속 알고리즘이 3D-HEVC 인코더 및 디코더의 실시간 구현을 위해 매우 바람직하다.
전술한 내용으로부터, 이 기술분야의 통상의 기술자는 3차원 비디오 인코더 및 디코더 중의 계산 복잡성을 경감시키기 위한 필요성이 발생했다는 것을 인정할 수 있다. 본 개시에 따르면, 종래의 인코더 및 디코더에 관련된 문제를 크게 경감시키고 실질적으로 제거하는, 고효율 비디오 코딩 중의 계산 부하의 경감 방법 및 장치가 제공된다.
일 실시예에 따라, 고효율 비디오 코딩 중 계산 부하의 경감 방법은 선택된 인트라 코딩 모드의 전체 율 왜곡 계산 목록을 생성하는 단계를 포함하고, 상기 인트라 코딩 모드는 인트라 예측 모드 및 깊이 모델링 모드를 포함한다. 상기 전체 율 왜곡 계산 목록 중의 각각의 인트라 예측 모드에 대한 율 왜곡 비용이 결정되고 최소 율 왜곡 비용을 가지는 최소 율 왜곡 비용 인트라 예측 모드가 선택되고, 세그먼트-와이즈 깊이 코딩 모드가 상기 결정에서 각각의 인트라 예측 모드에 대해 디스에이블된다. 인에이블된 상기 세그먼트-와이즈 깊이 코딩 모드를 통해 특정 인트라 예측 모드에 대해 율 왜곡 비용이 계산된다.
상기 인에이블된 세그먼트-와이즈 깊이 코딩 모드에 대해 획득된 상기 특정 인트라 예측 모드의 율 왜곡 비용 및 디스에이블된 상기 세그먼트-와이즈 깊이 코딩 모드에 대해 획득된 상기 최소 율 왜곡 비용 인트라 예측 모드의 율 왜곡 비용이 비교된다. 상기 특정 인트라 예측 모드 및 상기 최소 율 왜곡 비용을 가지는 최소 율 왜곡 비용 인트라 예측 모드 중 하나가 예측 유닛에 적용된다.
상기 본 개시는 종래의 비디오 인코딩 기술에 대한 많은 기술적 이점을 설명한다. 예를 들어, 하나의 기술적 이점은, 세그먼트-와이즈 깊이 코딩 모드를 인에이블할 때 전체 율 왜곡 계산을 수행하는 것을 제거하는 것이다. 다른 기술적 이점은 율 왜곡 계산을 위해 특정 인트라 코딩 모드를 선택하는 것이다. 또 다른 기술적 이점은 최소 율 왜곡 비용을 가지는 인트라 예측 모드 상의 인트라 코딩 모드를 기초 선택하는 것이다. 하기 도면, 설명 및 청구범위로부터 다른 기술적 이점이 이 기술분야의 통상의 기술자에게 명백하고 그가 즉시 알 수 있을 것이다.
본 발명 및 그 이점을 더욱 완전하게 이해하기 위해, 첨부된 도면과 함께 하기 설명을 참조하고, 하기 내용에서 유사한 참조 번호는 유사한 부품을 나타낸다:
도 1은 고효율 비디오 코딩(HEVC) 중에 구현된 사지트리(quadtree) 코딩 구조를 도시한다.
도 2는 깊이 데이터 코딩에 대한 기술을 구현할 수 있는 비디오 인코더의 사례를 도해하는 블록 다이어그램이다.
도 3은 깊이 데이터 코딩에 대한 기술을 구현할 수 있는 비디오 디코더의 사례를 도해하는 블록 다이어그램이다.
도 4a 및 도 4b는 텍스처 프레임 및 깊이 프레임을 구비하는 3D 장면 표현의 사례를 도시한다.
도 5는 세그먼트-와이즈 깊이 코딩(segment-wise depth coding, SDC)을 인에이블링할 때 계산 부하를 경감하기 위한 과정의 사례를 도시한다.
도 6은 SDC를 인에이블링할 때 계산 부하를 경감하기 위한 과정의 다른 사례를 도시한다.
도 7은 도 5 및 도 6의 과정을 수행하기에 적당한, 단순화된 일반적 목적의 컴퓨팅 구성요소를 도해한다.
이 특허 문서 중 이하에서 논의되는 도 1부터 도 7 및 본 발명의 원리를 설명하기 위해 사용되는 다양한 실시예는 예시만을 위한 것이고 본 발명의 보호범위를 제한하는 것으로 해석되어서는 안 된다. 이 기술분야의 통상의 기술자는 본 발명의 원리가 임의 형태의 적절하게 구성된 장치 또는 시스템에서 구현될 수 있다는 것을 이해할 것이다. 하나의 도면에서 도시되고 논의된 특징은 하나 이상의 다른 도면들에 적절하게 구현될 수 있다.
일반적으로, 이 개시는 HEVC 표준 하의 다양한 깊이 코딩 모드를 사용하는 3차원(3D) 비디오 데이터에 대한 인코딩 및 디코딩 깊이 데이터 기술에 대한 것이다. 3D 비디오 데이터의 캡처된 장면(예를 들어, 텍스처)은 텍스처 데이터에 대한 깊이 데이터를 설명하는 대응하는 깊이 지도에 관련되어 있다. 3D-HEVC 과정과 같은 3D 비디오 코딩 과정에 따라, 텍스처 뷰 및 깊이 지도는 코딩되고 3D 비디오 비트스트림으로 멀티플렉싱될 수 있다.
도 1은 고효율 비디오 코딩(HEVC) 중에 구현된 사지트리(quadtree) 코딩 구조를 도시한다. 상기 HEVC 표준은 대단히 융통성 있는 사지 코딩을 채택하고, 비디오 픽처 또는 프레임은 루마(Y) 및 크로마(Cb, Cr) 샘플을 포함하는 코딩 트리 유닛(Coding Tree Units, CTU)의 시퀀스로 분할될 수 있다. 상기 CTU의 크기는 인코더에서 64x64, 32x32, 및 16x16에서 선택될 수 있고 시퀀스 파라미터 세트(sequence parameter set, SPS)에서 특정된다. CTU는 코딩 트리의 루트로서 채택되고, 상기 사지의 각각의 리프(leaf)는 코딩 유닛(Coding Unit, CU)으로 지칭된다. 그러므로, 하나의 CTU는 복수의 CU로 파티션될 수 있고, 각각의 US는 인트라 코딩 또는 인터 코딩 중 하나의 코딩 카테고리를 특정한다. 나아가 CU는, 예측을 위한 기본 정보를 운반하는 하나, 둘, 또는 네 예측 유닛(Prediction Units, PU)으로 나누어진다. 효율적인 예측을 위해, HEVC는 가변 크기 PU를 지원할 2개의 인트라 PU 및 8개의 인터 PU 형상을 정의한다. 인트라 PU는 2Nx2N 및 NxN개의 형상을 가질 수 있다. 인터 PU 형상은 2개의 정사각형 형상의 2Nx2N 및 NxN, 2개의 직사각형 형상의 2NxN 및 Nx2N, 및 4개의 비대칭 형상의 각각 상, 하, 좌, 및 우 위치의 2NxnU, 2NxnD, nLx2N, 및 nRx2N을 포함한다. 각 CU의 레지듀 블록은, 그 크기가 4×4에서 32×32까지 범위이고 전송 유닛(TU)으로 이루어지는, 통상 레지듀 사지(RQT)로 지칭되는 사지 구조로 변환될 수 있다. 하나의 TU은, 예측된 이미지 및 실제 이미지 간의 레지듀 차이를 코딩하기 위한 공간 블록 변환 및 양자화를 위한 계수를 포함한다.
상기 인코더는 철저한 계산을 통한 최선의 코딩 트리 구조, PU 서브분할, 및 RQT 구성을 선택한다. 각 후보 구성의 압축 효율을 평가하기 위해, 상기 인코더는 통상 라그랑지안 승수 최적화 기법을 채택하고, 이는 J = D + λR로 표현되며, 여기서 J는 라그랑지안 율 왜곡(RD) 비용 함수, D는 원본에 대한 재구축된 샘플의 제곱 에러의 합에 의한 왜곡 이득, R은 엔트로피 코딩의 비트율, λ는 라그랑지안 식에서 R 및 D를 연결하는 라그랑지안 승수이다.
상기 RD 비용의 최소화 과정은, 비트-율이 왜곡과 타협하는 율-왜곡 최적화(RDO)로 알려져 있고, 압축 효율 및 픽처 품질 간의 트레이드-오프를 이룬다.
코딩 효율은, 비디오 품질의 일정 수준을 유지하면서, 가능한 최저 비트 율에서 비디오를 인코딩할 수 있는 능력이다. 상기 인코더는 최소값을 가지는 인트라 코딩 모드를 선택하기 위해 RDO 과정을 사용한다. RDO 과정은 주로 두 가지 이유에 의해 매우 시간-소모적이다. 첫째는 과도하게 많은 CU/PU/TU 조합이 존재한다. 예를 들어, 인트라 예측 모드 코딩에서만도, 35회의 RD 비용 계산 과정이 어떤 PU의 모드를 결정하기 위해 수행된다. 왜냐하면, 하나의 PU는, DC(평평한), 평면의(표면에 맞는), 및 33개의 각도 모드를 포함하는 35개의 인트라 예측 모드의 하나로 코딩될 수 있기 때문이다. 둘째 이유는 RD-비용 계산은 연산적으로 집중적이다. 각각의 후보에 대해 정확한 D 및 R을 획득하기 위해, 상기 인코더에 의해 수행되는 RD-비용 계산은 인트라 예측, 레지듀 계산, 변환, 양자화, 엔트로피 코딩, 역변환, 역양자화, 픽셀 재구축, 및 마지막으로 RD-비용 계산을 포함한다.
일반적으로, 상기 HEVC 인코더는 프레임을 저장 또는 전송될 수 있는 압축된 비디오 비트 스트림으로 압축한다. 상기 인코딩 과정은 단일 픽처 또는 프레임을, 추가적으로 복수의 CU로 분할될 수 있는 복수의 CTU로 파티셔닝함으로써 시작한다. 일단 프레임 내의 픽처가 파티셔닝되면, CU가 추가적으로 PU로 파티셔닝되는 예측 과정이 시작한다. 상기 HEVC 인코더는 두 가지 유형의 예측, 즉 인트라 예측 및 인터 예측을 사용한다. 인트라 예측은 이웃하는 이미지 데이터로부터, 즉 동일한 픽처 프레임으로부터 PU를 예측한다. 인터 예측은 현재 화면 이전 또는 이후의 픽처 내의 이미지 데이터, 즉 스트림 내의 다른 픽처 프레임을 기준으로 하는 PU를 예측하기 위해 움직임 보상 예측을 사용한다.
예측 이후 남아 있는 임의의 데이터는 이산 코사인 변환(DCT)을 사용하는 블록으로 저장된다. 원 블록 및 그 예측 간의 차이는 선형 공간 변환에 의해 변환된다. 상기 HEVC 인코더는 이러한 블록을, CU 중에 남아있는 데이터에 적용한다. 끝으로, 상기 코딩된 비트 스트림은 추가적으로, 엔트로피 인코딩으로 알려진 과정을 통하여 문맥 적응 이진 산술 코딩(CABAC)을 사용하여 더 인코딩된다. 이는 HEVC 인코더가 변환된 데이터를 분리된 구성요소, 즉 움직임 벡터, 예측 모드, 파티셔닝 정보, 및 다른 헤더 데이터로 배열 및 압축하는 마지막 단계이다. 스케일링되고, 양자화되고, 엔트로피 코딩된 직후, 변환 계수는 예측 정보와 함께 전송된다. 여기에서 상기 비디오는 압축되었고, 저장될 수 있다.
비디오 전송 직후, HEVC 디코더는 비디오 소스로부터 이미지를 나타내기 위해 데이터를 디코딩한다. 엔트로피 디코딩에 의해, HEVC 디코더는 인코딩된 시퀀스의 요소들을 추출한다. 그것은 인코딩 과정의 변환 단계를 재스케일링 및 전도시키고, 픽처의 유닛들은 그 원본 형태로 복원되고, 예측되고, 상기 예측은 역변환의 출력에 부가된다.
동영상을 나타내는 마지막 단계는 나타내기 위해 디코딩된 비디오의 재구축 과정이다. 상기 인코더는 디코더 처리 루프를 복제하여, 양자가 후속하는 데이터에 대해 동일한 예측을 생성할 수 있도록 한다. 상기 양자화된 변환 계수는 역 스케일링에 의해 구축되고 레지듀 신호의 디코딩된 근사치를 복제하기 위해 역변환된다. 그리고 상기 레지듀는 예측에 부가되고, 블록-와이즈 처리 및 양자화에 의해 유발된 소산물(artifact)을 부드럽게 하기 위해 하나 또는 두 개의 루프 필터에 공급된다. 상기 마지막 픽처 표현(디코더의 출력의 복제물)이 후속하는 픽처들의 예측을 위해 사용되기 위해 디코딩된 픽처 버퍼 내에 저장된다.
도 2는 깊이 데이터 코딩에 대한 기술을 구현할 수 있는 비디오 인코더의 사례를 도해하는 블록 다이어그램이다. 비디오 인코더(200)는 여기 개시된 대로, 3D-HEVC 내 깊이 지도의 단순화된 코딩 모드 신호를 위한 기술을 수행하도록 구성될 수 있는 장치의 전형이다. 비디오 인코더(200) 비디오 슬라이스 내의 비디오 블록의 인트라 및 인터 코딩을 수행할 수 있다. 인트라 코딩은 주어진 비디오 프레임 또는 픽처 내의 비디오 중의 공간적 중복을 감소 또는 제거하기 위해 공간적 예측에 의존한다. 인터-코딩은 비디오 시퀀스의 인접하는 프레임 또는 픽처 내의 비디오 중의 시간적 중복을 감소 또는 제거하기 위해 시간적 예측에 의존한다. 인트라 예측 모드(I 모드)는 임의의 몇몇 공간 기반 코딩 모드를 참조할 수 있다. 일방향 예측(P 모드) 또는 쌍방향-예측(B 모드) 같은 인터 예측 모드는, 임의의 몇몇 시간-기반 코딩 모드를 참조할 수 있다. 각각의 뷰에 대한 인코딩 텍스처 지도(즉, 루마 및 크로마 값)뿐 아니라, 비디오 인코더(200)는 나아가 각각의 뷰에 대한 깊이 지도를 더 인코딩할 수 있다.
비디오 인코더(200)는 비디오 데이터 메모리(202), 모드 선택 유닛(204), 디코딩된 픽처 버퍼(DPB)(206), 합산기(208), 변환 처리 유닛(210), 양자화 유닛(212), 및 엔트로피 인코딩 유닛(214)을 포함할 수 있다. 모드 선택 유닛(204)은, 차례로, 움직임 보상 유닛(220), 움직임 예측 유닛(222), 인트라 예측 유닛(224), 및 파티션 유닛(226)을 포함한다. 비디오 블록 재구축에 대해, 비디오 인코더(200)는 또한 역양자화 유닛(230), 역변환 유닛(232), 및 합산기(234)를 포함한다. 디블로킹 필터(240)는 또한 필터 블록 경계에 포함되고 재구축된 비디오로부터 블록화 소산물을 제거할 수 있다. 필요하면, 디블로킹 필터(240)가 보통 합산기(234)의 출력을 필터링한다. 추가적인 필터(루프 내에 또는 루프 후에)가 디블로킹 필터에 부가하여 사용될 수 있다. 그러한 필터는 (루프-내 필터로서) 합산기(208)의 출력을 필터링할 수 있다. 예시적 필터는 적응적 루프 필터, 샘플 적응적 오프셋(SAO) 필터, 또는 다른 유형의 필터를 포함할 수 있다.
비디오 인코더(200)는 인코딩될 비디오 프레임 내의 현재 비디오 블록을 수신한다. 비디오 데이터 메모리(202)는 비디오 인코더(200)의 구성요소에 의해 인코딩될 비디오 데이터를 저장할 수 있다. 비디오 데이터 메모리(202)에 저장된 비디오 데이터는 예를 들어, 비디오 소스로부터 획득될 수 있다. 디코딩된 픽처 버퍼(206)는 예를 들면 인트라 또는 인터 코딩 모드에서, 비디오 인코더(200)에 의해 인코딩 비디오 데이터 내 사용을 위한 기준 비디오 데이터를 저장하는 기준 픽처 메모리일 수 있다. 비디오 데이터 메모리(202) 및 디코딩된 픽처 버퍼(206)는 동기 DRAM(SDRAM), 자기저항 RAM(MRAM), 저항변화 RAM(RRAM)을 포함하는 DRAM(dynamic random access memory) 또는 다른 유형의 메모리 장치 같은 다양한 메모리 장치 중 임의의 것에 의해 형성될 수 있다. 비디오 데이터 메모리(202) 및 디코딩된 픽처 버퍼(206)는 동일한 메모리 장치 또는 별도의 메모리 장치로 제공될 수 있다. 다양한 예에서, 비디오 데이터 메모리(202)는 비디오 인코더(200)의 다른 구성요소와 함께 온-칩일 수 있거나, 또는 그러한 구성요소에 대해 오프-칩일 수 있다.
인코딩 과정 동안, 비디오 인코더(200)는 코딩될 비디오 프레임 또는 슬라이스를 수신한다.
상기 프레임 또는 슬라이스는 복수의 비디오 블록으로 분할될 수 있다. 움직임 예측 유닛(222) 및 움직임 보상 유닛(220)은 시간적 예측을 제공하기 위해 하나 이상의 기준 프레임 중의 하나 이상의 블록에 대해 수신된 비디오 블록의 인터-예측 코딩을 수행한다. 인트라 예측 유닛(224)은 공간적 예측을 제공하기 위해 코딩될 블록과 동일한 프레임 또는 슬라이스 내에 있는 하나 이상의 이웃하는 블록에 대해 수신된 비디오 블록의 인트라 예측 코딩을 대신에 수행할 수 있다. 비디오 인코더(200)는 비디오 데이터의 각각의 블록에 대해 적절한 코딩 모드를 선택하기 위해 복수의 코딩 경로를 수행할 수 있다.
게다가, 파티션 유닛(226)은 이전 코딩 경로 내의 이전 파티셔닝 방법의 평가에 기초하여, 비디오 데이터의 블록을 서브-블록으로 파티셔닝할 수 있다. 예를 들어, 파티션 유닛(226)은 처음에 프레임 또는 슬라이스를 파티셔닝하고, 율-왜곡 분석(예를 들어, 율-왜곡 최적화)에 기초하여 각각의 LCU를 서브-CU로 파티션할 수 있다. 모드 선택 유닛(204)은 LCU를 서브-CU로의 파티셔닝을 나타내는 사지 데이터 구조를 더 생성할 수 있다. 사지의 리프-노드 CU는 하나 이상의 PU 또는 하나 이상의 TU를 포함할 수 있다. 모드 선택 유닛(204)은 오류 결과에 기초하여 인트라 또는 인터로, 코딩 모드 중 하나를 선택하고, 결과적인 인트라 또는 인터 코딩된 블록을 합산기(208)에 제공하여 레지듀 블록 데이터를 생성하도록 하거나 합산기(234)에 제공하여 기준 프레임으로서의 사용을 위해 인코딩된 블록을 재구성하도록 할 수 있다. 모드 선택 유닛(204)은 또한 움직임 벡터, 인트라 코딩 모드 지시자, 파티션 정보, 및 다른 신택스 정보 같은 신택스 요소를 인코딩 유닛(214)에 제공한다.
움직임 예측 유닛(222) 및 움직임 보상 유닛(220)은 고도로 집적될 수 있으나, 개념적 목적을 위해 별도로 도시된다. 움직임 예측 유닛(222)에 의해 수행되는 움직임 예측은, 비디오 블록에 대한 움직임을 예측하는 움직임 벡터를 생성하는 과정이다. 예를 들어, 움직임 벡터는 현재 프레임(또는 다른 코딩된 유닛) 내의 코딩된 현재 블록에 대해, 기준 프레임 (또는 다른 코딩된 유닛) 내의 예측된 블록에 대한, 현재 비디오 프레임 또는 픽처 내의 비디오 블록의 PU의 변위를 가리킬 수 있다.
예측 블록은 픽셀 차이의 면에서 코딩될 블록에 근접하게 매칭하는 것으로 발견된 블록으로서, 절대 차이 합(SAD), 제곱 차이의 합(SSD), 다른 차이 지표에 의해 결정될 수 있다. 일부 예에서, 비디오 인코더(200)는 디코딩된 픽처 버퍼(206) 내에 저장된 기준 픽처의 서브-정수 픽셀 위치의 값을 계산할 수 있다. 예를 들어, 비디오 인코더(200)는 기준 픽처의 4분의 1 픽셀 위치, 8분의 1 픽셀 위치, 또는 다른 분수의 픽셀 위치의 값을 보간할 수 있다. 그러므로, 움직임 예측 유닛(222)은 전체 픽셀 위치 및 단편 픽셀 위치에 대해 움직임 수색을 수행하고 단편 픽셀 수준의 정밀도를 가진 움직임 벡터를 출력할 수 있다.
움직임 예측 유닛(222)은 PU의 위치를 기준 픽처의 예측 블록의 위치와 비교함으로써 인터-코딩된 비디오 블록의 PU에 대한 움직임 벡터를 계산한다. 상기 기준 픽처는 복수의 기준 픽처 목록의 하나로부터 선택될 수 있고, 상기 목록의 각각은 디코딩된 픽처 버퍼(206) 내에 저장된 하나 이상의 기준 픽처를 식별한다. 움직임 예측 유닛(222)은 엔트로피 인코딩 유닛(214) 및 움직임 보상 유닛(220)에 대해 계산된 움직임 벡터를 생성한다.
움직임 보상 유닛(220)에 의해 수행되는 움직임 보상은, 움직임 예측 유닛(222)에 의해 결정되는 움직임 벡터에 기초하는 예측 블록을 가져오거나 생성하는 것을 포함할 수 있다. 상기 현재 비디오 블록의 PU에 대한 움직임 벡터를 수신한 직후, 움직임 보상 유닛(220)은 상기 움직임 벡터가 가리키는 예측 블록을 기준 픽처 목록 중 하나에 위치시킬 수 있다. 합산기(208)는 코딩된 상기 현재 비디오 블록의 픽셀값으로부터 예측 블록의 픽셀값을 감산하여 레지듀 비디오 블록을 형성하여, 픽셀 차이값을 형성한다. 일반적으로, 움직임 예측 유닛(222)은 루마 구성요소에 대해 움직임 예측을 수행하고, 움직임 보상 유닛(220)은 크로마 구성요소 및 루마 구성요소에 대해 루마 구성요소에 기초하여 계산된 움직임 벡터를 사용한다. 비디오 슬라이스의 비디오 블록 디코딩 중에 사용하기 위해 모드 선택 유닛(204)은 비디오 블록 및 비디오 슬라이스와 연관된 신택스 요소를 또한 생성할 수 있다.
인트라 예측 유닛(224)은 움직임 예측 유닛(222) 및 움직임 보상 유닛(220)에 의해 수행되는 인터 예측에 대한 대안으로서 현재 블록을 인트라 예측할 수 있다. 특히, 인트라 예측 유닛(224)은 현재 블록을 인코딩하기 위해 사용할 인트라 코딩 모드를 결정할 수 있다. 일부 예에서, 인트라 예측 유닛(224)은 예를 들어, 별도의 인코딩 경로에서, 다양한 인트라 예측 모드를 사용하여 현재 블록을 인코딩할 수 있고, 인트라 예측 유닛(224)(또는 일부 예에서 모드 선택 유닛(204))은 시험된 모드로부터, 사용할 적절한 인트라 코딩 모드를 선택할 수 있다.
예를 들어, 인트라 예측 유닛(224)은 다양한 시험된 인트라 코딩 모드에 대한 율-왜곡 분석을 사용하여 율-왜곡 값을 계산하고, 시험된 모드 중에서 최적의 율-왜곡 특성을 가지는 인트라 코딩 모드를 선택할 수 있다. 율-왜곡 분석은 인코딩된 블록 및 원본 미인코딩된 블록 간의 왜곡(또는 오류)량을 결정하고, 상기 원본 미인코딩된 블록은 인코딩된 블록을 생성하기 위해 사용되는 비트 전송 속도 또는 비트의 개수뿐 아니라, 인코딩된 블록을 생성하기 위해 인코딩된다. 인트라 예측 유닛(224)은 어떤 인트라 코딩 모드가 상기 블록에 대해 최적의 율-왜곡 값을 나타내는지를 결정하기 위해 다양한 인코딩된 블록에 대한 왜곡 및 속도로부터 비율을 계산할 수 있다.
추가적으로, 인트라 예측 유닛(224)은 깊이 지도의 깊이 블록을 코딩하도록 구성될 수 있다. 예를 들어, 깊이 슬라이스의 인트라 예측된 PU를 코딩하기 위해, 인트라 예측 유닛(224)은 베이스(2D) HEVC 표준, 지역 경계 체인 코딩 모드(CCM), 단순화된 또는 세그먼트-와이즈 깊이 코딩 모드(SDC), 또는 깊이 모델링 모드(DMM)로부터 인트라 예측 모드를 사용할 수 있다. 일부 예에서, 움직임 예측 유닛(222) 및 움직임 보상 유닛(220)은 또한 깊이 지도의 깊이 블록을 코딩하도록 구성될 수 있다. 움직임 예측 유닛(222) 및 움직임 보상 유닛(220)은 깊이 슬라이스의 인터 예측된 PU를 코딩하기 위해 베이스(2D) HEVC 표준 또는 인터 SDC 모드에 따라 인터 예측을 수행할 수 있다.
변환 처리 유닛(210)은 상기 레지듀 블록에 상기 변환을 적용하여, 레지듀 변환 계수의 블록을 생성한다. 상기 변환은 픽셀값 도메인으로부터 주파수 도메인 같은 변환 도메인으로 상기 레지듀 정보를 변환할 수 있다. 변환 처리 유닛(210)은 이산 코사인 변환(DCT) 또는 DCT와 개념적으로 유사한 다른 변환 같은 변환을 수행할 수 있다. 파형요소(Wavelet) 변환, 정수 변환, 서브-대역 변환, 또는 다른 유형의 변환도 사용될 수 있다. 변환 처리 유닛(210)은 결과로 산출된 변환 계수를 양자화 유닛(212)에 송신할 수 있다. 일부 예에서, 상기 변환 처리는 생략될 수 있다.
양자화 유닛(212)은 비트 전파 속도를 더 감소시키기 위해 상기 변환 계수를 양자화한다. 상기 양자화 과정은 상기 계수의 일부 또는 전부와 관련된 비트 깊이를 감소시킬 수 있다. 상기 양자화도는 양자화 파라미터를 조정함으로써 수정될 수 있다. 일부 예에서, 양자화 유닛(212)는 양자화된 변환 계수를 포함하는 행렬의 스캔을 수행할 수 있다. 그렇지 않으면, 엔트로피 인코딩 유닛(214)이 상기 스캔을 수행할 수 있다.
양자화에 후속하여, 엔트로피 인코딩 유닛(214)이 상기 양자화된 변환 계수를 엔트로피 코딩한다. 예를 들어, 엔트로피 인코딩 유닛(214)은 문맥 적응 이진 산술 코딩(CABAC) 또는 문맥 적응 가변 길이 코딩(CAVLC), 신택스-기반 문맥-적응 이진 연산 코딩(SBAC), 또는 확률 구간 파티셔닝 엔트로피(PIPE) 코딩 같은 다른 엔트로피 코딩 과정을 수행할 수 있다. 문맥-기반 엔트로피 코딩의 경우, 문맥은 이웃하는 블록에 기초할 수 있다. 엔트로피 인코딩 유닛(214)에 의한 상기 엔트로피 코딩에 후속하여, 인코딩된 비트스트림은 다른 장치(예를 들어, 비디오 디코더(300))에 전송되거나 또는 차후 전송 또는 검색을 위해 보관될 수 있다.
역양자화 유닛(230) 및 역변환 유닛(232)은, 픽셀 도메인 내의 상기 레지듀 블록을 재구축하여 차후에 기준블록으로 사용하기 위하여, 각각 역양자화 및 역변환을 적용한다. 움직임 보상 유닛(220)은 디코딩된 픽처 버퍼(206)의 프레임의 하나의 예측 블록에 상기 레지듀 블록을 부가하여 기준 블록을 계산할 수 있다. 움직임 보상 유닛(220)은 움직임 예측에서 사용하기 위한 서브-정수 픽셀값을 계산하기 위하여, 재구축된 레지듀 블록에 하나 이상의 보간 필터를 더 적용할 수도 있다.
디코딩된 픽처 버퍼(206) 내에 저장하기 위한 재구축된 비디오 블록을 생성하기 위해, 합산기(234)는 움직임 보상 유닛(220)에 의해 생성된 상기 움직임 보상 예측 블록에 재구축된 레지듀 블록을 합산한다. 상기 재구축된 비디오 블록은, 후속하는 비디오 프레임 내의 블록을 인터-코딩하기 위한 기준 블록으로서 움직임 예측 유닛(222) 및 움직임 보상 유닛(220)에 의해 사용될 수 있다.
이 개시에 설명된 기술에 따라, 비디오 인코더(200)는 3D 비디오 코딩 과정 중에 가용한 깊이 인트라 코딩 모드를 사용하여 3D 비디오 데이터에 대한 깊이 데이터를 인코딩하도록 구성될 수 있다. 일 예에서, 비디오 인코더(200)는 깊이 모델링 테이블 중의 3D 비디오 데이터에 대한 깊이 데이터를 코딩하기 위해 사용되는 깊이 인트라 코딩 모드를 송신한다. 상기 깊이 모델링 테이블은, HEVC 인트라 코딩 모드에 대한 신택스와 분리된 추가적인 깊이 인트라 코딩 모드에 대한 신택스를 송신한다. 추가적으로, 비디오 인코더(200)는 HEVC 인트라 코딩 모드와 다른 일부 깊이 인트라 코딩 모드가 3D 비디오 데이터에 대해 인에이블되는지 여부를 나타내는 플래그 같은 신택스 요소를 송신한다. 일부 예에서, 상기 신택스 요소는 모든 깊이 인트라 코딩 모드가 3D 비디오 데이터에 대해 인에블되는지 여부를 나타낼 수 있다. 상기 신택스 요소는 비디오 데이터의 비디오 파라미터 세트(VPS), 시퀀스 파라미터 세트(SPS), 또는 픽처 파라미터 세트(PPS) 중 하나에 포함될 수 있다. 상기 깊이 인트라 코딩 모드가 인에이블될 때, 비디오 인코더(200)에 의해 송신되는 상기 플래그는 비디오 디코더(300)에 상기 깊이 데이터를 코딩하기 위해 사용되는 상기 깊이 인트라 코딩 모드 중 하나를 결정하기 위해 상기 깊이 모델링 테이블을 디코딩하도록 나타낼 수 있다. 상기 깊이 모델링 테이블은 상기 비디오 데이터의 코딩 유닛(CU) 레벨 또는 예측 유닛(PU) 레벨 중 하나에서 인코딩될 수 있다. 이 개시의 기술에 따른 비디오 인코더(200)의 송신은, HEVC 인트라 코딩 모드와 분리된 상기 깊이 모델링 테이블 내의 상기 깊이 인트라 코딩 모드를 송신하고, 상기 깊이 인트라 코딩 모드가 인에이블되고 상기 깊이 모델링 테이블이 디코딩되는 때를 나타냄으로써, 디코더 파싱 부담을 경감시킬 수 있다.
다른 예에서, 비디오 인코더(200)는 둘 이상의 상기 깊이 코딩 모드에 걸쳐 통일된 한 세트의 신택스 요소를 사용하여 3D 비디오 데이터에 대한 깊이 데이터의 레지듀 정보를 송신하도록 구성될 수 있다. 상기 깊이 코딩 모드는 상기 깊이 인트라 코딩 모드 및 상기 깊이 인터 코딩 모드를 포함할 수 있다. 상기 신택스 요소의 세트는 레지듀 값이 일부 상기 깊이 코딩 모드에 대해 코딩되는지 여부를 나타내는 신택스 요소를 포함할 수 있다. 상기 신택스 요소의 세트는 또한 임의의 상기 깊이 코딩 모드에 대한 레지듀 값의 절대값 및 부호를 나타내는 신택스 요소도 포함할 수 있다. 하나 이상의 상기 깊이 코딩 모드에 대한 레지듀 정보를 나타내기 위해 동일한 신택스 요소의 세트를 공유함으로써, 비디오 인코더(200)는 각각의 공유된 신택스 요소에 대한 문맥 모델 선택 및 이진화 방법을 또한 통일할 수 있다. 추가적으로, 상기 깊이 인트라 코딩 모드에 대해, 비디오 인코더(200)는 상기 깊이 데이터의 상기 레지듀 값의 생성 동안 이웃하는 기준 샘플을 필터링하지 않기로 결정할 수 있다. 이 개시의 기술에 따라, 상기 비디오 인코더(200)의 인코딩 방법 및 송신은 상기 깊이 코딩 모드에 대한 상기 레지듀 정보 신택스를 통일시킴으로써 디코더 파싱 부담을 감소시키고 필요한 문맥 모델 및 이진화 방법의 개수를 감소시킬 수 있다.
도 3은 깊이 데이터 코딩에 대한 기술을 구현할 수 있는 비디오 디코더의 사례를 도해하는 블록 다이어그램이다. 비디오 디코더(300)는 비디오 데이터 메모리(302), 엔트로피 디코딩 유닛(304), 움직임 보상 유닛(306), 인트라 예측 유닛(308), 역양자화 유닛(310), 역변환 유닛(312), 디코딩된 픽처 버퍼(DPB)(314), 합산기(316)를 포함한다. 비디오 디코더(300)는 여기에 제공된 바와 같이 3D-HEVC 중 깊이 지도의 단순화된 코딩 모드 송신을 수행하도록 구성될 수 있는 장치를 나타낸다.
비디오 데이터 메모리(302)는 인코딩된 비디오 비트스트림 같은, 비디오 디코더(300)의 구성요소에 의해 디코딩될 비디오 데이터를 저장할 수 있다. 비디오 데이터 메모리(302)에 저장되는 상기 비디오 데이터는 예를 들어, 컴퓨터로 판독 가능한 매체, 예를 들어, 카메라 같은 로컬 비디오 소스로부터, 비디오 데이터의 유선 또는 무선 네트워크 통신을 통해 또는 물리 데이터 저장 매체를 액세스하는 것에 의해 획득될 수 있다. 비디오 데이터 메모리(302)는 인코딩된 비디오 비트스트림으로부터 인코딩된 비디오 데이터를 저장하는 코딩된 픽처 버퍼(CPB)를 형성할 수 있다. 디코딩된 픽처 버퍼(314)는 인트라 또는 인터 코딩 모드에 의해 비디오 디코더(300) 가 사용할 기준 비디오 데이터를 저장하는 기준 픽처 메모리일 수 있다. 비디오 데이터 메모리(302)는 동기 DRAM(SDRAM), 자기저항 RAM(MRAM), 저항변화 RAM(RRAM)을 포함하는 DRAM(dynamic random access memory) 또는 다른 유형의 메모리 장치 같은 다양한 메모리 장치 중 임의의 것에 의해 형성될 수 있다. 비디오 데이터 메모리(302) 및 디코딩된 픽처 버퍼(314)는 동일한 메모리 장치 또는 별도의 메모리 장치로 제공될 수 있다. 다양한 예에서, 비디오 데이터 메모리(302)는 비디오 디코더(300)의 다른 구성요소와 함께 온-칩일 수 있거나, 또는 그러한 구성요소에 대해 오프-칩일 수 있다.
디코딩 과정 동안, 비디오 디코더(300)는 인코딩된 비디오 슬라이스의 비디오 블록을 나타내는 인코딩된 비디오 비트스트림 및 비디오 인코더(200)로부터의 관련된 신택스 요소를 수신한다. 엔트로피 디코딩 유닛(304)은 양자화된 계수, 움직임 벡터, 인트라 코딩 모드 지시자, 및 다른 신택스 요소를 생성하기 위해 상기 비트스트림을 디코딩한다. 비디오 디코더(300)는 상기 비디오 슬라이스 레벨 및/또는 상기 비디오 블록 레벨에서 상기 신택스 요소를 수신할 수 있다. 각각의 뷰에 대한 텍스처 지도(즉, 루마 및 크로마 값)를 디코딩할 뿐 아니라, 비디오 디코더(300)는 각각의 뷰에 대한 깊이 지도도 더 디코딩할 수 있다.
비디오 슬라이스가 인트라 코딩된(I) 슬라이스로서 코딩될 때, 송신된 인트라 코딩 모드 및 상기 현재 프레임 또는 픽처의 사전에 디코딩된 블록으로부터의 데이터에 기초하여 인트라 예측 유닛(308)은 상기 현재 비디오 슬라이스의 비디오 블록에 대해 예측 데이터를 생성할 수 있다. 인트라 예측 유닛(308)은 또한 깊이 데이터를 인트라 코딩할 수 있다. 예를 들어, 깊이 슬라이스의 인트라 예측된 PU를 코딩하기 위해, 인트라 예측 유닛(308)은 베이스(2D) HEVC 표준, 지역 경계 체인 코딩 모드(CCM), 단순화된 깊이 코딩 또는 세그먼트-와이즈 깊이 코딩 모드(SDC), 또는 깊이 모델링 모드(DMM)로부터 인트라 예측 모드를 사용할 수 있다.
상기 비디오 프레임이 인터-코딩된(즉, B 또는 P) 슬라이스로서 코딩될 때, 움직임 보상 유닛(306)은 엔트로피 디코딩 유닛(304)으로부터 수신된 상기 움직임 벡터 및 다른 신택스 요소에 기초하여 상기 현재 비디오 슬라이스의 비디오 블록에 대한 예측 블록을 생성한다. 상기 예측 블록은 기준 픽처 목록 중 하나 내에서 기준 픽처 중 하나로부터 생성될 수 있다. 비디오 디코더(300)는 디코딩된 픽처 버퍼(314)에 저장된 기준 픽처에 기초하여 디폴트(default) 구축 기술을 사용하여 기준 프레임 목록을 구축할 수 있다.
움직임 보상 유닛(306)은 상기 움직임 벡터 및 다른 신택스 요소를 파싱하는 것에 의해 상기 현재 비디오 슬라이스의 비디오 블록에 대한 예측 정보를 결정하고, 디코딩되는 상기 현재 비디오 블록에 대한 예측 블록을 생성하기 위해 상기 예측 정보를 사용한다. 예를 들어, 움직임 보상 유닛(306)은, 상기 비디오 슬라이스를 코딩하기 위해 사용되는 예측 모드(예를 들어, 인트라 또는 인터 예측), 인터-예측 슬라이스 유형(예를 들어, B 슬라이스 또는 P 슬라이스), 슬라이스에 대한 하나 이상의 상기 기준 픽처 목록에 대한 구축 정보, 슬라이스의 각각의 인터 인코딩된 비디오 블록에 대한 움직임 벡터, 슬라이스의 각각의 인터 인코딩된 비디오 블록에 대한 인터-예측 상태, 및 상기 현재 비디오 슬라이스 중의 상기 비디오 블록을 디코딩하기 위한 다른 정보를 결정하기 위해 상기 수신된 신택스 요소의 일부를 사용한다.
움직임 보상 유닛(306)은 보간 필터에 기초하여 보간을 수행할 수도 있다. 움직임 보상 유닛(306)은, 기준 블록의 서브-정수 픽셀에 대한 보간된 값을 계산하기 위해 상기 비디오 블록의 인코딩 동안 비디오 인코더(200)에 의해 사용된 것 같이 보간 필터를 사용할 수 있다. 이 경우에서, 움직임 보상 유닛(306)은 수신된 신택스 요소로부터 비디오 인코더(200)에 의해 사용된 보간 필터를 결정하고, 예측 블록을 생성하기 위해 상기 보간 필터를 사용할 수 있다. 움직임 보상 유닛(306)은 깊이 데이터를 인터 코딩할 수도 있다. 예를 들어, 움직임 보상 유닛(306)은 깊이 슬라이스의 인트라 예측된 PU를 코딩하기 위해 베이스(2D) HEVC 표준 또는 인터 SDC 모드에 따라 인터 예측을 수행할 수 있다.
역양자화 유닛(310)은, 상기 비트스트림에서 제공되고 엔트로피 디코딩 유닛(304)에 의해 디코딩된 상기 양자화된 변환 계수를 역양자화, 즉, 디-양자화한다. 상기 역양자화 과정은, 적용되어야 할 양자화도 및, 비슷하게, 역양자화도를 결정하기 위해 상기 비디오 슬라이스 중의 각각의 비디오 블록에 대해 비디오 디코더(300)에 의해 계산되는 양자화 파라미터 QPY의 사용을 포함할 수 있다. 역변환 유닛(312)은 픽셀 도메인 내에서 레지듀 블록을 생성하기 위해 상기 변환 계수에 대해, 역변환, 예를 들어 역 DCT, 역 정수 변환, 또는 개념적으로 유사한 역변환 처리를 적용한다.
움직임 벡터 또는 다른 신택스 요소에 기초하여 움직임 보상 유닛(306) 또는 인트라 예측 유닛(308)이 상기 현재 비디오 블록(예를 들어 텍스처 블록 또는 깊이 블록)에 대한 예측 블록을 생성한 후, 비디오 디코더(300)는, 역변환 유닛(312)으로부터의 상기 레지듀 블록 및 움직임 보상 유닛(306) 또는 인트라 예측 유닛(308)에 의해 생성된 대응하는 예측 블록을 합산하여 디코딩된 비디오 블록을 형성한다. 합산기(316)는 이 합산 동작을 수행하는 구성요소 또는 구성요소들을 나타낸다.
필요하면, 블록화 소산물(blockiness artifact)을 제거하기 위해 디블로킹 필터가 디코딩된 블록에 적용될 수도 있다. 다른 루프 필터(코딩 루프 내에서 또는 코딩 루프 이후에)도 픽셀 전이를 부드럽게 하거나 또는 비디오 품질을 향상시키기 위해 사용될 수도 있다. 그 후 주어진 프레임 또는 픽처 중의 상기 디코딩된 비디오 블록은 디코딩된 픽처 버퍼(314) 내에 저장되고, 이는 후속하는 움직임 보상을 위해 사용되는 기준 픽처를 저장한다. 디코딩된 픽처 버퍼(314)는 또한 차후 디스플레이 장치 상의 표현을 위해 디코딩된 비디오를 저장한다.
일 예에서, 비디오 디코더(300)는 깊이 모델링 테이블 중의 3D 비디오 데이터를 코딩하기 위해 사용되는 깊이 인트라 코딩 모드를 나타내는 신택스 요소를 디코딩한다. 상기 깊이 모델링 테이블은 HEVC 인트라 예측 모드에 대한 신택스와 구분되는 추가적인 깊이 인트라 코딩 모드에 대한 신택스를 포함한다. 추가적으로, 비디오 디코더(300)는 HEVC 인트라 코딩 모드와 다른 일부 깊이 인트라 코딩 모드가 3D 비디오 데이터에 대해 인에이블되는지 여부를 나타내는 플래그 같은 신택스 요소를 디코딩한다. 일부 예에서, 상기 신택스 요소는 모든 깊이 인트라 코딩 모드가 3D 비디오 데이터에 대해 인에블되는지 여부를 나타낼 수 있다. 상기 신택스 요소는 비디오 데이터의 비디오 파라미터 세트(VPS), 시퀀스 파라미터 세트(SPS), 또는 픽처 파라미터 세트(PPS) 중 하나에 포함될 수 있다. 비디오 디코더(300)가 상기 깊이 인트라 코딩 모드가 디코딩된 신택스 요소에 기초하여 인에이블된다고 결정할 때, 비디오 디코더(300)는 상기 깊이 데이터를 코딩하기 위해 사용되는 상기 깊이 인트라 코딩 모드 중 하나를 결정하기 위해 상기 깊이 모델링 테이블을 디코딩한다. 상기 깊이 모델링 테이블은 상기 비디오 데이터의 코딩 유닛(CU) 레벨 또는 예측 유닛(PU) 레벨 중 하나에서 디코딩될 수 있다. 상기 송신은 HEVC 인트라 예측 모드와 분리된 상기 깊이 모델링 테이블 내의 상기 깊이 인트라 코딩 모드를 포함하고, 상기 깊이 인트라 코딩 모드가 인에이블되고 상기 깊이 모델링 테이블이 디코딩되는 때를 나타냄으로써, 디코더(300)에서의 파싱 부담을 경감시킬 수 있다
도 4a 및 도 4b는 3D 장면 표현의 사례를 도시한다. 상기 3D 장면 표현은 텍스처 데이터를 포함하는 도 4a의 텍스처 프레임 및 깊이 데이터를 포함하는 도 4b의 깊이 프레임을 포함한다. 상기 깊이 데이터를 기술하는 깊이 지도는 대응하는 텍스처와 강한 상관관계를 나타내는 일정한 영역 및 예리한 가장자리에 의해 특징지워진다. HEVC 표준에서와 같은 종래의 인트라 예측 모드가 상기 깊이 지도를 코딩하기 위해 사용될 수 있다. HEVC 인트라 예측 모드는 DC(평평한), 평면의(표면에 맞는), 및 33개의 각도 모드를 포함하는 35개의 인트라 예측 모드를 포함한다. 이러한 인트라 예측 모드는 텍스처 프레임 압축을 위해 잘 맞으나, 깊이 프레임을 매우 효율적으로 압축하지 않는다. 텍스처 및 대응하는 깊이 간의 상이한 통계 및 상관관계로 인해, 깊이 프레임 인트라 압축을 위해 추가적인 인트라 코딩 모드가 설계되었다. 추가적인 깊이 인트라 코딩 모드의 예는 깊이 모델링 모드(DMM), 단순 깊이 코딩(SDC) 모드, 및 체인 코딩 모드(CCM)를 포함한다. 상기 SDC 모드는 세그먼트-와이즈 깊이 코딩(SDC) 모드로도 지칭된다.
상기 DMM는 가장자리를 포함하는 깊이 블록의 신호를 근사하기 위한 비직각 블록 파티션을 적용하는 것에 의해 깊이 지도 코딩의 특정한 특성에 적응된다. 깊이 블록은 일정한 값으로 표현되는 각각의 영역을 가지는 DMM 패턴에 의해 특정되는 2개의 영역으로 파티션된다. DMM에서 정의된 2개의 파티셔닝 모델 - 깊이 블록이 직선에 의해 2개의 영역으로 파티션되는 웨젤릿(Wedgelet) 파티셔닝 및 깊이 블록이 2개의 불규칙적 영역으로 파티션되는 윤곽 파티셔닝 - 이 있다. 상기 DMM 웨젤릿 파티셔닝 패턴은 명시적으로 송신되거나(DMM1), 공간적으로 이웃하는 블록에 의해 예측되거나(DMM2), 또는 함께 위치된 텍스처 블록에 의해 예측된다(DMM3). 상기 DMM 윤곽 파티셔닝 패턴은 함께 위치한 텍스처 블록에 의해 예측될 수 있다(DMM4). 다른 예에서, 상기 DMM은 다른 깊이 서브-모드를 포함할 수 있다. 상기 DMM 모드는 깊이 모델링 모드 및 뷰 합성 최적화를 구비하는 3D 비디오 코딩, Karsten Mueller, Philipp Merkle, Gerhard Tech, and Thomas Wiegand: APSIPA 연례 수뇌 회담 및 회의 Conference 2012, 홀리우드의 의사록, CA, 미국, 2012년 12월.에 설명되어 있다.
상기 SDC 모드는 인트라 코딩된 깊이 블록에 대해 상기 깊이 레지듀를 더 효율적으로 나타내기 위해 설계된다. 표준 HEVC에서와 같은 코딩 픽셀-와이즈 레지듀 대신에, 상기 SDC 모드는 예측 유닛(PU)의 각각의 세그먼트에 대한 하나의 깊이 코딩된 레지듀 값을 코딩하고, 변환 및 양자화를 생략한다. SDC는 원래 상기 DC 모드, 상기 평면 모드, 및 상기 깊이 모델링 모드(DMM)를 포함하는 몇몇 모드만을 위해 제안되었으나, 종래의 각(angular) 인트라 예측 모드에까지 확장될 수 있다. 인트라 코딩 모드를 통해 코딩된 각각의 깊이 예측 유닛에 대해, 인코더/디코더는 더 좋은 압축 효율을 달성하기 위해 픽셀-와이즈 레지듀 또는 세그먼트-와이즈 레지듀를 코딩하는 것을 적응적으로 선택할 수 있다.
상기 SDC 모드에서, 상기 깊이 값은 선택적으로 깊이 룩업 테이블(DLT)을 사용하여 인덱스에 매핑될 수 있고, 상기 깊이 룩업 테이블은 전체 시퀀스를 인코딩하기 전 제1 인트라 기간 내의 프레임을 분석함으로써 구축된다. 상기 DLT가 사용되면, 전체 DLT가 시퀀스 파라미터 세트(SPS) 내에서 디코더에 전송되고, 디코딩된 인텍스 값은 상기 DLT에 기초하여 깊이 값으로 역매핑된다. 제1 DLT는 DLT에 따라 깊이 값을 인텍스 값으로 변환하기 위해 사용될 수 있고, 제2 DLT는 인텍스 값을 깊이 값으로 역변환하기 위해 사용될 수 있다. 상기 현재 CU가 상기 SDC 모드에 의해 코딩되는지 여부를 특정하기 위해 추가적인 플래그가 송신된다. 일 실시예에서, 상기 SDC 모드가 2N×2N의 파티션 크기를 갖는 CU에 대해 적용된다. 상기 SDC 모드는 JCT3V-B0036("3D-CE6.h: 선택적인 깊이 룩업 테이브를 구비하는 단순화된 깊이 코딩,"으로 지칭됨, Jager 외, ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11의 3D 비디오 확장 개발에 대한 공동 협업 팀, 2번째 회의: 상하이, 중국, 2012년 10월 13-19일)에 설명되어 있다.
상기 CCM 모드에서, 깊이 블록이 "체인"을 사용하여 송신되는 임의의 파티션 패턴에 의해 특정되는 2개의 영역으로 파티션된다. 체인은 하나의 샘플 및 하나의 그 8-연결성 샘플 간의 연결이다. 각각의 체인은 방향 인텍스가 할당되고, 일련의 연결된 체인된 인덱스가 파티션 패턴을 정의하기 위해 송신된다.
앞에서 지적되었듯이, RDO 과정은 상기 최소값을 갖는 인트라 코딩 모드를 선택하기 위해 사용된다. RDO 과정이 매우 시간-소모적이고 계산적으로 부담이 크므로, 어떤 과정이 PU에 적용하기 위한 인트라 코딩 모드를 식별하기 위해 필요한 RDO 과정의 양을 제한하기 위해 구현될 수 있다.
도 5는 SDC 코딩을 인에이블링할 때 계산 부하를 경감하기 위한 과정(500)의 사례를 도시한다. SDC는 HEVC 인트라 예측 모드 및 깊이 모델링 모드를 포함하여 모든 깊이 인트라 코딩 모드에 적용될 수 있다. 통상의 HEVC 기반의 깊이 인트라 코딩에서, 전체 RDO 과정이 각각의 PU에 대해 비-SDC 코딩 모드 및 SDC 코딩 모드 모두에서 수행된다. 표 1은 SDC 코딩이 인에이블되거나 디스에이블되는지와 무관하게 동일한 인트라 코딩 모드로 코딩된 PU의 백분율을 나타내는 시험 결과를 도시한다. 표 2는 시험 구성 파라미터를 도시한다.
시험 결과
시퀀스 QP = (25,34) QP = (30,39) QP = (35,42)
GTfly 93.4% 94.6% 82.3%
Kendo 91.1% 90.6% 93.1%
Newspaper 82.0% 88.6% 87.6%
PoznanHall 92.6% 89.2% 93.4%
PoznanStreet 80.9% 82.1% 88.5%
Balloon 87.5% 87.7% 90.5%
UndoDancer 94.4% 93.3% 94.2%
Shark 89.5% 88.6% 87.4%
평균 88.9% 89.3% 89.6%
테스트 구성 파라미터
사용될 8-비트 입력 데이터
DMM: ON
비디오 및 깊이의 최대 해상도
텍스처 QP 값: 40, 35, 30, 25
깊이 QP 값: 45, 42, 39, 34
깊이 충실성 항을 가진 VSO: ON
텍스처 SAO: ON 깊이 SAO: OFF
RDQ: ON
상기 시험은 상기 SDC 코딩 옵션을 8개의 시험하는 시퀀스의 제1 24 프레임 및 텍스처 및 깊이에 대한 3쌍의 양자화 파라미터에 대해 인에이블 및 디스에이블하였다. 표 1에 도시된 바와 같이, 약 90%의 PU에 대해, SDC 코딩이 인에이블되거나 디스에이블되는지와 무관하게 동일한 최적의 인트라 코딩 모드가 선택된다. 환언하면, 상기 SDC 코딩 옵션이 디스에이블될 때, 최적의 인트라 코딩 모드의 90%가 상기 SDC 코딩 옵션이 인에이블될 때 최적의 인트라 코딩 모드일 것이다. 결과적으로, 모든 인트라 코딩 모드에 대해 상기 SDC 옵션을 가지는 전체 RD 비용을 계산할 필요하지는 않다. 상기 SDC 옵션이 없는 최적의 인트라 코딩 모드가 상기 전체 RD 비용 계산을 가속화시키기 위해 예측자로 사용될 수 있다.
과정 500은 블록 502에서 전체 RD 비용 계산 목록에 배치하기 위해, HEVC 인트라 예측 모드 및 깊이 모델링 모드를 포함하는 인트라 코딩 모드로부터 후보 모드를 결정함으로써 시작한다. 다른 인트라 코딩 모드도 필요하면 결정 및 배치될 수 있다. 상기 전체 RD 비용 계산 목록을 생성하는 일 예에서, HEVC 예측 모드에 대한 예측 레지듀가 결정되고, 각각의 모드에 대한 각각의 예측 레지듀의 DCT 계수의 절대값을 합산함으로써 절대 변환 차이의 합(SATD) 값이 계산된다. 상기 최소 SATD 값을 가지는 모드가 상기 전체 RD 비용 계산 목록에 배치된다. 일 실시예에서, 상기 전체 RD 비용 계산 목록은 8x8 and 4x4 PU 크기에 대해 8개의 모드 및 64x64, 32x32, 및 16x16 PU 크기에 대해 3개의 모드를 포함한다. 다른 실시예는 다른 개수의 모드를 포함할 수 있다. 그렇지 않으면, 상기 전체 RD 비용 계산 목록은 가능한 후보를 초기에 식별하는 것 없이 모든 HEVC 인트라 예측 모드 및 깊이 모델링 모드(및 임의의 다른 필요한 인트라 코딩 모드)를 포함할 수 있다.
블록 504에서, 상기 디스에이블된 SDC 옵션을 통해 상기 전체 RD 비용이 상기 전체 RD 비용 계산 목록 내의 모든 HEVC 인트라 예측 모드에 대해 계산된다. 블록 506에서 상기 디스에이블된 SDC 옵션을 통해 상기 최소 RD 비용을 가지는 상기 HEVC 인트라 예측 모드가 선택된다. 블록 508에서 그 후 상기 인에이블된 SDC 모드를 통해 상기 전체 RD 비용 계산 목록 중의 선택된 HEVC 인트라 예측 모드 및 임의의 깊이 모델링 모드에 대해 전체 RD 비용 계산이 수행된다. 상기 깊이 모델링 모드가 구체적으로 깊이 지도 압축에 대해 설계되었으므로, 상기 깊이 모델링 모드에 대해서는 상기 SDC 옵션을 항상 인에이블하는 것이 바람직하다. 그러나, 상기 SDC 옵션이 없는 모든 모드로부터 상기 최소 RD 비용을 가지는 모드를 찾기 위해, 블록 504에서 전체 RD 비용 계산이 HEVC 인트라 예측 모드를 가지는 상기 깊이 모델링 모드에 대해 수행될 수 있다.
블록 510에서, 상기 인에이블된 SDC를 통해 상기 최소 RD 비용을 구비하는 상기 인트라 코딩 모드가 식별된다. 블록 512에서 상기 선택된 인트라 예측 모드(상기 디스에이블된 SDC 옵션을 통해 결정된)에 대한 최소 RD 비용 및 상기 식별된 인트라 코딩 모드(상기 인에이블된 SDC를 통해 결정된)에 대한 최소 RD 비용 간의 비교가 이루어진다. 상기 선택된 인트라 예측 모드에 대한 RD 비용이 상기 식별된 인트라 코딩 모드에 대한 RD 비용보다 더 크면, 블록 514에서 상기 식별된 인트라 코딩 모드가 PU를 코딩하기 위해 사용된다. 상기 선택된 인트라 예측 모드에 대한 RD 비용이 상기 식별된 인트라 코딩 모드에 대한 RD 비용보다 더 크지 않으면, 블록 516에서 상기 선택된 인트라 예측 모드가 PU를 코딩하기 위해 사용된다. 그렇지 않으면, 비용이 동일하면, 원하는 대로 상기 선택된 모드 및 상기 식별된 모드 중 하나를 통해 PU의 코딩이 수행될 수 있다.
표 3 및 4는 HEVC 표준의 통상 시험 조건(Common Test Configuration, CTC) 하에서 수행된 과정 500에 대한 샘플 시험 결과를 도시한다. 표 3은 모든 인트라 구성에 대해 CTC 하에서 3개-뷰인 경우에 대해 BD 비율 시험 결과를 도시한다. 표 4는 랜덤 액세스 구성에 대해 CTC 하에서 3개-뷰인 경우에 대해 BD 비율 시험 결과를 도시한다. 상기 표에 따르면, 과정 500이 깊이 지도 압축에 대해 설계되었으므로 텍스처 비디오에 상에는 아무 영향이 없다. 표 3의 모든 인트라의 경우에 대해, Kendo 시퀀스에 대해서는 25%의 인코딩 시간 절약까지, 평균 17%의 인코딩 시간이 절약된다. 상기 전반적인 BD 비트율 손실은 무시할 수 있다고 여겨지는 0.19%일 뿐이다. 사실상 디코딩 및 렌더링 시간 상에 아무 영향이 없다. 표 4의 랜덤 액세의 경우에 대해서는, SDC 코딩이 인트라 깊이 지도 코딩을 위해서만 사용되므로, 성능 변화는 더 적다.
모든 인트라
비디오만 합성만 코딩 &
합성
인코딩
시간
디코딩
시간
렌더링
시간
Balloons 0.00% 0.59% 0.31% 81.8% 98.1% 97.7%
Kendo 0.00% 0.72% 0.32% 75.4% 104.8% 101.3%
Newspaper 0.00% 0.82% 0.24% 82.0% 105.5% 97.4%
GTFly 0.00% -0.15% -0.41% 88.3% 111.0% 105.7%
PoznanHall 0.00% 0.55% 0.33% 83.7% 106.7% 99.5%
PoznanSteet 0.00% 0.39% 0.06% 84.5% 101.9% 99.9%
UndoDancer 0.00% 0.22% 0.13% 83.8% 96.5% 100.0%
Shark 0.00% 0.57% 0.57% 84.5% 98.4% 99.5%
1024x768 0.00% 0.71% 0.29% 80.1% 102.8% 98.8%
1920x1088 0.00% 0.32% 0.14% 85.0% 102.9% 100.9%
평균 0.00% 0.46% 0.19% 83.0% 102.9% 100.1%
랜덤 액세스
비디오만 합성만 코딩 &
합성
인코딩
시간
디코딩
시간
렌더링
시간
Balloons 0.01% 0.12% 0.09% 98.7% 100.0% 99.8%
Kendo -0.05% 0.18% 0.06% 98.6% 99.1% 99.5%
Newspaper 0.08% 0.24% 0.32% 97.7% 99.4% 101.2%
GTFly -0.05% 0.14% -0.20% 96.5% 94.0% 97.7%
PoznanHall 0.18% 0.01% 0.14% 97.4% 102.8% 101.3%
PoznanSteet -0.02% 0.23% 0.08% 97.9% 109.9% 103.7%
UndoDancer -0.09% -0.08% -0.06% 96.2% 100.5% 95.7%
Shark -0.08% 0.03% -0.05% 99.1% 100.2% 98.4%
1024x768 0.02% 0.18% 0.16% 98.3% 99.5% 100.2%
1920x1088 -0.01% 0.06% -0.02% 97.4% 101.5% 99.4%
평균 0.00% 0.11% 0.05% 97.8% 100.7% 99.7%
다른 실시예에서, 블록 506에서 상기 디스에이블된 SDC 옵션을 통해 상기 최소 RD 비용을 가지는 HEVC 인트라 예측 모드를 선택하는 것 대신, 2개 이상의 인트라 예측 모드가 선택될 수 있다. 예를 들어, 상기 인에이블된 SDC를 통한 후속하는 전체 RD 비용 계산에 대해, 상기 디스에이블된 SDC 옵션을 통해 최소 및 제2 최소 RD 비용을 가지는 상기 인트라 예측 모드가 선택될 수 있다. 정수 값 'n'이 상기 디스에이블된 SDC 옵션을 통해 상기 최소 RD 비용ㅇ르 가지는 몇 개의 인트라 예측 모드의 선택을 위해 사용될 수 있다.
다른 실시예에서, 블록 508에서 상기 디스에이블된 SDC 옵션을 통한 최소 RD 비용을 가지는 것에 적합하지 않은 인트라 코딩 모드에 대해, 상기 인에이블된 SDC를 통해 전체 RD 비용 계산을 수행하는 것이 바람직할 수 있다. 상기 전체 RD 비용 계산 목록 중의 하나 이상의 인트라 코딩 모드가 상기 인에이블된 SDC를 통해 전체 RD 비용 계산에 대해 식별될 수 있다. 상기 인에이블된 SDC를 통한 전체 RD 비용 계산에 대해 전체 RD 비용 계산 목록 내에서 한 정수 값이 몇 개의 인트라 코딩 모드를 식별하기 위해 사용될 수 있다. 이렇게 식별된 상기 인트라 코딩 모드는, 상기 전체 RD 비용 계산 목록 내에서의 순서, 인트라 코딩 모드의 우선순위, 또는 임의의 다른 기준에 의해서와 같이, 기준을 변화시키는 것에 기초하여 식별될 수 있다.
다른 실시예에서, 인에이블된 SDC를 통한 전체 RD 비용 계산이 특정 깊이 모델링 모드, 특정 HEVC 인트라 예측 모드, 또는 특정 깊이 모델링 모드 및 특정 HEVC 인트라 예측 모드의 조합으로만 제한될 수 있다.
도 6은 SDC 코딩 인에이블링할 때 계산 부하를 경감하기 위한 과정(600)의 다른 사례를 도시한다. 과정 600은 블록 602에서 전체 RD 비용 계산 목록에 배치하기 위해, HEVC 인트라 예측 모드 및 깊이 모델링 모드로부터 후보 모드를 결정함으로써 시작한다 다른 인트라 코딩 모드도 필요하면 포함될 수 있다. 일 실시예에서, 상기 전체 RD 비용 계산 목록이 위에서 설명된 것처럼 채워질 수 있다. 그렇지 않으면, 상기 전체 RD 비용 계산 목록은 가능한 후보를 초기에 식별하는 것 없이 모든 HEVC 인트라 예측 모드 및 깊이 모델링 모드(및 임의의 다른 필요한 인트라 코딩 모드)를 포함할 수 있다.
블록 604에서, 상기 디스에이블된 SDC 옵션을 통해 상기 전체 RD 비용이 상기 전체 RD 비용 계산 목록 내의 모든 HEVC 인트라 예측 모드에 대해 계산된다. 블록 606에서 상기 디스에이블된 SDC 옵션을 통해 상기 최소 RD 비용을 가지는 상기 HEVC 인트라 예측 모드가 선택된다. 블록 606에서 제2 최소 및 제3 최소 RD 비용을 가지는 인트라 예측 모드와 같은 하나 이상의 추가적인 인트라 예측 모드도 선택될 수 있다.
반복적 절차 608가 상기 전체 RD 비용 계산 목록 내의 각각의 후보 모드에 대해 수행된다. 블록 608에서 확인되는 상기 전체 RD 비용 계산 목록 중의 각각의 후보에 대해, 블록 612에서 상기 최소 RD 비용이 평면 또는 DC 인트라 예측 모드인지 여부에 대해 결정이 이루어진다. 평면 또는 DC 인트라 예측 모드라면, 상기 후보 모드가 평면 또는 DC 인트라 예측 모드이고 제1 문턱값보다 작은 PU 변화량을 갖고 있는지 여부에 대해 결정이 이루어진다. 상기 후보 모드가 평면 또는 DC 인트라 예측 모드가 아니고, PU 변화량이 제1 문턱값보다 작으면, 그 후보 모드는 생략되고 상기 전체 RD 비용 계산 목록 중의 다음 후보 보드가 블록 608에서 확인된다. 상기 PU 변화량은 하기 식에 의해 결정될 수 있다:
Figure 112017001917459-pct00001
여기서 xi는 상기 PU 내의 픽셀값이고, N은 상기 PU 내의 픽셀의 총 수이다. 일 실시예에서, 상기 제1 문턱값은 1이다.
블록 614에서 상기 후보 모드가 평면 또는 DC 인트라 예측 모드 또는 상기 PU 변화량 상기 제1 문턱값보다 더 크면, 그 후보 모드는 상기 인에이블된 SDC 모드를 통한 전체 RD 비용 계산에 대해 블록 616으로 진행한다. 블록 618에서, 상기 전체 RD 비용 계산 목록 중의 모든 후보 모드가 확인되었는지에 대해 결정이 이루어진다. 그렇지 않으면, 다음 후보 모드는 블록 608로 진행된다.
블록 612에서 최소 RD 비용 계산을 가지는 인트라 예측 모드가 평면 또는 DC가 아니면, 절차는, 상기 인에이블된 SDC 모드를 통해 상기 후보 모드가 전체 RD 비용 계산에 대해 확인되는 블록 620으로 흘러간다. 상기 인에이블된 DC 모드를 통한 전체 RD 비용 계산은 평면 또는 DC, DMM인 전체 RD 비용 계산 목록 중의 그러한 후보 모드에 대해 수행되고, 블록 604에서 최소 RD 비용 값의 개수가 식별된다. 상기 인에이블된 DC 모드를 통한 후보 모드 전체 RD 비용 계산에 대한 다른 기준은 전체 RD 비용 계산 목록 중의 순서 및 PU 변화량이 제2 변화량 문턱값보다 큰지 여부에 기초하는 하나 이상의 후보 모드를 포함한다. 이러한 기준이 만족되면, 상기 후보 모드는 상기 인에이블된 DC 모드를 통해 전체 RD 비용 계산에 대해 처리되지 않고, 다음 후보 모드가 확인되고, 하나가 존재하면 블록 608을 통해 처리된다. 일 실시예에서, 상기 제2 문턱값은 4이다.
모든 후보 모드가 전체 RD 비용 계산에 대해 확인된 후, 블록 622에서 상기 인에이블된 SDC 모드를 통한 상기 최소 RD 비용이 식별된다. 블록 624에서 상기 인에이블된 SDC 모드를 통한 상기 최소 RD 비용을 가지는 인트라 코딩 모드 및 상기 인에이블된 SDC를 통한 상기 최소 RD 비용을 가지는 사전에 결정된 인트라 예측 모드 간의 비교가 이루어진다. 상기 인에이블된 SDC 모드를 통한 인트라 코딩 모드가 상기 디스에이블된 SDC 모드를 통한 인트라 예측 모드보다 낮은 RD 비용을 가진다면, 블록 626에서 상기 인에이블된 SDC 모드를 통한 인트라 코딩 모드가 PU에 대해 적용된다. 상기 인에이블된 SDC 모드를 통한 인트라 코딩 모드가 상기 디스에이블된 SDC 모드를 통한 인트라 예측 모드보다 낮은 RD 비용을 가지 않는다면, 블록 628에서 상기 디스에이블된 SDC 모드를 통한 인트라 예측 모드가 PU에 대해 적용된다.
표 5 및 6는, PU 변화량 문턱값 대신, 블록 620 중의 RD 비용 계산 목록 내의 최소 RD 비용 및 제1 모드를 가지는 3개의 인트라 예측 모드가 상기 인에이블된 SDC 모드를 통한 전체 RD 비용 계산에 포함될 때, HEVC 표준의 통상 시험 조건(CTC) 하에서 수행된 과정 600에 대한 샘플 시험 결과를 도시한다. 표 5는 모든 인트라 구성에 대해 CTC 하에서 3개-뷰인 경우에 대해 BD 비율 시험 결과를 도시한다. 표 6은 랜덤 액세스 구성에 대해 CTC 하에서 3개-뷰인 경우에 대해 BD 비율 시험 결과를 도시한다. 15% 이상의 모든 인트라 인코딩 시간 절약이 무시할 수 있는 BD 비트율 손실과 함께 달성되었다.
모든 인트라
V0 V1 V2 PSNR
/Vbr
SNR
/Tbr
합성
/Tbr
인코딩 시간 디코딩
시간
렌더링
시간
Balloons 0% 0% 0% 0.0% 0.1% 0.1% 80.8% 96.8% 104.7%
Kendo 0% 0% 0% 0.0% 0.1% 0.1% 80.6% 115.8% 100.8%
Newspaper 0% 0% 0% 0.0% 0.1% 0.1% 82.6% 89.8% 98.3%
GTFly 0% 0% 0% 0.0% 0.1% 0.1% 83.0% 94.3% 92.5%
PoznanHll 0% 0% 0% 0.0% 0.1% 0.1% 83.7% 101.0% 98.1%
PoznanSt 0% 0% 0% 0.0% 0.0% 0.1% 86.0% 102.3% 99.7%
UndoDance 0% 0% 0% 0.0% 0.0% 0.0% 85.7% 112.6% 98.0%
Shark 0% 0% 0% 0.0% 0.0% 0.1% 85.7% 93.8% 103.6%
1024x768 0% 0% 0% 0.0% 0.1% 0.1% 81.4% 100.8% 101.3%
1920x1088 0% 0% 0% 0.0% 0.1% 0.1% 84.8% 100.8% 98.4%
평균 0% 0% 0% 0.0% .07% .09% 83.5% 100.8% 99.5%
랜덤 액세스
V0 V1 V2 PSNR
/Vbr
SNR
/Tbr
합성
/Tbr
인코딩 시간 디코딩
시간
렌더링
시간
Balloons 0% 0% 0% 0.0% 0.0% 0.1% 97.9% 91.1% 100.7%
Kendo 0% 0% 0% 0.0% 0.1% 0.0% 98.1% 91.3% 98.6%
Newspaper 0% 0% 0% 0.0% 0.1% 0.0% 97.6% 91.4% 95.5%
GTFly 0% 0% 0% 0.0% 0.0% 0.0% 98.9% 99.7% 104.4
PoznanHll 0% 0% 0% 0.1% 0.1% 0.2% 96.9% 102.1% 99.1%
PoznanSt 0% 0% 0% 0.0% 0.1% 0.0% 98.6% 116.8% 99.5%
UndoDance 0% 0% 0% 0.0% 0.0% 0.0% 98.2% 111.1% 100.3%
Shark 0% 0% 0% 0.0% 0.0% 0.0% 99.1% 87.2% 105.2%
1024x768 0% 0% 0% 0.0% 0.0% 0.0% 97.8% 91.3% 98.3%
1920x1088 0% 0% 0% 0.0% 0.1% 0.1% 98.3% 103.4% 101.7%
평균 0% 0% 0% .01% .05% .05% 98.2% 98.8% 100.4%
표 7 및 8은, 전체 RD 계산 목록 내의 제1 모드 대신, 블록 620 중의 RD 비용 계산 목록 내의 최소 RD 비용 및 PU 변화량 문턱값을 가지는 3개의 인트라 예측 모드가 상기 인에이블된 SDC 모드를 통한 전체 RD 비용 계산에 포함될 때, HEVC 표준의 통상 시험 조건(CTC) 하에서 수행된 과정 600에 대한 샘플 시험 결과를 도시한. 표 7은 모든 인트라 구성에 대해 CTC 하에서 3개-뷰인 경우에 대해 BD 비율 시험 결과를 도시한다. 표 8은 랜덤 액세스 구성에 대해 CTC 하에서 3개-뷰인 경우에 대해 BD 비율 시험 결과를 도시한다. 평균적으로, 10% 이상의 모든 인트라 인코딩 시간 절약이 무시할 수 있는 BD 비트율 손실과 함께 달성되었다.
모든 인트라
V0 V1 V2 PSNR
/Vbr
SNR
/Tbr
합성
/Tbr
인코딩 시간 디코딩
시간
렌더링
시간
Balloons 0% 0% 0% 0.0% 0.0% 0.0% 89.7% 103.6% 99.0%
Kendo 0% 0% 0% 0.0% 0.0% 0.0% 88.6% 102.4% 101.6%
Newspaper 0% 0% 0% 0.0% 0.0% 0.0% 93.0% 102.9% 100.9%
GTFly 0% 0% 0% 0.0% 0.0% 0.0% 91.9% 97.0% 107.1%
PoznanHll 0% 0% 0% 0.0% 0.0% 0.0% 85.7% 98.1% 101.2%
PoznanSt 0% 0% 0% 0.0% 0.0% 0.0% 92.3% 98.7% 99.2%
UndoDance 0% 0% 0% 0.0% 0.0% 0.0% 87.6% 105.3% 99.8%
Shark 0% 0% 0% 0.0% 0.0% 0.0% 90.6% 103.9% 103.2%
1024x768 0% 0% 0% 0.0% 0.0% 0.0% 90.4% 103.0% 100.5%
1920x1088 0% 0% 0% 0.0% 0.0% 0.0% 89.6% 100.6% 102.1%
평균 0% 0% 0% 0.0% .01% .01% 89.9% 101.5% 101.5%
랜덤 액세스
V0 V1 V2 PSNR
/Vbr
SNR
/Tbr
합성
/Tbr
인코딩 시간 디코딩
시간
렌더링
시간
Balloons 0% 0% 0.2% 0.0% 0.0% 0.0% 98.9% 93.6% 101.9%
Kendo 0% -0.2% 0% 0.0% -0.1% -0.1% 98.6% 92.4% 100.0%
Newspaper 0% 0% 0.1% 0.0% 0.0% -0.1% 99.5% 108.9% 102.6%
GTFly 0% 0% 0% 0.0% 0.0% 0.0% 99.3% 105.1% 99.3%
PoznanHll 0% -0.1% -0.2% -0.1% -0.1% 0.2% 98.0% 105.3% 99.7%
PoznanSt 0% 0.1% 0% 0.0% 0.0% 0.0% 98.9% 88.6% 99.8%
UndoDance 0% -0.1% -0.1% 0.0% 0.0% 0.0% 98.3% 93.2% 98.2%
Shark 0% -0.1% 0% 0.0% 0.0% 0.0% 99.1% 104.9% 98.9%
1024x768 0% 0% 0.1% 0.0% 0.0% 0.0% 99.0% 98.3% 101.5%
1920x1088 0% -0.1% -0.1% 0.0% 0.1% 0.1% 98.7% 99.4% 99.2%
평균 0% -.05% -.02% -.02% -.02% -.01% 98.8% 99.0% 100.1%
도 7은 여기에 개시된 하나 이상의 실시예를 구현하기에 적당한, 단순화된 일반적 목적의 컴퓨팅 구성요소(700)를 도해한다.
위에서 비디오 인코더(200) 및 비디오 디코더(300)에 대해 설명된 구성요소는, 부가된 필요한 작업량을 다루기에 충분한 처리 능력, 메모리 자원, 및 네트워크 스루풋 성능을 구비하는 컴퓨터 또는 네트워크 구성요소 같은 임의의 일반 목적의 계산 구성요소 상에 구현될 수 있다. 상기 계산 구성요소(700)는, 보조 저장장치(704), ROM(read only memory), RAM(random access memory), 입력/출력(I/O) 장치(710), 및 네트워크/구성요소 연결 장치(712)와 통신하는 프로세서(702)(중앙 처리 유닛 또는 CPU로 지칭될 수 있는)를 포함한다. 상기 프로세서(702) 하나 이상의 CPU 칩으로서 구현될 수 있거나, 하나 이상의 주문형 반도체(ASIC)의 부분일 수 있다.
상기 보조 저장장치(704)는 전형적으로 하나 이상의 디스크 드라이브 또는 테이프 드라이브를 포함하고, RAM(708)이 모든 과업 데이터를 저장하기에 불충분하면 데이터의 비휘발성 저장장치를 위해 및 오버플로우 데이터 저장 장치로서 사용된다. 보조 저장장치(704)는 프로그램이 실행을 위해 선택될 때 RAM(708)에 로딩되는 프로그램을 저장하기 위해 사용될 수 있다. 상기 ROM(706)은 명령어 및 아마도 프로그램 실행 동안 독출되는 데이터를 저장하깅 위해 사용된다. ROM(706)은 보조 저장장치(704)의 더 큰 메모리 용량에 비해 전형적으로 적은 메모리 용량을 가진 비휘발성 메모리 장치이다. 상기 RAM(708)은 휘발성 데이터를 저장하고 아마도 명령어를 저장하기 위해 사용된다. ROM(706) 및 RAM(708)에 액세스하는 것은 모두 전형적으로 보조 저장장치(704)에 액세스하는 것보다 빠르다. 비디오 인코더(200) 및 비디오 디코더(300) 내의 각각의 구성요소의 기능에 기초하여 추가적인 프로세서 또는 메모리 장치가 결합될 수 있다.
요약하면, SDC를 구비하는 및 구비하지 않는 최적의 인트라 코딩 모드 간의 강한 상관관계를 조사함으로써, 예측자로서의 SDC가 없는 최적의 인트라 예측 모드를 사용하여 불필요한 SDC 전체 RD 비용 계산이 회피될 수 있다. 무시할 수 있는 비트율 손실로써 상당한 시간 절약이 달성된다. 3D-HEVC와 일치하는 깊이 지도의 코딩 모드 결정의 단순화를 위한 다양한 기술들이, 깊이 모델링 모드(DMM), 단순 깊이 코딩(SDC) 모드, 및 체인 코딩 모드(CCM)을 포함하는 깊이 인트라 코딩 모드과 관련하여 설명되었다. 상기 기술은 인터 SDC 모드와 같은 다른 깊이 인트라 코딩 모드 및 깊이 인터 코딩 모드에로 확장될 수 있다.
일부 실시예에서, 상기 하나 이상의 장치의 일부 또는 전체 기능 또는 프로세스가, 컴퓨터 판독가능한 프로그램 코드로 형성되고 컴퓨터 판독가능한 매체 내에 내장된 컴퓨터 프로그램에 의해 구현 또는 지원된다. "코드"라는 어구는 소스 코드, 목적 코드, 및 실행가능한 코드를 포함하는 임의의 형태의 컴퓨터 코드를 포함한다. "컴퓨터 판독가능한 매체"는 ROM(read only memory), RAM(random access 메모리), 하드 디스크 드라이브, 콤팩트 디스크(CD), 디지털 비디오 디스크(DVD), 또는 임의의 다른 형태의 메모리 같은, 컴퓨터에 의해 액세스될 수 있는 임의의 형태의 매체를 포함한다.
본 특허 문서 전체에 걸쳐 사용되는 일부 단어 및 어구의 정의를 설명하는 것이 유리할 수 있다. "포함한다" 및 "이루어진다"는 용어는, 그 파생어도, 제한 없는 포함을 의미한다. "또는"이란 용어는 및/또는을 의미하는 포괄적인 것이다(inclusive). "~과 관련된" 및 "그와 관련된"은, 그 파생어도, 포함한다, ~에 포함된다, ~와 서로 연결된다, 함유한다, ~에 함유되어 있다. ~에 연결된다, ~와 결합된다, ~와 통신할 수 있다, ~와 협력한다, 인터리브한다, ~과 병치하다, ~과 인접하다, ~에 속박된다, ~을 구비한다, ~을 소유한다 등을 의미한다.
이 개시가 일부 실시예 및 일반적으로 관련된 방법을 설명했지만, 이러한 실시예 및 방법의 변형 및 치환이 이 기술분야의 통상의 기술자에게 명백하고, 그가 즉시 알 수 있을 것이다. 따라서 예시적인 실시예의 상기 설명이 이 개시를 정의하거나 제한하지 않는다. 하기 청구항에 의해 정의된 이 개시의 범위로부터 벗어남 없이 다른 변화, 대체, 및 변형도 가능하다.

Claims (22)

  1. 고효율 비디오 코딩 중 계산 부하의 경감 방법으로서,
    선택된 인트라 코딩 모드의 전체 율 왜곡(rate distortion) 계산 목록을 생성하는 단계 - 상기 인트라 코딩 모드는 인트라 예측 모드와 깊이 모델링 모드를 포함함 -;
    상기 전체 율 왜곡 계산 목록 중의 각각의 인트라 예측 모드에 대한 율 왜곡 비용을 결정하고 최소 율 왜곡 비용을 가지는 최소 율 왜곡 비용 인트라 예측 모드를 선택하는 단계;
    인에이블된 세그먼트-와이즈(segment-wise) 깊이 코딩 모드를 통해 특정 인트라 예측 모드에 대해 율 왜곡 비용을 계산하는 단계;
    상기 인에이블된 세그먼트-와이즈 깊이 코딩 모드에 대해 획득된 상기 특정 인트라 예측 모드의 율 왜곡 비용 및 디스에이블된 상기 세그먼트-와이즈 깊이 코딩 모드에 대해 획득된 상기 최소 율 왜곡 비용 인트라 예측 모드의 율 왜곡 비용을 비교하는 단계; 및
    상기 특정 인트라 예측 모드 및 상기 최소 율 왜곡 비용을 가지는 최소 율 왜곡 비용 인트라 예측 모드 중 하나를 예측 유닛에 적용하는 단계
    를 포함하고,
    상기 세그먼트-와이즈 깊이 코딩 모드가 상기 결정에서 각각의 인트라 예측 모드에 대해 디스에이블되고,
    인에이블된 상기 세그먼트-와이즈 깊이 코딩 모드를 통해 특정 인트라 예측 모드에 대해 율 왜곡 비용을 계산할지 여부를 결정하기 위해 확인 조건을 적용하는 단계를 더 포함하는,
    계산 부하의 경감 방법.
  2. 제1항에 있어서,
    상기 확인 조건은 적어도,
    상기 최소 율 왜곡 비용 인트라 예측 모드가 DC 모드인지 여부를 확인하는 것;
    상기 최소 율 왜곡 비용 인트라 예측 모드가 평면 모드인지 여부를 확인하는 것;
    상기 특정 인트라 예측 모드가 깊이 모델링 모드인지 여부를 확인하는 것;
    상기 특정 인트라 예측 모드가 DC 모드인지 여부를 확인하는 것;
    상기 특정 인트라 예측 모드가 평면 모드인지 여부를 확인하는 것; 및
    상기 특정 인트라 예측 모드가 상기 전체 율 왜곡(RD) 계산 목록 중의 처음 3개 모드 중 임의의 하나와 동일한지 여부를 확인하는 것
    중 임의의 하나를 포함하는, 계산 부하의 경감 방법.
  3. 제1항에 있어서,
    상기 확인 조건은 문턱값으로 블록 변화량을 확인하는 것을 포함하는, 계산 부하의 경감 방법.
  4. 제1항에 있어서,
    인에이블된 상기 세그먼트-와이즈 깊이 코딩 모드를 통해 특정 인트라 예측 모드에 대해 율 왜곡 비용을 계산하는 단계는 특정 확인 조건에 대해서는 수행되지 않는, 계산 부하의 경감 방법.
  5. 제1항에 있어서,
    제2 최소 율 왜곡 비용을 가지는 제2 인트라 예측 모드를 선택하고 상기 제2 인트라 예측 모드를 상기 계산하는 단계 및 비교하는 단계에 포함시키는 단계; 또는
    제3 최소 율 왜곡 비용을 가지는 제3 인트라 예측 모드를 선택하고 상기 제3 인트라 예측 모드를 상기 계산하는 단계 및 비교하는 단계에 포함시키는 단계; 또는
    상기 최소 율 왜곡 비용을 가지고 있지 않아도 상기 계산 목록으로부터 제2 인트라 예측 모드를 선택하고 상기 제2 인트라 예측 모드를 상기 계산하는 단계 및 비교하는 단계에 포함시키는 단계
    를 더 포함하는 계산 부하의 경감 방법.
  6. 제5항에 있어서,
    상기 제2 인트라 예측 모드는 상기 계산 목록 중의 제1 엔트리이거나, 또는 상기 제2 인트라 예측 모드는 상기 계산 목록 중의 제2 엔트리이거나, 또는 상기 제2 인트라 예측 모드는 상기 계산 목록 중의 제3 엔트리인, 계산 부하의 경감 방법.
  7. 제1항에 있어서,
    평면 인트라 예측 모드 또는 DC 인트라 예측 모드인 특정 인트라 예측 모드에 응답하여 상기 특정 인트라 예측 모드에 대한 율 왜곡 비용을 계산할지 여부를 결정하는 단계를 더 포함하는 계산 부하의 경감 방법.
  8. 제1항에 있어서,
    문턱값보다 더 큰 예측 유닛 변화량에 응답하여 특정 인트라 예측 모드에 대한 율 왜곡 비용을 계산할지 여부를 결정하는 단계를 더 포함하는 계산 부하의 경감 방법.
  9. 고효율 비디오 코딩 중 계산 부하의 경감 장치로서,
    데이터 및 명령 코드를 저장하도록 구성되는 메모리; 및
    상기 명령 코드를 실행하면,
    선택된 인트라 코딩 모드의 전체 율 왜곡(rate distortion) 비용 계산 목록을 생성하고 - 상기 인트라 코딩 모드는 인트라 예측 모드 및 깊이 모델링 모드를 포함함 -;
    상기 전체 율 왜곡 비용 계산 목록 중의 각각의 인트라 예측 모드에 대한 율 왜곡 비용을 결정하고 최소 율 왜곡 비용을 가지는 최소 율 왜곡 비용 인트라 예측 모드를 선택하고;
    인에이블된 세그먼트-와이즈(segment-wise) 깊이 코딩 모드를 통해 특정 인트라 예측 모드에 대해 율 왜곡 비용을 계산하고;
    상기 인에이블된 세그먼트-와이즈 깊이 코딩 모드에 대해 획득된 상기 특정 인트라 예측 모드의 율 왜곡 비용 및 디스에이블된 세그먼트-와이즈 깊이 코딩 모드에 대해 획득된 상기 최소 율 왜곡 비용 인트라 예측 모드의 율 왜곡 비용을 비교하고;
    상기 특정 인트라 예측 모드 및 상기 최소 율 왜곡 비용을 가지는 최소 율 왜곡 비용 인트라 예측 모드 중 하나를 예측 유닛에 적용하도록 구성되는 프로세서
    를 포함하고,
    상기 세그먼트-와이즈 깊이 코딩 모드가 상기 결정에서 각각의 인트라 예측 모드에 대해 디스에이블되고,
    상기 프로세서는,
    인이에블된 상기 세그먼트-와이즈 깊이 코딩 모드를 통해 특정 인트라 예측 모드에 대해 율 왜곡 비용을 계산할지 여부를 결정하기 위해 확인 조건을 적용하도록 더 구성되는,
    계산 부하의 경감 장치.
  10. 제9항에 있어서,
    상기 확인 조건은 적어도,
    상기 최소 율 왜곡 비용 인트라 예측 모드가 DC 모드인지 여부를 확인하는 것;
    상기 최소 율 왜곡 비용 인트라 예측 모드가 평면 모드인지 여부를 확인하는 것;
    상기 특정 인트라 예측 모드가 깊이 모델링 모드인지 여부를 확인하는 것;
    상기 특정 인트라 예측 모드가 DC 모드인지 여부를 확인하는 것;
    상기 특정 인트라 예측 모드가 평면 모드인지 여부를 확인하는 것; 및
    상기 특정 인트라 예측 모드가 상기 전체 율 왜곡(RD) 계산 목록 중의 처음 3개 모드 중 임의의 하나와 동일한지 여부를 확인하는 것
    중 임의의 하나를 포함하는, 계산 부하의 경감 장치.
  11. 제9항에 있어서,
    상기 확인 조건은 문턱값으로 블록 변화량을 확인하는 것을 포함하는, 계산 부하의 경감 장치.
  12. 제9항에 있어서,
    인에이블된 상기 세그먼트-와이즈 코딩 모드를 통해 특정 인트라 예측 모드에 대해 율 왜곡 비용을 계산하는 단계는 특정 확인 조건에 대해서는 수행되지 않는, 계산 부하의 경감 장치.
  13. 제9항에 있어서,
    상기 프로세서는,
    제2 최소 율 왜곡 비용을 가지는 제2 인트라 예측 모드를 선택하고 상기 제2 인트라 예측 모드를 상기 계산하는 과정 및 비교하는 과정에 포함시키거나; 또는
    제3 최소 율 왜곡 비용을 가지는 제3 인트라 예측 모드를 선택하고 상기 제3 인트라 예측 모드를 상기 계산하는 과정 및 비교하는 과정에 포함시키거나; 또는
    상기 최소 율 왜곡 비용을 가지고 있지 않아도 상기 계산 목록으로부터 제2 인트라 예측 모드를 선택하고 상기 제2 인트라 예측 모드를 상기 계산하는 과정 및 비교하는 과정에 포함시키도록 더 구성되는, 계산 부하의 경감 장치.
  14. 제13항에 있어서,
    상기 제2 인트라 예측 모드는 상기 계산 목록 중의 제1 엔트리이거나, 또는 상기 제2 인트라 예측 모드는 상기 계산 목록 중의 제2 엔트리이거나, 또는 상기 제2 인트라 예측 모드는 상기 계산 목록 중의 제3 엔트리인, 계산 부하의 경감 장치.
  15. 제9항에 있어서,
    상기 프로세서는,
    평면 인트라 예측 모드 또는 DC 인트라 예측 모드인 특정 인트라 예측 모드에 응답하여 상기 특정 인트라 예측 모드에 대한 율 왜곡 비용을 계산할지 여부를 결정하도록 더 구성되는, 계산 부하의 경감 장치.
  16. 제9항에 있어서,
    상기 프로세서는,
    문턱값보다 더 큰 예측 유닛 변화량에 응답하여 특정 인트라 예측 모드에 대한 율 왜곡 비용을 계산할지 여부를 결정하도록 더 구성되는, 계산 부하의 경감 장치.
  17. 고효율 비디오 코딩 중 계산 부하를 경감시키기 위한 코드를 포함하는, 비일시적인 컴퓨터가 판독 가능한 매체로서,
    상기 코드가 실행되면,
    선택된 인트라 코딩 모드의 전체 율 왜곡(rate distortion) 비용 계산 목록을 생성하고 - 상기 인트라 코딩 모드는 인트라 예측 모드 및 깊이 모델링 모드를 포함함 -;
    상기 전체 율 왜곡 비용 계산 목록 중의 각각의 인트라 예측 모드에 대한 율 왜곡 비용을 결정하고 최소 율 왜곡 비용을 가지는 최소 율 왜곡 비용 인트라 예측 모드를 선택하고;
    인에이블된 세그먼트-와이즈(segment-wise) 깊이 코딩 모드를 통해 특정 인트라 예측 모드에 대해 율 왜곡 비용을 계산하고;
    상기 인에이블된 세그먼트-와이즈 깊이 코딩 모드에 대해 획득된 상기 특정 인트라 예측 모드의 율 왜곡 비용 및 디스에이블된 세그먼트-와이즈 깊이 코딩 모드에 대해 획득된 상기 최소 율 왜곡 비용 인트라 예측 모드의 율 왜곡 비용을 비교하고;
    상기 특정 인트라 예측 모드 및 상기 최소 율 왜곡 비용을 가지는 최소 율 왜곡 비용 인트라 예측 모드 중 하나를 예측 유닛에 적용하도록 작동가능하고,
    상기 세그먼트-와이즈 깊이 코딩 모드가 상기 결정에서 각각의 인트라 예측 모드에 대해 디스에이블되고,
    상기 코드는,
    인이에블된 상기 세그먼트-와이즈 깊이 코딩 모드를 통해 특정 인트라 예측 모드에 대해 율 왜곡 비용을 계산할지 여부를 결정하기 위해 확인 조건을 적용하도록 더 작동가능한,
    비일시적인 컴퓨터가 판독 가능한 매체.
  18. 제17항에 있어서,
    상기 확인 조건은 적어도,
    상기 최소 율 왜곡 비용 인트라 예측 모드가 DC 모드인지 여부를 확인하는 것;
    상기 최소 율 왜곡 비용 인트라 예측 모드가 평면 모드인지 여부를 확인하는 것;
    상기 특정 인트라 예측 모드가 깊이 모델링 모드인지 여부를 확인하는 것;
    상기 특정 인트라 예측 모드가 DC 모드인지 여부를 확인하는 것;
    상기 특정 인트라 예측 모드가 평면 모드인지 여부를 확인하는 것;
    상기 특정 인트라 예측 모드가 상기 전체 율 왜곡(RD) 계산 목록 중의 처음 3개 모드 중 임의의 하나와 동일한지 여부를 확인하는 것; 및
    문턱값을 가지는 블록 변화량을 확인하는 것
    중 임의의 하나를 포함하는, 비일시적인 컴퓨터가 판독 가능한 매체.
  19. 제17항에 있어서,
    상기 코드는,
    제2 최소 율 왜곡 비용을 가지는 제2 인트라 예측 모드를 선택하고 상기 제2 인트라 예측 모드를 상기 계산하는 단계 및 비교하는 단계에 포함시키거나; 또는
    제3 최소 율 왜곡 비용을 가지는 제3 인트라 예측 모드를 선택하고 상기 제3 인트라 예측 모드를 상기 계산하는 단계 및 비교하는 단계에 포함시키거나; 또는
    상기 최소 율 왜곡 비용을 가지고 있지 않아도 상기 계산 목록으로부터 제2 인트라 예측 모드를 선택하고 상기 제2 인트라 예측 모드를 상기 계산하는 단계 및 비교하는 단계에 포함시키도록 더 작동가능한, 비일시적인 컴퓨터가 판독 가능한 매체.
  20. 제19항에 있어서,
    상기 제2 인트라 예측 모드는 상기 계산 목록 중의 제1 엔트리이거나, 또는 상기 제2 인트라 예측 모드는 상기 계산 목록 중의 제2 엔트리이거나, 또는 상기 제2 인트라 예측 모드는 상기 계산 목록 중의 제3 엔트리인, 비일시적인 컴퓨터가 판독 가능한 매체.
  21. 삭제
  22. 삭제
KR1020177000475A 2014-06-26 2015-06-26 고효율 비디오 코딩 중 계산 부하의 경감 방법 및 장치 KR101936663B1 (ko)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201462017625P 2014-06-26 2014-06-26
US62/017,625 2014-06-26
US201462027386P 2014-07-22 2014-07-22
US62/027,386 2014-07-22
PCT/US2015/038042 WO2015200822A1 (en) 2014-06-26 2015-06-26 Method and device for reducing a computational load in high efficiency video coding

Publications (2)

Publication Number Publication Date
KR20170018385A KR20170018385A (ko) 2017-02-17
KR101936663B1 true KR101936663B1 (ko) 2019-01-09

Family

ID=54931994

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020177000475A KR101936663B1 (ko) 2014-06-26 2015-06-26 고효율 비디오 코딩 중 계산 부하의 경감 방법 및 장치

Country Status (6)

Country Link
US (1) US10085028B2 (ko)
EP (1) EP3140988B1 (ko)
JP (1) JP6308449B2 (ko)
KR (1) KR101936663B1 (ko)
CN (1) CN106464880B (ko)
WO (1) WO2015200822A1 (ko)

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104410863B (zh) * 2014-12-11 2017-07-11 上海兆芯集成电路有限公司 图像处理器以及图像处理方法
KR101621358B1 (ko) * 2015-04-16 2016-05-17 아주대학교 산학협력단 Hevc 부호화 장치 및 그 인트라 예측 모드 결정 방법
US10123045B2 (en) * 2015-07-24 2018-11-06 Qualcomm Incorporated Modification to block size for transform mode in display stream compression
KR20170058871A (ko) * 2015-11-19 2017-05-29 한국전자통신연구원 화면내 예측 모드 부호화/복호화 방법 및 장치
KR20170058837A (ko) * 2015-11-19 2017-05-29 한국전자통신연구원 화면내 예측모드 부호화/복호화 방법 및 장치
EP3403403B1 (en) * 2016-01-12 2023-06-07 Shanghaitech University Calibration method and apparatus for panoramic stereo video system
US20180131936A1 (en) * 2016-11-10 2018-05-10 Intel Corporation Conversion buffer to decouple normative and implementation data path interleaving of video coefficients
US10291925B2 (en) * 2017-07-28 2019-05-14 Intel Corporation Techniques for hardware video encoding
EP3673656A4 (en) * 2017-08-22 2020-07-01 Panasonic Intellectual Property Corporation of America IMAGE ENCODER, IMAGE DECODER, IMAGE ENCODING METHOD, AND IMAGE DECODING METHOD
CN110113601B (zh) * 2019-04-11 2023-01-06 中南大学 基于视频图片纹理特征的hevc帧内快速算法选择方法
CN110611819B (zh) * 2019-08-01 2021-07-27 杭州当虹科技股份有限公司 一种提升h.264中b帧质量的编码方法
CN112995672B (zh) * 2021-02-04 2022-11-18 杭州电子科技大学 一种基于参数选择的视频编码算法优化方法

Family Cites Families (41)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6037987A (en) * 1997-12-31 2000-03-14 Sarnoff Corporation Apparatus and method for selecting a rate and distortion based coding mode for a coding system
CN1206864C (zh) * 2002-07-22 2005-06-15 中国科学院计算技术研究所 结合率失真优化的码率控制的方法及其装置
KR20050061762A (ko) * 2003-12-18 2005-06-23 학교법인 대양학원 부호화 모드 결정방법, 움직임 추정방법 및 부호화 장치
US7792188B2 (en) 2004-06-27 2010-09-07 Apple Inc. Selecting encoding types and predictive modes for encoding video data
US7944965B2 (en) * 2005-12-19 2011-05-17 Seiko Epson Corporation Transform domain based distortion cost estimation
KR100773761B1 (ko) * 2006-09-14 2007-11-09 한국전자통신연구원 동영상 부호화 장치 및 방법
US9467699B2 (en) * 2008-12-03 2016-10-11 Hfi Innovation Inc. Method for performing parallel coding with ordered entropy slices, and associated apparatus
CN101836454B (zh) * 2008-12-03 2012-08-22 联发科技股份有限公司 对有序熵切片执行平行cabac码处理的方法及装置
KR101503269B1 (ko) * 2010-04-05 2015-03-17 삼성전자주식회사 영상 부호화 단위에 대한 인트라 예측 모드 결정 방법 및 장치, 및 영상 복호화 단위에 대한 인트라 예측 모드 결정 방법 및 장치
US20110317757A1 (en) * 2010-06-25 2011-12-29 Qualcomm Incorporated Intra prediction mode signaling for finer spatial prediction directions
US9661338B2 (en) * 2010-07-09 2017-05-23 Qualcomm Incorporated Coding syntax elements for adaptive scans of transform coefficients for video coding
US10992958B2 (en) * 2010-12-29 2021-04-27 Qualcomm Incorporated Video coding using mapped transforms and scanning modes
US9398313B2 (en) * 2010-12-29 2016-07-19 Nokia Technologies Oy Depth map coding
US8913662B2 (en) * 2011-01-06 2014-12-16 Qualcomm Incorporated Indicating intra-prediction mode selection for video coding using CABAC
US8902982B2 (en) * 2011-01-17 2014-12-02 Samsung Electronics Co., Ltd. Depth map coding and decoding apparatus and method
US9485517B2 (en) * 2011-04-20 2016-11-01 Qualcomm Incorporated Motion vector prediction with motion vectors from multiple views in multi-view video coding
WO2012171113A1 (en) * 2011-06-14 2012-12-20 Zhou Wang Method and system for structural similarity based rate-distortion optimization for perceptual video coding
US9602839B2 (en) * 2011-06-15 2017-03-21 Futurewei Technologies, Inc. Mode dependent intra smoothing filter table mapping methods for non-square prediction units
US9699456B2 (en) * 2011-07-20 2017-07-04 Qualcomm Incorporated Buffering prediction data in video coding
CN103283222B (zh) * 2011-09-13 2016-10-26 寰发股份有限公司 基于最可能模式的帧内预测模式的方法及装置
US20130163664A1 (en) * 2011-12-22 2013-06-27 Qualcomm Incorporated Unified partition mode table for intra-mode coding
US9445076B2 (en) * 2012-03-14 2016-09-13 Qualcomm Incorporated Disparity vector construction method for 3D-HEVC
US10085024B2 (en) * 2012-04-13 2018-09-25 Qualcomm Incorporated Lookup table for rate distortion optimized quantization
US9344727B2 (en) * 2012-05-14 2016-05-17 Ati Technologies Ulc Method of using a reduced number of macroblock coding modes in a first view based on total coding mode complexity values of macroblocks in second view
WO2014005248A1 (en) * 2012-07-02 2014-01-09 Qualcomm Incorporated Intra-coding of depth maps for 3d video coding
CN103533374B (zh) * 2012-07-06 2018-02-16 乐金电子(中国)研究开发中心有限公司 一种视频编码、解码的方法及装置
KR102216585B1 (ko) * 2013-01-04 2021-02-17 삼성전자주식회사 깊이 영상의 부호화 장치 및 복호화 장치, 부호화 방법 및 복호화 방법
EP2944082B1 (en) * 2013-01-11 2019-08-21 Huawei Technologies Co., Ltd. Method and apparatus of depth prediction mode selection
US9426473B2 (en) * 2013-02-01 2016-08-23 Qualcomm Incorporated Mode decision simplification for intra prediction
US9148667B2 (en) * 2013-02-06 2015-09-29 Qualcomm Incorporated Intra prediction mode decision with reduced storage
US9516306B2 (en) * 2013-03-27 2016-12-06 Qualcomm Incorporated Depth coding modes signaling of depth data for 3D-HEVC
US10129542B2 (en) * 2013-10-17 2018-11-13 Futurewei Technologies, Inc. Reference pixel selection and filtering for intra coding of depth map
WO2015085449A1 (en) * 2013-12-13 2015-06-18 Qualcomm Incorporated Signaling of simplified depth coding (sdc) for depth intra-and inter – prediction modes in 3d video coding
US9756359B2 (en) * 2013-12-16 2017-09-05 Qualcomm Incorporated Large blocks and depth modeling modes (DMM'S) in 3D video coding
JP2017505037A (ja) * 2013-12-26 2017-02-09 サムスン エレクトロニクス カンパニー リミテッド デプス符号化方法及びその装置、デプス復号化方法及びその装置
JP6312854B2 (ja) * 2013-12-30 2018-04-18 クゥアルコム・インコーポレイテッドQualcomm Incorporated 3dビデオコーディングにおけるデルタdc残差コーディングの簡易化
US10306265B2 (en) * 2013-12-30 2019-05-28 Qualcomm Incorporated Simplification of segment-wise DC coding of large prediction blocks in 3D video coding
KR101621854B1 (ko) * 2014-02-21 2016-05-17 연세대학교 산학협력단 Tsm 율-왜곡 최적화 방법, 그를 이용한 인코딩 방법 및 장치, 그리고 영상 처리 장치
EP3117616A4 (en) * 2014-03-13 2017-11-08 Qualcomm Incorporated Constrained depth intra mode coding for 3d video coding
JP6407423B2 (ja) * 2014-06-26 2018-10-17 ホアウェイ・テクノロジーズ・カンパニー・リミテッド 高効率映像符号化においてデプスベースのブロック分割を提供するための方法および装置
US9432668B1 (en) * 2016-03-15 2016-08-30 NGCodec Inc. Apparatus and method for inter and intra mode selection and block partitioning

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
GU et al. Simplified Depth Intra Mode Selection for 3D Video Compression.IEEE International Symposium on Circuits and Systems on 1-5 June 2014(2014.06.05.)*
Khan et al. An adaptive complexity reduction scheme with fast prediction unit decision for HEVC intra encoding, Image Processing (ICIP), 2013 20th IEEE International Conference on(2013.09.18.)*
Zhang et al. Interlayer Simplified Depth Coding for Quality Scalability on 3D High Efficiency Video Coding, Published 2014 in The ScientificWorldJournal(2014.3.16.)*

Also Published As

Publication number Publication date
EP3140988B1 (en) 2019-09-11
EP3140988A1 (en) 2017-03-15
JP6308449B2 (ja) 2018-04-11
WO2015200822A1 (en) 2015-12-30
CN106464880B (zh) 2019-05-10
US10085028B2 (en) 2018-09-25
EP3140988A4 (en) 2017-06-07
CN106464880A (zh) 2017-02-22
JP2017525313A (ja) 2017-08-31
KR20170018385A (ko) 2017-02-17
US20150381988A1 (en) 2015-12-31

Similar Documents

Publication Publication Date Title
KR101936663B1 (ko) 고효율 비디오 코딩 중 계산 부하의 경감 방법 및 장치
KR101894512B1 (ko) 고효율 비디오 코딩 중 깊이 기반 블록 파티셔닝의 제공 방법 및 장치
US10848759B2 (en) Intra prediction mode-based image processing method and apparatus therefor
CN110199524B (zh) 一种在计算设备中实现的方法
KR102549987B1 (ko) 영상 처리 방법 및 이를 위한 장치
KR20180001485A (ko) 변환 기반의 영상 부호화/복호화 방법 및 장치
KR102424088B1 (ko) 비디오 코딩을 위한 공간 변화 변환
US20210368193A1 (en) Video coding using intra sub-partition coding mode
US12003737B2 (en) Coding of transform coefficients in video coding
EP4014491A1 (en) Methods and apparatus of video coding using palette mode
KR102453208B1 (ko) 4:4:4 크로마 포맷의 비디오 코딩 방법 및 장치
KR102358760B1 (ko) 비디오 신호의 처리 방법 및 장치
JP7177952B2 (ja) パレットモードを用いたビデオコーディングの方法および装置
WO2023154574A1 (en) Methods and devices for geometric partitioning mode with adaptive blending
WO2023158765A1 (en) Methods and devices for geometric partitioning mode split modes reordering with pre-defined modes order
WO2023212254A1 (en) Methods and devices for high precision intra prediction
KR101603693B1 (ko) 픽셀 그룹별 픽셀값 보상을 위한 비디오 부호화 방법과 그 장치, 및 픽셀 그룹별 픽셀값 보상을 위한 비디오 복호화 방법과 그 장치
WO2023141338A1 (en) Methods and devices for geometric partitioning mode with split modes reordering
KR101627193B1 (ko) 픽셀 그룹별 픽셀값 보상을 위한 비디오 부호화 방법과 그 장치, 및 픽셀 그룹별 픽셀값 보상을 위한 비디오 복호화 방법과 그 장치
WO2021062017A1 (en) Methods and apparatus of performing rate-distortion analysis for palette mode
WO2023192336A1 (en) Methods and devices for high precision intra prediction
WO2023081322A1 (en) Intra prediction modes signaling
KR20140125463A (ko) 영상의 고속 부호화를 위한 방법
CN117957838A (zh) 帧内预测模式信令

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