Search

KR-20260061539-A - 저동적 범위-기반 이미지 및 비디오 코딩을 위한 샘플 맵핑

KR20260061539AKR 20260061539 AKR20260061539 AKR 20260061539AKR-20260061539-A

Abstract

본 개시내용은 일반적으로 비디오 코딩에 관한 것으로, 특히 저동적 범위(Low Dynamic Range, LDR) 샘플들을 사용하는 이미지 및 비디오 코딩에서의 샘플 맵핑을 위한 방법들 및 시스템들에 관한 것이다. 예를 들어, 본 개시내용은 비디오들 또는 이미지들의 인코딩 및 디코딩 프로세스 동안 원래 비트 깊이로부터 LDR 비트 깊이로의 샘플들의 변환을 위한 맵핑 함수들의 구현들 및 비트스트림에서의 이러한 맵핑 함수들의 시그널링을 설명한다.

Inventors

  • 자오 신
  • 딩, 딩
  • 류, 산

Assignees

  • 텐센트 아메리카 엘엘씨

Dates

Publication Date
20260506
Application Date
20240628
Priority Date
20240627

Claims (20)

  1. 비디오 또는 이미지의 비트스트림에서 블록을 디코딩하기 위한 방법으로서, 상기 비트스트림을 수신하는 단계; 상기 비트스트림으로부터, 상기 블록의 인코딩에 저동적 범위(Low Dynamic Range, LDR)가 적용된다고 결정하는 단계; 상기 블록의 적어도 하나의 컬러 컴포넌트를 디코딩하여 제1 비트 깊이 N 1 에서 상기 블록의 재구성된 샘플들을 생성하는 단계; LDR 샘플 맵핑 방식을 결정하는 단계; 및 상기 블록의 재구성된 샘플들에 상기 LDR 샘플 맵핑 방식을 적용하여 제2 비트 깊이 N 2 를 갖는 상기 블록의 맵핑된 샘플들을 생성하는 단계를 포함하고, N 2 는 N 1 보다 큰, 방법.
  2. 제1항에 있어서, 상기 LDR 샘플 맵핑 방식은 상기 맵핑된 샘플들을 생성하기 위해 룩업 테이블을 사용하여 상기 재구성된 샘플들을 맵핑하는 것을 포함하고, 상기 룩업 테이블은 미리 정의되거나 상기 비트스트림에서 시그널링되는, 방법.
  3. 제1항에 있어서, 상기 LDR 샘플 맵핑 방식은 맵핑 함수를 사용하여 상기 재구성된 샘플들을 맵핑하는 것을 포함하고, 상기 맵핑 함수는 미리 정의되거나 상기 비트스트림에서 시그널링되는, 방법.
  4. 제3항에 있어서, 상기 맵핑 함수는 알고리즘 연산(algorithmic operation)을 포함하고, 상기 알고리즘 연산은: N 2 -N 1 비트의 좌측 시프트 연산; 또는 좌측 시프트 연산 후 오프셋 값 추가; 또는 동적 범위 확장(Dynamic Range Expansion, DRE)을 포함하는, 방법.
  5. 제3항에 있어서, 상기 맵핑 함수는 훈련된 딥 러닝 모델(trained deep learning model)을 포함하고, 상기 훈련된 딥 러닝 모델은 컨볼루션 신경망(Convolutional Neural Network, CNN), 생성적 적대 신경망(Generative Adversarial Network, GAN), 또는 확산 모델 중 적어도 하나를 포함하는, 방법.
  6. 제3항에 있어서, 상기 맵핑 함수는 알고리즘 맵핑 함수와 훈련된 딥 러닝 모델 둘 다를 포함하는, 방법.
  7. 제1항 내지 제7항 중 어느 한 항에 있어서, 상기 LDR 샘플 맵핑 방식을 결정하는 단계는 상기 비트스트림을 디코딩하여 상기 LDR 샘플 맵핑 방식을 표시하기 위한 명시적으로 시그널링된 신택스 요소를 획득하는 단계를 포함하는, 방법.
  8. 제7항에 있어서, 상기 비트스트림에서 명시적으로 시그널링된 신택스 요소는: 시퀀스 헤더, 픽처 헤더, 서브픽처 헤더, 프레임 헤더, 슬라이스 헤더, 또는 타일 헤더를 포함하는 하이 레벨 신택스; 또는 SEI(Supplemental Enhancement Information) 메시지로부터 획득되는, 방법.
  9. 제7항에 있어서, 상기 비트스트림에서 명시적으로 시그널링된 신택스 요소는 LDR 이미지 영역별로 시그널링되는, 방법.
  10. 제1항 내지 제7항 중 어느 한 항에 있어서, 상기 LDR 샘플 맵핑 방식은 맵핑 함수를 사용하여 상기 재구성된 샘플들을 맵핑하는 것을 포함하고, 상기 맵핑 함수는 복수의 미리 정의된 맵핑 함수들에 대한 인덱스를 통해 시그널링되거나; 또는 상기 맵핑 함수는 상기 비트스트림에서 명시적으로 시그널링되는, 방법.
  11. 제1항 내지 제7항 중 어느 한 항에 있어서, 상기 블록의 맵핑된 샘플들의 클리핑(clipping)을 수행하는 단계를 추가로 포함하는, 방법.
  12. 제1항 내지 제7항 중 어느 한 항에 있어서, 상기 블록의 재구성된 샘플들에 상기 LDR 샘플 맵핑 방식을 적용하는 것은 상기 블록의 재구성된 컬러 컴포넌트 샘플들을 포함하는 코딩된 정보, 상기 블록의 재구성된 이웃 샘플 값들, 또는 상기 블록의 양자화 파라미터들, 상기 블록과 연관된 프레임 해상도, 또는 상기 블록과 연관된 시간 계층 정보에 의존하는, 방법.
  13. 제1항 내지 제7항 중 어느 한 항에 있어서, 상이한 LDR 샘플 맵핑 방식들이 상기 블록의 상이한 컬러 컴포넌트들에 적용되는, 방법.
  14. 비트스트림을 생성하기 위해 비디오 또는 이미지의 블록을 인코딩하기 위한 방법으로서, LDR을 적용함으로써 상기 블록이 인코딩될 것이라고 결정하는 단계; 상기 블록의 인코딩된 샘플들의 인코딩된 비트 깊이 N 1 을 결정하는 단계; 상기 블록의 원래 샘플들의 원래 비트 깊이 N 2 를 결정하는 단계 - N 2 는 N 2 보다 큼 -; 상기 원래 비트 깊이 N 2 를 갖는 상기 블록의 원래 샘플들에 LDR 샘플 맵핑 방식을 적용하여 상기 인코딩된 비트 깊이 N 1 을 갖는 상기 블록의 맵핑된 LDR 샘플들을 생성하는 단계; 및 상기 블록의 맵핑된 LDR 샘플들을 인코딩하여 상기 비트스트림에서 상기 블록의 인코딩된 샘플들을 생성하는 단계를 포함하는, 방법.
  15. 제14항에 있어서, 상기 LDR 샘플 맵핑 방식은 상기 맵핑된 LDR 샘플들을 생성하기 위해 룩업 테이블을 사용하여 상기 블록의 원래 샘플들을 맵핑하는 것을 포함하고, 상기 룩업 테이블은 미리 정의되거나 상기 비트스트림에서 시그널링되는, 방법.
  16. 제14항에 있어서, 상기 LDR 샘플 맵핑 방식은 맵핑 함수를 사용하여 상기 블록의 원래 샘플들을 맵핑하는 것을 포함하고, 상기 맵핑 함수는 미리 정의되거나 상기 비트스트림에서 시그널링되는, 방법.
  17. 제16항에 있어서, 상기 맵핑 함수는 알고리즘 연산을 포함하고, 상기 알고리즘 연산은: N 2 -N 1 비트의 우측 시프트 연산; 또는 우측 시프트 연산 후 오프셋 값 추가; 또는 역 DRE(reverse DRE)를 포함하는, 방법.
  18. 제16항에 있어서, 상기 맵핑 함수는 훈련된 딥 러닝 모델을 포함하고, 상기 훈련된 딥 러닝 모델은 컨볼루션 신경망(CNN), 생성적 적대 신경망(GAN), 또는 확산 모델 중 적어도 하나를 포함하는, 방법.
  19. 제14항 내지 제18항 중 어느 한 항에 있어서, 상기 비트스트림에 상기 LDR 샘플 맵핑 방식을 표시하기 위한 적어도 하나의 신택스 요소를 포함시키는 단계를 추가로 포함하는, 방법.
  20. 비디오 또는 이미지의 블록을 처리하기 위한 방법으로서, 상기 블록을 비트스트림으로 변환(converting)하는 단계를 포함하고, 상기 비트스트림은: 상기 블록의 인코딩된 샘플들의 인코딩된 비트 깊이 N 1 을 결정하는 것; 상기 블록의 원래 샘플들의 원래 비트 깊이 N 2 를 결정하는 것 - N 2 는 N 1 보다 큼 -; 상기 원래 비트 깊이 N 2 를 갖는 상기 블록의 원래 샘플들에 LDR 샘플 맵핑 방식을 적용하여 상기 인코딩된 비트 깊이 N 2 를 갖는 상기 블록의 맵핑된 LDR 샘플들을 생성하는 것; 및 상기 블록의 맵핑된 LDR 샘플들을 인코딩하여 상기 비트스트림에서 상기 블록의 인코딩된 샘플들을 생성하는 것 에 의해 생성된 인코딩된 블록; 및 상기 LDR 샘플 맵핑 방식이 적용됨을 표시하기 위한 또는 상기 LDR 샘플 맵핑 방식을 표시하기 위한 적어도 하나의 신택스 요소를 포함하는, 방법.

Description

저동적 범위-기반 이미지 및 비디오 코딩을 위한 샘플 맵핑 인용에 의한 통합 본 출원은, 둘 다 발명의 명칭이 "Sample Mapping for Low Dynamic Range-Based Image and Video Coding"인, 2024년 6월 27일자로 출원된 미국 정규 특허 출원 제18/756,191호와 2023년 10월 2일자로 출원된 미국 가특허 출원 제63/542,070호에 기초하고 그에 대한 우선권의 이익을 주장하며, 그들 전체가 본 명세서에 참조로 통합된다. 기술분야 본 개시내용은 일반적으로 비디오 코딩에 관한 것으로, 특히 저동적 범위(Low Dynamic Range, LDR) 샘플들을 사용하는 이미지 및 비디오 코딩에서의 샘플 맵핑을 위한 방법들 및 시스템들에 관한 것이다. 압축되지 않은 디지털 비디오는 일련의 픽처들을 포함할 수 있고, 스트리밍 애플리케이션들에서의 저장, 데이터 처리, 및 송신 대역폭에 대한 특정 비트레이트 요건들과 연관될 수 있다. 비디오 코딩 및 디코딩의 한 가지 목적은, 시그널링 오버헤드를 감소시키면서 다양한 압축 기법들을 통해 압축되지 않은 입력 비디오 신호에서의 중복성(redundancy)을 감소시키는 것이다. 일부 응용들에서, 코딩 효율을 더 증가시키기 위해 일부 비디오/이미지 샘플들의 비트 깊이(bit depth)가 감소될 수 있다. 본 개시내용은 일반적으로 비디오 코딩에 관한 것으로, 특히 저동적 범위(Low Dynamic Range, LDR) 샘플들을 사용하는 이미지 및 비디오 코딩에서의 샘플 맵핑을 위한 방법들 및 시스템들에 관한 것이다. 예를 들어, 본 개시내용은 비디오들 또는 이미지들의 인코딩 및 디코딩 프로세스 동안 원래 비트 깊이로부터 LDR 비트 깊이로의 샘플들의 변환을 위한 맵핑 함수들의 구현들 및 비트스트림에서의 이러한 맵핑 함수들의 시그널링을 설명한다. 일부 예시적인 구현들에서, 비디오 또는 이미지의 비트스트림에서 블록을 디코딩하기 위한 방법이 개시된다. 이 방법은, 비트스트림을 수신하는 단계; 비트스트림으로부터, 블록의 인코딩에 저동적 범위(Low Dynamic Range, LDR)가 적용된다고 결정하는 단계; 블록의 적어도 하나의 컬러 컴포넌트를 디코딩하여 제1 비트 깊이 N1에서 블록의 재구성된 샘플들을 생성하는 단계; LDR 샘플 맵핑 방식을 결정하는 단계; 및 블록의 재구성된 샘플들에 LDR 샘플 맵핑 방식을 적용하여 제2 비트 깊이 N2를 갖는 블록의 맵핑된 샘플들을 생성하는 단계를 포함할 수 있고, N2는 N1보다 크다. 위의 예시적인 구현들에서, LDR 샘플 맵핑 방식은 맵핑된 샘플들을 생성하기 위해 룩업 테이블을 사용하여 재구성된 샘플들을 맵핑하는 것을 포함하고, 룩업 테이블은 미리 정의되거나 비트스트림에서 시그널링된다. 위의 예시적인 구현들 중 어느 하나에서, LDR 샘플 맵핑 방식은 맵핑 함수를 사용하여 재구성된 샘플들을 맵핑하는 것을 포함하고, 맵핑 함수는 미리 정의되거나 비트스트림에서 시그널링된다. 위의 예시적인 구현들 중 어느 하나에서, 맵핑 함수는 알고리즘 연산(algorithmic operation)을 포함하고, 이 알고리즘 연산은, N2-N1 비트의 좌측 시프트 연산; 또는 좌측 시프트 연산 후 오프셋 값 추가; 또는 동적 범위 확장(Dynamic Range Expansion, DRE)을 포함할 수 있다. 위의 예시적인 구현들 중 어느 하나에서, 맵핑 함수는 훈련된 딥 러닝 모델(trained deep learning model)을 포함할 수 있고, 훈련된 딥 러닝 모델은 컨볼루션 신경망(Convolutional Neural Network, CNN), 생성적 적대 신경망(Generative Adversarial Network, GAN), 또는 확산 모델 중 적어도 하나를 포함한다. 위의 예시적인 구현들 중 어느 하나에서, 맵핑 함수는 알고리즘 맵핑 함수와 훈련된 딥 러닝 모델 둘 다를 포함할 수 있다. 위의 예시적인 구현들 중 어느 하나에서, LDR 샘플 맵핑 방식을 결정하는 단계는 비트스트림을 디코딩하여 LDR 샘플 맵핑 방식을 표시하기 위한 명시적으로 시그널링된 신택스 요소를 획득하는 단계를 포함한다. 위의 예시적인 구현들 중 어느 하나에서, 비트스트림에서 명시적으로 시그널링된 신택스 요소는: 시퀀스 헤더, 픽처 헤더, 서브픽처 헤더, 프레임 헤더, 슬라이스 헤더, 또는 타일 헤더를 포함하는 하이 레벨 신택스; 또는 SEI(Supplemental Enhancement Information) 메시지로부터 획득된다. 위의 예시적인 구현들 중 어느 하나에서, 비트스트림에서 명시적으로 시그널링된 신택스 요소는 LDR 이미지 영역별로 시그널링된다. 위의 예시적인 구현들 중 어느 하나에서, LDR 샘플 맵핑 방식은 맵핑 함수를 사용하여 재구성된 샘플들을 맵핑하는 것을 포함할 수 있고, 여기서: 맵핑 함수는 복수의 미리 정의된 맵핑 함수들에 대한 인덱스를 통해 시그널링되거나; 또는 맵핑 함수는 비트스트림에서 명시적으로 시그널링된다. 위의 예시적인 구현들 중 어느 하나에서, 이 방법은 블록의 맵핑된 샘플들의 클리핑(clipping)을 수행하는 단계를 추가로 포함한다. 위의 예시적인 구현들 중 어느 하나에서, 블록의 재구성된 샘플들에 LDR 샘플 맵핑 방식을 적용하는 것은 블록의 재구성된 컬러 컴포넌트 샘플들을 포함하는 코딩된 정보, 블록의 재구성된 이웃 샘플 값들, 또는 블록의 양자화 파라미터들, 블록과 연관된 프레임 해상도, 또는 블록과 연관된 시간 계층 정보에 의존한다. 위의 예시적인 구현들 중 어느 하나에서, 상이한 LDR 샘플 맵핑 방식들이 블록의 상이한 컬러 컴포넌트들에 적용된다. 본 개시내용의 양태들은 또한 위의 디코딩 방법에 대응하는 인코딩 방법을 제공한다. 본 개시내용의 양태들은 또한 위의 방법 구현들 중 임의의 것을 수행하도록 구성되는 회로 또는 프로세서를 포함하는 전자 디바이스 또는 장치를 제공한다. 본 개시내용의 양태들은 또한, 전자 디바이스에 의해 실행될 때, 전자 디바이스로 하여금 위의 방법 구현들 중 어느 하나를 수행하게 하는 명령어들을 저장한 비일시적 컴퓨터 판독가능 매체들을 제공한다. 본 개시내용의 양태들은 또한 위의 비트스트림을 저장하기 위한 비일시적 컴퓨터 판독가능 기록 매체들을 제공한다. 본 개시내용의 양태들은 위의 비트스트림을 생성하기 위한 방법을 추가로 제공한다. 개시된 주제의 추가의 특징들, 본질 및 다양한 이점들이 다음의 상세한 설명 및 첨부 도면들로부터 더 명백할 것이다. 도 1은 예시적인 실시예에 따른 통신 시스템(100)의 단순화된 블록도의 개략적 예시를 도시한다. 도 2는 예시적인 실시예에 따른 통신 시스템(200)의 단순화된 블록도의 개략적 예시를 도시한다. 도 3은 예시적인 실시예에 따른 비디오 디코더의 단순화된 블록도의 개략적 예시를 도시한다. 도 4는 예시적인 실시예에 따른 비디오 인코더의 단순화된 블록도의 개략적 예시를 도시한다. 도 5는 다른 예시적인 실시예에 따른 비디오 인코더의 블록도를 도시한다. 도 6은 다른 예시적인 실시예에 따른 비디오 디코더의 블록도를 도시한다. 도 7은 본 개시내용의 예시적인 실시예들에 따른 코딩 블록 파티셔닝의 방식을 도시한다. 도 8은 본 개시내용의 예시적인 실시예들에 따른 코딩 블록 파티셔닝의 다른 방식을 도시한다. 도 9는 본 개시내용의 예시적인 실시예들에 따른 코딩 블록 파티셔닝의 다른 방식을 도시한다. 도 10은 디코딩 방법에 대한 예시적인 로직 흐름을 도시한다. 도 11은 인코딩 방법에 대한 예시적인 로직 흐름을 도시한다. 도 12는 본 개시내용의 예시적인 실시예들에 따른 컴퓨터 시스템의 개략도를 도시한다. 명세서 및 청구항들 전반에 걸쳐, 용어들은 명시적으로 언급된 의미를 넘어 컨텍스트에 시사된 또는 암시된 미묘한 차이의 의미들을 가질 수 있다. 본 명세서에서 사용되는 바와 같은 "하나의 실시예/구현에서" 또는 "일부 실시예들/구현들에서"라는 어구는 반드시 동일한 실시예/구현을 지칭하는 것은 아니며, 본 명세서에서 사용되는 바와 같은 "또 다른 실시예/구현에서" 또는 "다른 실시예들에서"라는 어구는 반드시 상이한 실시예를 지칭하는 것은 아니다. 예를 들어, 청구된 주제는 전체적으로 또는 부분적으로 예시적인 실시예들/구현들의 조합들을 포함하는 것으로 의도된다. 일반적으로, 용어는 컨텍스트에서의 사용으로부터 적어도 부분적으로 이해될 수 있다. 예를 들어, 본 명세서에서 사용되는 바와 같은 "및", "또는", 또는 "및/또는"과 같은 용어들은 다양한 컨텍스트-의존적 의미들을 포함할 수 있다. 전형적으로, A, B 또는 C와 같은 리스트를 연관시키기 위해 사용되는 경우 "또는"은, 여기서 포함적 의미(inclusive sense)로 사용되는 A, B, 및 C는 물론, 여기서 배타적 의미(exclusive sense)로 사용되는 A, B 또는 C를 의미하는 것으로 의도된다. 또한, 본 명세서에서 사용되는 바와 같은 "하나 이상", "적어도 하나", "하나(a, an)" 또는 "그(the)"라는 용어는, 컨텍스트에 적어도 부분적으로 의존하여, 단수 의미 또는 복수 의미로 사용될 수 있다. 부가적으로, "~에 기초하여(based on)" 또는 "~에 의해 결정되는(determined by)"이라는 용어는 배타적인 인자 세트를 전달하는 것으로 반드시 의도되지는 않는 것으로 이해될 수 있고, 그 대신에, 다시, 컨텍스트에 적어도 부분적으로 의존하여, 반드시 명백히 설명되지는 않은 추가 인자들의 존재를 허용할 수 있다. 아래의 설명은 비디오 인코딩 및 디코딩에 초점을 맞출 수 있지만, 다양한 개시된 실시예들은 정지 이미지들(still images)의 처리에 적용가능할 수 있다. 도 1은 본 개시내용의 일 실시예에 따른 통신 시스템(100)의 단순화된 블록도를 예시한다. 통신 시스템(100)은, 예를 들어, 네트워크(150)를 통해 서로 통신할 수 있는 복수의 단말 디바이스(예를 들어, 110, 120, 130, 및 140)를 포함한다. 도 1의 예에서, 제1 쌍의 단말 디바이스들(110 및 120)은 데이터의 단방향 송신을 수행할 수 있다. 예를 들어, 단말 디바이스(110)는 네