KR20230145097A - 공간 국소 조명 보상 - Google Patents

공간 국소 조명 보상 Download PDF

Info

Publication number
KR20230145097A
KR20230145097A KR1020237029885A KR20237029885A KR20230145097A KR 20230145097 A KR20230145097 A KR 20230145097A KR 1020237029885 A KR1020237029885 A KR 1020237029885A KR 20237029885 A KR20237029885 A KR 20237029885A KR 20230145097 A KR20230145097 A KR 20230145097A
Authority
KR
South Korea
Prior art keywords
block
spatial
neighboring
current block
lic
Prior art date
Application number
KR1020237029885A
Other languages
English (en)
Inventor
야 첸
필리프 보르데스
파브리스 르 리네크
안토니 로버트
Original Assignee
인터디지털 씨이 페이튼트 홀딩스, 에스에이에스
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 인터디지털 씨이 페이튼트 홀딩스, 에스에이에스 filed Critical 인터디지털 씨이 페이튼트 홀딩스, 에스에이에스
Publication of KR20230145097A publication Critical patent/KR20230145097A/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/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/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/105Selection of the reference unit for prediction within a chosen coding or prediction mode, e.g. adaptive choice of position and number of pixels used for prediction
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • G06T5/20Image enhancement or restoration using local operators
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • G06T5/90Dynamic range modification of images or parts thereof
    • G06T5/94Dynamic range modification of images or parts thereof based on local image properties, e.g. for local contrast enhancement
    • 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/132Sampling, masking or truncation of coding units, e.g. adaptive resampling, frame skipping, frame interpolation or high-frequency transform coefficient masking
    • 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/167Position within a video image, e.g. region of interest [ROI]
    • 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/189Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding
    • H04N19/196Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding being specially adapted for the computation of encoding parameters, e.g. by averaging previously computed encoding parameters
    • 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/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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10016Video; Image sequence

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Liquid Crystal (AREA)

Abstract

비디오를 효율적으로 인코딩 또는 디코딩하기 위한 적어도 방법 및 장치가 제시된다. 예를 들어, 픽처에서 인코딩/디코딩되고 있는 현재 블록의 국소 조명 보상(LIC)에 대한 파라미터들은 공간적으로 이웃하는 재구성된 샘플들 및 적어도 하나의 공간 기준 블록의 대응하는 공간적으로 이웃하는 재구성된 샘플들에 기초하여 결정되고, 적어도 하나의 공간 기준 블록은 픽처 내의 현재 블록의 공간적으로 이웃하는 블록이다. 예를 들어, 플래그는 현재 블록에 대한 공간적 LIC를 인에이블/디스에이블한다. 예를 들어, 공간적 LIC는 인터/인트라/IBC 예측 중 임의의 것에 적용된다. 예를 들어, 다수의 공간 기준 블록들이 공간적 LIC 파라미터들을 결정하는 데 사용된다. 예를 들어, 다수의 라인들의 공간적으로 이웃하는 재구성된 샘플들이 공간적/시간적 LIC 파라미터들을 결정하는 데 사용된다.

Description

공간 국소 조명 보상
본 실시예들 중 적어도 하나는 대체적으로, 비디오 인코딩 또는 디코딩을 위한 방법 또는 장치에 관한 것으로, 더 구체적으로는, 공간 국소 조명 보상을 적용하는 것을 포함하는 방법 또는 장치에 관한 것이다.
높은 압축 효율을 달성하기 위해, 이미지 및 비디오 코딩 스킴들은 대개, 모션 벡터 예측을 포함한 예측을 채용하고, 비디오 콘텐츠에서 공간적 및 시간적 중복성(redundancy)을 레버리징(leveraging)하도록 변환한다. 대체적으로, 인트라 또는 인터 예측은 인트라 또는 인터 프레임 상관관계를 이용하는 데 사용되고, 이어서, 종종 예측 오류들 또는 예측 잔차들로 표시되는, 원래의 이미지와 예측 이미지 사이의 차이들은 변환되고, 양자화되고, 엔트로피 코딩된다. 비디오를 재구성하기 위해, 압축 데이터는 엔트로피 코딩, 양자화, 변환, 및 예측에 대응하는 역 프로세스들에 의해 디코딩된다.
비디오 압축 기술에 대한 최근의 추가들은 다양한 산업 표준들, 기준 소프트웨어의 버전들 및/또는 합동 비디오 탐사 팀(Joint Video Exploration Team, JVET) 그룹에 의해 개발되고 있는 합동 탐사 모델(Joint Exploration Model, JEM) 및 향후 범용 비디오 코딩 테스트 모델(Versatile Video Coding(VVC) Test Model, VTM)과 같은 문헌들을 포함한다. 목적은 기존 고효율 비디오 코딩(High Efficiency Video Coding, HEVC) 표준에 대한 추가 개선들을 만드는 것이다.
코딩 및 디코딩을 위한 기존의 방법들은 동일한 슬라이스/픽처 내의 상이한 영역들/블록들 사이의 조명 불일치를 보상하는 데 있어서 일부 제한들을 보여준다. 문제는 인터/인트라 블록 복사(intra/intra block copy, IBC) 예측에서 점진적으로 전파되는 공간 조명 변동을 갖는 일부 샘플 값을 포함하는 콘텐츠에 대해 가장 두드러진다. 따라서, 최신 기술을 개선할 필요가 있다.
종래 기술의 결점들 및 단점들은 본 명세서에 기술된 일반적인 태양들에 의해 해결되고 다루어진다.
제1 태양에 따르면, 방법이 제공된다. 본 방법은, 픽처에서 디코딩되고 있는 현재 블록에 대해, 공간적으로 이웃하는 재구성된 샘플들 및 적어도 하나의 공간 기준 블록의 대응하는 공간적으로 이웃하는 재구성된 샘플들에 기초하여 국소 조명 보상을 위한 파라미터들을 결정하는 단계; 및 결정된 파라미터들에 기초하는 국소 조명 보상을 사용하여 현재 블록을 디코딩하는 단계에 의한 비디오 디코딩을 포함한다. 유리하게는, 적어도 하나의 공간 기준 블록은 픽처 내의 현재 블록의 공간적으로 이웃하는 블록이다.
다른 태양에 따르면, 제2 방법이 제공된다. 본 방법은, 픽처에서 인코딩되고 있는 현재 블록에 대해, 현재 블록의 공간적으로 이웃하는 재구성된 샘플들 및 적어도 하나의 공간 기준 블록의 대응하는 공간적으로 이웃하는 재구성된 샘플들에 기초하여 국소 조명 보상을 위한 파라미터들을 결정하는 단계; 및 결정된 파라미터들에 기초하는 국소 조명 보상을 사용하여 현재 블록을 인코딩하는 단계에 의한 비디오 인코딩을 포함한다. 유리하게는, 적어도 하나의 공간 기준 블록은 픽처 내의 현재 블록의 공간적으로 이웃하는 블록이다.
다른 태양에 따르면, 장치가 제공된다. 본 장치는 하나 이상의 프로세서들을 포함하고, 하나 이상의 프로세서들은 그의 변형예들 중 임의의 것에 따른 비디오 디코딩을 위한 방법을 구현하도록 구성된다. 다른 태양에 따르면, 비디오 디코딩을 위한 장치는, 픽처에서 디코딩되고 있는 현재 블록에 대해, 공간적으로 이웃하는 재구성된 샘플들 및 적어도 하나의 공간 기준 블록의 대응하는 공간적으로 이웃하는 재구성된 샘플들에 기초하여 국소 조명 보상을 위한 파라미터들을 결정하기 위한 수단; 및 결정된 파라미터들에 기초하는 국소 조명 보상을 사용하여 현재 블록을 디코딩하기 위한 수단을 포함한다. 유리하게는, 적어도 하나의 공간 기준 블록은 픽처 내의 현재 블록의 공간적으로 이웃하는 블록이다.
다른 태양에 따르면, 다른 장치가 제공된다. 본 장치는 하나 이상의 프로세서들을 포함하고, 하나 이상의 프로세서들은 그의 변형예들 중 임의의 것에 따른 비디오 인코딩을 위한 방법을 구현하도록 구성된다. 다른 태양에 따르면, 비디오 인코딩을 위한 장치는, 픽처에서 인코딩되고 있는 현재 블록에 대해, 공간적으로 이웃하는 재구성된 샘플들 및 적어도 하나의 공간 기준 블록의 대응하는 공간적으로 이웃하는 재구성된 샘플들에 기초하여 국소 조명 보상을 위한 파라미터들을 결정하기 위한 수단; 및 결정된 파라미터들에 기초하는 국소 조명 보상을 사용하여 현재 블록을 인코딩하기 위한 수단을 포함한다. 유리하게는, 적어도 하나의 공간 기준 블록은 픽처 내의 현재 블록의 공간적으로 이웃하는 블록이다.
적어도 하나의 실시예의 다른 일반적인 태양에 따르면, 공간 국소 조명 보상이 현재 블록 상에 적용되는지 또는 그렇지 않은지를 나타내는 신택스 요소가 결정된다.
적어도 하나의 실시예의 다른 일반적인 태양에 따르면, 현재 블록은 인터 예측, 인트라 예측, IBC 예측 중 임의의 것으로 코딩된다.
적어도 하나의 실시예의 다른 일반적인 태양에 따르면, 적어도 하나의 공간 기준 블록은 상부 이웃 블록 및 좌측 이웃 블록 중 임의의 것이다.
적어도 하나의 실시예의 다른 일반적인 태양에 따르면, 적어도 하나의 공간 기준 블록은 상부 이웃 블록(B0), 좌측 이웃 블록(A0), 상부-우측 이웃 블록(B1), 하단-좌측 이웃 블록(A1) 및 상부-좌측 이웃 블록(B2) 중 임의의 것이다.
적어도 하나의 실시예의 다른 일반적인 태양에 따르면, 국소 조명 보상의 파라미터들을 결정하는 데 어느 공간 기준 블록이 사용되는지를 나타내는 신택스 요소가 결정된다.
적어도 하나의 실시예의 다른 일반적인 태양에 따르면, 적어도 하나의 공간 기준 블록은 인터 예측에서 모션 벡터 예측기(motion vector predictor, MVP) 후보로서 선택된 이웃 블록이다.
적어도 하나의 실시예의 다른 일반적인 태양에 따르면, 적어도 하나의 공간 기준 블록은 현재 블록을 코딩하는 데 사용되는 인트라 예측 모드에 응답한다.
적어도 하나의 실시예의 다른 일반적인 태양에 따르면, 적어도 하나의 공간 기준 블록은 인트라 블록 복사 기준 블록으로서 선택된 이웃 블록을 포함한다.
적어도 하나의 실시예의 다른 일반적인 태양에 따르면, 이웃하는 재구성된 샘플들은 현재 블록 및 적어도 하나의 공간 기준 블록의 좌측 및 상부 경계들에 위치된다.
적어도 하나의 실시예의 다른 일반적인 태양에 따르면, 이웃하는 재구성된 샘플들은 현재 블록 및 적어도 하나의 공간 기준 블록의 다수의 좌측 및 상부 기준 라인들에 위치된다.적어도 하나의 실시예의 다른 일반적인 태양에 따르면, 이웃하는 재구성된 샘플들은 현재 블록 및 적어도 하나의 공간 기준 블록의 전체 재구성된 블록들에 위치된다.적어도 하나의 실시예의 다른 일반적인 태양에 따르면, 적어도 하나의 공간 기준 블록은 제1 공간 기준 블록 및 제2 공간 기준 블록을 포함하고, 제1 공간 기준 블록의 공간적으로 이웃하는 재구성된 샘플들 및 제2 공간 기준 블록의 공간적으로 이웃하는 재구성된 샘플들은 국소 조명 보상의 파라미터들을 결정하기 위해 평균화된다.
다른 태양에 따르면, 제3 방법이 제공된다. 본 방법은, 픽처에서 디코딩되고 있는 현재 블록에 대해, 공간적으로 이웃하는 재구성된 샘플들 및 적어도 하나의 기준 블록의 대응하는 공간적으로 이웃하는 재구성된 샘플들에 기초하여 국소 조명 보상을 위한 파라미터들을 결정하는 단계; 및 결정된 파라미터들에 기초하는 국소 조명 보상을 사용하여 현재 블록을 디코딩하는 단계에 의한 비디오 디코딩을 포함하고, 이웃하는 재구성된 샘플들은 현재 블록 및 적어도 하나의 기준 블록의 다수의 좌측 및 상부 기준 라인들에 위치된다. 적어도 하나의 실시예의 다른 일반적인 태양에 따르면, 이웃하는 재구성된 샘플들은 현재 블록 및 적어도 하나의 공간 기준 블록의 전체 재구성된 블록들에 위치된다.
다른 태양에 따르면, 제4 방법이 제공된다. 본 방법은, 픽처에서 인코딩되고 있는 현재 블록에 대해, 공간적으로 이웃하는 재구성된 샘플들 및 적어도 하나의 기준 블록의 대응하는 공간적으로 이웃하는 재구성된 샘플들에 기초하여 국소 조명 보상을 위한 파라미터들을 결정하는 단계; 및 결정된 파라미터들에 기초하는 국소 조명 보상을 사용하여 현재 블록을 인코딩하는 단계에 의한 비디오 인코딩을 포함하고, 이웃하는 재구성된 샘플들은 현재 블록 및 적어도 하나의 기준 블록의 다수의 좌측 및 상부 기준 라인들에 위치된다. 적어도 하나의 실시예의 다른 일반적인 태양에 따르면, 이웃하는 재구성된 샘플들은 현재 블록 및 적어도 하나의 공간 기준 블록의 전체 재구성된 블록들에 위치된다.
적어도 하나의 실시예의 다른 일반적인 태양에 따르면, 디코딩 실시예들 중 임의의 것에 따른 장치; 및 (i) 신호를 수신하도록 구성된 안테나 - 신호는 비디오 블록을 포함함 -, (ii) 수신된 신호를 비디오 블록을 포함하는 주파수들의 대역으로 제한하도록 구성된 대역 제한기, 또는 (iii) 비디오 블록을 나타내는 출력을 디스플레이하도록 구성된 디스플레이 중 적어도 하나를 포함하는 디바이스가 제공된다.
적어도 하나의 실시예의 다른 일반적인 태양에 따르면, 기술된 인코딩 실시예들 또는 변형예들 중 임의의 것에 따라 생성된 데이터 콘텐츠를 포함하는 비일시적 컴퓨터 판독가능 매체가 제공된다.
적어도 하나의 실시예의 다른 일반적인 태양에 따르면, 기술된 인코딩 실시예들 또는 변형예들 중 임의의 것에 따라 생성된 비디오 데이터를 포함하는 신호가 제공된다.
적어도 하나의 실시예의 다른 일반적인 태양에 따르면, 기술된 인코딩 실시예들 또는 변형예들 중 임의의 것에 따라 생성된 데이터 콘텐츠를 포함하도록 비트스트림이 포맷화된다.
적어도 하나의 실시예의 다른 일반적인 태양에 따르면, 프로그램이 컴퓨터에 의해 실행될 때, 컴퓨터로 하여금, 기술된 인코딩/디코딩 실시예들 또는 변형예들 중 임의의 것을 수행하게 하는 명령어들을 포함하는 컴퓨터 프로그램 제품이 제공된다.
일반적인 태양들의 이들 및 다른 태양들, 특징들 및 이점들은 첨부된 도면들과 관련하여 읽혀질 예시적인 실시예들의 다음의 상세한 설명으로부터 명백해질 것이다.
도면들에서, 여러 실시예들의 예들이 예시되어 있다.
도 1은 압축된 VVC 픽처를 표현하기 위한 코딩 트리 유닛(Coding Tree Unit, CTU) 및 코딩 유닛(Coding Unit, CU) 개념들을 예시한다.
도 2는 적어도 하나의 실시예에 따른, 대응하는 템플릿들을 갖는 국소 조명 보상(Local Illumination Compensation, LIC) 파라미터들의 도출 프로세스를 예시한다.
도 3은 동일한 픽처 내부에서 점진적 조명 변동을 생성하는 광원들을 갖는 예시적인 비디오 게임 픽처들을 예시한다.
도 4는 적어도 하나의 실시예의 일반적인 태양에 따른 일반적 인코딩 방법을 예시한다.
도 5는 적어도 하나의 실시예의 일반적인 태양에 따른 일반적 디코딩 방법을 예시한다.
도 6은 적어도 하나의 실시예에 따른, 인터 예측을 위한 상부/좌측 이웃 블록의 기준 템플릿을 이용한 공간적 LIC 파라미터들의 도출 프로세스를 예시한다.
도 7은 공간적 LIC가 인터 블록의 디코딩 동안 적용되는 제1 실시예에 따른 디코딩 방법을 예시한다.
도 8은 적어도 하나의 실시예에 따른, 인터 예측을 위한 상부 및 좌측 이웃 블록의 평균 기준 템플릿을 이용한 공간적 LIC 파라미터들의 도출 프로세스를 예시한다.
도 9는 인터 블록에 대한 공간 MVP 후보들의 포지션들을 예시한다.
도 10은 적어도 하나의 실시예에 따른, 인터 예측을 위한 상부-우측 이웃 블록의 기준 템플릿을 이용한 공간적 LIC 파라미터들의 도출 프로세스를 예시한다.
도 11은 MVP 후보들에 기초하여 공간적 LIC가 인터 블록의 디코딩 동안 적용되는 제2 실시예에 따른 디코딩 방법을 예시한다.
도 12는 VVC에서의 인트라 예측 방향들을 예시한다.
도 13은 적어도 하나의 실시예에 따른, 인트라 예측을 위한 상부/좌측/상부-우측/하단-좌측/상부-좌측 이웃 블록의 기준 템플릿을 이용한 공간적 LIC 파라미터들의 도출 프로세스를 예시한다.
도 14는 VVC에서의 행렬 가중화 인트라 예측(matrix weighted intra prediction, MIP) 프로세스를 예시한다.
도 15는 공간적 LIC가 인트라 블록의 디코딩 동안 적용되는 제3 실시예에 따른 디코딩 방법을 예시한다.
도 16은 적어도 하나의 실시예에 따른, 인트라 예측을 위한 좌측 이웃 블록의 좌측 경계를 포함하는 기준 템플릿을 이용한 그리고 인트라 예측을 위한 상부 이웃 블록의 상부 경계를 포함하는 기준 템플릿을 이용한 공간적 LIC 파라미터들의 도출 프로세스를 예시한다.
도 17 및 도 18은 적어도 하나의 실시예에 따른, 공간 이웃 블록의 다수의 라인 기준 템플릿을 이용한 공간적 LIC 파라미터들의 도출 프로세스를 예시한다.
도 19는 적어도 하나의 실시예에 따른, 공간 이웃 블록을 포함하는 기준 템플릿을 이용한 공간적 LIC 파라미터들의 도출 프로세스를 예시한다.
도 20은 VVC에서의 IBC 예측을 예시한다.
도 21은 적어도 하나의 실시예에 따른, IBC 예측을 위해 블록 벡터에 의해 표시된 기준 템플릿을 이용한 공간적 LIC 파라미터들의 도출 프로세스를 예시한다.
도 22는 공간적 LIC가 IBC 블록의 디코딩 동안 적용되는 제4 실시예에 따른 디코딩 방법을 예시한다.
도 23은 실시예들의 다양한 태양들이 구현될 수 있는 비디오 인코더의 일 실시예의 블록도를 예시한다.
도 24는 실시예들의 다양한 태양들이 구현될 수 있는 비디오 디코더의 일 실시예의 블록도를 예시한다.
도 25는 실시예들의 다양한 태양들이 구현될 수 있는 예시적인 장치의 블록도를 예시한다.
도면 및 설명은, 명확성을 위해, 전형적인 인코딩 및/또는 디코딩 디바이스들에서 발견되는 많은 다른 요소들을 제거하면서, 본 발명의 원리의 명확한 이해를 위해 관련된 요소들을 예시하기 위해 단순화되었다는 것이 이해되어야 한다. 다양한 요소들을 기술하기 위해 용어들 "제1", "제2"가 본 명세서에서 사용될 수 있지만, 이들 요소들은 이들 용어들에 의해 제한되어서는 안 된다는 것이 이해될 것이다. 이러한 용어들은 하나의 요소를 다른 요소와 구별하는 데에만 사용된다.
다양한 실시예들이 이미지의 인코딩/디코딩과 관련하여 설명된다. 그들은 이미지의 일부, 예컨대 이미지들의 슬라이스 또는 타일, 타일 그룹 또는 전체 시퀀스를 인코딩/디코딩하기 위해 적용될 수 있다.
다양한 방법들이 위에서 기술되어 있고, 각각의 방법은 기술된 방법을 달성하기 위한 하나 이상의 단계들 또는 액션(action)들을 포함한다. 방법의 적절한 동작을 위해 단계들 또는 액션들의 특정 순서가 요구되지 않는 한, 특정 단계들 및/또는 액션들의 순서 및/또는 사용은 수정되거나 조합될 수 있다.
적어도 일부 실시예들은 비디오를 인코딩 또는 디코딩하기 위한 방법에 관한 것이고, 여기서 공간적 LIC는 동일한 픽처 내의 점진적 조명을 보상할 수 있게 한다.
도 1은 압축된 VVC 픽처를 표현하기 위한 코딩 트리 유닛(CTU) 및 코딩 유닛(CU) 개념들을 예시한다. VVC에서, 픽처는 소위 코딩 트리 유닛(CTU)들로 분할되고, 각각의 CTU는 하나 이상의 코딩 유닛(CU)들에 의해 표현된다. 각각의 CU에 대해, 공간 예측(또는 "인트라 예측") 및/또는 시간 예측("인터 예측" 또는 "모션 보상 예측"으로도 지칭됨)이 수행된다. 공간 예측은, 현재 비디오 블록을 예측하기 위해 동일한 비디오 픽처/슬라이스에서 이미 코딩된 이웃 블록들의 샘플들(이는, 기준 샘플들로 지칭됨)로부터의 픽셀들을 사용한다. 공간 예측은 비디오 신호에 내재된 공간적 중복성을 감소시킨다. 시간 예측은 이미 코딩된 비디오 픽처들로부터의 재구성된 픽셀들을 사용하여 현재 비디오 블록을 예측한다. 시간 예측은 비디오 신호에 내재된 시간적 중복성을 감소시킨다. 주어진 비디오 블록에 대한 시간 예측 신호는 대개 하나 이상의 모션 벡터들에 의해 시그널링되고, 이는 현재 블록과 그의 기준 블록 사이의 모션의 양 및 방향을 나타낸다. 또한, 다수의 기준 픽처들이 지원되면, 각각의 비디오 블록에 대해, 그의 기준 픽처 인덱스가 추가적으로 전송되고; 기준 인덱스는, 기준 픽처 저장소 내의 어느 기준 픽처로부터 시간 예측 신호가 오는지를 식별하는 데 사용된다. 공간 및/또는 시간 예측 후에, 인코더 내의 모드 결정 블록은, 예를 들어, 레이트 왜곡 최적화 방법에 기초하여 최상의 예측 모드를 선택한다. 더 용이한 참조를 위해, 현재 설명 전체에 걸쳐 용어들 "CU" 및 "블록"을 상호교환가능하게 사용할 것이다.
도 2는 적어도 하나의 실시예에 따른, 대응하는 템플릿들을 이용한 국소 조명 보상(LIC) 파라미터들의 도출 프로세스를 예시한다. 시간 예측 프로세스에서, LIC는, 시간적 이웃 픽처들 사이에 존재하는 국소 조명 변화들의 문제를 다루는 데 사용되는 코딩 도구이다. LIC는 선형 모델에 기초하는데, 여기서 스케일링 인자 α 및 오프셋 β가 현재 블록의 예측 샘플들을 획득하기 위해 기준 샘플들에 적용된다. 구체적으로, LIC는 하기 식에 의해 수학적으로 모델링된다:
여기서 는 좌표 에서 현재 블록의 예측 신호이고; 는 모션 벡터 가 가리키는 기준 블록이고; α 및 β는 기준 블록에 적용되는 대응하는 스케일링 인자 및 오프셋이다.
도 2에 도시된 바와 같이, LIC가 블록에 대해 적용될 때, 현재 블록의 이웃 샘플들(즉, 도 2의 템플릿 T)과 시간적 기준 픽처들 내의 그들의 대응하는 기준 샘플들(즉, 도 2의 또는 중 어느 하나) 사이의 차이를 최소화함으로써 LIC 파라미터들(즉, α 및 β)의 값들을 도출하기 위해 최소 평균 제곱 오류(least mean square error, LMSE) 방법이 채용된다:
여기서, N은 LIC 파라미터들을 도출하기 위해 사용되는 템플릿 샘플들의 수를 나타내고; 는 좌표 에서 현재 블록의 템플릿 샘플이고; 는 현재 블록의 모션 벡터 에 기초한 템플릿 샘플의 대응하는 기준 샘플(L0 또는 L1 중 어느 하나)이다. 추가적으로, 계산 복잡성을 감소시키기 위해, 템플릿 샘플들 및 기준 템플릿 샘플들 둘 모두는 LIC 파라미터들을 도출하기 위해 서브샘플링되는데(2:1 서브샘플링), 즉, 도 2의 음영처리된 샘플들만이 α 및 β를 도출하는 데 사용된다.
더욱이, LIC가 양방향 블록들(즉, 2개의 시간 예측 블록들에 의해 예측되고 있음)에 적용될 때, LIC 파라미터들은 각각의 예측 방향, 즉 L0 및 L1에 대해 별개로 도출되고 적용된다. 도 2에 도시된 바와 같이, 2개의 모션 벡터들(MV0 및 MV1)에 기초하여, 2개의 기준 템플릿들(T0, T1)이 획득될 수 있고; T0과 T, 및 T1과 T 사이의 왜곡들을 별개로 최소화함으로써, 2개의 방향들에서의 대응하는 LIC 파라미터들의 쌍들이 식 (2) 및 식 (3)에 따라 도출될 수 있다. 그 후에, 현재 블록의 최종 양방향 예측 신호가 다음에 나타낸 바와 같이 2개의 LIC 단방향 예측 블록들을 조합함으로써 생성된다:
여기서, , 및 는 현재 블록의 L0 및 L1 모션 벡터들(즉, )과 연관된 LIC 파라미터들이고; 는 각각, 목록 L0 및 L1로부터의 현재 블록의 대응하는 시간 기준 블록들이다.
인터 블록이 병합 모드로 예측될 때, LIC 플래그는 MV들 및 기준 인덱스들에 더하여 모션 정보의 일부로서 포함된다. 병합 후보 목록이 구성될 때, LIC 플래그는 병합 후보들에 대한 이웃 블록들로부터 이어받는다. 그렇지 않은 경우, LIC 플래그는 단일 콘텍스트로 콘텍스트 코딩되고, LIC 도구가 적용가능하지 않을 때, LIC 플래그는 시그널링되지 않는다.
그러나, 동일한 픽처 내부에서 일부 점진적 조명 변동을 포함하는 일부 비디오 콘텐츠의 코딩 효율을 향상시키는 것이 바람직하다. 그러한 상황은 전형적으로 일부 게이밍 비디오 콘텐츠 또는 컴퓨터 그래픽 이미지들에서 발생할 수 있으며, 여기서 일부 조명원(illumination source)은 픽처 내의 일부 장소에 위치되고 광은 픽처를 가로질러 점진적으로 전파된다. 도 3은 픽처 내에서 점진적 조명 변동을 생성하는 광원들을 갖는 예시적인 비디오 게임 픽처들을 예시한다. 그러한 경우에, 인코딩할 블록은 공간 위치에 따라 점진적으로 진화하는 루마 값을 갖는 일부 배경 콘텐츠, 및 전경 정보로서 간주될 수 있는 일부 국소적 특정 텍스처 요소들을 포함할 수 있다. 동일한 픽처 내부의 그러한 점진적 조명 변동이 또한 자연 이미지들에서 발생할 수 있고, 본 발명의 원리들은 임의의 유형의 비디오 콘텐츠와 호환가능하다.
전술된 바와 같이, LIC는 모션 보상 스테이지에서 상이한 픽처들 사이의 조명 변화들을 다룸으로써 정규 모션 보상 예측의 하나의 향상으로서 간주될 수 있다. 종래 기술의 LIC가 상이한 픽처들 사이의 조명 불일치를 보상할 수 있지만, 그것은 동일한 픽처 내의 상이한 블록들 사이의 조명 보상에 적용되지도 않고 적응되지도 않는다.
이것은 본 명세서에 기술된 일반적인 태양들에 의해 해결되고 다루어지는데, 이는, 픽처에서 디코딩되거나 또는 디코딩되고 있는 현재 블록에 대해, 공간적으로 이웃하는 재구성된 샘플들 및 적어도 하나의 공간 기준 블록의 대응하는 공간적으로 이웃하는 재구성된 샘플들에 기초하여 국소 조명 보상을 위한 파라미터들을 결정하는 것에 관한 것이고, 여기서 적어도 하나의 공간 기준 블록은 픽처 내의 현재 블록의 공간적으로 이웃하는 블록이다. 따라서, 픽처 내부의 하나의 코딩 블록 및 그의 공간 이웃 블록들이 전파되는 조명 변동들을 갖는다고 가정하면, 블록의 예측 신호를 생성한 후에, 본 발명의 원리들은 예측을 향상시키기 위해 공간적 LIC를 적용할 것을 제안한다. 기준 블록이 시간 기준 픽처들에 위치되지 않고, 대신에 동일한 픽처 내에 위치하기 때문에, 기준 블록 검색 및 공간적 LIC 파라미터 추정에 사용되는 템플릿 둘 모두가 조정된다. 더욱이, 공간적 LIC의 사용을 나타내는 공간적 LIC 플래그의 결정이 또한 정의될 수 있다. 게다가, 상이한 블록들이 동일한 픽처에서 점진적으로 전파되는 공간 조명 변동을 갖는, 인터/인트라/IBC 예측에 대한 공간 국소 조명 보상(공간적 LIC)의 다양한 실시예들이 개시된다. 추가로, 국소 조명 보상(공간적/시간적 LIC)에 사용되는 템플릿의 형상의 다양한 실시예들이 또한 개시된다.
도 4는 적어도 하나의 실시예의 일반적인 태양에 따른 일반적 인코딩 방법(100)을 예시한다. 도 4의 블록도는, 인코더의 모듈들, 또는 예를 들어, 도 23의 예시적인 인코더에서 구현되는 인코딩 방법을 부분적으로 나타낸다.
일반적 실시예에 따르면, 인코딩을 위한 방법(100)이 개시된다. 방법은, 픽처에서 인코딩되고 있는 현재 블록에 대해, 공간적으로 이웃하는 재구성된 샘플들 및 적어도 하나의 공간 기준 블록의 대응하는 공간적으로 이웃하는 재구성된 샘플들에 기초하여 국소 조명 보상을 위한 파라미터들을 결정하는 단계(11)를 포함한다. 유리하게는, 이후의 다양한 실시예들에서 기술된 바와 같이, 공간 기준 블록은 픽처 내의 현재 블록의 공간적으로 이웃하는 블록이다. 따라서, 국소 조명 보상을 위한 결정된 파라미터들은 공간적 LIC를 수행하는 것을 허용한다. 공간적 LIC는 픽처 내의 점진적 조명을 보상하기 위해 현재 블록의 예측에 적용되고, 블록의 보상된 예측을 초래한다. 상이한 실시예들에 따르면, 예측은 인터, 인트라 또는 인트라 블록 복사(IBC) 예측 중 하나이다. 다른 실시예에 따르면, 공간 국소 조명 보상이 현재 블록 상에 적용되는지 또는 그렇지 않은지를 나타내는 신택스 요소가 결정된다. 현재 블록의 예측의 공간 보상 후에, 잔차가, 예를 들어, 현재 블록에서 보상된 예측을 감산함으로써 통상적 방식으로 계산되고, 이어서 나머지 프로세싱(변환, 양자화, CABAC 인코딩 등)이 일반적 인코딩 단계(12)의 최신 인코딩 방법에서와 같이 수행된다.
도 5는 적어도 하나의 실시예의 일반적인 태양에 따른 일반적 디코딩 방법(200)을 예시한다. 도 5의 블록도는, 디코더의 모듈들, 또는 예를 들어, 도 24의 예시적인 디코더에서 구현되는 디코딩 방법을 부분적으로 나타낸다.
일반적 실시예에 따르면, 디코딩을 위한 방법(200)이 개시된다. 방법은, 픽처에서 디코딩되고 있는 현재 블록에 대해, 공간적으로 이웃하는 재구성된 샘플들 및 적어도 하나의 공간 기준 블록의 대응하는 공간적으로 이웃하는 재구성된 샘플들에 기초하여 국소 조명 보상을 위한 파라미터들을 결정하는 단계(21)를 포함한다. 인코딩에 관해서는, 이후의 다양한 실시예들에서 기술된 바와 같이, 공간 기준 블록은 픽처 내의 현재 블록의 공간적으로 이웃하는 블록이다. 상이한 실시예들에 따르면, 공간적 LIC는 전용 플래그를 사용하여 현재 블록에 대해 인에이블/디스에이블되고, 공간적 LIC는 현재 블록의 인터, 인트라 또는 IBC 예측 중 하나에 적용된다. 이어서, 디코딩(22)은, 예를 들어, CABAC 디코딩, 변환 계수들의 역양자화 및 이어서 디코딩된 계수들의 역 변환을 수행함으로써 잔차 값들을 디코딩하는 것, 및 그렇게 디코딩된 잔차 값들을 보상된 예측에 추가하여 현재 블록을 디코딩하는 것을 추가로 포함한다.
인코딩 또는 디코딩 방법에서 사용되는 일반적인 공간적 LIC의 다양한 실시예들이 하기에 설명된다. 다양한 실시예들에 따르면, 공간적 LIC가 블록 상에 적용되는지 또는 그렇지 않은지를 나타내기 위해 인터/인트라/IBC 블록에 대해 블록(또는 CU) 레벨의 공간적 LIC 플래그가 정의된다. 공간적 LIC가 인터/인트라/IBC 블록에 대해 적용되는 경우, 다른 특정 실시예에 따라, 공간 조명 변화들에 대한 선형 모델이 스케일링 인자 α 및 오프셋 β를 사용하여 정의된다. 공간적 LIC 파라미터들의 추정은, 동일한 픽처 내부의 현재 블록의 이웃하는 재구성된 샘플들(현재 템플릿)과 공간 기준 블록의 대응하여 이웃하는 재구성된 샘플들(기준 템플릿) 사이의 차이를 최소화함으로써 도출된다. 하기에 기술된 다양한 실시예들은, CU 레벨의 공간적 LIC 플래그의 도출; 공간적 LIC 파라미터들 추정을 위한 기준 블록으로서 사용되는 공간 이웃 블록의 선택, 이웃하는 재구성된 샘플들에 의해 구성되고 공간적 LIC 파라미터들 추정을 위해 사용되는 템플릿의 생성에 관한 것이다.
하기에서, 인터 예측에서의 공간적 LIC에 대해, 그의 공간적 LIC 도출, 기준 블록 결정 및 공간적 LIC 파라미터 추정을 위해 사용되는 템플릿의 생성이 설명된다. 이어서, 인트라 예측에서의 공간적 LIC에 대해, 기준 블록 결정 및 템플릿 생성이 또한 설명되는데, 특히 인터 예측에서의 공간적 LIC와 비교한 차이가 설명된다. 그 후에, IBC 예측에서의 공간적 LIC에 대해, 기준 블록 결정이 또한 설명된다. 마지막으로, 인터/인터 예측에 대한 공간 기준 블록 검색이 제안된다.
제1 실시예에 따르면, 공간적 LIC가 인터 블록의 인코딩/디코딩 동안 적용된다. 도 6은 적어도 하나의 실시예에 따른, 인터 예측을 위한 상부/좌측 이웃 블록의 기준 템플릿을 이용한 공간적 LIC 파라미터들의 도출 프로세스를 예시한다.
전술된 종래 기술의 LIC 도구에 따르면, LIC는 인터 예측에서의 상이한 프레임들 사이의 시간 조명 변화들을 보상하기 위해 적용되고, 하기에서 시간적 LIC로 지칭된다. 동일한 프레임 내부의 일부 공간 블록들 사이에 일부 전파되는 조명 변동들이 존재할 수 있음을 고려하면, 공간적 LIC는 인터 예측에서 동일한 프레임 내부의 공간 조명 변화들을 추가로 보상하기 위해 제안된다.
변형 실시예에 따르면, 공간적 LIC가 적용되는지 또는 그렇지 않은지를 나타내기 위해 공간적 LIC 플래그 spatial_lic_flag가 정의된다. 인터 블록이 병합 모드로 코딩될 때, 공간적 LIC 플래그는, 병합 모드에서의 모션 정보 복사와 유사한 방식으로 이웃 블록들로부터 복사되고; 그렇지 않은 경우, 공간적 LIC 플래그는 블록에 대해 시그널링된다.
다른 변형 실시예에 따르면, 공간적 LIC가 CU에 대해 적용될 때, 그것은 또한, 스케일링 인자 α 및 오프셋 β를 사용하는, 공간 조명 변화들에 대한 선형 모델에 기초한다. 공간적 LIC 파라미터들의 추정은, 동일한 픽처 내부의 현재 블록의 이웃하는 재구성된 샘플들(즉, 도 6의 템플릿 T)과 공간 기준 블록의 대응하여 이웃하는 재구성된 샘플들 사이의 차이를 최소화함으로써 도출된다.
도 6에서, 현재 블록의 상부/좌측 공간 이웃 블록은 기준 블록으로서 사용되고, 상부/좌측 블록의 이웃하는 재구성된 샘플들(즉, 도 6의 또는 중 어느 하나)은 공간적 LIC 파라미터들을 추정하기 위해 사용된다. 현재 블록의 상부 공간 이웃 블록이 이용가능한 경우, 상부 공간적 LIC 파라미터들( )은 하기와 같이 LMSE 기반 LIC 도출을 이용하여 추정된다:
여기서, N은 공간적 LIC 파라미터들을 도출하기 위해 사용되는 템플릿 샘플들의 수를 나타내고; 는 좌표 에서 현재 블록의 템플릿 샘플이고; 는 현재 블록의 상부 이웃 블록에 기초하는 템플릿 샘플의 대응하는 재구성된 샘플이다( 는 상부 블록의 높이임). 추가적으로, 계산 복잡성을 감소시키기 위해, 도 6의 음영처리된 샘플들만이 를 도출하는 데 사용된다.
좌측 공간적 LIC 파라미터들( )에 대한 유사한 추정 프로세스는, 현재 블록의 좌측 공간 이웃 블록이 이용가능한 경우, 하기와 같이 도출된다:
여기서, 는 현재 블록의 좌측 이웃 블록에 기초하는 템플릿 샘플의 대응하는 재구성된 샘플이다( 는 좌측 블록의 폭임). 도 6의 음영처리된 샘플들만이, 계산 복잡성을 감소시키기 위해 을 도출하는 데 사용된다.
상부 또는 좌측 공간 이웃 블록만이 이용가능한 경우, 상부 공간적 LIC 파라미터들( ), 또는 좌측 LIC 파라미터들( )이 현재 블록의 최종 예측 샘플들을 획득하기 위해 정규 모션 보상 예측 샘플들에 적용된다:
상부 및 좌측 공간 이웃 블록들 둘 모두가 이용가능한 경우, 상부 및 좌측 공간적 LIC 파라미터들은 와 T, 그리고 과 T 사이의 왜곡들을 별개로 최소화함으로써 도출된다. 그 후에, 현재 블록의 최종 예측 샘플들은 최종 공간적 LIC 파라미터들을 적용함으로써 생성되는데, 이는 다음과 같이 나타낸 바와 같이, 상부 및 좌측 공간적 LIC 파라미터들을 평균함으로써 획득된다:
도 7은 공간적 LIC가, 예를 들어, 상부/좌측 이웃 블록들을 사용하여, 인터 블록의 디코딩 동안 적용되는 제1 실시예에 따른 디코딩 방법을 예시한다. 알고리즘에 대한 입력은 현재 인터 픽처에서 디코딩할 현재 CU이다. 현재의 상부 또는 좌측 공간 이웃 블록이 이용가능하면(단계 1040), 그것은 공간적 LIC 플래그 spatial_lic_flag를 파싱하는 것으로 이루어지며, 이는 현재 CU에서의 제안된 공간적 LIC 프로세스의 사용을 나타낸다. 병합 모드의 경우, 병합 모드에서 종래 기술의 LIC와 유사한 방식으로, 이웃 블록들로부터 spatial_lic_flag가 추론된다(단계 1051). AMVP 모드의 경우, 비트스트림으로부터 spatial_lic_flag가 디코딩된다(단계 1052).
spatial_lic_flag가 거짓인 경우에, 이어서, 예를 들어, VVC 디코딩 프로세스에 의해 특정된 바와 같이, 통상의 모션 보상 디코딩 프로세스만이 수반된다. spatial_lic_flag가 참인 경우에, 이어서, 다음 단계(1070)는 이용가능한 상부/좌측 공간 이웃 블록들을 이용한 공간적 LIC 파라미터들의 추정으로 이루어진다. 상부 및 좌측 공간 이웃 블록들 둘 모두가 이용가능한 경우(단계 1080), 단계(1090)에서 상부 및 좌측 공간적 LIC 파라미터들을 평균함으로써 최종 공간적 LIC 파라미터들이 획득된다. 그 후에, 단계(1100)에 도시된 바와 같이, 정규 모션 보상 예측 샘플들 상에 공간적 LIC 파라미터들을 적용함으로써 현재 블록의 최종 예측 샘플들이 생성된다.
이러한 실시예의 일 변형예에 따르면, 현재 블록의 최종 예측 샘플들을 획득하기 위해 정규 모션 보상 예측 샘플들 상에 상부 또는 좌측 공간적 LIC 파라미터들만이 적용되고, 어느 공간 기준 블록을 사용할지의 결정은, 예를 들어, 레이트 왜곡(rate-distortion, RD) 또는 절대차 합계(sum absolute difference, SAD) 체크를 통해 수행된다. 어느 공간 기준 블록 및 대응하는 공간적 LIC 파라미터들 세트가 적용되는지를 나타내기 위한 플래그 lic_refblk_flag가 비트스트림으로 시그널링된다. lic_refblk_flag가 0과 동일할 때, 이어서 좌측 공간적 LIC 파라미터들이 적용되고; 그렇지 않은 경우, 상부 공간적 LIC 파라미터들이 적용된다.
전술된 바와 같이, 상부 및 좌측 공간 이웃 블록들 둘 모두가 이용가능할 때, 상부 및 좌측 공간적 LIC 파라미터들이 별개로 도출되고; 이어서, 상부 및 좌측 공간적 LIC 파라미터들이 평균되어 최종 공간적 LIC 파라미터들을 생성하고, 현재 블록의 최종 예측 샘플들을 획득하기 위해 적용된다. 그러한 방법이 LMSE 기반 공간적 LIC 도출을 2회 수행할 필요가 있음을 고려하면, 그것은 인코더 및 디코더 둘 모두에서 무시할 수 없는 복잡성 증가를 도입한다.
이러한 실시예의 다른 변형예에 따르면, 제안된 공간적 LIC 도출의 복잡성을 감소시키기 위해, 상부 및 좌측 공간 이웃 블록들 둘 모두가 이용가능할 때의 경우에 대해, 하나의 개선된 공간적 LIC 알고리즘이 제안된다. 도 8은 적어도 하나의 실시예에 따른, 인터 예측을 위한 상부 및 좌측 이웃 블록의 평균 기준 템플릿을 이용한 공간적 LIC 파라미터들의 도출 프로세스를 예시한다. 구체적으로, 상부 및 좌측 공간적 LIC 파라미터들을 별개로 도출하는 대신에, 기준 템플릿 는 먼저, 2개의 템플릿들, 상부 블록 내의 및 좌측 블록 내의 의 재구성된 샘플들을 평균함으로써 생성된다:
그 후에, LMSE 기반 도출이, 하기와 같이 기준 템플릿 과 현재 블록의 템플릿 T 사이의 차이를 최소화함으로써 공간적 LIC에 대해 사용되는 스케일링 인자 α 및 오프셋 β의 값들을 계산하는 데 채용된다:
마지막으로, 도출된 공간적 LIC 파라미터들은, 도 8에 도시된 바와 같이, 선형 모델에 기초하여 현재 블록의 최종 예측 샘플들을 획득하기 위해 정규 모션 보상 예측 샘플들에 적용된다.
따라서, 이러한 변형예의 경우, 현재 블록의 최종 예측 샘플들을 형성하기 위해 하나의 공간적 LIC 파라미터 추정만이 수행될 필요가 있다.
제2 실시예에 따르면, 모션 벡터 예측(MVP) 후보는 인터 예측에서 기준 블록으로서 사용된다. 9는 VVC에서의 공간 MVP 후보들의 포지션들을 예시한다. 인터 예측을 위해, MV는 병합 또는 AMVP 모드 중 어느 하나에서 시그널링될 수 있다. 시그널링 메커니즘 둘 모두는 현재 코딩된 블록들의 공간적 또는 시간적 이웃으로부터 이용가능한 모션 정보로부터 기본적으로 구성된 모션 벡터 예측(MVP) 목록을 활용한다. 공간 MVP 후보들의 포지션들은 도 9에 도시되어 있다. 도출의 순서는 B0(상부), A0(좌측), B1(상부-우측), A1(하단-좌측) 및 B2(상부-좌측)이다. 전술된 바와 같이 현재 블록의 상부(B0) 및 좌측(A0) 공간 이웃 블록만을 기준 블록으로서 사용하기보다는, MVP 목록 구성에 대한 다른 공간 이웃 블록들이 또한 공간적 LIC에 대한 기준 블록 후보들로서 간주된다. 공간적 LIC가 현재 블록에 대해 적용되는 경우, 일단 5개의 공간 후보들 중 하나가 최상의 MVP 후보로서 선택되면, 공간적 LIC 파라미터들은 대응하는 선택된 공간 이웃 블록을 이용하여 자동으로 도출된다.
도 10은 적어도 하나의 실시예에 따른, 인터 예측을 위한 상부-우측(B1) 이웃 블록의 기준 템플릿을 이용한 공간적 LIC 파라미터들의 도출 프로세스를 예시한다. 현재 블록의 상부-우측(B1) 공간 이웃 블록이 선택되는 경우, 그것은, 도 10에 도시된 바와 같이, 공간적 LIC에 대한 기준 블록으로서 사용된다. 상부-우측 블록의 이웃하는 재구성된 샘플들(도 10의 )이 공간적 LIC 파라미터들을 추정하기 위해 사용된다. 상부-우측 공간적 LIC 파라미터들( )은 하기와 같이 LMSE 기반 LIC 도출로 추정된다:
여기서, 는 상부-우측 이웃 블록에 기초한 템플릿 샘플의 대응하는 재구성된 샘플이다( 는 상부-우측 블록의 높이 및 폭임). 유사한 공간적 LIC 파라미터들 도출 프로세스가, 하단-좌측(A1) 및 상부-좌측(B2) 공간 이웃 블록들이 선택되는 경우, 그들에 대해 수행될 수 있다.
도 11은 MVP 후보들에 기초하여 공간적 LIC가 인터 블록의 디코딩 동안 적용되는 제2 실시예에 따른 디코딩 방법을 예시한다. MVP가 5개의 공간적 MVP 후보들 중 하나인 경우(단계 2050), 방법은 공간적 LIC 플래그 spatial_lic_flag를 파싱하는 단계를 포함하며, 이는 현재 CU에서의 제안된 공간적 LIC 프로세스의 사용을 나타낸다. 병합 모드의 경우, 병합 모드에서 종래 기술의 LIC와 유사한 방식으로, 이웃 블록들로부터 spatial_lic_flag가 추론된다(단계 2061). AMVP 모드의 경우, 비트스트림으로부터 spatial_lic_flag가 디코딩된다(단계 2062).
spatial_lic_flag가 거짓인 경우에, 이어서 통상의 모션 보상 디코딩 프로세스만이 수반된다. spatial_lic_flag가 참인 경우에, 이어서, 다음 단계(2080)는 대응하는 선택된 공간 이웃 블록으로 공간적 LIC 파라미터들을 추정하는 것을 포함한다. 그 후에, 단계(2090)에 도시된 바와 같이, 정규 모션 보상 예측 샘플들 상에 공간적 LIC 파라미터들을 적용함으로써 현재 블록의 최종 예측 샘플들이 생성된다.
이러한 실시예의 또 다른 변형예에 따르면, 공간적 LIC가 현재 블록에 대해 적용되는 경우, 5개의 공간 후보들 중 하나만이 최상의 MVP 후보로서 선택되기보다는, 이들 5개의 공간 이웃 블록들로부터의 공간적 LIC 파라미터들이 현재 블록의 최종 예측 샘플들을 획득하기 위해 적용된다. 어느 공간 기준 블록 세트를 사용할지에 대한 결정은 레이트 왜곡(RD) 또는 절대차 합계(SAD) 체크를 통해 수행될 수 있다. 어느 공간 기준 블록 및 대응하는 공간적 LIC 파라미터들 세트가 적용되는지를 나타내는 인덱스 lic_refblk_index가 비트스트림으로 시그널링된다.
제3 실시예에 따르면, 공간적 LIC는 인트라 블록의 인코딩/디코딩 동안 적용된다. 인터 예측에 대해 전술된 바와 같이, 공간적 LIC는 동일한 프레임 내부의 공간 조명 변화들을 보상하기 위해 제안된다. 조명 변화들이 인트라 코딩된 프레임에 걸쳐 점진적으로 전파될 수 있지만, 인코딩/디코딩할 인트라 블록은 또한 그들 점진적으로 전파되는 공간 조명 변동을 포함할 수 있다.
VVC에 의해 특정되는 바와 같이, 평면 및 DC 인트라 예측 모드들이 매끄럽게 그리고 점진적으로 변화하는 영역들을 예측하는 데 사용되는 반면에, 각도 예측 모드들은 상이한 방향성 구조들을 캡처하는 데 사용된다. 그러나, DC 및 평면 인트라 예측 모드들이 매끄럽고 점진적으로 변화하는 콘텐츠들을 타깃으로 하더라도, 그들은 방향성 점진적인 그리고 전파되는 조명 변동들을 갖는 일부 콘텐츠들을 적절히 취급할 수 없고; 유사하게, 다른 방향성 인트라 예측 모드들에 대해 제한한다. 따라서, 제3 실시예는 인트라 예측에 대한 공간 조명 변화들을 보상하기 위해 공간적 LIC를 적용할 것을 제안한다.
인터 블록에 대해 전술된 바와 같이, 공간적 LIC 플래그 spatial_lic_flag는, 공간적 LIC가 적용되는지 또는 그렇지 않은지를 나타내기 위해 인트라 블록에 대해 정의되고 시그널링된다. 공간적 LIC가 적용될 때, 그것은 또한, 스케일링 인자 α 및 오프셋 β를 사용하는, 공간 조명 변화들에 대한 선형 모델에 기초한다. 공간적 LIC 파라미터들의 추정은 또한, 픽처 내부의 현재 블록의 이웃하는 재구성된 샘플들과 공간 기준 블록의 대응하여 이웃하는 재구성된 샘플들 사이의 차이를 최소화함으로써 도출된다.
가능한 공간 기준 블록을 선택하는 것에 관해서는, 인터 예측과 인트라 예측에 대한 공간적 LIC 사이에 일부 차이들이 존재한다. 예를 들어, 공간적 LIC 파라미터들을 추정하기 위해 사용되는 공간 이웃 블록은 인트라 예측 모드에 기초하여 결정된다. 더욱이, 상부 및 좌측 경계들 둘 모두를 고려하기보다는, 상부 또는 좌측 경계만이 템플릿을 구성하는 데 사용되며, 이는 이어서 공간적 LIC 파라미터들을 추정하기 위해 사용된다. 게다가, 또 다른 변형예에 따르면, 템플릿은 이웃하는 제1 상부/좌측 라인에서의 재구성된 샘플들 이상의 것, 예를 들어, 제2/제3 라인, 또는 그 이상의 상부/좌측 라인들에서의 재구성된 샘플들, 또는 전체 재구성된 이웃 블록들에 의해 생성된다. 다른 변형 실시예에 따르면, 인트라 예측을 위한 제안된 공간적 LIC는 일부 인트라 예측 모드들(즉, DC 및 평면 모드들)에 대해서만 활성화된다.
제3 실시예의 일 변형예에 따르면, 공간적 LIC는 인트라 예측 모드에 기초하여 인트라 블록의 인코딩/디코딩 동안 적용된다. 인트라 예측을 위한 공간적 LIC 파라미터들은 최근접 재구성된 공간 이웃 블록들(즉, 도 9의 상부/좌측/상부-우측/하단-좌측/상부-좌측)의 이웃하는 재구성된 샘플들을 사용하는 LMSE 기반 LIC 도출로 추정된다. 비제한적인 예들에 따르면, 어느 공간 이웃 블록을 사용할지에 대한 결정은 레이트 왜곡(RD) 또는 절대차 합계(SAD) 체크를 통해 수행된다. 어느 공간 기준 블록 및 대응하는 공간적 LIC 파라미터들 세트가 적용되는지를 나타내기 위한 인덱스 llic_refblk_index가 비트스트림으로 시그널링된다.
도 12는 VVC에서의 인트라 예측 방향들을 예시한다. VVC는 -14 내지 -1로 그리고 2 내지 80으로 인덱싱되는 95개의 방향 예측 모드들을 지원한다. 정사각형 CU에 대해서는, 예측 모드들 2 내지 66만이 사용된다. 이들 예측 모드들은 시계방향으로 45도 내지 -135도의 상이한 예측 방향들에 대응한다. 직사각형 블록의 경우, 광각 모드들(-14 내지 -1 또는 67 내지 80)이 적용될 수 있다. 일부 평탄 블록들 및 높은 블록들의 경우, 그들은 반대 방향에서 동일한 수의 정규 각도 모드들을 대체하기 위해 광각 모드들을 사용한다. 일 변형예에 따르면, 어느 공간 이웃 블록이 추가적인 신택스 요소와 함께 적용되는지를 나타내기보다는, 인트라 예측을 위한 공간적 LIC에서의 기준 블록은 인트라 예측 모드(intra prediction mode, IPM)에 기초하여 결정된다. 13은 공간 기준 블록이 현재 블록을 코딩하는 데 사용되는 인트라 예측 모드에 응답하는, 제3 실시예에 따른 인트라 예측을 위한 상부/좌측/상부-우측/하단-좌측/상부-좌측 이웃 블록의 기준 템플릿을 이용한 공간적 LIC 파라미터들의 도출 프로세스를 예시한다. 따라서:
- 비-각도 모드들, 평면형(IPM은 0과 동일함) 및 DC(IPM은 1과 동일함)의 경우, 상부 및 좌측 블록들의 이웃하는 재구성된 샘플들(도 13의 )이 공간적 LIC 파라미터들을 추정하기 위해 사용되고;
- 수평 모드(IPM은 18임) 및 수평 방향들에 속하는 다른 30개의 모드들(IPM 3 내지 33)의 경우, 좌측 블록만이 기준 블록으로서 사용되고 그의 이웃하는 재구성된 샘플들(도 13의 )은 공간적 LIC 파라미터들 추정에 대해 사용되고; 반면에, 수직 모드(IPM은 50임) 및 수직 방향들에 속하는 다른 30개의 모드들(IPM 35 내지 65)의 경우, 상부 블록의 이웃하는 재구성된 샘플들(도 13의 )만이 공간적 LIC 파라미터들 추정에 대해 사용되고;
- 45도의 배수인 각도들을 나타내는 대각선 모드들의 경우:
o 모드(IPM은 2임)의 경우, 하단-좌측 블록의 이웃하는 재구성된 샘플들(도 13의 )이 공간적 LIC 파라미터들 추정에 대해 사용되고;
o 모드(IPM은 34임)의 경우, 상부-좌측 블록의 이웃하는 재구성된 샘플들(도 13의 )이 사용되고;
o 모드(IPM은 66임)의 경우, 상부-우측 블록의 이웃하는 재구성된 샘플들(도 13의 )이 사용되고;
- 하단-좌측 방향을 넘어 광각 모드들(IPM -1 내지 -14)의 경우, 하단-좌측 블록이 기준 블록으로서 사용되고, 그의 이웃하는 재구성된 샘플들(도 13의 )은 공간적 LIC 파라미터들 추정에 대해 사용되고; 반면에, 상부-우측 방향을 넘어 광각 모드들(IPM 67 내지 80)의 경우, 상부-우측 블록의 이웃하는 재구성된 샘플들(도 13의 )이 공간적 LIC 파라미터들 추정에 대해 사용된다.
공간적 LIC 파라미터들을 추정하기 위해 사용되는 템플릿은 표 1에 나타낸 바와 같이 인트라 예측 모드(IPM)와 관련된다.
[표 1]
제3 실시예의 다른 변형예에 따르면, 인트라 예측 모드는 행렬 가중화 인트라 예측이다. 14는 VVC에서의 행렬 가중화 인트라 예측 프로세스를 예시한다. 종래의 인트라 예측 외에, 행렬 가중화 인트라 예측(MIP) 방법은 VVC에 새롭게 추가된 인트라 예측 기법이다. 폭(W) 및 높이(H)의 직사각형 블록의 샘플들을 예측하기 위해, MIP는, 이들 재구성된 샘플들이 이용가능한 경우, 블록의 좌측의 H개의 재구성된 이웃하는 경계 샘플들의 하나의 라인 및 블록 상부의 W개의 재구성된 이웃하는 경계 샘플들의 하나의 라인을 입력으로서 취한다. 예측 신호의 생성은 하기의 3개의 단계들에 기초하며, 이는 도 14에 도시된 바와 같은 평균화, 행렬 벡터 곱셈 및 선형 보간이다. 인트라 모드에서의 각각의 CU에 대해, MIP 모드가 적용되어야 하는지 또는 그렇지 않은지를 나타내는 플래그 mip_flag가 전송된다.
공간적 LIC가 MIP를 이용하여 이러한 인트라 코딩된 CU에 적용되는 경우, 공간적 LIC 파라미터들을 추정하기 위해 사용되는 템플릿들은 비-각도 모드들을 갖는 CU와 동일하고, 상부 및 좌측 블록들의 이웃하는 재구성된 샘플들(도 13의 ) 둘 모두가 사용된다.
도 15는 공간적 LIC가 인트라 블록의 디코딩 동안 적용되는 제3 실시예에 따른 디코딩 방법을 예시한다. 인터 예측을 위한 공간적 LIC와 동일하게, 그것은 비트스트림으로부터 디코딩되는 공간적 LIC 플래그 spatial_lic_flag를 파싱하는 것을 포함한다(단계 3303/3313). spatial_lic_flag가 거짓인 경우에, 이어서 통상의 인트라 예측 디코딩 프로세스만이 수반된다. spatial_lic_flag가 참인 경우에, 제안된 공간적 LIC 프로세스는 하기의 단계들로 현재 CU의 디코딩된 인트라 예측에 대해 수행된다.
이러한 블록이 MIP로 인트라 예측되는 경우(단계 3300), 공간적 상부 및 좌측 이웃 블록을 이용한 공간적 LIC 파라미터들의 추정이 수행된다(단계 3314). 이러한 블록이 종래의 인트라 예측으로 인트라 예측되는 경우, 공간적 LIC 파라미터들에 대한 템플릿 결정은 인트라 예측 모드(IPM)에 기초한다 (단계 3304). 이어서, 다음 단계(3305)는 대응하는 선택된 템플릿들을 이용한 공간적 LIC 파라미터들의 추정으로 이루어진다.
그 후에, 단계(3306/3315)에 도시된 바와 같이, 정규 인트라 예측 샘플들 상에 공간적 LIC 파라미터들을 적용함으로써 현재 블록의 최종 예측 샘플들이 생성된다.
이러한 실시예의 일 변형예에 따르면, DC 및 평면 모드들에 대해, 현재 블록의 상부 및 좌측 공간 이웃 블록만을 기준 블록들로서 사용하기보다는, 하단-좌측, 상부-좌측, 및 상부-우측으로부터의 다른 3개의 템플릿들이 또한 공간적 LIC 파라미터들에 대해 함께 사용될 수 있다.
이러한 실시예의 다른 변형예에 따르면, 인트라 예측 모드가 수평/수직 방향에 속할 때, 5개의 공간 템플릿들 중 하나만이 공간적 LIC 파라미터들을 추정하기 위한 템플릿으로서 선택되기보다는, 2개 또는 3개의 템플릿들이 공간적 LIC 파라미터들을 계산하기 위해 함께 사용될 수 있다. 예를 들어, 수평 방향들에 속하는 모드들(IPM 3 내지 33)의 경우, 좌측, 하단-좌측 및 상부-좌측 블록들이 기준 블록들로서 사용될 수 있고, 그의 이웃하는 재구성된 샘플들(도 13의 , )이 공간적 LIC 파라미터들 추정에 대해 사용되고; 수직 방향들에 속하는 모드들(IPM 35 내지 65)에 관해서는, 상부, 상부-우측 및 상부-좌측 템플릿들(도 13의 , )이 공간적 LIC 파라미터 추정을 위한 기준 템플릿으로서 사용될 수 있다. 이들 템플릿은 DC 및 평면 모드들에 대한 좌측 및 상부 템플릿들과 유사한 거동으로 함께 작동하고 있다.
제3 실시예의 추가적인 변형예들에 따르면, 공간적 LIC 파라미터들을 추정하기 위해 사용되는 템플릿에 대한 여러 형상들이 개시된다. 전술된 바와 같이, 공간적 LIC 파라미터들을 추정하기 위해 사용되는 템플릿은 항상 현재/기준 블록 주위의 L-형상이며, 이는 현재/기준 블록의 좌측 및 상부 경계들에 위치된 이웃하는 재구성된 샘플들에 의해 구성된다. 이러한 고정된 L-형상 템플릿을 사용하기보다는, 이러한 섹션에서 일부 더 유연한 템플릿 생성들이 제안된다.
제1 변형예에 따르면, 공간 기준 블록의 좌측 또는 상부 경계만이 템플릿으로서 사용된다. 제3 실시예의 이전 변형예에 따르면, 기준 템플릿의 선택은 일부 상황들 하에서 좌측 및 상부 기준 샘플들로부터의 조명 변화들의 상이한 영향을 향상시키기 위해 인트라 예측 모드 IPM으로부터 도출된다.
수평 방향들에 속하는 모드들(IPM 3 내지 33)의 경우, 좌측 기준 템플릿(도 13의 )이 공간적 LIC 파라미터들 추정에 대해 사용되고; 수직 방향들에 속하는 모드들(IPM 35 내지 65)에 관해서는, 상부 기준 템플릿(도 13의 )이 고려된다. 한편, 좌측 또는 상부 기준 템플릿 중 어느 하나의 경우, 그것은 좌측 및 상부 경계들에 위치된 재구성된 샘플들 둘 모두를 포함한다. 조명 변화들의 전파를 더 잘 캡처하기 위해, 또한 공간적 LIC 파라미터들 추정의 계산 복잡성을 감소시키기 위해, 하나의 경계에 위치된 재구성된 샘플들만이 템플릿을 구성하는 데 사용된다.
도 16은 적어도 하나의 실시예에 따른, 인트라 예측을 위한 좌측 이웃 블록의 좌측 경계를 포함하는 기준 템플릿을 이용한 그리고 인트라 예측을 위한 상부 이웃 블록의 상부 경계를 포함하는 기준 템플릿을 이용한 공간적 LIC 파라미터들의 도출 프로세스를 예시한다. 예를 들어, 수평 방향 모드들(IPM 3 내지 33)의 경우, 좌측 경계에 위치된 재구성된 샘플들만이 현재 블록의 템플릿(도 16의 좌측의 )을 그리고 기준 블록의 템플릿(도 16의 좌측의 )을 생성하는 데 사용되고; 수직 방향 모드들(IPM 35 내지 65)에 관해서는, 상부 경계만이 현재 블록의 템플릿(도 16의 우측의 )을 그리고 기준 블록의 템플릿(도 16의 우측의 )을 생성하는 것으로 간주된다.
제2 변형예에 따르면, 공간 기준 블록의 다수의 기준 라인들이 템플릿으로서 사용된다. 도 17은 적어도 하나의 실시예에 따른 공간 이웃 블록의 다수의 라인들 기준 템플릿을 이용한 공간적 LIC 파라미터들의 도출 프로세스를 예시한다. 지금까지는, 제안된 공간적 LIC에 대한 템플릿은 최근접 기준 라인(상부/좌측 경계)에 위치된 재구성된 샘플들만을 사용한다. 조명 불일치의 더 양호한 캡처 및 보상을 위해, 다수의 기준 라인들이 템플릿을 구성하는 데 사용된다. 도 17에 도시된 바와 같이, 2개의 기준 라인들의 일례가 도시되어 있으며, 여기서 하나의 추가적인 좌측 및 상부 라인에 위치된 이웃하는 재구성된 샘플들이 현재 블록의 템플릿(도 17의 T)을 그리고 기준 블록의 템플릿(도 17의 )을 생성하기 위해 사용된다. 계산 복잡성을 감소시키기 위해, 2개의 기준 라인들 내의 템플릿 샘플들 둘 모두가 서브샘플링된다(2:1 서브샘플링). 그것은 (도 17의 상단 예에서) 기준 라인들 둘 모두에 대해 동일한 포지션에서 서브샘플링되거나, (도 17의 하단 예에서) 인터레이스 포지션에서 서브샘플링될 수 있다.
다른 변형예에 따르면, 좌측 경계 템플릿이 수평 방향 모드들에 대해 적용되고; 상부 경계 템플릿이 수직 방향 모드들에 대해 사용된다. 계산 복잡성은 템플릿 내의 더 적은 샘플들을 이용하여 감소되는 반면에, 조명 변동의 추정 정확도가 또한 영향을 받을 수 있다. 따라서, 이러한 실시예의 다른 변형예에 따르면, 좌측/상부 측으로부터의 다수의 기준 라인들만이 수평/수직 방향 모드들에 대해 적용된다. 도 18은 적어도 하나의 실시예에 따른 인트라 예측을 위한 공간 이웃 블록의 다수의 라인들 기준 템플릿을 이용한 공간적 LIC 파라미터들의 다른 도출 프로세스를 예시한다. 하나의 공간 기준 블록만의 동일한 측으로부터의 2개의 기준 라인들의 일례가 도 18에 도시되어 있다. 인트라 예측 모드들의 경우, (도 18의 상단 예에서) 좌측 라인들은 수평 방향 모드들에 대해 사용되고, (도 18의 하단 예에서) 우측 라인들은 수직 방향 모드들에 대해 사용된다.
다른 변형예에 따르면, 템플릿을 구성하기 위해 다수의 기준 라인들이 적용되는지 여부를 나타내는 플래그 lic_mrl_flag가 비트스트림으로 시그널링된다. lic_mrl_flag가 거짓인 경우에, 종래의 최근접 기준 라인(상부/좌측 경계)만이 템플릿을 생성하기 위해 적용될 것이다.
다른 변형예에 따르면, 다수의 기준 라인을 갖는 템플릿은 인터 예측을 위한 공간적 LIC 파라미터들 추정에 적용된다. 실제로, 다수의 라인들 기준 템플릿의 상이한 태양들이 인트라 예측에 적용된 공간적 LIC에 대해 설명된다. 그러나, 이것은 설명의 명확성을 위한 것이며, 그들 태양들의 응용 또는 범주를 인트라 예측으로도, 공간적 LIC로도 제한하지 않는다. 실제로, 상이한 태양들 중 임의의 것이 인터 예측을 위한 공간적 LIC 파라미터들 추정에 적용된 다수의 기준 라인을 갖는 템플릿을 제공하도록 조합되고 상호교환될 수 있거나, 또는 다수의 기준 라인을 갖는 템플릿이 인터 예측을 위한 종래 기술의 LIC 파라미터들 추정에 적용된다.
다른 변형예에 따르면, 템플릿은 전체 재구성된 이웃 블록을 포함한다. 도 19는 적어도 하나의 실시예에 따른, 공간 이웃 블록을 포함하는 기준 템플릿을 이용한 공간적 LIC 파라미터들의 도출 프로세스를 예시한다. 조명 변동의 추정 정확도를 추가로 개선하기 위해, 또한 계산 복잡성을 고려하지 않고서, 템플릿은 이웃 블록들의 모든 재구성된 샘플들이 이용가능하기 때문에 그들을 사용함으로써 생성된다. 일례로서, 현재 블록의 재구성된 좌측 및 상부 이웃 블록들 중 임의의 것이 현재 블록의 템플릿(도 19의 T)을 생성하기 위해 사용되거나, 또는 기준 블록의 재구성된 좌측 및 상부 이웃 블록들 중 임의의 것이 기준 블록의 템플릿(도 19의 )을 구성한다.
일 변형예에 따르면, 작은 블록들(블록 크기 ≤ 8x8)에 대해서만, 템플릿은 재구성된 이웃 블록을 사용하여 생성된다. 유리하게는, 이러한 특징은 도 19의 변형예의 복잡성을 감소시킬 수 있게 한다.
다른 변형예에 따르면, 재구성된 이웃 블록을 템플릿으로서 사용하는 것이 인터 예측을 위한 공간적 LIC 파라미터들 추정에 또는 인터 예측을 위한 종래 기술의 LIC 파라미터들 추정에 적용된다.
제4 실시예에 따르면, 공간적 LIC는 IBC 블록의 인코딩/디코딩 동안 적용된다. 도 20은 VVC에서의 IBC 예측을 예시한다. 인트라 블록 복사(IBC)는 VVC에 구현된 스크린 콘텐츠 코딩(screen content coding, SCC) 도구이다. IBC 예측의 경우, (도 20에 도시된 바와 같이) 각각의 CU에 대한 최적의 블록 벡터(또는 모션 벡터)를 찾기 위해 인코더에서 블록 매칭(block matching, BM)이 수행된다. 여기서, 블록 벡터는 현재 블록으로부터, 현재 픽처 내부에서 이미 재구성되어 있는 기준 블록으로의 변위를 나타내는 데 사용된다. IBC 코딩된 CU는 인트라 또는 인터 예측 모드들 이외의 제3 예측 모드로서 취급된다. IBC는 (게이밍 비디오 콘텐츠를 포함하는) 스크린 콘텐츠 재료들의 코딩 효율을 유의하게 개선하는 것으로 잘 알려져 있다. 따라서, 제4 실시예는 IBC 예측에 대한 공간 조명 변화들을 보상하기 위해 공간적 LIC를 적용하는 것에 관한 것이다.
전술된 바와 같은 인터/인트라 예측을 위한 공간적 LIC와 비교하여, IBC 예측을 위한 공간적 LIC 추정에 사용되는 공간 기준 블록은 인트라 복사에 대해 사용되는 동일한 기준 블록(즉, 도 21의 템플릿 )이다. 이러한 경우에, IBC에 대한 공간적 LIC 파라미터들( )의 추정 프로세스는 하기와 같이 도출된다:
여기서, 는 현재 블록의 블록 벡터에 기초한 템플릿 샘플의 대응하는 기준 샘플이다.
도 22는 공간적 LIC가 IBC 블록의 디코딩 동안 적용되는 제4 기본 실시예에 따른 디코딩 프로세스를 도시한다. 알고리즘에 대한 입력은 현재 인트라 픽처에서 디코딩할 현재 IBC CU이다. 그것은 공간적 LIC 플래그 spatial_lic_flag를 파싱하는 것으로 이루어지며, 이는 현재 CU에서의 제안된 공간적 LIC 프로세스의 사용을 나타낸다(단계 4030). spatial_lic_flag가 거짓인 경우에, 이어서 통상의 IBC 예측 디코딩 프로세스만이 수반된다. spatial_lic_flag가 참인 경우에, 현재 블록의 블록 벡터로 나타내는, 공간 기준 블록은 공간적 LIC 파라미터들의 추정을 위해 사용된다(단계 4050). 그 후에, 단계(4060)에 도시된 바와 같이, IBC 예측 샘플들 상에 공간적 LIC 파라미터들을 적용함으로써 현재 블록의 최종 예측 샘플들이 생성된다.
제5 실시예에 따르면, 공간 기준 블록은 인트라 및 인터 예측을 위해 공간적 LIC에서 검색된다. 전술된 바와 같이, 인트라/인터 예측에 대한 공간적 LIC 파라미터들은 최근접 재구성된 공간 이웃 블록들(예시적인 도 13에 예시된 바와 같은 상부/좌측/상부-우측/하단-좌측/상부-좌측)을 사용하여 추정된다. 또 다른 변형예에 따르면, 미리정의된 검색 영역 내에 있는 동안 일부 비-최근접 공간 이웃 블록들은 인트라/인터 예측에 대한 공간적 LIC 파라미터들 추정에 대한 기준 블록으로서 간주된다. 이러한 경우에, 현재 블록으로부터 공간 기준 블록으로의 변위를 나타내기 위한 공간적 LIC 검색 벡터가 비트스트림으로 시그널링된다.
추가적인 실시예들 및 정보
본 출원은 툴들, 특징부들, 실시예들, 모델들, 접근법들 등을 포함한 다양한 태양들을 기술한다. 이들 태양들 중 많은 것은 특이성을 갖고서 기술되며, 적어도, 개별 특성들을 보여주기 위해, 종종, 제한사항으로 들릴 수 있는 방식으로 기술된다. 그러나, 이는 설명의 명확성을 위한 것이며, 그들 태양들의 응용 또는 범주를 제한하지 않는다. 실제로, 상이한 모든 태양들이 조합되고 상호교환되어 추가의 태양들을 제공할 수 있다. 더욱이, 태양들이 조합될 수 있고, 마찬가지로 이전의 출원들에 기술된 태양들과 상호교환될 수 있다.
본 출원에서 기술되고 고려되는 태양들은 많은 상이한 형태들로 구현될 수 있다. 하기의 도 23, 도 24, 및 도 25는 일부 실시예들을 제공하지만, 다른 실시예들이 고려되고, 도 23, 도 24, 및 도 25의 논의는 구현예들의 외연(breadth)을 제한하지 않는다. 태양들 중 적어도 하나는 대체적으로 비디오 인코딩 및 디코딩에 관한 것이고, 적어도 하나의 다른 태양은 대체적으로 생성되거나 인코딩된 비트스트림을 송신하는 것에 관한 것이다. 이들 및 다른 태양들은 기술된 방법들 중 임의의 방법에 따라 비디오 데이터를 인코딩 또는 디코딩하기 위한 명령어들이 저장된 방법, 장치, 컴퓨터 판독가능 저장 매체, 및/또는 기술된 방법들 중 임의의 방법에 따라 생성된 비트스트림이 저장된 컴퓨터 판독가능 저장 매체로서 구현될 수 있다.
본 출원에서, "재구성된" 및 "디코딩된"이라는 용어들은 상호교환가능하게 사용될 수 있으며, "픽셀" 및 "샘플"이라는 용어들은 상호교환가능하게 사용될 수 있고, "이미지", "픽처" 및 "프레임"이라는 용어들은 상호교환가능하게 사용될 수 있다.
다양한 방법들이 본 명세서에 기술되고, 각각의 방법은 기술된 방법을 달성하기 위한 하나 이상의 단계들 또는 액션들을 포함한다. 방법의 적절한 동작을 위해 단계들 또는 액션들의 특정 순서가 요구되지 않는 한, 특정 단계들 및/또는 액션들의 순서 및/또는 사용은 수정되거나 조합될 수 있다. 추가로, "제1", "제2" 등과 같은 용어들은, 예를 들어, "제1 디코딩" 및 "제2 디코딩"과 같은 요소, 컴포넌트, 단계, 동작 등을 수정하기 위해 다양한 실시예들에서 사용될 수 있다. 그러한 용어들의 사용은, 구체적으로 요구되지 않는 한 수식된 동작들에 대한 순서화를 의미하지 않는다. 따라서, 이러한 예에서, 제1 디코딩은 제2 디코딩 전에 수행될 필요가 없고, 예를 들어, 제2 디코딩 전에, 그 동안, 또는 그와 중첩되는 기간에 발생할 수 있다.
본 출원에 기술된 다양한 방법들 및 다른 태양들은, 도 23 및 도 24에 도시된 바와 같이, 비디오 인코더(100) 및 디코더(200)의 모듈들, 예를 들어, 인트라 및/또는 인터 예측 모듈들(160, 170, 260, 275)을 수정하는 데 사용될 수 있다. 더욱이, 본 태양들은 VVC 또는 HEVC로 제한되지 않으며, 예를 들어, 기존에 존재하든 향후 개발되든, 다른 표준들 및 권고들, 및 임의의 그러한 표준들 및 권고들(VVC 및 HEVC를 포함함)의 확장들에 적용될 수 있다. 달리 나타내지 않거나, 또는 기술적으로 배제되지 않는 한, 본 출원에 기술되는 태양들은 개별적으로 또는 조합하여 사용될 수 있다.
다양한 수치 값들, 예를 들어, 변환들의 수, 변환 레벨의 수, 변환들의 인덱스들이 본 출원에서 사용된다. 특정 값들은 예시적인 목적들을 위한 것이며, 기술된 태양들은 이들 특정 값들로 제한되지 않는다.
도 23은 인코더(100)를 예시한다. 이러한 인코더(100)의 변형들이 고려되지만, 인코더(100)는 모든 예상된 변형들을 기술하지 않고서 명료성의 목적들을 위해 후술된다.
인코딩되기 전에, 비디오 시퀀스는, 예를 들어, 입력 컬러 픽처에 컬러 변환을 적용하거나(예컨대, RGB 4:4:4로부터 YCbCr 4:2:0으로의 변환), 또는 (예를 들어, 컬러 성분들 중 하나의 성분의 히스토그램 등화를 사용하여) 압축에 더 탄력적인 신호 분포를 얻기 위해 입력 픽처 성분들의 재맵핑을 수행하는, 사전 인코딩 프로세싱(101)을 거칠 수 있다. 메타데이터는 사전-프로세싱과 연관될 수 있고, 비트스트림에 부착될 수 있다.
인코더(100)에서, 픽처는 후술되는 바와 같이 인코더 요소들에 의해 인코딩된다. 인코딩될 픽처는, 예를 들어, CU들의 유닛들로 파티셔닝(102) 및 프로세싱된다. 각각의 유닛은, 예를 들어 인트라 또는 인터 모드를 사용하여 인코딩된다. 유닛이 인트라 모드에서 인코딩될 때, 그것은 인트라 예측을 수행한다(160). 인터 모드에서는, 모션 추정(175) 및 보상(170)이 수행된다. 인코더는 유닛을 인코딩하기 위해 인트라 모드 또는 인터 모드 중 어느 것을 사용할지를 결정하고(105), 예를 들어, 예측 모드 플래그에 의해 인트라/인터 결정을 나타낸다. 예측 잔차들은, 예를 들어, 원래의 이미지 블록에서 예측된 블록을 감산함으로써(110) 계산된다.
이어서, 예측 잔차들은 변환되고(125) 양자화된다(130). 양자화된 변환 계수들뿐만 아니라 모션 벡터들 및 다른 신택스 요소들이 엔트로피 코딩되어(145) 비트스트림을 출력한다. 인코더는 변환을 스킵할 수 있고, 비변환된 잔차 신호에 직접 양자화를 적용할 수 있다. 인코더는 변환 및 양자화 모두를 스킵할 수 있으며, 즉, 잔차는 변환 또는 양자화 프로세스들의 적용 없이 직접 코딩된다.
인코더는 인코딩된 블록을 디코딩하여 추가 예측들을 위한 기준을 제공한다. 양자화된 변환 계수들은 예측 잔차들을 디코딩하기 위해 역양자화되고(140) 역변환된다(150). 디코딩된 예측 잔차들 및 예측된 블록을 조합하여(155), 이미지 블록이 재구성된다. 인루프(in-loop) 필터들(165)이, 예를 들어, 인코딩 아티팩트들을 감소시키기 위해 디블록킹/SAO(Sample Adaptive Offset) 필터링을 수행하도록 재구성된 픽처에 적용된다. 필터링된 이미지는 기준 픽처 버퍼(180)에 저장된다.
도 24는 비디오 디코더(200)의 블록도를 예시한다. 디코더(200)에서, 비트스트림은 후술되는 바와 같이 디코더 요소들에 의해 디코딩된다. 비디오 디코더(200)는 대체적으로, 도 24에 기술된 바와 같이, 인코딩 패스에 상반되는 디코딩 패스를 수행한다. 인코더(100)는 또한 대체적으로, 비디오 데이터를 인코딩하는 것의 일부로서 비디오 디코딩을 수행한다.
특히, 디코더의 입력은 비디오 인코더(100)에 의해 생성될 수 있는 비디오 비트스트림을 포함한다. 비트스트림은 먼저, 변환 계수들, 모션 벡터들, 및 다른 코딩된 정보를 획득하기 위해 엔트로피 디코딩된다(230). 픽처 파티션 정보는 픽처가 어떻게 파티셔닝되는지를 나타낸다. 따라서, 디코더는 디코딩된 픽처 파티셔닝 정보에 따라 픽처를 분할할 수 있다(235). 변환 계수들은 예측 잔차들을 디코딩하기 위해 역양자화되고(240) 역변환된다(250). 디코딩된 예측 잔차들 및 예측된 블록을 조합하여(255), 이미지 블록이 재구성된다. 예측된 블록은 인트라 예측(260) 또는 모션 보상된 예측(즉, 인터 예측)(275)으로부터 획득될 수 있다(270). 재구성된 이미지에 인루프 필터들(265)이 적용된다. 필터링된 이미지는 기준 픽처 버퍼(280)에 저장된다.
디코딩된 픽처는 사후 디코딩 프로세싱(285), 예를 들어, 역 컬러 변환(예컨대, YCbCr 4:2:0으로부터 RGB 4:4:4로의 변환) 또는 사전 인코딩 프로세싱(101)에서 수행된 재맵핑 프로세스의 역을 수행하는 역 재맵핑을 추가로 거칠 수 있다. 사후 디코딩 프로세싱은 사전 인코딩 프로세싱에서 도출되고 비트스트림에서 시그널링된 메타데이터를 사용할 수 있다.
도 25는 다양한 태양들 및 실시예들이 구현되는 시스템의 일례의 블록도를 예시한다. 시스템(5000)은 후술되는 다양한 컴포넌트들을 포함하는 디바이스로서 구현될 수 있으며, 본 문헌에 기술된 태양들 중 하나 이상을 수행하도록 구성된다. 그러한 디바이스들의 예들에는 개인용 컴퓨터들, 랩톱 컴퓨터들, 스마트폰들, 태블릿 컴퓨터들, 디지털 멀티미디어 셋톱 박스들, 디지털 텔레비전 수신기들, 개인용 비디오 녹화 시스템들, 연결형 가전 제품들, 및 서버들과 같은 다양한 전자 디바이스들이 포함되지만, 이들로 제한되지 않는다. 시스템(5000)의 요소들은 단일 집적 회로(IC), 다수의 IC들, 및/또는 별개의 컴포넌트들에서, 단독으로 또는 조합되어 구현될 수 있다. 예를 들어, 적어도 하나의 실시예에서, 시스템(5000)의 프로세싱 및 인코더/디코더 요소들은 다수의 IC들 및/또는 별개의 컴포넌트들에 걸쳐 분산된다. 다양한 실시예들에서, 시스템(5000)은, 예를 들어, 통신 버스를 통해 또는 전용 입력 및/또는 출력 포트들을 통해 하나 이상의 다른 시스템들, 또는 다른 전자 디바이스들에 통신가능하게 결합된다. 다양한 실시예들에서, 시스템(5000)은 본 문헌에 기술된 태양들 중 하나 이상을 구현하도록 구성된다.
시스템(5000)은, 예를 들어, 본 문헌에 기술된 다양한 태양들을 구현하기 위해 그 내부에 로딩된 명령어들을 실행하도록 구성된 적어도 하나의 프로세서(5010)를 포함한다. 프로세서(5010)는 내장된 메모리, 입력 출력 인터페이스, 및 당업계에 알려진 바와 같은 다양한 다른 회로부들을 포함할 수 있다. 시스템(5000)은 적어도 하나의 메모리(5020)(예컨대, 휘발성 메모리 디바이스, 및/또는 비휘발성 메모리 디바이스)를 포함한다. 시스템(5000)은 전기적으로 소거가능한 프로그래밍가능 판독 전용 메모리(Electrically Erasable Programmable Read-Only Memory, EEPROM), 판독 전용 메모리(ROM), 프로그래밍가능 판독 전용 메모리(Programmable Read-Only Memory, PROM), 랜덤 액세스 메모리(RAM), 동적 랜덤 액세스 메모리(Dynamic Random Access Memory, DRAM), 정적 랜덤 액세스 메모리(Static Random Access Memory, SRAM), 플래시, 자기 디스크 드라이브 및/또는 광학 디스크 드라이브를 포함하지만 이에 제한되지 않는 비휘발성 메모리 및/또는 휘발성 메모리를 포함할 수 있는 저장 디바이스(5040)를 포함한다. 저장 디바이스(5040)는 비제한적인 예들로서, 내부 저장 디바이스, 부착된 저장 디바이스(분리가능한 저장 디바이스 및 분리가능하지 않은 저장 디바이스를 포함함), 및/또는 네트워크 액세스가능한 저장 디바이스를 포함할 수 있다.
시스템(5000)은, 예를 들어, 인코딩된 비디오 또는 디코딩된 비디오를 제공하기 위해 데이터를 프로세싱하도록 구성된 인코더/디코더 모듈(5030)을 포함하고, 인코더/디코더 모듈(5030)은 자체 프로세서 및 메모리를 포함할 수 있다. 인코더/디코더 모듈(5030)은 인코딩 및/또는 디코딩 기능들을 수행하기 위해 디바이스에 포함될 수 있는 모듈(들)을 나타낸다. 알려진 바와 같이, 디바이스는 인코딩 및 디코딩 모듈들 중 하나 또는 둘 모두를 포함할 수 있다. 추가적으로, 인코더/디코더 모듈(5030)은 시스템(5000)의 별개의 요소로서 구현될 수 있거나, 또는 당업자에게 알려진 바와 같은 하드웨어와 소프트웨어의 조합으로서 프로세서(5010) 내에 통합될 수 있다.
본 문헌에 기술된 다양한 태양들을 수행하기 위해 프로세서(5010) 또는 인코더/디코더(5030)에 로딩될 프로그램 코드는 저장 디바이스(5040)에 저장될 수 있고 후속적으로 프로세서(5010)에 의한 실행을 위해 메모리(5020)에 로딩될 수 있다. 다양한 실시예들에 따르면, 프로세서(5010), 메모리(5020), 저장 디바이스(5040), 및 인코더/디코더 모듈(5030) 중 하나 이상은 본 문헌에 기술된 프로세스들의 수행 동안 다양한 항목들 중 하나 이상을 저장할 수 있다. 이러한 저장된 항목들은 입력 비디오, 디코딩된 비디오 또는 디코딩된 비디오의 일부들, 비트스트림, 행렬들, 변수들, 및 식들, 공식들, 연산들 및 연산 로직의 프로세싱으로부터의 중간 또는 최종 결과들을 포함할 수 있지만, 이들로 제한되지 않는다.
일부 실시예들에서, 프로세서(5010) 및/또는 인코더/디코더 모듈(5030) 내부의 메모리는 명령어들을 저장하고, 인코딩 또는 디코딩 동안 필요한 프로세싱을 위한 작업 메모리를 제공하는 데 사용된다. 그러나, 다른 실시예들에서, 프로세싱 디바이스(예를 들어, 프로세싱 디바이스는 프로세서(5010) 또는 인코더/디코더 모듈(5030) 중 어느 하나일 수 있음) 외부의 메모리가 이들 기능들 중 하나 이상에 사용된다. 외부 메모리는 메모리(5020) 및/또는 저장 디바이스(5040), 예를 들어, 동적 휘발성 메모리 및/또는 비휘발성 플래시 메모리일 수 있다. 일부 실시예들에서, 외부 비휘발성 플래시 메모리는 예를 들어, 텔레비전의 운영 체제를 저장하는 데 사용된다. 적어도 하나의 실시예에서, RAM과 같은 고속 외부 동적 휘발성 메모리는 MPEG-2(MPEG는 Moving Picture Experts Group을 지칭하고, MPEG-2는 또한 ISO/IEC 13818로도 지칭되고, 13818-1은 또한 H.222로도 알려져 있고, 13818-2는 또한 H.262로도 알려져 있음), HEVC(HEVC는 High Efficiency Video Coding을 지칭하고, H.265 및 MPEG-H Part 2로도 알려져 있음), 또는 VVC(Versatile Video Coding, JVET(Joint Video Experts Team)에서 개발 중인 새로운 표준)와 같은 비디오 코딩 및 디코딩 동작들을 위한 작업 메모리로 사용된다.
시스템(5000)의 요소들에 대한 입력은 블록(5005)에 표시된 바와 같은 다양한 입력 디바이스들을 통해 제공될 수 있다. 그러한 입력 디바이스들은 (i) 예를 들어 브로드캐스터(broadcaster)에 의해 무선으로(over the air) 송신된 무선 주파수(RF) 신호를 수신하는 무선 주파수(RF) 부분, (ii) 컴포넌트(COMP) 입력 단자(또는 COMP 입력 단자들의 세트), (iii) 범용 직렬 버스(USB) 입력 단자 및/또는 (iv) 고화질 멀티미디어 인터페이스(HDMI) 입력 단자를 포함하지만, 이들로 제한되지 않는다. 도 25에 도시되지 않은 다른 예들은 복합 비디오(composite video)를 포함한다.
다양한 실시예들에서, 블록(5005)의 입력 디바이스들은 당업계에 알려진 바와 같은 연관된 각자의 입력 프로세싱 요소들을 갖는다. 예를 들어, RF 부분은, (i) 원하는 주파수를 선택하는 것(신호를 선택하는 것, 또는 신호를 주파수들의 대역으로 대역 제한하는 것으로도 지칭됨), (ii) 선택된 신호를 하향변환(downconvert)하는 것, (iii) (예를 들어) 소정 실시예들에서 채널로 지칭될 수 있는 신호 주파수 대역을 선택하기 위해 주파수들의 더 좁은 대역으로 다시 대역-제한하는 것, (iv) 하향변환되고 대역-제한된 신호를 복조하는 것, (v) 오류 정정을 수행하는 것, 및 (vi) 데이터 패킷들의 원하는 스트림을 선택하기 위해 역다중화하는 것에 적합한 요소들과 연관될 수 있다. 다양한 실시예들의 RF 부분은 이러한 기능들을 수행하기 위한 하나 이상의 요소들, 예를 들어 주파수 선택기들, 신호 선택기들, 대역-제한기들, 채널 선택기들, 필터들, 하향변환기들, 복조기들, 오류 보정기들, 및 역다중화기들을 포함한다. RF 부분은, 예를 들어, 수신된 신호를 더 낮은 주파수(예를 들어, 중간 주파수 또는 근거리 기저대역 주파수)로 또는 기저대역으로 하향변환하는 것을 포함하여 이러한 다양한 기능들을 수행하는 튜너를 포함할 수 있다. 하나의 셋톱 박스 실시예에서, RF 부분 및 그의 연관된 입력 프로세싱 요소는 유선(예를 들어, 케이블) 매체를 통해 전송된 RF 신호를 수신하고, 그리고 필터링하고, 하향변환하고 다시 원하는 주파수 대역으로 필터링함으로써 주파수 선택을 수행한다. 다양한 실시예는 전술한(및 다른) 요소의 순서를 재배열하고, 이들 요소 중 일부를 제거하고/하거나 유사하거나 상이한 기능을 수행하는 다른 요소를 추가한다. 요소를 추가하는 것은, 예를 들어, 증폭기 및 아날로그-디지털 변환기를 삽입하는 것과 같이, 기존 요소 사이에 요소를 삽입하는 것을 포함할 수 있다. 다양한 실시예들에서, RF 부분은 안테나를 포함한다.
또한, USB 및/또는 HDMI 단자들은 시스템(5000)을 USB 및/또는 HDMI 접속부들을 통해 다른 전자 디바이스들에 접속하기 위한 각자의 인터페이스 프로세서들을 포함할 수 있다. 입력 프로세싱의 다양한 태양들, 예를 들어, 리드-솔로몬(Reed-Solomon) 오류 정정은 필요에 따라, 예를 들어, 별개의 입력 프로세싱 IC 내에서 또는 프로세서(5010) 내에서 구현될 수 있다는 것이 이해되어야 한다. 유사하게, USB 또는 HDMI 인터페이스 프로세싱의 태양들은 필요에 따라, 별개의 인터페이스 IC들 내에서 또는 프로세서(5010) 내에서 구현될 수 있다. 복조, 오류 정정, 및 역다중화된 스트림은, 예를 들어, 출력 디바이스 상에서의 프리젠테이션을 위해 필요에 따라 데이터 스트림을 프로세싱하도록 메모리 및 저장 요소들과 조합하여 동작하는 프로세서(5010), 및 인코더/디코더(5030)를 포함한 다양한 프로세싱 요소들에 제공된다.
시스템(5000)의 다양한 요소들이 통합된 하우징 내에 제공될 수 있으며, 통합된 하우징 내에서, 다양한 요소들은 적합한 접속 배열체(5015), 예를 들어, 인터-IC(I2C) 버스, 배선, 및 인쇄 회로 기판을 포함하는, 당업계에 알려진 바와 같은 내부 버스를 사용하여 상호접속되고 그들 사이에서 데이터를 전송할 수 있다.
시스템(5000)은 통신 채널(5090)을 통해 다른 디바이스들과의 통신을 가능하게 하는 통신 인터페이스(5050)를 포함한다. 통신 인터페이스(5050)는 통신 채널(5090)을 통해 데이터를 송신하도록 그리고 수신하도록 구성된 송수신기를 포함할 수 있지만, 이에 제한되지 않는다. 통신 인터페이스(5050)는 모뎀 또는 네트워크 카드를 포함할 수 있지만 이에 제한되지 않으며, 통신 채널(5090)은 예를 들어 유선 및/또는 무선 매체 내에서 구현될 수 있다.
데이터는, 다양한 실시예에서, Wi-Fi 네트워크, 예를 들어 IEEE 802.11(IEEE는 전기 전자 기술자 협회를 지칭함)과 같은 무선 네트워크를 사용하여, 시스템(5000)에 스트리밍되거나 또는 달리 제공된다. 이러한 실시예의 Wi-Fi 신호는 Wi-Fi 통신에 대해 적응되는 통신 채널(5090) 및 통신 인터페이스(5050)를 통해 수신된다. 이들 실시예들의 통신 채널(5090)은 전형적으로, 스트리밍 응용들 및 다른 오버-더-탑 통신을 허용하기 위한 인터넷을 포함하는 외부 네트워크들에 대한 액세스를 제공하는 액세스 포인트 또는 라우터에 접속된다. 다른 실시예들은 입력 블록(5005)의 HDMI 접속을 통해 데이터를 전달하는 셋톱 박스를 사용하여 스트리밍된 데이터를 시스템(5000)에 제공한다. 또 다른 실시예들은 입력 블록(5005)의 RF 접속을 사용하여 스트리밍된 데이터를 시스템(5000)에 제공한다. 전술한 바와 같이, 다양한 실시예는 비-스트리밍 방식으로 데이터를 제공한다. 또한, 다양한 실시예는 Wi-Fi 이외의 무선 네트워크, 예를 들어 셀룰러 네트워크 또는 블루투스 네트워크를 사용한다.
시스템(5000)은 디스플레이(5065), 스피커들(5075), 및 다른 주변 디바이스들(5085)을 포함하는 다양한 출력 디바이스들에 출력 신호를 제공할 수 있다. 다양한 실시예들의 디스플레이(5065)는, 예를 들어, 터치스크린 디스플레이, 유기 발광 다이오드(OLED) 디스플레이, 커브드(curved) 디스플레이, 및/또는 폴더블(foldable) 디스플레이 중 하나 이상을 포함한다. 디스플레이(5065)는 텔레비전, 태블릿, 랩톱, 셀 폰(모바일 폰), 또는 다른 디바이스를 위한 것일 수 있다. 디스플레이(5065)는 또한 (예를 들어, 스마트 폰에서와 같이) 다른 컴포넌트들과 통합될 수 있거나, 또는 별개일 수 있다(예를 들어, 랩톱을 위한 외부 모니터). 실시예의 다양한 예들에서, 다른 주변 디바이스들(5085)은 독립형 디지털 비디오 디스크(또는 디지털 다기능 디스크)(두 용어 모두에 대해, DVR), 디스크 플레이어, 스테레오 시스템 및/또는 조명 시스템 중 하나 이상을 포함한다. 다양한 실시예들은 시스템(5000)의 출력에 기초하여 기능을 제공하는 하나 이상의 주변 디바이스들(5085)을 사용한다. 예를 들어, 디스크 플레이어는 시스템(5000)의 출력을 재생하는 기능을 수행한다.
다양한 실시예들에서, 제어 신호들은, 시그널링, 예컨대, AV.Link, CEC(Consumer Electronics Control), 또는 사용자 개입이 있거나 또는 개입 없이 디바이스 대 디바이스 제어를 가능하게 하는 다른 통신 프로토콜들을 사용하여 시스템(5000)과 디스플레이(5065), 스피커들(5075), 또는 다른 주변 디바이스들(5085) 사이에서 통신된다. 출력 디바이스들은 각자의 인터페이스들(5065, 5075, 5085)을 통해 전용 접속들을 거쳐 시스템(5000)에 통신가능하게 결합될 수 있다. 대안적으로, 출력 디바이스들은 통신 인터페이스(5050)를 통해 통신 채널(5090)을 사용하여 시스템(5000)에 접속될 수 있다. 디스플레이(5065) 및 스피커들(5075)은, 예를 들어, 텔레비전과 같은 전자 디바이스에서 시스템(5000)의 다른 컴포넌트들과 단일 유닛으로 통합될 수 있다. 다양한 실시예들에서, 디스플레이 인터페이스(5065)는, 예를 들어, 타이밍 제어기(T Con) 칩과 같은 디스플레이 드라이버를 포함한다.
디스플레이(5065) 및 스피커(5075)는 대안적으로, 예를 들어, 입력(5005)의 RF 부분이 별개의 셋톱 박스의 일부인 경우, 다른 컴포넌트들 중 하나 이상과 별개일 수 있다. 디스플레이(5065) 및 스피커들(5075)이 외부 컴포넌트들인 다양한 실시예들에서, 출력 신호는, 예를 들어, HDMI 포트들, USB 포트들, 또는 COMP 출력들을 포함하는 전용 출력 접속들을 통해 제공될 수 있다.
실시예들은 프로세서(5010)에 의해 구현되는 컴퓨터 소프트웨어에 의해 또는 하드웨어에 의해, 또는 하드웨어와 소프트웨어의 조합에 의해 수행될 수 있다. 비제한적인 예로서, 실시예들은 하나 이상의 집적 회로들에 의해 구현될 수 있다. 메모리(5020)는 기술적 환경에 적절한 임의의 유형의 것일 수 있고, 비제한적인 예들로서, 광학 메모리 디바이스, 자기 메모리 디바이스, 반도체 기반 메모리 디바이스, 고정 메모리, 및 착탈식 메모리와 같은 임의의 적절한 데이터 저장 기술을 사용하여 구현될 수 있다. 프로세서(5010)는 기술적 환경에 적절한 임의의 유형의 것일 수 있고, 비제한적인 예들로서, 마이크로프로세서들, 범용 컴퓨터들, 특수 목적 컴퓨터들, 및 멀티-코어 아키텍처에 기반한 프로세서들 중 하나 이상을 포괄할 수 있다.
다양한 실시예가 디코딩을 수반한다. 본 출원에서 사용되는 바와 같이, "디코딩"은 예를 들어, 수신된 인코딩된 시퀀스에 대해 수행되어 디스플레이에 적합한 최종 출력을 생성하는 프로세스들의 전부 또는 일부를 포함할 수 있다. 다양한 실시예들에서, 그러한 프로세스들은 디코더에 의해 전형적으로 수행되는 프로세스들 중 하나 이상의 프로세스들, 예를 들어, 엔트로피 디코딩, 역양자화, 역변환, 및 차동 디코딩을 포함한다. 다양한 실시예들에서, 그러한 프로세스들은 또한, 또는 대안적으로, 예를 들어, 공간적 LIC의 파라미터들을 도출하는 것 및 인터 예측, 인트라 예측 또는 IBC 예측 중 임의의 것에 공간적 LIC를 적용하는 것을 포함하는, 본 출원에 기술된 다양한 구현예들의 디코더에 의해 수행되는 프로세스들을 포함한다.
추가 예들로서, 하나의 실시예에서, "디코딩"은 엔트로피 디코딩만을 지칭하고, 다른 실시예에서, "디코딩"은 차동 디코딩만을 지칭하고, 또 다른 실시예에서, "디코딩"은 엔트로피 디코딩과 차동 디코딩의 조합을 지칭한다. 어구 "디코딩 프로세스"가 작동의 서브세트를 구체적으로 나타내기 위한 것인지, 또는 대체적으로 보다 광의의 디코딩 프로세스를 나타내기 위한 것인지 여부는 특정 설명의 맥락에 기초하여 명확할 것이며, 당업자에 의해 잘 이해될 것으로 여겨진다.
다양한 실시예가 인코딩을 수반한다. "디코딩"에 대한 상기 논의와 유사한 방식으로, 본 출원에서 사용되는 바와 같은 "인코딩"은, 예를 들어 입력 비디오 시퀀스에 대해 수행되어 인코딩된 비트스트림을 생성하는 프로세스들의 전부 또는 일부를 포함할 수 있다. 다양한 실시예들에서, 이러한 프로세스들은 전형적으로 인코더에 의해 수행되는 프로세스들, 예를 들어, 파티셔닝, 차동 인코딩, 변환, 양자화, 및 엔트로피 인코딩 중 하나 이상을 포함한다. 다양한 실시예들에서, 그러한 프로세스들은 또한, 또는 대안적으로, 예를 들어, 공간적 LIC의 파라미터들을 도출하고 인터 예측, 인트라 예측 또는 IBC 예측 중 임의의 것에 공간적 LIC를 적용하는, 본 출원에 기술된 다양한 구현예들의 인코더에 의해 수행되는 프로세스들을 포함한다.
추가 예들에서, 하나의 실시예에서, "인코딩"은 단지 엔트로피 인코딩을 지칭하며, 다른 실시예에서 "인코딩"은 단지 차동 인코딩을 지칭하고, 다른 실시예에서 "인코딩"은 차동 인코딩과 엔트로피 인코딩의 조합을 지칭한다. 어구 "인코딩 프로세스"가 작동의 서브세트를 구체적으로 나타내기 위한 것인지, 또는 대체적으로 보다 광의의 인코딩 프로세스를 나타내기 위한 것인지 여부는 특정 설명의 맥락에 기초하여 명확할 것이며, 당업자에 의해 잘 이해될 것으로 여겨진다.
본 명세서에 사용되는 바와 같은 신택스 요소들, 예를 들어, spatial_lic_flag, lic_refblk_index, lic_mrl_flag가 설명 용어들이라는 점에 유의한다. 이와 같이, 이들은 다른 신택스 요소 명칭들의 사용을 배제하지 않는다.
도면이 흐름도로서 제시될 때, 그것은 또한 대응하는 장치의 블록도를 제공한다는 것을 이해해야 한다. 유사하게, 도면이 블록도로서 제시될 때, 그것은 또한 대응하는 방법/프로세스의 흐름도를 제공한다는 것을 이해해야 한다.
다양한 실시예들은 레이트 왜곡 최적화를 지칭한다. 특히, 인코딩 프로세스 동안, 계산 복잡성의 제약들이 종종 주어지면, 레이트와 왜곡 사이의 균형 또는 트레이드오프가 보통 고려된다. 레이트 왜곡 최적화는 일반적으로 레이트와 왜곡의 가중 합인 레이트 왜곡 함수를 최소화하는 것으로 공식화된다. 레이트 왜곡 최적화 문제를 해결하기 위한 상이한 접근법들이 있다. 예를 들어, 접근법들은, 코딩 및 디코딩 후 재구성된 신호의 코딩 비용 및 관련된 왜곡의 완전한 평가를 이용한, 모든 고려된 모드들 또는 코딩 파라미터들 값들을 포함하는 모든 인코딩 옵션들의 광범위한 테스트에 기초할 수 있다. 특히 재구성된 것이 아니라 예측 또는 예측 잔차 신호에 기초한 근사화된 왜곡의 계산과 함께 인코딩 복잡성을 덜기 위해, 더 빠른 접근법들이 또한 사용될 수 있다. 이들 2개의 접근법들의 혼합은 또한, 예컨대, 가능한 인코딩 옵션들 중 일부만에 대한 근사화된 왜곡 및 다른 인코딩 옵션들에 대한 완전한 왜곡을 사용함으로써 사용될 수 있다. 다른 접근법들은 가능한 인코딩 옵션들의 서브세트만을 평가한다. 보다 일반적으로, 많은 접근법들은 최적화를 수행하기 위해 다양한 기술들 중 임의의 기술을 채용하지만, 최적화가 반드시 코딩 비용과 관련된 왜곡 둘 모두에 대한 완전한 평가이지는 않다.
본 명세서에 기술된 실시예 및 양태는, 예를 들어, 방법 또는 프로세스, 장치, 소프트웨어 프로그램, 데이터 스트림, 또는 신호에서 구현될 수 있다. 구현예의 단일 형태의 맥락에서 논의된다 하더라도(예를 들어, 방법으로서만 논의됨), 논의된 특징들의 구현예는 다른 형태들(예를 들어, 장치 또는 프로그램)에서 구현될 수 있다. 장치는, 예를 들어, 적절한 하드웨어, 소프트웨어, 및 펌웨어로 구현될 수 있다. 방법들은, 예를 들어, 컴퓨터, 마이크로프로세서, 집적 회로, 또는 프로그래밍가능 로직 디바이스를 포함하는, 대체적으로 프로세싱 디바이스들로 지칭되는, 예를 들어, 프로세서에서 구현될 수 있다. 프로세서는 또한, 예를 들어, 컴퓨터, 셀 폰, 휴대용/개인 디지털 어시스턴트("PDA"), 및 최종 사용자들 사이의 정보의 통신을 용이하게 하는 다른 디바이스들과 같은 통신 디바이스를 포함한다.
"하나의 실시예" 또는 "일 실시예" 또는 "하나의 구현예" 또는 "일 구현예"뿐만 아니라 그의 다른 변형에 대한 언급은, 실시예와 관련하여 기술된 특정 특징, 구조, 특성 등이 적어도 하나의 실시예에 포함됨을 의미한다. 따라서, 본 출원 전반에 걸친 다양한 곳에서 나타나는 어구 "하나의 실시예에서" 또는 "일 실시예에서" 또는 "하나의 구현예에서" 또는 "일 구현예에서"뿐만 아니라 임의의 다른 변형의 출현이 반드시 모두 동일한 실시예를 언급하는 것은 아니다.
또한, 본 출원은 다양한 조각의 정보를 "결정하는 것"을 언급할 수 있다. 정보를 결정하는 것은, 예를 들어 정보를 추정하는 것, 정보를 계산하는 것, 정보를 예측하는 것, 또는 메모리로부터 정보를 검색하는 것 중 하나 이상을 포함할 수 있다.
또한, 본 출원은 다양한 피스들의 정보에 "액세스하는 것"을 언급할 수 있다. 정보에 액세스하는 것은, 예를 들어 정보를 수신하는 것, (예를 들어, 메모리로부터) 정보를 검색하는 것, 정보를 저장하는 것, 정보를 이동하는 것, 정보를 복사하는 것, 정보를 계산하는 것, 정보를 결정하는 것, 정보를 예측하는 것, 또는 정보를 추정하는 것 중 하나 이상을 포함할 수 있다.
또한, 본 출원은 다양한 조각들의 정보를 "수신하는 것"을 지칭할 수 있다. 수신하는 것은 "액세스하는 것"과 마찬가지로 광의의 용어인 것으로 의도된다. 정보를 수신하는 것은, 예를 들어, 정보에 액세스하는 것, 또는 (예를 들어, 메모리로부터) 정보를 검색하는 것 중 하나 이상을 포함할 수 있다. 또한, "수신하는 것"은 전형적으로, 예를 들어 정보를 저장하는 동작, 정보를 프로세싱하는 동작, 정보를 송신하는 동작, 정보를 이동하는 동작, 정보를 복사하는 동작, 정보를 소거하는 동작, 정보를 계산하는 동작, 정보를 결정하는 동작, 정보를 예측하는 동작, 또는 정보를 추정하는 동작 동안 어떤 방식으로든 수반된다.
예를 들어, "A/B", "A 및/또는 B" 및 "A 및 B 중 적어도 하나"의 경우들에서 다음의 "/", "및/또는", 및 "적어도 하나" 중 임의의 것의 사용은 제1 열거된 옵션(A) 단독의 선택, 또는 제2 열거된 옵션(B) 단독의 선택, 또는 옵션들(A 및 B) 둘 모두의 선택을 포함하도록 의도됨을 이해해야 한다. 또 다른 예로서, "A, B 및/또는 C" 및 "A, B 및 C 중 적어도 하나"의 경우들에서, 그러한 어구는 제1 열거된 옵션(A) 단독의 선택, 또는 제2 열거된 옵션(B) 단독의 선택, 또는 제3 열거된 옵션(C) 단독의 선택, 또는 제1 및 제2 열거된 옵션들(A 및 B) 단독의 선택, 또는 제1 및 제3 열거된 옵션들(A 및 C) 단독의 선택, 또는 제2 및 제3 열거된 옵션들(B 및 C) 단독의 선택, 또는 3개의 모든 옵션들(A, B 및 C)의 선택을 포함하도록 의도된다. 이는, 본 명세서에 기술된 바와 같은 많은 항목들에 대해, 본 명세서 및 관련 분야의 당업자에게 명백한 바와 같이 확장될 수 있다.
또한, 본 명세서에 사용된 바와 같이, 용어 "신호"는 특히 상응하는 디코더에 무언가를 나타내는 것을 지칭한다. 예를 들어, 소정 실시예들에서, 인코더는 변환을 위한 복수의 파라미터들 중 특정 파라미터를 시그널링한다. 이러한 방식으로, 일 실시예에서, 동일한 파라미터가 인코더 측 및 디코더 측 둘 모두에서 사용된다. 따라서, 예를 들어, 인코더는 디코더가 동일한 특정 파라미터를 사용할 수 있도록 디코더에 특정 파라미터를 송신할 수 있다(명시적 시그널링). 반대로, 디코더가 이미 특정 파라미터뿐만 아니라 다른 것을 갖고 있다면, 단순히 디코더가 특정 파라미터를 알고 선택할 수 있게 하기 위해 송신 없이 시그널링이 사용될 수 있다(암시적 시그널링). 임의의 실제 기능의 송신을 회피함으로써, 다양한 실시예에서 비트 절약이 실현된다. 시그널링은 다양한 방식으로 달성될 수 있다는 것이 이해되어야 한다. 예를 들어, 하나 이상의 신택스 요소들, 플래그들 등이 다양한 실시예들에서 대응하는 디코더에 정보를 시그널링하는 데 사용된다. 전술된 표현이 단어 "신호"의 동사 형태와 관련되지만, 단어 "신호"는 또한 명사로서 본 명세서에서 사용될 수 있다.
이러한 개시내용은, 예를 들어, 송신 또는 저장될 수 있는, 예를 들어, 신택스와 같은 다양한 정보들을 설명하였다. 이러한 정보는, 예를 들어 정보를 SPS, PPS, NAL 유닛, 헤더(예를 들어, NAL 유닛 헤더, 또는 슬라이스 헤더), 또는 SEI 메시지에 넣는 것과 같은 비디오 표준들에서 보편적인 방식들을 포함하는, 다양한 방식들로 패키징되거나 배열될 수 있다. 예를 들어, 정보를 하기에 넣는 것과 같은 시스템 레벨 또는 애플리케이션 레벨 표준들에 대해 통상적인 방식들을 포함하는, 다른 방식들이 또한 이용가능하다:
Figure pct00100
SDP(session description protocol), 예를 들어, RFC들에 설명되고 RTP(Real-time Transport Protocol) 송신과 함께 사용되는 바와 같은, 세션 공지 및 세션 초대의 목적을 위한 멀티미디어 통신 세션들을 설명하기 위한 포맷.
예를 들어, DASH에서 사용되고 HTTP를 통해 송신되는 것과 같은, DASH MPD(Media Presentation Description) 디스크립터들, 디스크립터는 콘텐츠 표현에 추가적인 특성을 제공하기 위한 표현 또는 표현들의 모음에 연관됨.
예를 들어, RTP 스트리밍 동안 사용되는 바와 같은, RTP 헤더 확장들, 및/또는
예를 들어, OMAF에서 사용되는 것과 같은 그리고 일부 사양들에서 '아톰(atom)들'로도 알려진 고유 유형 식별자 및 길이에 의해 정의되는 객체 지향 구축 블록들인 박스들을 사용하는, ISO 기반 미디어 파일 포맷.
당업자에게 명백한 바와 같이, 실시예는, 예를 들어 저장되거나 송신될 수 있는 정보를 반송하도록 포맷화된 다양한 신호를 생성할 수 있다. 예를 들어, 정보는 방법을 수행하기 위한 명령어들, 또는 기술된 구현예들 중 하나에 의해 생성된 데이터를 포함할 수 있다. 예를 들어, 신호는 기술된 실시예의 비트스트림을 전달하도록 포맷화될 수 있다. 이러한 신호는, 예를 들어, 전자기파로서(예: 스펙트럼의 무선 주파수 부분을 사용함) 또는 기저대역 신호로서 포맷화될 수 있다. 포맷화는, 예를 들어, 데이터 스트림을 인코딩하는 것, 및 인코딩된 데이터 스트림으로 캐리어를 변조하는 것을 포함할 수 있다. 신호가 반송하는 정보는, 예를 들어, 아날로그 또는 디지털 정보일 수 있다. 신호는, 알려진 바와 같이, 다양한 상이한 유선 또는 무선 링크를 통해 송신될 수 있다. 신호는 프로세서 판독가능 매체 상에 저장될 수 있다.
다수의 실시예들을 설명한다. 이들 실시예들의 특징부들은 다양한 청구항 카테고리들 및 유형들에 걸쳐 단독으로 또는 임의의 조합으로 제공될 수 있다. 또한, 실시예들은 다양한 청구항 카테고리들 및 유형들에 걸쳐 단독으로 또는 임의의 조합으로 하기의 특징, 디바이스, 또는 양태 중 하나 이상을 포함할 수 있다:
디코더 및/또는 인코더에서 인터/인트라/IBC 예측을 위한 공간 국소 조명 보상을 적용하여, 동일한 픽처 내의 상이한 블록들 사이의 조명 불일치를 보상함:
o 공간적 LIC가 블록 상에 적용되는지 또는 그렇지 않은지를 나타내기 위해 인터/인트라/IBC 블록에 대해 CU 레벨의 공간적 LIC 플래그 spatial_lic_flag가 정의됨;
o 인터/인트라/IBC 블록에 대해 공간적 LIC가 적용될 때(spatial_lic_flag가 참임), 그것은 스케일링 인자 α 및 오프셋 β를 사용하는, 공간 조명 변화들에 대한 선형 모델을 사용함;
o 공간적 LIC 파라미터들의 추정은, 동일한 픽처 내부의 현재 블록의 이웃하는 재구성된 샘플들(현재 템플릿)과 공간 기준 블록의 대응하여 이웃하는 재구성된 샘플들(기준 템플릿) 사이의 차이를 최소화함으로써 도출됨;
o 최종 예측 샘플들을 획득하기 위해 인터/인트라/IBC 예측 샘플들에 대해 공간적 LIC 파라미터들을 적용함.
디코더 및/또는 인코더에서 CU 레벨의 공간적 LIC 플래그 spatial_lic_flag를 도출함:
o 인터 블록의 경우, 공간적 LIC 플래그는, 병합 모드에서의 모션 정보 복사와 유사한 방식으로, 그것이 병합 모드로 코딩되는 경우 이웃 블록들로부터 복사되고; 그렇지 않은 경우, 공간적 LIC 플래그는 시그널링됨;
o 인트라/IBC 블록의 경우, 공간적 LIC 플래그는 시그널링됨;
o 인트라 블록의 경우, 공간적 LIC 플래그는 일부 인트라 예측 모드들(즉, DC 및 평면 모드들)에 대해서만 제시됨;
디코더 및/또는 인코더에서 공간적 LIC 파라미터 추정을 위한 기준 블록으로서 사용되는 공간 이웃 블록을 선택함:
o 인터/인트라 블록의 경우, 최근접 재구성된 공간 이웃 블록이 기준 블록으로서 선택됨;
o 이용가능한 2개의 최근접 공간 이웃 블록들(상부 및 좌측)만을 고려함;
o 상부 및 좌측 공간 이웃 블록들 둘 모두가 이용가능한 경우, 그들 둘 모두가 기준 블록들로서 적용될 수 있음;
o 상부 및 좌측 공간 이웃 블록들 둘 모두가 이용가능하고 하나의 기준 블록만이 적용되는 경우, 어느 것이 적용되는지를 나타내기 위해 플래그 lic_refblk_flag를 추가함;
o 이용가능한 5개의 최근접 공간 이웃 블록들(상부/좌측/상부-우측/하단-좌측/상부-좌측)만을 고려함;
o 모든 이들 5개의 공간 이웃 블록들이 이용가능하고 하나의 기준 블록만이 적용되는 경우, 어느 것이 적용되는지를 나타내기 위해 플래그 lic_refblk_index를 추가함;
o 인터 블록의 경우, 일단 5개의 공간 후보들 중 하나가 최상의 MVP 후보로서 선택되면, 선택된 공간 MVP 후보가 위치되는 블록이 기준 블록으로서 선택됨;
o 인트라 블록의 경우, 기준 블록 선택은 인트라 예측 모드에 기초함;
o 미리정의된 검색 영역 내에서, 현재 블록으로부터 공간 기준 블록으로의 변위를 나타내기 위한 공간적 LIC 검색 벡터가 비트스트림으로 시그널링되는 동안, 일부 비-최근접 공간 이웃 블록들을 고려함;
o IBC 블록의 경우, 인트라 복사에 사용되는 기준 블록이 기준 블록으로서 선택됨.
디코더 및/또는 인코더에서의 공간적 LIC 파라미터들 추정을 위해, 이웃하는 재구성된 샘플들에 의해 구성되는 템플릿을 생성함:
o 인터/인트라/IBC 블록의 경우, 템플릿은 현재/기준 블록의 좌측 및 상부 경계들에 위치된 이웃하는 재구성된 샘플들에 의해 구성됨;
o 인터/인트라/IBC 블록의 경우, 템플릿은 현재/기준 블록의 다수의 좌측 및 상부 기준 라인들에 위치된 이웃하는 재구성된 샘플들에 의해 구성됨;
o 인터/인트라/IBC 블록의 경우, 템플릿은 현재/기준 블록의 다수의 좌측 및 상부 기준 라인들에 위치된 이웃하는 재구성된 샘플들에 의해 구성됨;
o 인트라 블록의 경우, 템플릿은 현재/기준 블록의 전체 이웃하는 재구성된 블록들에 의해 구성됨.
디코더에서 적용할 공간적 LIC 프로세스에 대한 정보를 시그널링함.
템플릿으로부터 적용할 공간적 LIC 프로세스에 대한 정보를 도출함 - 도출하는 것은 디코더 및/또는 인코더에서 적용됨 -.
변환 인덱스들과 같은, 디코더가, 사용할 공간적 LIC 프로세스를 식별할 수 있게 하는 시그널링 신택스 요소들에 삽입함.
이들 신택스 요소들에 기초하여, 디코더에서 적용할 적어도 하나의 공간적 LIC 프로세스를 선택함.
디코더에서 적어도 하나의 예측을 도출하기 위해 수정된 공간적 LIC를 적용함.
기술된 신택스 요소, 또는 이들의 변형 중 하나 이상을 포함하는 비트스트림 또는 신호.
기술된 실시예들 중 임의의 것에 따라 생성된 신택스 이송 정보를 포함하는 비트스트림 또는 신호.
디코더가 인코더에 의해 사용된 것에 대응하는 방식으로 공간적 LIC 프로세스를 적용할 수 있게 하는 시그널링 신택스 요소들에 삽입함.
기술된 신택스 요소, 또는 이들의 변형 중 하나 이상을 포함하는 비트스트림 또는 신호를 생성하고/하거나 송신하고/하거나 수신하고/하거나 디코딩함.
기술된 실시예들 중 임의의 것에 따라 생성하고/하거나 송신하고/하거나 수신하고/하거나 디코딩함.
기술된 실시예들 중 임의의 것에 따른 방법, 프로세스, 장치, 명령어들을 저장하는 매체, 데이터를 저장하는 매체, 또는 신호.
기술된 실시예들 중 임의의 것에 따라 예측을 수정하도록 적응된 공간적 LIC 프로세스를 수행하는 TV, 셋톱 박스, 셀 폰, 태블릿, 또는 다른 전자 디바이스.
기술된 실시예들 중 임의의 것에 따라 예측을 수정하도록 적응된 공간적 LIC 프로세스를 수행하고, (예컨대, 모니터, 스크린, 또는 다른 유형의 디스플레이를 사용하여) 생성된 이미지를 디스플레이하는 TV, 셋톱 박스, 셀 폰, 태블릿, 또는 다른 전자 디바이스.
기술된 실시예들 중 임의의 것에 따라 인코딩된 이미지를 포함하는 신호를 수신하기 위해 채널을 (예컨대, 동조기를 사용하여) 선택하고, 예측을 수정하도록 적응된 공간적 LIC 프로세스를 수행하는 TV, 셋톱박스, 셀 폰, 태블릿, 또는 다른 전자 디바이스.
기술된 실시예들 중 임의의 것에 따라 인코딩된 이미지를 포함하는 신호를 무선으로 (예컨대, 안테나를 사용하여) 수신하고, 예측을 수정하도록 적응된 공간적 LIC 프로세스를 수행하는 TV, 셋톱박스, 셀 폰, 태블릿, 또는 다른 전자 디바이스.

Claims (26)

  1. 비디오 디코딩을 위한 방법으로서,
    픽처에서 디코딩되고 있는 현재 블록에 대해, 공간적으로 이웃하는 재구성된 샘플들 및 적어도 하나의 공간 기준 블록의 대응하는 공간적으로 이웃하는 재구성된 샘플들에 기초하여 국소 조명 보상을 위한 파라미터들을 결정하는 단계; 및
    상기 결정된 파라미터들에 기초하는 국소 조명 보상을 사용하여 상기 현재 블록을 디코딩하는 단계를 포함하고,
    상기 적어도 하나의 공간 기준 블록은 상기 픽처 내의 상기 현재 블록의 공간적으로 이웃하는 블록인, 방법.
  2. 비디오 디코딩을 위한 장치로서, 하나 이상의 프로세서들 및 적어도 하나의 메모리를 포함하고, 상기 하나 이상의 프로세서들은,
    픽처에서 디코딩되고 있는 현재 블록에 대해, 공간적으로 이웃하는 재구성된 샘플들 및 적어도 하나의 공간 기준 블록의 대응하는 공간적으로 이웃하는 재구성된 샘플들에 기초하여 국소 조명 보상을 위한 파라미터들을 결정하도록; 그리고
    상기 결정된 파라미터들에 기초하는 국소 조명 보상을 사용하여 상기 현재 블록을 디코딩하도록 구성되고,
    상기 적어도 하나의 공간 기준 블록은 상기 픽처 내의 상기 현재 블록의 공간적으로 이웃하는 블록인, 장치.
  3. 비디오 인코딩을 포함하는 방법으로서,
    픽처에서 인코딩되고 있는 현재 블록에 대해, 상기 현재 블록의 공간적으로 이웃하는 재구성된 샘플들 및 적어도 하나의 공간 기준 블록의 대응하는 공간적으로 이웃하는 재구성된 샘플들에 기초하여 국소 조명 보상을 위한 파라미터들을 결정하는 단계; 및
    상기 결정된 파라미터들에 기초하는 국소 조명 보상을 사용하여 상기 현재 블록을 인코딩하는 단계를 포함하고,
    상기 적어도 하나의 공간 기준 블록은 상기 픽처 내의 상기 현재 블록의 공간적으로 이웃하는 블록인, 방법.
  4. 비디오 인코딩을 위한 장치로서, 하나 이상의 프로세서들 및 적어도 하나의 메모리를 포함하고, 상기 하나 이상의 프로세서들은,
    픽처에서 인코딩되고 있는 현재 블록에 대해, 공간적으로 이웃하는 재구성된 샘플들 및 적어도 하나의 공간 기준 블록의 대응하는 공간적으로 이웃하는 재구성된 샘플들에 기초하여 국소 조명 보상을 위한 파라미터들을 결정하도록; 그리고
    상기 결정된 파라미터들에 기초하는 국소 조명 보상을 사용하여 상기 현재 블록을 인코딩하도록 구성되고,
    상기 적어도 하나의 공간 기준 블록은 상기 픽처 내의 상기 현재 블록의 공간적으로 이웃하는 블록인, 장치.
  5. 제1항 또는 제3항의 방법, 또는 제2항 또는 제4항의 장치에 있어서, 상기 국소 조명 보상이 상기 현재 블록 상에 적용되는지 또는 그렇지 않은지를 나타내는 신택스 요소를 결정하는 것을 추가로 포함하는, 방법 또는 장치.
  6. 제1항, 제3항, 제5항 중 어느 한 항의 방법, 또는 제2항, 제4항, 제5항 중 어느 한 항의 장치에 있어서, 상기 현재 블록은 인터 예측으로 코딩되는, 방법 또는 장치.
  7. 제6항의 방법 또는 제6항의 장치에 있어서, 상기 적어도 하나의 공간 기준 블록은 상부 이웃 블록 및 좌측 이웃 블록 중 임의의 것인, 방법 또는 장치.
  8. 제6항의 방법 또는 제6항의 장치에 있어서, 상기 적어도 하나의 공간 기준 블록은 상부 이웃 블록(B0), 좌측 이웃 블록(A0), 상부-우측 이웃 블록(B1), 하단-좌측 이웃 블록(A1) 및 상부-좌측 이웃 블록(B2) 중 임의의 것인, 방법 또는 장치.
  9. 제6항의 방법 또는 제6항의 장치에 있어서, 상기 적어도 하나의 공간 기준 블록은 모션 벡터 예측기(motion vector predictor, MVP) 후보로서 선택된 이웃 블록인, 방법 또는 장치.
  10. 제1항, 제3항, 제5항 중 어느 한 항의 방법, 또는 제2항, 제4항, 제5항 중 어느 한 항의 장치에 있어서, 상기 현재 블록은 인트라 예측으로 코딩되는, 방법 또는 장치.
  11. 제10항의 방법 또는 제10항의 장치에 있어서, 상기 적어도 하나의 공간 기준 블록은 상부 이웃 블록 및 좌측 이웃 블록 중 임의의 것인, 방법 또는 장치.
  12. 제10항의 방법 또는 제10항의 장치에 있어서, 상기 적어도 하나의 공간 기준 블록은 상부 이웃 블록, 좌측 이웃 블록, 상부-우측 이웃 블록, 하단-좌측 이웃 블록 및 상부-좌측 이웃 블록 중 임의의 것인, 방법 또는 장치.
  13. 제11항 또는 제12항의 방법, 또는 제11항 또는 제12항의 장치에 있어서, 상기 적어도 하나의 공간 기준 블록은 상기 현재 블록을 코딩하는 데 사용되는 인트라 예측 모드에 응답하는, 방법 또는 장치.
  14. 제1항, 제3항, 제5항 중 어느 한 항의 방법, 또는 제2항, 제4항, 제5항 중 어느 한 항의 장치에 있어서, 상기 현재 블록은 인트라 블록 복사 예측으로 코딩되는, 방법 또는 장치.
  15. 제14항의 방법 또는 제14항의 장치에 있어서, 상기 적어도 하나의 공간 기준 블록은 인트라 블록 복사 기준 블록으로서 선택된 상기 이웃 블록을 포함하는, 방법 또는 장치.
  16. 제1항, 제3항, 제6항, 제10항, 제14항 중 어느 한 항의 방법 또는 제2항, 제4항, 제6항, 제10항, 제14항 중 어느 한 항의 장치에 있어서, 상기 이웃하는 재구성된 샘플들은 상기 현재 블록 및 적어도 하나의 공간 기준 블록의 좌측 및 상부 경계들에 위치되는, 방법 또는 장치.
  17. 제1항, 제3항, 제6항, 제10항, 제14항 중 어느 한 항의 방법 또는 제2항, 제4항, 제6항, 제10항, 제14항 중 어느 한 항의 장치에 있어서, 상기 이웃하는 재구성된 샘플들은 상기 현재 블록 및 적어도 하나의 기준 블록의 다수의 좌측 및 상부 기준 라인들에 위치되는, 방법 또는 장치.
  18. 제1항, 제3항, 제6항, 제10항, 제14항 중 어느 한 항의 방법 또는 제2항, 제4항, 제6항, 제10항, 제14항 중 어느 한 항의 장치에 있어서, 상기 이웃하는 재구성된 샘플들은 상기 현재 블록 및 적어도 하나의 기준 블록의 전체 재구성된 블록들에 위치되는, 방법 또는 장치.
  19. 제1항, 제3항, 제6항, 제10항 중 어느 한 항의 방법 또는 제2항, 제4항, 제6항, 제10항 중 어느 한 항의 장치에 있어서, 상기 적어도 하나의 공간 기준 블록은 제1 공간 기준 블록 및 제2 공간 기준 블록을 포함하고, 상기 제1 공간 기준 블록의 공간적으로 이웃하는 재구성된 샘플들 및 상기 제2 공간 기준 블록의 공간적으로 이웃하는 재구성된 샘플들은 상기 국소 조명 보상의 파라미터들을 결정하기 위해 평균화되는, 방법 또는 장치.
  20. 제1항, 제3항, 제7항, 제8항, 제11항, 제12항 중 어느 한 항의 방법 또는 제2항, 제4항, 제7항, 제8항, 제11항, 제12항 중 어느 한 항의 장치에 있어서, 상기 국소 조명 보상의 파라미터들을 결정하는 데 어느 공간 기준 블록이 사용되는지를 나타내는 신택스 요소를 결정하는 것을 추가로 포함하는, 방법 또는 장치.
  21. 제1항, 제2항, 제5항 내지 제10항 중 어느 한 항의 방법에 따라 생성된 이미지 블록을 나타내는 인코딩된 데이터를 갖는 비일시적 프로그램 저장 디바이스.
  22. 제6항, 제8항, 제9항 중 어느 한 항에 따른 방법을 수행하기 위해 컴퓨터에 의해 실행가능한 명령어들의 프로그램을 유형적으로 구현하는, 컴퓨터에 의해 판독가능한, 비일시적 프로그램 저장 디바이스.
  23. 비디오 디코딩을 위한 방법으로서,
    픽처에서 디코딩되고 있는 현재 블록에 대해, 공간적으로 이웃하는 재구성된 샘플들 및 적어도 하나의 기준 블록의 대응하는 공간적으로 이웃하는 재구성된 샘플들에 기초하여 국소 조명 보상을 위한 파라미터들을 결정하는 단계; 및
    상기 결정된 파라미터들에 기초하는 국소 조명 보상을 사용하여 상기 현재 블록을 디코딩하는 단계를 포함하고,
    상기 이웃하는 재구성된 샘플들은 상기 현재 블록 및 적어도 하나의 기준 블록의 다수의 좌측 및 상부 기준 라인들에 위치되는, 방법.
  24. 비디오 디코딩을 위한 장치로서, 하나 이상의 프로세서들 및 적어도 하나의 메모리를 포함하고, 상기 하나 이상의 프로세서들은,
    픽처에서 디코딩되고 있는 현재 블록에 대해, 공간적으로 이웃하는 재구성된 샘플들 및 적어도 하나의 기준 블록의 대응하는 공간적으로 이웃하는 재구성된 샘플들에 기초하여 국소 조명 보상을 위한 파라미터들을 결정하도록; 그리고
    상기 결정된 파라미터들에 기초하는 국소 조명 보상을 사용하여 상기 현재 블록을 디코딩하도록 구성되고,
    상기 이웃하는 재구성된 샘플들은 상기 현재 블록 및 적어도 하나의 기준 블록의 다수의 좌측 및 상부 기준 라인들에 위치되는, 장치.
  25. 비디오 인코딩을 포함하는 방법으로서,
    픽처에서 인코딩되고 있는 현재 블록에 대해, 상기 현재 블록의 공간적으로 이웃하는 재구성된 샘플들 및 적어도 하나의 기준 블록의 대응하는 공간적으로 이웃하는 재구성된 샘플들에 기초하여 국소 조명 보상을 위한 파라미터들을 결정하는 단계; 및
    상기 결정된 파라미터들에 기초하는 국소 조명 보상을 사용하여 상기 현재 블록을 인코딩하는 단계를 포함하고,
    상기 이웃하는 재구성된 샘플들은 상기 현재 블록 및 적어도 하나의 기준 블록의 다수의 좌측 및 상부 기준 라인들에 위치되는, 방법.
  26. 비디오 인코딩을 위한 장치로서, 하나 이상의 프로세서들 및 적어도 하나의 메모리를 포함하고, 상기 하나 이상의 프로세서들은,
    픽처에서 인코딩되고 있는 현재 블록에 대해, 공간적으로 이웃하는 재구성된 샘플들 및 적어도 하나의 기준 블록의 대응하는 공간적으로 이웃하는 재구성된 샘플들에 기초하여 국소 조명 보상을 위한 파라미터들을 결정하도록; 그리고
    상기 결정된 파라미터들에 기초하는 국소 조명 보상을 사용하여 상기 현재 블록을 인코딩하도록 구성되고,
    상기 이웃하는 재구성된 샘플들은 상기 현재 블록 및 적어도 하나의 기준 블록의 다수의 좌측 및 상부 기준 라인들에 위치되는, 장치.
KR1020237029885A 2021-02-08 2022-01-27 공간 국소 조명 보상 KR20230145097A (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
EP21305170 2021-02-08
EP21305170.9 2021-02-08
PCT/EP2022/051924 WO2022167322A1 (en) 2021-02-08 2022-01-27 Spatial local illumination compensation

Publications (1)

Publication Number Publication Date
KR20230145097A true KR20230145097A (ko) 2023-10-17

Family

ID=74701440

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020237029885A KR20230145097A (ko) 2021-02-08 2022-01-27 공간 국소 조명 보상

Country Status (8)

Country Link
US (1) US20240214553A1 (ko)
EP (1) EP4289141A1 (ko)
JP (1) JP2024505900A (ko)
KR (1) KR20230145097A (ko)
CN (1) CN117597933A (ko)
AU (1) AU2022216783A1 (ko)
MX (1) MX2023008942A (ko)
WO (1) WO2022167322A1 (ko)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2024104420A1 (en) * 2022-11-16 2024-05-23 Douyin Vision Co., Ltd. Improvements for illumination compensation in video coding
WO2024108169A1 (en) * 2022-11-18 2024-05-23 Comcast Cable Communications, Llc Improved prediction with local illumination compensation
WO2024120356A1 (en) * 2022-12-05 2024-06-13 Douyin Vision Co., Ltd. Method, apparatus, and medium for video processing

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2232877B1 (en) * 2008-01-10 2018-08-08 Thomson Licensing DTV Methods and apparatus for illumination compensation of intra-predicted video
US11368676B2 (en) * 2018-01-16 2022-06-21 Vid Scale, Inc. Motion compensated bi-prediction based on local illumination compensation
US10419754B1 (en) * 2018-04-02 2019-09-17 Tencent America LLC Method and apparatus for video decoding using multiple line intra prediction
WO2020084508A1 (en) * 2018-10-23 2020-04-30 Beijing Bytedance Network Technology Co., Ltd. Harmonization between local illumination compensation and inter prediction coding

Also Published As

Publication number Publication date
JP2024505900A (ja) 2024-02-08
MX2023008942A (es) 2023-09-18
AU2022216783A1 (en) 2023-08-17
WO2022167322A1 (en) 2022-08-11
US20240214553A1 (en) 2024-06-27
EP4289141A1 (en) 2023-12-13
CN117597933A (zh) 2024-02-23

Similar Documents

Publication Publication Date Title
US20220159277A1 (en) Method and apparatus for video encoding and decoding with subblock based local illumination compensation
EP3744092A1 (en) Method and apparatus for video encoding and decoding based on a linear model responsive to neighboring samples
US20220078405A1 (en) Simplifications of coding modes based on neighboring samples dependent parametric models
KR20230145097A (ko) 공간 국소 조명 보상
JP7502278B2 (ja) 双予測を使用するビデオエンコーディングおよびデコーディングのための方法および装置
US20230232037A1 (en) Unified process and syntax for generalized prediction in video coding/decoding
JP2024059909A (ja) 画像エンコーディングおよびデコーディングのための方法およびデバイス
US11991389B2 (en) Method and apparatus for video encoding and decoding with optical flow based on boundary smoothed motion compensation
US20240171731A1 (en) Geometric partitions with switchable interpolation filter
EP3815373A1 (en) Virtual temporal affine candidates
WO2020112451A1 (en) Combining affine candidates
WO2020060757A1 (en) Translational and affine candidates in a unified list
US20240205386A1 (en) Intra block copy with template matching for video encoding and decoding
US20220264147A1 (en) Hmvc for affine and sbtmvp motion vector prediction modes
WO2024033116A1 (en) Geometric partition mode boundary prediction
KR20240099324A (ko) 기준 픽처 리샘플링을 사용한 비디오 인코딩 및 디코딩
WO2024078896A1 (en) Template type selection for video coding and decoding
WO2023194106A1 (en) Motion information parameters propagation based on intra prediction direction
WO2023194103A1 (en) Temporal intra mode derivation
KR20240088795A (ko) 디코더 측 화면내 모드 도출에서의 각도 이산화 개선
WO2024083500A1 (en) Methods and apparatuses for padding reference samples
WO2023052156A1 (en) Improving the angle discretization in decoder side intra mode derivation
WO2023186752A1 (en) Methods and apparatuses for encoding/decoding a video