Search

KR-20260061448-A - 인코딩/디코딩 방법, 비트스트림을 저장한 기록 매체 및 비트스트림을 전송하는 방법

KR20260061448AKR 20260061448 AKR20260061448 AKR 20260061448AKR-20260061448-A

Abstract

인코딩/디코딩 방법, 비트스트림 전송 방법 및 비트스트림을 저장하는 컴퓨터 판독 가능한 기록 매체가 제공된다. 본 개시에 따른 방법은, 비트스트림로부터 이미지에 적용된 최적화에 대한 정보를 획득하는 단계; 및 상기 최적화에 대한 정보에 기초하여 상기 최적화의 목적 및 방법을 결정하는 단계를 포함하고, 상기 최적화에 대한 정보는, 최적화 목적을 나타내는 제1 정보 및 최적화 방법의 종류를 나타내는 제2 정보를 포함할 수 있다.

Inventors

  • 김철근
  • 탄헨드리
  • 임재현

Assignees

  • 엘지전자 주식회사

Dates

Publication Date
20260506
Application Date
20241004
Priority Date
20231004

Claims (19)

  1. 비트스트림로부터 비디오에 적용된 최적화에 대한 정보를 획득하는 단계; 및 상기 최적화에 대한 정보에 기초하여 상기 최적화의 목적 및 방법을 결정하는 단계를 포함하고, 상기 최적화에 대한 정보는, 최적화 목적을 나타내는 제1 정보 및 최적화 방법의 종류를 나타내는 제2 정보를 포함하는, 방법.
  2. 제1항에 있어서, 상기 제1 정보는, 상기 최적화 목적이 기계 분석(machine analysis)을 위한 것인지를 나타내는 제1 신택스 요소 또는 상기 최적화 목적이 사용자 시각(human viewing)을 위한 것인지를 나타내는 제2 신택스 요소를 포함하는, 방법.
  3. 제2항에 있어서, 상기 제1 신택스 요소의 값은 상기 최적화 목적이 상기 기계 분석을 위한 것임을 나타내는, 방법.
  4. 제2항에 있어서, 상기 제2 신택스 요소의 값은 상기 최적화 목적이 상기 사용자 시각을 위한 것임을 나타내는, 방법.
  5. 제2항에 있어서, 상기 최적화 목적이 상기 기계 분석을 위한 것이 아님을 나타내는 제1 신택스 요소의 값과 상기 최적화 목적이 상기 사용자 시각을 위한 것이 아님을 나타내는 제2 신택스 요소의 값은 동시에 설정되지 않는, 방법.
  6. 제1항에 있어서, 상기 제2 정보는, 상기 최적화 방법의 종류가 객체 기반 최적화(object-based optimization), 시간적 리샘플링 최적화(temporal resampling optimization), 공간적 리샘플링 최적화(spatial resampling optimization), 시간적 품질 최적화(temporal quality optimization), 공간적 품질 최적화(spatial quality optimization) 또는 색각 이상 최적화(color vision deficiency optimization) 중 적어도 하나를 포함하는지를 나타내는, 방법.
  7. 제6항에 있어서, 상기 공간적 리샘플링 최적화는, 업샘플링(up-sampling)과 다운샘플링(down-sampling)을 포함하는, 방법.
  8. 제1항에 있어서, 상기 최적화에 대한 정보는, 이전에 적용된 최적화의 지속성 취소 여부를 나타내는 취소 플래그 및 상기 최적화의 지속성을 나타내는 지속성 플래그를 더 포함하는, 방법.
  9. 제7항에 있어서, 상기 지속성 플래그의 값이 1인 것은 상기 최적화가 현재 픽처와 모든 후속 픽처들에 적용됨을 나타내고, 상기 지속성 플래그의 값이 0인 것은 상기 최적화가 상기 현재 픽처에만 적용됨을 나타내는, 방법.
  10. 제1항에 있어서, 상기 제2 정보는, 상기 최적화 방법의 종류가 객체 기반 최적화인지를 나타내는 제1 플래그, 상기 최적화 방법의 종류가 시간적 리샘플링 최적화인지를 나타내는 제2 플래그, 상기 최적화 방법의 종류가 공간적 리샘플링 최적화인지를 나타내는 제3 플래그, 상기 최적화 방법의 종류가 시간적 품질 최적화인지를 나타내는 제4 플래그, 상기 최적화 방법의 종류가 공간적 품질 최적화인지를 나타내는 제5 플래그 또는 상기 최적화 방법의 종류가 색각 이상 최적화인지를 나타내는 제6 플래그를 포함하는, 방법.
  11. 제6항에 있어서, 상기 제2 플래그의 값에 기반하여 시간적 리샘플링 최적화 방법 및 세부 정보를 나타내는 리샘플링 정보가 정의되고, 상기 리샘플링 정보는, 원본 시간적 해상도 및 상기 원본 시간적 해상도인 경우에서의 프레임 간 간격을 나타내는, 방법.
  12. 비디오에 대한 최적화를 수행하는 단계; 상기 최적화에 대한 정보를 생성하는 단계; 및 상기 최적화에 대한 정보를 인코딩하는 단계를 포함하고, 상기 최적화에 대한 정보는, 최적화 목적을 나타내는 제1 정보 및 최적화 방법을 나타내는 제2 정보를 포함하는, 방법.
  13. 제12항에 있어서, 상기 제1 정보는, 상기 최적화의 목적이 기계 분석을 위한 것인지를 나타내는 제1 신택스 요소 또는 상기 최적화의 목적이 사용자 시각을 위한 것인지를 나타내는 제2 신택스 요소를 포함하는, 방법.
  14. 제13항에 있어서, 상기 제1 신택스 요소의 값은 상기 최적화 목적이 상기 기계 분석을 위한 것임을 나타내는, 방법.
  15. 제13항에 있어서, 상기 제2 신택스 요소의 값은 상기 최적화 목적이 상기 사용자 시각을 위한 것임을 나타내는, 방법.
  16. 제13항에 있어서, 상기 최적화 목적이 상기 기계 분석을 위한 것이 아님을 나타내는 제1 신택스 요소의 값과 상기 최적화 목적이 상기 사용자 시각을 위한 것이 아님을 나타내는 제2 신택스 요소의 값은 동시에 설정되지 않는, 방법.
  17. 제12항에 있어서, 상기 최적화에 대한 정보는, 이전에 적용된 최적화의 지속성 취소 여부를 나타내는 취소 플래그 및 상기 최적화의 지속성을 나타내는 지속성 플래그를 더 포함하는, 방법.
  18. 인코딩 방법에 의해 생성된 비트스트림을 저장하는 컴퓨터 판독 가능한 기록 매체로서, 상기 비트스트림은, 비디오에 적용된 최적화에 대한 정보를 포함하고, 상기 최적화에 대한 정보는, 최적화 목적을 나타내는 제1 정보 및 최적화 방법을 나타내는 제2 정보를 포함하는, 컴퓨터 판독 가능한 기록매체.
  19. 비디오에 대한 비트스트림을 생성하는 단계, 상기 비트스트림은 상기 비디오에 대한 최적화를 수행하는 단계; 상기 최적화에 대한 정보를 생성하는 단계; 및 상기 최적화에 대한 정보를 인코딩하는 단계에 의해서 생성되고, 및 상기 비트스트림을 포함하는 데이터를 전송하는 단계를 포함하고, 상기 최적화에 대한 정보는, 최적화 목적을 나타내는 제1 정보 및 최적화 방법을 나타내는 제2 정보를 포함하는, 방법.

Description

인코딩/디코딩 방법, 비트스트림을 저장한 기록 매체 및 비트스트림을 전송하는 방법 본 개시는 인코딩/디코딩 방법, 비트스트림을 저장한 기록 매체 및 비트스트림을 전송하는 방법에 관한 것으로, 비디오에 적용된 최적화(optimization)에 대한 정보를 인코딩/디코딩하는 방법에 관한 것이다. 머신러닝 기술의 발전과 함께 영상 처리 기반의 인공지능 서비스에 대한 수요가 증가하고 있다. 인공지능 서비스에서 요구되는 방대한 양의 영상 데이터를 한정된 리소스 내에서 효과적으로 처리하기 위해서는, 머신 태스크 수행에 최적화된 영상 압축 기술이 필수적이다. 하지만, 기존의 영상 압축 기술은 휴먼 비전을 위한 고해상도, 고품질의 영상 처리를 목표로 발전해 왔는 바, 인공지능 서비스에는 부적합하다는 문제가 있다. 이에 따라, 인공지능 서비스에 적합한 머신 지향의 새로운 영상 압축 기술에 대한 연구 개발이 활발히 진행되고 있다. 도 1은 본 개시의 실시예들이 적용될 수 있는 VCM 시스템을 개략적으로 나타낸 도면이다. 도 2는 본 개시의 실시예들이 적용될 수 있는 VCM 파이프라인 구조를 개략적으로 나타낸 도면이다. 도 3은 본 개시의 실시예들이 적용될 수 있는 영상/비디오 인코더를 개략적으로 나타낸 도면이다. 도 4는 본 개시의 실시예들이 적용될 수 있는 영상/비디오 디코더를 개략적으로 나타낸 도면이다. 도 5는 본 개시의 실시예들이 적용될 수 있는 피쳐/피쳐맵 인코딩 절차를 개략적으로 나타낸 흐름도이다. 도 6은 본 개시의 실시예들이 적용될 수 있는 피쳐/피쳐맵 디코딩 절차를 개략적으로 나타낸 흐름도이다. 도 7은 피쳐 추출 네트워크를 이용한 피쳐 추출 방법의 일 예를 나타낸 도면이다. 도 8a는 비디오 소스의 데이터 분포 특성을 나타낸 도면이고, 도 8b는 피쳐셋의 데이터 분포 특성을 나타낸 도면이다. 도 9는 본 개시의 실시예들이 적용될 수 있는 변환 및 역변환 과정을 설명하기 위한 도면이다. 도 10은 본 개시의 일 실시예에 따른 양자화 그룹을 예시적으로 나타내는 도면이다. 도 11은 하나의 신택스 요소를 부호화하기 위한 CABAC의 블록도이다. 도 12 및 도 13은 엔트로피 인코딩 절차를 설명하기 위한 도면들이다. 도 14 및 도 15는 엔트로피 디코딩 절차를 설명하기 위한 도면들이다. 도 16은 VCM 계층 구조의 예를 도시한다. 도 17은 부호화된 추상화된 피쳐와 NNAL 정보로 구성된 비트스트림의 일 예를 나타낸 도면이다. 도 18은 본 개시에 따른 실시예가 적용될 수 있는 목적에 따른 부호화 최적화 및 부호화 비트스트림 사용을 예시적으로 설명하기 위한 도면이다. 도 19는 프로파일 정의 구조의 예를 나타낸 도면이다. 도 20은 본 개시의 일 실시예에 따른 인코딩 방법을 나타낸 도면이다. 도 21은 본 개시의 일 실시예에 따른 디코딩 방법을 나타낸 도면이다. 도 22는 본 개시의 실시예들이 적용될 수 있는 컨텐츠 스트리밍 시스템의 일 예를 나타내는 도면이다. 도 23은 본 개시의 실시예들이 적용될 수 있는 컨텐츠 스트리밍 시스템의 다른 예를 나타내는 도면이다. 이하에서는 첨부한 도면을 참고로 하여 본 개시의 실시예에 대하여 본 개시가 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 상세히 설명한다. 그러나, 본 개시는 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예에 한정되지 않는다. 본 개시의 실시예를 설명함에 있어서 공지 구성 또는 기능에 대한 구체적인 설명이 본 개시의 요지를 흐릴 수 있다고 판단되는 경우에는 그에 대한 상세한 설명은 생략한다. 그리고, 도면에서 본 개시에 대한 설명과 관계없는 부분은 생략하였으며, 유사한 부분에 대해서는 유사한 도면 부호를 붙였다. 본 개시에 있어서, 어떤 구성요소가 다른 구성요소와 "연결", "결합" 또는 "접속"되어 있다고 할 때, 이는 직접적인 연결관계뿐만 아니라, 그 중간에 또 다른 구성요소가 존재하는 간접적인 연결관계도 포함할 수 있다. 또한 어떤 구성요소가 다른 구성요소를 "포함한다" 또는 "가진다"고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 배제하는 것이 아니라 또 다른 구성요소를 더 포함할 수 있는 것을 의미한다. 본 개시에 있어서, 제1, 제2 등의 용어는 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용되며, 특별히 언급되지 않는 한 구성요소들간의 순서 또는 중요도 등을 한정하지 않는다. 따라서, 본 개시의 범위 내에서 일 실시예에서의 제1 구성요소는 다른 실시예에서 제2 구성요소라고 칭할 수도 있고, 마찬가지로 일 실시예에서의 제2 구성요소를 다른 실시예에서 제1 구성요소라고 칭할 수도 있다. 본 개시에 있어서, 서로 구별되는 구성요소들은 각각의 특징을 명확하게 설명하기 위함이며, 구성요소들이 반드시 분리되는 것을 의미하지는 않는다. 즉, 복수의 구성요소가 통합되어 하나의 하드웨어 또는 소프트웨어 단위로 이루어질 수도 있고, 하나의 구성요소가 분산되어 복수의 하드웨어 또는 소프트웨어 단위로 이루어질 수도 있다. 따라서, 별도로 언급하지 않더라도 이와 같이 통합된 또는 분산된 실시예도 본 개시의 범위에 포함된다. 본 개시에 있어서, 다양한 실시예에서 설명하는 구성요소들이 반드시 필수적인 구성요소들을 의미하는 것은 아니며, 일부는 선택적인 구성요소일 수 있다. 따라서, 일 실시예에서 설명하는 구성요소들의 부분집합으로 구성되는 실시예도 본 개시의 범위에 포함된다. 또한, 다양한 실시예에서 설명하는 구성요소들에 추가적으로 다른 구성요소를 포함하는 실시예도 본 개시의 범위에 포함된다. 본 개시는 영상의 부호화 및 복호화에 관한 것으로서, 본 개시에서 사용되는 용어는, 본 개시에서 새롭게 정의되지 않는 한 본 개시가 속한 기술 분야에서 통용되는 통상의 의미를 가질 수 있다. 본 개시는 VVC(Versatile Video Coding) 표준 및/또는 VCM(Video Coding for Machines) 표준에 개시되는 방법에 적용될 수 있다. 또한, 본 개시는 EVC (essential video coding) 표준, AV1 (AOMedia Video 1) 표준, AVS2 (2nd generation of audio video coding standard) 또는 차세대 비디오/영상 코딩 표준(e.g., H.267 or H.268 등)에 개시되는 방법에 적용될 수 있다. 본 개시는 비디오/영상 코딩에 관한 다양한 실시예들을 제시하며, 다른 언급이 없는 한 상기 실시예들은 서로 조합되어 수행될 수도 있다. 본 개시에서 "비디오(video)"는 시간의 흐름에 따른 일련의 영상(image)들의 집합을 의미할 수 있다. "영상(image)"은 AI(artificial intelligence)에 의해 생성된 정보일 수 있다. AI가 일련의 태스크를 수행하는 과정에서 사용하는 입력 정보, 정보 처리 과정 중에 발생하는 정보와 출력하는 정보가 영상(image)으로 쓰일 수 있다. "픽처(picture)"는 일반적으로 특정 시간대의 하나의 영상을 나타내는 단위를 의미하며, 슬라이스(slice)/타일(tile)은 부호화에 있어서 픽처의 일부를 구성하는 부호화 단위이다. 하나의 픽처는 하나 이상의 슬라이스/타일로 구성될 수 있다. 또한, 슬라이스/타일은 하나 이상의 CTU(coding tree unit)를 포함할 수 있다. 상기 CTU는 하나 이상의 CU로 분할될 수 있다. 타일은 픽처 내의 특정 타일 행(Tile Row) 및 특정 타일 열(Tile Column) 내에 존재하는 사각 영역으로, 복수의 CTU로 구성될 수 있다. 타일 열은 CTU들의 사각 영역으로 정의될 수 있으며, 픽쳐의 높이와 동일한 높이를 가지고, 픽쳐 파라미터 셋과 같은 비트스트림 부분으로부터 시그널링 되는 신택스 요소에 의하여 명세되는 너비를 가질 수 있다. 타일 행은 CTU들의 사각 영역으로 정의될 수 있으며, 픽쳐의 너비와 동일한 너비를 가지고, 픽쳐 파라미터 셋과 같은 비트스트림 부분으로부터 시그널링 되는 신택스 요소에 의하여 명세되는 높이를 가질 수 있다. 타일 스캔은 픽쳐를 분할하는 CTU들의 소정의 연속된 순서 지정 방법이다. 여기서, CTU들은 타일 내에서 CTU 래스터 스캔(raster scan)에 따라 연속적으로 순서를 부여받을 수 있고, 픽쳐내의 타일들은 픽쳐의 타일들의 래스터 스캔 순서에 따라 연속적으로 순서를 부여받을 수 있다. 슬라이스는 정수개의 완전한 타일들을 포함하거나, 하나의 픽쳐의 하나의 타일 내의 연속하는 정수개의 완전한 CTU 행을 포함할 수 있다. 슬라이스는 하나의 싱글 NAL 유닛에 독점적으로 포함될 수 있다. 하나의 픽처는 하나 이상의 타일 그룹으로 구성될 수 있다. 하나의 타일 그룹은 하나 이상의 타일들을 포함할 수 있다. 브릭은 픽처 내 타일 이내의 CTU행들의 사각 영역을 나타낼 수 있다. 하나의 타일은 하나 이상의 브릭(Brick)을 포함할 수 있다. 브릭은 타일 내 CTU 행들의 사각 영역을 나타낼 수 있다. 하나의 타일은 복수의 브릭으로 분할될 수 있으며, 각각의 브릭은 타일에 속한 하나 이상의 CTU행을 포함할 수 있다. 복수의 브릭으로 분할되지 않는 타일 또한 브릭으로 취급될 수 있다. 본 개시에서 "픽셀(pixel)" 또는 "펠(pel)"은 하나의 픽처(또는 영상)를 구성하는 최소의 단위를 의미할 수 있다. 또한, 픽셀에 대응하는 용어로서 "샘플(sample)"이 사용될 수 있다. 샘플은 일반적으로 픽셀 또는 픽셀의 값을 나타낼 수 있으며, 루마(luma) 성분의 픽셀/픽셀값만을 나타낼 수도 있고, 크로마(chroma) 성분의 픽셀/픽셀 값만을 나타낼 수도 있다. 일 실시예에서, 특히 VCM에 적용되는 경우, 픽셀/픽셀값은 다른 특성 및 의미를 갖는 성분들의 집합으로 구성된 픽쳐가 있을 때 각 성분들의 독립적 정보 혹은 조합, 합성, 분석을 통해 생성된 성분의 픽셀/픽셀값을 나타낼 수도 있다. 예를 들어 RGB 입력에서 R의 픽셀/픽셀값만을 나타낼 수도 있고 G의 픽셀/픽셀값만을 나타낼 수도 있고 B의 픽셀/픽셀값만을 나타낼 수도 있다. 예를 들어 R, G, B 성분을 이용해 합성된 루마(Luma) 성분의 픽셀/픽셀값만을 나타낼 수도 있