KR102350072B1 - 엔트로피 디코딩 방법 및 이를 이용하는 디코딩 장치 - Google Patents

엔트로피 디코딩 방법 및 이를 이용하는 디코딩 장치 Download PDF

Info

Publication number
KR102350072B1
KR102350072B1 KR1020217009360A KR20217009360A KR102350072B1 KR 102350072 B1 KR102350072 B1 KR 102350072B1 KR 1020217009360 A KR1020217009360 A KR 1020217009360A KR 20217009360 A KR20217009360 A KR 20217009360A KR 102350072 B1 KR102350072 B1 KR 102350072B1
Authority
KR
South Korea
Prior art keywords
bin
context
slice
mode
value
Prior art date
Application number
KR1020217009360A
Other languages
English (en)
Other versions
KR20210038707A (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 엘지전자 주식회사
Priority to KR1020227000573A priority Critical patent/KR102465116B1/ko
Publication of KR20210038707A publication Critical patent/KR20210038707A/ko
Application granted granted Critical
Publication of KR102350072B1 publication Critical patent/KR102350072B1/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/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • H04N19/91Entropy coding, e.g. variable length coding [VLC] or arithmetic coding
    • 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/13Adaptive entropy coding, e.g. adaptive variable length coding [AVLC] or context adaptive binary arithmetic coding [CABAC]
    • 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/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
    • 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/154Measured or subjectively estimated visual quality after decoding, e.g. measurement of distortion
    • 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/157Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
    • H04N19/159Prediction type, e.g. intra-frame, inter-frame or bidirectional frame 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/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/174Methods 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 slice, e.g. a line of blocks or a group of 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/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/184Methods 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 bits, e.g. of the compressed video stream
    • 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/186Methods 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 a colour or a chrominance component
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/46Embedding additional information in the video signal during the compression process
    • H04N19/463Embedding additional information in the video signal during the compression process by compressing encoding parameters before transmission
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/513Processing of motion vectors
    • H04N19/517Processing of motion vectors by encoding
    • H04N19/52Processing of motion vectors by encoding by predictive encoding
    • 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/593Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial prediction techniques
    • 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

Abstract

본 발명은 엔트로피 디코딩 방법 및 이를 이용하는 디코딩 장치에 관한 것으로서, 본 발명에 따른 엔트로피 디코딩 방법은, 신택스 요소의 빈을 디코딩하는 단계 및 상기 디코딩된 빈을 기반으로 상기 신택스 요소의 정보를 획득하는 단계를 포함하며, 상기 빈의 디코딩 단계에서는, 상기 신택스 요소의 각 빈들에 대하여, 콘텍스트에 기반한 디코딩 또는 바이패스 디코딩을 수행한다.

Description

엔트로피 디코딩 방법 및 이를 이용하는 디코딩 장치{ENTROPY DECODING METHOD, AND DECODING APPARATUS USING SAME}
본 발명은 영상 정보 압축 기술에 관한 것으로서, 더 구체적으로는 엔트로피 코딩(인코딩/디코딩)을 수행하는 방법과 이를 이용하는 장치에 관한 것이다.
최근, 고해상도, 고품질의 영상에 대한 요구가 다양한 응용 분야에서 증가하고 있다. 하지만, 영상의 고해상도, 고품질이 될수록 해당 영상에 관한 정보량도 함께 증가한다. 따라서 기존의 유무선 광대역 회선과 같은 매체를 이용하여 영상 정보를 전송하거나 기존의 저장 매체를 이용해 영상 정보를 저장하는 경우, 정보의 전송 비용과 저장 비용이 증가하게 된다.
고해상도, 고품질 영상의 정보를 효과적으로 전송하거나 저장하고, 재생하기 위해 고효율의 영상 압축 기술을 이용할 수 있다.
영상 압축의 효율을 높이기 위해, 현재 블록의 정보를 그대로 전송하지 않고, 현재 블록의 주변 블록들의 정보를 이용하여 예측하는 방법을 사용할 수 있다.
예측의 방법으로서, 인터 예측과 인트라 예측을 이용할 수 있다. 인터 예측(inter prediction) 방법에서는 다른 픽처의 정보를 참조하여 현재 픽처(picture)의 화소값을 예측하며, 화면 내 예측 방법(intra prediction)에서는 동일한 픽처 내에서 화소 간 연관 관계를 이용하여 화소값을 예측한다. 인터 예측을 수행하는 경우에는, 다른 픽처에서 예측에 이용되는 부분을 지정하기 위해, 인터 예측 모드인 주변 블록으로부터 참조 픽처를 지시하는 정보와 움직임 벡터를 나타내는 정보를 활용할 수 있다.
인코딩 장치에서는 예측 결과를 포함하는 영상 정보를 엔트로피 인코딩하여 비트스트림으로 전송하며, 디코딩 장치에서는 수신한 비트스트림을 엔트로피 디코딩하여 영상 정보로 복원하는 절차를 개시한다.
엔트로피 인코딩 및 엔트로피 디코딩을 통해서 영상 정보의 압축 효율을 높일 수 있다.
본 발명은 엔트로피 코딩을 효과적으로 수행하여 코딩 효율을 향상시키는 방법 및 장치를 제공하는 것을 목적으로 한다.
본 발명은 엔트로피 코딩에 있어서, 콘텍스트를 효과적으로 활용하는 방법 및 장치를 제공하는 것을 목적으로 한다.
본 발명은 엔트로피 코딩에 있어서, 상태 및 조건에 따라서 서로 다른 콘텍스트를 활용하는 방법 및 장치를 제공하는 것을 목적으로 한다.
(1) 신택스 요소의 빈을 디코딩하는 단계 및 상기 디코딩된 빈을 기반으로 상기 신택스 요소의 정보를 획득하는 단계를 포함하는 엔트로피 디코딩 방법으로서, 상기 빈의 디코딩 단계에서는 상기 신택스 요소의 각 빈들에 대하여, 콘텍스트에 기반한 디코딩 또는 바이패스 디코딩을 수행할 수 있다. 이때, 상기 콘텍스트는 적응적으로 산출될 수도 있고, 소정의 고정된 값을 가질 수도 있다.
(2) (1)에서, 상기 빈의 디코딩 단계에서는, 상기 신택스 요소의 각 빈들에 대하여 서로 독립적인 콘텍스트를 적용할 수 있다.
(3) (1)에서, 상기 빈의 디코딩 단계에서는, 상기 신택스 요소의 빈들 중에서 일부 빈들에 대해서는 바이패스 모드를 적용하고, 나머지 빈들에 대해서는 서로 독립적인 콘텍스트를 적용할 수 있다.
(4) (1)에서, 상기 빈의 디코딩 단계에서, 콘텍스트를 기반으로 디코딩되는 빈에는 독립적인 콘텍스트가 적용되며, 상기 독립적인 콘텍스트는 다른 콘텍스트와 별도로 갱신되는 콘텍스트일 수 있다.
(5) (1)에서, 상기 빈의 디코딩 단계는,상기 신택스 요소의 빈을 바이패스 디코딩할 것인지를 판단하고, 상기 상기 빈을 바이패스 디코딩 하지 않는 것으로 판단한 경우에는 콘텍스트에 기반한 디코딩을 수행할 수 있다.
(6) (1)에서, 상기 빈의 디코딩 단계에서는, 콘텍스트 인덱스를 할당하는 콘텍스트 인덱스 테이블상에서 상기 신택스 요소의 빈에 대해 할당되는 콘텍스트 인덱스에 기반하여 디코딩을 수행할 수 있다.
(7) (6)에서, 상기 콘텍스트 인덱스 테이블은, 상기 신택스 요소의 빈들 중 일부 빈에 대해서는 동일한 콘텍스트 인덱스를 할당할 수 있다.
(8) (6)에서, 상기 콘텍스트 인덱스 테이블은, 상기 신택스 요소의 빈들 중 일부 빈에 대해서는 동일한 콘텍스트 인덱스를 할당하고, 다른 일부 빈에 대해서는 바이패스 모드를 할당할 수 있다.
(9) (1)에서, 상기 빈의 디코딩 단계에서는 콘텍스트 인덱스 테이블을 이용하여 디코딩을 수행하며,
상기 콘텍스트 인덱스 테이블은, 상기 신택스 요소의 빈들에 대한 콘텍스트 인덱스와 코딩 대상 픽처의 타입에 따른 오프셋을 할당하고, 상기 신택스 요소의 빈은 상기 콘텍스트 인덱스와 상기 오프셋의 합에 의해 지시되는 콘텍스트에 기반하여 디코딩될 수 있다.
(10)(9)에서, 상기 콘텍스트 인덱스 테이블은, 상기 신택스 요소의 빈들 중 일부 빈에 대해서는 동일한 콘텍스트 인덱스를 할당할 수 있다.
(11) (9)에서, 상기 콘텍스트 인덱스 테이블은, 상기 신택스 요소의 빈들 중 일부 빈에 대해서는 동일한 콘텍스트 인덱스를 할당하고, 다른 일부 빈에 대해서는 바이패스 모드를 할당할 수 있다.
(12) 엔트로피 디코딩 장치로서, 신택스 요소의 빈을 디코딩하는 엔트로피 디코딩부 및 상기 디코딩된 신택스 요소를 기반으로 예측 블록을 생성하는 예측부를 포함하며, 상기 엔트로피 디코딩부는 신택스 요소의 각 빈들에 대하여, 콘텍스트에 기반한 디코딩 또는 바이패스 디코딩을 수행할 수 있다.
(13) (12)에서, 상기 엔트로피 디코딩부는, 상기 신택스 요소의 빈들 중에서 일부 빈들에 대해서는 바이패스 모드를 적용하고, 나머지 빈들에 대해서는 서로 독립적인 콘텍스트를 적용할 수 있다.
(14) (12)에서, 상기 엔트로피 디코딩부는, 콘텍스트 인덱스를 할당하는 콘텍스트 인덱스 테이블상에서 상기 신택스 요소의 빈에 대해 할당되는 콘텍스트 인덱스에 기반하여 디코딩을 수행할 수 있다.
(15) (12)에서,상기 엔트로피 디코딩부는 콘텍스트 인덱스 테이블을 이용하여 디코딩을 수행하며, 상기 콘텍스트 인덱스 테이블은, 상기 신택스 요소의 빈들에 대한 콘텍스트 인덱스와 코딩 대상 픽처의 타입에 따른 오프셋을 할당하고, 상기 신택스 요소의 빈은 상기 콘텍스트 인덱스와 상기 오프셋의 합에 의해 지시되는 콘텍스트에 기반하여 디코딩될 수 있다.
본 발명에 의하면, 엔트로피 코딩을 효과적으로 수행함으로써 코딩 효율을 향상시킬 수 있다.
본 발명에 의하면, 엔트로피 코딩을 수행함에 있어서 콘텍스트를 효과적으로 활용함으로써, 엔트로피 코딩의 효율을 높이고 코딩 효율을 향상시킬 수 있다.
본 발명에 의하면, 엔트로피 코딩을 수행함에 있어서 상태 및 조건을 반영하여 콘텍스트를 적용함으로써 엔트로피 코딩의 효율을 높이고 코딩 효율을 향상시킬 수 있다.
도 1은 본 발명의 일 실시예에 따른 영상 인코딩 장치(인코더)를 개략적으로 도시한 블록도이다.
도 2는 본 발명의 일 실시예에 따른 영상 디코딩 장치(디코더)를 개략적으로 나타낸 블록도이다.
도 3은 인트라 예측에 있어서 적용되는 인트라 예측 모드의 일 예를 개략적으로 설명하는 도면이다.
도 4는 본 발명에서 적용되는 엔트로피 코딩의 일 예를 개략적으로 설명하는 도면이다.
도 5는 본 발명이 적용되는 엔트로피 디코딩 과정의 일 예를 개략적으로 설명하는 순서도이다.
본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 상세하게 설명하고자 한다. 그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니다. 본 명세서에서 사용하는 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명의 기술적 사상을 한정하려는 의도로 사용되는 것은 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 명세서에서, "포함하다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성 요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성 요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
한편, 본 발명에서 설명되는 도면상의 각 구성들은 영상 인코딩/디코딩 장치에서 서로 다른 특징적인 기능들에 관한 설명의 편의를 위해 독립적으로 도시된 것으로서, 각 구성들이 서로 별개의 하드웨어나 별개의 소프트웨어로 구현된다는 것을 의미하지는 않는다. 예컨대, 각 구성 중 두 개 이상의 구성이 합쳐져 하나의 구성을 이룰 수도 있고, 하나의 구성이 복수의 구성으로 나뉘어질 수도 있다. 각 구성이 통합 및/또는 분리된 실시예도 본 발명의 본질에서 벗어나지 않는 한 본 발명의 권리범위에 포함된다.
이하, 첨부한 도면들을 참조하여, 본 발명에 관하여 상세하게 설명하고자 한다.
도 1은 본 발명의 일 실시예에 따른 영상 인코딩 장치(인코더)를 개략적으로 도시한 블록도이다. 도 1을 참조하면, 영상 인코딩 장치(100)는 픽처 분할부(105), 예측부(110), 변환부(115), 양자화부(120), 재정렬부(125), 엔트로피 인코딩부(130), 역양자화부(135), 역변환부(140), 필터부(145) 및 메모리(150)를 구비한다.
픽처 분할부(105)는 입력된 픽처를 적어도 하나의 처리 단위로 분할할 수 있다. 이때, 처리 단위는 예측 유닛(Prediction Unit, 이하 ‘PU’라 함)일 수도 있고, 변환 유닛(Transform Unit, 이하 ‘TU’라 함)일 수도 있으며, 코딩 유닛(Coding Unit, 이하 ‘CU’라 함)일 수도 있다. 다만, 본 명세서에서는 설명의 편의를 위해, 예측 유닛을 예측 블록, 변환 유닛을 변환 블록, 인코딩 유닛을 인코딩 블록으로 표현할 수 있다.
예측부(110)는 인터 예측(inter prediction, 화면 간 예측)을 수행하는 인터 예측부와 인트라 예측(intra prediction, 화면 내 예측)을 수행하는 인트라 예측부를 포함할 수 있다. 코딩 효율을 높이기 위해, 영상 신호를 그대로 인코딩하는 것이 하니라, 이미 인코딩된 영역을 이용하여 영상을 예측하고, 원래의 영상과 예측 영상 사이의 레지듀얼 값을 예측 영상에 더하여 영상을 복원할 수 있도록 인코딩 한다.
예측에 이용되는 이미 인코딩된 영역을 포함하는 픽처로서, I 픽처(I 슬라이스), P 픽처(P 슬라이스), B 픽처(B 슬라이스) 등이 있다. I 슬라이스는 인트라 예측에 의해서만 디코딩되는 슬라이스이다. P 슬라이스는 각 블록의 샘플 값을 예측하기 위해 적어도 하나의 움직임 벡터 및 참조 픽처 인덱스를 이용한 인터 예측 또는 인트라 예측을 이용해서 디코딩될 수 있는 슬라이스이다. B 슬라이스는 각 블록의 샘플 값을 예측하기 위해 적어도 두 개의 움직임 벡터들과 참조 픽처 인덱스들을 이용한 인터 예측 또는 인트라 예측을 이용해서 디코딩될 수 있는 슬라이스이다.
예측부(110)는, 픽처 분할부(105)에서 픽처의 처리 단위에 대하여 예측을 수행하여 예측된 샘플로 구성되는 예측 블록을 생성한다. 예측부(110)에서 픽처의 처리 단위는 CU일 수도 있고, TU일 수도 있고, PU일 수도 있다. 또한, 해당 처리 단위에 대하여 실시되는 예측이 인터 예측인지 인트라 예측인지를 결정하고, 각 예측 방법의 구체적인 내용(예컨대, 예측 모드 등)를 정할 수 있다. 이때, 예측이 수행되는 처리 단위와 예측 방법 및 구체적인 내용이 정해지는 처리 단위는 서로 다를 수 있다. 예컨대, 예측의 방법과 예측 모드 등은 PU 단위로 결정되고, 예측의 수행은 TU 단위로 수행될 수도 있다.
인터 예측을 통해서는 현재 픽처의 이전 픽처 및/또는 이후 픽처 중 적어도 하나의 픽처의 정보를 기초로 예측을 수행하여 예측 블록을 생성할 수 있다. 또한, 인트라 예측을 통해서는 현재 픽처 내의 화소 정보를 기초로 예측을 수행하여 예측 블록을 생성할 수 있다.
인터 예측에서는 현재 블록에 대하여, 참조 픽처를 선택하고 현재 블록과 동일한 크기의 참조 블록을 선택해서, 현재 블록에 대한 예측 블록을 생성할 수 있다. 예컨대, 인터 예측에서는 현재 블록과의 레지듀얼(residual) 신호가 최소화되며 움직임 벡터 크기 역시 최소가 되도록 예측 블록을 생성할 수 있다. 인터 예측의 방법으로서, 스킵(skip) 모드, 머지(merge) 모드, AMVP(Advanced Motion Vector Prediction) 등을 이용할 수 있다. 예측 블록은 1/2 화소 샘플 단위와 1/4 화소 샘플 단위와 같이 정수 이하 샘플 단위로 생성될 수도 있다. 이때, 움직임 벡터 역시 정수 화소 이하의 단위로 표현될 수 있다. 예컨대 휘도 화소에 대해서는 1/4 화소 단위로, 색차 화소에 대해서는 1/8 화소 단위로 표현될 수 있다.
인터 예측을 통해 선택된 참조 픽처의 인덱스, 움직임 벡터 예측자, 레지듀얼 신호 등의 정보는 엔트로피 인코딩되어 디코딩 장치에 전달된다.
인트라 예측을 수행하는 경우에도 예측이 수행되는 처리 단위와 예측 방법 및 구체적인 내용이 정해지는 처리 단위는 서로 다를 수도 있다. 예컨대, PU 단위로 예측 모드가 정해져서 PU 단위로 예측이 수행될 수도 있고, PU 단위로 예측 모드가 정해지고 TU 단위로 화면 내 예측이 수행될 수도 있다.
인트라 예측에서 예측 모드는 33개의 방향성 예측 모드와 적어도 2개 이상의 비방향성 모드를 가질 수 있다. 비방향성 모드는 DC 예측 모드 및 플레너 모드(Planar 모드) 등을 포함할 수 있다.
인트라 예측에서는 참조 샘플에 필터를 적용한 후 예측 블록을 생성할 수 있다. 이때, 참조 샘플에 필터를 적용할 것인지는 현재 블록의 인트라 예측 모드 및/또는 사이즈에 따라 결정될 수도 있다.
PU는 더 이상 분할되지 않는 CU로부터 다양한 사이즈/형태로 결정될 수 있다. 예컨대 인터 예측의 경우에 PU는 2N×2N, 2N×N, N×2N, 또는 N×N 등의 크기를 가질 수 있다. 인트라 예측의 경우에 PU는 2N×2N 또는 N×N (N은 정수) 등의 크기를 가질 수 있다. 이때, N×N 크기의 PU는 특정한 경우에만 적용하도록 설정할 수도 있다. 예컨대 최소 크기 코딩 유닛에 대해서만 NxN의 PU를 이용하도록 정하거나 인트라 예측에 대해서만 이용하도록 정할 수 있다. 또한, 상술한 크기의 PU 외에, N×mN, mN×N, 2N×mN 또는 mN×2N (m<1) 등의 크기를 가지는 PU를 더 정의하여 사용할 수도 있다.
생성된 예측 블록과 원본 블록 사이의 레지듀얼 값(레지듀얼 블록 또는 레지듀얼 신호)은 변환부(115)로 입력된다. 또한, 예측을 위해 사용한 예측 모드 정보, 움직임 벡터 정보 등은 레지듀얼 값과 함께 엔트로피 인코딩부(130)에서 인코딩되어 디코딩 장치에 전달된다.
변환부(115)는 변환 단위로 레지듀얼 블록에 대한 변환을 수행하고 변환 계수를 생성한다. 변환부(115)에서의 변환 단위는 TU일 수 있으며, 쿼드 트리(quad tree) 구조를 가질 수 있다. 이때, 변환 단위의 크기는 소정의 최대 및 최소 크기의 범위 내에서 정해질 수 있다. 변환부(115)는 레지듀얼 블록을 DCT(Discrete Cosine Transform) 또는 DST(Discrete Sine Transform)를 이용하여 변환할 수 있다.
양자화부(120)는 변환부(115)에서 변환된 레지듀얼 값들을 양자화하여 양자화 계수를 생성할 수 있다. 양자화부(120)에서 산출된 값은 역양자화부(135)와 재정렬부(125)에 제공된다.
재정렬부(125)는 양자화부(120)로부터 제공된 양자화 계수를 재정렬한다. 양자화 계수를 재정렬함으로써 엔트로피 인코딩부(130)에서의 인코딩의 효율을 높일 수 있다. 재정렬부(125)는 계수 스캐닝(Coefficient Scanning) 방법을 통해 2차원 블록 형태의 양자화 계수들을 1차원의 형태로 재정렬할 수 있다. 재정렬부(125)에서는 양자화부에서 전송된 계수들의 확률적인 통계를 기반으로 계수 스캔닝의 순서를 변경함으로써 엔트로피 인코딩부(130)에서의 엔트로피 인코딩 효율을 높일 수도 있다.
엔트로피 인코딩부(130)는 재정렬부(125)에 의해 재정렬된 양자화 계수들에 대한 엔트로피 인코딩을 수행할 수 있다. 엔트로피 인코딩에는 예를 들어, 지수 골롬(Exponential Golomb), CAVLC(Context-Adaptive Variable Length Coding), CABAC(Context-Adaptive Binary Arithmetic Coding)과 같은 인코딩 방법을 사용할 수 있다. 엔트로피 인코딩부(130)는 재정렬부(125) 및 예측부(110)로부터 전달받은 CU의 양자화 계수 정보 및 블록 타입 정보, 예측 모드 정보, 분할 단위 정보, PU 정보 및 전송 단위 정보, 움직임 벡터 정보, 참조 픽처 정보, 블록의 보간 정보, 필터링 정보 등 다양한 정보를 인코딩할 수 있다.
또한, 엔트로피 인코딩부(130)는 필요한 경우에, 전송하는 파라미터 셋 또는 신택스에 일정한 변경을 가할 수도 있다.
역양자화부(135)는 양자화부(120)에서 양자화된 값들을 역양자화하고, 역변환부(140)는 역양자화부(135)에서 역양자화된 값들을 역변환한다. 역양자화부(135) 및 역변환부(140)에서 생성된 레지듀얼 값은 예측부(110)에서 예측된 예측 블록과 합쳐져 복원 블록(Reconstructed Block)이 생성될 수 있다.
필터부(145)는 디블록킹 필터, ALF(Adaptive Loop Filter), SAO(Sample Adaptive Offset)를 복원된 픽처에 적용할 수 있다.
디블록킹 필터는 복원된 픽처에서 블록 간의 경계에 생긴 블록 왜곡을 제거할 수 있다. ALF(Adaptive Loop Filter)는 디블록킹 필터를 통해 블록이 필터링된 후 복원된 영상과 원래의 영상을 비교한 값을 기초로 필터링을 수행할 수 있다. ALF는 고효율을 적용하는 경우에만 수행될 수도 있다. SAO는 디블록킹 필터가 적용된 레지듀얼 블록에 대하여, 화소 단위로 원본 영상과의 오프셋 차이를 복원하며, 밴드 오프셋(Band Offset), 에지 오프셋(Edge Offset) 등의 형태로 적용된다.
한편, 인터 예측에 사용되는 복원 블록에 대해서 필터부(145)는 필터링을 적용하지 않을 수 있다.
메모리(150)는 필터부(145)를 통해 산출된 복원 블록 또는 픽처를 저장할 수 있다. 메모리(150)에 저장된 복원 블록 또는 픽처는 인터 예측을 수행하는 예측부(110)에 제공될 수 있다.
도 2는 본 발명의 일 실시예에 따른 영상 디코딩 장치(디코더)를 개략적으로 나타낸 블록도이다. 도 2를 참조하면, 영상 디코딩 장치(200)는 엔트로피 디코딩부(210), 재정렬부(215), 역양자화부(220), 역변환부(225), 예측부(230), 필터부(235) 메모리(240)를 포함할 수 있다.
인코딩 장치로부터 영상 비트 스트림이 입력된 경우, 입력된 비트 스트림은 인코딩 장치에서 영상 정보가 처리된 절차의 역과정에 따라서 디코딩될 수 있다.
예컨대, 영상 인코딩 장치에서 엔트로피 인코딩을 수행하기 위해 CAVLC 등의 가변 길이 인코딩(Variable Length Coding: VLC, 이하 ‘VLC’ 라 함)가 사용된 경우에, 엔트로피 디코딩부(210)도 인코딩 장치에서 사용한 VLC 테이블과 동일한 VLC 테이블로 구현하여 엔트로피 디코딩을 수행할 수 있다. 또한, 영상 인코딩 장치에서 엔트로피 인코딩을 수행하기 위해 CABAC을 이용한 경우에, 엔트로피 디코딩부(210)는 이에 대응하여 CABAC을 이용한 엔트로피 디코딩을 수행할 수 있다.
엔트로피 디코딩부(210)에서 디코딩된 정보 중 예측 블록을 생성하기 위한 정보는 예측부(230)로 제공되고 엔트로피 디코딩부에서 엔트로피 디코딩이 수행된 레지듀얼 값은 재정렬부(215)로 입력될 수 있다.
재정렬부(215)는 엔트로피 디코딩부(210)에서 엔트로피 디코딩된 비트 스트림을 영상 인코딩기에서 재정렬한 방법을 기초로 재정렬할 수 있다. 재정렬부(215)는 1차원 벡터 형태로 표현된 계수들을 다시 2차원의 블록 형태의 계수로 복원하여 재정렬할 수 있다. 재정렬부(215)는 인코딩 장치에서 수행된 계수 스캐닝에 관련된 정보를 제공받고 인코딩 장치에서 수행된 스캐닝 순서에 기초하여 역으로 스캐닝하는 방법을 통해 재정렬을 수행할 수 있다.
역양자화부(220)는 인코딩 장치에서 제공된 양자화 파라미터와 재정렬된 블록의 계수값을 기초로 역양자화를 수행할 수 있다.
역변환부(225)는 영상 인코딩 장치에서 수행된 양자화 결과에 대해, 인코딩 장치의 변환부가 수행한 DCT 또는 DST에 대해 역DCT 또는 역DST를 수행할 수 있다. 역변환은 인코딩 장치에서 결정된 전송 단위 또는 영상의 분할 단위를 기초로 수행될 수 있다. 인코딩 장치의 변환부에서는 예측 방법, 현재 블록의 크기 및 예측 방향 등 복수의 정보에 따라 DCT 또는 DST를 선택적으로 수행될 수 있고, 디코딩 장치의 역변환부(225)는 인코딩 장치의 변환부에서 수행된 변환 정보를 기초로 역변환을 수행할 수 있다.
예측부(230)는 엔트로피 디코딩부(210)에서 제공된 예측 블록 생성 관련 정보와 메모리(240)에서 제공된 이전에 디코딩된 블록 및/또는 픽처 정보를 기초로 예측 블록을 생성할 수 있다. 복원 블록은 예측부(230)에서 생성된 예측 블록과 역변환부(225)에서 제공된 레지듀얼 블록을 이용해 생성될 수 있다.
예측부(230)에서 수행하는 구체적인 예측의 방법은 인코딩 장치의 예측부에서 수행되는 예측의 방법과 동일하다.
현재 블록에 대한 예측 모드가 인트라 예측(intra prediction) 모드인 경우에, 현재 픽처 내의 화소 정보를 기초로 예측 블록을 생성하는 인트라 예측을 수행할 수 있다.
인트라 예측에서 예측 모드는 33개의 방향성 예측 모드와 적어도 2개 이상의 비방향성 모드를 가질 수 있다. 비방향성 모드는 DC 예측 모드 및 플레너 모드(Planar 모드) 등을 포함할 수 있다.
인트라 예측에서는 참조 샘플에 필터를 적용한 후 예측 블록을 생성할 수 있다. 이때, 참조 샘플에 필터를 적용할 것인지는 현재 블록의 인트라 예측 모드 및/또는 사이즈에 따라 결정될 수도 있다.
현재 블록에 대한 예측 모드가 인터 예측(inter prediction) 모드인 경우에, 현재 픽처의 이전 픽처 또는 이후 픽처 중 적어도 하나를 참조 픽처로 하고, 참조 픽처에 포함된 정보를 기초로 현재 블록에 대한 인터 예측을 수행할 수 있다. 구체적으로, 인터 예측에서는 현재 블록에 대하여, 참조 픽처를 선택하고 현재 블록과 동일한 크기의 참조 블록을 선택해서, 현재 블록에 대한 예측 블록을 생성할 수 있다. 예컨대, 인터 예측에서는 현재 블록과의 레지듀얼(residual) 신호가 최소화되며 움직임 벡터 크기 역시 최소가 되도록 예측 블록을 생성할 수 있다. 이때, 참조 픽처의 정보를 이용하기 위해, 현재 픽처의 주변 블록들의 정보를 이용할 수 있다. 예컨대, 스킵(skip) 모드, 머지(merge) 모드, AMVP(Advanced Motion Vector Prediction) 등을 통해, 주변 블록의 정보에 기반하여 현재 블록에 대한 예측 블록을 생성할 수 있다.
예측 블록은 1/2 화소 샘플 단위와 1/4 화소 샘플 단위와 같이 정수 이하 샘플 단위로 생성될 수도 있다. 이때, 움직임 벡터 역시 정수 화소 이하의 단위로 표현될 수 있다. 예컨대 휘도 화소에 대해서는 1/4 화소 단위로, 색차 화소에 대해서는 1/8 화소 단위로 표현될 수 있다.
현재 블록의 인터 예측에 필요한 움직임 정보, 예컨대 움직임 벡터, 참조 픽처 인덱스 등에 관한 정보는 인코딩 장치로부터 수신한 스킵 플래그, 머지 플래그 등을 확인하고 이에 대응하여 유도될 수 있다.
예측이 수행되는 처리 단위와 예측 방법 및 구체적인 내용이 정해지는 처리 단위는 서로 다를 수도 있다. 예컨대, PU 단위로 예측 모드가 정해져서 PU 단위로 예측이 수행될 수도 있고, PU 단위로 예측 모드가 정해지고 TU 단위로 화면 내 예측이 수행될 수도 있다.
예측부(230)로부터 출력된 예측 블록에 역변환부(225)로부터 출력된 레지듀얼 블록이 더해져서 원본 영상을 복원할 수 있다.
복원된 블록 및/또는 픽처는 필터부(235)로 제공될 수 있다. 필터부(235)는 복원된 블록 및/또는 픽처에 디블록킹 필터링, SAO(Sample Adaptive Offset) 및/또는 적응적 루프 필터링 등을 적용한다.
메모리(240)는 복원된 픽처 또는 블록을 저장하여 참조 픽처 또는 참조 블록으로 사용할 수 있도록 할 수 있고 또한 복원된 픽처를 출력부로 제공할 수 있다.
여기서는 설명의 편의를 위해 생략하였지만, 디코딩 장치에 입력되는 비트 스트림은 파싱 단계를 거쳐 엔트로피 디코딩부로 입력될 수도 있다. 또한, 엔트로피 디코딩부에서 파싱 과정을 수행하도록 할 수도 있다.
본 명세서에서, 코딩은 경우에 따라 인코딩 또는 디코딩으로 해석될 수 있고, 정보(information)는 값(values), 파라미터(parameter), 계수(coefficients), 성분(elements) 등을 모두 포함하는 것으로 이해될 수 있다.
‘화면’ 또는 ‘픽쳐(picture)’는 일반적으로 특정 시간대의 하나의 영상을 나타내는 단위를 의미하며, ‘슬라이스(slice)’, ‘프레임(frame)’ 등은 실제 비디오 신호의 코딩에 있어서 픽쳐의 일부를 구성하는 단위이며, 필요에 따라서는 픽쳐와 서로 혼용되어 사용 될 수도 있다.
‘픽셀(pixel)’, ‘화소’ 또는 ‘pel’은 하나의 영상을 구성하는 최소의 단위를 의미한다. 또한, 특정한 픽셀의 값을 나타내는 용어로서 ‘샘플(sample)’을 사용할 수 있다. 샘플은 휘도(Luma) 및 색차(Chroma) 성분으로 나누어질 수 있으나, 일반적으로는 이를 모두 포함하는 용어로써 사용될 수 있다. 상기에서 색차 성분은 정해진 색상들 간의 차이를 나타내는 것으로 일반적으로 Cb 및 Cr로 구성된다.
'유닛(unit)'은 상술한 코딩 유닛(CU), 예측 유닛(PU), 변환 유닛(TU)과 같이 영상 처리의 기본 단위 또는 영상의 특정 위치를 지칭하며, 경우에 따라서는 '블록(block)' 또는 '영역(area)' 등의 용어와 서로 혼용하여 사용될 수 있다. 또한, 블록은 M개의 열과 N개의 행으로 구성된 샘플들 또는 변환 계수(transform coefficient)들의 집합을 나타내는 용어로 사용될 수도 있다.
한편, 인터 예측 모드의 경우에 인코딩 장치 또는 디코딩 장치는 현재 블록의 움직임 정보를 도출하고, 도출된 움직임 정보에 기반하여 현재 블록에 대한 인터 예측을 수행할 수 있다.
현재 블록의 예측에 이용되는 영상을 참조 픽처(reference picture) 또는 참조 프레임(reference frame)이라고 한다. 참조 픽처 내의 영역은 참조 픽처를 지시하는 참조 픽처 인덱스(refIdx) 및 움직임 벡터(motion vector) 등을 이용하여 나타낼 수 있다.
현재 픽처에 대하여, 예측을 위하여 사용되는 픽처들로 참조 픽처 리스트를 구성할 수 있으며, 참조 픽처 인덱스는 참조 픽처 리스트에서 특정 참조 픽처를 지시할 수 있다. P 픽처의 경우에는 하나의 참조 픽처 리스트, 예컨대 참조 리스트 0을 필요로 하며, B 픽처의 경우에는 두 개의 참조 픽처 리스트, 예컨대 참조 리스트 0 및 참조 리스트 1을 필요로 한다.
구체적으로, I 픽처는 인트라 예측에 의해서 인코딩/디코딩되는 픽처이다. P 픽처는 각 블록의 샘플 값을 예측하기 위해 적어도 하나의 움직임 벡터 및 참조 픽처 인덱스를 이용한 인터 예측 또는 인트라 예측을 이용해서 인코딩/디코딩될 수 있는 픽처이다. B 픽처는 각 블록의 샘플 값을 예측하기 위해 적어도 두 개의 움직임 벡터들과 참조 픽처 인덱스들을 이용한 인터 예측 또는 인트라 예측을 이용해서 인코딩/디코딩될 수 있는 픽처이다.
P 픽처에서는 한 개의 참조 픽처 리스트를 필요로 하며, 이를 참조 픽처 리스트 0(reference picture list 0: L0)이라 지칭한다.
B 픽처는 하나 이상, 예를 들어 2 개의 참조 픽처를 이용하여 순방향, 역방향 또는 양 방향 인터 예측에 의해 인코딩될 수 있는 픽처다. B 픽처는 두 개의 참조 픽처 리스트를 필요로 하며, 두 개의 참조 픽처 리스트는 각각 참조 픽처 리스트 0(reference picture list 0: L0), 참조 픽처 리스트 1(reference picture list 1: L1)이라 지칭한다.
L0으로부터 선택된 참조 픽처를 사용하는 인터 예측을 L0 예측이라 하며, L0 예측은 주로 순방향 예측에 사용된다. L1으로부터 선택된 참조 픽처를 사용하는 인터 예측을 L1 예측이라 하며, L1 예측은 주로 역방향 예측에 사용된다. 또한 L0과 L1으로부터 각각 선택된 두 개의 참조 픽처를 사용하는 인터 예측을 쌍 예측(bi prediction)이라고도 한다.
상기 I 픽처, P 픽처, B 픽처의 특징은 픽처 단위가 아닌 슬라이스 단위로도 정의될 수 있다. 예컨대, 슬라이스 단위에서 I 픽쳐의 특징을 갖는 I 슬라이스, P 픽쳐의 특징을 갖는 P 슬라이스, B 픽쳐의 특징을 갖는 B 슬라이스가 정의될 수 있다.
예컨대, 현재 블록에 대한 슬라이스 타입이 B이고 L0으로부터 colPic이 선택되는 경우 또는 현재 블록에 대한 슬라이스 타입이 P인 경우에 colPic은 L0에서 선택될 수 있다. B 슬라이스(B 픽처) 중에서 참조 픽처 리스트 L0과 참조 픽처 리스트 L1이 같은 슬라이스(픽처)를 GPB(Generalized P and B)라고 한다.
도 1 및 2에서 상술한 바와 같이, 예측부는 현재 픽쳐 내의 픽셀 정보를 기초로 인트라 예측을 수행하여 현재 블록에 대한 예측 블록을 생성할 수 있다. 예를 들어, 예측부는 현재 블록의 주변 블록, 예컨대, 현재 블록의 상측에 위치하는 블록들, 현재 블록의 좌측에 위치하는 블록들, 현재 블록의 좌측 상단 코너에 위치하는 블록, 현재 블록의 좌측 아래에 위치하는 블록들, 현재 블록의 우상측에 위치하는 블록들에 속하는 픽셀들을 이용하여 현재 블록의 픽셀값을 예측할 수 있다.
인트라 예측 모드에는, 현재 블록의 픽셀값 예측에 사용되는 참조 픽셀들의 위치 및/또는 예측 방식 등에 따라, 다양한 예측 모드가 이용될 수 있다.
도 3은 인트라 예측에 있어서 적용되는 인트라 예측 모드의 일 예를 개략적으로 설명하는 도면이다.
도 3을 참조하면, 인트라 예측 모드에는 수직(vertical) 모드, 수평(horizontal) 모드 등의 방향성 모드와 DC 모드, 플래너(planar) 모드 등과 같은 비방향성 모드가 있다.
표 1은 도 3에 도시된 인트라 예측 모드들을 지시하는 인덱스들을 개략적으로 설명하는 표이다.
[표 1]
Figure 112021036944283-pat00001
표 1에서, 인트라 예측 모드의 각 숫자들(0~35)은 도 3에 도시된 0부터 35의 수치에 각각 대응한다. 표 1 및 도 3을 참조하면, 인트라 예측 모드 0은 플래너 모드이고, 인트라 예측 모드 1은 DC 모드로서, 비방향성 모드라고 할 수 있다. 또한, 인트라 예측 모드 2 내지 34는 예측 각도에 따른 모드로서, 방향성 모드라고 할 수 있다.
비방향성 모드로서, 인트라 예측 모드 35는 크로마에 대해서만 적용되며, 루마의 인트라 모드로부터 결정되는 크로마의 예측 모드를 나타낸다. DC 모드에서는 현재 블록 내의 픽셀값들의 평균에 의해 예측 블록이 생성될 수 있다. 앵귤러 모드(방향성 모드)에서는 각각의 모드에 대해 미리 정해진 각도 및/또는 방향에 따라 예측이 수행될 수 있다.
한편, 루마 성분과 달리, 크로마 성분에 대해서는 더 제한된 개수의 예측 모드가 사용될 수도 있다. 설명의 편의를 위해, 크로마 성분에 사용되는 제한된 개수의 예측 모드를 크로마 예측 모드 후보(chroma prediction mode candidate)라 한다. 크로마 모드에 대한 인트라 예측을 수행하는 경우에는, 상기 크로마 예측 모드 후보들 중 하나의 예측 모드를 이용해서 예측이 수행될 수 있다.
일 실시예로 크로마 예측 모드 후보로 플래너 모드, 수직(vertical) 모드, 수평(horizontal) 모드, DC 모드 등을 이용할 수 있다.
표 2는 현재 블록에 대한 루마 성분의 예측 모드와 크로마 성분에 대한 예측 모드 지시자에 따라서, 현재 블록에 대한 크로마 성분의 예측 모드가 결정되는 일 예를 개략적으로 설명하는 표이다.
[표 2]
Figure 112021036944283-pat00002
표 2에서, (xB, yB)는 현재 픽처의 좌상단(top-left) 샘플에 대한 현재 블록의 좌상단 루마 샘플의 위치를 나타내고, IntraPredMode는 현재 블록의 루마 샘플에 대한 인트라 예측 모드를 나타낸다. intra_chroma_pred_mode는 현재 블록의 크로마 샘플에 대한 인트라 예측 모드를 결정하기 위한 정보를 포함하며, 인코딩 장치로부터 디코딩 장치로 전송될 수 있다.
LM 모드는 선형 모드(Linear Mode) 혹은 루마 성분의 모드로부터 추정되는 모드(Luma estimated Mode)라고도 불린다. LM 모드에서 현재 블록의 크로마 성분은 현재 블록의 루마 샘플(루마 화소)을 이용하여 예측될 수 있다. 예컨대, LM 모드에서는 현재 블록의 복원된 루마 샘플들을 보간하여 생성한 샘플을 기반으로 크로마 샘플의 예측값을 생성할 수 있다.
표 2를 참조하면, 현재 블록의 크로마 성분에 대한 예측 모드는 intra_chroma_pred_mode의 값과 현재 블록의 루마 성분에 대한 예측 모드 IntraPredMode 값에 따라서 결정될 수 있다. 예컨대, intra_chroma_pred_mode 값이 0인 경우에, IntraPredMode 값이 0이라면, 현재 블록의 크로마 성분에 대한 인트라 예측 모드는 우상측 방향의 예측 모드(34번 모드)가 되고, IntraPredMode 값이 0 이외의 값이라면, 현재 블록의 크로마 성분에 대한 인트라 예측 모드는 플래너 모드(Intra_Planar)가 된다. 현재 블록의 크로마 성분은 인트라 예측 모드에 따라서, 현재 픽처 내의 크로마 성분들을 이용하여 예측된다.
마찬가지로, intra_chroma_pred_mode 값이 1인 경우에, IntraPredMode 값이 26이라면, 현재 블록의 크로마 성분에 대한 인트라 예측 모드는 우상측 방향의 예측 모드(34번 모드)가 되고, IntraPredMode 값이 26 이외의 값이라면, 현재 블록의 크로마 성분에 대한 인트라 예측 모드는 수직 모드, 즉 Intra_Angular(26)이 된다. 현재 블록의 크로마 성분은 인트라 예측 모드에 따라서, 현재 픽처 내의 크로마 성분들을 이용하여 예측된다.
intra_chroma_pred_mode 값이 2인 경우에, IntraPredMode 값이 10이라면, 현재 블록의 크로마 성분에 대한 인트라 예측 모드는 우상측 방향의 예측 모드(34번 모드)가 되고, IntraPredMode 값이 10 이외의 값이라면, 현재 블록의 크로마 성분에 대한 인트라 예측 모드는 수평 모드, 즉 Intra_Angular(10)이 된다. 현재 블록의 크로마 성분은 인트라 예측 모드에 따라서, 현재 픽처 내의 크로마 성분들을 이용하여 예측된다.
intra_chroma_pred_mode 값이 3인 경우에, IntraPredMode 값이 1이라면, 현재 블록의 크로마 성분에 대한 인트라 예측 모드는 우상측 방향의 예측 모드(34번 모드)가 되고, IntraPredMode 값이 1 이외의 값이라면, 현재 블록의 크로마 성분에 대한 인트라 예측 모드는 DC 모드(Intra_DC)가 된다. 현재 블록의 크로마 성분은 인트라 예측 모드에 따라서, 현재 픽처 내의 크로마 성분들을 이용하여 예측된다.
intra_chroma_pred_mode 값이 4인 경우에, 현재 블록의 크로마 성분에 대한 인트라 예측 모드는 LM 모드가 된다. 따라서, 현재 블록의 크로마 성분에 대한 예측 블록은 현재 블록의 복원된 루마 성분을 이용하여 생성될 수 있다.
intra_chroma_pred_mode 값이 5인 경우에, 현재 블록의 크로마 성분에 대한 인트라 예측 모드는 현재 블록의 루마 성분에 대한 인트라 예측 모드와 동일하다. 따라서, 이 경우를 DM(Direct Mode)라고도 한다.
표 3은 현재 블록에 대한 루마 성분의 예측 모드와 크로마 성분에 대한 예측 모드 지시자에 따라서, 현재 블록에 대한 크로마 성분의 예측 모드가 결정되는 다른 예를 개략적으로 설명하는 표이다.
[표 3]
Figure 112021036944283-pat00003
표 3은, LM 모드의 적용이 없는 경우를 나타낸다.
디코딩 장치는 표 2와 표 3을 선택적으로 적용할 수도 있다. 예컨대, 인코딩 장치는 표 2를 적용할 것인지 표 3을 적용할 것인지를 지시하는 정보를 디코딩 장치에 전송할 수 있고, 디코딩 장치는 전송된 지시에 따라서, 현재 블록의 크로마 성분에 대한 인트라 예측 모드를 결정하기 위해, 표 2를 적용하거나 표 3을 적용할 수 있다.
*한편, 예측된 정보를 포함하는 영상 정보는 도 1에서 설명한 바와 같이, 엔트로피 인코딩을 거쳐서 비트스트림으로 디코딩 장치에 전송된다. 또한, 디코딩 장치는 도 2에서 설명한 바와 같이, 수신한 비트스트림을 엔트로피 디코딩하여 예측된 정보를 포함하는 영상 정보를 획득한다.
도 4는 본 발명에서 적용되는 엔트로피 코딩부의 일 예를 개략적으로 설명하는 도면이다. 도 4에 도시된 엔트로피 코딩부의 구성은 엔트로피 인토딩과 엔트로피 디코딩에 동일하게 적용될 수 있다.
도 4가 엔트로피 인코딩부의 일 예라고 가정하면, 엔트로피 인코딩부(400)는 이진화(binarization)부(410), 정규 코딩 엔진(Regular Coding Engine, 420), 바이패스 코딩 엔진(Bypass Coding Engine, 430)를 포함할 수 있다.
이때, 엔트로피 인코딩은 D1 방향으로 입력되는 신호를 처리하여, D2 방향으로 처리된 신호를 출력한다.
입력되는 신호가 이진값이 아닌 신택스 요소(element)인 경우에, 이진화부(410)는 입력 신호를 이진수로 변환한다. 입력되는 신호가 이미 이진 값인 경우에는 이진화부(410)를 거치지 않고 바이패스(bypass)할 수도 있다.
입력되는 한자리 값인 이진 값을 빈(Bin)이라고 한다. 예컨대, 입력되는 이진 값이 110인 경우에, 1, 1, 0 각각을 하나의 빈이라고 하며, 빈으로 구성되는 이진 시퀀스를 빈 스트링(bin string)이라고 한다.
이진화된 신호(빈 스트링)는 정규 코딩 엔진(420) 또는 바이패스 코딩 엔진(430)으로 입력된다.
정규 코딩 엔진(420)은 해당 빈에 대하여 확률 값을 반영하는 콘텍스트를 할당하고, 할당된 콘텍스트에 기반하여 해당 빈을 인코딩한다. 정규 코딩 엔진(420)은 각 빈에 대한 인코딩을 수행한 뒤에 해당 빈에 대한 콘텍스트를 갱신할 수 있다.
바이패스 코딩 엔진(430)은 입력되는 빈에 따라서 콘텍스트를 할당하지 않고, 단순한 바이패스 모드로 입력되는 빈을 인코딩하고, 인코딩 속도를 향상시킨다. 바이패스 모드에서는 입력된 빈에 대해서 확률을 추정하는 절차와 인코딩 후에 해당 빈에 적용했던 확률을 갱신하는 절차를 바이패스(bypass)한다. 바이패스 모드에서는 예컨대, 균일한 확률 분포를 적용하여 인코딩 절차를 수행할 수 있다.
엔트로피 인코딩부(400)는 정규 코딩 엔진(420)을 통해서 엔트로피 인코딩을 수행할 것인지, 바이패스 코딩 엔진(430)을 통해서 엔트로피 인코딩을 수행할 것인지를 결정하고, 스위칭부(440)를 통해서 인코딩 경로를 스위칭할 수 있다.
상술한 엔트로피 인코딩부(400)는 도 1에 도시된 엔트로피 인코딩부(130)일 수 있다.
한편, 도 4가 엔트로피 디코딩부의 일 예라고 가정하면, 엔트로피 디코딩부(400)는 이진화(binarization)부(410), 정규 코딩 엔진(Regular Coding Engine, 420), 바이패스 코딩 엔진(Bypass Coding Engine, 430)를 포함할 수 있다.
엔트로피 디코딩부(400)는 D3 방향으로 입력되는 신호를 처리하여, D4 방향으로 처리된 신호를 출력한다.
이진화부(410), 정규 코딩 엔진(420), 바이패스 코딩 엔진(430)은 엔트로피 인코딩부에서 설명한 바와 동일한 과정을 역순으로 수행한다.
예컨대, 엔트로피 디코딩부(400)는 입력되는 신택스 요소에 관한 빈(bin)별로 정규 코딩 엔진(420)에서 디코딩될 것인지 바이패스 코딩 엔진(430)에서 디코딩될 것인지를 결정한다.
정규 코딩 엔진을 이용하는 것으로 결정되면, 정규 코딩 엔진(420)에서 콘텍스트를 이용한 디코딩이 수행된다. 바이패스 코딩 엔진을 이용하는 것으로 결정되면, 바이패스 코딩 엔진(430)에서 균일한 확률 분포를 이용한 디코딩이 수행된다. 각 코딩 엔진(420, 430)에서의 디코딩에 의해 이진 코드가 출력된다.
특정 신택스(신택스 요소)에 대한 모든 빈에 대해서 코딩 엔진에서의 디코딩이 완료되면, 해당 신택스(신택스 요소)의 모든 빈에 대해 출력된 바이너리 코드를 합하여 어떤 신택스 값에 매핑되는지를 판단한다. 출력된 최종 바이너리 코드가 특정 신택스에 매핑되는 경우, 해당 바이너리 코드의 값이 매핑되는 신택스의 값으로 정해진다.
이때, 필요에 따라서 이진화부(410)는 역이진화를 수행할 수 있다.
한편, 디코딩 장치에서는 인코딩 장치로부터 수신한 비트스트림을 엔트로피 디코딩 한다. 이하에서는, 설명의 편의를 위해서, 본 발명이 적용되는 엔트로피 디코딩의 일 예로서, 인코딩 장치에서 CABAC를 이용하여 영상 정보를 엔트로피 인코딩한 경우, 디코딩 장치에서 수행되는 엔트로피 디코딩 방법을 설명한다.
인코딩 장치 예컨대, 인코딩 장치 내의 엔트로피 디코딩부에서는, CABAC로 코딩된 신택스 요소를 파싱하는 경우에, 해당 신택스 요소의 값에 대한 요청에 따라서 CABAC 파싱 과정을 개시한다.
구체적으로, 신택스 요소 값에 대한 요청에 따라서, 해당 신택스 요소 값에 대한 이진화(binarization)가 유도된다. 이진화 과정에서는 적용된 이진화 타입(예컨대, 유너리(unary) 이진화, 절삭된 유너리(truncated unary) 이진화, 지수 골룸(Exp-Golomb) 이진화, 고정 길이(fixed length) 이진화 등)에 따라서 이진화가 수행된다.
신택스 요소에 대한 이진화 및 파싱된 빈들의 시퀀스가 디코딩 프로세스를 결정한다. 신택스 요소에 대해 이진화된 값들에 있어서 각각의 빈들은 빈 인덱스(binIdx)에 의해 인덱싱되며, 각 빈에 대하여 콘텍스트 인덱스(ctxIdx)가 유도된다. 신택스 요소별로 콘텍스트 인덱스의 초기값이 설정될 수 있다. 이 경우에, 신택스 요소별로 콘텍스트 인덱스의 값을 설정한 콘텍스트 인덱스 테이블을 이용할 수 있으며, 해당 테이블을 소정의 지시자, 예컨대, 콘텍스트 인덱스 테이블 지시자(ctxIdxTable)를 이용하여 특정할 수 있다.
각각의 콘텍스트 인덱스에 대하여, 산술적인(arithmetic) 디코딩 과정이 개시된다.
도 5는 본 발명이 적용되는 엔트로피 디코딩 과정의 일 예를 개략적으로 설명하는 순서도이다. 설명의 편의를 위해, 도 5에서는 단일 빈에 대한 디코딩 과정을 일 예로서 설명한다.
도 5에 도시된 디코딩 과정은, 디코딩 장치, 더 구체적으로는 디코딩 장치 내의 엔트로피 디코딩부에서 수행될 수 있다. 여기서는 설명의 편의를 위해, 엔트로피 디코딩부에서 각 과정을 수행하는 것으로 설명한다.
도 5를 참조하면, 엔트로피 디코딩부는 입력된 디코딩 대상 빈에 대하여, 바이패스 디코딩을 적용할 것인지를 판단한다(S510). 엔트로피 디코딩부는 대상 빈에 대한 정보를 기반으로 바이패스 디코딩을 적용할 것인지를 판단할 수 있다. 예컨대, 후술하는 바와 같이, 테이블을 이용하여 고정적인 콘텍스트를 사용하는 경우에, 엔트로피 디코딩부는 해당 신택스 요소에 대해 테이블상에서 할당되는 지시를 기반으로 바이패스 디코딩을 적용할 것인지를 판단할 수도 있다. 또한, 테이블을 이용하여 고정적인 콘텍스트를 사용하는 경우에, 엔트로피 디코딩부는 해당 신택스 요소에 대해 테이블상에서 할당되는 인덱스, 오프셋 등에 기반하여 바이패스 디코딩을 적용할 것인지를 판단할 수도 있다.
엔트로피 디코딩부는 바이패스 디코딩을 적용하는 것으로 판단한 경우에, 입력된 빈에 대한 바이패스 디코딩을 수행한다(S520). 바이패스 디코딩을 수행하는 경우에는 인코딩의 경우와 마찬가지로 균일한 확률 분포를 이용한다. 엔트로피 디코딩부는 바이패스 디코딩 엔진의 상태에 따라서, 코드 인터벌 구간(Code Interval Range) codIRange와 코드 인터벌 오프셋(Code Interval Offset) codIOffset을 비교하여, 빈의 값을 할당할 수 있다. 예컨대, 코드 인터벌 오프셋이 코드 인터벌 구간보다 같거나 크면 빈의 값으로 1의 값을 할당하고, 코드 인터벌 오프셋이 코드 인터벌 구간보다 작으면 빈의 값으로 0의 값을 할당할 수 있다. 이때, 코드 인터벌 구간과 코드 인터벌 오프셋을 직접 비교하기 위해, 코드 인터벌 구간 또는 코드 인터벌 오프셋의 값을 적절히 조정할 수도 있다.
S510 단계에서 바이패스 디코딩이 수행되지 않는다고 판단한 경우에, 엔트로피 디코딩부는 디코딩 종료 조건이 만족되고 있는지를 판단할 수 있다(S530). 예컨대, 콘텍스트 인덱스(ctxIdx)의 값이 0이고, 콘텍스트 인덱스 테이블(ctxIdxTable)의 값이 0이면, 엔트로피 디코딩부가 디코딩 과정을 종료(terminate)하도록 할 수 있다. 또한, 종료 조건이 만족되었는지를 인덱스들의 값에 따라서 결정하지 않고, 플래그 등과 같은 신택스 정보로 인코딩 장치로부터 전송할 수도 있다. 이때, 신택스 정보가 지시하는 종료 조건과 인덱스 값에 의해 결정되는 종료 조건이 동일할 수도 있다.
엔트로피 디코딩부는 종료 조건이 만족하면, 상술한 바와 같이, 디코딩 과정을 종료한다(S540). 엔트로피 디코딩부는 종료 전에 소정의 설정값을 빈의 값으로 할당할 수도 있다. 이때, 엔트로피 디코딩부는 바이패스 디코딩에 의해 빈의 값을 할당할 수도 있다.
엔트로피 디코딩부는 종료 조건이 만족하지 않으면, 디코딩을 수행할 수 있다(S550). 엔트로피 디코딩부는 디코딩 대상 빈을 지시하는 빈 인덱스 binIdx, 디코딩 대상 빈에 적용되는 콘텍스트를 지시하는 콘텍스트 인덱스 ctxIdx를 기반으로 디코딩 대상 빈을 디코딩할 수 있다.
이하, 콘텍스트를 이용하여 디코딩을 수행하는 방법에 대하여 구체적으로 설명한다.
상술한 바와 같이, 높은 코딩 효율이 요구되는 영상 정보를 처리하는 경우에는 엔트로피 코딩(엔트로피 인코딩/엔트로피 디코딩)을 이용할 수 있다. 엔트로피 코딩에는 지수 골롬과 같은 기본적인 코딩 방법 외에 가변 길이 코딩(Variable Length Coding: VLC)나 상술한 콘텍스트 기반 적응적 산술 코딩(Context-based Adaptive Binary Arithmetic Code: CABAC) 등이 이용될 수 있다.
CABAC에 있어서, 콘텍스트 기반이란, 주위의 상황을 고려하여, 더 효율이 좋은 코딩 방식을 적응적으로 선택하여 적용한다는 것을 의미한다. 이와 관련하여, 서로 다른 콘텍스트를 이용한다는 것은, 독립적인 콘텍스트 갱신(update)을 통해서, 서로 다른 확률 모델을 적용하여 코딩한다는 것을 의미한다.
CABAC에서 콘텍스트를 코딩에 활용하는 방법으로 아래와 같은 방식을 우선 고려할 수 있다.
<콘텍스트 활용 방법>
콘텍스트를 주위 상황에 따라 산출하여 적응적으로 코딩에 활용하는 방법.
(b) 고정된 콘텍스트를 사용하도록 사전에 특정 콘텍스트 테이블을 정의하고, 정의한 테이블에서 지정된 콘텍스트를 사용하는 방법.
(c) 콘텍스트를 참조하지 않고, 이진 코드(binary code)를 그대로 코딩(인코딩/디코딩)하는 바이패스 코딩(인코딩/디코딩) 방법.
(d) 상기 (a) ~ (c)의 방법을 선택적으로 조합하여 사용하는 방법.
콘텍스트 활용 방법 중 (a)의 방법은 코딩 전에 주위 상황을 고려하여 콘텍스트를 계산하는 과정이 수반되므로, 가장 높은 복잡도를 가진다. 인코딩 장치는 주변 상황, 예컨대, 전후의 빈에 적용된 콘텍스트 또는 현재 블록보다 먼저 코딩된 블록(예컨대, 좌측 블록이나 상측 블록)의 콘텍스트 등을 살펴서 코딩할 신택스 요소의 이진 코드를 구성하는 각 빈별로 콘텍스트를 산출할 수 있다. 인코딩 장치는 산출된 콘텍스트에 관한 정보를 디코딩 장치에 전송할 수 있다. 디코딩 장치는 수신한 콘텍스트 정보를 기반으로 해당 빈에 대한 디코딩을 수행할 수 있다.
또는, 인코딩 장치가 각 빈에 대한 콘텍스트를 결정해서 전송하지 않고, 인코딩 장치와 디코딩 장치가 동일한 방법에 의해 주변 상황을 고려하여 콘텍스트를 산출하도록 할 수도 있다.
상기 콘텍스트 활용 방법 중 (b)의 방법은, (a)의 방법처럼 매번 콘텍스트를 계산하지 않고, 특정 신택스 요소의 이진 코드를 구성하는 각 빈에 대하여 콘텍스트 인덱스를 할당하는 콘텍스트 테이블을 미리 설정하고, 콘텍스트 테이블에서 할당되는 콘텍스트 인덱스가 지시하는 콘텍스트를 해당 빈의 디코딩에 이용하는 방법이다. (b)의 방법을 사용하는 경우에는, 각 빈에 대하여 고정된 콘텍스트가 사용될 수도 있다.
표 4는 (b)의 방법을 적용하는 경우에, 빈 인덱스와 콘텍스트 인덱스가 지정되는 일 예를 개략적으로 나타낸 표이다.
[표 4]
표 4는 특정 신택스 요소를 가정할 때, 해당 신택스 요소에 적용되는 콘텍스트 테이블의 일 예를 나타낸 것이다.
표 4의 예에서, 빈 인덱스 binIdx는, 신택스 요소의 이진 코드를 구성하는 빈들 중에서 특정 빈을 지시한다. 예컨대, binIdx의 값이 0이면 신택스 요소의 이진 코드를 구성하는 빈들 중에서 0번째 빈을 지시하고, binIdx의 값이 4이면 신택스 요소의 이진 코드를 구성하는 빈들 중에서 3번째 빈을 지시한다. 신택스 요소는 merge_idx, intra_chroma_pred_mode, inter_pred_flag 등과 같이 인코딩 장치로부터 디코딩 장치로 전송되는 신택스 요소들일 수 있다.
표 4의 예를 참조하면, 신택스 요소의 이진 코드를 구성하는 빈들(0~4)에 대해, 콘텍스트 인덱스가 각각 할당된다. 콘텍스트 인덱스들(Idx0 ~ Idx4)은 서로 다른 값을 가질 수 있다. 콘텍스트 인덱스는 해당 빈에 대해서 적용될 콘텍스트를 지시할 수 있다. 콘텍스트 인덱스가 지시하는 콘텍스트는 별도의 테이블을 통해 할당될 수 있다. 예컨대, 신택스 요소별로 구성된 별도의 콘텍스트 테이블 상에서, 콘텍스트 인덱스가 지시하는 특정 콘텍스트가 할당되도록 할 수도 있다.
신택스 요소의 각 빈들은 할당된 콘텍스트 인덱스에 의해 지시되는 콘텍스트에 기반해서 디코딩될 수 있다.
디코딩 장치는 신택스 요소를 엔트로피 디코딩하는 경우에, 특정 빈에 대해서는 해당 빈에 할당된 콘텍스트 인덱스가 지시하는 콘텍스트를 이용할 수 있다. 예컨대, 빈 인덱스 값이 0인 경우에는 idx0이 지시하는 콘텍스트를 이용하여 0번째 빈을 디코딩할 수 있다.
표 4의 예에서는 빈 인덱스의 최대값(binIdxMax)이 4인 경우를 예시하고 있으나, 빈 인덱스의 최대값은 4보다 클 수도 있고, 4보다 작을 수도 있다. 최대값보다 큰 빈 인덱스에 대해서는 가장 큰 빈 인덱스(binIdxMax)에 할당된 콘텍스트 인덱스와 동일한 콘텍스트 인덱스를 이용할 수 있다.
콘텍스트 활용 방법 중 (c)의 방법은 (a) 또는 (b)보다 복잡도가 높지 않다. (c)의방법에서 이용되는 바이패스 코딩은 상술한 바와 같이, 균일한 확률 분포를 이용하며, 신속한 코딩을 위해 적용된다. 바이패스 코딩에 관한 내용은 상술한 바와 같다.
특정한 이진 코드(binary code)를 CABAC 코딩하는데 있어서, 이진 코드를 구성하는 각 자리의 수 0 또는 1에 대하여 콘텍스트가 적용된다. 이때, 이진 코드를 구성하는 각 자리의 수 0 또는 1을 상술한 바와 같이 빈(bin)이라고 한다. 예컨대, 이진 코드가 110이라면, 0번째 빈은 1, 1번째 빈은 1, 2번째 빈은 0이 된다.
CABAC 코딩에서는 신택스 요소의 이진 코드를 구성하는 빈들에 대하여 다양하게 콘텍스트를 결정할 수 있다.
<이진 코드를 구성하는 빈에 대한 콘텍스트 결정 방법>
(A) 신택스 요소의 이진 코드를 구성하는 각각의 빈에 대하여 독립적인 콘텍스트를 적용할 수 있다.
(B) 신택스 요소의 이진 코드를 구성하는 빈들에 동일한 콘텍스트를 공통적으로 적용할 수 있다.
(C) 신택스 요소의 이진 코드를 구성하는 빈들을 바이패스 모드로 코딩(바이패스 코딩)하도록 할 수 있다.
(D) 상기 (A) 내지 (C)를 조합하여 신택스 요소의 이진 코드를 구성하는 빈들에 대한 콘텍스트를 결정할 수 있다.
방법 (A)에서는, 신택스 요소의 이진 코드를 구성하는 각 빈들에 대하여 독립적인 콘텍스트가 적용된다. 따라서, 각 빈들에 대한 콘텍스트는 독립적으로 업데이트될 수 있다. 방법 (B)에서는, 이진 코드를 구성하는 각 빈들에 동일한 콘텍스트가 적용되며, 업데이트 역시 동일하게 수행될 수 있다. 방법 (C)에서는 이진 코드를 구성하는 빈들을 모두 바이패스 모드로 코딩하게 되므로, 신속한 디코딩이 이루어질 수 있다.
또한, 방법 (D)에 따라서, 상기 방법 (A) 내지 방법 (C)를 조합하여 적용할 수도 있다. 예컨대, 신택스 요소의 이진 코드를 구성하는 빈들 중에서 일부 빈들에 대해서는 각각 독립적인 콘텍스트를 적용하고, 일부 빈들에 대해서는 동일한 콘텍스트를 적용할 수 있다. 또한, 신택스 요소의 이진 코드를 구성하는 빈들 중에서 일부 빈들에 대해서는 각각 독립적인 콘텍스트를 적용하고, 일부 빈들에 대해서는 바이패스 모드를 적용할 수도 있다. 또한, 신택스 요소의 이진 코드를 구성하는 빈들 중에서 일부 빈들에 대해서는 동일한 콘텍스트를 적용하고, 일부 빈들에 대해서는 바이패스 모드를 적용할 수도 있다. 또한, 신택스 요소의 이진 코드를 구성하는 빈들 중에서 일부 빈들에 대해서는 각각 독립적인 콘텍스트를 적용하고, 일분 빈들에 대해서는 동일한 콘텍스트를 적용하며, 일부 빈들에 대해서는 바이패스 모드를 적용할 수도 있다.
한편, 상기 신택스 요소의 이진 코드를 구성하는 빈에 대한 콘텍스트 결정 방법 (A)~(D)를 상기 콘텍스트 활용 방법 (a) 내지 (d)와 함께 적용할 수도 있다.
예컨대, 방법 (A)를 기반으로 특정 신택스(신택스 요소)에 대하여, 해당 신택스(신택스 요소)의 이진 코드를 구성하는 모든 빈에 독립적인 콘텍스트를 적용하며, 적용되는 독립적인 콘텍스트는 적용할 빈에 대하여 주변 환경을 고려하여 산출되도록 할 수 있다.
또한, 특정 신택스(신택스 요소)에 대하여, 해당 신택스(신택스 요소)의 이진 코드를 구성하는 모든 빈에 독립적인 콘텍스트를 적용하며, 적용되는 독립적인 콘텍스트는 미리 설정된 콘텍스트 테이블을 통해서 지시되로록 할 수도 있다.
표 5는 신택스 요소의 이진 코드를 구성하는 각 빈들에 대하여 독립적인 콘텍스트를 할당하는 경우에, 미리 정해진 콘텍스트 테이블을 통해 콘텍스트를 할당하는 예를 나타낸 것이다.
[표 5]
Figure 112021036944283-pat00004
표 5는 특정 신택스 요소 A를 가정할 때, 신택스 요소 A에 적용되는 콘텍스트 테이블의 일 예를 나타낸 것이다.
표 5에서, 각 빈별 콘텍스트 인덱스들(Idx0 ~ Idx4)는 서로 독립적으로, 해당 빈에 대해 적용할 콘텍스트를 지시하며, 각 콘텍스트 인덱스들에 의해 지시되는 콘텍스트들은 서로 독립적으로 업데이트 될 수 있다.
표 5의 예에서는 빈 인덱스의 최대값(binIdxMax)이 4인 경우를 예시하고 있으나, 빈 인덱스의 최대값은 4보다 클 수도 있고, 4보다 작을 수도 있다. 최대값보다 큰 빈 인덱스에 대해서는 가장 큰 빈 인덱스(binIdxMax)에 할당된 콘텍스트 인덱스와 동일한 콘텍스트 인덱스를 이용할 수 있다.
한편, 특정 신택스(신택스 요소)에 대하여, 해당 신택스(신택스 요소)의 이진 코드를 구성하는 빈들 중 일부 빈들에 독립적인 콘텍스트를 적용하며, 일부 빈들에 대해서는 바이패스 모드를 적용할 수 있다.
이때, 빈들에 적용하는 콘텍스트들은 해당 빈에 콘텍스트를 적용해야 할 때, 주변 환경을 고려하여 산출할 수 있다.
미리 구성된 콘텍스트 테이블에서 각각의 빈별로 독립적인 콘텍스트 또는 바이패스 모드를 설정하고, 빈별 콘텍스트 인덱스로 어떤 콘텍스트 혹은 바이패스 모드를 적용할 것인지를 지시할 수도 있다.
표 6은 특정 신택스(신택스 요소)의 이진 코드를 구성하는 빈들 중에서 일부 빈들에 대해서는 독립적인 콘텍스트를 적용하고, 일부 빈들에 대해서는 바이패스 모드를 적용하는 경우에 이용될 수 있는 콘텍스트 테이블의 일 예를 나타낸 것이다.
[표 6]
Figure 112021036944283-pat00005
표 6은, 특정 신택스 요소 B를 가정할 때, 신택스 요소 B에 적용되는 콘텍스트 테이블의 일 예를 나타낸 것이다.
표 6의 예에서는, 신택스 요소 B의 이진 코드를 구성하는 빈들 중에서 0번째, 2번째, 4번째 빈들에 독립적인 콘텍스트가 적용되며, 1번째, 3번째 빈들에 대해서는 바이패스 모드가 적용된다.
표 6의 예에서는 빈 인덱스의 최대값(binIdxMax)이 4인 경우를 예시하고 있으나, 빈 인덱스의 최대값은 4보다 클 수도 있고, 4보다 작을 수도 있다. 최대값보다 큰 빈 인덱스에 대해서는 가장 큰 빈 인덱스(binIdxMax)에 할당된 콘텍스트 인덱스와 동일한 콘텍스트 인덱스를 이용할 수 있다.
또한, 방법 (A)와 방법 (B)를 기반으로 특정 신택스(신택스 요소)에 대하여, 해당 신택스(신택스 요소)의 이진 코드를 구성하는 일부 빈에는 독립적인 콘텍스트를 적용하고, 다른 일부 빈에는 동일한 콘텍스트를 공통적으로 적용하며, 각각의 콘텍스트는 적용할 빈에 대하여 주변 환경을 고려하여 산출되도록 할 수 있다.
특정 신택스(신택스 요소)에 대하여, 해당 신택스(신택스 요소)의 이진 코드를 구성하는 일부 빈에는 각각 독립적인 콘텍스트를 적용하고, 다른 일부 빈에는 동일한 콘텍스트를 공통적으로 적용하며, 각각의 콘텍스트는 미리 설정된 콘텍스트 테이블을 통해서 지시되도록 할 수도 있다.
표 7은 신택스 요소의 이진 코드를 구성하는 각 빈들에 대하여 일부 빈에 대해서는 각각 독립적인 콘텍스트를 적용하고, 일부 빈에 대해서는 동일한 콘텍스트를 공통적으로 적용하는 경우에, 콘텍스트 테이블을 통해 콘텍스트를 할당하는 일 예를 나타낸 것이다.
[표 7]
Figure 112021036944283-pat00006
표 7은 특정 신택스 요소 C를 가정할 때, 신택스 요소 C에 적용되는 콘텍스트 테이블의 일 예를 나타낸 것이다.
표 7에서, 1번째 빈과 2번째 빈에 대해서는 콘텍스트 인덱스 Idx1이 지시하는 동일한 콘텍스트가 적용된다. 0번째 빈, 3번째 빈, 4번째 빈에는 각각 콘텍스트 인덱스 Idx0, Idx2, Idx3이 지시하는 콘텍스트가 적용될 수 있다. 콘텍스트 인덱스 Idx0 ~ Idx3은 서로 다른 값을 가질 수 있고, 각 콘텍스트 인덱스들에 의해 지시되는 콘텍스트들은 서로 독립적으로 업데이트 될 수 있다.
표 7의 예에서는 빈 인덱스의 최대값(binIdxMax)이 4인 경우를 예시하고 있으나, 빈 인덱스의 최대값은 4보다 클 수도 있고, 4보다 작을 수도 있다. 최대값보다 큰 빈 인덱스에 대해서는 가장 큰 빈 인덱스(binIdxMax)에 할당된 콘텍스트 인덱스와 동일한 콘텍스트 인덱스를 이용할 수 있다.
한편, 특정 신택스(신택스 요소)에 대하여, 해당 신택스(신택스 요소)의 이진 코드를 구성하는 일부 빈에는 각각 독립적인 콘텍스트를 적용하고, 일부 빈에는 동일한 콘텍스트를 공통적으로 적용하며, 일부 빈들에 대해서는 바이패스 모드를 적용할 수도 있다.
이때, 콘텍스트들은 빈에 콘텍스트를 적용해야 할 때, 주변 환경을 고려하여 산출할 수 있다. 또한, 미리 구성된 콘텍스트 테이블에서 각각의 빈별로 콘텍스트 또는 바이패스 모드를 설정하고, 빈별 콘텍스트 인덱스로 어떤 콘텍스트 혹은 바이패스 모드를 적용할 것인지를 지시할 수도 있다.
표 8은 특정 신택스(신택스 요소)의 이진 코드를 구성하는 빈들 중에서 일부 빈들에는 각각 독립적인 콘텍스트를 적용하고, 일부 빈들에는 동일한 콘텍스트를 공통적으로 적용하며, 일부 빈들에 대해서는 바이패스 모드를 적용하는 경우에 이용될 수 있는 콘텍스트 테이블의 일 예를 나타낸 것이다.
[표 8]
Figure 112021036944283-pat00007
표 8은, 특정 신택스 요소 D를 가정할 때, 신택스 요소 D에 적용되는 콘텍스트 테이블의 일 예를 나타낸 것이다.
표 8의 예에서는, 신택스 요소 D의 이진 코드를 구성하는 빈들 중에서 0번째 빈에는 콘텍스트 인덱스 Idx0이 지시하는 콘텍스트가 적용되고, 1번째 빈에는 바이패스 모드가 적용되며, 2번째 빈에는 콘텍스트 인덱스 Idx1이 지시하는 콘텍스트가 적용되고, 3번째 빈 및 4번째 빈에는 콘텍스트 인덱스 Idx2가 지시하는 콘텍스트가 적용된다.
표 8의 예에서는 빈 인덱스의 최대값(binIdxMax)이 4인 경우를 예시하고 있으나, 빈 인덱스의 최대값은 4보다 클 수도 있고, 4보다 작을 수도 있다. 최대값보다 큰 빈 인덱스에 대해서는 가장 큰 빈 인덱스(binIdxMax)에 할당된 콘텍스트 인덱스와 동일한 콘텍스트 인덱스를 이용할 수 있다.
한편, 방법 (B)를 기반으로 특정 신택스(신택스 요소)의 이진 코드를 구성하는 각 빈들에 동일한 콘텍스트를 공통으로 적용하는 할 수도 있다. 이때, 공통되는 콘텍스트는 빈에 적용할 때 주변 환경을 고려하여 산출될 수 있다. 또한, 공통되는 콘텍스트는 미리 구성된 콘텍스트 테이블을 통해서 할당될 수도 있다.
표 9는 특정 신택스(신택스 요소)의 이진 코드를 구성하는 빈들에 동일한 콘텍스트를 공통적으로 적용하는 경우에 이용될 수 있는 콘텍스트 테이블의 일 예를 나타낸 것이다.
[표 9]
Figure 112021036944283-pat00008
표 9는, 특정 신택스 요소 E를 가정할 때, 신택스 요소 E에 적용되는 콘텍스트 테이블의 일 예를 나타낸 것이다.
표 9의 예에서는, 신택스 요소 E의 이진 코드를 구성하는 빈들에 콘텍스트 인덱스 Idx0이 지시하는 콘텍스트가 공통으로 적용된다.
표 9의 예에서는 빈 인덱스의 최대값(binIdxMax)이 4인 경우를 예시하고 있으나, 빈 인덱스의 최대값은 4보다 클 수도 있고, 4보다 작을 수도 있다. 최대값보다 큰 빈 인덱스에 대해서는 가장 큰 빈 인덱스(binIdxMax)에 할당된 콘텍스트 인덱스와 동일한 콘텍스트 인덱스를 이용할 수 있다.
또한, 특정 신택스(신택스 요소)에 대하여, 해당 신택스(신택스 요소)의 이진 코드를 구성하는 일부 빈에는 동일한 콘텍스트를 공통적으로 적용하고, 일부 빈들에 대해서는 바이패스 모드를 적용할 수도 있다.
이때, 콘텍스트들은 빈에 콘텍스트를 적용해야 할 때, 주변 환경을 고려하여 산출할 수 있다. 또한, 미리 구성된 콘텍스트 테이블을 통해서, 일부 빈들에 공통적으로 적용되는 콘텍스트 또는 바이패스 모드를 설정하고, 콘텍스트 인덱스로 콘텍스트 혹은 바이패스 모드를 지시할 수도 있다.
표 10은 특정 신택스(신택스 요소)의 이진 코드를 구성하는 빈들 중에서 일부 빈들에는 동일한 콘텍스트를 공통적으로 적용하고, 일부 빈들에 대해서는 바이패스 모드를 적용하는 경우에 이용될 수 있는 콘텍스트 테이블의 일 예를 나타낸 것이다.
[표 10]
Figure 112021036944283-pat00009
표 10은, 특정 신택스 요소 F를 가정할 때, 신택스 요소 F에 적용되는 콘텍스트 테이블의 일 예를 나타낸 것이다.
표 10의 예에서는, 신택스 요소 F의 이진 코드를 구성하는 빈들 중에서 2번째 빈에는 바이패스 모드를 적용하고, 0번째 빈, 1번째 빈, 3번째 빈 및 4번째 빈에는 콘텍스트 인덱스 Idx0이 지시하는 콘텍스트를 적용한다.
표 10의 예에서는 빈 인덱스의 최대값(binIdxMax)이 4인 경우를 예시하고 있으나, 빈 인덱스의 최대값은 4보다 클 수도 있고, 4보다 작을 수도 있다. 최대값보다 큰 빈 인덱스에 대해서는 가장 큰 빈 인덱스(binIdxMax)에 할당된 콘텍스트 인덱스와 동일한 콘텍스트 인덱스를 이용할 수 있다.
방법 (C)에 기반해서, 특정 신택스(신택스 요소)에 대하여, 해당 신택스(신택스 요소)의 이진 코드를 구성하는 모든 빈에 대해서 바이패스 모드를 적용할 수도 있다. 이 경우에도, 바이패스 모드를 적용하는 것을 해당 신택스(신택스 요소)에 대하여 미리 구성된 콘텍스트 테이블을 통해 지시할 수 있다. 이때, 콘텍스트 테이블은 모든 빈 인덱스에 대하여 바이패스 모드가 할당되는 방식으로 구성될 수 있다.
한편, 특정 신택스(신택스 요소)의 이진 코드를 구성하는 빈들에 대해서, 동일한 빈에 서로 다른 콘텍스트를 적용할 수도 있다. 예컨대, 콘텍스트 테이블에서, 동일한 빈 인덱스에 서로 다른 복수의 콘텍스트 인덱스가 할당되도록 할 수도 있다.
콘텍스트 인덱스는 해당 신택스(신택스 요소)가 적용되는 환경(상태 또는 조건)에 따라서 달라질 수 있다. 예컨대, 동일한 빈에 대하여, 신택스(신택스 요소)가 적용되는 블록의 종류, 픽처(슬라이스, 프래임)의 종류, 예측 모드, 블록의 크기, 블록의 깊이 등과 같은 상태나 조건에 따라서 이진 코드 내 동일 위치의 빈에 대해서 서로 다른 콘텍스트가 적용될 수 있다. 이때, 어떤 상태는 다른 등가의 상태에 의해 특정될 수도 있다. 예컨대, 블록의 크기가 블록의 깊이에 의해 특정될 수 있고, 블록의 깊이가 블록의 크기에 의해 특정될 수도 있으며, 따라서 두 조건이 동일한 환경을 특정하는 상태 또는 조건이 될 수도 있다.
픽처(슬라이스, 프레임) 타입에 의해 공통의 콘텍스트를 적용하거나 서로 다른 콘텍스트를 적용하도록 하는 경우에는 픽처(슬라이스, 프레임)가 I 픽처(슬라이스, 프레임)인지, P 픽처(슬라이스, 프레임)인지, B 픽처(슬라이스, 프레임)인지에 따라서, 동일한 빈 인덱스에 대해서 서로 다른 콘텍스트 인덱스가 할당되도록 할 수 있다.
이하, 동일한 빈 인덱스에 서로 다른 콘텍스트(콘텍스트 인덱스)를 적용할 수 있는 경우에 대하여 구체적으로 설명한다.
신택스 요소는 상술한 바와 같이, 소정의 빈들로 구성되는 이진 코드(코드워드) 값을 가질 수 있다. 예컨대, 크로마 성분에 대한 인트라 예측의 경우에는 LM 모드가 적용되는지에 따라서, 표 2 및 표 3에서 설명한 바와 같이, 5개 혹은 6개의 예측 모드가 허용된다. 따라서, 크로마 성분에 대한 인트라 예측 모드를 지시하는 신택스 요소 intra_chroma_pred_mode는 5 내지 6개의 서로 다른 이진 코드(코드워드) 값을 가질 수 있다.
표 11은 LM 모드를 사용하는 경우에 크로마 성분의 예측에 사용될 수 있는 인트라예측 모드와 이를 지시하는 신택스 요소 intra_chroma_pred_mode의 이진 코드(코드 워드)를 나타낸 것이다.
또한, 표 12는 LM 모드를 사용하지 않는 경우에 크로마 성분의 예측에 사용될 수 있는 인트라 예측 모드와 이를 지시하는 신택스 요소 intra_chroma_pred_mode의 이진 코드(코드 워드)를 나타낸 것이다.
[표 11]
Figure 112021036944283-pat00010
[표 12]
Figure 112021036944283-pat00011
표 11 또는 표 12와 같이, 소정의 신택스 요소에 대한 이진 코드(코드워드)를 구성하는 빈들에 대하여, 상술한 바와 같은 방식으로 콘텍스트를 할당할 수 있다.
코드워드를 구성하는 빈들에 대하여, 동일한 빈에도 상태 또는 조건에 따라서 서로 다른 콘텍스트를 적용하기 위해, 콘텍스트 테이블을 이용할 수 있다. 이 경우에 특정 빈에 적용되는 콘텍스트는, 콘텍스트 테이블 상에서 각각의 빈 인덱스에 할당되는 인덱스 값에 조건 별로 부가되는 오프셋 값의 합에 의해 지시될 수 있다. 따라서, 이 경우에, 콘텍스트를 지시하는 콘텍스트 지시자는 오프셋 값과 각 빈 인덱스에 의해 지시되는 인덱스 값의 합이라고 할 수 있다. 설명의 편의를 위해 빈에 의해 지시되는 인덱스 값을 빈에 의한 콘텍스트 인덱스(context index by bin)라고 하고, 해당 빈에 적용될 콘텍스트를 지시하는 인덱스를 빈에 대한 콘텍스트 인덱스(context index for bin: ctxIdx)라고 한다.
표 13은 동일한 빈에 대해 상태 정보 또는 조건을 반영하여 서로 다른 콘텍스트를 적용하는 경우에 이용될 수 있는 콘텍스트 테이블의 일 예를 나타낸 것이다.
[표 13]
Figure 112021036944283-pat00012
표 13에서, 0~4는 빈 인덱스(binIdx) 값을 나타낸다. 또한, 오프셋 값 A1, A2, A3은 후술하는 예에서와 같이, 서로 다른 값일 수 있다. 빈에 의한 콘텍스트 인덱스, 즉 빈 인덱스 별로 할당된 인덱스(빈에 의한 콘텍스트 인덱스) B0, B1, B2, B3, B4는 전부 또는 일부가 다른 값을 가질 수도 있다.
표 13의 예에서는 빈 인덱스의 최대값(binIdxMax)이 4인 경우를 예시하고 있으나, 빈 인덱스의 최대값은 4보다 클 수도 있고, 4보다 작을 수도 있다. 최대값보다 큰 빈 인덱스에 대해서는 가장 큰 빈 인덱스(binIdxMax)에 할당된 콘텍스트 인덱스와 동일한 콘텍스트 인덱스를 이용할 수 있다.
또한, 상술한 바와 같이, 오프셋 값은 소정의 상태 또는 조건에 따라서 설정될 수 있다. 예컨대, 픽처(슬라이스, 프레임) 타입에 따라서 오프셋 값이 설정되는 경우라면, A1은 I 픽처(슬라이스, 프레임)에 대한 오프셋, A2는 P 픽처(슬라이스, 프레임)에 대한 오프셋, A3은 B 픽처(슬라이스, 프레임)에 대한 오프셋일 수 있다.
또한, 오프셋 값은 픽처(슬라이스, 프레임) 타입과 같은 상태 정보 또는 조건으로부터 직접 결정될 수도 있고, 픽처(슬라이스, 프레임) 타입과 같은 상태 정보 또는 조건에 의해 결정되는 소정의 타입 값과 같은 매개값을 통해 결정될 수도 있다.
오프셋 값을 이용함으로써, 상태 정보 또는 조건을 반영하여 각각의 빈에 대해 서로 다른 콘텍스트가 할당되도록 할 수 있다. 상기 표 13이 소정의 신택스(신택스 요소)에 대한 것이라고 할 때, A1, A2, A3의 값이 서로 다르고, B0, B1, B2, B3, B4의 값이 서로 다르다면, 소정의 신택스(신택스 요소)의 코드워드(이진 코드)를 구성하는 각각의 빈에 대해 서로 다른 콘텍스트를 할당할 수 있다.
표 14는 오프셋 값을 픽처(슬라이스, 프레임) 타입에 따라서 달리 설정해서 각각의 빈에 대해 서로 다른 콘텍스트가 할당하는 경우에 이용할 수 있는 콘텍스트 테이블의 일 예를 나타낸 것이다.
[표 14]
Figure 112021036944283-pat00013
표 14에서는, 표 13의 오프셋 값과 빈에 의한 콘텍스트 인덱스 값을 구체적으로 설정하는 예를 나타낸 것이다. 표 14에서 오프셋 값과 빈에 의한 콘텍스트 인덱스 값은, 적합한 콘텍스트를 지시하기 위해 표 14에 예시된 값과 다르게 설정될 수 있다.
상태 정보 또는 조건에 따라서 다른 오프셋을 적용함으로써, 조건별로 다른 콘텍스트가 할당되도록 하며, 신택스(신택스 요소)의 코드워드를 구성하는 빈들 중에서 일부 빈에는 동일한 콘텍스트를 공통으로 적용할 수도 있다. 예컨대, 상기 표 13이 소정의 신택스(신택스 요소)에 대한 것이라고 할 때, B0, B1, B2, B3, B4의 값 중 일부가 동일한 값을 가지도록 설정할 수 있다.
표 15는 오프셋 값을 픽처(슬라이스, 프레임) 타입에 따라서 달리 설정하고, 신택스(신택스 요소)의 코드워드를 구성하는 일부 빈들에 대해 동일한 콘텍스트를 공통으로 적용하는 경우에 이용할 수 있는 콘텍스트 테이블의 일 예를 나타낸 것이다.
[표 15]
Figure 112021036944283-pat00014
표 15는, 표 13의 오프셋 값과 빈에 의한 콘텍스트 인덱스 값을 구체적으로 설정하는 예를 나타낸 것으로서, 표 15에서 오프셋 값과 빈에 의한 콘텍스트 인덱스 값은, 적합한 콘텍스트를 지시하기 위해 표 15에 예시된 값과 다르게 설정될 수 있다.
상태 정보 또는 조건에 따라서 다른 오프셋을 적용함으로써, 조건별로 다른 콘텍스트가 할당되도록 하며, 신택스(신택스 요소)의 코드워드를 구성하는 빈들 중에서 일부 빈에는 독립적인 콘텍스트를 적용하고, 일부 빈들에는 동일한 콘텍스트를 공통으로 적용하며, 일부 빈에는 바이패스 모드를 적용하도록 할 수도 있다. 예컨대, 상기 표 13이 소정의 신택스(신택스 요소)에 대한 것이라고 할 때, B0, B1, B2, B3, B4의 값 중 일부가 동일한 값을 가지도록 하고, B0, B1, B2, B3, B4의 값 중 일부는 구체적인 인덱스 값 대신 바이패스 모드를 지시하도록 설정할 수 있다.
표 16은 슬라이스 타입에 따라서 다른 콘텍스트가 정의되도록 오프셋 값을 설정하고, 일부 빈에는 독립적인 콘텍스트를 적용하며, 일부 빈들에 대해서는 동일한 콘텍스트를 공통으로 적용하고, 일부 빈에는 바이패스(bypass) 모드를 적용하는 경우에 이용할 수 있는 콘텍스트 테이블의 일 예를 나타낸 것이다.
[표 16]
Figure 112021036944283-pat00015
표 16이 소정의 신택스(신택스 요소)에 적용된다고 가정할 때, 해당 신택스(신택스 요소)의 코드워드를 구성하는 0번째 빈에 대해서는 빈에 의한 콘텍스트 인덱스로서 0이 할당되고, 1번째 내지 3번째 빈에 대해서는 빈에 의한 콘텍스트 인덱스로서 1이 할당된다. 4번째 빈에 대해서는 바이패스 모드가 적용된다.
표 16은, 표 13의 오프셋 값과 빈에 의한 콘텍스트 인덱스 값을 구체적으로 설정하는 예를 나타낸 것으로서, 표 16에서 오프셋 값과 빈에 의한 콘텍스트 인덱스 값은, 적합한 콘텍스트를 지시하기 위해 표 16에 예시된 값과 다르게 설정될 수 있다.
상태 정보 또는 조건에 따라서 다른 오프셋을 적용함으로써, 조건별로 다른 콘텍스트가 할당되도록 하며, 신택스(신택스 요소)의 코드워드를 구성하는 빈들 중에서 일부 빈에는 콘텍스트를 적용하고, 나머지 빈들에는 바이패스 모드를 적용하도록 할 수도 있다. 예컨대, 상기 표 13이 소정의 신택스(신택스 요소)에 대한 것이라고 할 때, B0, B1, B2, B3, B4의 값 중 일부에는 인덱스 값을 설정하고, B0, B1, B2, B3, B4의 값 중 나머지에 대해서는 구체적인 인덱스 값 대신 바이패스 모드를 지시하도록 설정할 수 있다.
표 17은 슬라이스 타입에 따라서 다른 콘텍스트가 정의되도록 오프셋 값을 설정하고, 일부 빈에는 콘텍스트를 적용하며, 나머지 빈들에 대해서는 바이패스(bypass) 모드를 적용하는 경우에 이용할 수 있는 콘텍스트 테이블의 일 예를 나타낸 것이다.
[표 17]
Figure 112021036944283-pat00016
표 17이 소정의 신택스(신택스 요소)에 적용된다고 가정할 때, 해당 신택스(신택스 요소)의 코드워드를 구성하는 0번째 빈에 대해서는 빈에 의한 콘텍스트 인덱스로서 0이 할당되고, 1번째 내지 4번째 빈에 대해서는 바이패스 모드가 적용된다.
표 17은, 표 13의 오프셋 값과 빈에 의한 콘텍스트 인덱스 값을 구체적으로 설정하는 예를 나타낸 것으로서, 표 17에서 오프셋 값과 빈에 의한 콘텍스트 인덱스 값은, 적합한 콘텍스트를 지시하기 위해 표 17에 예시된 값과 다르게 설정될 수 있다.
상태 정보 또는 조건에 따라서 다른 오프셋을 적용함으로써, 조건별로 다른 콘텍스트가 할당되도록 하며, 신택스(신택스 요소)의 코드워드를 구성하는 빈들 중에서 일부 빈들에는 서로 독립적인 콘텍스트를 적용하고, 나머지 빈들에는 바이패스 모드를 적용하도록 할 수도 있다. 예컨대, 상기 표 13이 소정의 신택스(신택스 요소)에 대한 것이라고 할 때, B0, B1, B2, B3, B4의 값 중 일부에는 서로 다른 인덱스 값을 설정하고, B0, B1, B2, B3, B4의 값 중 나머지에 대해서는 구체적인 인덱스 값 대신 바이패스 모드를 지시하도록 설정할 수 있다.
표 18은 슬라이스 타입에 따라서 다른 콘텍스트가 정의되도록 오프셋 값을 설정하고, 일부 빈들에는 서로 독립적인 콘텍스트를 적용하며, 나머지 빈들에 대해서는 바이패스(bypass) 모드를 적용하는 경우에 이용할 수 있는 콘텍스트 테이블의 일 예를 나타낸 것이다.
[표 18]
Figure 112021036944283-pat00017
표 18이 소정의 신택스(신택스 요소)에 적용된다고 가정할 때, 해당 신택스(신택스 요소)의 코드워드를 구성하는 0번째 빈에 대해서는 빈에 의한 콘텍스트 인덱스로서 0이 할당되고, 1번째 빈에 대해서는 빈에 의한 콘텍스트 인덱스로서 1이 할당되며, 2 번째 내지 4번째 빈에 대해서는 바이패스 모드가 적용된다.
표 18은, 표 13의 오프셋 값과 빈에 의한 콘텍스트 인덱스 값을 구체적으로 설정하는 예를 나타낸 것으로서, 표 18에서 오프셋 값과 빈에 의한 콘텍스트 인덱스 값은, 적합한 콘텍스트를 지시하기 위해 표 18에 예시된 값과 다르게 설정될 수 있다.
상태 정보 또는 조건에 따라서 다른 오프셋을 적용함으로써, 조건별로 다른 콘텍스트가 할당되도록 하며, 신택스(신택스 요소)의 코드워드를 구성하는 빈들 중에서 일부 빈들에는 동일한 콘텍스트를 공통으로 적용하고, 나머지 빈들에는 바이패스 모드를 적용하도록 할 수도 있다. 예컨대, 상기 표 13이 소정의 신택스(신택스 요소)에 대한 것이라고 할 때, B0, B1, B2, B3, B4의 값 중 일부에는 동일한 인덱스 값을 설정하고, B0, B1, B2, B3, B4의 값 중 나머지에 대해서는 구체적인 인덱스 값 대신 바이패스 모드를 지시하도록 설정할 수 있다.
표 19은 슬라이스 타입에 따라서 다른 콘텍스트가 정의되도록 오프셋 값을 설정하고, 일부 빈들에는 동일한 콘텍스트를 공통으로 적용하며, 나머지 빈들에 대해서는 바이패스(bypass) 모드를 적용하는 경우에 이용할 수 있는 콘텍스트 테이블의 일 예를 나타낸 것이다.
[표 19]
Figure 112021036944283-pat00018
표 19가 소정의 신택스(신택스 요소)에 적용된다고 가정할 때, 해당 신택스(신택스 요소)의 코드워드를 구성하는 0번째 빈과 1번째 빈에 대해서는 빈에 의한 콘텍스트 인덱스로서 0이 할당되며, 2 번째 내지 4번째 빈에 대해서는 바이패스 모드가 적용된다.
표 19은, 표 13의 오프셋 값과 빈에 의한 콘텍스트 인덱스 값을 구체적으로 설정하는 예를 나타낸 것으로서, 표 19에서 오프셋 값과 빈에 의한 콘텍스트 인덱스 값은, 적합한 콘텍스트를 지시하기 위해 표 19에 예시된 값과 다르게 설정될 수 있다.
상태 정보 또는 조건에 따라서 다른 오프셋을 적용함으로써, 조건별로 다른 콘텍스트가 할당되도록 하며, 신택스(신택스 요소)의 코드워드를 구성하는 빈들 중에서 하나의 빈에는 바이패스 모드를 적용하고, 나머지 빈들에는 동일한 콘텍스트를 공통으로 적용하도록 할 수도 있다. 예컨대, 상기 표 13이 소정의 신택스(신택스 요소)에 대한 것이라고 할 때, B0, B1, B2, B3, B4의 값 중 하나의 빈에 대해서는 구체적인 구체적인 인덱스 값 대신에 바이패스 모드를 지시하고, B0, B1, B2, B3, B4의 값 중 나머지에 대해서는 동일한 인덱스 값을 설정할 수 있다.
표 20은 슬라이스 타입에 따라서 다른 콘텍스트가 정의되도록 오프셋 값을 설정하고, 하나의 빈에 대해서는 바이패스(bypass) 모드를 적용하고, 나머지 빈들에 대해서는 동일한 콘텍스트를 공통으로 적용하는 경우에 이용할 수 있는 콘텍스트 테이블의 일 예를 나타낸 것이다.
[표 20]
Figure 112021036944283-pat00019
표 20이 소정의 신택스(신택스 요소)에 적용된다고 가정할 때, 해당 신택스(신택스 요소)의 코드워드를 구성하는 0번째 빈 내지 3번째 빈에 대해서는 빈에 의한 콘텍스트 인덱스로서 0이 할당되며, 4번째 빈에 대해서는 바이패스 모드가 적용된다.
표 20은, 표 13의 오프셋 값과 빈에 의한 콘텍스트 인덱스 값을 구체적으로 설정하는 예를 나타낸 것으로서, 표 20에서 오프셋 값과 빈에 의한 콘텍스트 인덱스 값은, 적합한 콘텍스트를 지시하기 위해 표 20에 예시된 값과 다르게 설정될 수 있다.
한편, 표 13 내지 표 20은 신택스에 대한 코드워드가 5개의 빈으로 구성되는 경우를 예로서 설명하고 있으나, 본 발명은 이에 한정되지 않는다. 만약, 표 13 내지 표 20이 적용되는 신택스(신택스 요소)의 코드워드가 5개 미만의 빈, 예컨대 n(n<5) 개의 빈으로 구성된다면, n-1보다 크고 4보다 같거나 작은 빈 인덱스에는 빈에 의한 콘텍스트 인덱스가 할당되지 않거나 na(not available)로 할당된다. 만약, 표 14가 적용되는 신택스(신택스 요소)의 코드워드가 5개 이상의 빈으로 구성된다면, 5 번째 이후의 빈에 대해서는 5번째 빈에 의한 콘텍스트 인덱스와 동일한 값이 해당 빈에 의한 콘텍스트 인덱스로 할당될 수 있다.
또한, 표 13 내지 표 20에서는 동일한 빈에 대해서, 빈에 의한 콘텍스트 인덱스가 동일한 경우를 설명하였으나, 본 발명은 이에 한정되지 않으며, 빈에 의한 콘텍스트 인덱스의 값은 오프셋에 따라서 다르게 설정될 수도 있다. 예컨대, 표 13에서 A1 내지 A3에 대해서, Bi(i=0,1, 2, 3, 4) 값들을 다르게 설정할 수도 있다. 구체적으로, A1에 대한 B0의 값, A2에 대한 B0의 값, A3에 대한 B0의 값 중 적어도 하나를 다른 B0 값과 상이하게 설정할 수도 있다.
상술한 표 13 내지 표 20의 예들은 코딩 과정에서 전송되는 신택스(신택스 요소)에 적용될 수 있다. 예컨대, 앞서 언급한 신택스 요소 intra_chroma_pred_mode 뿐만 아니라, 다양한 신택스 요소에도 상술한 내용과 동일하게 적용할 수 있다.
표 21은 다양한 신택스 요소에 상술한 내용을 적용한 일 예를 나타낸 것이다.
[표 21]
Figure 112021036944283-pat00020
표 21의 예에 의하면, 빈 인덱스(binIdx)별로 빈에 의한 콘텍스트 인덱스가 지시된다. 오프셋 ctxIdxOffset의 값과 빈에 의한 콘텍스트 인덱스 값의 합으로 빈에 대한 콘텍스트 인덱스가 결정된다.
소정의 신택스 요소의 특정 빈에 대해 결정된 콘텍스트 인덱스는 해당 신택스 요소에 대한 콘텍스트 인덱스 테이블 ctxIdxTable가 지시하는 테이블에서 상기 특정 빈에 적용할 콘텍스트를 지시할 수 있다.
한편, 빈에 의한 콘텍스트 인덱스의 값은 블록의 정보(예컨대, 블록의 상태 또는 블록의 조건에 관한 정보)를 기반으로 결정될 수도 있다. 이때, 블록의 정보는 디코딩 대상 블록의 정보뿐만 아니라, 디코딩 대상 블록의 주변 블록에 대한 정보를 포함한다. 또한, 이용되는 블록의 정보는 코딩 블록의 정보일 수도 있고, 예측 블록의 정보일 수도 있으며, 변환 유닛의 정보일 수도 있다.예컨대, cbf_luma와 cbf_cb, cbf_cr와 같은 신택스 요소의 콘텍스트를 결정할 때 블록의 정보를 이용할 수 있다. 신택스 요소 cbf_luma와 cbf_cb, cbf_cr는 쿼드 트리 구조에서 현재 블록에서 더 분할되는 블록에 루마 레지듀얼 신호가 있는지, 크로마 레지듀얼 신호가 있는지를 지시하는 정보를 나타내는 신택스 요소이다.
구체적으로, cbf_luma와 cbf_cb, cbf_cr 각각을 코딩(인코딩/디코딩)할 때, 주변 블록의 cbf(Coded Block Flag) 정보뿐만 아니라, 주변 파티션(블록)의 코딩 유닛 깊이 및/또는 변환 유닛 깊이를 고려하여 cbf_luma와 cbf_cb, cbf_cr에 대한 콘텍스트를 정해줄 수 있다. 예를 들어, 코딩 유닛의 깊이와 변환 유닛의 깊이를 이용해서 현재 변환 유닛의 사이즈를 구할 수 있는데, 이때 주변 파티션의 변환 유닛 사이즈를 고려하여 콘텍스트를 구분 또는 지정할 수 있다.
또한, 주변 파티션의 변환 유닛 사이즈와 해당 파티션의 cbf를 이용하여 콘텍스트를 구분 또는 지정할 수도 있다. 예컨대, cbf_luma의 콘텍스트를 구분하거나 지정하는 경우에, (1) 현재 블록의 주변 예컨대, 현재 블록의 좌측과 상측 두 방향에 있는 블록들에 대한 cbf_luma의 값이 모두 0이고, 변환 유닛의 사이즈가 현재 변환 유닛의 사이즈보다 크거나 같은 경우, (2) 현재 블록의 주변 예컨대, 현재 블록의 좌측과 상측 두 방향의 블록들 중 어느 한 방향의 블록에 대한 cbf_luma의 값이 0이고, 변환 유닛의 사이즈가 현재 변환 유닛의 사이즈보다 크거나 같은 경우, (3) 현재 블록의 주변 예컨대, 현재 블록의 좌측과 상측 두 방향에 있는 블록들에 대한 cbf_luma의 값이 모두 1이거나, 변환 유닛의 사이즈가 현재 변환 유닛의 사이즈보다 작은 경우로 나누어 cbf_luma에 대한 콘텍스트를 적용할 수 있다.
상술한 cbf_luma에 대한 설명은 cbf_cb 와 cbf_cr에도 동일하게 적용할 수 있다. 예컨대, cbf_cr에 대하여, (1) 현재 블록의 주변 예컨대, 현재 블록의 좌측과 상측 두 방향에 있는 블록들에 대한 cbf_cr의 값이 모두 0이고, 변환 유닛의 사이즈가 현재 변환 유닛의 사이즈보다 크거나 같은 경우, (2) 현재 블록의 주변 예컨대, 현재 블록의 좌측과 상측 두 방향의 블록들 중 어느 한 방향의 블록에 대한 cbf_cr의 값이 0이고, 변환 유닛의 사이즈가 현재 변환 유닛의 사이즈보다 크거나 같은 경우, (3) 현재 블록의 주변 예컨대, 현재 블록의 좌측과 상측 두 방향에 있는 블록들에 대한 cbf_cr의 값이 모두 1이거나, 변환 유닛의 사이즈가 현재 변환 유닛의 사이즈보다 작은 경우로 나누어 cbf_cr에 대한 콘텍스트를 적용할 수 있다.
또한, cbf_cb에 대해서도, 1) 현재 블록의 주변 예컨대, 현재 블록의 좌측과 상측 두 방향에 있는 블록들에 대한 cbf_cb의 값이 모두 0이고, 변환 유닛의 사이즈가 현재 변환 유닛의 사이즈보다 크거나 같은 경우, (2) 현재 블록의 주변 예컨대, 현재 블록의 좌측과 상측 두 방향의 블록들 중 어느 한 방향의 블록에 대한 cbf_cb의 값이 0이고, 변환 유닛의 사이즈가 현재 변환 유닛의 사이즈보다 크거나 같은 경우, (3) 현재 블록의 주변 예컨대, 현재 블록의 좌측과 상측 두 방향에 있는 블록들에 대한 cbf_cb의 값이 모두 1이거나, 변환 유닛의 사이즈가 현재 변환 유닛의 사이즈보다 작은 경우로 나누어 cbf_cb에 대한 콘텍스트를 적용할 수 있다.
현재 변환 유닛의 사이즈와 동일한 크기의 주변 파티션에서 cbf의 비율을 고려하여 콘텍스트를 구분 또는 지정할 수도 있다. 예컨대, cbf_luma에 대한 콘텍스트를 구분 또는 지정할 때, (1) 현재 블록의 주변(예컨대 좌측 및 상측) 두 방향 모두에 대하여, 현재 변환 유닛의 사이즈와 같은 크기의 주변 파티션에서 cbf_luma의 값이 0인 비율이 50% 이상인 경우, (2) 현재 블록의 주변(예컨대 좌측 및 상측) 중 한 방향에서만, 현재 변환 유닛의 사이즈와 같은 크기의 주변 파티션에서 cbf_luma의 값이 0인 비율이 50% 이상인 경우, (3) 현재 블록의 주변(예컨대 좌측 및 상측) 두 방향 모두에 대하여, 현재 변환 유닛의 사이즈와 같은 크기의 주변 파티션에서 cbf_luma의 값이 0인 비율이 50% 미만인 경우로 나누어 cbf_luma에 대한 콘텍스트를 구분하거나 지정할 수 있다.
상술한 cbf_luma에 대한 설명은 cbf_cb 와 cbf_cr에도 동일하게 적용할 수 있다.
예컨대, cbf_cr에 대해서도, (1) 현재 블록의 주변(예컨대 좌측 및 상측) 두 방향 모두에 대하여, 현재 변환 유닛의 사이즈와 같은 크기의 주변 파티션에서 cbf_cr의 값이 0인 비율이 50% 이상인 경우, (2) 현재 블록의 주변(예컨대 좌측 및 상측) 중 한 방향에서만, 현재 변환 유닛의 사이즈와 같은 크기의 주변 파티션에서 cbf_cr의 값이 0인 비율이 50% 이상인 경우, (3) 현재 블록의 주변(예컨대 좌측 및 상측) 두 방향 모두에 대하여, 현재 변환 유닛의 사이즈와 같은 크기의 주변 파티션에서 cbf_cr의 값이 0인 비율이 50% 미만인 경우로 나누어 cbf_cr에 대한 콘텍스트를 구분하거나 지정할 수 있다.
cbf_cb에 대해서도, (1) 현재 블록의 주변(예컨대 좌측 및 상측) 두 방향 모두에 대하여, 현재 변환 유닛의 사이즈와 같은 크기의 주변 파티션에서 cbf_cb의 값이 0인 비율이 50% 이상인 경우, (2) 현재 블록의 주변(예컨대 좌측 및 상측) 중 한 방향에서만, 현재 변환 유닛의 사이즈와 같은 크기의 주변 파티션에서 cbf_cb의 값이 0인 비율이 50% 이상인 경우, (3) 현재 블록의 주변(예컨대 좌측 및 상측) 두 방향 모두에 대하여, 현재 변환 유닛의 사이즈와 같은 크기의 주변 파티션에서 cbf_cb의 값이 0인 비율이 50% 미만인 경우로 나누어 cbf_cb에 대한 콘텍스트를 구분하거나 지정할 수 있다.
주변의 여러 파티션에서 cbf의 비율을 고려하여 콘텍스트를 구분하거나 지정할 수도 있다. 단순히 주변의 여러 파티션의 cbf를 고려하여 콘텍스트를 구분하거나 지정할 수도 있다. 예컨대, cbf_luma에 대한 콘텍스트를 구분하거나 지정할 때, (1) 현재 블록의 주변(예컨대 좌측 및 상측) 두 방향 모두에 대하여, 샘플 파티션들의 cbf_luma 값이 모두 0인 경우, (2) 현재 블록의 주변(예컨대 좌측 및 상측) 중 한 방향에 대하여만, 샘플 파티션들의 cbf_luma 값이 0인 경우, (3) 현재 블록의 주변(예컨대 좌측 및 상측) 두 방향 모두에 대하여, 샘플 파티션들의 cbf_luma 값 중 1이 있는 경우로 나누어 cbf_luma에 대한 콘텍스트를 구분하거나 할당할 수 있다.
상술한 cbf_luma에 대한 설명은 cbf_cb 와 cbf_cr에도 동일하게 적용할 수 있다.
예컨대, cbf_cr에 대하여도, (1) 현재 블록의 주변(예컨대 좌측 및 상측) 두 방향 모두에 대하여, 샘플 파티션들의 cbf_cr 값이 모두 0인 경우, (2) 현재 블록의 주변(예컨대 좌측 및 상측) 중 한 방향에 대하여만, 샘플 파티션들의 cbf_cr 값이 0인 경우, (3) 현재 블록의 주변(예컨대 좌측 및 상측) 두 방향 모두에 대하여, 샘플 파티션들의 cbf_cr 값 중 1이 있는 경우로 나누어 cbf_cr에 대한 콘텍스트를 구분하거나 할당할 수 있다.
cbf_cb의 경우에도, (1) 현재 블록의 주변(예컨대 좌측 및 상측) 두 방향 모두에 대하여, 샘플 파티션들의 cbf_cb 값이 모두 0인 경우, (2) 현재 블록의 주변(예컨대 좌측 및 상측) 중 한 방향에 대하여만, 샘플 파티션들의 cbf_cb 값이 0인 경우, (3) 현재 블록의 주변(예컨대 좌측 및 상측) 두 방향 모두에 대하여, 샘플 파티션들의 cbf_cb 값 중 1이 있는 경우로 나누어 cbf_cb에 대한 콘텍스트를 구분하거나 할당할 수 있다.
주변의 파티션을 선택하는 방법으로서, 가능한 최소 변환 유닛 단위와 같이 정해진 유닛 단위로 선택하는 방법을 이용할 수 있다. 이때, 가능한 최소 변환 유닛 단위는 RQT(Residual Quadtree) 최대 깊이를 이용하여 결정할 수 있다.
주변의 파티션을 선택하는 다른 방법으로서, 가능한 최소 변환 유닛 단위로 소정 개수를 선택하는 방법을 이용할 수도 있다. 예컨대, 주변의 파티션들 중에서 가능한 최소 변환 유닛 단위로 2 개의 파티션을 선택하도록 할 수도 있다.
한편, cbf_luma, cbf_cr, cbf_cb에 대하여 콘텍스트를 구분하거나 지정하기 위해 적용하는 상술한 방법을 그 외의 신택스 요소, 예컨대 잔차 신호의 존부를 지시하는 no_residual_data_flag에도 동일하게 적용할 수 있다.
예컨대, 주변 파티션의 변환 유닛 사이즈와 해당 파티션의 no_residual_data_flag를 이용하여 콘텍스트를 구분 또는 지정할 수도 있다. 구체적으로, no_residual_data_flag의 콘텍스트를 구분하거나 지정하는 경우에, (1) 현재 블록의 주변 예컨대, 현재 블록의 좌측과 상측 두 방향에 있는 블록들에 대한 no_residual_data_flag의 값이 모두 0이고, 변환 유닛의 사이즈가 현재 변환 유닛의 사이즈보다 크거나 같은 경우, (2) 현재 블록의 주변 예컨대, 현재 블록의 좌측과 상측 두 방향의 블록들 중 어느 한 방향의 블록에 대한 no_residual_data_flag의 값이 0이고, 변환 유닛의 사이즈가 현재 변환 유닛의 사이즈보다 크거나 같은 경우, (3) 현재 블록의 주변 예컨대, 현재 블록의 좌측과 상측 두 방향에 있는 블록들에 대한 no_residual_data_flag의 값이 모두 1이거나, 변환 유닛의 사이즈가 현재 변환 유닛의 사이즈보다 작은 경우로 나누어 no_residual_data_flag에 대한 콘텍스트를 적용할 수 있다.
또한, 현재 변환 유닛의 사이즈와 동일한 크기의 주변 파티션에서 no_residual_data_flag의 비율을 고려하여 콘텍스트를 구분 또는 지정할 수도 있다. 예컨대, no_residual_data_flag에 대한 콘텍스트를 구분 또는 지정할 때, (1) 현재 블록의 주변(예컨대 좌측 및 상측) 두 방향 모두에 대하여, 현재 변환 유닛의 사이즈와 같은 크기의 주변 파티션에서 no_residual_data_flag의 값이 0인 비율이 50% 이상인 경우, (2) 현재 블록의 주변(예컨대 좌측 및 상측) 중 한 방향에서만, 현재 변환 유닛의 사이즈와 같은 크기의 주변 파티션에서 no_residual_data_flag의 값이 0인 비율이 50% 이상인 경우, (3) 현재 블록의 주변(예컨대 좌측 및 상측) 두 방향 모두에 대하여, 현재 변환 유닛의 사이즈와 같은 크기의 주변 파티션에서 no_residual_data_flag의 값이 0인 비율이 50% 미만인 경우로 나누어 no_residual_data_flag에 대한 콘텍스트를 구분하거나 지정할 수 있다.
또한, 주변의 여러 파티션에서 no_residual_data_flag의 비율을 고려하여 콘텍스트를 구분하거나 지정할 수도 있다. 단순히 주변의 여러 파티션의 no_residual_data_flag를 고려하여 콘텍스트를 구분하거나 지정할 수도 있다. 예컨대, no_residual_data_flag에 대한 콘텍스트를 구분하거나 지정할 때, (1) 현재 블록의 주변(예컨대 좌측 및 상측) 두 방향 모두에 대하여, 샘플 파티션들의 no_residual_data_flag 값이 모두 0인 경우, (2) 현재 블록의 주변(예컨대 좌측 및 상측) 중 한 방향에 대하여만, 샘플 파티션들의 no_residual_data_flag 값이 0인 경우, (3) 현재 블록의 주변(예컨대 좌측 및 상측) 두 방향 모두에 대하여, 샘플 파티션들의 no_residual_data_flag 값 중 1이 있는 경우로 나누어 no_residual_data_flag에 대한 콘텍스트를 구분하거나 할당할 수 있다.
표 22는 빈에 의한 콘텍스트 인덱스의 값이 주변의 정보를 기반으로 결정되는 경우에 적용될 수 있는 콘텍스트 테이블의 일 예를 나타낸 것이다.
[표 22]
Figure 112021036944283-pat00021
표 22를 참조하면, 신택스 요소 split_transform_flag의 코드워드를 구성하는 빈들 중에서 0번째 빈에 의한 콘텍스트 인덱스의 값은 블록 정보에 의해 결정될 수 있다. 예컨대 split_transform_flag의 0번째 빈에 의한 콘텍스트 인덱스 값은 코딩 유닛의 깊이와 변환 유닛의 깊이 정보에 의해 결정된다.
또한, 표 22의 예에서 신택스 요소 cbf_luma와 cbf_cb, cbf_cr의 코드워드를 구성하는 빈들 중에서 0번째 빈에 의한 콘텍스트 인덱스의 값은 주변 블록 정보, 예컨대 변환 유닛의 깊이 정보에 의해 결정된다. 예컨대, 신택스 요소 cbf_luma의 경우에, 0번째 빈에 대해서는 변환 유닛의 깊이가 0이거나, 변환 유닛의 사이즈가 최대 사이즈인 경우에, 빈에 의한 콘텍스트 인덱스로서 1의 값이 할당될 수 있다.
상술한 예시적인 시스템에서, 방법들은 일련의 단계 또는 순서도를 기초로 설명되고 있지만, 본 발명은 단계들의 순서에 한정되는 것은 아니며, 어떤 단계는 상술한 바와 다른 단계와 다른 순서로 또는 동시에 발생할 수 있다. 또한, 상술한 실시예들은 다양한 양태의 예시들을 포함한다.
따라서, 본 발명은 상술한 실시예들을 동시에 적용하거나 조합하여 적용하는 실시 형태를 포함한다.

Claims (10)

  1. 디코딩 장치에 의하여 수행되는 영상 디코딩 방법으로서,
    신택스 요소 intra_chroma_pred_mode의 빈 스트링(bin string)의 빈(bin)들 중 적어도 하나에 대한 콘텍스트(context) 정보를 도출하는 단계;
    상기 콘텍스트 정보를 기반으로 상기 신택스 요소 intra_chroma_pred_mode에 대한 상기 빈 스트링의 상기 빈들을 디코딩하는 단계;
    상기 디코딩된 빈들을 기반으로 상기 신택스 요소 intra_chroma_pred_mode의 값(value)을 도출하는 단계;
    상기 신택스 요소 intra_chroma_pred_mode의 값을 기반으로 현재 블록의 크로마 인트라 예측 모드를 도출하는 단계;
    상기 크로마 인트라 예측 모드를 기반으로 상기 현재 블록의 예측 샘플들을 도출하는 단계; 및
    상기 예측 샘플들을 기반으로 복원된 픽처를 생성하는 단계를 포함하되,
    상기 빈 스트링의 상기 빈들은 0번째 빈, 1번째 빈 및 2번째 빈을 포함하고,
    상기 0번째 빈은 상기 콘텍스트 정보를 이용하는 정규 코딩(regular coding)을 기반으로 디코딩되고, 상기 1번째 빈 및 상기 2번째 빈은 바이패스 코딩(bypass coding)을 기반으로 디코딩되고,
    상기 신택스 요소 intra_chroma_pred_mode에 관련된 상기 콘텍스트 정보는 오프셋과 상기 0번째 빈에 의해 나타내지는 값의 합을 기반으로 도출되고,
    상기 오프셋은 I 슬라이스, P 슬라이스 및 B 슬라이스 중 상기 현재 블록을 포함하는 현재 슬라이스에 대한 슬라이스 타입을 기반으로 결정되고,
    상기 오프셋의 값은 상기 현재 슬라이스가 상기 I 슬라이스임을 기반으로 0이고, 상기 현재 슬라이스가 상기 P 슬라이스임을 기반으로 1이고, 상기 현재 슬라이스가 상기 B 슬라이스임을 기반으로 2인 것을 특징으로 하는, 영상 디코딩 방법.
  2. 삭제
  3. 제1항에 있어서,
    상기 빈들을 디코딩하는 단계는,
    콘텍스트 테이블 상에서 상기 0번째 빈에 대해 할당되는 콘텍스트 값에 기반하여 디코딩을 수행하는 단계를 포함하는 것을 특징으로 하는 영상 디코딩 방법.
  4. 제3항에 있어서,
    상기 콘텍스트 테이블은 상기 슬라이스 타입에 관련된 오프셋 값을 포함함을 특징으로 하는 영상 디코딩 방법.
  5. 제3항에 있어서,
    상기 콘텍스트 테이블 상에서 상기 1번째 빈 및 2번째 빈에 대해서는 바이패스 모드가 할당됨을 특징으로 하는 영상 디코딩 방법
  6. 인코딩 장치에 의하여 수행되는 영상 인코딩 방법으로서,
    상기 인코딩 장치가 현재 블록의 크로마 인트라 예측 모드를 도출하는 단계;
    상기 도출된 크로마 인트라 예측 모드를 기반으로, 상기 인코딩 장치가 신택스 요소 intra_chroma_pred_mode의 값을 결정하는 단계;
    상기 신택스 요소 intra_chroma_pred_mode의 값을 기반으로, 상기 인코딩 장치가 상기 신택스 요소 intra_chroma_pred_mode에 대한 빈 스트링(bin string)의 빈(bin)들을 인코딩하는 단계를 포함하되,
    상기 신택스 요소 intra_chroma_pred_mode에 대한 상기 빈 스트링은 0번째 빈, 1번째 빈 및 2번째 빈을 포함하고,
    상기 0번째 빈은 콘텍스트 정보를 이용하는 정규 코딩(regular coding)을 기반으로 인코딩되고, 상기 1번째 빈 및 상기 2번째 빈은 바이패스 코딩(bypass coding)을 기반으로 인코딩되고,
    상기 신택스 요소 intra_chroma_pred_mode에 관련된 상기 콘텍스트 정보는 오프셋과 상기 0번째 빈에 의해 나타내지는 값의 합을 기반으로 도출되고,
    상기 오프셋은 I 슬라이스, P 슬라이스 및 B 슬라이스 중 상기 현재 블록을 포함하는 현재 슬라이스에 대한 슬라이스 타입을 기반으로 결정되고,
    상기 오프셋의 값은 상기 현재 슬라이스가 상기 I 슬라이스임을 기반으로 0이고, 상기 현재 슬라이스가 상기 P 슬라이스임을 기반으로 1이고, 상기 현재 슬라이스가 상기 B 슬라이스임을 기반으로 2인 것을 특징으로 하는, 영상 인코딩 방법.
  7. 삭제
  8. 제6항에 있어서,
    상기 빈들에 대한 정보를 인코딩하는 단계는,
    콘텍스트 테이블 상에서 상기 0번째 빈에 대해 할당되는 콘텍스트 값에 기반하여 인코딩을 수행하는 단계를 포함하는 것을 특징으로 하는 영상 인코딩 방법.
  9. 제8항에 있어서,
    상기 콘텍스트 테이블은 상기 슬라이스 타입에 관련된 오프셋 값을 포함함을 특징으로 하는 영상 인코딩 방법.
  10. 인코딩 방법에 의하여 생성된 인코딩된 영상 정보를 저장하는 디코더로 판독 가능한 저장 매체에 있어서, 상기 인코딩 방법은:
    인코딩 장치가 현재 블록의 크로마 인트라 예측 모드를 도출하는 단계;
    상기 도출된 크로마 인트라 예측 모드를 기반으로, 상기 인코딩 장치가 신택스 요소 intra_chroma_pred_mode의 값을 결정하는 단계;
    상기 신택스 요소 intra_chroma_pred_mode의 값을 기반으로, 상기 인코딩 장치가 상기 신택스 요소 intra_chroma_pred_mode에 대한 빈 스트링(bin string)의 빈(bin)들을 인코딩하여 상기 인코딩된 영상 정보를 생성하는 단계를 포함하되,
    상기 신택스 요소 intra_chroma_pred_mode에 대한 상기 빈 스트링은 0번째 빈, 1번째 빈 및 2번째 빈을 포함하고,
    상기 0번째 빈은 콘텍스트 정보를 이용하는 정규 코딩(regular coding)을 기반으로 인코딩되고, 상기 1번째 빈 및 상기 2번째 빈은 바이패스 코딩(bypass coding)을 기반으로 인코딩되고,
    상기 신택스 요소 intra_chroma_pred_mode에 관련된 상기 콘텍스트 정보는 오프셋과 상기 0번째 빈에 의해 나타내지는 값의 합을 기반으로 도출되고,
    상기 오프셋은 I 슬라이스, P 슬라이스 및 B 슬라이스 중 상기 현재 블록을 포함하는 현재 슬라이스에 대한 슬라이스 타입을 기반으로 결정되고,
    상기 오프셋의 값은 상기 현재 슬라이스가 상기 I 슬라이스임을 기반으로 0이고, 상기 현재 슬라이스가 상기 P 슬라이스임을 기반으로 1이고, 상기 현재 슬라이스가 상기 B 슬라이스임을 기반으로 2인 것을 특징으로 하는, 저장 매체.
KR1020217009360A 2011-04-01 2012-03-30 엔트로피 디코딩 방법 및 이를 이용하는 디코딩 장치 KR102350072B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020227000573A KR102465116B1 (ko) 2011-04-01 2012-03-30 엔트로피 디코딩 방법 및 이를 이용하는 디코딩 장치

Applications Claiming Priority (6)

Application Number Priority Date Filing Date Title
US201161470502P 2011-04-01 2011-04-01
US61/470,502 2011-04-01
US201261582804P 2012-01-03 2012-01-03
US61/582,804 2012-01-03
PCT/KR2012/002430 WO2012134246A2 (ko) 2011-04-01 2012-03-20 엔트로피 디코딩 방법 및 이를 이용하는 디코딩 장치
KR1020207022726A KR102235636B1 (ko) 2011-04-01 2012-03-30 엔트로피 디코딩 방법 및 이를 이용하는 디코딩 장치

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
KR1020207022726A Division KR102235636B1 (ko) 2011-04-01 2012-03-30 엔트로피 디코딩 방법 및 이를 이용하는 디코딩 장치

Related Child Applications (1)

Application Number Title Priority Date Filing Date
KR1020227000573A Division KR102465116B1 (ko) 2011-04-01 2012-03-30 엔트로피 디코딩 방법 및 이를 이용하는 디코딩 장치

Publications (2)

Publication Number Publication Date
KR20210038707A KR20210038707A (ko) 2021-04-07
KR102350072B1 true KR102350072B1 (ko) 2022-01-11

Family

ID=46932188

Family Applications (6)

Application Number Title Priority Date Filing Date
KR1020227000573A KR102465116B1 (ko) 2011-04-01 2012-03-30 엔트로피 디코딩 방법 및 이를 이용하는 디코딩 장치
KR1020227038687A KR102645557B1 (ko) 2011-04-01 2012-03-30 엔트로피 디코딩 방법 및 이를 이용하는 디코딩 장치
KR1020137028701A KR102033106B1 (ko) 2011-04-01 2012-03-30 엔트로피 디코딩 방법 및 이를 이용하는 디코딩 장치
KR1020207022726A KR102235636B1 (ko) 2011-04-01 2012-03-30 엔트로피 디코딩 방법 및 이를 이용하는 디코딩 장치
KR1020217009360A KR102350072B1 (ko) 2011-04-01 2012-03-30 엔트로피 디코딩 방법 및 이를 이용하는 디코딩 장치
KR1020197029807A KR102143605B1 (ko) 2011-04-01 2012-03-30 엔트로피 디코딩 방법 및 이를 이용하는 디코딩 장치

Family Applications Before (4)

Application Number Title Priority Date Filing Date
KR1020227000573A KR102465116B1 (ko) 2011-04-01 2012-03-30 엔트로피 디코딩 방법 및 이를 이용하는 디코딩 장치
KR1020227038687A KR102645557B1 (ko) 2011-04-01 2012-03-30 엔트로피 디코딩 방법 및 이를 이용하는 디코딩 장치
KR1020137028701A KR102033106B1 (ko) 2011-04-01 2012-03-30 엔트로피 디코딩 방법 및 이를 이용하는 디코딩 장치
KR1020207022726A KR102235636B1 (ko) 2011-04-01 2012-03-30 엔트로피 디코딩 방법 및 이를 이용하는 디코딩 장치

Family Applications After (1)

Application Number Title Priority Date Filing Date
KR1020197029807A KR102143605B1 (ko) 2011-04-01 2012-03-30 엔트로피 디코딩 방법 및 이를 이용하는 디코딩 장치

Country Status (6)

Country Link
US (6) US9602843B2 (ko)
EP (1) EP2696582A4 (ko)
JP (9) JP5723057B2 (ko)
KR (6) KR102465116B1 (ko)
CN (5) CN107454407A (ko)
WO (1) WO2012134246A2 (ko)

Families Citing this family (43)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020084511A1 (en) * 2018-10-23 2020-04-30 Beijing Bytedance Network Technology Co., Ltd. Simplified entropy coding for sub-block based motion information list
KR101912307B1 (ko) * 2010-12-08 2018-10-26 엘지전자 주식회사 인트라 예측 방법과 이를 이용한 부호화 장치 및 복호화 장치
US8995523B2 (en) * 2011-06-03 2015-03-31 Qualcomm Incorporated Memory efficient context modeling
US9654785B2 (en) 2011-06-09 2017-05-16 Qualcomm Incorporated Enhanced intra-prediction mode signaling for video coding using neighboring mode
EP3402206B1 (en) * 2011-06-28 2020-05-20 Samsung Electronics Co., Ltd. Video encoding and decoding method using arithmetic coding with a two-dimensional signaling of the last significant coefficient
US9338465B2 (en) 2011-06-30 2016-05-10 Sharp Kabushiki Kaisha Context initialization based on decoder picture buffer
US11647197B2 (en) 2011-06-30 2023-05-09 Velos Media, Llc Context initialization based on slice header flag and slice type
KR20200037439A (ko) * 2011-07-18 2020-04-08 선 페이턴트 트러스트 화상 부호화 방법, 화상 복호 방법, 화상 부호화 장치, 화상 복호 장치 및 화상 부호화 복호 장치
EP2740272A4 (en) * 2011-08-04 2015-04-08 Mediatek Inc METHOD AND DEVICE FOR RECORDING BINARIZATION OF SYNTAX ELEMENTS IN CABAC
US9253482B2 (en) 2011-11-08 2016-02-02 Texas Insturments Incorporated Method and apparatus for sample adaptive offset without sign coding
US9277194B2 (en) 2011-11-08 2016-03-01 Texas Instruments Incorporated Method and apparatus for image and video coding using hierarchical sample adaptive band offset
US9264706B2 (en) * 2012-04-11 2016-02-16 Qualcomm Incorporated Bypass bins for reference index coding in video coding
US20130294513A1 (en) * 2012-05-07 2013-11-07 Qualcomm Incorporated Inter layer merge list construction for video coding
ES2961654T3 (es) 2012-06-29 2024-03-13 Electronics & Telecommunications Res Inst Método y dispositivo para codificar/decodificar imágenes
EP3361734B1 (en) * 2012-07-02 2019-12-11 Samsung Electronics Co., Ltd. Entropy coding of a video and entropy decoding of a video
MY170156A (en) 2013-01-04 2019-07-09 Samsung Electronics Co Ltd Method for entropy-encoding slice segment and apparatus therefor, and method for entropy-decoding slice segment and apparatus therefor
CN104871537B (zh) * 2013-03-26 2018-03-16 联发科技股份有限公司 色彩间帧内预测的方法
BR112016017201B1 (pt) * 2014-01-29 2023-09-26 Hfi Innovation Inc Método de codificação e decodificação para precisão adaptativa de vetor de movimento de um bloco de dados de vídeo
JP6352452B2 (ja) * 2014-06-20 2018-07-04 寰發股▲ふん▼有限公司HFI Innovation Inc. ビデオ符号化における構文の2値化とコンテキスト適応型符号化の方法と装置
US9936201B2 (en) 2015-01-27 2018-04-03 Qualcomm Incorporated Contexts for large coding tree units
US10368072B2 (en) * 2015-05-29 2019-07-30 Qualcomm Incorporated Advanced arithmetic coder
US11233998B2 (en) * 2015-05-29 2022-01-25 Qualcomm Incorporated Coding data using an enhanced context-adaptive binary arithmetic coding (CABAC) design
WO2017041271A1 (en) * 2015-09-10 2017-03-16 Mediatek Singapore Pte. Ltd. Efficient context modeling for coding a block of data
US10609374B2 (en) 2015-11-22 2020-03-31 Lg Electronics Inc. Method and apparatus for entropy-encoding and entropy-decoding video signal
US9521218B1 (en) * 2016-01-21 2016-12-13 International Business Machines Corporation Adaptive compression and transmission for big data migration
WO2018186510A1 (ko) * 2017-04-06 2018-10-11 엘지전자(주) 비디오 신호를 엔트로피 인코딩, 디코딩하는 방법 및 장치
CN116347099A (zh) 2018-06-19 2023-06-27 北京字节跳动网络技术有限公司 没有运动矢量预测截断的选择的运动矢量差精度
TW202025737A (zh) 2018-09-19 2020-07-01 大陸商北京字節跳動網絡技術有限公司 仿射模式中自適應運動矢量分辨率的快速算法
WO2020076097A1 (ko) * 2018-10-10 2020-04-16 삼성전자주식회사 움직임 벡터 차분값을 이용한 비디오 부호화 및 복호화 방법, 및 움직임 정보의 부호화 및 복호화 장치
CN112913249B (zh) * 2018-10-22 2022-11-08 北京字节跳动网络技术有限公司 广义双向预测索引的简化编解码
KR20200060282A (ko) * 2018-11-21 2020-05-29 한국전자통신연구원 영상 부호화/복호화 방법, 장치 및 비트스트림을 저장한 기록 매체
US11470329B2 (en) 2018-12-26 2022-10-11 Tencent America LLC Method and apparatus for video coding
CN111435993B (zh) 2019-01-14 2022-08-26 华为技术有限公司 视频编码器、视频解码器及相应方法
EP3895429A4 (en) 2019-01-31 2022-08-10 Beijing Bytedance Network Technology Co., Ltd. CONTEXT FOR CODE AN ADAPTIVE MOTION VECTOR RESOLUTION IN AFFINE MODE
WO2020192747A1 (en) * 2019-03-27 2020-10-01 Beijing Bytedance Network Technology Co., Ltd. Motion information precision alignment in affine advanced motion vector prediction
CN113892262A (zh) * 2019-05-27 2022-01-04 Sk电信有限公司 帧内模式候选配置方法和视频解码设备
US11949870B2 (en) * 2019-06-21 2024-04-02 Qualcomm Incorporated Context modeling for low-frequency non-separable transformation signaling for video coding
CN113382251B (zh) * 2019-06-21 2022-04-08 杭州海康威视数字技术股份有限公司 一种编解码方法、装置、设备及存储介质
GB2585040A (en) * 2019-06-25 2020-12-30 Sony Corp Image data encoding and decoding
CN114762349B (zh) * 2019-11-05 2024-04-12 Lg电子株式会社 用于图像/视频编译的高级别语法信令方法和装置
WO2021091254A1 (ko) 2019-11-05 2021-05-14 엘지전자 주식회사 영상/비디오 코딩 시스템에서 픽처 헤더에서 슬라이스 타입에 관한 정보를 시그널링하는 방법 및 장치
EP4044599B1 (en) * 2019-11-05 2024-02-14 LG Electronics Inc. Image/video coding method and device
US20220400275A1 (en) * 2021-06-10 2022-12-15 Tencent America LLC Zero Residual Flag Coding

Family Cites Families (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7286710B2 (en) * 2003-10-01 2007-10-23 Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. Coding of a syntax element contained in a pre-coded video signal
KR100624432B1 (ko) * 2004-08-05 2006-09-19 삼성전자주식회사 내용 기반 적응적 이진 산술 복호화 방법 및 장치
KR101154999B1 (ko) 2005-07-08 2012-07-09 엘지전자 주식회사 영상 신호의 코딩정보를 압축/해제하기 위해 모델링하는 방법
CN100584025C (zh) * 2005-08-04 2010-01-20 华为技术有限公司 一种基于内容自适应的算术解码系统及装置
CN100466739C (zh) * 2005-10-12 2009-03-04 华为技术有限公司 Cabac解码系统及方法
CN103297769B (zh) * 2006-01-13 2016-09-07 Ge视频压缩有限责任公司 使用自适应色彩空间变换的画面编码
US7626518B2 (en) * 2006-06-08 2009-12-01 Via Technologies, Inc. Decoding systems and methods in computational core of programmable graphics processing unit
US7554468B2 (en) * 2006-08-25 2009-06-30 Sony Computer Entertainment Inc, Entropy decoding methods and apparatus using most probable and least probable signal cases
US9521433B2 (en) 2007-09-06 2016-12-13 Nec Corporation Video encoding device, video decoding device, video encoding method, video decoding method, video encoding or decoding program
US8391952B2 (en) 2007-10-11 2013-03-05 General Electric Company Coil arrangement for an electromagnetic tracking system
US7777654B2 (en) * 2007-10-16 2010-08-17 Industrial Technology Research Institute System and method for context-based adaptive binary arithematic encoding and decoding
JP2009231914A (ja) 2008-03-19 2009-10-08 Sony Corp 復号装置、復号処理方法およびプログラム
CN101267559A (zh) * 2008-05-08 2008-09-17 上海交通大学 视频解码器的通用熵解码方法及装置
CN101583029B (zh) * 2008-05-13 2011-01-19 联咏科技股份有限公司 熵解码电路与方法、以及使用流水线方式的熵解码方法
US7714754B2 (en) * 2008-07-14 2010-05-11 Vixs Systems, Inc. Entropy decoder with pipelined processing and methods for use therewith
US8594366B2 (en) * 2008-08-19 2013-11-26 Thomson Licensing Context-based adaptive binary arithmetic coding (CABAC) video stream compliance
KR20100058264A (ko) * 2008-11-24 2010-06-03 나노케미칼 주식회사 광촉매 실리카겔 및 이의 제조방법
JP5676744B2 (ja) * 2010-04-13 2015-02-25 フラウンホーファー−ゲゼルシャフト・ツール・フェルデルング・デル・アンゲヴァンテン・フォルシュング・アインゲトラーゲネル・フェライン エントロピー符号化
CN101873496B (zh) * 2010-05-24 2012-02-29 杭州海康威视软件有限公司 一种h.264的基于上下文自适应变长解码方法及装置
US8913662B2 (en) * 2011-01-06 2014-12-16 Qualcomm Incorporated Indicating intra-prediction mode selection for video coding using CABAC
CN103314588B (zh) * 2011-01-07 2016-05-11 联发科技(新加坡)私人有限公司 编码方法与装置以及解码方法与装置
KR20200037439A (ko) * 2011-07-18 2020-04-08 선 페이턴트 트러스트 화상 부호화 방법, 화상 복호 방법, 화상 부호화 장치, 화상 복호 장치 및 화상 부호화 복호 장치
US20130114667A1 (en) * 2011-11-08 2013-05-09 Sony Corporation Binarisation of last position for higher throughput
US9264706B2 (en) * 2012-04-11 2016-02-16 Qualcomm Incorporated Bypass bins for reference index coding in video coding
US9615090B2 (en) * 2012-12-28 2017-04-04 Qualcomm Incorporated Parsing syntax elements in three-dimensional video coding

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Marpe D et al."Context-based Adaptive Binary Arithmetic Coding in the H.264/AVC Compression Standard", IEEE Trans. on Cir. and Sys. for video technology, vol. 13, no.7, July 2003.*

Also Published As

Publication number Publication date
WO2012134246A3 (ko) 2013-01-03
JP6987938B2 (ja) 2022-01-05
JP2017139776A (ja) 2017-08-10
US9420313B2 (en) 2016-08-16
US9602843B2 (en) 2017-03-21
KR20200096996A (ko) 2020-08-14
KR20220008395A (ko) 2022-01-20
CN103621099A (zh) 2014-03-05
CN107454411A (zh) 2017-12-08
CN103621099B (zh) 2017-08-29
US20150245077A1 (en) 2015-08-27
JP2014515894A (ja) 2014-07-03
KR102465116B1 (ko) 2022-11-09
CN107454407A (zh) 2017-12-08
KR20190119175A (ko) 2019-10-21
KR102143605B1 (ko) 2020-08-11
JP6553221B2 (ja) 2019-07-31
KR20210038707A (ko) 2021-04-07
KR20140022042A (ko) 2014-02-21
EP2696582A2 (en) 2014-02-12
JP2015111960A (ja) 2015-06-18
JP6757830B2 (ja) 2020-09-23
US10841622B2 (en) 2020-11-17
US20160255374A1 (en) 2016-09-01
CN107396109A (zh) 2017-11-24
KR102033106B1 (ko) 2019-10-16
JP2016123119A (ja) 2016-07-07
US20180278966A1 (en) 2018-09-27
JP2019193299A (ja) 2019-10-31
WO2012134246A2 (ko) 2012-10-04
JP2023068105A (ja) 2023-05-16
KR102645557B1 (ko) 2024-03-08
JP6105771B2 (ja) 2017-03-29
KR20220153117A (ko) 2022-11-17
JP2020191689A (ja) 2020-11-26
US10015523B2 (en) 2018-07-03
JP7250892B2 (ja) 2023-04-03
CN107360422A (zh) 2017-11-17
KR102235636B1 (ko) 2021-04-02
JP6298189B2 (ja) 2018-03-20
JP2022036088A (ja) 2022-03-04
US20140098859A1 (en) 2014-04-10
US20230209098A1 (en) 2023-06-29
US11616989B2 (en) 2023-03-28
US20210037264A1 (en) 2021-02-04
EP2696582A4 (en) 2016-06-15
JP5890555B2 (ja) 2016-03-22
JP5723057B2 (ja) 2015-05-27
JP2018113703A (ja) 2018-07-19

Similar Documents

Publication Publication Date Title
JP7250892B2 (ja) 映像符号化方法及び映像に対するデータの送信方法
US11706420B2 (en) Method and device for entropy coding/decoding
KR20140018873A (ko) 영상 정보 부호화 방법 및 복호화 방법

Legal Events

Date Code Title Description
A107 Divisional application of patent
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant