Search

KR-20260061097-A - APPARATUS AND METHOD FOR VIDEO DECODING

KR20260061097AKR 20260061097 AKR20260061097 AKR 20260061097AKR-20260061097-A

Abstract

본 개시는 영상 복호화 장치가 수행하는 영상 복호화 방법을 개시한다. 일 실시 예에 따른 영상 복호화 방법은 비트스트림으로부터 현재 NAL(network abstraction layer) 유닛의 타입을 나타내는 NAL 유닛 타입 정보를 획득하는 단계; 및 상기 NAL 유닛 타입 정보가 상기 현재 NAL 유닛의 NAL 유닛 타입이 영상 슬라이스에 대한 부호화 데이터임을 나타내는 경우, 현재 픽처에 혼성 NAL 유닛 타입(mixed NAL unit type)이 적용되는지 여부에 기반하여 상기 영상 슬라이스를 복호화 하는 단계를 포함할 수 있다.

Inventors

  • 이선영

Assignees

  • 삼성전자주식회사

Dates

Publication Date
20260506
Application Date
20260331
Priority Date
20200424

Claims (4)

  1. 영상 복호화 장치가 수행하는 영상 복호화 방법으로서, 현재 픽처가 서로 다른 NAL(Network Abstraction Layer) 유닛 타입을 가지는 서브 픽처들을 포함하는지 여부를 나타내는 제1 플래그를 획득하는 단계; 및 상기 서브 픽처들 각각에 대해, 상기 서브 픽처가 복호화 과정에서 픽처로 취급되는지 여부를 나타내는 제2 플래그를 획득하는 단계;를 포함하고, 상기 현재 픽처가 서로 다른 NAL 유닛 타입을 가지는 서브 픽처들을 포함하는 것을 상기 제1 플래그가 나타내는 경우, 상기 현재 픽처가 GDR (Gradual Decoding Refresh) 픽처가 아닌 것으로 강제되고, 상기 현재 픽처가 IDR(Instantaneous Decoding Refresh) 타입인 NAL 유닛을 포함하는 경우, 상기 현재 픽처가 CRA(Clean Random Access) 타입인 NAL 유닛을 포함하지 못하게 강제되는, 영상 복호화 방법.
  2. 영상 복호화 장치에 있어서, 적어도 하나의 프로세서; 및 하나 이상의 인스트럭션을 저장하는 메모리를 포함하고, 상기 적어도 하나의 프로세서가 상기 하나 이상의 인스트럭션을 실행함으로써, 현재 픽처가 서로 다른 NAL(Network Abstraction Layer) 유닛 타입을 가지는 서브 픽처들을 포함하는지 여부를 나타내는 제1 플래그를 획득하고, 상기 서브 픽처들 각각에 대해, 상기 서브 픽처가 복호화 과정에서 픽처로 취급되는지 여부를 나타내는 제2 플래그를 획득하고, 상기 현재 픽처가 서로 다른 NAL 유닛 타입을 가지는 서브 픽처들을 포함하는 것을 상기 제1 플래그가 나타내는 경우, 상기 현재 픽처가 GDR (Gradual Decoding Refresh) 픽처가 아닌 것으로 강제되고, 상기 현재 픽처가 IDR(Instantaneous Decoding Refresh) 타입인 NAL 유닛을 포함하는 경우, 상기 현재 픽처가 CRA(Clean Random Access) 타입인 NAL 유닛을 포함하지 못하게 강제되는, 영상 복호화 장치.
  3. 영상 부호화 장치가 수행하는 영상 부호화 방법으로서, 현재 픽처가 서로 다른 NAL(Network Abstraction Layer) 유닛 타입을 가지는 서브 픽처들을 포함하는지 여부를 결정하는 단계; 상기 서브 픽처들 각각에 대해, 상기 서브 픽처가 복호화 과정에서 픽처로 취급되는지 여부를 결정하는 단계; 및 상기 현재 픽처가 서로 다른 NAL 유닛 타입을 가지는 서브 픽처들을 포함하는지 여부를 나타내는 제1 플래그 및 상기 서브 픽처가 복호화 과정에서 픽처로 취급되는지 여부를 나타내는 제2 플래그를 포함하는 비트스트림을 생성하는 단계;를 포함하고, 상기 현재 픽처가 서로 다른 NAL 유닛 타입을 가지는 서브 픽처들을 포함하는 것을 상기 제1 플래그가 나타내는 경우, 상기 현재 픽처가 GDR (Gradual Decoding Refresh) 픽처가 아닌 것으로 강제되고, 상기 현재 픽처가 IDR(Instantaneous Decoding Refresh) 타입인 NAL 유닛을 포함하는 경우, 상기 현재 픽처가 CRA(Clean Random Access) 타입인 NAL 유닛을 포함하지 못하게 강제되는, 영상 부호화 방법.
  4. 비트스트림 전송 방법에 있어서, 현재 픽처가 서로 다른 NAL(Network Abstraction Layer) 유닛 타입을 가지는 서브 픽처들을 포함하는지 여부를 결정하는 단계; 상기 서브 픽처들 각각에 대해, 상기 서브 픽처가 복호화 과정에서 픽처로 취급되는지 여부를 결정하는 단계; 상기 현재 픽처가 서로 다른 NAL 유닛 타입을 가지는 서브 픽처들을 포함하는지 여부를 나타내는 제1 플래그 및 상기 서브 픽처가 복호화 과정에서 픽처로 취급되는지 여부를 나타내는 제2 플래그를 포함하는 비트스트림을 생성하는 단계; 및 상기 비트스트림을 영상 부호화 장치로부터 영상 복호화 장치로 전송하는 단계;를 포함하고, 상기 현재 픽처가 서로 다른 NAL 유닛 타입을 가지는 서브 픽처들을 포함하는 것을 상기 제1 플래그가 나타내는 경우, 상기 현재 픽처가 GDR (Gradual Decoding Refresh) 픽처가 아닌 것으로 강제되고, 상기 현재 픽처가 IDR(Instantaneous Decoding Refresh) 타입인 NAL 유닛을 포함하는 경우, 상기 현재 픽처가 CRA(Clean Random Access) 타입인 NAL 유닛을 포함하지 못하게 강제되는, 비트스트림 전송 방법.

Description

영상의 복호화 방법 및 장치{APPARATUS AND METHOD FOR VIDEO DECODING} 본 발명은 다른 시퀀스 들과의 합성을 위한 서브 픽처 분할 방법 및 비트스트림 패킹을 위한 슬라이스 분할 방법에 관한 것이다. 고해상도, 고품질 영상에 대한 사용자 수요가 증가하고 있다. 고해상도 영상의 부호화 데이터는 저해상도 또는 중해상도 영상의 부호화 데이터 보다 많은 정보량을 가짐에 따라, 이를 전송하거나 저장하기 위한 비용이 증가하게 된다. 이와 같은 문제를 해결하기 위하여 고해상도 영상의 부호화 데이터량을 효과적으로 줄이기 위한 부호화 및 복호화 방법의 연구가 계속되고 있다. 도 1은 본 발명이 적용될 수 있는 비디오 인코딩 장치의 구성을 개략적으로 나타내는 도면이다. 도 2는 비디오 인코딩 장치에 의하여 수행되는 영상 인코딩 방법의 일 예를 나타내는 도면이다. 도 3은 본 발명이 적용될 수 있는 비디오 디코딩 장치의 구성을 개략적으로 나타내는 도면이다. 도 4는 디코딩 장치에 의하여 수행되는 영상 디코딩 방법의 일 예를 나타내는 도면이다. 도 5는 슬라이스를 위한 NAL 패킷의 예시를 나타내는 도면이다. 도 6은 계층적 GOP 구조의 일례를 나타내는 도면이다. 도 7은 디스플레이 출력 순서 및 디코딩 순서의 일례를 나타내는 도면이다. 도 8은 리딩 픽처 및 노말 픽처의 일례를 나타내는 도면이다. 도 9는 RASL 픽처 및 RADL 픽처의 일례를 나타내는 도면이다. 도 10은 슬라이스 세그먼트 헤더에 대한 신택스를 도시하는 도면이다. 도 11은 컨텐츠 합성 과정의 일례를 나타내는 도면이다. 도 12는 서브 픽처 ID 및 슬라이스 주소의 일례를 나타내는 도면이다. 도 13은 서브 픽처 / 슬라이스 별 NUT의 일례를 나타내는 도면이다. 도 14는 픽처 파라미터 셋(PPS)의 신택스에 대한 일 실시 예를 도시하는 도면이다. 도 15는 슬라이스 헤더의 신택스에 대한 일 실시 예를 도시하는 도면이다. 도 16은 픽처 헤더 스트럭처의 신택스를 도시하는 도면이다. 도 17은 참조 픽처 리스트를 획득하기 위한 신택스를 도시하는 도면이다. 도 18은 컨텐츠 합성 일례를 나타내는 도면이다. 도 19와 도 20은 본 발명의 일 실시 예에 따른 복호화 방법과 부호화 방법을 설명하는 순서도를 나타낸다. 본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 상세하게 설명하고자 한다. 그러나, 이는 본 발명을 특정 실시예에 한정하려고 하는 것이 아니다. 본 명세서에서 사용하는 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명의 기술적 사상을 한정하려는 의도로 사용되는 것은 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 명세서에서 "포함하다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성 요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성 요소, 부품 도는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다. 한편, 본 발명에서 설명되는 도면상의 각 구성들은 서로 다른 특징적인 기능들에 관한 설명의 편의를 위해 독립적으로 도시된 것으로서, 각 구성들이 서로 별개의 하드웨어나 별개의 소프트웨어로 구현된다는 것을 의미하지는 않는다. 예컨대, 각 구성 중 두 개 이상의 구성이 합쳐져 하나의 구성을 이룰 수도 있고, 하나의 구성이 복수의 구성으로 나뉘어질 수도 있다. 각 구성이 통합 및/또는 분리된 실시예도 본 발명의 본질에서 벗어나지 않는 한 본 발명의 권리범위에 포함된다. 이하, 첨부한 도면들을 참조하여, 본 발명의 바람직한 실시예를 보다 상세하게 설명하고자 한다. 이하, 도면상의 동일한 구성 요소에 대해서는 동일한 참조 부호를 사용하고 동일한 구성 요소에 대해서 중복된 설명은 생략한다. 한편, 본 발명은 비디오/영상 코딩에 관한 것이다. 예를 들어, 본 발명에서 개시된 방법/실시예는 VVC (versatile video coding) 표준, EVC (Essential Video Coding) 표준, AV1 (AOMedia Video 1) 표준, AVS2 (2nd generation of audio video coding standard) 또는 차세대 비디오/이미지 코딩 표준(예를 들어, H.267, H.268 등)에 개시된 방법에 적용될 수 있다. 본 명세서에서 엑세스 유닛(Access unit; AU)은 DPB(Decoded picture buffer)에서 동일한 시간에 출력되는 서로 다른 레이어에 속한 복수의 픽처 셋을 나타내는 단위를 의미한다. 픽처(picture)는 일반적으로 특정 시간대의 하나의 영상을 나타내는 단위를 의미하며, 슬라이스(slice)는 코딩에 있어서 픽처의 일부를 구성하는 단위이다. 하나의 픽처는 복수의 슬라이스로 구성될 수 있으며, 필요에 따라서 픽처 및 슬라이스는 서로 혼용되어 사용될 수 있다. 픽셀(pixel) 또는 펠(pel)은 하나의 픽처(또는 영상)을 구성하는 최소의 단위를 의미할 수 있다. 또한, 픽셀에 대응하는 용어로서 '샘플(sample)'이 사용될 수 있다. 샘플은 일반적으로 픽셀 또는 픽셀의 값을 나타낼 수 있으며, 휘도(luma) 성분의 픽셀/픽셀값만을 나타낼 수도 있고, 채도(chroma) 성분의 픽셀/픽셀 값만을 나타낼 수도 있다. 유닛(unit)은 영상 처리의 기본 단위를 나타낸다. 유닛은 픽처의 특정 영역 및 해당 영역에 관련된 정보 중 적어도 하나를 포함할 수 있다. 유닛은 경우에 따라서 블록(block) 또는 영역(area) 등의 용어와 혼용하여 사용될 수 있다. 일반적인 경우, MxN 블록은 M개의 열과 N개의 행으로 이루어진 샘플들 또는 변환 계수(transform coefficient)들의 집합을 나타낼 수 있다. 도 1은 본 발명이 적용될 수 있는 비디오 인코딩 장치의 구성을 개략적으로 설명하는 도면이다. 도 1을 참조하면, 비디오 인코딩 장치(100)는 픽처 분할부(105), 예측부(110), 레지듀얼 처리부(120), 엔트로피 인코딩부(130), 가산부(140), 필터부(150) 및 메모리(160)을 포함할 수 있다. 레지듀얼 처리부(120)는 감산부(121), 변환부(122), 양자화부(123), 재정렬부(124), 역양자화부(125) 및 역변환부(126)를 포함할 수 있다. 픽처 분할부(105)는 입력된 픽처를 적어도 하나의 처리 유닛(processing unit)으로 분할할 수 있다. 일 예로, 처리 유닛은 코딩 유닛(coding unit, CU)이라고 불릴 수 있다. 이 경우 코딩 유닛은 코딩 트리 유닛(Coding Tree Unit)으로부터 QTBT (Quad-tree binary-tree) 구조에 따라 재귀적으로(recursively) 분할될 수 있다. 예를 들어, 하나의 코딩 트리 유닛은 쿼드 트리 구조 및/또는 바이너리 트리 구조를 기반으로 하위(deeper) 뎁스의 복수의 노드들로 분할될 수 있다. 이 경우 예를 들어 쿼드 트리 구조가 먼저 적용되고 바이너리 트리 구조가 나중에 적용될 수 있다. 또는 바이너리 트리 구조가 먼저 적용될 수도 있다. 더 이상 분할되지 않는 노드에 대하여 복호화가 수행될 수 있으며, 이와 같이 더 이상 분할되지 않는 노드에 대하여 코딩 유닛이 결정될 수 있다. 코딩 트리 유닛은 코딩 유닛의 분할을 위한 단위인 점에서, 코딩 트리 유닛을 코딩 유닛으로 명명할 수도 있다. 이러한 경우, 코딩 트리 유닛의 분할에 의하여 코딩 유닛이 결정되는 점에서 코딩 트리 유닛을 최대 코딩 유닛(largest coding unit, LCU)이라 명명할 수도 있다. 이와 같이, 더 이상 분할되지 않는 최종 코딩 유닛을 기반으로 본 발명에 따른 코딩 절차가 수행될 수 있다. 이 경우 영상 특성에 따른 코딩 효율 등을 기반으로, 코딩 트리 유닛이 바로 최종 코딩 유닛으로 사용될 수 있고, 또는 필요에 따라 코딩 유닛은 재귀적으로(recursively) 보다 하위 뎁스의 코딩 유닛들로 분할되어 최적의 사이즈의 코딩 유닛이 최종 코딩 유닛으로 사용될 수 있다. 여기서 코딩 절차라 함은 후술하는 예측, 변환, 및 복원 등의 절차를 포함할 수 있다. 다른 예로, 처리 유닛은 코딩 유닛(coding unit, CU) 예측 유닛(prediction unit, PU) 또는 변환 유닛(transform unit, TU)을 포함할 수도 있다. 코딩 유닛은 코딩 트리 유닛으로부터 쿼드 트리 구조를 따라서 하위(deeper) 뎁스의 코딩 유닛들로 분할(split)될 수 있다. 이 경우 영상 특성에 따른 코딩 효율 등을 기반으로, 코딩 트리 유닛이 바로 최종 코딩 유닛으로 사용될 수 있고, 또는 필요에 따라 코딩 유닛은 재귀적으로(recursively) 보다 하위 뎁스의 코딩 유닛들로 분할되어 최적의 사이즈의 코딩 유닛이 최종 코딩 유닛으로 사용될 수 있다. 최소 코딩 유닛(min coding unit, min CU)이 설정된 경우 코딩 유닛은 최소 코딩 유닛보다 더 작은 코딩 유닛으로 분할될 수 없다. 여기서 최종 코딩 유닛이라 함은 예측 유닛 또는 변환 유닛으로 파티셔닝 또는 분할되는 기반이 되는 코딩 유닛을 의미한다. 예측 유닛은 코딩 유닛으로부터 파티셔닝(partitioning)되는 유닛으로서, 샘플 예측의 유닛일 수 있다. 이 때, 예측 유닛은 서브 블록(sub block)으로 나뉠 수도 있다. 변환 유닛은 코딩 유닛으로부터 쿼드 트리 구조를 따라서 분할 될 수 있으며, 변환 계수를 유도하는 유닛 및/또는 변환 계수로부터 레지듀얼 신호(residual signal)를 유도하는 유닛일 수 있다. 이하, 코딩 유닛은 코딩 블록(coding block, CB), 예측 유닛은 예측 블록(prediction block, PB), 변환 유닛은 변환 블록(transform block, TB)으로 불릴 수 있다. 예측 블록 또는 예측 유닛은 픽처 내에서 블록 형태의 특정 영역을 의미할 수 있고, 예측 샘플의 어레이(array)를 포함할 수 있다. 또한, 변환 블록 또는