KR20230170004A - 넓은 구역에 대한 공간 조명 보상 - Google Patents

넓은 구역에 대한 공간 조명 보상 Download PDF

Info

Publication number
KR20230170004A
KR20230170004A KR1020237036883A KR20237036883A KR20230170004A KR 20230170004 A KR20230170004 A KR 20230170004A KR 1020237036883 A KR1020237036883 A KR 1020237036883A KR 20237036883 A KR20237036883 A KR 20237036883A KR 20230170004 A KR20230170004 A KR 20230170004A
Authority
KR
South Korea
Prior art keywords
region
current
predictor
residual
prediction
Prior art date
Application number
KR1020237036883A
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 KR20230170004A publication Critical patent/KR20230170004A/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/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/136Incoming video signal characteristics or properties
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/11Selection of coding mode or of prediction mode among a plurality of spatial predictive coding modes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/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/119Adaptive subdivision aspects, e.g. subdivision of a picture into rectangular or non-rectangular coding blocks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/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/146Data rate or code amount at the encoder output
    • H04N19/147Data rate or code amount at the encoder output according to rate distortion criteria
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/157Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
    • 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/172Methods 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 picture, frame or field
    • 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/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
    • 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/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • H04N19/96Tree coding, e.g. quad-tree coding

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

재구성 방법으로서, 공간 예측에 기초하여 픽처의 현재 영역에 대한 영역 예측자를 획득하는 단계(811); 현재 영역의 하위 영역들로의 파티셔닝을 나타내는 정보를 획득하는 단계(812); 인트라 예측 잔차 및 인트라 예측 모드에 기초하여 적어도 하나의 잔차 하위 영역을 재구성하고(813), 적어도 하나의 재구성된 잔차 하위 영역으로부터 재구성된 잔차 영역을 획득하는 단계 - 적어도 하나의 하위 영역을 재구성하기 위해 사용되는 현재 영역 외부의 모든 기준 샘플들은 적어도 하나의 잔차 하위 영역을 재구성하기 전에 0으로 설정됨 -; 및 영역 예측자로부터 획득된 최종 예측자 및 재구성된 잔차 영역을 추가함으로써 재구성된 잔차 영역 및 영역 예측자에 기초하여 현재 영역을 재구성하는 단계(814)를 포함하는, 재구성 방법.

Description

넓은 구역에 대한 공간 조명 보상
본 실시예들 중 적어도 하나는 일반적으로 공간 조명 보상에 기초한 예측 모드를 사용하여 픽처들 내의 넓은 구역들을 인코딩 또는 디코딩하기 위한 방법 및 장치에 관한 것이다.
높은 압축 효율을 달성하기 위해, 비디오 코딩 스킴들은 통상적으로, 비디오 콘텐츠에서 공간적 및 시간적 리던던시(redundancy)들을 레버리징(leveraging)하기 위해 예측들 및 변환들을 채용한다. 인코딩 동안, 비디오 콘텐츠의 픽처들은 샘플들(즉, 픽셀들)의 블록들로 분할되고, 이러한 블록들은 이어서, 하기에서 오리지널 서브-블록들로 불리는 하나 이상의 서브-블록들로 파티셔닝된다. 이어서, 인트라 또는 인터 예측이 인트라 또는 인터 이미지 상관관계들을 활용하기 위해 각각의 서브-블록에 적용된다. 어떤 예측 방법(인트라 또는 인터)이 사용되었든, 예측자 서브-블록이 각각의 오리지널 서브-블록에 대해 결정된다. 이어서, 예측 에러 서브-블록, 예측 잔차 서브-블록, 또는 간단히 잔차 블록으로 종종 표시되는, 오리지널 서브-블록과 예측자 서브-블록 사이의 차이를 표현하는 서브-블록이, 인코딩된 비디오 스트림을 생성하도록 변환되고 양자화되고 엔트로피 코딩된다. 비디오를 재구성하기 위해, 압축된 데이터는 변환, 양자화, 및 엔트로피 코딩에 대응하는 역 프로세스들에 의해 디코딩된다.
MPEG-1(ISO/CEI-11172), MPEG-2(ISO/CEI 13818-2), 또는 MPEG-4/AVC(ISO/CEI 14496-10)와 같은 최초의 비디오 압축 방법은 주로 카메라에 의해 획득된 픽처와 같은 자연 콘텐츠를 핸들링하도록 설계되었다. 이제 인코딩할 픽처 콘텐츠는 자연 콘텐츠, 자연 콘텐츠와 합성 콘텐츠의 혼합물, 및 완전 합성 콘텐츠이다. 비디오 게임으로부터의 픽처, 가상현실 콘텐츠와 같은 합성 콘텐츠는 자연 콘텐츠에서 결코 또는 거의 만날 수 없는 특성을 가질 수 있다. 예를 들어, 합성 비디오 콘텐츠는 몇몇 픽처들 내부에 얼마간의 점진적인 조명 변화를 포함할 수 있다. 그러한 경우에, 인코딩할 블록은 공간 위치에 따라 점진적으로 변화하는 루마 값들을 갖는 몇몇 배경 콘텐츠, 및 전경 정보로서 간주될 수 있는 몇몇 로컬 특정 텍스처 요소들을 포함할 수 있다. 기존 도구는 얼마간의 공간적 매끄러운 루마/크로마 변화와 특정 로컬 객체/텍스처를 혼합하는 넓은 이미지 구역을 적절히 핸들링할 수 없다. 이것은 최초의 비디오 압축 방법에 대해서는 문제가 아니었지만, 개발 중인 비디오 압축, 이를테면 예를 들어 JVET(Joint Video Experts Team)로서 알려진 ITU-T 및 ISO/IEC 전문가들의 공동 협력팀에 의해 개발 중인 VVC(Versatile Video Coding)라는 타이들의 국제 표준에 대해서는, 또는 표준 HEVC(ISO/IEC 23008-2 - MPEG-H Part 2, High Efficiency Video Coding / ITU-T H.265))에서는, 또는 미래의 비디오 압축 방법에 대해서는 상황이 다른데, 그 이유는 이러한 방법들이 합성 콘텐츠를 핸들링해야 할 것이기 때문이다.
상기 문제를 극복할 수 있게 하는 솔루션을 제안하는 것이 바람직하다. 특히, 공간적 위치에 따라 점진적으로 변화하는 루마/크로마 값, 및 전경 정보로 간주될 수 있는 몇몇 로컬 특정 텍스처 요소를 포함하는 합성 콘텐츠를 효율적으로 핸들링할 수 있게 하는 인코딩 도구를 제안하는 것이 바람직하다.
제1 태양에서, 본 실시예들 중 하나 이상은 재구성 방법으로서, 공간 예측에 기초하여 픽처의 현재 영역에 대한 영역 예측자를 획득하는 단계; 현재 영역의 하위 영역들로의 파티셔닝을 나타내는 정보를 획득하는 단계; 인트라 예측 잔차 및 인트라 예측 모드에 기초하여 적어도 하나의 잔차 하위 영역을 재구성하고, 적어도 하나의 재구성된 잔차 하위 영역으로부터 재구성된 잔차 영역을 획득하는 단계 - 적어도 하나의 하위 영역을 재구성하기 위해 사용되는 현재 영역 외부의 모든 기준 샘플들은 적어도 하나의 잔차 하위 영역을 재구성하기 전에 0으로 설정됨 -; 및 영역 예측자로부터 획득된 최종 예측자 및 재구성된 잔차 영역을 추가함으로써 재구성된 잔차 영역 및 영역 예측자에 기초하여 현재 영역을 재구성하는 단계를 포함하는, 재구성 방법을 제공한다.
실시예에서, 방법은 영역 예측자를 획득하기 위해 적용되는 예측 모드를 나타내는 정보를 획득하는 단계를 포함한다.
실시예에서, 영역은 코딩 트리 유닛; 또는, 미리 정의된 고정 크기의 블록; 또는, 미리 정의된 고정 크기보다 더 큰 크기의 블록; 또는, 미리 정의된 값보다 더 낮은 코딩 트리 유닛에서의 깊이 값을 갖는 영역이다.
실시예에서, 영역 예측자는 복수의 선형 예측들로부터 획득되며, 각각의 선형 예측은 현재 영역과 공간적으로 이웃하는 픽처의 적어도 하나의 영역으로부터 획득된 픽처에서의 조명 변화들을 나타내는 파라미터들에 기초한다.
실시예에서, 영역 예측자는 수평 선형 예측과 수직 선형 예측의 결합에 기초하여 획득되며, 각각의 선형 예측은 현재 영역과 이웃하는 재구성된 영역들의 샘플들 및 재구성되지 않은 영역에 속하는 적어도 하나의 샘플을 사용한다.
실시예에서, 재구성되지 않은 영역에 속하는 샘플은 현재 영역 내의 또는 현재 영역 밖의 현재 영역의 우하 샘플이다.
실시예에서, 방법은 현재 영역에 대한 시간 예측자를 획득하는 단계를 포함하며, 최종 예측자는 영역 예측자와 시간 예측자의 가중 평균이다.
실시예에서, 재구성된 잔차 영역은 현재 영역을 재구성하기 위해 사용되기 전에 역 재성형 프로세스(inverse reshaping process)를 겪는다.
제2 태양에서, 본 실시예들 중 하나 이상은 픽처의 현재 영역을 디코딩하기 위한 방법으로서, 현재 영역의 레벨에서 또는 현재 영역의 하위 영역의 레벨에서 현재 영역을 재구성하기 위한 제1 태양에 따른 재구성 방법의 사용을 시그널링하는 신택스 요소를 비트스트림에서 파싱하는 단계를 포함하는, 디코딩하기 위한 방법을 제공한다.
실시예에서, 재구성되지 않은 영역에 속하는 샘플을 나타내는 정보가 비트스트림으로부터 획득된다.
제3 태양에서, 본 실시예들 중 하나 이상은 예측 방법으로서, 픽처의 현재 영역에 대한 영역 예측자를 획득하는 단계; 영역 예측자로부터 획득된 최종 예측자를 현재 영역으로부터 빼는 것에 의해 현재 영역에 대한 잔차 영역을 획득하는 단계; 잔차 영역을 잔차 하위 영역들로 파티셔닝하는 단계; 및, 적어도 하나의 잔차 하위 영역을 인트라 예측하는 단계 - 잔차 영역의 적어도 하나의 샘플을 인트라 예측하기 위해 사용되는 영역 외부의 모든 기준 샘플들은 적어도 하나의 잔차 하위 영역을 인트라 예측하기 전에 0으로 설정됨 - 를 포함하는, 예측 방법을 제공한다.
실시예에서, 영역은 코딩 트리 유닛; 또는, 미리 정의된 고정 크기의 블록; 또는, 미리 정의된 고정 크기보다 더 큰 크기의 블록; 또는, 미리 정의된 값보다 더 낮은 코딩 트리 유닛에서의 깊이 값을 갖는 영역이다.
실시예에서, 영역 예측자는 복수의 선형 예측들로부터 획득되며, 각각의 선형 예측은 현재 영역과 공간적으로 이웃하는 픽처의 적어도 하나의 영역으로부터 획득된 픽처에서의 조명 변화들을 나타내는 파라미터들에 기초한다.
실시예에서, 영역 예측자는 수평 선형 예측과 수직 선형 예측의 결합에 기초하여 획득되며, 각각의 선형 예측은 현재 영역과 이웃하는 재구성된 영역들의 샘플들 및 재구성되지 않은 영역에 속하는 적어도 하나의 샘플을 사용한다.
실시예에서, 재구성되지 않은 영역에 속하는 샘플은 현재 영역 내의 또는 현재 영역 밖의 현재 영역의 우하 샘플이다.
실시예에서, 방법은 현재 영역에 대한 시간 예측자를 획득하는 단계를 포함하며, 최종 예측자는 영역 예측자와 시간 예측자의 가중 평균이다.
실시예에서, 잔차 영역은 적어도 하나의 잔차 하위 영역의 인트라 예측 전에 재성형 프로세스를 겪는다.
제4 태양에서, 본 실시예들 중 하나 이상은 픽처의 현재 영역을 인코딩하기 위한 방법으로서, 현재 영역의 레벨에서 또는 현재 영역의 하위 영역의 레벨에서 현재 영역을 인코딩하기 위한 제1 태양에 따른 예측 방법의 사용을 지정하는 신택스 요소를 비트스트림에서 시그널링하는 단계를 포함하는, 인코딩하기 위한 방법을 제공한다.
실시예에서, 재구성되지 않은 영역에 속하는 샘플을 나타내는 정보가 비트스트림에서 시그널링된다.
실시예에서, 방법은 영역 예측자를 획득하기 위해 적용되는 예측 모드를 나타내는 정보를 비트스트림에서 시그널링하는 단계를 포함한다.
제5 태양에서, 본 실시예들 중 하나 이상은 글로벌 및 로컬 예측을 결합하는 예측 모드를 사용하여 예측된 픽처의 현재 영역을 재구성하기 위한 재구성 디바이스로서, 전자 회로부를 포함하며, 전자 회로부는,
공간 예측에 기초하여 현재 영역에 대한 영역 예측자를 획득하고;
현재 영역의 하위 영역들로의 파티셔닝을 나타내는 정보를 획득하고;
인트라 예측 잔차 및 인트라 예측 모드에 기초하여 적어도 하나의 잔차 하위 영역을 재구성하고, 적어도 하나의 재구성된 잔차 하위 영역으로부터 재구성된 잔차 영역을 획득하고 - 적어도 하나의 하위 영역을 재구성하기 위해 사용되는 현재 영역 외부의 모든 기준 샘플들은 적어도 하나의 잔차 하위 영역을 재구성하기 전에 0으로 설정됨 -;
영역 예측자로부터 획득된 최종 예측자 및 재구성된 잔차 영역을 추가함으로써 재구성된 잔차 영역 및 영역 예측자에 기초하여 현재 영역을 재구성하도록 적응되는, 재구성 디바이스를 제공한다.
실시예에서, 전자 회로부는 영역 예측자를 획득하기 위해 적용되는 예측 모드를 나타내는 정보를 획득하도록 추가로 적응된다.
실시예에서, 영역은 코딩 트리 유닛; 또는, 미리 정의된 고정 크기의 블록; 또는, 미리 정의된 고정 크기보다 더 큰 크기의 블록; 또는, 미리 정의된 값보다 더 낮은 코딩 트리 유닛에서의 깊이 값을 갖는 영역이다.
실시예에서, 영역 예측자는 복수의 선형 예측들로부터 획득되며, 각각의 선형 예측은 현재 영역과 공간적으로 이웃하는 픽처의 적어도 하나의 영역으로부터 획득된 픽처에서의 조명 변화들을 나타내는 파라미터들에 기초한다.
실시예에서, 영역 예측자는 수평 선형 예측과 수직 선형 예측의 결합에 기초하여 획득되며, 각각의 선형 예측은 현재 영역과 이웃하는 재구성된 영역들의 샘플들 및 재구성되지 않은 영역에 속하는 적어도 하나의 샘플을 사용한다.
실시예에서, 재구성되지 않은 영역에 속하는 샘플은 현재 영역 내의 또는 현재 영역 밖의 현재 영역의 우하 샘플이다.
실시예에서, 전자 회로부는 현재 영역에 대한 시간 예측자를 획득하도록 추가로 적응되고, 최종 예측자는 영역 예측자와 시간 예측자의 가중 평균이다.
실시예에서, 재구성된 잔차 영역은 현재 영역을 재구성하기 위해 사용되기 전에 역 재성형 프로세스를 겪는다.
실시예에서, 전자 회로부는 현재 영역의 레벨에서 또는 현재 영역의 하위 영역의 레벨에서 글로벌 및 로컬 예측을 결합하는 모드의 사용을 시그널링하는 신택스 요소를 비트스트림에서 파싱하도록 추가로 적응된다.
실시예에서, 재구성되지 않은 영역에 속하는 샘플을 나타내는 정보가 비트스트림으로부터 획득된다.
제6 태양에서, 본 실시예들 중 하나 이상은 글로벌 및 로컬 예측을 결합하는 예측 모드에 따라 픽처의 현재 영역을 예측하기 위한 예측 디바이스로서, 전자 회로부를 포함하며, 전자 회로부는,
현재 영역에 대한 영역 예측자를 획득하고;
영역 예측자로부터 획득된 최종 예측자를 현재 영역으로부터 빼는 것에 의해 현재 영역에 대한 잔차 영역을 획득하고;
잔차 영역을 잔차 하위 영역들로 파티셔닝하고;
적어도 하나의 잔차 하위 영역을 인트라 예측하도록 적응되며, 잔차 영역의 적어도 하나의 샘플을 인트라 예측하기 위해 사용되는 영역 외부의 모든 기준 샘플들은 적어도 하나의 잔차 하위 영역을 인트라 예측하기 전에 0으로 설정되는, 예측 디바이스를 제공한다.
실시예에서, 영역은 코딩 트리 유닛; 또는, 미리 정의된 고정 크기의 블록; 또는, 미리 정의된 고정 크기보다 더 큰 크기의 블록; 또는, 미리 정의된 값보다 더 낮은 코딩 트리 유닛에서의 깊이 값을 갖는 영역이다.
실시예에서, 영역 예측자는 복수의 선형 예측들로부터 획득되며, 각각의 선형 예측은 현재 영역과 공간적으로 이웃하는 픽처의 적어도 하나의 영역으로부터 획득된 픽처에서의 조명 변화들을 나타내는 파라미터들에 기초한다.
실시예에서, 영역 예측자는 수평 선형 예측과 수직 선형 예측의 결합에 기초하여 획득되며, 각각의 선형 예측은 현재 영역과 이웃하는 재구성된 영역들의 샘플들 및 재구성되지 않은 영역에 속하는 적어도 하나의 샘플을 사용한다.
실시예에서, 재구성되지 않은 영역에 속하는 샘플은 현재 영역 내의 또는 현재 영역 밖의 현재 영역의 우하 샘플이다.
실시예에서, 전자 회로부는 현재 영역에 대한 시간 예측자를 획득하도록 추가로 적응되고, 최종 예측자는 영역 예측자와 시간 예측자의 가중 평균이다.
실시예에서, 잔차 영역은 적어도 하나의 잔차 하위 영역의 인트라 예측 전에 재성형 프로세스를 겪는다.
실시예에서, 전자 회로부는 현재 영역의 레벨에서 또는 현재 영역의 하위 영역의 레벨에서 글로벌 및 로컬 예측을 결합하는 예측 모드의 사용을 지정하는 신택스 요소를 비트스트림에서 시그널링하도록 추가로 적응된다.
실시예에서, 재구성되지 않은 영역에 속하는 샘플을 나타내는 정보가 비트스트림에서 시그널링된다.
실시예에서, 전자 회로부는 영역 예측자를 획득하기 위해 적용되는 예측 모드를 나타내는 정보를 비트스트림에서 시그널링하도록 추가로 적응된다.
제7 태양에서, 본 실시예들 중 하나 이상은 제5 또는 제6 태양에 따른 디바이스를 포함하는 장치를 제공한다.
제8 태양에서, 본 실시예들 중 하나 이상은 제3 또는 제4 태양의 방법에 의해, 또는 제6 태양의 디바이스에 의해, 또는 제7 태양의 장치에 의해 생성된 신호를 제공한다.
제9 태양에서, 본 실시예들 중 하나 이상은 제1 태양 내지 제4 태양 중 한 태양에 따른 방법을 구현하기 위한 프로그램 코드 명령어들을 포함하는 컴퓨터 프로그램을 제공한다.
제10 태양에서, 본 실시예들 중 하나 이상은 제1 태양 내지 제4 태양 중 한 태양에 따른 방법을 구현하기 위한 프로그램 코드 명령어들을 저장하는 비일시적 정보 저장 매체를 제공한다.
도 1은 실시예가 구현될 수 있는 맥락의 예를 설명한다.
도 2는 오리지널 비디오의 픽셀의 픽처가 겪는 파티셔닝의 예를 개략적으로 예시한다.
도 3은 비디오 스트림을 인코딩하기 위한 방법을 개략적으로 도시한다.
도 4는 인코딩된 비디오 스트림을 디코딩하기 위한 방법을 개략적으로 도시한다.
도 5a는 다양한 태양 및 실시예가 구현되는 인코딩 모듈 또는 디코딩 모듈을 구현할 수 있는 처리 모듈의 하드웨어 아키텍처의 예를 개략적으로 예시한다.
도 5b는 다양한 태양 및 실시예가 구현되는 제1 시스템의 예의 블록도를 예시한다.
도 5c는 다양한 태양 및 실시예가 구현되는 제2 시스템의 예의 블록도를 예시한다.
도 6은 평면 모드를 개략적으로 예시한다.
도 7은 넓은 픽처 구역에 걸친 공간적 점진적 루마/크로마 변화와 특정 로컬 객체/텍스처를 혼합하는 영역을 핸들링하도록 적응된 새로운 예측 모드의 원리를 예시한다.
도 8a는 결합된 글로벌 로컬 예측(CGLP) 모드에 따라 픽처의 현재 영역을 예측하기 위한 고레벨 프로세스의 예를 나타낸다.
도 8b는 결합된 글로벌 로컬 예측(CGLP) 모드에 따라 픽처의 현재 영역을 재구성하기 위한 고레벨 프로세스의 예를 나타낸다.
도 9a는 영역 레벨 인코딩 프로세스의 예를 개략적으로 도시한다.
도 9b는 영역 레벨 디코딩 프로세스의 예를 개략적으로 도시한다.
도 9c는 빠른 결정 프로세스를 사용하는 영역 레벨 인코딩 프로세스의 예를 개략적으로 도시한다.
도 10은 조명 예측 기반 실시예를 개략적으로 예시한다.
도 11a는 CU 레벨 신호 전달을 갖는 실시예에 대응하는 CTU에 적용되는 디코딩 프로세스의 예를 예시한다.
도 11b는 CU 레벨 신호 전달을 갖는 실시예에 대응하는 CTU에 적용되는 인코딩 프로세스의 예를 예시한다.
도 12는 수정된 평면 모드를 개략적으로 도시한다.
도 13a는 시간 예측을 갖는 실시예에 부합하는 디코딩 프로세스의 예를 개략적으로 도시한다.
도 13b는 시간 예측을 갖는 실시예에 부합하는 인코딩 프로세스의 예를 개략적으로 도시한다.
실시예의 다음의 예는 VVC와 유사한 비디오 포맷의 맥락에서 설명된다. 그러나, 이러한 실시예는 VVC에 상응하는 비디오 코딩/디코딩 방법으로 제한되지 않는다. 이러한 실시예는 특히 임의의 비디오 포맷에 적응된다. 그러한 포맷은 예를 들어 표준 EVC(Essential Video Coding/MPEG-5), AV1 및 VP9를 포함한다.
도 2, 도 3 및 도 4는 비디오 포맷의 예를 소개한다.
도 2는 오리지널 비디오(20)의 픽셀(21)의 픽처가 겪는 파티셔닝의 예를 예시한다. 여기서, 픽셀은 3개의 성분, 즉 1개의 휘도 성분 및 2개의 색차 성분으로 구성된다고 간주된다. 그러나, 단지 휘도 성분 또는 추가 깊이 성분과 같은 더 적거나 더 많은 성분을 포함하는 다른 유형의 픽셀이 가능하다.
픽처는 복수의 코딩 엔티티로 분할된다. 첫째, 도 2에서 참조번호 23에 의해 표현되는 바와 같이, 픽처는 코딩 트리 단위(CTU)로 불리는 블록의 그리드로 분할된다. CTU는 색차 샘플의 2개의 상응하는 블록과 함께 휘도 샘플의 N × N 블록으로 이루어진다. N은 일반적으로, 예를 들어, "128"의 최대 값을 갖는 2의 거듭제곱이다. 둘째, 픽처는 CTU의 하나 이상의 그룹으로 분할된다. 예를 들어, 그것은 하나 이상의 타일 행들 및 타일 열로 분할될 수 있으며, 타일은 픽처의 직사각형 영역을 커버하는 CTU의 시퀀스이다. 일부 경우에서, 타일은 하나 이상의 브릭(brick)으로 분할될 수 있으며, 이들 각각은 타일 내의 CTU의 적어도 하나의 행으로 이루어진다. 타일 및 브릭의 개념을 넘어, 슬라이스로 불리는, 다른 인코딩 엔티티가 존재하는데, 이는 픽처의 적어도 하나의 타일 또는 타일의 적어도 하나의 브릭을 포함할 수 있다.
도 2의 예에서, 참조번호 22에 의해 표현되는 바와 같이, 픽처(21)는 래스터-스캔 슬라이스 모드의 3개의 슬라이스 S1, S2 및 S3으로 분할되며, 각각은 복수의 타일을 포함하고(미표현), 각각의 타일은 단지 하나의 브릭을 포함한다.
도 2에서 참조번호 24에 의해 표현된 바와 같이, CTU는 코딩 단위(CU)로 불리는 하나 이상의 서브-블록의 계층구조적 트리의 형태로 파티셔닝될 수 있다. CTU는 계층구조적 트리의 루트(즉, 부모 노드)이고, 복수의 CU(즉, 자식 노드)로 파티셔닝될 수 있다. 각각의 CU는 그것이 더 작은 CU로 추가로 파티셔닝되지 않은 경우에 계층구조적 트리의 리프가 되거나, 또는 그것이 추가로 파티셔닝되는 경우에 더 작은 CU(즉, 자식 노드)의 부모 노드가 된다.
도 2의 예에서, CTU(14)는 먼저 사진 트리 유형 파티셔닝을 사용하여 "4"개의 정사각형 CU로 파티셔닝된다. 좌상 CU는, 그것이 추가로 파티셔닝되지 않기 때문에, 즉 그것이 임의의 다른 CU의 부모 노드가 아니기 때문에, 계층구조적 트리의 리프이다. 우상 CU는 사진 트리 유형 파티셔닝을 다시 사용하여 "4"개의 더 작은 정사각형 CU로 추가로 파티셔닝된다. 우하 CU는 이진 트리 유형 파티셔닝을 사용하여 "2"개의 직사각형 CU로 수직으로 파티셔닝된다. 좌하 CU는 삼진 트리 유형 파티셔닝을 사용하여 "3"개의 직사각형 CU로 수직으로 파티셔닝된다.
픽처의 코딩 동안, 파티셔닝은 적응적이며, 각각의 CTU는 CTU 기준의 압축 효율을 최적화하기 위해 파티셔닝된다.
HEVC에서 예측 단위(PU) 및 변환 단위(TU)의 개념이 등장했다. 실제로, HEVC에서, 예측(즉, PU) 및 변환(즉, TU)에 사용되는 코딩 엔티티는 CU의 세분일 수 있다. 예를 들어, 도 2에 표현된 바와 같이, 크기 2N × 2N의 CU는 크기 N × 2N 또는 크기 2N × N의 PU(2411)로 분할될 수 있다. 또한, 상기 CU는 크기 N × N의 "4"개의 TU(2412)로 또는 크기 의 "16"개의 TU로 분할될 수 있다.
일부 특정 경우를 제외하고, VVC에서, TU와 PU의 프론티어가 CU의 프론티어에 정렬됨을 알 수 있다. 결과적으로, CU는 일반적으로 하나의 TU 및 하나의 PU를 포함한다.
본 출원에서, 용어 "블록" 또는 "픽처 블록"은 CTU, CU, PU 및 TU 중 어느 하나를 지칭하는 데 사용될 수 있다. 또한, 용어 "블록" 또는 "픽처 블록"은 H.264/AVC에서 또는 다른 비디오 코딩 표준에서 지정된 바와 같이 매크로블록, 파티션, 및 서브-블록을 지칭하기 위해, 그리고 더 일반적으로, 수많은 크기의 샘플의 어레이를 지칭하기 위해 사용될 수 있다.
본 출원에서, 용어 "재구성된" 및 "디코딩된"은 상호교환가능하게 사용될 수 있고, 용어 "픽셀" 및 "샘플"은 상호교환가능하게 사용될 수 있으며, 용어 "이미지", "픽처", "서브픽처", "슬라이스" 및 "프레임"은 상호교환가능하게 사용될 수 있다. 반드시 그렇지는 않지만, 일반적으로, 용어 "재구성된"은 인코더 측에서 사용되는 반면, "디코딩된"은 디코더 측에서 사용된다.
도 3은 인코딩 모듈에 의해 실행되는 비디오 스트림을 인코딩하기 위한 방법을 개략적으로 도시한다. 이러한 인코딩하기 위한 방법의 변형이 고려되지만, 도 3의 인코딩하기 위한 방법은 모든 예상되는 변형을 기술하지 않으면서 명확성을 위해 후술된다.
인코딩되기 전에, 오리지널 비디오 시퀀스의 현재 오리지널 이미지는 전처리를 거칠 수 있다. 예를 들어, 단계 301에서, (예를 들어, 하나의 컬러 성분의 히스토그램 등화를 사용하여) 압축에 대해 보다 탄력적인 신호 분포를 얻기 위해 컬러 변환(예를 들어, RGB 4:4:4로부터 YCbCr 4:2:0으로의 변환)이 현재 오리지널 픽처에 적용되거나, 현재 오리지널 픽처 성분에 리매핑이 적용된다.
전처리된 픽처의 인코딩은, 도 2과 관련하여 설명된 바와 같이, 단계 302 동안 전처리된 픽처의 파티셔닝으로 시작한다. 따라서, 전처리된 픽처는 CTU, CU, PU, TU 등으로 파티셔닝된다. 각각의 블록에 대해, 인코딩 모듈은 인트라 예측과 인터 예측 사이에서 코딩 모드를 결정한다.
인트라 예측은, 인트라 예측 방법에 따라, 단계 303 동안, 코딩될 현재 블록의 인과적 부근에 위치한 재구성된 블록의 픽셀로부터 도출된 예측 블록으로부터 현재 블록의 픽셀을 예측하는 것으로 이루어진다. 인트라 예측의 결과는 부근에서 블록의 어느 픽처를 사용할지를 나타내는 예측 방향, 및 현재 블록과 예측 블록 사이의 차이의 계산에 기인한 잔차 블록이다.
몇몇 인트라 예측 모드는 매끄러운 저주파수 예측 블록을 생성하며, 이는 몇몇 매끄러운 공간 샘플 변화를 포함할 수 있는 블록을 예측하도록 적응된다. 이러한 인트라 예측 모드는 DC 및 평면 인트라 예측 모드이다.
DC 예측 모드는 일정한 루마 또는 크로마 값을 갖는 예측 블록을 생성한다. 이러한 값은 현재 블록 주위에(좌상) 위치한 재구성된 샘플들의 평균과 동일하며, 이러한 블록의 인트라 예측에 사용된다.
평면 모드는 블록 경계를 따라 연속성을 보존할 수 있는 매끄러운 예측에 있다. 그것은 본질적으로 2개의 선형 예측의 평균으로 정의된다(평면 모드의 그래픽 표현에 대한 도 6 참조). 제1 수평 선형 예측은 좌측 기준 샘플 값과, 고려된 블록의 우상 기준 샘플 T와 동일한 우측 기준 샘플 값 사이의 가중 평균에 있다. 이것은 도 6의 좌측 부분에 대응한다. 도 6의 우측에 도시된 제2 수직 선형 예측은 상부 기준 샘플 값과, 블록의 좌하 기준 샘플 L과 동일한 하부 기준 샘플 값 사이의 가중 평균이다. 현재 블록의 최종 평면 예측은 수평 및 수직 선형 예측들의 평균과 동일하다.
위에 요약된 인트라 예측 프로세스는 하기에서 정규 인트라 예측 프로세스로 불린다.
인터 예측은 현재 픽처를 선행하거나 후행하는 픽처(이러한 픽처는 기준 픽처로 지칭됨)의, 기준 블록으로 지칭되는, 픽셀 블록으로부터 현재 블록의 픽셀을 예측하는 것으로 이루어진다. 인터 예측 방법에 따른 현재 블록의 코딩 동안, 유사도 기준에 따라, 현재 블록에 가장 가까운 기준 픽처의 블록이 모션 추정 단계 304에 의해 결정된다. 단계 304 동안, 기준 픽처 내의 기준 블록의 위치를 나타내는 모션 벡터가 결정된다. 모션 추정에 의해 결정되는 모션 벡터는 현재 블록과 기준 블록 사이의 차이의 형태로 잔차 블록이 계산되는 모션 보상 단계 305 동안 사용된다. 제1 비디오 압축 표준에서, 전술된 단방향 인터 예측 모드는 이용가능한 유일한 인터 모드였다. 비디오 압축 표준이 진화함에 따라, 인터 모드의 계열은 유의하게 성장하였고, 이제 많은 상이한 인터 모드를 포함한다. 이러한 인터 예측 모드는 예를 들어 인터 예측 신호를 인트라 예측 신호, 가중 예측 및 로컬 조명 보상(LIC)을 결합하는 CIIP(결합된 인터 및 인트라 예측) 모드를 포함한다. 가중 예측은 기준 픽처에 글로벌 조명 변화를 적용하여 기준 픽처와 시간적 예측 픽처 사이에 존재할 수 있는 조명 변화를 보상한다. 동일한 선형 조명 변화 모델이 전체 픽처에 적용된다. LIC(로컬 조명 변화)에서, 현재 블록과 그것의 기준 블록 사이의 조명 변화는 현재 블록 주위의(좌상) 템플릿 영역 및 그것의 기준 블록 주위의 대응하는 템플릿 영역에 기초하여 추정된다.
위에서 설명된 인터 예측 프로세스는 하기에서 정규 인터 예측 프로세스로 불린다.
선택 단계 306 동안, 테스트되는 예측 모드(인트라 예측 모드, 인터 예측 모드) 중에서, 속도/왜곡 최적화 기준(즉, RDO 기준)에 따라, 압축 성능을 최적화하는 예측 모드가 인코딩 모듈에 의해 선택된다.
예측 모드가 선택될 때, 잔차 블록은 단계 307 동안 변환되고 단계 309 동안 양자화된다.
인코딩 모듈은 변환을 스킵할 수 있고, 변환되지 않은 잔차 신호에 직접 양자화를 적용할 수 있다는 것에 주목한다. 현재 블록이 인트라 예측 모드에 따라 코딩될 때, 예측 방향 및 변환되고 양자화된 잔차 블록이 단계 310 동안 엔트로피 인코더에 의해 인코딩된다. 현재 블록이 인터 예측에 따라 인코딩될 때, 적절한 경우, 블록의 모션 벡터는 코딩될 블록 부근에 배치된 재구성된 블록에 상응하는 모션 벡터의 세트로부터 선택된 예측 벡터로부터 예측된다. 모션 정보는 다음으로, 단계 310 동안 엔트로피 인코더에 의해 모션 잔차 및 예측 벡터를 식별하기 위한 인덱스의 형태로 인코딩된다. 변환되고 양자화된 잔차 블록은 단계 310 동안 엔트로피 인코더에 의해 인코딩된다. 인코딩 모듈은 변환 및 양자화 둘 모두를 바이패스할 수 있는데, 즉, 엔트로피 인코딩이 변환 또는 양자화 프로세스의 적용 없이 잔차에 적용된다는 것에 주목한다. 엔트로피 인코딩의 결과는 인코딩된 비디오 스트림(311)에 삽입된다.
양자화 단계 309 후에, 현재 블록은 그 블록에 상응하는 픽셀이 미래의 예측에 사용될 수 있도록 재구성된다. 이러한 재구성 단계는 예측 루프로도 지칭된다. 따라서, 역양자화가 단계 312 동안 변환되고 양자화된 잔차 블록에 적용되고, 역변환이 단계 313 동안 적용된다. 단계 314 동안 획득된 블록에 사용되는 예측 모드에 따라, 블록의 예측 블록이 재구성된다. 현재 블록이 인터 예측 모드에 따라 인코딩되는 경우, 인코딩 모듈은, 적절한 경우, 단계 316 동안, 현재 블록의 기준 블록을 식별하기 위해 현재 블록의 모션 벡터를 사용하여 모션 보상을 적용한다. 현재 블록이 인트라 예측 모드에 따라 인코딩되는 경우, 단계 315 동안, 현재 블록에 해당하는 예측 방향은 현재 블록의 기준 블록을 재구성하기 위해 사용된다. 기준 블록 및 재구성된 잔차 블록은 재구성된 현재 블록을 획득하기 위해 추가된다.
재구성 이후, 인코딩 아티팩트를 감소시키도록 의도된 인루프 필터링이, 단계 317 동안, 재구성된 블록에 적용된다. 이러한 필터링은 인루프 필터링으로 불리는데, 이러한 필터링이 예측 루프내에서 발생하여, 인코더와 동일한 기준 이미지를 디코더에서 획득하고 이에 따라 인코딩과 디코딩 프로세스 사이의 드리프트를 피하기 때문이다. 앞서 언급된 바와 같이, 인루프 필터링 도구는 예를 들어 디블록킹 필터링, SAO(샘플 적응적 오프셋), ALF(적응적 루프 필터)를 포함한다.
블록이 재구성될 때, 그것은 단계 318 동안, 일반적으로 디코딩된 픽처 버퍼(DPB)라고 불리는 상응하는 재구성된 이미지의 메모리(319)에 저장된 재구성된 픽처 내로 삽입된다. 이와 같이 저장된 재구성된 이미지는 이어서 코딩될 다른 이미지에 대한 기준 이미지로서의 역할을 할 수 있다.
SEI(보충 향상 정보) 메시지와 같은 메타데이터가 인코딩된 비디오 스트림(311)에 부착될 수 있다. 예를 들어, AVC, HEVC 또는 VVC와 같은 표준들에서 정의된 바와 같은 SEI 메시지는 비디오 스트림에 연관되고, 비디오 스트림에 대한 정보를 제공하는 메타데이터를 포함하는 데이터 컨테이너이다.
위에서 알 수 있는 바와 같이, 설명된 인코딩 도구들 중 어느 것도 넓은 픽처 구역에 걸친 공간적 점진적 루마/크로마 변화와 특정 로컬 객체/텍스처를 혼합하는 영역을 적절히 핸들링할 수 없다. 이것은 특히 다음의 경우이다:
Figure pct00002
DC 및 평면 예측 모드. 실제로, 그러한 구역에 속하는 CTU를 처리하는 인코더는 이러한 CTU를 작은 블록들로 파티셔닝할 것이고, 각각의 블록에 대해, 인트라 예측에 평면 모드를 사용하거나 - 이는 매끄러운 공간 조명 변화를 캡처할 것임 -, 어떤 특정 로컬 객체를 코딩하는 데 더 효율적인 다른 인트라 예측 모드를 사용하기로 결정할 것이다.
CIIP 모드: CIIP 모드는 객체의 시간 예측을 수행하는 것이 가능할 수 있는 반면, 인트라 예측은 블록에 포함된 매끄러운 텍스처 부분을 예측하려고 시도할 수 있다. 그러나, 그러한 결합된 예측은 각각의 CU에 대해 시그널링되어야 할 것이며, 이는 잠재적으로 상당한 레이트 비용으로 이어진다. 더욱이, CIIP 모드는 인트라 픽처에 적용되지 않는다. 더욱이, 그것은 현재 픽처와 그것의 기준 픽처 사이에 존재할 수 있는 조명 변화를 핸들링하지 않는다.
가중 예측 및 LIC는 인터 픽처에 대해 적용되지만 인트라 픽처에 대해서는 적용되지 않는다.
도 4는 디코딩 모듈에 의해 실행되는 도 3과 관련하여 설명된 방법에 따라 인코딩되는 인코딩된 비디오 스트림(311)을 디코딩하기 위한 방법을 개략적으로 도시한다. 이러한 디코딩하기 위한 방법의 변형이 고려되지만, 도 4의 디코딩하기 위한 방법은 모든 예상되는 변형을 기술하지 않으면서 명확성을 위해 후술된다.
디코딩은 블록별로 행해진다. 현재 블록에 대해, 그것은 단계 410 동안 현재 블록의 엔트로피 디코딩으로 시작한다. 엔트로피 디코딩은 블록의 예측 모드를 획득할 수 있게 한다.
블록이 인터 예측 모드에 따라 인코딩된 경우, 엔트로피 디코딩은, 적절한 경우, 예측 벡터 인덱스, 모션 잔차 및 잔차 블록을 얻을 수 있게 한다. 단계 408 동안, 예측 벡터 인덱스 및 모션 잔차를 사용하여 현재 블록에 대해 모션 벡터가 재구성된다.
블록이 인트라 예측 모드에 따라 인코딩되었다면, 엔트로피 디코딩은 예측 방향 및 잔차 블록을 획득할 수 있게 한다. 디코딩 모듈에 의해 구현된 단계 412, 413, 414, 415, 416 및 417은 모든 측면에서 인코딩 모듈에 의해 구현된 단계 412, 413, 414, 415, 416 및 417과 각각 동일하다. 디코딩된 블록은 디코딩된 픽처에 저장되고, 디코딩된 픽처는 단계 418에서 DPB(419)에 저장된다. 디코딩 모듈이 주어진 픽처를 디코딩할 때, DPB(419)에 저장된 픽처는 상기 주어진 이미지의 인코딩 동안 인코딩 모듈에 의해 DPB(319)에 저장된 픽처와 동일하다. 디코딩된 픽처는 또한 디코딩 모듈에 의해 출력되어, 예를 들어 디스플레이될 수 있다. RPR이 활성화될 때, 기준 픽처로서 사용되는 픽처의 샘플(즉, 그의 적어도 일부)은 단계 420에서 예측된 픽처의 해상도로 리샘플링된다. 리샘플링 단계 420와 모션 보상 단계 416은 일부 구현에서 하나의 단일 샘플 보간 단계로 조합될 수 있다.
디코딩된 이미지는 단계 421에서 후처리를 추가로 겪을 수 있다. 후처리는 역 컬러 변환(예를 들어, YCbCr 4:2:0로부터 RGB 4:4:4로의 변환), 단계 301의 전처리에서 수행된 리매핑 프로세스의 역을 수행하는 역 매핑, 예를 들어 SEI 메시지에 제공된 필터 파라미터에 기초하여 재구성된 픽처를 개선하기 위한 포스트-필터링 및/또는 예를 들어 출력 이미지를 조정하여 제약을 디스플레이하기 위한 리샘플링을 포함할 수 있다.
도 1은 하기의 실시예가 구현될 수 있는 맥락의 예를 설명한다.
도 1에서, 시스템(10)은 통신 채널(11)을 사용하여 비디오 스트림을 시스템(12)으로 송신한다.
시스템(10)은 예를 들어 도 3과 관련하여 설명된 인코딩 방법에 부합하는 게임 콘솔(100) 및 인코딩 모듈(101)을 포함한다. 게임 콘솔(100)은 합성 이미지를 생성하고 이러한 합성 이미지를 인코딩 모듈(101)로 전달한다. 인코딩 모듈(101)은 비디오 스트림에 이러한 합성 이미지를 인코딩한다.
시스템(12)은, 예를 들어, 디코딩 모듈(120) 및 디스플레이 디바이스(121)를 포함한다. 디코딩 모듈(120)은 도 4와 관련하여 설명된 디코딩 방법에 부합한다. 디코딩 모듈(120)은 비디오 스트림을 디코딩하고 디코딩된 비디오 스트림을 디스플레이 디바이스(121)로 전달한다.
통신 채널(11)은 유선(예를 들어, 인터넷 또는 이더넷) 또는 무선(예를 들어, WiFi, 3G, 4G 또는 5G) 네트워크 링크이다.
도 5a는 하기에서 설명되는 상이한 태양들 및 실시예들에 따라 수정된 도 3의 인코딩하기 위한 방법 및 도 4의 디코딩하기 위한 방법을 각각 구현할 수 있는 인코딩 모듈(101) 또는 디코딩 모듈(120)을 구현할 수 있는 처리 모듈(500)의 하드웨어 아키텍처의 예를 개략적으로 예시한다. 통신 버스(5005)에 의해 접속되는, 처리 모듈(500)은 다음을 포함한다: 비제한적인 예로서, 하나 이상의 마이크로프로세서, 범용 컴퓨터, 특수 목적 컴퓨터, 및 멀티코어 아키텍처에 기초한 프로세서를 포괄하는 프로세서 또는 CPU(중앙 처리 장치)(5000); 랜덤 액세스 메모리(RAM)(5001); 판독 전용 메모리(ROM)(5002); 전기적으로 소거가능한 프로그래밍가능 판독 전용 메모리(EEPROM), 판독 전용 메모리(ROM), 프로그래밍가능 판독 전용 메모리(PROM), 랜덤 액세스 메모리(RAM), 동적 랜덤 액세스 메모리(DRAM), 정적 랜덤 액세스 메모리(SRAM), 플래시, 자기 디스크 드라이브, 및/또는 광학 디스크 드라이브를 포함하지만 이들로 제한되지 않는 비휘발성 메모리 및/또는 휘발성 메모리, 또는 저장 매체 판독기, 예컨대 SD(secure digital) 카드 판독기 및/또는 하드 디스크 드라이브(HDD) 및/또는 네트워크 액세스가능 저장 디바이스를 포함할 수 있는 저장 유닛(5003); 다른 모듈, 디바이스, 또는 장비와 데이터를 교환하기 위한 적어도 하나의 통신 인터페이스(5004). 통신 인터페이스(5004)는, 통신 채널을 통해 데이터를 송신하고 수신하도록 구성된 송수신기를 포함할 수 있지만, 이로 제한되지 않는다. 통신 인터페이스(5004)는, 모뎀 또는 네트워크 카드를 포함할 수 있지만, 이로 제한되지 않는다.
처리 모듈(500)이 디코딩 모듈을 구현하는 경우, 통신 인터페이스(5004)는, 예를 들어, 처리 모듈(500)이 인코딩된 비디오 스트림들을 수신하고 디코딩된 픽처들의 시퀀스를 제공할 수 있게 한다.
처리 모듈(500)이 인코딩 모듈을 구현하는 경우, 통신 인터페이스(5004)는 예를 들어 처리 모듈(500)이 (예를 들어, 게임 콘솔(100)에 의해 제공되는) 인코딩할 오리지널 픽처 데이터의 시퀀스를 수신하고 인코딩된 비디오 스트림을 제공할 수 있게 한다.
프로세서(5000)는 ROM(5002)으로부터, 외부 메모리(미도시)로부터, 저장 매체로부터, 또는 통신 네트워크로부터 RAM(5001) 내에 로딩된 명령어를 실행할 수 있다. 처리 모듈(500)에 전력이 공급될 때, 프로세서(5000)는 RAM(5001)으로부터의 명령어를 판독하고 이들을 실행할 수 있다. 이러한 명령어들은, 예를 들어, 도 4와 관련하여 기술된 바와 같은 디코딩 방법 또는 도 3과 관련하여 기술된 바와 같은 인코딩 방법의 프로세서(5000)에 의한 구현을 야기하는 컴퓨터 프로그램을 형성하고, 디코딩 및 인코딩 방법들은 본 문서에서 후술되는 다양한 태양들 및 실시예들을 포함한다.
상기 인코딩 또는 디코딩 방법의 알고리즘 및 단계의 전부 또는 일부는 프로그래밍가능 기계, 예컨대 DSP(digital signal processor) 또는 마이크로컨트롤러에 의한 명령어의 세트의 실행에 의해 소프트웨어 형태로 구현될 수 있거나, 또는 기계 또는 전용 컴포넌트, 예컨대 FPGA(field-programmable gate array) 또는 ASIC(application-specific integrated circuit)에 의해 하드웨어 형태로 구현될 수 있다.
도 5c는 다양한 태양 및 실시예가 구현되는 시스템(12)의 예의 블록도를 도시한다. 시스템(12)은 후술되는 다양한 컴포넌트를 포함하는 디바이스로서 실시될 수 있고, 본 문서에 기술된 태양 및 실시예 중 하나 이상을 수행하도록 구성된다. 그러한 디바이스의 예는, 다양한 전자 디바이스, 예컨대 개인용 컴퓨터, 랩톱 컴퓨터, 스마트폰, 태블릿 컴퓨터, 디지털 멀티미디어 셋톱 박스, 디지털 텔레비전 수신기, 개인용 비디오 녹화 시스템, 커넥티드 가전, 및 머리 장착 디스플레이를 포함하지만, 이들로 제한되지 않는다. 시스템(12)의 요소들은, 단독으로 또는 조합하여, 단일 집적 회로(IC), 다수의 IC들, 및/또는 별개의 컴포넌트들에서 구현될 수 있다. 예를 들어, 적어도 하나의 실시예에서, 시스템(12)은 디코딩 모듈을 구현하는 하나의 처리 모듈(500)을 포함한다. 다양한 실시예들에서, 시스템(12)은, 예를 들어, 통신 버스를 통해 또는 전용 입력 및/또는 출력 포트들을 통해 하나 이상의 다른 시스템들, 또는 다른 전자 디바이스들에 통신가능하게 결합된다. 다양한 실시예들에서, 시스템(12)은 본 문서에 기술된 태양들 중 하나 이상을 구현하도록 구성된다.
처리 모듈(500)에 대한 입력은 블록(531)에 나타낸 바와 같은 다양한 입력 모듈을 통해 제공될 수 있다. 그러한 입력 모듈은, (i) 예를 들어, 브로드캐스터에 의해 무선으로 송신된 무선 주파수(RF) 신호를 수신하는 RF 모듈, (ii) 컴포넌트(COMP) 입력 모듈(또는 COMP 입력 모듈의 세트), (iii) 범용 직렬 버스(USB) 입력 모듈, 및/또는 (iv) 고화질 멀티미디어 인터페이스(HDMI) 입력 모듈을 포함하지만, 이들로 제한되지 않는다. 도 5c에 도시되지 않은 다른 예는 복합 비디오를 포함한다.
다양한 실시예에서, 블록(531)의 입력 모듈은 당업계에 알려진 바와 같은 연관된 각각의 입력 처리 요소를 갖는다. 예를 들어, RF 모듈은, (i) 원하는 주파수를 선택하는 것(신호를 선택하는 것, 또는 신호를 주파수의 대역으로 대역-제한하는 것으로도 지칭됨), (ii) 선택된 신호를 하향 변환하는 것, (iii) (예를 들어) 특정 실시예에서 채널로 지칭될 수 있는 신호 주파수 대역을 선택하기 위해 더 좁은 주파수 대역으로 다시 대역-제한하는 것, (iv) 하향 변환되고 대역-제한된 신호를 복조하는 것, (v) 에러 정정을 수행하는 것, 및 (vi) 데이터 패킷의 원하는 스트림을 선택하기 위해 역다중화하는 것에 적합한 요소와 연관될 수 있다. 다양한 실시예의 RF 모듈은 이러한 기능을 수행하기 위한 하나 이상의 요소, 예를 들어, 주파수 선택기, 신호 선택기, 대역-제한기, 채널 선택기, 필터, 하향변환기, 복조기, 에러 정정기, 및 역다중화기를 포함한다. RF 부분은, 예를 들어, 수신된 신호를 더 낮은 주파수(예를 들어, 중간 주파수 또는 기저대역 인근 주파수)로 또는 기저대역으로 하향-변환하는 것을 포함한, 다양한 이들 기능을 수행하는 튜너를 포함할 수 있다. 하나의 셋톱 박스 실시예에서, RF 모듈 및 그의 연관된 입력 처리 요소는 유선(예를 들어, 케이블) 매체를 통해 송신된 RF 신호를 수신하고, 원하는 주파수 대역에 대해 필터링, 하향-변환, 및 다시 필터링함으로써 주파수 선택을 수행한다. 다양한 실시예들은 전술한(및 다른) 요소들의 순서를 재배열하고, 이들 요소들 중 일부를 제거하고/하거나 유사하거나 상이한 기능들을 수행하는 다른 요소들을 추가한다. 요소들을 추가하는 것은, 예를 들어, 증폭기들 및 아날로그-디지털 변환기를 삽입하는 것과 같이, 기존 요소들 사이에 요소들을 삽입하는 것을 포함할 수 있다. 다양한 실시예에서, RF 모듈은 안테나를 포함한다.
추가적으로, USB 및/또는 HDMI 모듈은 USB 및/또는 HDMI 접속을 통해 시스템(12)을 다른 전자 디바이스에 접속하기 위한 각자의 인터페이스 프로세서를 포함할 수 있다. 입력 처리, 예를 들어, 리드 솔로몬 에러 정정의 다양한 태양이, 예를 들어, 필요에 따라, 별개의 입력 처리 IC 내에서 또는 처리 모듈(500) 내에서 구현될 수 있다는 것이 이해되어야 한다. 유사하게, USB 또는 HDMI 인터페이스 처리의 태양이, 필요에 따라, 별개의 인터페이스 IC 내에서 또는 처리 모듈(500) 내에서 구현될 수 있다. 복조된, 에러 정정된, 그리고 역다중화된 스트림이 처리 모듈(500)에 제공된다.
시스템(12)의 다양한 요소가 통합된 하우징 내에 제공될 수 있다. 통합된 하우징 내에서, 다양한 요소는 적합한 접속 배열, 예를 들어, I2C(Inter-IC) 버스, 배선, 및 인쇄 회로 보드를 포함하는, 당업계에 알려진 바와 같은 내부 버스를 사용하여 상호접속되고, 그들 사이에서 데이터를 송신할 수 있다. 예를 들어, 시스템(12)에서, 처리 모듈(500)은 버스(5005)에 의해 상기 시스템(12)의 다른 요소에 상호접속된다.
처리 모듈(500)의 통신 인터페이스(5004)는 시스템(12)이 통신 채널(11) 상에서 통신할 수 있게 한다. 상기에 이미 언급된 바와 같이, 통신 채널(11)은, 예를 들어 유선 및/또는 무선 매체 내에서 구현될 수 있다.
데이터는, 다양한 실시예들에서, Wi-Fi 네트워크, 예를 들어 IEEE 802.11(IEEE는 전기 전자 기술자 협회(Institute of Electrical and Electronics Engineers)를 지칭함)과 같은 무선 네트워크를 사용하여, 시스템(12)에 스트리밍되거나 또는 달리 제공된다. 이러한 실시예들의 Wi-Fi 신호는 Wi-Fi 통신들에 대해 적응된 통신 채널(11) 및 통신 인터페이스(5004)를 통해 수신된다. 이들 실시예들의 통신 채널(11)은 전형적으로, 스트리밍 응용들 및 다른 오버더톱(over-the-top) 통신을 허용하기 위한 인터넷을 포함하는 외부 네트워크들에 대한 액세스를 제공하는 액세스 포인트 또는 라우터에 접속된다. 다른 실시예는 입력 블록(531)의 RF 접속을 사용하여 스트리밍된 데이터를 시스템(12)에 제공한다. 전술한 바와 같이, 다양한 실시예들은 비-스트리밍 방식으로 데이터를 제공한다. 또한, 다양한 실시예들은 Wi-Fi 이외의 무선 네트워크들, 예를 들어 셀룰러 네트워크 또는 블루투스 네트워크를 사용한다.
시스템(12)은 디스플레이 시스템(55), 스피커(56), 및 다른 주변 디바이스(57)를 포함하는 다양한 출력 디바이스에 출력 신호를 제공할 수 있다. 다양한 실시예의 디스플레이 시스템(55)은, 예를 들어, 터치스크린 디스플레이, 유기 발광 다이오드(OLED) 디스플레이, 곡면 디스플레이, 및/또는 폴더블(foldable) 디스플레이 중 하나 이상을 포함한다. 디스플레이(55)는 텔레비전, 태블릿, 랩톱, 휴대폰(모바일 폰), 머리 장착형 디스플레이 또는 다른 디바이스를 위한 것일 수 있다. 디스플레이 시스템(55)은 또한, 도 1에서와 같이 (예를 들어, 스마트폰에서와 같이), 다른 컴포넌트와 통합될 수도 있고, 별개(예를 들어, 랩톱을 위한 외부 모니터)일 수 있다. 실시예들의 다양한 예들에서, 다른 주변 디바이스들(57)은 독립형 디지털 비디오 디스크(또는 디지털 다기능 디스크)(두 용어들 모두에 대해, DVR), 디스크 플레이어, 스테레오 시스템 및/또는 조명 시스템 중 하나 이상을 포함한다. 다양한 실시예들은 시스템(12)의 출력에 기초하여 기능을 제공하는 하나 이상의 주변 디바이스들(57)을 사용한다. 예를 들어, 디스크 플레이어는 시스템(12)의 출력을 재생하는 기능을 수행한다.
다양한 실시예에서, 제어 신호는, 시그널링, 예컨대, AV.Link, CEC(Consumer Electronics Control), 또는 사용자 개입이 있거나 또는 개입 없이 디바이스 대 디바이스 제어를 가능하게 하는 다른 통신 프로토콜을 사용하여 시스템(12)과 디스플레이 시스템(55), 스피커(56), 또는 다른 주변 디바이스(57) 사이에서 통신된다. 출력 디바이스들은 각자의 인터페이스들(532, 533, 534)을 통해 전용 접속들을 거쳐 시스템(12)에 통신가능하게 결합될 수 있다. 대안적으로, 출력 디바이스는 통신 인터페이스(5004)를 통한 통신 채널(11) 또는 통신 인터페이스(5004)를 통한 전용 통신 채널을 사용하여 시스템(12)에 접속될 수 있다. 디스플레이 시스템(55) 및 스피커(56)는, 예를 들어, 텔레비전과 같은 전자 디바이스에서 시스템(12)의 다른 컴포넌트와 단일 유닛으로 통합될 수 있다. 다양한 실시예들에서, 디스플레이 인터페이스(532)는, 예를 들어, 타이밍 제어기(T Con) 칩과 같은 디스플레이 드라이버를 포함한다.
디스플레이 시스템(55) 및 스피커(56)는 대안적으로 다른 컴포넌트들 중 하나 이상과 별개일 수 있다. 디스플레이 시스템(55) 및 스피커(56)가 외부 컴포넌트인 다양한 실시예에서, 출력 신호는, 예를 들어, HDMI 포트, USB 포트, 또는 COMP 출력을 포함하는 전용 출력 접속을 통해 제공될 수 있다.
도 5b는 다양한 태양 및 실시예가 구현되는 시스템(10)의 예의 블록도를 예시한다. 시스템(10)은 시스템(12)과 매우 유사하다. 시스템(10)은 후술되는 다양한 컴포넌트를 포함하는 디바이스로서 실시될 수 있고, 본 문서에 기술된 태양 및 실시예 중 하나 이상을 수행하도록 구성된다. 그러한 디바이스의 예로는 개인용 컴퓨터, 랩톱 컴퓨터, 스마트폰, 태블릿 컴퓨터, 게임 콘솔 및 서버와 같은 다양한 전자 디바이스가 포함되지만, 이에 제한되지 않는다. 시스템(10)의 요소들은, 단독으로 또는 조합하여, 단일 집적 회로(IC), 다수의 IC들, 및/또는 별개의 컴포넌트들에서 구현될 수 있다. 예를 들어, 적어도 하나의 실시예에서, 시스템(10)은 인코딩 모듈을 구현하는 하나의 처리 모듈(500)을 포함한다. 다양한 실시예들에서, 시스템(10)은, 예를 들어, 통신 버스를 통해 또는 전용 입력 및/또는 출력 포트들을 통해 하나 이상의 다른 시스템들, 또는 다른 전자 디바이스들에 통신가능하게 결합된다. 다양한 실시예들에서, 시스템(10)은 본 문서에 기술된 태양들 중 하나 이상을 구현하도록 구성된다.
처리 모듈(500)에 대한 입력은 도 5c와 관련하여 이미 설명된 블록(531)에 나타낸 바와 같은 다양한 입력 모듈을 통해 제공될 수 있다.
시스템(10)의 다양한 요소가 통합된 하우징 내에 제공될 수 있다. 통합된 하우징 내에서, 다양한 요소는 적합한 접속 배열, 예를 들어, I2C(Inter-IC) 버스, 배선, 및 인쇄 회로 보드를 포함하는, 당업계에 알려진 바와 같은 내부 버스를 사용하여 상호접속되고, 그들 사이에서 데이터를 송신할 수 있다. 예를 들어, 시스템(10)에서, 처리 모듈(500)은 버스(5005)에 의해 상기 시스템(10)의 다른 요소에 상호접속된다.
처리 모듈(500)의 통신 인터페이스(5004)는 시스템(500)이 통신 채널(11) 상에서 통신할 수 있게 한다.
도 1의 실시예에서, 게임 콘솔(100) 및 인코딩 모듈(101)은 시스템(10)에 내장된다. 다른 실시예에서, 시스템(100)은 인코딩 모듈(100)만을 포함할 수 있으며, 게임 콘솔은 시스템(10)의 외부에 있다. 그 경우에, 게임 콘솔(100)에 의해 생성된 픽처 데이터는, 다양한 실시예들에서, Wi-Fi 네트워크, 예를 들어 IEEE 802.11(IEEE는 전기 전자 기술자 협회(Institute of Electrical and Electronics Engineers)를 지칭함)과 같은 무선 네트워크를 사용하여, 시스템(10)에 스트리밍되거나 또는 달리 제공된다. 이러한 실시예들의 Wi-Fi 신호는 Wi-Fi 통신들에 대해 적응된 통신 채널(11) 및 통신 인터페이스(5004)를 통해 수신된다. 이들 실시예들의 통신 채널(11)은 전형적으로, 스트리밍 응용들 및 다른 오버더톱(over-the-top) 통신을 허용하기 위한 인터넷을 포함하는 외부 네트워크들에 대한 액세스를 제공하는 액세스 포인트 또는 라우터에 접속된다. 다른 실시예는 입력 블록(531)의 RF 접속을 사용하여 스트리밍된 데이터를 장치(10)에 제공한다.
전술한 바와 같이, 다양한 실시예들은 비-스트리밍 방식으로 데이터를 제공한다. 또한, 다양한 실시예들은 Wi-Fi 이외의 무선 네트워크들, 예를 들어 셀룰러 네트워크 또는 블루투스 네트워크를 사용한다.
제공되는 데이터는 시스템(10)에 접속되거나 시스템(10)에 포함된 픽처 및/또는 오디오 데이터 생성 모듈(예컨대, 도 1의 게임 콘솔(100))에 의해 제공되는 원시 데이터이다.
시스템(10)은 시스템(12)과 같은 출력 신호를 저장 및/또는 디코딩할 수 있는 다양한 출력 디바이스에 출력 신호를 제공할 수 있다.
다양한 구현예들이 디코딩을 수반한다. 본 출원에서 사용되는 바와 같이, "디코딩"은 예를 들어, 수신된 인코딩된 비디오 스트림에 대해 수행되어 디스플레이에 적합한 최종 출력을 생성하는 프로세스의 전부 또는 일부를 포함할 수 있다. 다양한 실시예에서, 그러한 프로세스는 디코더에 의해 전형적으로 수행되는 프로세스 중 하나 이상의 프로세스, 예를 들어, 엔트로피 디코딩, 역양자화, 역변환, 및 예측을 포함한다. 다양한 실시예에서, 그러한 프로세스는 또한 또는 대안적으로 본 출원에 설명된 다양한 구현예의 디코더에 의해 수행되는, 예를 들어 CGLP 모드에 따라 인코딩된 CTU를 디코딩하기 위한 프로세스를 포함한다.
어구 "디코딩 프로세스"가 동작들의 서브세트를 구체적으로 나타내기 위한 것인지, 또는 일반적으로 보다 광의의 디코딩 프로세스를 나타내기 위한 것인지 여부는 특정 설명들의 맥락에 기초하여 명확할 것이며, 당업자에 의해 잘 이해될 것으로 여겨진다.
다양한 구현예들이 인코딩을 수반한다. "디코딩"에 관한 상기의 논의와 유사한 방식으로, 본 출원에서 사용된 바와 같은 "인코딩"은 인코딩된 비디오 스트림을 생성하기 위해, 예를 들어, 입력 비디오 시퀀스에 대해 수행되는 프로세스의 전부 또는 일부를 포괄할 수 있다. 다양한 실시예에서, 그러한 프로세스는 전형적으로 인코더에 의해 수행되는 프로세스, 예를 들어, 파티셔닝, 예측, 변환, 양자화, 및 엔트로피 코딩 중 하나 이상을 포함한다. 다양한 실시예에서, 그러한 프로세스는 또한 또는 대안적으로 본 출원에 설명된 다양한 구현예의 인코더에 의해 수행되는, 예를 들어 CGLP 모드에 따라 CTU를 인코딩하기 위한 프로세스를 포함한다.
어구 "인코딩 프로세스"가 동작들의 서브세트를 구체적으로 나타내기 위한 것인지, 또는 일반적으로 보다 광의의 인코딩 프로세스를 나타내기 위한 것인지 여부는 특정 설명들의 맥락에 기초하여 명확할 것이며, 당업자에 의해 잘 이해될 것으로 여겨진다.
본 명세서에 사용된 바와 같은 신택스 요소 명칭은, 설명적 용어임에 유의한다. 그렇기 때문에, 이들은 다른 신택스 요소 명칭들의 사용을 배제하지 않는다.
도면이 흐름도로서 제시될 때, 그것은 또한 대응하는 장치의 블록도를 제공한다는 것을 이해해야 한다. 유사하게, 도면이 블록도로서 제시될 때, 그것은 또한 대응하는 방법/프로세스의 흐름도를 제공한다는 것을 이해해야 한다.
본 명세서에 기술된 구현예들 및 태양들은, 예를 들어, 방법 또는 프로세스, 장치, 소프트웨어 프로그램, 데이터 스트림, 또는 신호에서 구현될 수 있다. 구현예의 단일 형태의 맥락에서 논의된다 하더라도(예를 들어, 방법으로서만 논의됨), 논의된 특징들의 구현예는 다른 형태들(예를 들어, 장치 또는 프로그램)에서 구현될 수 있다. 장치는, 예를 들어, 적절한 하드웨어, 소프트웨어, 및 펌웨어로 구현될 수 있다. 방법은, 예를 들어, 프로세서에서 구현될 수 있으며, 이는, 예컨대 컴퓨터, 마이크로프로세서, 집적 회로, 또는 프로그래밍가능 로직 디바이스를 포함하는, 일반적으로 처리 디바이스를 지칭한다. 프로세서들은 또한, 예를 들어, 컴퓨터들, 셀폰들, 휴대용/개인 디지털 어시스턴트들("PDA들"), 스마트폰, 태블릿, 및 최종 사용자들 사이의 정보의 통신을 용이하게 하는 다른 디바이스들과 같은 통신 디바이스들을 포함한다.
"하나의 실시예" 또는 "실시예" 또는 "하나의 구현예" 또는 "구현예"뿐만 아니라 그의 다른 변형들에 대한 언급은, 실시예와 관련하여 기술된 특정 특징부, 구조, 특성 등이 적어도 하나의 실시예에 포함됨을 의미한다. 따라서, 본 출원 전반에 걸친 다양한 곳에서 나타나는 어구 "하나의 실시예에서" 또는 "실시예에서" 또는 "하나의 구현예에서" 또는 "구현예에서"뿐만 아니라 임의의 다른 변형들의 출현들이 반드시 모두 동일한 실시예를 언급하는 것은 아니다.
또한, 본 출원은 다양한 피스들의 정보들을 "결정하는 것"을 언급할 수 있다. 정보를 결정하는 것은, 예를 들어 정보를 추정하는 것, 정보를 계산하는 것, 정보를 예측하는 것, 메모리로부터 정보를 검색하는 것, 또는 예를 들어 다른 디바이스, 모듈, 또는 사용자로부터 정보를 얻는 것 중 하나 이상을 포함할 수 있다.
또한, 본 출원은 다양한 피스들의 정보에 "액세스하는 것"을 언급할 수 있다. 정보에 액세스하는 것은, 예를 들어 정보를 수신하는 것, (예를 들어, 메모리로부터) 정보를 검색하는 것, 정보를 저장하는 것, 정보를 이동시키는 것, 정보를 복사하는 것, 정보를 계산하는 것, 정보를 결정하는 것, 정보를 예측하는 것, 또는 정보를 추정하는 것 중 하나 이상을 포함할 수 있다.
또한, 본 출원은 다양한 피스들의 정보를 "수신하는 것"을 언급할 수 있다. 수신하는 것은 "액세스하는 것"과 마찬가지로 광의의 용어인 것으로 의도된다. 정보를 수신하는 것은, 예를 들어, 정보에 액세스하는 것, 또는 (예를 들어, 메모리로부터) 정보를 검색하는 것 중 하나 이상을 포함할 수 있다. 또한, "수신하는 것"은 전형적으로, 예를 들어 정보를 저장하는 동작, 정보를 처리하는 동작, 정보를 전송하는 동작, 정보를 이동시키는 동작, 정보를 복사하는 동작, 정보를 소거하는 동작, 정보를 계산하는 동작, 정보를 결정하는 동작, 정보를 예측하는 동작, 또는 정보를 추정하는 동작과 같은 동작들 동안 어떤 방식으로든 수반된다.
예를 들어 "A/B", "A 및/또는 B" 및 "A 및 B 중 적어도 하나", "A 및 B 중 하나 이상"의 경우에 있어서, 다음의 "/", "및/또는", 및 "중 적어도 하나", "중 하나 이상" 중 임의의 것의 사용은, 첫 번째 열거된 옵션(A) 단독의 선택, 또는 두 번째 열거된 옵션(B) 단독의 선택, 또는 옵션(A, B) 둘 모두의 선택을 포괄하도록 의도된다는 것이 이해될 것이다. 추가의 예로서, "A, B 및/또는 C" 및 "A, B 및 C 중 적어도 하나", "A, B 및 C 중 하나 이상"의 경우에서, 그러한 어구는 첫 번째 열거된 옵션(A) 단독의 선택, 또는 두 번째 열거된 옵션(B) 단독의 선택, 또는 세 번째 열거된 옵션(C) 단독의 선택, 또는 첫 번째 및 두 번째 열거된 옵션(A 및 B) 단독의 선택, 또는 첫 번째 및 세 번째 열거된 옵션(A 및 C) 단독의 선택, 또는 두 번째 및 세 번째 열거된 옵션(B 및 C) 단독의 선택, 또는 3개의 모든 옵션(A, B 및 C)의 선택을 포괄하도록 의도된다. 이는, 본 명세서에 기술된 바와 같은 많은 항목들에 대해, 본 명세서 및 관련 분야의 당업자에게 명백한 바와 같이 확장될 수 있다.
또한, 본 명세서에 사용된 바와 같이, 용어 "신호"는 특히 대응하는 디코더에게 무언가를 나타내는 것을 지칭한다. 예를 들어, 특정 실시예에서, 인코더는 일부 코딩 도구의 사용을 시그널링한다. 이러한 방식으로, 실시예에서, 동일한 파라미터가 인코더 측 및 디코더 측 둘 모두에서 사용될 수 있다. 따라서, 예를 들어, 인코더는 디코더가 동일한 특정 파라미터를 사용할 수 있도록 디코더에 특정 파라미터를 송신할 수 있다(명시적 시그널링). 반대로, 디코더가 이미 특정 파라미터뿐만 아니라 다른 것들을 갖고 있다면, 단순히 디코더가 특정 파라미터를 알고 선택할 수 있게 하기 위해 송신 없이 시그널링이 사용될 수 있다(암시적 시그널링). 임의의 실제 기능들의 송신을 회피함으로써, 다양한 실시예들에서 비트 절약이 실현된다. 시그널링은 다양한 방식들로 달성될 수 있다는 것이 이해되어야 한다. 예를 들어, 하나 이상의 신택스 요소들, 플래그들 등이 다양한 실시예들에서 대응하는 디코더에 정보를 시그널링하는 데 사용된다. 전술된 표현이 단어 "신호"의 동사 형태와 관련되지만, 단어 "신호"는 또한 명사로서 본 명세서에서 사용될 수 있다.
당업자에게 명백한 바와 같이, 구현예들은, 예를 들어 저장되거나 송신될 수 있는 정보를 반송하도록 포맷화된 다양한 신호들을 생성할 수 있다. 예를 들어, 정보는 방법을 수행하기 위한 명령어들, 또는 기술된 구현예들 중 하나에 의해 생성된 데이터를 포함할 수 있다. 예를 들어, 신호는 기술된 실시예의 인코딩된 비디오 스트림을 반송하도록 포맷화될 수 있다. 그러한 신호는, 예를 들어, 전자기파로서(예를 들어, 스펙트럼의 무선 주파수 부분을 사용함) 또는 기저대역 신호로서 포맷화될 수 있다. 포맷화는, 예를 들어, 인코딩된 비디오 스트림을 인코딩하는 것, 및 인코딩된 비디오 스트림으로 반송파를 변조하는 것을 포함할 수 있다. 신호가 반송하는 정보는, 예를 들어, 아날로그 또는 디지털 정보일 수 있다. 신호는, 알려진 바와 같이, 다양한 상이한 유선 또는 무선 링크들을 통해 송신될 수 있다. 신호는 프로세서 판독가능 매체에 저장될 수 있다.
도 7은 넓은 픽처 구역에 걸친 공간적 점진적 루마/크로마 변화와 특정 로컬 객체/텍스처를 혼합하는 영역을 핸들링하도록 적응된 새로운 예측 모드의 원리를 예시한다. 도 2와 관련하여 앞서 언급된 바와 같이, 픽처는 CTU들로 분할된다.
픽처의 영역(즉, 공간 구역)에 대해, 예를 들어 CTU에 대해, 고려되는 영역의 인코딩을 위해 하기의 2개의 스테이지가 적용된다:
먼저, 장거리 인트라 예측 모드가 고려된 영역(영역이 CTU일 때 org_CTU로 표시됨)의 레벨에서 글로벌 조명 변화를 포착하는 데 사용된다. 예를 들어, 고려된 영역의 평면 예측이 수행되며, 이는 예측자 구역(영역이 CTU이고 예측이 평면일 때 planar_CTU로 표시됨)으로 이어진다.
이어서, 잔차 영역(영역이 CTU일 때 res_ CTU로 표시됨)이 계산되며, 잔차 영역은 오리지널 영역과 예측자 구역 간의 차이에 대응한다(res_ CTU = org_CTU - planar_CTU).
다음에, 잔차 영역(res_ CTU)이 인코딩된다. 그렇게 하기 위해, 잔차 영역은 코딩 유닛(CU)들로 파티셔닝된다. 코딩할 각각의 CU에 대해, (단거리 예측을 위한) 고전적 인트라 예측이 CU 레벨에서 적용된다. 결과적인 잔차 신호는 고전적 변환, 양자화 및 엔트로피 코딩을 통해 코딩된다.
하기에서, 새로운 예측 모드는 결합된 글로벌 로컬 예측(CGLP) 모드로 지칭된다.
도 8a는 결합된 글로벌 로컬 예측(CGLP) 모드에 따라 픽처의 현재 영역을 예측하기 위한 고레벨 프로세스의 예를 나타낸다.
도 8a의 프로세스는 예를 들어 처리 모듈(500)이 인코딩 모듈(101)을 구현할 때 처리 모듈(500)에 의해 실행된다. 영역(즉, 공간 구역)은 예를 들어 CTU이다.
단계 801에서, 처리 모듈(500)은 공간 예측에 기초하여 현재 영역에 대한 영역 예측자를 획득한다. 영역 예측자는 예를 들어 DC 예측, 평면 예측, 또는 CGLP 모드에 전용화된 특정 영역 예측자를 적용함으로써 획득된다. 예를 들어, 특정 영역 예측자는 단지 도 6의 수평(각각 단지 수직) 보간 프로세스를 적용함으로써 획득될 수 있다.
단계 802에서, 처리 모듈(500)은 현재 영역으로부터 영역 예측자를 빼는 것에 의해 현재 영역에 대한 잔차 영역을 획득한다.
단계 803 및 804에서, 처리 모듈(500)은 잔차 영역에 정규 인트라 예측 프로세스를 적용한다. 이것은 임의의 인트라 예측 전에 잔차 영역의 적어도 하나의 샘플의 인트라 예측에 사용되는 영역 외부의 모든 기준 샘플들(전형적으로 영역의 좌상에 있는 샘플들)을 0으로 설정함으로써 행해진다.
실시예에서, 잔차 영역의 적어도 하나의 샘플의 인트라 예측에 사용되는 영역 외부의 기준 샘플들(전형적으로 영역의 좌상에 있는 샘플들)의 값들은 임의의 인트라 예측 전에 미리 정의된 값으로 설정된다. 예를 들어, 미리 정의된 값은 "128"이다.
실시예에서, 잔차 영역의 적어도 하나의 샘플의 인트라 예측에 사용되는 영역 외부의 기준 샘플들(전형적으로 영역의 좌상에 있는 샘플들)의 값들은 임의의 인트라 예측 전에 영역 내부의 샘플들의 값들에 의존하는 값으로 설정된다. 예를 들어, 기준 샘플은 영역 내부 샘플들의 값들의 평균 또는 중앙값에 대응하는 값으로 설정된다. 이 실시예에서, 이러한 값은 인코딩된 비디오 스트림(311)에 기입된다.
단계 803에서, 처리 모듈(500)은 잔차 영역을 잔차 하위 영역들로 파티셔닝한다.
단계 804에서, 처리 모듈(500)은 적어도 하나의 잔차 하위 영역에 인트라 예측을 적용한다. 인트라 예측은 적어도 하나의 잔차 하위 영역에 대한 인트라 예측 모드를 결정하는 것, 결정된 인트라 예측 모드를 사용하여 잔차 하위 영역에 대한 인트라 예측자를 결정하는 것, 및 잔차 하위 영역과 인트라 예측자 사이의 차이로서 잔차 하위 영역에 대한 인트라 잔차를 결정하는 것을 포함한다.
잔차 하위 영역들로의 잔차 영역의 파티셔닝 및 인트라 예측 모드의 결정은 일반적으로 레이트 왜곡 최적화에 기초하여 공동으로 수행된다.
도 8b는 결합된 글로벌 로컬 예측(CGLP) 모드에 따라 픽처의 현재 영역을 재구성하기 위한 고레벨 프로세스의 예를 나타낸다.
도 8b의 프로세스는 예를 들어 처리 모듈(500)이 디코딩 모듈(120)을 구현할 때 처리 모듈(500)에 의해, 또는 처리 모듈(500)이 인코딩 모듈(101)을 구현할 때 처리 모듈(500)에 의해 실행된다.
단계 811에서, 처리 모듈(500)은 공간 예측에 기초하여 현재 영역에 대한 영역 예측자를 획득한다.
단계 812에서, 처리 모듈(500)은 현재 영역의 하위 영역들로의 파티셔닝을 나타내는 정보를 획득한다.
단계 813에서, 처리 모듈(500)은 인트라 예측 잔차 및 인트라 예측 모드에 기초하여 적어도 하나의 잔차 하위 영역을 재구성한다. 도 8a의 인코딩 프로세스와 유사하게, (현재 영역의 좌상에 있는) 적어도 하나의 하위 영역을 재구성하는 데 사용되는 현재 영역 외부의 모든 기준 샘플들은 잔차 하위 영역들을 재구성하기 전에 0으로 설정된다.
실시예에서, 도 8a의 인코딩 프로세스의 실시예와 유사하게, 잔차 영역의 적어도 하나의 샘플의 인트라 예측에 사용되는 영역 외부의 기준 샘플들(전형적으로 영역의 좌상에 있는 샘플들)의 값들은 임의의 인트라 예측 전에 미리 정의된 값으로 설정된다. 예를 들어, 미리 정의된 값은 "128"이다.
다른 실시예에서, 미리 정의된 값은 인코딩된 비디오 스트림(311)으로부터 판독된다.
단계 812 및 813은, 도 3 및 도 4와 관련하여 설명된 바와 같은, 그러나 잔차 영역의 잔차 하위 영역에 적용되는, CU 레벨에서의 정규 인트라 예측 재구성 프로세스를 나타낸다. 단계 812 및 813은 잔차 하위 영역들로부터 재구성된 잔차 영역을 획득하는 것을 가능하게 한다.
단계 814에서, 처리 모듈(500)은 재구성된 잔차 영역을 영역 예측자에 더함으로써 재구성된 잔차 영역 및 영역 예측자에 기초하여 영역을 재구성한다.
도 8a 및 도 8b의 프로세스들에서, 적어도 하나의 0이 아닌 잔차 샘플을 포함하는 잔차 하위 영역만이 인트라 예측된다는 점에 유의한다. 0과 동일한 잔차 샘플만을 포함하는 하위 영역은 영역 예측자에 의해 완벽하게 예측되는 하위 영역에 대응한다.
도 9a는 영역 레벨 인코딩 프로세스의 예를 개략적으로 도시한다.
도 9a의 프로세스는 처리 모듈(500)이 인코딩 모듈을 구현할 때 처리 모듈(500)에 의해 실행된다.
도 9a의 실시예에서, 이러한 프로세스는 인코딩된 비디오 스트림(311)으로의 인트라 픽처의 인코딩 동안 적용되며, 영역은 CTU이다. 따라서 프로세스의 입력은 인트라 픽처에 인코딩할 현재 CTU이다.
단계 901에서, 처리 모듈(500)은 도 8a의 프로세스를 적용하는 CGLP 모드를 사용하여 현재 CTU를 예측한다.
단계 902에서, 처리 모듈(500)은 도 8b의 프로세스를 적용함으로써 현재 CTU를 재구성한다.
단계 903에서, 처리 모듈(500)은 CGLP 모드의 레이트 왜곡 비용을 계산한다.
단계 904에서, 처리 모듈(500)은 도 3과 관련하여 설명된 바와 같이 현재 CTU에 정규 인트라 예측을 적용한다.
단계 905에서, 처리 모듈(500)은 도 3 또는 도 4와 관련하여 설명된 바와 같은 정규 인트라 예측 재구성 프로세스를 적용하여 인트라 예측된 현재 CTU를 재구성한다.
단계 906에서, 처리 모듈(500)은 정규 인트라 예측 모드에 따라 CTU의 인코딩에 연관된 레이트 왜곡 비용을 계산한다.
단계 907에서, 처리 모듈(500)은 정규 인트라 예측 모드와 CGLP 모드 사이에서 레이트 왜곡 비용을 최소화하는 예측 모드를 선택한다.
단계 908에서, 처리 모듈(500)은 선택된 모드에 따라 현재 CTU를 인코딩한다. CGLP 모드가 선택되는 경우, 단계 908은 다음을 인코딩된 비디오 스트림(311)에 인코딩하는 것을 포함한다
CGLP 모드의 사용을 시그널링하는 CTU 레벨에서의 플래그,
하위 영역들로의 영역의 파티셔닝을 나타내는 정보, 및
인트라 잔차 하위 영역에 변환, 양자화 및 엔트로피 코딩을 적용하여 인트라 잔차 하위 영역을 나타내는 비트스트림 부분을 생성함.
단계 908의 실시예에서, CGLP 모드가 선택되는 경우, 처리 모듈(500)은 CTU 레벨에서 인코딩된 비디오 스트림(311)에 영역 예측자를 나타내는 정보를 인코딩한다. 예를 들어, 처리 모듈(500)은 평면 모드, DC 모드, 또는 CGLP 모드에 전용화된 특정 영역 예측자 중에서 선택된 예측 모드를 나타내는 정보를 인코딩한다.
단계 908의 실시예에서, CGLP 모드에서, 현재 CTU를 예측하는 데 사용되는 예측 모드는 고정되거나(즉, 동일한 예측 모드가 항상 적용됨), 예를 들어 시퀀스 헤더(SPS) 또는 픽처 헤더(PPS) 내의 고레벨 신택스 요소에 인코딩되거나, 암시적이다(즉, 영역을 예측하는 데 사용되는 예측 모드가 인코딩된 비디오 스트림(311)의 다른 정보로부터 추론됨). 그 경우에, 영역 예측자를 나타내는 정보는 CTU 레벨에서 영역 예측자를 시그널링하는 데 필요하지 않다.
실시예에서, 도 9a의 프로세스는 CGLP 및 정규 인트라 예측 모드에 따른 전체 인코딩 및 전체 디코딩을 포함한다.
이 실시예에서, 단계 901(각각 단계 904)은 CGLP 모드에 따른(각각 정규 인트라 예측 모드에 따른) 현재 CTU의 전체 인코딩에 있다. CGLP에 따른 전체 인코딩은 단계 804에서 획득된 잔차 하위 영역에 변환, 양자화 및 엔트로피 코딩을 적용하는 것을 포함한다. 정규 인트라 예측 모드에 따른 전체 인코딩은 현재 CTU를 파티셔닝함으로써 획득된 하위 영역에 인트라 예측을 적용하는 것에 의해 획득된 잔차 하위 영역에 변환, 양자화 및 엔트로피 코딩을 적용하는 것을 포함한다.
단계 902(각각 단계 905)는 CGLP 모드에 따라 인코딩된(각각 정규 인트라 예측 모드에 따라 인코딩된) CTU의 전체 디코딩을 적용하는 것에 있다. CGLP 모드에 따른 전체 디코딩은 디코딩된 인트라 잔차 하위 영역을 상기 잔차 하위 영역의 인트라 예측자에 더하기 전에 단계 813에서 엔트로피 디코딩, 역양자화 및 역변환을 각각의 인트라 잔차 하위 영역에 적용하는 것에 있다. 단계 813에 이어서 재구성된 영역을 획득하기 위한 단계 814가 뒤따른다. 정규 인트라 예측 모드에 따른 전체 디코딩은 엔트로피 디코딩, 역양자화 및 역변환을 각각의 잔차 하위 영역에 적용하고, 재구성된 잔차 하위 영역을 상기 하위 영역의 인트라 예측자에 더하는 것에 있다. 그 경우에, 재구성된 영역은 모든 재구성된 하위 영역들의 결합으로서 직접 획득된다.
이어서 단계 903(각각 단계 906)은 CGLP 모드에 따라(각각 정규 인트라 예측 모드에 따라) 인코딩하고, CGLP 모드의(각각 정규 인트라 예측 모드의) 레이트 왜곡 비용을 계산하기 위해 오리지널 CTU와 디코딩된 CTU 사이의 왜곡을 계산하는 데 사용되는 비트들의 수를 결정하는 것에 있다.
빠른 결정 프로세스에서, 결정을 레이트 왜곡 비용 대신에 왜곡에 기초함으로써 전체 인코딩 및 디코딩 프로세스가 회피될 수 있다.
도 9c는 빠른 결정 프로세스를 사용하는 영역 레벨 인코딩 프로세스의 예를 개략적으로 도시한다.
단계 931에서, 처리 모듈(500)은 평면 모드를 사용하여 현재 CTU를 예측한다.
단계 932에서, 처리 모듈(500)은 평면 모드를 사용하여 획득된 예측자와 현재 CTU 사이의 왜곡 D_planar를 계산한다.
단계 933에서, 처리 모듈(500)은 예를 들어 DC 모드를 사용하여 현재 CTU를 예측한다.
단계 934에서, 처리 모듈(500)은 DC 모드를 사용하여 획득된 예측자와 현재 CTU 사이의 왜곡 D_dc를 계산한다.
단계 935에서, 처리 모듈(500)은 왜곡 D_dc를 왜곡 D_planar와 비교한다.
왜곡 D_dc가 왜곡 D_planar보다 낮은 경우, 처리 모듈(500)은 단계 936에서 정규 인트라 예측 모드에 따라 현재 CTU를 완전히 인코딩한다. 그렇지 않은 경우, 처리 모듈(500)은 단계 937에서 CGLP 모드에 따라 현재 CTU를 완전히 인코딩한다.
도 9c의 프로세스에서, DC 모드와 같은 기본 모드가 평면 모드보다 더 낮은 왜곡을 제공하는 경우, 정규 인트라 예측 모드가 CGLP 모드보다 더 낮은 레이트 왜곡 비용을 제공할 것이라고 여겨진다.
도 9b는 영역 레벨 디코딩 프로세스의 예를 개략적으로 도시한다.
도 9b의 프로세스는 처리 모듈(500)이 디코딩 모듈을 구현할 때 처리 모듈(500)에 의해 실행된다.
도 9b의 실시예에서, 프로세스는 인코딩된 비디오 스트림(311)으로부터의 인트라 픽처의 디코딩 동안 적용되며, 영역은 CTU이다. 따라서 프로세스의 입력은 인트라 픽처에 디코딩할 현재 CTU이다.
단계 920에서, 처리 모듈(500)은 CGLP 예측 모드의 사용을 시그널링하는 CTU 레벨 플래그에 있는 신택스 요소를 파싱한다.
단계 921에서, 처리 모듈(500)은 CGLP 플래그의 값을 결정한다.
이러한 플래그가 거짓이어서, CGLP 예측 모드가 현재 CTU를 인코딩하는 데 사용되지 않았음을 나타내는 경우에, 단계 921 다음에 단계 922가 뒤따른다.
단계 922 동안, 정규 디코딩 프로세스가 적용된다. 도 9b의 실시예에서, 픽처는 인트라 픽처이기 때문에, 처리 모듈(500)은 단계 922에서 도 3 및 도 4와 관련하여 설명된 바와 같은 정규 인트라 예측 재구성 프로세스를 적용한다.
CGLP 플래그가 참이어서, CGLP 예측 모드가 현재 CTU를 인코딩하는 데 사용되었음을 나타내는 경우에, 단계 921 다음에 단계 923이 뒤따른다.
단계 923 동안, 처리 모듈(500)은 도 8b의 프로세스를 적용하며, 여기서 단계 813 동안, 엔트로피 디코딩, 역양자화 및 역변환이 각각의 인트라 잔차 하위 영역에 적용되어 재구성된 잔차 영역을 획득한다.
도 9b의 프로세스는 단계 924에서 종료된다.
조명 예측 기반 실시예로 불리는 실시예에서, 영역 예측자는 조명 예측 모드를 사용하여 획득된다.
조명 예측 기반 실시예에서, 현재 CTU에 공간적으로 이웃하는 CTU는 현재 영역을 포함하는 픽처에서 조명 변화를 캡처하는 데 사용된다. 평면 예측과 유사하게, 이러한 조명 예측은 2개의 선형 예측의 평균으로 정의된다.
도 10은 조명 예측 기반 실시예를 개략적으로 예시한다.
첫째로, 상부 기준 샘플을 사용하여 수직 선형 조명 예측이 구성된다. 현재 CTU 위의 첫 번째 상부 이웃 라인(도 10에서의 라인 TOP1)의 재구성된 샘플 및 첫 번째 상부 재구성된 이웃 CTU 위의 첫 번째 상부 이웃 라인(도 10에서의 라인 TOP2)의 재구성된 샘플은 선형 회귀 방법으로 위의 조명 보상 파라미터 로 불리는 파라미터를 계산하는 데 사용된다. 이어서 위의 조명 보상 파라미터는 아래와 같이 수직 선형 예측 를 계산하는 데 사용되며:
여기서, R x ,0은 도 10에서의 라인 TOP1 및 TOP2에 있는 샘플을 나타낸다.
둘째로, 좌측 기준 샘플을 사용하여 수평 선형 조명 예측이 유사한 방식으로 구성된다. 현재 CTU의 좌측에 있는 첫 번째 좌측 이웃 라인(도 10에서의 라인 LEFT1)의 재구성된 샘플 및 그것의 첫 번째 좌측 재구성된 이웃 CTU의 첫 번째 좌측 이웃 라인(도 10에서의 라인 LEFT2)의 재구성된 샘플은 선형 회귀 방법으로 좌측 조명 보상 파라미터 로 불리는 파라미터를 계산하는 데 사용된다. 이어서 좌측 조명 보상 파라미터는 아래와 같이 수평 선형 예측 를 계산하는 데 사용되며:
여기서, R 0, y 는 도 10에서의 열 LEFT1 및 LEFT2에 있는 샘플을 나타낸다.
현재 CTU의 최종 조명 예측은 다음의 방정식에 따라 수평 및 수직 선형 예측들의 평균과 동일하다:
최종 조명 예측은 도 8a 및 도 8b의 프로세스에서 영역 예측자로서 사용된다.
조명 예측 기반 실시예의 변형에서, 라인 TOP1, TOP2, LEFT1 및 LEFT2에 대응하는 재구성된 샘플들의 세트와는 상이한, 재구성된 샘플들의 다른 세트가 사용될 수 있다. 예를 들어, 현재 CTU 주위의 L 형상에 대응하는 샘플들의 세트가 사용될 수 있다.
지금까지, 영역은 주로 CTU인 것으로 간주된다. 영역 예측을 위한 다양한 공간 세분성 레벨을 갖는 실시예로 불리는 실시예에서, 다른 유형의 영역이 사용될 수 있다.
영역 예측을 위한 다양한 공간 세분성 레벨을 갖는 실시예의 제1 변형에서, 영역은 미리 정의된 고정 크기를 갖는데, 예를 들어 영역은 크기 64×64의 블록이다.
영역 예측을 위한 다양한 공간 세분성 레벨을 갖는 실시예의 제2 변형에서, 영역은, 예를 들어 64×64와 같이, 미리 정의된 고정 크기보다 더 큰 크기를 갖는 CU로 정의될 수 있다. 이러한 방식으로, 영역 예측은 또한, 고려된 CTU에서 선택되는 파티셔닝에 따라, 128×64 또는 64×128 또는 64×64 CU에 적용될 수 있다.
영역 예측을 위한 다양한 공간 세분성 레벨을 갖는 실시예의 제3 변형에서, 영역은 CTU의 코딩 트리 표현에서 CU의 깊이 값의 함수로 결정된다. CTU 내의 영역의 깊이 값은 영역을 획득하기 위해 CTU에 적용될 연속적인 파티셔닝의 수이다. 도 2에서, CU(241)는 "2"와 동일한 깊이 값에 연관되는데, 왜냐하면 CU(241)를 획득하기 위해 CTU에 2개의 파티셔닝이 적용되었기 때문이다(CTU를 동일한 크기의 "4"개의 정사각형 영역으로 분할하는 제1 파티셔닝, 및 우상 영역을 동일한 크기의 "4"개의 정사각형 영역으로 분할하는 제2 파티셔닝). CU(242)는 "1"과 동일한 깊이 값에 연관된다. 예를 들어, 영역은 고려된 CTU의 코딩 트리 표현에서 주어진 임계치보다 더 낮은 깊이 값을 갖는 CU로 정의된다.
CU 레벨 신호 전달을 갖는 실시예로 불리는 실시예에서, 제안된 CGLP 모드의 사용은 CU 레벨에서 시그널링된다. 이것은 영역 예측이 여전히 넓은 픽처 구역에서 발생하지만, CU의 코딩/디코딩에서의 그것의 사용이 CU 레벨에서 시그널링된다는 것을 의미한다.
도 11a는 CU 레벨 신호 전달을 갖는 실시예에 대응하는 CTU에 적용되는 디코딩 프로세스의 예를 예시한다.
도 11a의 디코딩 프로세스는 처리 모듈(500)이 디코딩 모듈을 구현할 때 처리 모듈(500)에 의해 실행된다.
디코딩 프로세스에 대한 입력은 인코딩된 비디오 스트림(311)의 일부에 의해 표현되는 디코딩할 현재 CTU이다.
단계 1101에서, 처리 모듈(500)은 현재 CTU에 대응하는 인코딩된 비디오 스트림(311)의 부분을 파싱하며, 이는 특히 현재 CTU의 코딩 트리 표현을 획득하는 것을 가능하게 한다.
단계 1102에서, 처리 모듈(500)은 디코딩 순서에서 현재 CTU의 첫 번째 CU에 대응하는 현재 CU에 초점을 맞춘다.
단계 1103에서, 처리 모듈(500)은 인코딩된 비디오 스트림(311)의 부분에 지정된 인트라 예측 모드를 사용하여 현재 CU의 인트라 예측을 수행하고, 현재 CU에 대한 인트라 예측자 pred(CU,IPM_local)를 획득하며, 여기서 IPM_local은 현재 CU의 인트라 예측 모드를 나타낸다.
단계 1104에서, 처리 모듈(500)은 인코딩된 비디오 스트림(311)의 부분으로부터 현재 CU에 대한 인트라 잔차 CU res(CU)를 디코딩한다.
단계 1105에서, 처리 모듈(500)은 CGLP 모드가 현재 CU에 대해 사용되는지를 결정한다. 그렇게 하기 위해, 이러한 사용을 나타내고, 단계 1101 동안 획득된 플래그가 체크된다.
플래그가 CGLP 모드가 사용되지 않음을 나타내는 경우, 단계 1105 다음에 단계 1106이 뒤따른다. 단계 1106에서, 인트라 예측자 pred(CU,IPM_local)에 인트라 잔차 CU res(CU)를 더함으로써 현재 CU가 재구성된다:
REC(CU) = pred(CU,IPM_local) + res(CU)
여기서, REC(CU)는 재구성된 현재 CU이다.
플래그가 CGLP 모드가 사용됨을 나타내는 경우, 단계 1105 다음에 단계 1107이 뒤따른다. 단계 1107에서, 처리 모듈(500)은 현재 CU에 대한 영역 예측자를 획득한다. 예를 들어, 평면 모드가 현재 CU에 대한 영역 예측자 reg_pred planar (CU)를 획득하는 데 사용된다.
단계 1108에서, 처리 모듈(500)은 현재 CU에 공간적으로 대응하는 영역 예측자 reg_pred planar (CU)의 일부에 인트라 잔차 CU res(CU) 및 인트라 예측자 pred(CU,IPM_local)를 더함으로써 현재 CU를 재구성한다:
REC(CU) = pred(CU,IPM_local) + res(CU)+reg_pred planar (CU)
단계 1106 및 1108 다음에 단계 1109가 뒤따르며, 여기서 처리 모듈(500)은 현재 CU가 현재 CTU의 디코딩 순서에서 마지막 CU인지를 결정한다. 만약 맞다면, 처리 모듈(500)은 단계 1111에서 도 11a의 프로세스를 중지한다. 만약 그렇지 않다면, 처리 모듈(500)은 단계 1110에서 디코딩할 현재 CTU의 다음 CU를 식별하고 단계 1103을 계속한다.
도 11b는 CU 레벨 신호 전달을 갖는 실시예에 대응하는 CTU에 적용되는 인코딩 프로세스의 예를 예시한다.
도 11b의 인코딩 프로세스는 처리 모듈(500)이 인코딩 모듈을 구현할 때 처리 모듈(500)에 의해 실행된다. 여기서 도 11b의 프로세스를 적용하기 전에 현재 CTU의 코딩 트리, 즉 CU에서의 파티셔닝이 결정되었다고 가정한다. 현재 CU로 불리는 하나의 CU만이 도 11b의 인코딩 프로세스에서 처리된다. 그러나, 동일한 프로세스가 현재 CTU의 모든 다른 CU에 적용된다.
단계 1121에서, 처리 모듈(500)은 현재 CTU에 대한 영역 예측자를 획득한다.
단계 1122에서, 처리 모듈(500)은 현재 CU와 영역 예측자 내의 공간적으로 대응하는 구역 사이의 차이로서 현재 CU에 대한 잔차 CU RES(CU) Reg 를 계산한다.
단계 1123에서, 처리 모듈(500)은 정규 인트라 예측을 사용하여 잔차 CU RES(CU) Reg 에 대한 인트라 예측자 PRED(CU) Intra 를 획득한다.
단계 1124에서, 처리 모듈(500)은 잔차 CU RES(CU) Reg 와 인트라 예측자 PRED(CU) Intra 사이의 차이로서 잔차 CU RES(CU) Reg 에 대한 인트라 예측 잔차 RES(CU) Intra 를 계산한다.
단계 1125에서, 처리 모듈(500)은 인트라 예측 잔차 RES(CU) Intra 를 인코딩(즉, 변환, 양자화 및 엔트로피 인코딩)하며, 이는 현재 CU에 대한 CGLP 모드의 레이트 비용 R CGLP 를 결정하는 것을 가능하게 한다.
단계 1126에서, 처리 모듈(500)은 인트라 예측 잔차 RES(CU) Intra 를 디코딩하며, 이는 현재 CU에 대한 CGLP 모드의 왜곡 D CGLP 를 결정하는 것을 가능하게 한다.
단계 1127에서, 처리 모듈(500)은 레이트 비용 R CGLP 및 왜곡 D CGLP 를 사용하여 현재 CU에 대한 CGLP 모드의 레이트 왜곡 비용 RD CGLP 를 계산한다.
단계 1128에서, 처리 모듈(500)은 정규 인트라 예측을 사용하여 현재 CU를 인코딩한다.
단계 1129에서, 처리 모듈(500)은 단계 1128에서 인코딩된 현재 CU를 디코딩한다.
단계 1130에서, 처리 모듈(500)은 정규 인트라 예측 모드의 레이트 왜곡 비용 RD Intra 를 계산한다.
단계 1131에서, 처리 모듈(500)은 2개의 레이트 왜곡 비용을 비교하고, 가장 낮은 레이트 왜곡 비용에 대응하는 예측 모드를 선택한다.
단계 1132에서, 처리 모듈(500)은 선택된 예측 모드를 사용하여 현재 CU를 인코딩한다. 현재 CU에 대해 CGLP 모드가 선택되는 경우, 처리 모듈(500)은 현재 CTU에 대응하는 인코딩된 비디오 스트림(311)의 부분에 현재 CU에 대한 CGLP 모드의 사용을 지정하는 플래그를 인코딩한다.
수정된 평면 모드를 갖는 실시예로 불리는 실시예에서, 영역 예측자는 인코딩된 비디오 스트림에 인코딩된 (도 12에서 B로 표시된) 우하 샘플 값을 사용하여 수정된 평면 예측을 수행함으로써 획득된다.
도 12는 수정된 평면 모드를 개략적으로 도시한다.
평면 모드와 유사하게, 수정된 평면 모드는 본질적으로 2개의 선형 예측의 평균으로 정의된다. 제1 수평 선형 예측(도 12의 상부)은 좌측 기준 샘플과 우측 기준 샘플 값 X 사이의 가중 평균에 있으며, X는 우상 기준 샘플 T와 우하 샘플 B의 가중 평균과 동일하다. 도 12의 하부에 도시된 제2 수직 선형 예측은 상부 기준 샘플과 하부 기준 샘플 값 Y 사이의 가중 평균이며, Y는 블록의 좌하 기준 샘플 L과 우하 기준 샘플 B의 가중 평균과 동일하다. 현재 블록의 최종 수정된 평면 예측은 수평 및 수직 선형 예측들의 평균과 동일하다.
수정된 평면 모드를 갖는 실시예의 변형에서, 우하 샘플 B는 고정되는 것이 아니라, 레이트 왜곡 기준으로 샘플 B, C, D 및 E 중에서 선택되며, 레이트 왜곡 비용을 최소화하는 샘플이 선택된다. 샘플 C(각각 D 및 E)와 연관된 레이트 왜곡 비용을 결정하기 위해, 샘플 C(각각 D 및 E)는 수직 및 수평 선형 보간의 계산을 위해 샘플 B를 대체한다.
수정된 평면 모드를 갖는 실시예의 제2 변형에서, 값 우하 샘플 B는 비트스트림에 명시적으로 인코딩된다. 이러한 값은 도 12에서의 샘플 T 또는 L로부터 도출되지 않을 수 있지만, 인코딩 모듈의 처리 모듈(500)에 의해 결정되는 레이트-왜곡 기준을 최적화하는 값일 수 있다.
재성형을 갖는 실시예로 불리는 실시예에서, 잔차 영역은 인코더 측에서 재성형 프로세스를 거치고, 재구성된 잔차 영역은 디코더 측에서 역 재성형 프로세스를 거친다.
인코더 측에서, 재성형 함수가 단계 802와 803 사이에서 잔차 영역에 적용된다. 재성형 함수는 고정되거나, 현재 CTU와 재성형된 다음에 역 재성형된 CTU 사이에서 계산된 비용 값을 최소화함으로써 결정될 수 있다. 예로서, 이러한 비용 함수는 비디오 코딩의 분야에서 HAD로서 알려진 하다마드 변환(Hadamard transform) 도메인 왜곡의 형태를 취할 수 있다.
디코더 측에서, 재성형 함수가 단계 813과 814 사이에서 재구성된 잔차 영역에 적용된다.
지금까지, CGLP 모드가 INTRA 픽처에 적용되는 것으로 간주되었다. 그러나, CGLP 모드는 또한 INTER 픽처에 적용될 수 있다. 시간 예측을 갖는 실시예로 불리는 실시예에서, 단계 801 및 811에 정의된 바와 같은 시간 예측자와 영역 예측자를 결합함으로써 최종 영역 예측자가 획득된다.
도 13a는 시간 예측을 갖는 실시예에 부합하는 디코딩 프로세스의 예를 개략적으로 도시한다.
도 13a의 디코딩 프로세스는 처리 모듈(500)이 디코딩 모듈을 구현할 때 처리 모듈(500)에 의해 실행된다.
디코딩 프로세스의 입력은 인코딩된 비디오 스트림(311)의 일부에 의해 표현되는 디코딩할 현재 CTU이다. 현재 CTU는 인터 픽처에 포함된다.
도 13a의 디코딩 프로세스는 도 11a의 단계들 및 시간 예측을 갖는 실시예에 특유한 새로운 단계들을 포함한다.
도 13a의 프로세스는 단계 1101 및 1102로 시작된다.
단계 1102 다음에 단계 1300이 뒤따르며, 이 단계 동안 처리 모듈(500)은 현재 CU가 시간적으로 예측되는지 여부를 결정한다. 현재 CU가 시간적으로 예측되지 않는 경우, 단계 1300 다음에 도 11a와 관련하여 이미 설명된 단계 1103 내지 1111이 뒤따른다.
현재 CU가 시간적으로 예측되는 경우, 단계 1300 다음에 단계 1301이 뒤따른다. 단계 1301에서, 현재 CU에 대해 시간 예측자 temp_pred(CU)가 결정된다. 시간 예측자 temp_pred(CU)는 인코딩된 비디오 스트림(311)으로부터 획득된 현재 CU에 적용되는 인터 예측 모드를 나타내는 정보를 사용하여 결정된다.
단계 1302에서, 처리 모듈(500)은 CGLP 모드가 현재 CU에 적용되었는지를 결정한다.
현재 CU가 CGLP 모드를 사용하여 인코딩되지 않은 경우, 처리 모듈(500)은 단계 1303에서 현재 CU의 최종 예측자가 단계 1301에서 결정된 시간 예측자 temp_pred(CU)임을 결정한다. 단계 1303 다음에 단계 1307이 뒤따르며, 이 단계 동안 최종 예측자는 인코딩된 비디오 스트림(311)으로부터 디코딩된 잔차 CU에 추가된다.
현재 CU가 CGLP 모드를 사용하여 인코딩된 경우, 처리 모듈(500)은 단계 1304에서 현재 CU에 대한 영역 예측자를 획득한다. 예를 들어, 평면 모드가 현재 CU에 대한 영역 예측자 reg_pred planar (CU)를 획득하는 데 사용된다.
단계 1305에서, 처리 모듈(500)은 시간 예측자 temp_pred(CU)와 영역 예측자 reg_pred planar (CU)의 가중 평균으로서 현재 CU에 대한 최종 예측자 final_pred(CU)를 계산한다:
final_pred(CU) = W1. temp_pred(CU)+W2. reg_pred planar (CU)
여기서, W1W2는 예를 들어 "1/2"과 동일한 가중치이거나, 인코딩된 비디오 스트림(311)에서 시그널링된다.
그 경우에, 단계 1307에서, 처리 모듈(500)은 단계 812 및 813을 적용하여 현재 CU에 대응하는 잔차 인트라 하위 영역을 재구성하고, 단계 814는 재구성된 인트라 잔차 하위 영역을 최종 예측자 final_pred(CU)에 더하는 것에 있다.
단계 1307 다음에 도 11a와 관련하여 이미 설명된 단계 1109가 뒤따른다.
도 13b는 시간 예측을 갖는 실시예에 부합하는 인코딩 프로세스의 예를 개략적으로 도시한다.
도 13b의 인코딩 프로세스는 처리 모듈(500)이 인코딩 모듈을 구현할 때 처리 모듈(500)에 의해 실행된다.
도 13b의 인코딩 프로세스는 도 11b의 단계들 및 시간 예측을 갖는 실시예에 특유한 새로운 단계들을 포함한다.
처리 모듈(500)은 CGLP 모드의 레이트 왜곡 비용을 계산하기 위해 단계 1121 내지 1127을 실행함으로써 시작한다.
단계 1127 다음에 단계 1320이 뒤따른다. 단계 1320에서, 처리 모듈(500)은 정규 인터 예측을 사용하여 현재 CU를 인코딩한다. 이러한 단계 동안, 최상의 인터 예측 모드가 복수의 인터 예측 모드 중에서 결정되고 현재 CU에 적용된다.
단계 1321에서, 처리 모듈(500)은 단계 1320에서 인코딩된 현재 CU를 디코딩한다.
단계 1322에서, 처리 모듈(500)은 정규 인터 예측 모드의 레이트 왜곡 비용 RD Inter 를 계산한다.
단계 1323에서, 처리 모듈(500)은 현재 CU에 대한 시간 예측자를 획득한다. 예를 들어, 시간 예측자는 단계 1320에서 선택된 최상의 인터 예측 모드를 사용하여 획득된다.
단계 1324에서, 처리 모듈(500)은 시간 예측자 temp_pred(CU)와 영역 예측자 reg_pred planar (CU)의 가중 평균으로서 현재 CU에 대한 최종 예측자 final_pred(CU)를 획득한다:
final_pred(CU) = W1. temp_pred(CU)+W2. reg_pred planar (CU)
단계 1325에서, 처리 모듈(500)은 현재 CU와 최종 예측자 final_pred(CU) 사이의 차이로서 잔차 CU를 계산한다.
단계 1326에서, 처리 모듈(500)은 잔차 CU에 대한 인트라 예측자를 결정한다.
단계 1327에서, 처리 모듈(500)은 단계 1325에서 계산된 잔차 CU와 인트라 예측자 사이의 차이로서 인트라 잔차 CU를 결정한다.
단계 1328에서, 처리 모듈(500)은 변환, 양자화 및 엔트로피 코딩을 인트라 잔차 CU에 적용하여 인트라 잔차 CU를 인코딩한다.
단계 1329에서, 처리 모듈(500)은 엔트로피 디코딩, 역양자화 및 역변환을 인코딩된 인트라 잔차 CU에 적용한다.
단계 1330에서, 처리 모듈(500)은 디코딩된 인트라 잔차 CU, CU의 인트라 예측자, 및 최종 예측자를 사용하여 현재 CU를 재구성하여, 시간 예측을 갖는 CGLP 모드의 레이트 왜곡 비용을 계산한다.
단계 1330 다음에 단계 1131 및 1132가 뒤따르며, 이 단계 동안 처리 모듈(500)은 레이트 왜곡 비용에 기초하여 CGLP 모드, 정규 인터 예측 모드, 및 시간 예측을 갖는 CGLP 모드 중에서 모드를 선택하고, 선택된 모드에 따라 현재 CU를 인코딩한다.
다수의 실시예가 전술되었다. 이들 실시예의 특징은 단독으로 또는 임의의 조합으로 제공될 수 있다. 또한, 실시예들은, 다양한 청구항 카테고리들 및 유형들에 걸쳐, 단독으로 또는 임의의 조합으로, 다음의 특징부들, 디바이스들, 또는 태양들 중 하나 이상을 포함할 수 있다:
기술된 신택스 요소들(즉, 플래그들), 또는 이들의 변형들 중 하나 이상을 포함하는 비트스트림 또는 신호.
기술된 신택스 요소들, 또는 이들의 변형들 중 하나 이상을 포함하는 비트스트림 또는 신호를 생성하고/하거나 송신하고/하거나 수신하고/하거나 디코딩하는 것.
기술된 실시예들 중 적어도 하나를 수행하는 TV, 셋톱 박스, 셀폰, 태블릿, 또는 다른 전자 디바이스.
기술된 실시예들 중 적어도 하나를 수행하고 생성된 이미지를(예를 들어, 모니터, 스크린, 또는 다른 유형의 디스플레이를 사용하여) 디스플레이하는 TV, 셋톱 박스, 셀폰, 태블릿, 또는 다른 전자 디바이스.
인코딩된 비디오 스트림을 포함하는 신호를 수신할 채널을 (예를 들어, 동조기를 사용하여) 동조시키고, 기술된 실시예들 중 적어도 하나를 수행하는 TV, 셋톱 박스, 셀폰, 태블릿, 또는 다른 전자 디바이스.
인코딩된 비디오 스트림을 포함하는 신호를 무선으로 (예를 들어, 안테나를 사용하여) 수신하고 기술된 실시예들 중 적어도 하나를 수행하는 TV, 셋톱 박스, 셀폰, 태블릿, 또는 다른 전자 디바이스.

Claims (48)

  1. 재구성 방법으로서,
    공간 예측에 기초하여 픽처의 현재 영역에 대한 영역 예측자를 획득하는 단계(811);
    상기 현재 영역의 하위 영역들로의 파티셔닝을 나타내는 정보를 획득하는 단계(812);
    인트라 예측 잔차 및 인트라 예측 모드에 기초하여 적어도 하나의 잔차 하위 영역을 재구성하는 단계(813) - 상기 적어도 하나의 잔차 하위 영역을 재구성하기 위해 사용되는 상기 현재 영역 외부의 기준 샘플들의 값들은 상기 적어도 하나의 잔차 하위 영역을 재구성하기 전에 수정됨 -;
    상기 적어도 하나의 재구성된 잔차 하위 영역으로부터 재구성된 잔차 영역을 획득하는 단계; 및
    상기 영역 예측자 및 상기 재구성된 잔차 영역에 기초하여 최종 예측자를 결합함으로써 상기 재구성된 잔차 영역 및 상기 영역 예측자에 기초하여 상기 현재 영역을 재구성하는 단계(814)를 포함하는, 재구성 방법.
  2. 제1항에 있어서, 상기 방법은 상기 영역 예측자를 획득하기 위해 적용되는 예측 모드를 나타내는 정보를 획득하는 단계를 포함하는, 방법.
  3. 제1항 또는 제2항에 있어서, 상기 영역은,
    코딩 트리 유닛, 또는
    미리 정의된 고정 크기의 블록, 또는
    미리 정의된 고정 크기보다 더 큰 크기의 블록, 또는
    미리 정의된 값보다 더 낮은 코딩 트리 유닛에서의 깊이 값을 갖는 영역인, 방법.
  4. 제1항, 제2항 또는 제3항에 있어서, 상기 영역 예측자는 복수의 선형 예측들로부터 획득되며, 각각의 선형 예측은 상기 현재 영역과 공간적으로 이웃하는 상기 픽처의 적어도 하나의 영역으로부터 획득된 상기 픽처에서의 조명 변화들을 나타내는 파라미터들에 기초하는, 방법.
  5. 제1항, 제2항 또는 제3항에 있어서, 상기 영역 예측자는 수평 선형 예측과 수직 선형 예측의 결합에 기초하여 획득되며, 각각의 선형 예측은 상기 현재 영역과 이웃하는 재구성된 영역들의 샘플들 및 재구성되지 않은 영역에 속하는 적어도 하나의 샘플을 사용하는, 방법.
  6. 제5항에 있어서, 재구성되지 않은 영역에 속하는 상기 샘플은 상기 현재 영역 내의 또는 상기 현재 영역 밖의 상기 현재 영역의 우하 샘플인, 방법.
  7. 제1항 내지 제6항 중 어느 한 항에 있어서, 상기 현재 영역에 대한 시간 예측자를 획득하는 단계를 포함하며, 상기 최종 예측자는 상기 영역 예측자와 상기 시간 예측자의 가중 평균인, 방법.
  8. 제1항 내지 제7항 중 어느 한 항에 있어서, 상기 재구성된 잔차 영역은 상기 현재 영역을 재구성하기 위해 사용되기 전에 역 재성형 프로세스(inverse reshaping process)를 겪는, 방법.
  9. 제1항 내지 제8항 중 어느 한 항에 있어서, 상기 적어도 하나의 잔차 하위 영역을 재구성하기 위해 사용되는 상기 현재 영역 외부의 모든 기준 샘플들의 값들은 상기 적어도 하나의 잔차 하위 영역을 재구성하기 전에 0으로 설정되는, 방법.
  10. 픽처의 현재 영역을 디코딩하기 위한 방법으로서, 상기 현재 영역의 레벨에서 또는 상기 현재 영역의 하위 영역의 레벨에서 상기 현재 영역을 재구성하기 위한 제1항 내지 제9항 중 어느 한 항에 따른 재구성 방법의 사용을 시그널링하는 신택스 요소를 비트스트림에서 파싱하는 단계를 포함하는, 디코딩하기 위한 방법.
  11. 제10항에 있어서, 재구성되지 않은 영역에 속하는 상기 샘플을 나타내는 정보가 상기 비트스트림으로부터 획득되는, 디코딩하기 위한 방법.
  12. 예측 방법으로서,
    공간 예측에 기초하여 픽처의 현재 영역에 대한 영역 예측자를 획득하는 단계(801);
    상기 영역 예측자로부터 획득된 최종 예측자를 상기 현재 영역으로부터 빼는 것에 의해 상기 현재 영역에 대한 잔차 영역을 획득하는 단계(802);
    상기 잔차 영역을 잔차 하위 영역들로 파티셔닝하는 단계(803); 및
    적어도 하나의 잔차 하위 영역을 인트라 예측하는 단계(804) - 상기 잔차 영역의 적어도 하나의 샘플을 인트라 예측하기 위해 사용되는 상기 현재 영역 외부의 기준 샘플들의 값들은 상기 적어도 하나의 잔차 하위 영역을 인트라 예측하기 전에 수정됨 - 를 포함하는, 예측 방법.
  13. 제12항에 있어서, 상기 영역은,
    코딩 트리 유닛, 또는
    미리 정의된 고정 크기의 블록, 또는
    미리 정의된 고정 크기보다 더 큰 크기의 블록, 또는
    미리 정의된 값보다 더 낮은 코딩 트리 유닛에서의 깊이 값을 갖는 영역인, 방법.
  14. 제12항 또는 제13항에 있어서, 상기 영역 예측자는 복수의 선형 예측들로부터 획득되며, 각각의 선형 예측은 상기 현재 영역과 공간적으로 이웃하는 상기 픽처의 적어도 하나의 영역으로부터 획득된 상기 픽처에서의 조명 변화들을 나타내는 파라미터들에 기초하는, 방법.
  15. 제12항 또는 제13항에 있어서, 상기 영역 예측자는 수평 선형 예측과 수직 선형 예측의 결합에 기초하여 획득되며, 각각의 선형 예측은 상기 현재 영역과 이웃하는 재구성된 영역들의 샘플들 및 재구성되지 않은 영역에 속하는 적어도 하나의 샘플을 사용하는, 방법.
  16. 제15항에 있어서, 재구성되지 않은 영역에 속하는 상기 샘플은 상기 현재 영역 내의 또는 상기 현재 영역 밖의 상기 현재 영역의 우하 샘플인, 방법.
  17. 제12항 내지 제16항 중 어느 한 항에 있어서, 상기 현재 영역에 대한 시간 예측자를 획득하는 단계를 포함하며, 상기 최종 예측자는 상기 영역 예측자와 상기 시간 예측자의 가중 평균인, 방법.
  18. 제12항 내지 제17항 중 어느 한 항에 있어서, 상기 잔차 영역은 상기 적어도 하나의 잔차 하위 영역의 인트라 예측 전에 재성형 프로세스를 겪는, 방법.
  19. 제12항 내지 제18항 중 어느 한 항에 있어서, 상기 잔차 영역의 적어도 하나의 샘플을 인트라 예측하기 위해 사용되는 상기 현재 영역 외부의 모든 기준 샘플들의 값들은 상기 적어도 하나의 잔차 하위 영역을 인트라 예측하기 전에 0으로 설정되는, 방법.
  20. 픽처의 현재 영역을 인코딩하기 위한 방법으로서, 상기 현재 영역의 레벨에서 또는 상기 현재 영역의 하위 영역의 레벨에서 상기 현재 영역을 인코딩하기 위한 제12항 내지 제19항 중 어느 한 항에 따른 예측 방법의 사용을 지정하는 신택스 요소를 비트스트림에서 시그널링하는 단계를 포함하는, 인코딩하기 위한 방법.
  21. 제20항에 있어서, 재구성되지 않은 영역에 속하는 상기 샘플을 나타내는 정보가 상기 비트스트림에서 시그널링되는, 인코딩하기 위한 방법.
  22. 제20항 또는 제21항에 있어서, 상기 영역 예측자를 획득하기 위해 적용되는 예측 모드를 나타내는 정보를 상기 비트스트림에서 시그널링하는 단계를 포함하는, 방법.
  23. 픽처의 현재 영역을 재구성하기 위한 재구성 디바이스로서, 전자 회로부를 포함하며, 상기 전자 회로부는,
    공간 예측에 기초하여 상기 현재 영역에 대한 영역 예측자를 획득하고(811);
    상기 현재 영역의 하위 영역들로의 파티셔닝을 나타내는 정보를 획득하고(812);
    인트라 예측 잔차 및 인트라 예측 모드에 기초하여 적어도 하나의 잔차 하위 영역을 재구성하고(813) - 상기 적어도 하나의 하위 영역을 재구성하기 위해 사용되는 상기 현재 영역 외부의 기준 샘플들의 값들은 상기 적어도 하나의 잔차 하위 영역을 재구성하기 전에 0으로 설정됨 -;
    상기 적어도 하나의 재구성된 잔차 하위 영역으로부터 재구성된 잔차 영역을 획득하고;
    상기 영역 예측자 및 상기 재구성된 잔차 영역에 기초하여 최종 예측자를 결합함으로써 상기 재구성된 잔차 영역 및 상기 영역 예측자에 기초하여 상기 현재 영역을 재구성하도록(814) 적응되는, 재구성 디바이스.
  24. 제23항에 있어서, 상기 전자 회로부는 상기 영역 예측자를 획득하기 위해 적용되는 예측 모드를 나타내는 정보를 획득하도록 추가로 적응되는, 디바이스.
  25. 제23항 또는 제24항에 있어서, 상기 영역은,
    코딩 트리 유닛, 또는
    미리 정의된 고정 크기의 블록, 또는
    미리 정의된 고정 크기보다 더 큰 크기의 블록, 또는
    미리 정의된 값보다 더 낮은 코딩 트리 유닛에서의 깊이 값을 갖는 영역인, 디바이스.
  26. 제23항, 제24항 또는 제25항에 있어서, 상기 영역 예측자는 복수의 선형 예측들로부터 획득되며, 각각의 선형 예측은 상기 현재 영역과 공간적으로 이웃하는 상기 픽처의 적어도 하나의 영역으로부터 획득된 상기 픽처에서의 조명 변화들을 나타내는 파라미터들에 기초하는, 디바이스.
  27. 제23항, 제24항 또는 제25항에 있어서, 상기 영역 예측자는 수평 선형 예측과 수직 선형 예측의 결합에 기초하여 획득되며, 각각의 선형 예측은 상기 현재 영역과 이웃하는 재구성된 영역들의 샘플들 및 재구성되지 않은 영역에 속하는 적어도 하나의 샘플을 사용하는, 디바이스.
  28. 제27항에 있어서, 재구성되지 않은 영역에 속하는 상기 샘플은 상기 현재 영역 내의 또는 상기 현재 영역 밖의 상기 현재 영역의 우하 샘플인, 디바이스.
  29. 제23항 내지 제28항 중 어느 한 항에 있어서, 상기 전자 회로부는 상기 현재 영역에 대한 시간 예측자를 획득하도록 추가로 적응되고, 상기 최종 예측자는 상기 영역 예측자와 상기 시간 예측자의 가중 평균인, 디바이스.
  30. 제23항 내지 제29항 중 어느 한 항에 있어서, 상기 재구성된 잔차 영역은 상기 현재 영역을 재구성하기 위해 사용되기 전에 역 재성형 프로세스를 겪는, 디바이스.
  31. 제23항 내지 제30항 중 어느 한 항에 있어서, 상기 전자 회로부는 상기 현재 영역의 레벨에서 또는 상기 현재 영역의 하위 영역의 레벨에서 글로벌 및 로컬 예측을 결합하는 상기 모드의 사용을 시그널링하는 신택스 요소를 비트스트림에서 파싱하도록 추가로 적응되는, 디바이스.
  32. 제31항에 있어서, 재구성되지 않은 영역에 속하는 상기 샘플을 나타내는 정보가 상기 비트스트림으로부터 획득되는, 디바이스.
  33. 제23항 내지 제31항 중 어느 한 항에 있어서, 상기 적어도 하나의 잔차 하위 영역을 재구성하기 위해 사용되는 상기 현재 영역 외부의 모든 기준 샘플들의 값들은 상기 적어도 하나의 잔차 하위 영역을 재구성하기 전에 0으로 설정되는, 디바이스.
  34. 픽처의 현재 영역을 예측하기 위한 예측 디바이스로서, 전자 회로부를 포함하며, 상기 전자 회로부는,
    상기 현재 영역에 대한 영역 예측자를 획득하고(801);
    상기 영역 예측자로부터 획득된 최종 예측자를 상기 현재 영역으로부터 빼는 것에 의해 상기 현재 영역에 대한 잔차 영역을 획득하고(802);
    상기 잔차 영역을 잔차 하위 영역들로 파티셔닝하고(803);
    적어도 하나의 잔차 하위 영역을 인트라 예측하도록(804) 적응되며, 상기 잔차 영역의 적어도 하나의 샘플을 인트라 예측하기 위해 사용되는 상기 영역 외부의 기준 샘플들의 값들은 상기 적어도 하나의 잔차 하위 영역을 인트라 예측하기 전에 수정되는, 예측 디바이스.
  35. 제34항에 있어서, 상기 영역은,
    코딩 트리 유닛, 또는
    미리 정의된 고정 크기의 블록, 또는
    미리 정의된 고정 크기보다 더 큰 크기의 블록, 또는
    미리 정의된 값보다 더 낮은 코딩 트리 유닛에서의 깊이 값을 갖는 영역인, 디바이스.
  36. 제34항 또는 제35항에 있어서, 상기 영역 예측자는 복수의 선형 예측들로부터 획득되며, 각각의 선형 예측은 상기 현재 영역과 공간적으로 이웃하는 상기 픽처의 적어도 하나의 영역으로부터 획득된 상기 픽처에서의 조명 변화들을 나타내는 파라미터들에 기초하는, 디바이스.
  37. 제34항 또는 제35항에 있어서, 상기 영역 예측자는 수평 선형 예측과 수직 선형 예측의 결합에 기초하여 획득되며, 각각의 선형 예측은 상기 현재 영역과 이웃하는 재구성된 영역들의 샘플들 및 재구성되지 않은 영역에 속하는 적어도 하나의 샘플을 사용하는, 디바이스.
  38. 제37항에 있어서, 재구성되지 않은 영역에 속하는 상기 샘플은 상기 현재 영역 내의 또는 상기 현재 영역 밖의 상기 현재 영역의 우하 샘플인, 디바이스.
  39. 제34항 내지 제38항 중 어느 한 항에 있어서, 상기 전자 회로부는 상기 현재 영역에 대한 시간 예측자를 획득하도록 추가로 적응되고, 상기 최종 예측자는 상기 영역 예측자와 상기 시간 예측자의 가중 평균인, 디바이스.
  40. 제34항 내지 제39항 중 어느 한 항에 있어서, 상기 잔차 영역은 상기 적어도 하나의 잔차 하위 영역의 인트라 예측 전에 재성형 프로세스를 겪는, 디바이스.
  41. 제34항 내지 제40항 중 어느 한 항에 있어서, 상기 전자 회로부는 상기 현재 영역의 레벨에서 또는 상기 현재 영역의 하위 영역의 레벨에서 글로벌 및 로컬 예측을 결합하는 상기 예측 모드의 사용을 지정하는 신택스 요소를 비트스트림에서 시그널링하도록 추가로 적응되는, 디바이스.
  42. 제41항에 있어서, 재구성되지 않은 영역에 속하는 상기 샘플을 나타내는 정보가 상기 비트스트림에서 시그널링되는, 디바이스.
  43. 제41항 또는 제42항에 있어서, 상기 전자 회로부는 상기 영역 예측자를 획득하기 위해 적용되는 예측 모드를 나타내는 정보를 상기 비트스트림에서 시그널링하도록 추가로 적응되는, 디바이스.
  44. 제34항 내지 제43항 중 어느 한 항에 있어서, 상기 잔차 영역의 적어도 하나의 샘플을 인트라 예측하기 위해 사용되는 상기 현재 영역 외부의 모든 기준 샘플들의 값들은 상기 적어도 하나의 잔차 하위 영역을 인트라 예측하기 전에 0으로 설정되는, 디바이스.
  45. 제23항 내지 제44항 중 어느 한 항에 따른 디바이스를 포함하는 장치.
  46. 제12항 내지 제22항 중 어느 한 항의 방법에 의해, 또는 제34항 내지 제44항 중 어느 한 항의 디바이스에 의해, 또는 제45항이 제34항 내지 제44항 중 어느 한 항을 인용하는 경우의 제45항의 장치에 의해 생성되는 신호.
  47. 제1항 내지 제22항 중 어느 한 항에 따른 방법을 구현하기 위한 프로그램 코드 명령어들을 포함하는 컴퓨터 프로그램.
  48. 제1항 내지 제22항 중 어느 한 항에 따른 방법을 구현하기 위한 프로그램 코드 명령어들을 저장하는 비일시적 정보 저장 매체.
KR1020237036883A 2021-04-09 2022-03-29 넓은 구역에 대한 공간 조명 보상 KR20230170004A (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
EP21305474.5 2021-04-09
EP21305474 2021-04-09
PCT/EP2022/058313 WO2022214362A1 (en) 2021-04-09 2022-03-29 Spatial illumination compensation on large areas

Publications (1)

Publication Number Publication Date
KR20230170004A true KR20230170004A (ko) 2023-12-18

Family

ID=75690222

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020237036883A KR20230170004A (ko) 2021-04-09 2022-03-29 넓은 구역에 대한 공간 조명 보상

Country Status (5)

Country Link
US (1) US20240205412A1 (ko)
EP (1) EP4320866A1 (ko)
KR (1) KR20230170004A (ko)
CN (1) CN117413520A (ko)
WO (1) WO2022214362A1 (ko)

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2380354A4 (en) * 2008-12-19 2015-12-23 Mediatek Singapore Pte Ltd METHOD AND APPARATUS FOR VIDEO PROCESSING WITH RESIDUAL PREDICTION
CN102098519B (zh) * 2009-12-09 2013-04-17 浙江大学 视频编码方法、解码方法、编码及解码装置

Also Published As

Publication number Publication date
EP4320866A1 (en) 2024-02-14
CN117413520A (zh) 2024-01-16
WO2022214362A1 (en) 2022-10-13
US20240205412A1 (en) 2024-06-20

Similar Documents

Publication Publication Date Title
WO2020092535A1 (en) Multi-reference line intra prediction and most probable mode
EP3954118A1 (en) Wide angle intra prediction with sub-partitions
EP3706421A1 (en) Method and apparatus for video encoding and decoding based on affine motion compensation
JP2024059909A (ja) 画像エンコーディングおよびデコーディングのための方法およびデバイス
US20230164360A1 (en) Method and device for image encoding and decoding
WO2020086248A1 (en) Method and device for picture encoding and decoding
EP3641311A1 (en) Encoding and decoding methods and apparatus
US20230188757A1 (en) Method and device to finely control an image encoding and decoding process
CN117716688A (zh) 用于视频编码的外部增强预测
US20240205412A1 (en) Spatial illumination compensation on large areas
RU2815092C2 (ru) Широкоугольное внутрикадровое предсказание с подразделами
US20230262268A1 (en) Chroma format dependent quantization matrices for video encoding and decoding
US20240187649A1 (en) High precision 4x4 dst7 and dct8 transform matrices
WO2022263111A1 (en) Coding of last significant coefficient in a block of a picture
WO2024126057A1 (en) Reference picture marking process based on temporal identifier
KR20230140450A (ko) 디코딩 프로세스의 에너지 소비를 나타내는 정보를 시그널링하기 위한 메타데이터
KR20240018650A (ko) 픽처 리샘플링을 위한 고급 신택스
WO2024083500A1 (en) Methods and apparatuses for padding reference samples
WO2024012810A1 (en) Film grain synthesis using encoding information
WO2024099962A1 (en) ENCODING AND DECODING METHODS OF INTRA PREDICTION MODES USING DYNAMIC LISTS OF MOST PROBABLE MODEs AND CORRESPONDING APPARATUSES
WO2023222521A1 (en) Sei adapted for multiple conformance points
WO2023186752A1 (en) Methods and apparatuses for encoding/decoding a video
WO2023052141A1 (en) Methods and apparatuses for encoding/decoding a video
WO2023194104A1 (en) Temporal intra mode prediction
KR20230123984A (ko) 교차 성분 스케일링을 갖는 루마 맵핑을 위한 방법 및 디바이스