KR20210118401A - 파라미터 세트들을 사용한 인-루프 재성형 정보의 시그널링 - Google Patents

파라미터 세트들을 사용한 인-루프 재성형 정보의 시그널링 Download PDF

Info

Publication number
KR20210118401A
KR20210118401A KR1020217023159A KR20217023159A KR20210118401A KR 20210118401 A KR20210118401 A KR 20210118401A KR 1020217023159 A KR1020217023159 A KR 1020217023159A KR 20217023159 A KR20217023159 A KR 20217023159A KR 20210118401 A KR20210118401 A KR 20210118401A
Authority
KR
South Korea
Prior art keywords
video
block
domain
video block
coding mode
Prior art date
Application number
KR1020217023159A
Other languages
English (en)
Other versions
KR102617221B1 (ko
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 베이징 바이트댄스 네트워크 테크놀로지 컴퍼니, 리미티드
Priority to KR1020237043889A priority Critical patent/KR20240005124A/ko
Priority claimed from PCT/CN2020/074139 external-priority patent/WO2020156529A1/en
Publication of KR20210118401A publication Critical patent/KR20210118401A/ko
Application granted granted Critical
Publication of KR102617221B1 publication Critical patent/KR102617221B1/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/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
    • 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
    • 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/117Filters, e.g. for pre-processing or post-processing
    • 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/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/157Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
    • H04N19/159Prediction type, e.g. intra-frame, inter-frame or bidirectional frame prediction
    • 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/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/184Methods 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 bits, e.g. of the compressed video stream
    • 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/186Methods 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 a colour or a chrominance component
    • 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/188Methods 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 a video data packet, e.g. a network abstraction layer [NAL] unit
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/30Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability
    • 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/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/521Processing of motion vectors for estimating the reliability of the determined motion vectors or motion vector field, e.g. for smoothing the motion vector field or for correcting motion vectors
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/80Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation
    • H04N19/82Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation involving filtering within a prediction loop

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Physics & Mathematics (AREA)
  • Discrete Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

비디오 처리 방법이 제공되며, 이 비디오 처리 방법은 비디오의 비디오 영역의 현재 비디오 블록과 비디오의 코딩된 표현 사이의 전환을 수행하는 단계를 포함하며, 전환은 현재 비디오 블록이 제1 도메인 및 제2 도메인에 기초하여 구성되고/되거나 크로마 잔차가 루마 종속적 방식으로 스케일링되는 코딩 모드를 사용하고, 코딩된 표현에서의 파라미터 세트는 코딩 모드에 대한 파라미터 정보를 포함한다.

Description

파라미터 세트들을 사용한 인-루프 재성형 정보의 시그널링
관련 출원들에 대한 교차 참조
파리 조약에 따른 적용가능한 특허법 및/또는 규칙 하에서, 본 출원은 2019년 2월 1일자로 출원된 국제 특허 출원 제PCT/CN2019/074437호, 2019년 3월 14일자로 출원된 국제 특허 출원 제PCT/CN2019/078185호, 및 2019년 3월 23일자로 출원된 국제 특허 출원 제PCT/CN2019/079393호의 우선권 및 이익을 적시에 주장하도록 이루어진다. 특허법 하에서 모든 목적을 위해, 위에 언급된 출원들의 전체 개시내용들은 본 출원의 개시내용의 일부로서 참조로 포함된다.
기술 분야
본 특허 문서는 비디오 처리 기법들, 디바이스들 및 시스템들에 관한 것이다.
비디오 압축의 진보에도 불구하고, 디지털 비디오는 인터넷 및 다른 디지털 통신 네트워크들에서 가장 큰 대역폭 사용을 여전히 차지한다. 비디오를 수신하고 디스플레이할 수 있는 접속된 사용자 디바이스들의 수가 증가함에 따라, 디지털 비디오 사용에 대한 대역폭 수요가 계속 증가할 것으로 예상된다.
디지털 비디오 처리, 및 구체적으로는, 비디오 처리를 위한 인-루프 재성형(in-loop reshaping, ILR)에 관련된 디바이스들, 시스템들 및 방법들이 설명된다. 설명된 방법들은 기존의 비디오 처리 표준들(예를 들어, 고효율 비디오 코딩(High Efficiency Video Coding, HEVC))과 장래의 비디오 처리 표준들 또는 비디오 코덱들을 포함한 비디오 프로세서들 양자 모두에 적용될 수 있다.
하나의 대표적인 양태에서, 개시된 기술은 비디오 처리 방법을 제공하기 위해 사용될 수 있다. 이 방법은, 비디오의 현재 비디오 블록과 비디오의 코딩된 표현 사이의 전환을 위해, 제1 도메인 또는 제2 도메인에서의 샘플들에 기초하여 모션 정보 리파인먼트 프로세스를 수행하는 단계; 및 모션 정보 리파인먼트 프로세스의 결과에 기초하여 전환을 수행하는 단계를 포함하고, 전환 동안, 리파인되지 않은 모션 정보를 사용하여 제1 도메인에서의 제1 예측 블록으로부터 현재 비디오 블록에 대한 샘플들이 획득되고, 적어도 제2 예측 블록이 재구성 블록을 결정하는 데 사용되는 리파인된 모션 정보를 사용하여 제2 도메인에서 생성되고, 현재 비디오 블록의 재구성된 샘플들이 적어도 제2 예측 블록에 기초하여 생성된다.
다른 대표적인 양태에서, 개시된 기술은 비디오 처리 방법을 제공하기 위해 사용될 수 있다. 이 방법은 비디오의 현재 비디오 블록과 비디오의 코딩된 표현 사이의 전환을 수행하는 단계를 포함하고, 전환 동안, 현재 비디오 블록은 제1 도메인 및 제2 도메인에 기초하여 구성되고/되거나 크로마 잔차가 루마 종속적 방식으로 스케일링되며, 비디오의 비디오 영역에서의 제1 샘플 세트 및 현재 비디오 블록의 참조 픽처에서의 제2 샘플 세트에 적어도 기초하여 도출되는 파라미터들을 사용하여 전환 동안 코딩 툴이 적용되고, 제1 샘플들에 대한 도메인과 제2 샘플들에 대한 도메인이 정렬된다.
다른 대표적인 양태에서, 개시된 기술은 비디오 처리 방법을 제공하기 위해 사용될 수 있다. 이 방법은, 비디오의 현재 비디오 영역의 현재 비디오 블록에 대해, 이전 비디오 영역의 코딩 모드에 대한 하나 이상의 파라미터에 기초하여 현재 비디오 블록의 코딩 모드에 대한 파라미터를 결정하는 단계; 및 결정에 기초하여 현재 비디오 블록에 대한 코딩을 수행하여 비디오의 코딩된 표현을 생성하는 단계를 포함하며, 코딩 모드에 대한 파라미터는 비디오의 코딩된 표현에서의 파라미터 세트에 포함되고, 코딩을 수행하는 것은 제1 도메인에서의 현재 비디오 블록의 표현을 제2 도메인에서의 현재 비디오 블록의 표현으로 변환하는 것을 포함하고, 코딩 모드를 사용하여 코딩을 수행하는 동안, 현재 비디오 블록은 제1 도메인 및 제2 도메인에 기초하여 구성되고/되거나 크로마 잔차가 루마 종속적 방식으로 스케일링된다.
다른 대표적인 양태에서, 개시된 기술은 비디오 처리 방법을 제공하기 위해 사용될 수 있다. 이 방법은 코딩 모드에 대한 파라미터 정보를 포함하는 파라미터 세트를 포함하는 비디오의 코딩된 표현을 수신하는 단계; 및 파라미터 정보를 사용하여 코딩된 표현의 디코딩을 수행하여 코딩된 표현으로부터 비디오의 현재 비디오 영역의 현재 비디오 블록을 생성하는 단계를 포함하며, 코딩 모드에 대한 파라미터 정보는 이전 비디오 영역의 코딩 모드에 대한 하나 이상의 파라미터에 기초하고, 코딩 모드에서, 현재 비디오 블록은 제1 도메인 및 제2 도메인에 기초하여 구성되고/되거나 크로마 잔차가 루마 종속적 방식으로 스케일링된다.
다른 대표적인 양태에서, 개시된 기술은 비디오 처리 방법을 제공하기 위해 사용될 수 있다. 이 방법은 비디오의 현재 비디오 블록과 비디오의 코딩된 표현 사이의 전환을 수행하는 단계를 포함하고, 전환은 제1 도메인 또는 제1 도메인과 상이한 제2 도메인 내의 예측 블록에 필터링 연산을 적용하는 것을 포함한다.
다른 대표적인 양태에서, 개시된 기술은 비디오 처리 방법을 제공하기 위해 사용될 수 있다. 이 방법은 비디오의 현재 비디오 블록과 비디오의 코딩된 표현 사이의 전환을 수행하는 단계를 포함하고, 전환 동안, 현재 비디오 블록에 대한 최종 재구성 블록이 결정되고, 예측 방법을 사용하여 임시 재구성 블록이 생성되고 제2 도메인에서 표현된다.
다른 대표적인 양태에서, 개시된 기술은 비디오 처리 방법을 제공하기 위해 사용될 수 있다. 이 방법은 비디오의 비디오 영역의 현재 비디오 블록과 비디오의 코딩된 표현 사이의 전환을 수행하는 단계를 포함하며, 전환은 현재 비디오 블록이 제1 도메인 및 제2 도메인에 기초하여 구성되고/되거나 크로마 잔차가 루마 종속적 방식으로 스케일링되는 코딩 모드를 사용하고, 코딩된 표현에서의 파라미터 세트는 코딩 모드에 대한 파라미터 정보를 포함한다.
다른 대표적인 양태에서, 개시된 기술은 비디오 처리 방법을 제공하기 위해 사용될 수 있다. 이 방법은 크로마 블록인 비디오의 현재 비디오 블록과 비디오의 코딩된 표현 사이의 전환을 수행하는 단계를 포함하고, 전환 동안, 현재 비디오 블록은 제1 도메인 및 제2 도메인에 기초하여 구성되며, 전환은 현재 비디오 블록의 하나 이상의 크로마 성분에 순방향 재성형 프로세스(forward reshaping process) 및/또는 역 재성형 프로세스(inverse reshaping process)를 적용하는 것을 추가로 포함한다.
다른 대표적인 양태에서, 개시된 기술은 비디오 처리 방법을 제공하기 위해 사용될 수 있다. 이 방법은 비디오의 현재 비디오 크로마 블록과 비디오의 코딩된 표현 사이의 전환을 수행하는 단계를 포함하고, 전환을 수행하는 것은: 규칙에 기초하여 루마 종속적 크로마 잔차 스케일링(luma-dependent chroma residue scaling, LCRS)이 인에이블 또는 디스에이블되는지를 결정하는 것, 및 결정에 기초하여 현재 비디오 크로마 블록을 재구성하는 것을 포함한다.
다른 대표적인 양태에서, 개시된 기술은 비디오 처리 방법을 제공하기 위해 사용될 수 있다. 이 방법은, 비디오의 현재 비디오 블록과 비디오의 코딩된 표현 사이의 전환을 위해, 현재 비디오 블록의 하나 이상의 계수 값에 기초하여 코딩 모드의 사용을 디스에이블할지를 결정하는 단계; 및 결정에 기초하여 전환을 수행하는 단계를 포함하고, 코딩 모드를 사용하는 전환 동안, 현재 비디오 블록은 제1 도메인 및 제2 도메인에 기초하여 구성되고/되거나 크로마 잔차가 루마 종속적 방식으로 스케일링된다.
다른 대표적인 양태에서, 개시된 기술은 비디오 처리 방법을 제공하기 위해 사용될 수 있다. 이 방법은, 비디오의 가상 파이프라인 데이터 유닛(virtual pipeline data unit, VPDU)을 초과하는 비디오의 현재 비디오 블록 사이의 전환을 위해, 현재 비디오 블록을 영역들로 분할하는 단계; 및 각각의 영역에 개별적으로 코딩 모드를 적용함으로써 전환을 수행하는 단계 - 코딩 모드를 적용하는 것에 의한 전환 동안, 현재 비디오 블록은 제1 도메인 및 제2 도메인에 기초하여 구성되고/되거나 크로마 잔차가 루마 종속적 방식으로 스케일링됨 - 를 포함한다.
다른 대표적인 양태에서, 개시된 기술은 비디오 처리 방법을 제공하기 위해 사용될 수 있다. 이 방법은, 비디오의 현재 비디오 블록과 비디오의 코딩된 표현 사이의 전환을 위해, 현재 비디오 블록의 크기 또는 컬러 포맷에 기초하여 코딩 모드의 사용을 디스에이블할지를 결정하는 단계; 및 결정에 기초하여 전환을 수행하는 단계를 포함하고, 코딩 모드를 사용하는 전환 동안, 현재 비디오 블록은 제1 도메인 및 제2 도메인에 기초하여 구성되고/되거나 크로마 잔차가 루마 종속적 방식으로 스케일링된다.
다른 대표적인 양태에서, 개시된 기술은 비디오 처리 방법을 제공하기 위해 사용될 수 있다. 이 방법은 비디오의 현재 비디오 블록과 비디오의 코딩된 표현 사이의 전환을 수행하는 단계를 포함하고, 전환은 현재 비디오 블록이 제1 도메인 및 제2 도메인에 기초하여 구성되고/되거나 크로마 잔차가 루마 종속적 방식으로 스케일링되는 코딩 모드를 사용하고, 코딩된 표현에서의 적어도 하나의 신택스 요소는 코딩 모드의 사용의 표시 및 재성형기 모델의 표시를 제공한다.
다른 대표적인 양태에서, 개시된 기술은 비디오 처리 방법을 제공하기 위해 사용될 수 있다. 이 방법은, 비디오의 현재 비디오 블록과 비디오의 코딩된 표현 사이의 전환을 위해 코딩 모드가 디스에이블된다고 결정하는 단계; 및 결정에 기초하여 순방향 재성형 및/또는 역 재성형을 조건부로 스킵하는 단계를 포함하고, 코딩 모드에서, 현재 비디오 블록은 제1 도메인 및 제2 도메인에 기초하여 구성되고/되거나 크로마 잔차가 루마 종속적 방식으로 스케일링된다.
다른 대표적인 양태에서, 개시된 기술은 비디오 처리 방법을 제공하기 위해 사용될 수 있다. 이 방법은 비디오의 비디오 영역의 현재 비디오 블록과 비디오의 코딩된 표현 사이의 전환을 수행하는 단계를 포함하며, 전환은 현재 비디오 블록이 제1 도메인 및 제2 도메인에 기초하여 구성되고/되거나 크로마 잔차가 루마 종속적 방식으로 스케일링되는 코딩 모드를 사용하고, 비디오 영역에 대해 재성형 모드에서 다중 순방향 재성형 및/또는 다중 역 재성형이 적용된다.
다른 대표적인 양태에서, 개시된 기술은 비디오 처리 방법을 제공하기 위해 사용될 수 있다. 이 방법은, 비디오의 현재 비디오 블록과 비디오의 코딩된 표현 사이의 전환을 위해 코딩 모드가 인에이블된다고 결정을 행하는 단계; 및 팔레트 모드를 사용하여 전환을 수행하는 단계를 포함하고, 적어도 대표 샘플 값들의 팔레트가 현재 비디오 블록에 대해 사용되고, 코딩 모드에서, 현재 비디오 블록은 제1 도메인 및 제2 도메인에서의 샘플들에 기초하여 구성되고/되거나 크로마 잔차가 루마 종속적 방식으로 스케일링된다.
다른 대표적인 양태에서, 개시된 기술은 비디오 처리 방법을 제공하기 위해 사용될 수 있다. 이 방법은, 비디오의 현재 비디오 블록과 비디오의 코딩된 표현 사이의 전환을 위해, 현재 비디오 블록이 적어도 대표 샘플 값들의 팔레트가 현재 비디오 블록을 코딩하기 위해 사용되는 팔레트 모드에서 코딩된다고 결정을 행하는 단계; 및 결정으로 인해, 코딩 모드를 디스에이블함으로써 전환을 수행하는 단계를 포함하고, 코딩 모드가 비디오 블록에 적용될 때, 비디오 블록은 루마 종속적 방식으로 스케일링되는 크로마 잔차에 기초하여 구성된다.
다른 대표적인 양태에서, 개시된 기술은 비디오 처리 방법을 제공하기 위해 사용될 수 있다. 이 방법은, 비디오의 제1 비디오 블록과 비디오의 코딩된 표현 사이의 전환을 수행하는 단계 - 전환은 제1 코딩 모드, 및 적어도 대표 픽셀 값들의 팔레트가 현재 비디오 블록을 코딩하기 위해 사용되는 팔레트 코딩 모드를 사용함 - ; 및 팔레트 코딩 모드를 사용하지 않고 코딩되는 비디오의 제2 비디오 블록과 비디오의 코딩된 표현 사이의 전환을 수행하는 단계를 포함하고, 제2 비디오 블록의 전환은 제1 코딩 모드를 사용하고, 제1 코딩 모드가 비디오 블록에 적용될 때, 비디오 블록은 제1 도메인 및 제2 도메인에 기초하여 구성되고/되거나 크로마 잔차가 루마 종속적 방식으로 스케일링되고, 제1 코딩 모드는 제1 비디오 블록 및 제2 비디오 블록에 상이한 방식들로 적용된다.
다른 대표적인 양태에서, 개시된 기술은 비디오 처리 방법을 제공하기 위해 사용될 수 있다. 이 방법은, 비디오의 현재 비디오 블록과 비디오의 코딩된 표현 사이의 전환을 위해 코딩 모드가 인에이블된다고 결정을 행하는 단계, 및 현재 비디오 블록을 포함하는 픽처를 가리키는 적어도 블록 벡터를 사용하여 예측 블록을 생성하는 인트라 블록 카피(intra block copy) 모드를 사용하여 전환을 수행하는 단계를 포함하고, 코딩 모드에서, 현재 비디오 블록은 제1 도메인 및 제2 도메인에서의 샘플들에 기초하여 구성되고/되거나 크로마 잔차가 루마 종속적 방식으로 스케일링된다.
다른 대표적인 양태에서, 개시된 기술은 비디오 처리 방법을 제공하기 위해 사용될 수 있다. 이 방법은, 비디오의 현재 비디오 블록과 비디오의 코딩된 표현 사이의 전환을 위해, 현재 비디오 블록을 코딩하기 위해 현재 비디오 블록을 포함하는 비디오 프레임을 가리키는 적어도 블록 벡터를 사용하여 예측 블록을 생성하는 인트라 블록 카피(IBC) 모드에서 현재 비디오 블록이 코딩된다고 결정을 행하는 단계; 및 결정으로 인해, 코딩 모드를 디스에이블함으로써 전환을 수행하는 단계를 포함하고, 코딩 모드가 비디오 블록에 적용될 때, 비디오 블록은 제1 도메인 및 제2 도메인에 기초하여 구성되고/되거나 크로마 잔차가 루마 종속적 방식으로 스케일링된다.
다른 대표적인 양태에서, 개시된 기술은 비디오 처리 방법을 제공하기 위해 사용될 수 있다. 이 방법은, 비디오의 제1 비디오 블록과 비디오의 코딩된 표현 사이의 전환을 수행하는 단계 - 전환은 현재 비디오 블록을 포함하는 비디오 프레임을 가리키는 적어도 블록 벡터를 사용하여 예측 블록을 생성하는 인트라 블록 카피 모드 및 제1 코딩 모드를 사용함 - ; 및 인트라 블록 카피 모드를 사용하지 않고 코딩되는 비디오의 제2 비디오 블록과 비디오의 코딩된 표현 사이의 전환을 수행하는 단계를 포함하고, 제2 비디오 블록의 전환은 제1 코딩 모드를 사용하고, 제1 코딩 모드가 비디오 블록에 적용될 때, 비디오 블록은 제1 도메인 및 제2 도메인에 기초하여 구성되고/되거나 크로마 잔차가 루마 종속적 방식으로 스케일링되고, 제1 코딩 모드는 제1 비디오 블록 및 제2 비디오 블록에 상이한 방식들로 적용된다.
다른 대표적인 양태에서, 개시된 기술은 비디오 처리 방법을 제공하기 위해 사용될 수 있다. 이 방법은, 비디오의 현재 비디오 블록과 비디오의 코딩된 표현 사이의 전환을 위해 코딩 모드가 인에이블된다고 결정을 행하는 단계; 및 블록 기반 델타 펄스 코드 변조(block-based delta pulse code modulation, BDPCM) 모드를 사용하여 전환을 수행하는 단계를 포함하고, 코딩 모드에서, 현재 비디오 블록은 제1 도메인 및 제2 도메인에서의 샘플들에 기초하여 구성되고/되거나 크로마 잔차가 루마 종속적 방식으로 스케일링된다.
다른 대표적인 양태에서, 개시된 기술은 비디오 처리 방법을 제공하기 위해 사용될 수 있다. 이 방법은, 비디오의 현재 비디오 블록과 비디오의 코딩된 표현 사이의 전환을 위해, 현재 비디오 블록이 블록 기반 델타 펄스 코드 변조(BDPCM) 모드를 사용하여 코딩된다고 결정을 행하는 단계; 및 결정으로 인해, 코딩 모드를 디스에이블함으로써 전환을 수행하는 단계를 포함하고, 코딩 모드가 비디오 블록에 적용될 때, 비디오 블록은 제1 도메인 및 제2 도메인에 기초하여 구성되고/되거나 크로마 잔차가 루마 종속적 방식으로 스케일링된다.
다른 대표적인 양태에서, 개시된 기술은 비디오 처리 방법을 제공하기 위해 사용될 수 있다. 이 방법은, 비디오의 제1 비디오 블록과 비디오의 코딩된 표현 사이의 전환을 수행하는 단계 - 제1 비디오 블록의 전환은 제1 코딩 모드 및 블록 기반 델타 펄스 코드 변조(BDPCM) 모드를 사용함 - ; 및 비디오의 제2 비디오 블록과 비디오의 코딩된 표현 사이의 전환을 수행하는 단계를 포함하고, 제2 비디오 블록은 BDPCM 모드를 사용하지 않고 코딩되고, 제2 비디오 블록의 전환은 제1 코딩 모드를 사용하며, 제1 코딩 모드가 비디오 블록에 적용될 때, 비디오 블록은 제1 도메인 및 제2 도메인에 기초하여 구성되고/되거나 크로마 잔차가 루마 종속적 방식으로 스케일링되고, 제1 코딩 모드는 제1 비디오 블록 및 제2 비디오 블록에 상이한 방식들로 적용된다.
다른 대표적인 양태에서, 개시된 기술은 비디오 처리 방법을 제공하기 위해 사용될 수 있다. 이 방법은, 비디오의 현재 비디오 블록과 비디오의 코딩된 표현 사이의 전환을 위해 코딩 모드가 인에이블된다고 결정을 행하는 단계; 및 현재 비디오 블록을 코딩하는데 있어서 예측 잔차에 대한 변환이 스킵되는 변환 스킵(transform skip) 모드를 사용하여 전환을 수행하는 단계를 포함하고, 코딩 모드에서, 현재 비디오 블록은 제1 도메인 및 제2 도메인에서의 샘플들에 기초하여 구성되고/되거나 크로마 잔차가 루마 종속적 방식으로 스케일링된다.
다른 대표적인 양태에서, 개시된 기술은 비디오 처리 방법을 제공하기 위해 사용될 수 있다. 이 방법은, 비디오의 현재 비디오 블록과 비디오의 코딩된 표현 사이의 전환을 위해, 현재 비디오 블록을 코딩하는데 있어서 예측 잔차에 대한 변환이 스킵되는 변환 스킵 모드에서 현재 비디오 블록이 코딩된다고 결정을 행하는 단계; 및 결정으로 인해, 코딩 모드를 디스에이블함으로써 전환을 수행하는 단계를 포함하고, 코딩 모드가 비디오 블록에 적용될 때, 비디오 블록은 제1 도메인 및 제2 도메인에 기초하여 구성되고/되거나 크로마 잔차가 루마 종속적 방식으로 스케일링된다.
다른 대표적인 양태에서, 개시된 기술은 비디오 처리 방법을 제공하기 위해 사용될 수 있다. 이 방법은, 비디오의 제1 비디오 블록과 비디오의 코딩된 표현 사이의 전환을 수행하는 단계 - 제1 비디오 블록의 전환은 제1 코딩 모드 및 현재 비디오 블록을 코딩하는데 있어서 예측 잔차에 대한 변환이 스킵되는 변환 스킵 모드를 사용함 - ; 및 비디오의 제2 비디오 블록과 비디오의 코딩된 표현 사이의 전환을 수행하는 단계를 포함하고, 제2 비디오 블록은 변환 스킵 모드를 사용하지 않고 코딩되고, 제2 비디오 블록의 전환은 제1 코딩 모드를 사용하며, 제1 코딩 모드가 비디오 블록에 적용될 때, 비디오 블록은 제1 도메인 및 제2 도메인에 기초하여 구성되고/되거나 크로마 잔차가 루마 종속적 방식으로 스케일링되고, 제1 코딩 모드는 제1 비디오 블록 및 제2 비디오 블록에 상이한 방식들로 적용된다.
다른 대표적인 양태에서, 개시된 기술은 비디오 처리 방법을 제공하기 위해 사용될 수 있다. 이 방법은, 비디오의 현재 비디오 블록과 비디오의 코딩된 표현 사이의 전환을 위해 코딩 모드가 인에이블된다고 결정을 행하는 단계; 및 현재 비디오 블록이 변환 및 변환-도메인 양자화를 적용하지 않고 코딩되는 인트라 펄스 코드 변조 모드를 사용하여 전환을 수행하는 단계를 포함하고, 코딩 모드에서, 현재 비디오 블록은 제1 도메인 및 제2 도메인에서의 샘플들에 기초하여 구성되고/되거나 크로마 잔차가 루마 종속적 방식으로 스케일링된다.
다른 대표적인 양태에서, 개시된 기술은 비디오 처리 방법을 제공하기 위해 사용될 수 있다. 이 방법은, 비디오의 현재 비디오 블록과 비디오의 코딩된 표현 사이의 전환을 위해, 현재 비디오 블록이 변환 및 변환-도메인 양자화를 적용하지 않고 코딩되는 인트라 펄스 코드 변조 모드에서 현재 비디오 블록이 코딩된다고 결정을 행하는 단계; 및 결정으로 인해, 코딩 모드를 디스에이블함으로써 전환을 수행하는 단계를 포함하고, 코딩 모드가 비디오 블록에 적용될 때, 비디오 블록은 제1 도메인 및 제2 도메인에 기초하여 구성되고/되거나 크로마 잔차가 루마 종속적 방식으로 스케일링된다.
다른 대표적인 양태에서, 개시된 기술은 비디오 처리 방법을 제공하기 위해 사용될 수 있다. 이 방법은, 비디오의 제1 비디오 블록과 비디오의 코딩된 표현 사이의 전환을 수행하는 단계 - 제1 비디오 블록의 전환은 제1 코딩 모드 및 현재 비디오 블록이 변환 및 변환-도메인 양자화를 적용하지 않고 코딩되는 인트라 펄스 코드 변조 모드를 사용함 - ; 및 비디오의 제2 비디오 블록과 비디오의 코딩된 표현 사이의 전환을 수행하는 단계를 포함하고, 제2 비디오 블록은 인트라 펄스 코드 변조 모드를 사용하지 않고 코딩되고, 제2 비디오 블록의 전환은 제1 코딩 모드를 사용하며, 제1 코딩 모드가 비디오 블록에 적용될 때, 비디오 블록은 제1 도메인 및 제2 도메인에 기초하여 구성되고/되거나 크로마 잔차가 루마 종속적 방식으로 스케일링되고, 제1 코딩 모드는 제1 비디오 블록 및 제2 비디오 블록에 상이한 방식들로 적용된다.
다른 대표적인 양태에서, 개시된 기술은 비디오 처리 방법을 제공하기 위해 사용될 수 있다. 이 방법은, 비디오의 현재 비디오 블록과 비디오의 코딩된 표현 사이의 전환을 위해 코딩 모드가 인에이블된다고 결정을 행하는 단계; 및 현재 비디오 블록이 변환 및 양자화 없이 무손실 코딩되는 수정된 트랜스퀀트-바이패스(transquant-bypass) 모드를 사용하여 전환을 수행하는 단계를 포함하고, 코딩 모드에서, 현재 비디오 블록은 제1 도메인 및 제2 도메인에서의 샘플들에 기초하여 구성되고/되거나 크로마 잔차가 루마 종속적 방식으로 스케일링된다.
다른 대표적인 양태에서, 개시된 기술은 비디오 처리 방법을 제공하기 위해 사용될 수 있다. 이 방법은, 비디오의 현재 비디오 블록과 비디오의 코딩된 표현 사이의 전환을 위해, 현재 비디오 블록이 변환 및 양자화 없이 무손실 코딩되는 트랜스퀀트-바이패스 모드에서 현재 비디오 블록이 코딩된다고 결정을 행하는 단계; 및 결정으로 인해, 코딩 모드를 디스에이블함으로써 전환을 수행하는 단계를 포함하고, 코딩 모드가 비디오 블록에 적용될 때, 비디오 블록은 제1 도메인 및 제2 도메인에 기초하여 구성되고/되거나 크로마 잔차가 루마 종속적 방식으로 스케일링된다.
다른 대표적인 양태에서, 개시된 기술은 비디오 처리 방법을 제공하기 위해 사용될 수 있다. 이 방법은, 비디오의 제1 비디오 블록과 비디오의 코딩된 표현 사이의 전환을 수행하는 단계 - 제1 비디오 블록의 전환은 제1 코딩 모드 및 현재 비디오 블록이 변환 및 양자화 없이 무손실 코딩되는 트랜스퀀트-바이패스 모드를 사용함 - ; 및 비디오의 제2 비디오 블록과 비디오의 코딩된 표현 사이의 전환을 수행하는 단계를 포함하고, 제2 비디오 블록은 트랜스퀀트-바이패스 모드를 사용하지 않고 코딩되고, 제2 비디오 블록의 전환은 제1 코딩 모드를 사용하며, 제1 코딩 모드가 비디오 블록에 적용될 때, 비디오 블록은 제1 도메인 및 제2 도메인에 기초하여 구성되고/되거나 크로마 잔차가 루마 종속적 방식으로 스케일링되고, 제1 코딩 모드는 제1 비디오 블록 및 제2 비디오 블록에 상이한 방식들로 적용된다.
다른 대표적인 양태에서, 개시된 기술은 비디오 처리 방법을 제공하기 위해 사용될 수 있다. 이 방법은 비디오의 현재 비디오 블록과 비디오의 코딩된 표현 사이의 전환을 수행하는 단계를 포함하고, 전환은 현재 비디오 블록이 제1 도메인 및 제2 도메인에 기초하여 구성되고/되거나 크로마 잔차가 루마 종속적 방식으로 스케일링되는 코딩 모드를 사용하고, 코딩 모드에 사용되는 정보는 시퀀스 파라미터 세트(sequence parameter set, SPS), 비디오 파라미터 세트(video parameter set, VPS), 픽처 파라미터 세트(picture parameter set, PPS), 또는 적응적 루프 필터링(adaptive loop filtering, ALF) 파라미터들을 운반하는 데 사용되는 적응 파라미터 세트(adaptation parameter set, APS)와 상이한 파라미터 세트에서 시그널링된다.
다른 대표적인 양태에서, 개시된 기술은 비디오 처리 방법을 제공하기 위해 사용될 수 있다. 이 방법은 비디오의 현재 비디오 블록과 비디오의 코딩된 표현 사이의 전환을 수행하는 단계를 포함하고, 전환은 현재 비디오 블록이 제1 도메인 및 제2 도메인에 기초하여 구성되고/되거나 크로마 잔차가 루마 종속적 방식으로 스케일링되는 코딩 모드를 사용하고, 코딩 모드에 사용되는 정보는 적응적 루프 필터링(ALF) 정보와 함께 적응 파라미터 세트(APS)에서 시그널링되고, 코딩 모드에 사용되는 정보와 ALF 정보는 하나의 NAL 유닛에 포함된다.
다른 대표적인 양태에서, 개시된 기술은 비디오 처리 방법을 제공하기 위해 사용될 수 있다. 이 방법은 비디오의 비디오 영역의 현재 비디오 블록과 비디오의 코딩된 표현 사이의 전환을 수행하는 단계를 포함하며, 전환은 현재 비디오 블록이 제1 도메인 및 제2 도메인에 기초하여 구성되고/되거나 크로마 잔차가 루마 종속적 방식으로 스케일링되는 코딩 모드를 사용하고, 코딩 모드에 사용되는 정보는 적응적 루프 필터링(ALF) 정보를 시그널링하는 데 사용되는 제2 타입의 적응 파라미터 세트(APS)와 상이한 제1 타입의 APS에서 시그널링된다.
다른 대표적인 양태에서, 개시된 기술은 비디오 처리 방법을 제공하기 위해 사용될 수 있다. 이 방법은 비디오의 비디오 영역의 현재 비디오 블록과 비디오의 코딩된 표현 사이의 전환을 수행하는 단계를 포함하며, 전환은 현재 비디오 블록이 제1 도메인 및 제2 도메인에 기초하여 구성되고/되거나 크로마 잔차가 루마 종속적 방식으로 스케일링되는 코딩 모드를 사용하고, 비디오 영역은 적응 파라미터 세트 또는 비디오를 처리하는 데 사용되는 지정된 타입의 데이터 구조 이전에 시그널링되는 파라미터 세트를 참조하는 것이 허용되지 않고, 지정된 타입의 데이터 구조는 비디오 영역 이전에 시그널링된다.
다른 대표적인 양태에서, 개시된 기술은 비디오 처리 방법을 제공하기 위해 사용될 수 있다. 이 방법은 비디오의 현재 비디오 블록과 비디오의 코딩된 표현 사이의 전환을 수행하는 단계를 포함하고, 전환은 현재 비디오 블록이 제1 도메인 및 제2 도메인에 기초하여 구성되고/되거나 크로마 잔차가 루마 종속적 방식으로 스케일링되는 코딩 모드를 사용하고, 비디오를 처리하는 데 사용되는 파라미터들을 포함하는 파라미터 세트의 신택스 요소는 적합성 비트스트림(conformance bitstream) 내에 미리 정의된 값들을 갖는다.
또 다른 대표적인 양태에서, 위에서 설명한 방법은 프로세서 실행가능 코드의 형태로 구현되고 컴퓨터 판독가능 프로그램 매체에 저장된다.
또 다른 대표적인 양태에서, 위에서 설명한 방법을 수행하도록 구성되거나 동작가능한 디바이스가 개시된다. 디바이스는 이 방법을 구현하도록 프로그래밍되는 프로세서를 포함할 수 있다.
또 다른 대표적인 양태에서, 비디오 디코더 장치는 본 명세서에 설명된 바와 같은 방법을 구현할 수 있다.
개시된 기술의 위의 및 또 다른 양태들 및 특징들은 도면들, 설명 및 청구항들에서 더 상세히 설명된다.
도 1은 병합 후보 리스트(merge candidate list)를 구성하는 예를 도시한다.
도 2는 공간적 후보들의 위치들의 예를 도시한다.
도 3은 공간적 병합 후보들의 중복 검사를 받은 후보 쌍들의 예를 도시한다.
도 4a 및 도 4b는 현재 블록의 크기 및 형상에 기초한 제2 예측 유닛(PU)의 위치의 예들을 도시한다.
도 5는 시간적 병합 후보들에 대한 모션 벡터 스케일링의 예를 도시한다.
도 6은 시간적 병합 후보들에 대한 후보 위치들의 예를 도시한다.
도 7은 조합된 양예측 병합 후보(combined bi-predictive merge candidate)를 생성하는 예를 도시한다.
도 8은 모션 벡터 예측 후보들을 구성하는 예를 도시한다.
도 9는 공간적 모션 벡터 후보들에 대한 모션 벡터 스케일링의 예를 도시한다.
도 10은 코딩 유닛(CU)에 대한 ATMVP(alternative temporal motion vector prediction) 알고리즘을 사용하는 모션 예측의 예를 도시한다.
도 11은 STMVP(spatial-temporal motion vector prediction) 알고리즘에 의해 사용되는 서브-블록들 및 이웃 블록들을 갖는 코딩 유닛(CU)의 예를 도시한다.
도 12는 조명 보상(illumination compensation, IC) 파라미터들을 도출하기 위한 이웃 샘플들의 예를 도시한다.
도 13a 및 도 13b는 각각 단순화된 4-파라미터 아핀 모델 및 단순화된 6-파라미터 아핀 모델의 예들을 도시한다.
도 14는 서브-블록 당 아핀 모션 벡터 필드(motion vector field, MVF)의 예를 도시한다.
도 15a 및 도 15b는 각각 4-파라미터 및 6-파라미터 아핀 모델들의 예들을 도시한다.
도 16은 상속된 아핀 후보들에 대한 AF_INTER에 대한 모션 벡터 예측의 예를 도시한다.
도 17은 구성된 아핀 후보들에 대한 AF_INTER에 대한 모션 벡터 예측의 예를 도시한다.
도 18a 및 도 18b는 AF_MERGE 모드에 대한 예시적인 후보 블록들 및 CPMV 예측자 도출을 각각 도시한다.
도 19는 아핀 병합 모드에 대한 후보 위치들의 예를 도시한다.
도 20은 UMVE 검색 프로세스의 예를 도시한다.
도 21은 UMVE 검색 포인트의 예를 도시한다.
도 22는 쌍방 템플릿 매칭(bilateral template matching)에 기초한 디코더측 모션 벡터 리파인먼트(decoder-side motion vector refinement, DMVR)의 예를 도시한다.
도 23은 재성형을 갖는 디코딩 흐름의 예시적인 흐름도를 도시한다.
도 24는 쌍방 필터에서 이용되는 이웃 샘플들의 예를 도시한다.
도 25는 가중치 계산에 이용되는 2개의 샘플을 커버하는 윈도우(window)들의 예를 도시한다.
도 26은 스캔 패턴의 예를 도시한다.
도 27은 모드-간 디코딩 프로세스의 예를 도시한다.
도 28은 모드-간 디코딩 프로세스의 또 다른 예를 도시한다.
도 29는 재구성-후 필터(post-reconstruction filter)들을 이용한 모드-간 디코딩 프로세스의 예를 도시한다.
도 30은 재구성-후 필터들을 이용한 모드-간 디코딩 프로세스의 또 다른 예를 도시한다.
도 31a 및 도 31b는 비디오 처리를 위한 예시적인 방법들의 흐름도들을 도시한다.
도 32a 내지 도 32d는 비디오 처리를 위한 예시적인 방법들의 흐름도들을 도시한다.
도 33은 비디오 처리를 위한 예시적인 방법의 흐름도를 도시한다.
도 34a 및 도 34b는 비디오 처리를 위한 예시적인 방법들의 흐름도들을 도시한다.
도 35a 내지 도 35f는 비디오 처리를 위한 예시적인 방법들의 흐름도들을 도시한다.
도 36a 내지 도 36c는 비디오 처리를 위한 예시적인 방법들의 흐름도들을 도시한다.
도 37a 내지 도 37c는 비디오 처리를 위한 예시적인 방법들의 흐름도들을 도시한다.
도 38a 내지 도 38l은 비디오 처리를 위한 예시적인 방법들의 흐름도들을 도시한다.
도 39a 내지 도 39e는 비디오 처리를 위한 예시적인 방법들의 흐름도들을 도시한다.
도 40a 및 도 40b는 본 문서에서 설명되는 비주얼 미디어 디코딩 또는 비주얼 미디어 인코딩 기법을 구현하기 위한 하드웨어 플랫폼들의 예들을 도시한다.
고해상도 비디오의 수요 증가로 인해, 비디오 처리 방법들 및 기법들은 현대 기술에서 널리 사용되고 있다. 비디오 코덱들은 전형적으로 디지털 비디오를 압축 또는 압축해제하는 전자 회로 또는 소프트웨어를 포함하며, 더 높은 코딩 효율을 제공하도록 계속적으로 개선되고 있다. 비디오 코덱은 압축되지 않은 비디오를 압축된 포맷으로 전환하거나, 그 반대로 전환한다. 비디오 품질, 비디오를 표현하는 데 사용되는 데이터의 양(비트 레이트에 의해 결정됨), 인코딩 및 디코딩 알고리즘들의 복잡도, 데이터 손실들 및 에러들에 대한 민감도, 편집의 용이성, 랜덤 액세스, 및 엔드-투-엔드 지연(레이턴시) 사이에 복잡한 관계들이 존재한다. 압축된 포맷은 보통 표준 비디오 압축 사양, 예를 들어, HEVC(High Efficiency Video Coding) 표준(H.265 또는 MPEG-H Part 2로도 알려짐), 완성될 다용도 비디오 코딩(Versatile Video Coding) 표준, 또는 다른 현재 및/또는 장래 비디오 코딩 표준들을 따른다.
개시된 기술의 실시예들은 압축 성능을 개선시키기 위해 기존의 비디오 코딩 표준들(예를 들어, HEVC, H.265) 및 장래의 표준들에 적용될 수 있다. 섹션 제목들은 본 문서에서 설명의 가독성을 개선시키기 위해 사용되며, 논의 또는 실시예들(및/또는 구현들)을 결코 각자의 섹션들에만 제한하지 않는다.
1 HEVC/H.265에서의 인터-예측(inter-prediction)의 예들
비디오 코딩 표준들은 수년 동안 상당히 개선되었으며, 이제 부분적으로는 높은 코딩 효율 및 더 높은 해상도들에 대한 지원을 제공한다. HEVC 및 H.265와 같은 최근의 표준들은 시간적 예측 플러스 변환 코딩(temporal prediction plus transform coding)이 이용되는 하이브리드 비디오 코딩 구조에 기초한다.
1.1 예측 모드들의 예들
각각의 인터-예측된 PU(prediction unit)는 1개 또는 2개의 참조 픽처 리스트에 대한 모션 파라미터들을 갖는다. 일부 실시예들에서, 모션 파라미터들은 모션 벡터 및 참조 픽처 인덱스를 포함한다. 다른 실시예들에서, 2개의 참조 픽처 리스트 중 하나의 사용은 또한 inter_pred_idc를 사용하여 시그널링될 수 있다. 또 다른 실시예들에서, 모션 벡터들은 예측자들에 대해 델타들로서 명시적으로 코딩될 수 있다.
CU가 스킵 모드로 코딩될 때, 하나의 PU는 CU와 연관되고, 어떠한 유의 잔여 계수(significant residual coefficient)도 없고, 어떠한 코딩된 모션 벡터 델타 또는 참조 픽처 인덱스도 없다. 공간적 및 시간적 후보들을 포함하는 이웃 PU들로부터 현재 PU에 대한 모션 파라미터들이 획득되는 병합 모드가 특정된다. 병합 모드는 스킵 모드에 대해서뿐만 아니라 임의의 인터-예측된 PU에 적용될 수 있다. 병합 모드에 대한 대안은 모션 파라미터들의 명시적 송신이며, 여기서 모션 벡터들(더 정확하게는, 모션 벡터 예측자와 비교한 모션 벡터 차이들(MVD)), 각각의 참조 픽처 리스트에 대한 대응하는 참조 픽처 인덱스 및 참조 픽처 리스트 사용이 각각의 PU마다 명시적으로 시그널링된다. 이러한 타입의 모드는 본 문서에서 AMVP(advanced motion vector prediction)로 명명된다.
시그널링이 2개의 참조 픽처 리스트 중 하나가 사용될 것임을 나타낼 때, PU는 하나의 샘플 블록으로부터 생성된다. 이것을 '단예측(uni-prediction)'이라고 지칭한다. P-슬라이스와 B-슬라이스 양자 모두에 대해 단예측이 이용가능하다.
시그널링이 참조 픽처 리스트들 둘 다가 사용될 것임을 나타낼 때, PU는 2개의 샘플 블록으로부터 생성된다. 이것을 '양예측(bi-prediction)'이라고 지칭한다. 양예측은 B-슬라이스에 대해서만 이용가능하다.
참조 픽처 리스트
HEVC에서, 인터 예측이라는 용어는 현재 디코딩된 픽처 이외의 참조 픽처들의 데이터 요소들(예를 들어, 샘플 값들 또는 모션 벡터들)로부터 도출된 예측을 나타내기 위해 사용된다. H.264/AVC에서와 같이, 픽처는 다수의 참조 픽처들로부터 예측될 수 있다. 인터 예측에 사용되는 참조 픽처들은 하나 이상의 참조 픽처 리스트로 조직된다. 참조 인덱스는 리스트 내의 참조 픽처들 중 어느 것이 예측 신호를 생성하기 위해 사용되어야 하는지를 식별한다.
단일 참조 픽처 리스트, 즉, 리스트 0이 P 슬라이스에 사용되고 2개의 참조 픽처 리스트, 즉, 리스트 0과 리스트 1이 B 슬라이스에 사용된다. 리스트 0/1에 포함된 참조 픽처들은 캡처링/디스플레이 순서의 관점에서 과거 및 미래 픽처들로부터의 것일 수 있다는 점에 유의해야 한다.
1.1.1 병합 모드에 대한 후보들을 구성하는 실시예들
PU가 병합 모드를 사용하여 예측될 때, 병합 후보 리스트 내의 엔트리를 가리키는 인덱스가 비트스트림으로부터 파싱되고 모션 정보를 검색하는 데 사용된다. 이 리스트의 구성은 다음의 단계들의 시퀀스에 따라 요약될 수 있다:
단계 1: 초기 후보 도출
단계 1.1: 공간적 후보 도출
단계 1.2: 공간적 후보에 대한 중복 검사
단계 1.3: 시간적 후보 도출
단계 2: 추가적인 후보 삽입
단계 2.1: 양예측 후보들의 생성
단계 2.2: 제로 모션 후보들의 삽입
도 1은 위에 요약된 단계들의 시퀀스에 기초하여 병합 후보 리스트를 구성하는 예를 도시한다. 공간적 병합 후보 도출의 경우, 5개의 상이한 위치에 위치하는 후보들 중에서 최대 4개의 병합 후보가 선택된다. 시간적 병합 후보 도출의 경우, 2개의 후보 중에서 최대 하나의 병합 후보가 선택된다. 디코더에서 각각의 PU에 대한 일정한 수의 후보들이 가정되기 때문에, 후보들의 수가 슬라이스 헤더에서 시그널링되는 병합 후보의 최대 수(MaxNumMergeCand)에 도달하지 않을 때 추가적인 후보들이 생성된다. 후보들의 수가 일정하기 때문에, 절단된 단항 이진화(truncated unary binarization, TU)를 사용하여 최상의 병합 후보의 인덱스가 인코딩된다. CU의 크기가 8과 같으면, 현재 CU의 모든 PU들은 2Nx2N 예측 유닛의 병합 후보 리스트와 동일한 단일 병합 후보 리스트를 공유한다.
1.1.2 공간적 병합 후보들의 구성
공간적 병합 후보들의 도출에서, 도 2에 도시된 위치들에 위치한 후보들 중에서 최대 4개의 병합 후보가 선택된다. 도출 순서는 A1, B1, B0, A0 및 B2이다. 위치 B2는 위치 A1, B1, B0, A0의 임의의 PU가 이용가능하지 않거나(예를 들어, 그것이 다른 슬라이스 또는 타일에 속하기 때문) 또는 인트라 코딩될 때에만 고려된다. 위치 A1에서의 후보가 추가된 후에, 나머지 후보들의 추가에 대해 중복 검사를 수행하여 동일한 모션 정보를 갖는 후보들이 리스트로부터 배제되는 것을 보장해서, 코딩 효율을 향상시킨다.
계산 복잡성을 감소시키기 위해, 모든 가능한 후보 쌍들이 언급된 중복 검사에서 고려되지는 않는다. 대신에, 도 3에서 화살표로 연결된 쌍들만이 고려되고, 중복 검사를 위해 사용되는 대응하는 후보가 동일한 모션 정보를 갖지 않는 경우에만 리스트에 후보가 추가된다. 복제 모션 정보(duplicate motion information)의 다른 소스는 2Nx2N과는 상이한 파티션들과 연관된 "제2 PU"이다. 예로서, 도 4a 및 도 4b는 각각 Nx2N 및 2NxN의 경우에 대한 제2 PU를 도시한다. 현재 PU가 Nx2N으로서 파티셔닝될 때, 위치 A1에서의 후보는 리스트 구성에 고려되지 않는다. 일부 실시예들에서, 이 후보를 추가하면, 코딩 유닛에서 단 하나의 PU를 갖기에는 중복인, 동일한 모션 정보를 갖는 2개의 예측 유닛으로 이어질 수 있다. 유사하게, 현재 PU가 2NxN으로서 파티셔닝될 때 위치 B1은 고려되지 않는다.
1.1.3 시간적 병합 후보들의 구성
이 단계에서는, 하나의 후보만이 리스트에 추가된다. 특히, 이 시간적 병합 후보의 도출에서는, 주어진 참조 픽처 리스트 내의 현재 픽처와 가장 작은 POC 차이를 갖는 픽처에 속하는 동위치 PU에 기초하여 스케일링된 모션 벡터가 도출된다. 동위치 PU의 도출에 사용될 참조 픽처 리스트는 슬라이스 헤더에서 명시적으로 시그널링된다.
도 5는 POC 거리들 tb 및 td를 사용하여 동위치 PU의 모션 벡터로부터 스케일링되는 (점선으로서의) 시간적 병합 후보에 대한 스케일링된 모션 벡터의 도출의 예를 도시하며, 여기서 tb는 현재 픽처의 참조 픽처와 현재 픽처 사이의 POC 차이인 것으로 정의되고, td는 동위치 픽처의 참조 픽처와 동위치 픽처 사이의 POC 차이인 것으로 정의된다. 시간적 병합 후보의 참조 픽처 인덱스는 제로와 동일하게 설정된다. B-슬라이스의 경우, 2개의 모션 벡터 - 하나는 참조 픽처 리스트 0에 대한 것이고 다른 하나는 참조 픽처 리스트 1에 대한 것임 - 가 획득되고 조합되어 양예측 병합 후보를 만든다.
참조 프레임에 속하는 동위치 PU(Y)에서, 시간적 후보에 대한 위치는 도 6에 도시된 바와 같이 후보들 C0과 C1 사이에서 선택된다. 위치 C0에서의 PU가 이용가능하지 않거나, 인트라 코딩되거나, 현재 CTU의 외부에 있으면, 위치 C1이 사용된다. 그렇지 않으면, 위치 C0은 시간적 병합 후보의 도출에서 사용된다.
1.1.4 추가적인 타입들의 병합 후보들의 구성
시공간적 병합 후보들 이외에, 2개의 추가적인 타입의 병합 후보들이 있다: 조합된 양예측 병합 후보 및 제로 병합 후보. 조합된 양예측 병합 후보들은 시공간적 병합 후보들을 이용하여 생성된다. 조합된 양예측 병합 후보는 B-슬라이스에만 사용된다. 조합된 양예측 후보들은 초기 후보의 제1 참조 픽처 리스트 모션 파라미터들을 또 다른 초기 후보의 제2 참조 픽처 리스트 모션 파라미터들과 조합함으로써 생성된다. 이들 2개의 투플(tuple)이 상이한 모션 가설(motion hypotheses)을 제공하는 경우, 이들은 새로운 양예측 후보를 형성할 것이다.
도 7은 이 프로세스의 예를 도시하며, 원래의 리스트(좌측의 710) 내의 2개의 후보 - 이는 mvL0 및 refIdxL0 또는 mvL1 및 refIdxL1을 가짐 - 를 사용하여 최종 리스트(우측의 720)에 추가되는 조합된 양예측 병합 후보를 생성한다. 이러한 추가적인 병합 후보들을 생성하기 위해 고려되는 조합들에 관한 다수의 규칙들이 있다.
제로 모션 후보들을 삽입하여 병합 후보 리스트 내의 나머지 엔트리들을 채우고 그에 따라 MaxNumMergeCand 용량에 도달(hit)한다. 이러한 후보들은 제로 공간적 변위 및 제로에서 시작하여 새로운 제로 모션 후보가 리스트에 추가될 때마다 증가하는 참조 픽처 인덱스를 갖는다. 이러한 후보들에 의해 사용되는 참조 프레임들의 수는 단방향 및 양방향 예측에 대해 각각 1 및 2이다. 일부 실시예들에서, 이러한 후보들에 대해서는 중복 검사가 수행되지 않는다.
1.2 AMVP(advanced motion vector prediction)의 실시예들
AMVP는 모션 벡터와 이웃 PU들의 시공간적 상관을 이용하며, 이는 모션 파라미터들의 명시적 송신을 위해 사용된다. 그것은 먼저 좌측 상부 시간적으로 이웃하는 PU 위치들의 이용가능성을 검사하고, 중복 후보들을 제거하고 제로 벡터를 추가하여 후보 리스트를 일정한 길이로 만드는 것에 의해 모션 벡터 후보 리스트를 구성한다. 이어서, 인코더는 후보 리스트로부터 최상의 예측자를 선택하고 선택된 후보를 나타내는 대응하는 인덱스를 송신할 수 있다. 병합 인덱스 시그널링과 유사하게, 최상의 모션 벡터 후보의 인덱스는 절단된 단항(truncated unary)을 사용하여 인코딩된다. 이 경우에 인코딩될 최대 값은 2이다(도 8 참조). 다음 섹션들에서는, 모션 벡터 예측 후보의 도출 프로세스에 관한 상세사항들이 제공된다.
1.2.1 AMVP 후보들의 도출의 예들
도 8은 모션 벡터 예측 후보에 대한 도출 프로세스를 요약하며, refidx를 입력으로 하여 각각의 참조 픽처 리스트에 대해 구현될 수 있다.
모션 벡터 예측에서는, 2가지 타입의 모션 벡터 후보가 고려된다: 공간적 모션 벡터 후보 및 시간적 모션 벡터 후보. 공간적 모션 벡터 후보 도출의 경우, 궁극적으로 도 2에 이전에 도시된 바와 같이 5개의 상이한 위치에 위치하는 각각의 PU의 모션 벡터들에 기초하여 2개의 모션 벡터 후보가 도출된다.
시간적 모션 벡터 후보 도출의 경우, 2개의 상이한 동위치된 위치들(co-located positions)에 기초하여 도출되는 2개의 후보로부터 하나의 모션 벡터 후보가 선택된다. 시공간적 후보들의 제1 리스트가 만들어진 후에, 리스트 내의 복제된 모션 벡터 후보들이 제거된다. 잠재적 후보들의 수가 2보다 크면, 연관된 참조 픽처 리스트 내의 참조 픽처 인덱스가 1보다 큰 모션 벡터 후보들이 리스트로부터 제거된다. 시공간적 모션 벡터 후보들의 수가 2보다 작으면, 추가적인 제로 모션 벡터 후보들이 리스트에 추가된다.
1.2.2 공간적 모션 벡터 후보들의 구성
공간적 모션 벡터 후보들의 도출에서, 도 2에 이전에 도시된 바와 같은 위치들에 위치하는 PU들로부터 도출되는 5개의 잠재적 후보 중에서 최대 2개의 후보가 고려되며, 그 위치들은 모션 병합의 위치들과 동일하다. 현재 PU의 좌측에 대한 도출 순서는 A0, A1, 및 스케일링된 A0, 스케일링된 A1로서 정의된다. 현재 PU의 상부측에 대한 도출 순서는 B0, B1, B2, 스케일링된 B0, 스케일링된 B1, 스케일링된 B2로서 정의된다. 따라서 각각의 측에 대해 모션 벡터 후보로서 사용될 수 있는 4가지 경우가 있으며, 2가지 경우는 공간적 스케일링을 사용할 필요가 없고, 2가지 경우는 공간적 스케일링을 사용한다. 4가지 상이한 경우는 다음과 같이 요약된다:
-- 공간적 스케일링 없음
(1) 동일한 참조 픽처 리스트, 그리고 동일한 참조 픽처 인덱스(동일한 POC)
(2) 상이한 참조 픽처 리스트, 그러나 동일한 참조 픽처(동일한 POC)
-- 공간적 스케일링
(3) 동일한 참조 픽처 리스트, 그러나 상이한 참조 픽처(상이한 POC)
(4) 상이한 참조 픽처 리스트, 그리고 상이한 참조 픽처(상이한 POC)
공간적 스케일링이 없는 경우들(no-spatial-scaling cases)이 먼저 검사되고 이어서 공간적 스케일링을 허용하는 경우들이 검사된다. 참조 픽처 리스트에 관계없이 이웃 PU의 참조 픽처와 현재 PU의 참조 픽처 사이에 POC가 상이할 때 공간적 스케일링이 고려된다. 좌측 후보들의 모든 PU들이 이용가능하지 않거나 인트라 코딩되는 경우, 좌측 및 상부 MV 후보들의 병렬 도출을 돕기 위해 상부 모션 벡터에 대한 스케일링이 허용된다. 그렇지 않으면, 상부 모션 벡터에 대해 공간적 스케일링이 허용되지 않는다.
도 9의 예에 도시된 바와 같이, 공간적 스케일링 경우에 대해, 이웃 PU의 모션 벡터는 시간적 스케일링에 대한 것과 유사한 방식으로 스케일링된다. 하나의 차이점은 현재 PU의 참조 픽처 리스트 및 인덱스가 입력으로서 주어진다는 것이다; 실제 스케일링 프로세스는 시간적 스케일링의 것과 동일하다.
1.2.3 시간적 모션 벡터 후보들의 구성
참조 픽처 인덱스 도출 외에도, 시간적 병합 후보들의 도출을 위한 모든 프로세스들은(도 6의 예에 도시된 바와 같은) 공간적 모션 벡터 후보들의 도출과 동일하다. 일부 실시예들에서, 참조 픽처 인덱스는 디코더에 시그널링된다.
2. JEM(Joint Exploration Model)에서의 인터 예측 방법들의 예
일부 실시예들에서, 장래의 비디오 코딩 기술들은 JEM(Joint Exploration Model)으로 알려진 참조 소프트웨어를 사용하여 탐구된다. JEM에서, 서브-블록 기반 예측은 아핀 예측, ATMVP(alternative temporal motion vector prediction), STMVP(spatial-temporal motion vector prediction), BIO(bi-directional optical flow), FRUC(Frame-Rate Up Conversion), LAMVR(Locally Adaptive Motion Vector Resolution), OBMC(Overlapped Block Motion Compensation), LIC(Local Illumination Compensation), 및 DMVR(Decoder-side Motion Vector Refinement)과 같은 몇몇 코딩 툴들에서 채택된다.
2.1 서브-CU 기반 모션 벡터 예측의 예들
QTBT(quadtrees plus binary trees)를 갖는 JEM에서, 각각의 CU는 각각의 예측 방향에 대해 많아야 하나의 모션 파라미터 세트를 가질 수 있다. 일부 실시예들에서, 2개의 서브-CU 레벨 모션 벡터 예측 방법은 큰 CU를 서브-CU들로 구분하고 큰 CU의 모든 서브-CU들에 대한 모션 정보를 도출함으로써 인코더에서 고려된다. ATMVP(alternative temporal motion vector prediction) 방법은 각각의 CU가 동위치 참조 픽처에서 현재 CU보다 작은 다수의 블록들로부터 다수의 모션 정보 세트들을 페치할 수 있게 한다. STMVP(spatial-temporal motion vector prediction) 방법에서, 서브-CU들의 모션 벡터들은 시간적 모션 벡터 예측자 및 공간적 이웃 모션 벡터를 사용함으로써 재귀적으로 도출된다. 일부 실시예들에서, 서브-CU 모션 예측을 위한 더 정확한 모션 필드를 보존하기 위해, 참조 프레임들에 대한 모션 압축은 디스에이블될 수 있다.
2.1.1 ATMVP(alternative temporal motion vector prediction)의 예들
ATMVP 방법에서, TMVP(temporal motion vector prediction) 방법은 현재 CU보다 작은 블록들로부터 다수의 모션 정보 세트들(모션 벡터들 및 참조 인덱스들을 포함함)을 페치함으로써 수정된다.
도 10은 CU(1000)에 대한 ATMVP 모션 예측 프로세스의 예를 도시한다. ATMVP 방법은 2개의 단계에서 CU(1000) 내의 서브-CU들(1001)의 모션 벡터들을 예측한다. 제1 단계는 시간적 벡터로 참조 픽처(1050) 내의 대응하는 블록(1051)을 식별하는 것이다. 참조 픽처(1050)는 또한 모션 소스 픽처라고 지칭된다. 제2 단계는 현재 CU(1000)를 서브-CU들(1001)로 구분하고 각각의 서브-CU에 대응하는 블록으로부터 각각의 서브-CU의 참조 인덱스들뿐만 아니라 모션 벡터들을 획득하는 것이다.
제1 단계에서, 참조 픽처(1050) 및 대응하는 블록은 현재 CU(1000)의 공간적 이웃 블록들의 모션 정보에 의해 결정된다. 이웃 블록들의 반복적인 스캐닝 프로세스를 피하기 위해, 현재 CU(1000)의 병합 후보 리스트 내의 제1 병합 후보가 사용된다. 제1 이용가능한 모션 벡터 및 그의 연관된 참조 인덱스는 시간적 벡터 및 모션 소스 픽처에 대한 인덱스인 것으로 설정된다. 이러한 방식으로, TMVP와 비교하여 대응하는 블록이 더 정확하게 식별될 수 있고, 대응하는 블록(때때로 동위치 블록(collocated block)이라고 불림)은 항상 현재 CU에 대해 하단-우측 또는 중심 위치에 있다.
제2 단계에서, 서브-CU(1051)의 대응하는 블록은 현재 CU의 좌표에 시간 벡터를 더함으로써, 모션 소스 픽처(1050)에서의 시간적 벡터에 의해 식별된다. 각각의 서브-CU에 대하여, 그의 대응하는 블록의 모션 정보(예를 들어, 중심 샘플을 커버하는 최소 모션 그리드)는 서브-CU에 대한 모션 정보를 도출하기 위해 사용된다. 대응하는 NxN 블록의 모션 정보가 식별된 후에, 그것은 HEVC의 TMVP와 동일한 방식으로, 현재 서브-CU의 모션 벡터들 및 참조 인덱스들로 전환되고, 모션 스케일링 및 다른 절차들이 적용된다. 예를 들어, 디코더는 저지연 조건(예를 들어, 현재 픽처의 모든 참조 픽처들의 POC들이 현재 픽처의 POC보다 작음)이 충족되는지를 검사하고, 가능하게는 모션 벡터 MVx(예를 들어, 참조 픽처 리스트 X에 대응하는 모션 벡터)를 사용하여 각각의 서브-CU에 대한 모션 벡터 MVy(예를 들어, X는 0 또는 1이고 Y는 1-X임)를 예측한다.
2.1.2 STMVP(spatial-temporal motion vector prediction)의 예들
STMVP 방법에서, 서브-CU들의 모션 벡터들은, 래스터 스캔 순서에 따라, 재귀적으로 도출된다. 도 11은 4개의 서브-블록 및 이웃 블록들을 갖는 하나의 CU의 예를 도시한다. 4개의 4x4 서브-CU A(1101), B(1102), C(1103), 및 D(1104)를 포함하는 8x8 CU(1100)를 고려한다. 현재 프레임 내의 이웃하는 4x4 블록들은 a(1111), b(1112), c(1113), 및 d(1114)로서 라벨링된다.
서브-CU A에 대한 모션 도출은 그것의 2개의 공간적 이웃을 식별함으로써 시작된다. 제1 이웃은 서브-CU A(1101)의 상부에 있는 NxN 블록(블록 c(1113))이다. 이 블록 c(1113)가 이용가능하지 않거나 인트라 코딩된 경우, 서브-CU A(1101)의 상부에 있는 다른 NxN 블록들이 검사된다(블록 c(1113)에서 시작하여 좌측으로부터 우측으로). 제2 이웃은 서브-CU A(1101)의 좌측에 있는 블록(블록 b(1112))이다. 블록 b(1112)가 이용가능하지 않거나 인트라 코딩된 경우, 서브-CU A(1101)의 좌측에 있는 다른 블록들이 검사된다(블록 b(1112)에서 시작하여 상단으로부터 하단으로). 각각의 리스트에 대해 이웃 블록들로부터 획득된 모션 정보는 주어진 리스트에 대해 제1 참조 프레임으로 스케일링된다. 다음으로, 서브-블록 A(1101)의 시간적 모션 벡터 예측자(TMVP)는 HEVC에 명시된 것과 동일한 TMVP 도출 절차에 따라 도출된다. 블록 D(1104)에서의 동위치 블록의 모션 정보가 그에 따라 페치되고 스케일링된다. 마지막으로, 모션 정보를 검색하고 스케일링한 후에, 모든 이용가능한 모션 벡터가 각각의 참조 리스트에 대해 개별적으로 평균화된다. 평균화된 모션 벡터는 현재 서브-CU의 모션 벡터로서 할당된다.
2.1.3 서브-CU 모션 예측 모드 시그널링의 예들
일부 실시예들에서, 서브-CU 모드들은 추가적인 병합 후보들로서 인에이블되고 모드들을 시그널링하는데 요구되는 추가적인 신택스 요소가 없다. ATMVP 모드 및 STMVP 모드를 나타내기 위해 각각의 CU의 병합 후보 리스트에 2개의 추가적인 병합 후보가 추가된다. 다른 실시예들에서, 시퀀스 파라미터 세트가 ATMVP 및 STMVP가 인에이블되는 것을 나타내는 경우, 최대 7개의 병합 후보가 사용될 수 있다. 추가적인 병합 후보들의 인코딩 로직은 HM에서의 병합 후보들에 대한 것과 동일하며, 이는 P 또는 B 슬라이스의 각각의 CU의 경우, 2개의 추가적인 병합 후보에 대해 RD 검사가 2회 더 필요할 수 있다는 것을 의미한다. 일부 실시예들에서, 예를 들어, JEM에서, 병합 인덱스의 모든 빈(bin)들은 CABAC(Context-based Adaptive Binary Arithmetic Coding)에 의해 컨텍스트 코딩된다(context coded). 다른 실시예들에서, 예를 들어, HEVC에서, 제1 빈만이 컨텍스트 코딩되고 나머지 빈들은 컨텍스트 바이-패스 코딩된다(context by-pass coded).
2.2 JEM에서의 LIC(local illumination compensation)의 예
LIC(Local Illumination Compensation)는 스케일링 인자 a 및 오프셋 b를 사용하여 조명 변화에 대한 선형 모델에 기초한다. 그리고 이것은 각각의 인터-모드 코딩된 코딩 유닛(CU)에 대해 적응적으로 인에이블되거나 디스에이블된다.
LIC가 CU에 적용될 때, 현재 CU의 이웃 샘플들 및 그것들의 대응하는 참조 샘플들을 사용하여 파라미터들 a 및 b를 도출하기 위해 최소 제곱 오차 방법(least square error method)이 이용된다. 더 구체적으로, 도 12에 예시된 바와 같이, CU의 서브샘플링된(2:1 서브샘플링) 이웃 샘플들 및 참조 픽처에서의 대응하는 샘플들(현재 CU 또는 서브-CU의 모션 정보에 의해 식별됨)이 사용된다.
2.2.1 예측 블록들의 도출
IC 파라미터들은 각각의 예측 방향에 대해 개별적으로 도출되고 적용된다. 각각의 예측 방향에 대해, 디코딩된 모션 정보로 제1 예측 블록이 생성된 다음, LIC 모델을 적용하는 것을 통해 임시 예측 블록이 획득된다. 그 후, 2개의 임시 예측 블록은 최종 예측 블록을 도출하는 데 이용된다.
CU가 병합 모드로 코딩될 때, 병합 모드에서의 모션 정보 카피와 유사한 방식으로, LIC 플래그는 이웃 블록들로부터 카피되며; 그렇지 않으면, LIC가 적용되는지 여부를 나타내기 위해 CU에 대해 LIC 플래그가 시그널링된다.
LIC가 픽처에 대해 인에이블될 때, CU에 대해 LIC가 적용되는지 여부를 결정하기 위해 추가적인 CU 레벨 RD 검사가 필요하다. LIC가 CU에 대해 인에이블될 때, MR-SAD(mean-removed sum of absolute difference) 및 MR-SATD(mean-removed sum of absolute Hadamard-transformed difference)가 정수 픽셀 모션 탐색 및 분수 픽셀 모션 탐색을 위해, SAD 및 SATD 대신에, 각각 사용된다.
인코딩 복잡성을 감소시키기 위해, 다음의 인코딩 방식이 JEM에서 적용된다: 현재 픽처와 그것의 참조 픽처들 사이에 명백한 조명 변화가 없을 때 전체 픽처에 대해 LIC가 디스에이블된다. 이러한 상황을 식별하기 위해, 현재 픽처 및 현재 픽처의 모든 참조 픽처의 히스토그램들이 인코더에서 계산된다. 현재 픽처와 현재 픽처의 모든 참조 픽처 사이의 히스토그램 차이가 주어진 임계값보다 작으면, LIC는 현재 픽처에 대해 디스에이블되고; 그렇지 않으면, LIC는 현재 픽처에 대해 인에이블된다.
2.3 VVC에서의 인터 예측 방법들의 예
MVD를 시그널링하기 위한 AMVR(Adaptive motion vector difference resolution), 아핀 예측 모드, 삼각형 예측 모드(TPM), ATMVP, GBI(Generalized Bi-Prediction), BIO(Bi-directional Optical flow)와 같은 인터 예측 개선을 위한 몇몇 새로운 코딩 툴들이 있다.
2.3.1 VVC에서의 코딩 블록 구조의 예들
VVC에서는, 쿼드트리(QuadTree)/이진트리(BinaryTree)/다중트리(MultipleTree)(QT/BT/TT) 구조를 채택하여 픽처를 정사각형 또는 직사각형 블록들로 분할한다. QT/BT/TT 외에, 별개의 트리(듀얼 코딩 트리라고도 함)가 또한 I-프레임에 대한 VVC에서 채택된다. 별개의 트리를 사용하여, 코딩 블록 구조는 루마 및 크로마 성분들에 대해 개별적으로 시그널링된다.
2.3.2 적응적 모션 벡터 차이 해상도의 예들
일부 실시예들에서, 슬라이스 헤더의 use_integer_mv_flag가 0일 때 (PU의 모션 벡터와 예측된 모션 벡터 사이의) 모션 벡터 차이(motion vector difference, MVD)는 1/4(quarter) 루마 샘플 단위로 시그널링된다. JEM에서, LAMVR(locally adaptive motion vector resolution)가 도입된다. JEM에서, MVD는 1/4 루마 샘플, 정수 루마 샘플 또는 4 루마 샘플 단위로 코딩될 수 있다. MVD 해상도는 코딩 유닛(CU) 레벨에서 제어되며, MVD 해상도 플래그들은 적어도 하나의 비-제로 MVD 성분을 갖는 각각의 CU에 대해 조건부로 시그널링된다.
적어도 하나의 비-제로 MVD 성분을 갖는 CU에 대해, 제1 플래그는 CU에서 1/4 루마 샘플 MV 정밀도가 사용되는지를 지시하기 위해 시그널링된다. 제1 플래그(1과 같음)가 1/4 루마 샘플 MV 정밀도가 사용되지 않는다는 것을 나타낼 때, 정수 루마 샘플 MV 정밀도가 사용되는지 또는 4 루마 샘플 MV 정밀도가 사용되는지를 지시하기 위해 다른 플래그가 시그널링된다.
CU의 제1 MVD 해상도 플래그가 0이거나 CU에 대해 코딩되지 않을 때(CU에서의 모든 MVD들이 0임을 의미함), 1/4 루마 샘플 MV 해상도가 CU에 대해 사용된다. CU가 정수 루마 샘플 MV 정밀도 또는 4 루마 샘플 MV 정밀도를 사용할 때, CU에 대한 AMVP 후보 리스트 내의 MVP들은 대응하는 정밀도로 라운딩된다.
2.3.3 아핀 모션 보상 예측의 예들
HEVC에서, 병진 모션 모델(translation motion model)만이 모션 보상 예측(MCP)에 적용된다. 그러나, 카메라 및 객체들은 많은 종류의 모션, 예를 들어, 줌 인/아웃, 회전, 원근 모션들, 및/또는 다른 불규칙한 모션들을 가질 수 있다. VVC에서, 단순화된 아핀 변환 모션 보상 예측은 4-파라미터 아핀 모델 및 6-파라미터 아핀 모델과 함께 적용된다. 도 13a 및 도 13b에 도시된 바와 같이, 블록의 아핀 모션 필드는 각각 2개(변수 a, b, e 및 f를 사용하는 4-파라미터 아핀 모델에서) 또는 3개(변수 a, b, c, d, e 및 f를 사용하는 6-파라미터 아핀 모델에서)의 제어 포인트 모션 벡터에 의해 설명된다.
블록의 모션 벡터 필드(MVF)는 각각 4-파라미터 아핀 모델 및 6-파라미터 아핀 모델을 사용하여 다음 식에 의해 설명된다:
Figure pct00001
Figure pct00002
여기서 (mvh 0, mvh 0)는 상단-좌측 코너 제어 포인트(CP)의 모션 벡터이고, (mvh 1, mvh 1)은 상단-우측 코너 제어 포인트의 모션 벡터이고, (mvh 2, mvh 2)는 하단-좌측 코너 제어 포인트의 모션 벡터이고, (x, y)는 현재 블록 내의 상단-좌측 샘플에 대한 대표 포인트의 좌표를 나타낸다. CP 모션 벡터들은 (아핀 AMVP 모드에서와 같이) 시그널링되거나 (아핀 병합 모드에서와 같이) 온-더-플라이(on-the-fly)로 도출될 수 있다. w 및 h는 현재 블록의 폭 및 높이이다. 실제로, 나눗셈은 라운딩 연산과 함께 우측-시프트(right-shift)에 의해 구현된다. VTM에서, 대표 포인트는 서브-블록의 중심 위치인 것으로 정의되는데, 예를 들어, 현재 블록 내의 상단-좌측 샘플에 대한 서브-블록의 좌측-상단 코너의 좌표가 (xs, ys)일 때, 대표 포인트의 좌표는 (xs+2, ys+2)인 것으로 정의된다. 각각의 서브-블록(예를 들어, VTM에서 4x4)에 대해, 대표 포인트는 전체 서브-블록에 대한 모션 벡터를 도출하기 위해 이용된다.
도 14는 블록(1300)에 대한 서브-블록 당 아핀 MVF의 예를 도시하며, 모션 보상 예측을 더 단순화하기 위해, 서브-블록 기반 아핀 변환 예측이 적용된다. 각각의 MxN 서브-블록의 모션 벡터를 도출하기 위해, 각각의 서브-블록의 중심 샘플의 모션 벡터는 식 (1) 및 식 (2)에 따라 계산되고, 모션 벡터 분수 정확도(예를 들어, JEM에서 1/16)로 라운딩될 수 있다. 이어서, 도출된 모션 벡터로 각각의 서브-블록의 예측을 생성하기 위해 모션 보상 보간 필터들이 적용될 수 있다. 1/16-픽셀에 대한 보간 필터들은 아핀 모드에 의해 도입된다. MCP 후에, 각각의 서브-블록의 고정확도 모션 벡터는 라운딩되어 정상 모션 벡터와 동일한 정확도로 세이브된다.
2.3.3.1 아핀 예측의 시그널링에 대한 예들
병진 모션 모델과 유사하게, 아핀 예측으로 인한 사이드 정보를 시그널링하기 위한 2가지 모드가 또한 있다. 이들은 AFFINE_INTER 및 AFFINE_MERGE 모드들이다.
2.3.3.2 AF_INTER 모드의 예들
폭과 높이 둘 다가 8보다 큰 CU들의 경우, AF_INTER 모드가 적용될 수 있다. CU 레벨에서의 아핀 플래그는 AF_INTER 모드가 사용되는지를 지시하기 위해 비트스트림에서 시그널링된다.
이 모드에서, 각각의 참조 픽처 리스트(리스트 0 또는 리스트 1)에 대해, 아핀 AMVP 후보 리스트는 다음의 순서로 3가지 타입의 아핀 모션 예측자로 구성되며, 각각의 후보는 현재 블록의 추정된 CPMV들을 포함한다. (도 17의 mv0 mv1 mv2 등의) 인코더측에서 발견된 최상의 CPMV들과 추정된 CPMV들의 차이들이 시그널링된다. 또한, 추정된 CPMV들이 도출되는 아핀 AMVP 후보의 인덱스가 추가로 시그널링된다.
1) 상속된 아핀 모션 예측자들
검사 순서는 HEVC AMVP 리스트 구성에서의 공간적 MVP들의 검사 순서와 유사하다. 첫째, 아핀 코딩되고 현재 블록에서와 동일한 참조 픽처를 갖는 {A1, A0}의 제1 블록으로부터 좌측 상속된 아핀 모션 예측자가 도출된다. 둘째, 아핀 코딩되고 현재 블록에서와 동일한 참조 픽처를 갖는 {B1, B0, B2}의 제1 블록으로부터 상부 상속된 아핀 모션 예측자가 도출된다. 도 16에 5개의 블록 A1, A0, B1, B0, B2가 도시되어 있다.
이웃 블록이 아핀 모드로 코딩되는 것으로 발견되면, 이웃 블록을 커버하는 코딩 유닛의 CPMV들은 현재 블록의 CPMV들의 예측자들을 도출하는 데 사용된다. 예를 들어, A1이 비-아핀 모드로 코딩되고 A0이 4-파라미터 아핀 모드로 코딩되는 경우, 좌측 상속된 아핀 MV 예측자는 A0으로부터 도출될 것이다. 이 경우, 도 18b에서 상단-좌측 CPMV에 대한 MV0 N 및 상단-우측 CPMV에 대한 MV1 N으로 표시된 바와 같이, A0을 커버하는 CU의 CPMV들은 현재 블록의 상단-좌측(좌표 (x0, y0)을 가짐), 상단-우측(좌표 (x1, y1)을 가짐) 및 하단-우측(좌표 (x2, y2)를 가짐) 위치들에 대한 MV0 C, MV1 C, MV2 C로 표시된, 현재 블록의 추정된 CPMV들을 도출하는 데 이용된다.
2) 구성된 아핀 모션 예측자들
구성된 아핀 모션 예측자는, 동일한 참조 픽처를 갖는, 도 17에 도시된 바와 같은, 이웃하는 인터 코딩된 블록들로부터 도출되는 CPMV(control-point motion vector)들로 이루어진다. 현재 아핀 모션 모델이 4-파라미터 아핀이면, CPMV의 수는 2이고, 그렇지 않고 현재 아핀 모션 모델이 6-파라미터 아핀이면, CPMV의 수는 3이다. 상단-좌측 CPMV
Figure pct00003
은 인터 코딩되고 현재 블록에서와 동일한 참조 픽처를 갖는 그룹 {A, B, C}의 제1 블록에서의 MV에 의해 도출된다. 상단-우측 CPMV
Figure pct00004
은 인터 코딩되고 현재 블록에서와 동일한 참조 픽처를 갖는 그룹 {D, E}의 제1 블록에서의 MV에 의해 도출된다. 하단-좌측 CPMV
Figure pct00005
은 인터 코딩되고 현재 블록에서와 동일한 참조 픽처를 갖는 그룹 {F, G}의 제1 블록에서의 MV에 의해 도출된다.
- 현재 아핀 모션 모델이 4-파라미터 아핀이면, 구성된 아핀 모션 예측자는
Figure pct00006
Figure pct00007
양자 모두가 발견되는 경우에만 후보 리스트에 삽입되는데, 즉,
Figure pct00008
Figure pct00009
이 현재 블록의 상단-좌측(좌표 (x0, y0)을 가짐), 상단-우측(좌표 (x1, y1)을 가짐) 위치들에 대한 추정된 CPMV들로서 사용된다.
- 현재 아핀 모션 모델이 6-파라미터 아핀이면, 구성된 아핀 모션 예측자는
Figure pct00010
,
Figure pct00011
Figure pct00012
가 모두 발견되는 경우에만 후보 리스트에 삽입되는데, 즉,
Figure pct00013
,
Figure pct00014
Figure pct00015
가 현재 블록의 상단-좌측(좌표 (x0, y0)을 가짐), 상단-우측(좌표 (x1, y1)을 가짐) 및 하단-우측(좌표 (x2, y2)를 가짐) 위치들에 대한 추정된 CPMV들로서 사용된다.
구성된 아핀 모션 예측자를 후보 리스트에 삽입할 때 프루닝(pruning) 프로세스가 적용되지 않는다.
3) 정상 AMVP 모션 예측자들
아핀 모션 예측자들의 수가 최대에 도달할 때까지 다음과 같이 적용된다.
1) 이용가능한 경우 모든 CPMV를
Figure pct00016
로 설정함으로써 아핀 모션 예측자를 도출한다.
2) 이용가능한 경우 모든 CPMV를
Figure pct00017
로 설정함으로써 아핀 모션 예측자를 도출한다.
3) 이용가능한 경우 모든 CPMV를
Figure pct00018
으로 설정함으로써 아핀 모션 예측자를 도출한다.
4) 이용가능한 경우 모든 CPMV를 HEVC TMVP로 설정함으로써 아핀 모션 예측자를 도출한다.
5) 모든 CPMV를 제로 MV로 설정함으로써 아핀 모션 예측자를 도출한다.
Figure pct00019
는 구성된 아핀 모션 예측자에서 이미 도출되었다는 점에 유의한다.
AF_INTER 모드에서, 4/6 파라미터 아핀 모드가 사용될 때, 2/3 제어 포인트들이 요구되며, 따라서 도 15a 및 도 15b에 도시된 바와 같이 이들 제어 포인트들에 대해 2/3 MVD가 코딩될 필요가 있다. 기존의 구현에서, MV는 다음과 같이 도출될 수 있으며, 예를 들어, 이는 mvd0으로부터 mvd1 및 mvd2를 예측한다.
Figure pct00020
여기서,
Figure pct00021
, mvdi 및 mv1은 도 15b에 도시된 바와 같이 각각 상단-좌측 픽셀(i=0), 상단-우측 픽셀(i=1) 또는 좌측-하단 픽셀(i=2)의 예측된 모션 벡터, 모션 벡터 차이 및 모션 벡터이다. 일부 실시예들에서, 2개의 모션 벡터(예를 들어, mvA(xA, yA) 및 mvB(xB, yB))의 추가는 개별적으로 2개의 성분의 합산과 동일하다. 예를 들어, newMV=mvA+mvB는 newMV의 2개의 성분이 각각 (xA+xB) 및 (yA+yB)로 설정되어 있다는 것을 암시한다.
2.3.3.3 AF_MERGE 모드의 예들
CU가 AF_MERGE 모드에서 적용될 때, 그것은 유효 이웃 재구성된 블록들로부터 아핀 모드로 코딩된 첫번째 블록을 얻는다. 그리고 후보 블록에 대한 선택 순서는 도 18a에 도시된 바와 같이 좌측, 상부, 상부 우측, 좌측 하단에서 상부 좌측 순이다(순서대로 A, B, C, D, E로 표시됨). 예를 들어, 이웃 좌측 하단 블록이 도 18b에서 A0으로 표시된 바와 같이 아핀 모드로 코딩되면, 블록 A를 포함하는 이웃 CU/PU의 상단 좌측 코너, 상부 우측 코너 및 좌측 하단 코너의 제어 포인트(CP) 모션 벡터들 mv0 N, mv1 N 및 mv2 N가 페치된다. 그리고 현재 CU/PU 상의 상단 좌측 코너/상단 우측/하단 좌측의 모션 벡터 mv0 C, mv1 C 및 mv2 C(6-파라미터 아핀 모델에 대해서만 사용됨)는 mv0 N, mv1 N 및 mv2 N에 기초하여 계산된다. VTM-2.0에서, 현재 블록이 아핀 코딩되는 경우 상단-좌측 코너에 위치한 서브-블록(예를 들어, VTM에서 4x4 블록)은 mv0을 저장하고, 상단-우측 코너에 위치한 서브-블록은 mv1을 저장한다는 점에 유의해야 한다. 현재 블록이 6-파라미터 아핀 모델로 코딩되는 경우, 하단-좌측 코너에 위치한 서브-블록은 mv2를 저장하며; 그렇지 않은 경우(4-파라미터 아핀 모델로 코딩되는 경우), LB는 mv2'를 저장한다. 다른 서브-블록들은 MC에 사용되는 MV들을 저장한다.
식 (1) 및 식 (2)의 아핀 모션 모델에 따라 현재 CU v0 및 v1의 CPMV가 계산된 후에, 현재 CU의 MVF가 생성될 수 있다. 현재 CU가 AF_MERGE 모드로 코딩되는지를 식별하기 위해, 아핀 모드로 코딩된 적어도 하나의 이웃 블록이 존재할 때 아핀 플래그가 비트스트림에서 시그널링될 수 있다.
일부 실시예들(예를 들어, JVET-L0142 및 JVET-L0632)에서, 아핀 병합 후보 리스트는 다음의 단계들로 구성될 수 있다:
1) 상속된 아핀 후보들을 삽입
상속된 아핀 후보는 후보가 그의 유효 이웃 아핀 코딩된 블록의 아핀 모션 모델로부터 도출된다는 것을 의미한다. 최대 2개의 상속된 아핀 후보들은 이웃 블록들의 아핀 모션 모델로부터 도출되고 후보 리스트에 삽입된다. 좌측 예측자의 경우, 스캔 순서는 {A0, A1}이고; 상부 예측자의 경우, 스캔 순서는 {B0, B1, B2}이다.
2) 구성된 아핀 후보들을 삽입
아핀 병합 후보 리스트 내의 후보들의 수가 MaxNumAffineCand(이 기고문에서는 5로 설정됨) 미만이면, 구성된 아핀 후보들이 후보 리스트에 삽입된다. 구성된 아핀 후보는 각각의 제어 포인트의 이웃 모션 정보를 조합하여 후보가 구성되는 것을 의미한다.
a) 제어 포인트에 대한 모션 정보는 먼저 도 19에 도시된 지정된 공간적 이웃 및 시간적 이웃으로부터 도출된다. CPk (k=1, 2, 3, 4)는 k번째 제어 포인트를 나타낸다. A0, A1, A2, B0, B1, B2 및 B3은 CPk (k=1, 2, 3)를 예측하기 위한 공간적 위치들이고; T는 CP4를 예측하기 위한 시간적 위치이다.
CP1, CP2, CP3 및 CP4의 좌표들은 각각 (0, 0), (W, 0), (H, 0) 및 (W, H)이며, 여기서 W 및 H는 현재 블록의 폭 및 높이이다.
각각의 제어 포인트의 모션 정보는 다음과 같은 우선순위 순서에 따라 획득된다:
CP1의 경우, 검사 우선순위는 B2→B3→A2이다. B2가 이용가능한 경우 B2가 사용된다. 그렇지 않고, B2가 이용가능한 경우, B3이 사용된다. B2와 B3 양자 모두가 이용가능하지 않은 경우, A2가 사용된다. 3개의 후보 모두가 이용가능하지 않은 경우, CP1의 모션 정보가 획득될 수 없다.
CP2의 경우, 검사 우선순위는 B1→B0이다.
CP3의 경우, 검사 우선순위는 A1→A0이다.
CP4의 경우, T가 사용된다.
b) 둘째로, 제어 포인트들의 조합들은 아핀 병합 후보를 구성하는 데 사용된다.
I. 6-파라미터 아핀 후보를 구성하기 위해 3개의 제어 포인트의 모션 정보가 필요하다. 3개의 제어 포인트는 다음의 4개의 조합({CP1, CP2, CP4}, {CP1, CP2, CP3}, {CP2, CP3, CP4}, {CP1, CP3, CP4}) 중 하나로부터 선택될 수 있다. 조합들 {CP1, CP2, CP3}, {CP2, CP3, CP4}, {CP1, CP3, CP4}은 상단-좌측, 상단-우측 및 하단-좌측 제어 포인트들에 의해 표현되는 6-파라미터 모션 모델로 전환될 것이다.
II. 4-파라미터 아핀 후보를 구성하기 위해 2개의 제어 포인트의 모션 정보가 필요하다. 2개의 제어 포인트는 다음의 6개의 조합({CP1, CP4}, {CP2, CP3}, {CP1, CP2}, {CP2, CP4}, {CP1, CP3}, {CP3, CP4}) 중 하나로부터 선택될 수 있다. 조합들 {CP1, CP4}, {CP2, CP3}, {CP2, CP4}, {CP1, CP3}, {CP3, CP4}은 상단-좌측 및 상단-우측 제어 포인트들에 의해 표현되는 4-파라미터 모션 모델로 전환될 것이다.
III. 구성된 아핀 후보들의 조합들은 다음과 같은 순서로 후보 리스트에 삽입된다:
{CP1, CP2, CP3}, {CP1, CP2, CP4}, {CP1, CP3, CP4}, {CP2, CP3, CP4}, {CP1, CP2}, {CP1, CP3}, {CP2, CP3}, {CP1, CP4}, {CP2, CP4}, {CP3, CP4}
i. 조합의 참조 리스트 X(X는 0 또는 1임)의 경우, 제어 포인트들에서 가장 높은 사용률을 갖는 참조 인덱스는 리스트 X의 참조 인덱스로서 선택되고, 차이 참조 픽처를 가리키는 모션 벡터들은 스케일링될 것이다.
후보가 도출된 후에, 동일한 후보가 리스트에 삽입되었는지를 검사하기 위해 완전 프루닝(full pruning) 프로세스가 수행된다. 동일한 후보가 존재하는 경우, 도출된 후보는 폐기된다.
3) 제로 모션 벡터들로 패딩
아핀 병합 후보 리스트 내의 후보들의 수가 5보다 작으면, 제로 참조 인덱스들을 갖는 제로 모션 벡터들은 리스트가 가득 찰 때까지 후보 리스트에 삽입된다.
더 구체적으로, 서브-블록 병합 후보 리스트에 대해, 4-파라미터 병합 후보는 (0, 0)으로 설정된 MV들 및 (P 슬라이스에 대해) 리스트 0으로부터의 단예측 및 (B 슬라이스에 대해) 양예측으로 설정된 예측 방향을 갖는다.
2.3.4 MMVD(Merge with Motion Vector Differences)의 예들
JVET-L0054에서, UMVE(ultimate motion vector expression, MMVD로도 알려짐)가 제시된다. UMVE는 제안된 모션 벡터 표현 방법과 함께 스킵 또는 병합 모드들에 사용된다.
UMVE는 VVC에서의 정규 병합 후보 리스트에 포함된 것들과 동일한 병합 후보를 재사용한다. 병합 후보들 중에서, 베이스 후보가 선택될 수 있고, 제안된 모션 벡터 표현 방법에 의해 추가로 확장된다.
UMVE는 새로운 모션 벡터 차이(MVD) 표현 방법을 제공하고, 여기서 MVD를 표현하기 위해 시작 포인트, 모션 크기 및 모션 방향이 사용된다.
이 제안된 기법은 병합 후보 리스트를 그대로 사용한다. 그러나, 디폴트 병합 타입(MRG_TYPE_DEFAULT_N)인 후보들만이 UMVE의 확장을 위해 고려된다.
베이스 후보 인덱스는 시작 포인트를 정의한다. 베이스 후보 인덱스는 다음과 같이 리스트 내의 후보들 중 최상의 후보를 나타낸다.
Figure pct00022
베이스 후보의 수가 1이면, 베이스 후보 IDX는 시그널링되지 않는다.
거리 인덱스는 모션 크기 정보이다. 거리 인덱스는 시작 포인트로부터의 미리 정의된 거리 정보를 나타낸다. 미리 정의된 거리는 다음과 같다:
Figure pct00023
방향 인덱스는 시작 포인트에 대한 MVD의 방향을 나타낸다. 방향 인덱스는 아래에 도시된 바와 같은 4개의 방향을 나타낼 수 있다.
Figure pct00024
일부 실시예들에서, UMVE 플래그는 스킵 플래그 또는 병합 플래그를 전송한 직후에 시그널링된다. 스킵 또는 병합 플래그가 참이면, UMVE 플래그가 파싱된다. UMVE 플래그가 1이면, UMVE 신택스들이 파싱된다. 그러나, 1이 아니면, AFFINE 플래그가 파싱된다. AFFINE 플래그가 1이면, AFFINE 모드이지만, 1이 아니면, VTM의 스킵/병합 모드에 대해 스킵/병합 인덱스가 파싱된다.
UMVE 후보들로 인한 추가적인 라인 버퍼는 필요하지 않다. 소프트웨어의 스킵/병합 후보는 베이스 후보로서 직접 사용되기 때문이다. 입력 UMVE 인덱스를 사용하여, MV의 보수(supplement)가 모션 보상 직전에 결정된다. 이를 위해 긴 라인 버퍼를 유지할 필요가 없다.
현재의 공통 테스트 조건에서, 병합 후보 리스트 내의 제1 또는 제2 병합 후보가 베이스 후보로서 선택될 수 있다.
2.3.5 DMVR(Decoder-side Motion Vector Refinement)의 예들
양예측 연산에서, 하나의 블록 영역의 예측을 위해, 리스트0의 모션 벡터(MV) 및 리스트1의 MV를 사용하여 각각 형성된 2개의 예측 블록이 조합되어 단일 예측 신호를 형성한다. DMVR(decoder-side motion vector refinement) 방법에서, 양예측의 2개의 모션 벡터는 추가로 리파인(refine)된다.
JEM 설계에서, 모션 벡터들은 쌍방 템플릿 매칭 프로세스에 의해 리파인된다. 쌍방 템플릿 매칭은 디코더에 적용되어 추가적인 모션 정보의 송신 없이 리파인된 MV를 획득하기 위해 참조 픽처들에서 재구성 샘플들과 쌍방 템플릿 사이의 왜곡-기반 탐색(distortion-based search)을 수행한다. 일 예가 도 22에 도시되어 있다. 도 22에 도시된 바와 같이, 쌍방 템플릿이 리스트0의 초기 MV0 및 리스트1의 MV1로부터 각각 2개의 예측 블록의 가중 조합(즉, 평균)으로서 생성된다. 템플릿 매칭 연산은, 생성된 템플릿과 참조 픽처의 샘플 영역(초기 예측 블록 주변) 사이의 비용 척도들(cost measures)을 계산하는 것을 포함한다. 2개의 참조 픽처 각각에 대해, 최소 템플릿 비용을 산출하는 MV가 원래의 것을 대체할 그 리스트의 업데이트된 MV로 간주된다. JEM에서, 각각의 리스트에 대해 9개의 MV 후보가 탐색된다. 9개의 MV 후보는 원래 MV와, 수평 또는 수직 방향으로, 또는 양자 모두로 원래 MV에 대한 하나의 루마 샘플 오프셋을 갖는 8개의 주변 MV를 포함한다. 마지막으로, 도 22에 도시된 바와 같은 2개의 새로운 MV, 즉, MV0' 및 MV1'은 최종 양예측 결과들을 생성하는 데 사용된다. SAD(sum of absolute differences)가 비용 척도로서 사용된다. 하나의 주변 MV에 의해 생성되는 예측 블록의 비용을 계산할 때, 실제 MV 대신에 예측 블록을 획득하기 위해 (정수 픽셀로의) 라운딩된 MV가 실제로 사용된다는 점에 주목한다.
DMVR의 프로세스를 더 단순화하기 위해, JVET-M0147은 JEM에서의 설계에 대한 몇몇 변경들을 제안하였다. 더 구체적으로, (곧 릴리즈될) VTM-4.0에 대해 채택된 DMVR 설계는 다음과 같은 주요 특징들을 갖는다:
○ 리스트0과 리스트1 사이의 (0,0) 위치 SAD를 갖는 조기 종료
○ DMVR W*H>=64 && H>=8에 대한 블록 크기들
○ CU 크기 > 16*16의 DMVR에 대해 CU를 16x16 서브-블록들의 배수로 구분
○ (루마에 대한) 참조 블록 크기 (W+7)*(H+7)
○ 25 포인트 SAD-기반 정수-픽셀 탐색(즉, (+-) 2 리파인먼트 탐색 범위, 단일 스테이지)
○ 이중선형-보간 기반 DMVR
○ 쌍방 매칭을 허용하기 위한 리스트0과 리스트1 사이의 MVD 미러링
○ "파라메트릭 오차 표면 방정식(Parametric error surface equation)" 기반 서브-픽셀 리파인먼트
○ 참조 블록 패딩(필요한 경우)을 갖는 루마/크로마 MC
○ MC 및 TMVP들에만 사용되는 리파인된 MV들
2.3.6 조합된 인트라 및 인터 예측(CIIR)의 예들
JVET-L0100에서, 다중-가설 예측(multi-hypothesis prediction)이 제안되며, 조합된 인트라 및 인터 예측은 다수의 가설들을 생성하는 하나의 방식이다.
다중-가설 예측이 인트라 모드를 개선하기 위해 적용될 때, 다중-가설 예측은 하나의 인트라 예측과 하나의 병합 인덱싱된 예측을 조합한다. 병합 CU에서, 하나의 플래그는 플래그가 참일 때 인트라 후보 리스트로부터 인트라 모드를 선택하기 위해 병합 모드에 대해 시그널링된다. 루마 성분의 경우, 인트라 후보 리스트는 DC, 평면, 수평, 및 수직 모드들을 포함하는 4개의 인트라 예측 모드로부터 도출되고, 인트라 후보 리스트의 크기는 블록 형상에 따라 3 또는 4일 수 있다. CU 폭이 CU 높이의 2배보다 클 때, 수평 모드는 인트라 모드 리스트를 배제하고, CU 높이가 CU 폭의 2배보다 클 때, 수직 모드는 인트라 모드 리스트로부터 제거된다. 인트라 모드 인덱스에 의해 선택되는 하나의 인트라 예측 모드와 병합 인덱스에 의해 선택되는 하나의 병합 인덱싱된 예측이 가중 평균(weighted average)을 사용하여 조합된다. 크로마 성분의 경우, DM은 추가의 시그널링 없이 항상 적용된다. 예측들을 조합하기 위한 가중치들은 다음과 같이 설명된다. DC 또는 평면 모드가 선택되거나, CB 폭 또는 높이가 4보다 작을 때, 동일한 가중치들이 적용된다. CB 폭 및 높이가 4 이상인 CB들의 경우, 수평/수직 모드가 선택될 때, 하나의 CB는 먼저 4개의 동일-면적 영역(equal-area region)으로 수직으로/수평으로 구분(split)된다. (w_intrai, w_interi)로 표시되는 각각의 가중치 세트 - 여기서 i는 1 내지 4이고 (w_intra1, w_inter1) = (6, 2), (w_intra2, w_inter2) = (5, 3), (w_intra3, w_inter3) = (3, 5), 및 (w_intra4, w_inter4) = (2, 6)임 - 가 대응하는 영역에 적용될 것이다. (w_intra1, w_inter1)는 참조 샘플들에 가장 가까운 영역에 대한 것이고, (w_intra4, w_inter4)는 참조 샘플들로부터 가장 멀리 떨어진 영역에 대한 것이다. 이어서, 2개의 가중된 예측을 합산하고 3 비트 우측-시프팅(right-shifting 3 bits)함으로써 조합된 예측이 계산될 수 있다. 또한, 예측자들의 인트라 가설(intra hypothesis)에 대한 인트라 예측 모드는 다음의 이웃 CU들의 참조를 위해 세이브될 수 있다.
2.4 JVET-M0427에서의 인-루프 재성형(ILR)
인-루프 재성형(ILR)의 기본 아이디어는 원래의 (제1 도메인에서의) 신호(예측/재구성 신호)를 제2 도메인(재성형된 도메인)으로 전환하는 것이다.
인-루프 루마 재성형기는 한 쌍의 룩업 테이블(LUT)로서 구현되지만, 2개의 LUT 중 하나만이 시그널링될 필요가 있는데, 그 이유는 다른 하나가 시그널링된 LUT로부터 계산될 수 있기 때문이다. 각각의 LUT는 1-차원, 10-비트, 1024-엔트리 맵핑 테이블(1D-LUT)이다. 하나의 LUT는 입력 루마 코드 값들 Yi를 변경된 값들 Yr에 맵핑하는 순방향 LUT, FwdLUT이다:
Figure pct00025
. 다른 LUT는 변경된 코드 값들 Yr
Figure pct00026
에 맵핑하는 역 LUT, InvLUT이다:
Figure pct00027
. (
Figure pct00028
는 Yi의 재구성 값들을 나타낸다.)
2.4.1 PWL(piece-wise linear) 모델
일부 실시예들에서, PWL(piece-wise linear)은 다음과 같은 방식으로 구현된다:
x1, x2를 2개의 입력 피벗 포인트라고 하고, y1, y2를 하나의 피스(piece)에 대한 그것들의 대응하는 출력 피벗 포인트라고 한다. x1과 x2 사이의 임의의 입력 값 x에 대한 출력 값 y는 다음의 수학식에 의해 보간될 수 있다:
y = ((y2-y1)/(x2-x1)) * (x-x1) + y1
고정 소수점 구현에서, 수학식은 다음과 같이 다시 쓰여질 수 있다:
y = ((m * x + 2FP_PREC-1) >> FP_PREC) + c
여기서, m은 스칼라이고, c는 오프셋이고, FP_PREC는 정밀도를 지정하기 위한 상수 값이다.
CE-12 소프트웨어에서, PWL 모델은 1024-엔트리 FwdLUT 및 InvLUT 맵핑 테이블들을 미리 계산하기 위해 사용되지만; PWL 모델은 또한 구현들이 LUT들을 미리 계산하지 않고 온-더-플라이로 동일한 맵핑 값들을 계산할 수 있게 한다는 점에 유의한다.
2.4.2 테스트 CE12-2
2.4.2.1 루마 재성형
인-루프 루마 재성형의 테스트 2(즉, 제안의 CE12-2)는 인터 슬라이스 재구성에서 블록-와이즈 인트라 예측(block-wise intra prediction)에 대한 디코딩 레이턴시를 또한 제거하는 더 낮은 복잡도의 파이프라인을 제공한다. 인트라 예측은 인터 및 인트라 슬라이스들 양자 모두에 대해 재성형된 도메인에서 수행된다.
인트라 예측은 슬라이스 타입에 관계없이 재성형된 도메인에서 항상 수행된다. 이러한 배열로, 인트라 예측은 이전 TU 재구성이 행해진 직후에 시작될 수 있다. 이러한 배열은 또한 슬라이스 종속적인 것 대신에 인트라 모드에 대한 통합 프로세스를 제공할 수 있다. 도 23은 모드에 기초한 CE12-2 디코딩 프로세스의 블록도를 도시한다.
CE12-2는 또한 CE12-1의 32-피스 PWL(piece-wise linear) 모델들 대신에 루마 및 크로마 잔차 스케일링에 대한 16-피스 PWL 모델들을 테스트한다.
CE12-2에서 인-루프 루마 재성형기를 갖는 인터 슬라이스 재구성(연한 녹색 음영 블록들은 재성형된 도메인에서의 신호를 나타낸다: 루마 잔차; 인트라 루마 예측됨; 및 인트라 루마 재구성됨).
2.4.2.2 루마 종속적 크로마 잔차 스케일링(LCRS)
루마 종속적 크로마 잔차 스케일링은 고정 소수점 정수 연산(fixed-point integer operation)으로 구현되는 곱셈 프로세스이다. 크로마 잔차 스케일링은 크로마 신호와의 루마 신호 상호작용을 보상한다. 크로마 잔차 스케일링은 TU 레벨에서 적용된다. 더 구체적으로, 다음과 같이 적용된다:
○ 인트라에 대해, 재구성된 루마가 평균화된다.
○ 인터에 대해, 예측 루마가 평균화된다.
평균은 PWL 모델에서 인덱스를 식별하는 데 사용된다. 인덱스는 스케일링 인자 cScaleInv를 식별한다. 크로마 잔차는 그 수로 곱해진다.
크로마 스케일링 인자는 재구성된 루마 값들이 아니라 순방향-맵핑된 예측된 루마 값들로부터 계산된다는 점에 유의한다.
2.4.2.3 ILR 사이드 정보의 시그널링
파라미터들은 (ALF와 유사한) 타일 그룹 헤더에서 (현재) 전송된다. 이들은 전하는 바에 의하면 40-100 비트를 취한다. 타일 그룹은 픽처를 표현하는 다른 방식일 수 있다. 다음의 표는 JVET-L1001의 버전 9에 기초한다. 추가된 신택스는 이탤릭체로 강조표시된다.
Figure pct00029
Figure pct00030
Figure pct00031
일반 시퀀스 파라미터 세트 RBSP 시맨틱스에서, 다음의 시맨틱스를 추가한다:
sps_reshaper_enabled_flag가 1인 것은 재성형기가 CVS(coded video sequence)에서 사용되는 것을 명시한다. sps_reshaper_enabled_flag가 0인 것은 재성형기가 CVS에서 사용되지 않는 것을 명시한다.
타일 그룹 헤더 신택스에서, 다음과 같은 시맨틱스를 추가한다
tile_group_reshaper_model_present_flag가 1인 것은 tile_group_reshaper_model()이 타일 그룹 헤더에 존재하는 것을 명시한다. tile_group_reshaper_model_present_flag가 0인 것은 tile_group_reshaper_model()이 타일 그룹 헤더에 존재하지 않는 것을 명시한다. tile_group_reshaper_model_present_flag가 존재하지 않을 때, 그것은 0인 것으로 추론된다.
tile_group_reshaper_enabled_flag가 1인 것은 재성형기가 현재 타일 그룹에 대해 인에이블되는 것을 명시한다. tile_group_reshaper_enabled_flag가 0인 것은 재성형기가 현재 타일 그룹에 대해 인에이블되지 않는 것을 명시한다. tile_group_reshaper_enable_flag가 존재하지 않을 때, 그것은 0인 것으로 추론된다.
tile_group_reshaper_chroma_residual_scale_flag가 1인 것은 크로마 잔차 스케일링이 현재 타일 그룹에 대해 인에이블되는 것을 명시한다. tile_group_reshaper_chroma_residual_scale_flag가 0인 것은 크로마 잔차 스케일링이 현재 타일 그룹에 대해 인에이블되지 않는 것을 명시한다. tile_group_reshaper_chroma_residual_scale_flag가 존재하지 않을 때, 그것은 0인 것으로 추론된다.
tile_group_reshaper_model() 신택스를 추가한다
reshape_model_min_bin_idx는 재성형기 구성 프로세스에서 사용될 최소 빈(또는 피스) 인덱스를 명시한다. reshape_model_min_bin_idx의 값은 0으로부터 MaxBinIdx까지의 범위에 있어야 한다. MaxBinIdx의 값은 15일 것이다.
reshape_model_delta_max_bin_idx는 최대 허용 빈(또는 피스) 인덱스 MaxBinIdx 마이너스 재성형기 구성 프로세스에서 사용될 최대 빈 인덱스를 명시한다. reshape_model_max_bin_idx의 값은 MaxBinIdx - reshape_model_delta_max_bin_idx와 동일하게 설정된다.
reshaper_model_bin_delta_abs_cw_prec_minus1 플러스 1은 신택스 reshape_model_bin_delta_abs_CW[i]의 표현에 사용되는 비트들의 수를 명시한다.
reshape_model_bin_delta_abs_CW[i]는 i번째 빈에 대한 절대 델타 코드워드 값을 명시한다.
reshaper_model_bin_delta_sign_CW_flag[i]는 다음과 같이 reshape_model_bin_delta_abs_CW[i]의 부호를 명시한다:
- reshape_model_bin_delta_sign_CW_flag[i]가 0이면, 대응하는 변수 RspDeltaCW[i]는 양의 값이다.
- 그렇지 않으면(reshape_model_bin_delta_sign_CW_flag[i]가 0이 아니면), 대응하는 변수 RspDeltaCW[i]는 음의 값이다.
reshape_model_bin_delta_sign_CW_flag[i]가 존재하지 않을 때, 그것은 0인 것으로 추론된다.
변수 RspDeltaCW[i] = (1 2*reshape_model_bin_delta_sign_CW[i]) * reshape_model_bin_delta_abs_CW[i];
변수 RspCW[i]는 다음과 같은 단계들로서 도출된다:
변수 OrgCW는 (1 << BitDepthY) / (MaxBinIdx + 1)과 동일하게 설정된다.
- reshaper_model_min_bin_idx <= i <= reshaper_model_max_bin_idx이면 RspCW[i] = OrgCW + RspDeltaCW[i].
- 그렇지 않으면, RspCW[i] = 0.
BitDepthY의 값이 10이면 RspCW[i]의 값은 32 내지 2 * OrgCW - 1의 범위에 있어야 한다.
변수들 InputPivot[i](i는 0으로부터 MaxBinIdx + 1까지의 범위에 있음)는 다음과 같이 도출된다.
InputPivot[i] = i * OrgCW
변수 ReshapePivot[i](i는 0으로부터 MaxBinIdx + 1까지의 범위에 있음), 변수 ScaleCoef[i] 및 InvScaleCoeff[i](i는 0으로부터 MaxBinIdx까지의 범위에 있음)는 다음과 같이 도출된다:
Figure pct00032
변수 ChromaScaleCoef[i](i는 0으로부터 MaxBinIdx까지의 범위에 있음)는 다음과 같이 도출된다:
Figure pct00033
2.4.2.4 ILR의 사용
인코더 측에서, 각각의 픽처(또는 타일 그룹)는 먼저 재성형된 도메인으로 전환된다. 그리고 모든 코딩 프로세스는 재성형된 도메인에서 수행된다. 인트라 예측의 경우, 이웃 블록은 재성형된 도메인에 있고; 인터 예측의 경우, (디코딩된 픽처 버퍼로부터 원래 도메인으로부터 생성된) 참조 블록들이 먼저 재성형된 도메인으로 전환된다. 그 후, 잔차가 생성되고 비트스트림으로 코딩된다.
전체 픽처(또는 타일 그룹)가 인코딩/디코딩을 끝낸 후에, 재성형된 도메인에서의 샘플들이 원래 도메인으로 전환되고, 이어서 디블록킹 필터 및 다른 필터들이 적용된다.
예측 신호에 대한 순방향 재성형은 다음과 같은 경우들에 대해 디스에이블된다:
○ 현재 블록은 인트라-코딩된다
○ 현재 블록은 CPR(current picture referencing, IBC(intra block copy)로도 알려짐)로서 코딩된다
○ 현재 블록은 CIIP(combined inter-intra mode)로서 코딩되고, 순방향 재성형은 인트라 예측 블록에 대해 디스에이블된다
JVET-N0805
타일 그룹 헤더에서 ILR의 사이드 정보를 시그널링하는 것을 회피하기 위해, JVET-N0805에서는, APS에서 이들을 시그널링하는 것이 제안된다. 이는 다음과 같은 주요 아이디어들을 포함한다:
- 선택적으로 SPS에서 LMCS 파라미터들을 전송한다. LMCS는 관련 비디오 코딩 표준들에 정의된 바와 같은 LMCS(luma mapping with chroma scaling) 기법들을 지칭한다.
- ALF 및 LMCS 파라미터들에 대한 APS 타입들을 정의한다. 각각의 APS는 하나의 타입만을 갖는다.
- APS에서 LMCS 파라미터들을 전송한다.
- LMCS 툴이 인에이블된 경우, LMCS aps_id가 존재하는지 여부를 표시하기 위해 TGH에 플래그를 갖는다. 시그널링되지 않는 경우, SPS 파라미터들이 사용된다.
* 툴이 인에이블될 때 참조되는 유효한 무언가를 항상 갖기 위해 시맨틱 제약을 추가할 필요가 있다.
2.5.2.5.1 JVET-M1001(VVC 작업 초안 4) 위의 제안된 설계의 구현
이하에서, 제안된 변경들은 이탤릭체로 나타내어진다.
Figure pct00034
...
sps_lmcs_enabled_flag가 1인 것은 LMCS(luma mapping with chroma scaling)가 CVS(coded video sequence)에서 사용되는 것을 명시한다. sps_lmcs_enabled_flag가 0인 것은 LMCS(luma mapping with chroma scaling)가 CVS에서 사용되지 않는 것을 명시한다.
sps_lmcs_default_model_present_flag 가 1인 것은 디폴트 lmcs 데이터가 이 SPS에 존재하는 것을 명시한다. sps_lmcs_default_model_flag가 0인 것은 디폴트 lmcs 데이터가 이 SPS에 존재하지 않는 것을 명시한다. 존재하지 않을 때, sps_lmcs_default_model_present_flag의 값은 0인 것으로 추론된다.
...
Figure pct00035
aps_params_type 는 다음의 표에 명시된 바와 같이 APS에서 운반되는 APS 파라미터들의 타입을 명시한다:
Figure pct00036
조항 3에 다음의 정의들을 추가한다:
ALF APS : ALF_APS와 동일한 aps_params_type를 갖는 APS.
LMCS APS : LMCS_APS와 동일한 aps_params_type를 갖는 APS.
다음과 같은 시맨틱스 변경들을 행한다:
...
tile_group_alf_aps_id는 타일 그룹이 참조하는 ALF APS의 adaptation_parameter_set_id를 명시한다. tile_group_alf_aps_id와 동일한 adaptation_parameter_set_id를 갖는 ALF APS NAL 유닛의 TemporalId는 코딩된 타일 그룹 NAL 유닛의 TemporalId보다 작거나 같아야 한다.
동일한 값의 adaptation_parameter_set_id를 갖는 다수의 ALF APS들이 동일한 픽처의 2개 이상의 타일 그룹에 의해 참조될 때, 동일한 값의 adaptation_parameter_set_id를 갖는 다수의 ALF APS들은 동일한 내용을 가질 것이다.
...
Figure pct00037
tile_group_lmcs_enabled_flag가 1인 것은 LMCS(luma mapping with chroma scaling)가 현재 타일 그룹에 대해 인에이블되는 것을 명시한다. tile_group_lmcs_enabled_flag가 0인 것은 LMCS(luma mapping with chroma scaling)가 현재 타일 그룹에 대해 인에이블되지 않는 것을 명시한다. tile_group_lmcs_enable_flag가 존재하지 않을 때, 그것은 0인 것으로 추론된다.
tile_group_lmcs_use_default_model_flag 가 1인 것은 타일 그룹에 대한 LMCS(luma mapping with chroma scaling) 연산이 디폴트 lmcs 모델을 사용하는 것을 명시한다. tile_group_lmcs_use_default_model_flag가 0인 것은 타일 그룹에 대한 LMCS(luma mapping with chroma scaling) 연산이 tile_group_lmcs_aps_id에 의해 참조되는 LMCS APS에서의 lmcs 모델을 사용하는 것을 명시한다. tile_group_reshaper_use_default_model_flag가 존재하지 않을 때, 그것은 0인 것으로 추론된다.
tile_group_lmcs_aps_id 는 타일 그룹이 참조하는 LMCS APS의 adaptation_parameter_set_id를 명시한다. tile_group_lmcs_aps_id와 동일한 adaptation_parameter_set_id를 갖는 LMCS APS NAL 유닛의 TemporalId는 코딩된 타일 그룹 NAL 유닛의 TemporalId보다 작거나 같아야 한다.
동일한 값의 adaptation_parameter_set_id를 갖는 다수의 LMCS APS들이 동일한 픽처의 2개 이상의 타일 그룹에 의해 참조될 때, 동일한 값의 adaptation_parameter_set_id를 갖는 다수의 LMCS APS들은 동일한 내용을 가질 것이다.
tile_group_chroma_residual_scale_flag가 1인 것은 크로마 잔차 스케일링이 현재 타일 그룹에 대해 인에이블되는 것을 명시한다. tile_group_chroma_residual_scale_flag가 0인 것은 크로마 잔차 스케일링이 현재 타일 그룹에 대해 인에이블되지 않는 것을 명시한다. tile_group_chroma_residual_scale_flag가 존재하지 않을 때, 그것은 0인 것으로 추론된다.
...
...
2.4.2.6 JVET-N0138
이 기고문은 ALF 파라미터들뿐만 아니라 재성형기 모델 파라미터들의 운반을 위한 적응 파라미터 세트(APS)의 확장된 사용을 제안한다. 마지막 회의에서는, 다수의 타일 그룹들에서의 파라미터들의 불필요한 중복 시그널링을 회피함으로써 코딩 효율 개선을 위해 ALF 파라미터들이 타일 그룹 헤더 대신에 APS에 의해 운반되는 것이 결정되었다. 동일한 이유에 기초하여, 타일 그룹 헤더 대신에 APS에 의해 재성형기 모델 파라미터들을 운반하는 것이 제안된다. APS에서의 파라미터들의 타입(적어도 ALF 모델이든 재성형기 모델이든)을 식별하기 위해, APS 타입 정보가 APS ID에 더하여 APS 신택스에서 요구된다.
적응 파라미터 세트 신택스 및 시맨틱스
이하에서, 제안된 변경들은 이탤릭체로 나타내어진다.
Figure pct00038
adaptation_parameter_set_type는 APS에서의 파라미터들의 타입을 식별한다. adaptation_parameter_set_type의 값은 0으로부터 1까지의 범위에 있어야 한다. Adaptation_parameter_set_type가 0이면, ALF 파라미터들이 시그널링된다. 그렇지 않으면, 재성형기 모델 파라미터들이 시그널링된다.
일반 타일 그룹 헤더 신택스 및 시맨틱스
Figure pct00039
2.5 VPDU(Virtual Pipelining Data Unit)
VPDU(virtual pipeline data unit)들은 픽처에서의 비-중첩 MxM-루마(L)/NxN-크로마(C) 유닛들로서 정의된다. 하드웨어 디코더들에서, 연속적인 VPDU들은 다수의 파이프라인 스테이지들에 의해 동시에 처리되며; 상이한 스테이지들은 상이한 VPDU들을 동시에 처리한다. VPDU 크기는 대부분의 파이프라인 스테이지들에서 버퍼 크기에 대략 비례하므로, VPDU 크기를 작게 유지하는 것이 매우 중요하다고 한다. HEVC 하드웨어 디코더들에서, VPDU 크기는 최대 변환 블록(transform block, TB) 크기로 설정된다. 최대 TB 크기를 (HEVC에서와 같이) 32x32-L/16x16-C로부터 (현재 VVC에서와 같이) 64x64-L/32x32-C로 확대하는 것은 코딩 이득들을 가져올 수 있고, 이는 HEVC와 비교하여 4X의 VPDU 크기(64x64-L/32x32-C)를 초래할 것으로 예상된다. 그러나, 쿼드트리(QT) 코딩 유닛(CU) 파티셔닝에 더하여, 추가적인 코딩 이득들을 달성하기 위해 VVC에서 삼진 트리(TT) 및 이진 트리(BT)가 채택되고, TT 및 BT 구분들은 128x128-L/64x64-C 코딩 트리 블록(CTU)들에 재귀적으로 적용될 수 있으며, 이는 HEVC와 비교하여 16X의 VPDU 크기(128x128-L/64x64-C)로 이어진다고 한다.
VVC의 현재 설계에서, VPDU 크기는 64x64-L/32x32-C로서 정의된다.
2.6 적응 파라미터 세트
적응 파라미터 세트(APS)는 ALF 파라미터들을 운반하기 위해 VVC에서 채택된다. 타일 그룹 헤더는 ALF가 인에이블될 때 조건부로 존재하는 aps_id를 포함한다. APS는 aps_id 및 ALF 파라미터들을 포함한다. 새로운 NUT(AVC 및 HEVC에서와 같은, NAL 유닛 타입) 값이 (JVET-M0132로부터의) APS에 대해 할당된다. VTM-4.0(나올 예정)에서의 공통 테스트 조건들에 대해, 단지 aps_id=0을 사용하고 각각의 픽처와 함께 APS를 전송하는 것이 제안된다. 이제, APS ID 값들의 범위는 0..31일 것이고, APS들은 픽처들에 걸쳐 공유될 수 있다(그리고 픽처 내의 상이한 타일 그룹들에서 상이할 수 있다). ID 값은 존재할 때 고정 길이 코딩되어야 한다. ID 값들은 동일한 픽처 내의 상이한 콘텐츠와 함께 재사용될 수 없다.
2.7 관련 툴들
2.7.1 확산 필터(DF)
JVET-L0157에서, 확산 필터가 제안되며, 여기서 CU의 인트라/인터 예측 신호는 확산 필터들에 의해 추가로 수정될 수 있다.
균일 확산 필터. 균일 확산 필터(Uniform Diffusion Filter)는 예측 신호를 아래에 정의되는 hI 또는 hIV로서 주어지는 고정 마스크와 컨볼루션함으로써 실현된다.
예측 신호 자체 외에도, 블록의 좌측 및 상부에 있는 한 줄의 재구성된 샘플들이 필터링된 신호에 대한 입력으로서 사용되고, 여기서, 이들 재구성된 샘플들의 사용은 인터 블록들에서 회피될 수 있다.
pred를 인트라 또는 모션 보상된 예측에 의해 획득된 주어진 블록 상의 예측 신호라고 한다. 필터들에 대한 경계 포인트들을 처리하기 위해, 예측 신호는 예측 신호 predext로 확장될 필요가 있다. 이 확장된 예측은 2가지 방식으로 형성될 수 있다:
어느 쪽이든, 중간 단계로서, 블록의 좌측 및 상부에 있는 한 줄의 재구성된 샘플들이 예측 신호에 추가되고, 이어서 그 결과 얻어진 신호가 모든 방향으로 미러링된다. 또는 예측 신호 자체만이 모든 방향으로 미러링된다. 후자의 확장은 인터 블록들에 사용된다. 이 경우, 예측 신호 자체만이 확장된 예측 신호 predext에 대한 입력을 포함한다.
필터 hI가 사용될 경우, 위에서 언급한 경계 확장을 사용하여 예측 신호 pred를
Figure pct00040
로 대체하는 것이 제안된다. 여기서, 필터 마스크 hI는 다음과 같이 주어진다.
Figure pct00041
필터 hIV가 사용될 경우, 예측 신호 pred를 다음 식으로 대체하는 것이 제안된다.
Figure pct00042
여기서, 필터 hIV는 다음과 같이 주어진다.
Figure pct00043
방향성 확산 필터. 신호 적응적 확산 필터들을 사용하는 대신에, 여전히 고정 마스크를 갖는 방향성 필터들인, 수평 필터 hhor 및 수직 필터 hver이 사용된다. 더 정확하게는, 이전 섹션의 마스크 hI에 대응하는 균일 확산 필터링은 단순히 수직 방향을 따라서만 또는 수평 방향을 따라서만 적용되도록 제한된다. 수직 필터는 예측 신호에 고정 필터 마스크
Figure pct00044
를 적용함으로써 실현되고 수평 필터는 전치 마스크
Figure pct00045
를 사용함으로써 실현된다.
2.7.2 쌍방 필터(BF)
쌍방 필터는 JVET-L0406에서 제안되고, 그것은 17보다 큰 슬라이스 양자화 파라미터 및 비-제로 변환 계수들을 갖는 루마 블록들에 항상 적용된다. 따라서, 쌍방 필터의 사용을 시그널링할 필요가 없다. 쌍방 필터는, 적용되는 경우, 역변환 직후에 디코딩된 샘플들에 대해 수행된다. 또한, 필터 파라미터들, 즉, 가중치들은 코딩된 정보로부터 명시적으로 도출된다.
필터링 프로세스는 다음과 같이 정의된다:
Figure pct00046
여기서, P0,0은 현재 샘플의 강도이고, P'0,0은 현재 샘플의 수정된 강도이며, Pk,0 및 Wk는 각각 k번째 이웃 샘플에 대한 강도 및 가중 파라미터이다. 1개의 현재 샘플 및 그것의 4개의 이웃 샘플(즉, K=4)의 예가 도 24에 도시되어 있다.
더 구체적으로, k번째 이웃 샘플과 연관된 가중치 Wk(x)는 다음과 같이 정의된다:
Figure pct00047
여기서,
Figure pct00048
이고
Figure pct00049
이다.
여기서, σd는 코딩된 모드 및 코딩 블록 크기들에 종속적이다. 설명된 필터링 프로세스는 병렬 처리를 가능하게 하기 위해 인트라-코딩된 블록들, 및 TU가 추가로 구분될 때 인터-코딩된 블록들에 적용된다.
비디오 신호의 통계적 특성들을 더 잘 캡처하고, 필터의 성능을 개선하기 위해, 식 (2)로부터 얻어지는 가중치 함수는 코딩 모드 및 블록 파티셔닝의 파라미터들(최소 크기)에 종속적인 것으로서 표 4에 나타낸 σd 파라미터에 의해 조정되고 있다.
Figure pct00050
코딩 성능을 더 개선하기 위해, TU가 구분되지 않을 때 인터-코딩된 블록들에 대해, 현재 샘플과 그것의 이웃 샘플들 중 하나 사이의 강도 차이는 현재 샘플과 이웃 샘플을 커버하는 2개의 윈도우 사이의 대표 강도 차이로 대체된다. 따라서, 필터링 프로세스의 수학식은 다음과 같이 수정된다:
Figure pct00051
여기서, Pk,m 및 P0,m은 각각 Pk,0 및 P0,0에 중심을 둔 윈도우들 내의 m번째 샘플 값을 나타낸다. 이 제안에서, 윈도우 크기는 3x3으로 설정된다. P2,0 및 P0,0을 커버하는 2개의 윈도우의 예가 도 25에 도시되어 있다.
2.7.3 아다마르 변환 도메인 필터(HF)
JVET-K0068에서, 재구성 이후 CU 레벨에 적용되고 곱셈 없는 구현을 갖는 1D 아다마르 변환 도메인에서의 인-루프 필터. 제안된 필터는 미리 정의된 조건을 충족시키는 모든 CU 블록들에 대해 적용되고, 필터 파라미터들은 코딩된 정보로부터 도출된다.
제안된 필터링은, 4x4 블록들을 제외하고 슬라이스 양자화 파라미터가 17보다 큰 경우, 비-제로 변환 계수들을 갖는 루마 재구성된 블록들에 항상 적용된다. 필터 파라미터들은 코딩된 정보로부터 명시적으로 도출된다. 제안된 필터는, 적용되는 경우, 역변환 직후에 디코딩된 샘플들에 대해 수행된다.
재구성된 블록으로부터의 각각의 픽셀에 대해, 픽셀 처리는 다음과 같은 단계들을 포함한다:
○ 스캔 패턴에 따라 현재 픽셀을 포함하여 처리 픽셀 주위의 4개의 이웃 픽셀을 스캔
○ 판독 픽셀들의 4 포인트 아다마르 변환
○ 다음과 같은 공식에 기초한 스펙트럼 필터링:
Figure pct00052
여기서, (i)는 아다마르 스펙트럼에서의 스펙트럼 성분의 인덱스이고, R(i)는 인덱스에 대응하는 재구성된 픽셀들의 스펙트럼 성분이고, σ는 다음의 수학식을 사용하여 코덱 양자화 파라미터 QP로부터 도출되는 필터링 파라미터이다:
Figure pct00053
.
스캔 패턴의 예가 도 26에 도시되어 있으며, 여기서, A는 현재 픽셀이고, {B,C,D}는 주변 픽셀들이다.
CU 경계 상에 놓인 픽셀들에 대해, 스캔 패턴은 모든 요구되는 픽셀들이 현재 CU 내에 있는 것을 보장하도록 조정된다.
3 기존 구현들의 단점들
기존 ILR 구현들에서는, 다음과 같은 단점들이 존재할 수 있다:
1) 타일 그룹 헤더에서의 ILR 사이드 정보의 시그널링은 너무 많은 비트를 필요로 하기 때문에 적절하지 않다. 또한, 상이한 픽처들/타일 그룹들 사이의 예측은 허용되지 않는다. 따라서, 각각의 타일 그룹에 대해, ILR의 사이드 정보가 송신될 필요가 있고, 이는 특히 낮은 해상도에 대해 낮은 비트레이트들 하에서 코딩 손실을 야기할 수 있다.
2) ILR과 DMVR(또는 다른 새로 도입된 코딩 툴들) 사이의 상호작용은 불명확하다. 예를 들어, ILR이 인터-예측 신호에 적용되어 원래 신호를 재성형된 도메인으로 전환하고 디코딩된 잔차들이 재성형된 도메인에 있다. DMVR은 또한 하나의 블록에 대한 모션 벡터들을 리파인하기 위해 예측 신호에 의존한다. 원래 도메인 또는 재성형된 도메인에서 DMVR을 적용할지는 불명확하다.
3) ILR과 스크린 콘텐츠 코딩 툴들, 예를 들어, 팔레트, B-DPCM, IBC, 변환 스킵, 트랜스퀀트-바이패스, I-PCM 모드들 사이의 상호작용은 명확하지 않다.
4) 루마 종속적 크로마 잔차 스케일링이 ILR에서 사용된다. 따라서, (루마와 크로마 사이의 종속성으로 인한) 추가적인 지연이 도입되며, 이는 하드웨어 설계에 유익하지 않다.
5) VPDU의 목적은 다른 64x64 정사각형 영역들의 처리를 시작하기 전에 하나의 64x64 정사각형 영역의 처리의 완료를 보장하는 것이다. 그러나, ILR의 설계에 따르면, 크로마가 루마의 예측 신호에 의존하기 때문에 VPDU의 위반을 야기할 수 있는 ILR의 사용에 대한 제한이 없다.
6) 모든 제로 계수들이 하나의 CU에 대해 발생할 때, 예측 블록 및 재구성 블록은 여전히 순방향 및 역 재성형 프로세스들을 수행하며, 이는 계산 복잡도를 낭비한다.
7) JVET-N0138에서는, APS에서 ILR 정보를 시그널링하는 것이 제안된다. 이 해결책에 의해 몇 가지 새로운 문제가 야기될 수 있다. 예를 들어, 두 종류의 APS가 설계된다. 그러나, ILR에 대해 시그널링된 adaptation_parameter_set_id는 ILR 정보를 포함하지 않는 APS를 참조할 수 있다. 유사하게, 적응적 루프 필터링(ALF)에 대해 시그널링된 adaptation_parameter_set_id는 ALF 정보를 포함하지 않는 APS를 참조할 수 있다
4 비디오 코딩을 위한 인-루프 재성형을 위한 예시적인 방법들
현재 개시된 기술의 실시예들은 기존의 구현들의 단점들을 극복함으로써, 더 높은 코딩 효율들을 갖는 비디오 코딩을 제공한다. 개시된 기술에 기초하여, 기존의 및 장래의 비디오 코딩 표준들 양자 모두를 향상시킬 수 있는 인-루프 재성형의 방법들이 다양한 구현들에 대해 설명된 다음의 예들에서 설명된다. 아래에 제공되는 개시된 기술의 예들은 일반적인 개념들을 설명하는 것이며, 제한하는 것으로 해석되도록 의도되지 않는다. 일 예에서, 명시적으로 반대로 표시되지 않는 한, 이러한 예들에서 설명된 다양한 특징들은 조합될 수 있다. 제안된 기술들 중 일부는 기존의 후보 리스트 구성 프로세스에 적용될 수 있다는 점에 유의해야 한다.
이 문서에서, DMVD(decoder side motion vector derivation)는 블록/서브-블록 모션 정보를 도출하거나 리파인하기 위해 모션 추정을 수행하는 DMVR과 FRUC, 및 샘플-와이즈 모션 리파인먼트(sample-wise motion refinement)를 수행하는 BIO와 같은 방법들을 포함한다. 다양한 예들(예 1 내지 예 42)이 아래에 넘버링된 리스트에 제공된다.
1. DMVR과 같은 DMVD 기술들에서의 모션 정보 리파인먼트 프로세스는 재성형된 도메인에서의 정보에 종속할 수 있다.
a. 일 예에서, 원래 도메인에서의 참조 픽처들로부터 생성된 예측 블록들은 모션 정보 리파인먼트를 위해 사용되기 전에 먼저 재성형된 도메인으로 전환될 수 있다.
i. 대안적으로, 게다가, 비용 계산들(예를 들어, SAD, MR-SAD)/기울기 계산들이 재성형된 도메인에서 수행된다.
ii. 대안적으로, 게다가, 모션 정보가 리파인된 후에, 리파인된 모션 정보로 생성된 예측 블록들에 대해 재성형 프로세스가 디스에이블된다.
b. 대안적으로, DMVR과 같은 DMVD 기술들에서의 모션 정보 리파인먼트 프로세스는 원래 도메인에서의 정보에 종속할 수 있다.
i. DMVD 프로세스들은 원래 도메인에서 예측 블록들로 호출될 수 있다.
ii. 일 예에서, 모션 정보 리파인먼트 후에, 리파인된 모션 정보 또는 최종 예측 블록(예를 들어, 2개의 예측 블록의 가중 평균)으로 획득된 예측 블록들은 최종 재구성 블록을 생성하기 위해 재성형된 도메인으로 추가로 전환될 수 있다.
iii. 대안적으로, 게다가, 모션 정보가 리파인된 후에, 리파인된 모션 정보로 생성된 예측 블록들에 대해 재성형 프로세스가 디스에이블된다.
2. 현재 타일/타일 그룹/픽처 내의 샘플들 및 로컬 조명 보상(LIC) 파라미터들을 도출하는 데 이용되는 참조 픽처들(원래 도메인 또는 재성형된 도메인 양자 모두에서)로부터 도출된 샘플들에 대해 도메인을 정렬하는 것이 제안된다.
a. 일 예에서, 재성형된 도메인은 LIC 파라미터들을 도출하는 데 이용된다.
i. 대안적으로, 게다가, 샘플들(예를 들어, (보간을 통한 또는 통하지 않은) 참조 픽처들에서의 참조 샘플들은 물론 (보간을 통한 또는 통하지 않은) 참조 샘플들의 이웃하는/인접하지 않은 샘플들)은 LIC 파라미터들을 도출하는 데 사용되기 전에 먼저 재성형된 도메인으로 전환될 수 있다.
b. 일 예에서, 원래 도메인은 LIC 파라미터들을 도출하는 데 이용된다.
i. 대안적으로, 게다가, (예를 들어, 현재 타일 그룹/픽처/타일에서의) 현재 블록의 공간적으로 이웃하는/인접하지 않은 샘플들은 LIC 파라미터들을 도출하는 데 사용되기 전에 먼저 원래 도메인으로 전환될 수 있다.
c. LIC 파라미터들이 하나의 도메인에서 도출될 때, LIC 파라미터들을 예측 블록들에 적용할 때 예측 블록들의 동일한 도메인이 사용되어야 한다는 것이 제안된다.
i. 일 예에서, 불릿 a.가 호출될 때, 참조 블록들은 재성형된 도메인으로 전환될 수 있고, LIC 모델이 재성형된 참조 블록들에 적용된다.
ii. 일 예에서, 불릿 b.가 호출될 때, 참조 블록들은 원래 도메인에 유지되고, LIC 모델이 원래 도메인에서의 참조 블록들에 적용된다.
d. 일 예에서, LIC 모델이 재성형된 도메인에서의 예측 블록들에 적용된다(예를 들어, 예측 블록들이 먼저 순방향 재성형을 통해 재성형된 도메인으로 전환된다).
e. 일 예에서, LIC 모델이 먼저 원래 도메인에서의 예측 블록들에 적용되고, 그 후, LIC-적용된 예측 블록들에 종속적인 최종 예측 블록이 다음으로 (예를 들어, 순방향 재성형을 통해) 재성형된 도메인으로 전환되고 재구성 블록을 도출하는 데 이용될 수 있다.
f. 위의 방법들은 공간적으로 이웃하는/인접하지 않은 샘플들과 참조 픽처들에서의 참조 샘플들 양자 모두에 의존하는 다른 코딩 툴들로 확장될 수 있다.
3. 예측 신호에 적용되는 필터들(예컨대, 확산 필터(DF))의 경우, 필터는 원래 도메인에서의 예측 블록에 적용된다.
a. 대안적으로, 게다가, 그 후, 재구성 블록을 생성하기 위해 필터링된 예측 신호에 재성형이 적용된다.
b. 인터-코딩 프로세스의 예가 도 27에 도시되어 있다.
c. 대안적으로, 필터들은 재성형 도메인에서의 예측 신호에 적용된다.
i. 대안적으로, 게다가, 재성형이 먼저 예측 블록에 적용되고; 그 후, 필터링 방법들이 재구성 블록을 생성하기 위해 재성형된 예측 블록에 추가로 적용될 수 있다.
ii. 인터-코딩 프로세스의 예가 도 28에 도시되어 있다.
d. 필터 파라미터들은 ILR이 인에이블되는지 여부에 종속할 수 있다.
4. 재구성 블록들에 적용되는 필터들(예를 들어, 쌍방 필터(BF), 아다마르 변환 도메인 필터(HF))의 경우, 필터들은 재성형된 도메인 대신에 원래 도메인에서의 재구성 블록들에 적용된다.
a. 대안적으로, 게다가, 재성형된 도메인에서의 재구성 블록은 먼저 원래 도메인으로 전환되고, 그 후, 필터들이 재구성 블록을 생성하기 위해 적용되고 이용될 수 있다.
b. 인터-코딩 프로세스의 예가 도 29에 도시되어 있다.
c. 대안적으로, 필터들은 재성형된 도메인에서의 재구성 블록에 적용될 수 있다.
i. 대안적으로, 게다가, 역 재성형을 적용하기 전에, 필터들이 먼저 적용될 수 있다. 그 후, 필터링된 재구성 블록은 원래 도메인으로 전환될 수 있다.
ii. 인터-코딩 프로세스의 예가 도 30에 도시되어 있다.
d. 필터 파라미터들은 ILR이 인에이블되는지 여부에 종속할 수 있다.
5. 재성형된 도메인에서 (예를 들어, 인트라/인터 또는 다른 종류의 예측 방법들 이후) 재구성 블록들에 적용할 수 있는 필터링 프로세스를 적용하는 것이 제안된다.
a. 일 예에서, 디블록킹 필터(deblocking filter, DBF) 프로세스는 재성형된 도메인에서 수행된다. 이 경우에, 역 재성형이 DBF 이전에 적용되지 않는다.
i. 이 경우, DBF 파라미터들은 재성형이 적용되는지 여부에 따라 상이할 수 있다.
ii. 일 예에서, DBF 프로세스는 재성형이 인에이블되는지 여부에 종속할 수 있다.
1. 일 예에서, 이 방법은 DBF가 원래 도메인에서 호출될 때 적용된다.
2. 대안적으로, 이 방법은 DBF가 재성형된 도메인에서 호출될 때 적용된다.
b. 일 예에서, 샘플 적응적 오프셋(sample adaptive offset, SAO) 필터링 프로세스는 재성형된 도메인에서 수행된다. 이 경우에, 역 재성형이 SAO 이전에 적용되지 않는다.
c. 일 예에서, 적응적 루프 필터(adaptive loop filter, ALF) 필터링 프로세스는 재성형된 도메인에서 수행된다. 이 경우에, 역 재성형이 ALF 이전에 적용되지 않는다.
d. 대안적으로, 게다가, 역 재성형이 DBF 이후의 블록들에 적용될 수 있다.
e. 대안적으로, 게다가, 역 재성형이 SAO 이후의 블록들에 적용될 수 있다.
f. 대안적으로, 게다가, 역 재성형이 ALF 이후의 블록들에 적용될 수 있다.
g. 위에서 언급한 필터링 방법은 다른 종류의 필터링 방법들로 대체될 수 있다.
6. 타일 그룹 헤더들 대신에 (ILR APS와 같은) 새로운 파라미터 세트에서 ILR 파라미터들을 시그널링하는 것이 제안된다.
a. 일 예에서, 타일 그룹 헤더는 aps_id를 포함할 수 있다. 대안적으로, 게다가, aps_id는 ILR이 인에이블될 때 조건부로 존재한다.
b. 일 예에서, ILR APS는 aps_id 및 ILR 파라미터들을 포함한다.
c. 일 예에서, 새로운 NUT(AVC 및 HEVC에서와 같은, NAL 유닛 타입) 값이 ILR APS에 대해 할당된다.
d. 일 예에서, ILR APS ID 값들의 범위는 0...M(예를 들어, M=2K-1)일 것이다.
e. 일 예에서, ILR APS들은 픽처들에 걸쳐 공유될 수 있다(그리고 픽처 내의 상이한 타일 그룹들에서 상이할 수 있다).
f. 일 예에서, ID 값은 존재할 때 고정 길이 코딩될 수 있다. 대안적으로, 이것은 지수-골룸(exponential-Golomb, EG) 코딩, 절단된 단항 또는 다른 이진화 방법들로 코딩될 수 있다.
g. 일 예에서, ID 값들은 동일한 픽처 내의 상이한 콘텐츠와 함께 재사용될 수 없다.
h. 일 예에서, ALF 파라미터들에 대한 APS와 ILR APS는 동일한 NUT를 공유할 수 있다.
i. 대안적으로, ILR 파라미터들은 ALF 파라미터들에 대한 현재 APS와 함께 운반될 수 있다. 이 경우, ILR APS를 언급하는 위의 방법들은 현재 APS로 대체될 수 있다.
j. 대안적으로, ILR 파라미터들은 SPS/VPS/PPS/시퀀스 헤더/픽처 헤더에서 운반될 수 있다.
k. 일 예에서, ILR 파라미터들은 재성형기 모델 정보, ILR 방법의 사용, 크로마 잔차 스케일링 인자들을 포함할 수 있다.
l. 대안적으로, 게다가, ILR 파라미터들은 (APS에서와 같은) 하나의 레벨에서 시그널링될 수 있고, 그리고/또는 ILR의 사용은 (타일 그룹 헤더와 같은) 제2 레벨에서 추가로 시그널링될 수 있다.
m. 대안적으로, 게다가, 상이한 APS 인덱스들로 ILR 파라미터들을 코딩하기 위해 예측 코딩이 적용될 수 있다.
7. 크로마 블록들에 루마 종속적 크로마 잔차 스케일링(LCRS)을 적용하는 대신에, 루마와 크로마 사이의 종속성을 제거하기 위해 크로마 블록들에 순방향/역 재성형 프로세스들을 적용하는 것이 제안된다.
a. 일 예에서, 하나의 크로마 성분에 대해 하나의 M-피스 PWL(piece-wise linear) 모델 및/또는 순방향/역방향 룩업 테이블이 이용될 수 있다. 대안적으로, 2개의 크로마 성분을 각각 코딩하기 위해 2개의 PWL 모델 및/또는 순방향/역방향 룩업 테이블이 이용될 수 있다.
b. 일 예에서, 크로마의 PWL 모델 및/또는 순방향/역방향 룩업 테이블은 루마의 PWL 모델 및/또는 순방향/역방향 룩업 테이블로부터 도출될 수 있다.
i. 일 예에서, 크로마의 PWL 모델들/룩업 테이블들을 추가로 시그널링할 필요가 없다.
c. 일 예에서, 크로마의 PWL 모델 및/또는 순방향/역방향 룩업 테이블은 SPS/VPS/APS/PPS/시퀀스 헤더/픽처 헤더/타일 그룹 헤더/타일 헤더/CTU 행/CTU들의 그룹/영역들에서 시그널링될 수 있다.
8. 일 예에서, 하나의 픽처/타일 그룹의 ILR 파라미터들을 시그널링하는 방법은 이전에 코딩된 픽처들/타일 그룹들의 ILR 파라미터들에 종속할 수 있다.
a. 예를 들어, 하나의 픽처/타일 그룹의 ILR 파라미터들은 하나 또는 다수의 이전에 코딩된 픽처/타일 그룹의 ILR 파라미터들에 의해 예측될 수 있다.
9. 특정 블록 치수들/시간적 계층들/타일 그룹 타입들/픽처 타입들/코딩된 모드들/특정 타입의 모션 정보에 대해 루마 종속적 크로마 잔차 스케일링(LCRS)을 디스에이블하는 것이 제안된다.
a. 일 예에서, 순방향/역 재성형 프로세스가 루마 블록들에 적용될 때에도, LCRS는 대응하는 크로마 블록들에 적용되지 않을 수 있다.
b. 대안적으로, 순방향/역 재성형 프로세스가 루마 블록들에 적용되지 않을 때에도, LCRS는 여전히 대응하는 크로마 블록들에 적용될 수 있다.
c. 일 예에서, LCRS는 CCLM(cross-component linear model) 모드들이 적용될 때 사용되지 않는다. CCLM 모드들은 LM, LM-A 및 LM-L을 포함한다.
d. 일 예에서, LCRS는 CCLM(cross-component linear model) 모드들이 적용되지 않을 때 사용되지 않는다. CCLM 모드들은 LM, LM-A 및 LM-L을 포함한다.
e. 일 예에서, 코딩된 루마 블록이 하나의 VPDU(예를 들어, 64x64)를 초과할 때.
i. 일 예에서, 루마 블록 크기가 M*H 샘플보다 작은 샘플, 예를 들어, 16 또는 32 또는 64 루마 샘플을 포함할 때, LCRS는 허용되지 않는다.
ii. 대안적으로, 루마 블록의 폭 또는/및 높이의 최소 크기가 X보다 작거나 크지 않을 때, LCRS는 허용되지 않는다. 일 예에서, X는 8로 설정된다.
iii. 대안적으로, 루마 블록의 폭 또는/및 높이의 최소 크기가 X보다 작지 않을 때, LCRS는 허용되지 않는다. 일 예에서, X는 8로 설정된다.
iv. 대안적으로, 블록의 폭 > th1 또는 >=th1 및/또는 루마 블록의 높이 > th2 또는 >=th2일 때, LCRS는 허용되지 않는다. 일 예에서, th1 및/또는 th2는 8로 설정된다.
1. 일 예에서, th1 및/또는 th2는 128로 설정된다.
2. 일 예에서, th1 및/또는 th2는 64로 설정된다.
v. 대안적으로, 루마 블록의 폭 < th1 또는 <=th1 및/또는 루마 블록의 높이 < th2 또는 <a=th2일 때, LCRS는 허용되지 않는다. 일 예에서, th1 및/또는 th2는 8로 설정된다.
10. ILR(순방향 재성형 프로세스 및/또는 역 재성형 프로세스)을 디스에이블할지는 계수들에 종속할 수 있다.
a. 일 예에서, 하나의 블록이 모두 제로 계수(all zero coefficients)로 코딩될 때, 예측 블록들에 적용되는 순방향 재성형의 프로세스는 스킵된다.
b. 일 예에서, 하나의 블록이 모두 제로 계수로 코딩될 때, 재구성 블록들에 적용되는 역 재성형의 프로세스는 스킵된다.
c. 일 예에서, 하나의 블록이 특정 위치들에 위치한 단 하나의 비-제로 계수(예를 들어, 하나의 블록의 상단-좌측 위치에 위치한 DC 계수, 하나의 블록 내의 상단-좌측 코딩 그룹에 위치한 계수)로 코딩될 때, 예측 블록들에 적용되는 순방향 재성형 및/또는 재구성 블록들에 적용되는 역 재성형의 프로세스는 스킵된다.
d. 일 예에서, 하나의 블록이 M(예를 들어, M=1)개의 비-제로 계수만으로 코딩될 때, 예측 블록들에 적용되는 순방향 재성형 및/또는 재구성 블록들에 적용되는 역 재성형의 프로세스는 스킵된다.
11. 코딩된 블록이 하나의 VPDU(virtual pipeline data unit)를 초과하는 경우 ILR 적용 영역을 VPDU 유닛들로 구분하는 것이 제안된다. 각각의 적용 영역(예를 들어, 최대 크기가 64x64임)은 ILR 연산을 위한 개별 CU로서 간주된다.
a. 일 예에서, 블록의 폭 > th1 또는 >= th1 및/또는 블록의 높이 > th2 또는 >= th2일 때, 그것은 폭 < th1 또는 <= th1 및/또는 높이 < th2 또는 <= th2를 갖는 서브-블록들로 구분될 수 있고, ILR은 각각의 서브-블록에 대해 수행될 수 있다.
i. 일 예에서, 서브-블록들은 동일한 폭 또는/및 높이를 가질 수 있다.
ii. 일 예에서, 우측 경계 또는/및 하단 경계에 있는 것을 제외한 서브-블록들은 동일한 폭 또는/및 높이를 가질 수 있다.
iii. 일 예에서, 좌측 경계 또는/및 상단 경계에 있는 것을 제외한 서브-블록들은 동일한 폭 또는/및 높이를 가질 수 있다.
b. 일 예에서, 블록의 크기(즉, 폭*높이) > th3 또는 >= th3일 때, 그것은 크기 < th3 또는 <= th3을 갖는 서브-블록들로 구분될 수 있고, ILR은 각각의 서브-블록에 대해 수행될 수 있다.
i. 일 예에서, 서브-블록들은 동일한 크기를 가질 수 있다.
ii. 일 예에서, 우측 경계 또는/및 하단 경계에 있는 것을 제외한 서브-블록들은 동일한 크기를 가질 수 있다.
iii. 일 예에서, 좌측 경계 또는/및 상단 경계에 있는 것을 제외한 서브-블록들은 동일한 크기를 가질 수 있다.
c. 대안적으로, ILR의 사용은 특정 블록 치수들로만 제한된다.
i. 일 예에서, 코딩된 블록이 하나의 VPDU(예를 들어, 64x64)를 초과할 때, ILR은 허용되지 않는다.
ii. 일 예에서, 블록 크기가 M*H 샘플보다 작은 샘플, 예를 들어, 16 또는 32 또는 64 루마 샘플을 포함할 때, ILR은 허용되지 않는다.
iii. 대안적으로, 블록의 폭 또는/및 높이의 최소 크기가 X보다 작거나 크지 않을 때, ILR은 허용되지 않는다. 일 예에서, X는 8로 설정된다.
iv. 대안적으로, 블록의 폭 또는/및 높이의 최소 크기가 X보다 작지 않을 때, ILR은 허용되지 않는다. 일 예에서, X는 8로 설정된다.
v. 대안적으로, 블록의 폭 > th1 또는 >=th1 및/또는 블록의 높이 > th2 또는 >=th2일 때, ILR은 허용되지 않는다. 일 예에서, th1 및/또는 th2는 8로 설정된다.
1. 일 예에서, th1 및/또는 th2는 128로 설정된다.
2. 일 예에서, th1 및/또는 th2는 64로 설정된다.
vi. 대안적으로, 블록의 폭 < th1 또는 <= th1 및/또는 블록의 높이 < th2 또는 <a=th2일 때, ILR은 허용되지 않는다. 일 예에서, th1 및/또는 th2는 8로 설정된다.
12. 위의 방법들(예를 들어, ILR을 디스에이블할지 및/또는 LCRS를 디스에이블할지 및/또는 크로마 코딩을 위한 PWL/룩업 테이블들을 시그널링할지)은 4:4:4/4:2:0과 같은 컬러 포맷에 종속할 수 있다.
13. ILR을 인에이블하는 것의 표시(예를 들어, tile_group_reshaper_enable_flag)는 재성형기 모델의 존재의 표시들(예를 들어, tile_group_reshaper_model_present_flag)의 조건 하에서 코딩될 수 있다.
a. 대안적으로, tile_group_reshaper_model_present_flag는 tile_group_reshaper_enable_flag의 조건 하에서 코딩될 수 있다.
b. 대안적으로, tile_group_reshaper_model_present_flag 및 tile_group_reshaper_enable_flag를 포함하는 2개의 신택스 요소 중 하나만이 코딩될 수 있다. 다른 하나의 값은 시그널링될 수 있는 하나와 동일하게 설정된다.
14. 상이한 클리핑 방법들이 예측 신호 및 재구성 프로세스에 적용될 수 있다.
a. 일 예에서, 적응적 클리핑 방법이 적용될 수 있고 클리핑될 최대 및 최소 값들이 재성형된 도메인에서 정의될 수 있다.
b. 일 예에서, 적응적 클리핑은 재성형된 도메인에서 예측 신호에 적용될 수 있다.
c. 대안적으로, 게다가, (예를 들어, 비트-깊이에 따른) 고정 클리핑이 재구성 블록에 적용될 수 있다.
15. (DF, BF, HF에서 사용되는 것과 같은) 필터 파라미터들은 ILR이 인에이블되는지 여부에 종속할 수 있다.
16. 팔레트 모드에서 코딩된 블록들의 경우, ILR이 디스에이블되거나 상이하게 적용되는 것이 제안된다.
a. 일 예에서, 블록이 팔레트 모드에서 코딩될 때, 재성형 및 역 재성형이 스킵된다.
b. 대안적으로, 블록이 팔레트 모드에서 코딩될 때, 상이한 재성형 및 역 재성형 함수들이 적용될 수 있다.
17. 대안적으로, ILR이 적용될 때, 팔레트 모드는 상이하게 코딩될 수 있다.
a. 일 예에서, ILR이 적용될 때, 팔레트 모드는 원래 도메인에서 코딩될 수 있다.
b. 대안적으로, ILR이 적용될 때, 팔레트 모드는 재성형된 도메인에서 코딩될 수 있다.
c. 일 예에서, ILR이 적용될 때, 팔레트 예측자들은 원래 도메인에서 시그널링될 수 있다.
d. 대안적으로, 팔레트 예측자들은 재성형된 도메인에서 시그널링될 수 있다.
18. IBC 모드에서 코딩된 블록들의 경우, ILR이 디스에이블되거나 상이하게 적용되는 것이 제안된다.
a. 일 예에서, 블록이 IBC 모드에서 코딩될 때, 재성형 및 역 재성형이 스킵된다.
b. 대안적으로, 블록이 IBC 모드에서 코딩될 때, 상이한 재성형 및 역 재성형이 적용된다.
19. 대안적으로, ILR이 적용될 때, IBC 모드는 상이하게 코딩될 수 있다.
a. 일 예에서, ILR이 적용될 때, IBC는 원래 도메인에서 수행될 수 있다.
b. 대안적으로, ILR이 적용될 때, IBC는 재성형된 도메인에서 수행될 수 있다.
20. B-DPCM 모드에서 코딩된 블록들의 경우, ILR이 디스에이블되거나 상이하게 적용되는 것이 제안된다.
a. 일 예에서, 블록이 B-DPCM 모드에서 코딩될 때, 재성형 및 역 재성형이 스킵된다.
b. 대안적으로, 블록이 B-DPCM 모드에서 코딩될 때, 상이한 재성형 및 역 재성형이 적용된다.
21. 대안적으로, ILR이 적용될 때, B-DPCM 모드는 상이하게 코딩될 수 있다.
a. 일 예에서, ILR이 적용될 때, B-DPCM은 원래 도메인에서 수행될 수 있다.
b. 대안적으로, ILR이 적용될 때, B-DPCM은 재성형된 도메인에서 수행될 수 있다.
22. 변환 스킵 모드에서 코딩된 블록들의 경우, ILR이 디스에이블되거나 상이하게 적용되는 것이 제안된다.
a. 일 예에서, 블록이 변환 스킵 모드에서 코딩될 때, 재성형 및 역 재성형이 스킵된다.
b. 대안적으로, 블록이 변환 스킵 모드에서 코딩될 때, 상이한 재성형 및 역 재성형이 적용될 수 있다.
23. 대안적으로, ILR이 적용될 때, 변환 스킵 모드는 상이하게 코딩될 수 있다.
a. 일 예에서, ILR이 적용될 때, 변환 스킵은 원래 도메인에서 수행될 수 있다.
b. 대안적으로, ILR이 적용될 때, 변환 스킵은 재성형된 도메인에서 수행될 수 있다.
24. I-PCM 모드에서 코딩된 블록들의 경우, ILR이 디스에이블되거나 상이하게 적용되는 것이 제안된다.
a. 일 예에서, 블록이 팔레트 모드에서 코딩될 때, 재성형 및 역 재성형이 스킵된다.
b. 대안적으로, 블록이 팔레트 모드에서 코딩될 때, 상이한 재성형 및 역 재성형 함수들이 적용될 수 있다.
25. 대안적으로, ILR이 적용될 때, I-PCM 모드는 상이하게 코딩될 수 있다.
a. 일 예에서, ILR이 적용될 때, I-PCM 모드는 원래 도메인에서 코딩될 수 있다.
b. 대안적으로, ILR이 적용될 때, I-PCM 모드는 재성형된 도메인에서 코딩될 수 있다.
26. 트랜스퀀트-바이패스 모드에서 코딩된 블록들의 경우, ILR이 디스에이블되거나 상이하게 적용되는 것이 제안된다.
a. 일 예에서, 블록이 트랜스퀀트-바이패스 모드에서 코딩될 때, 재성형 및 역 재성형이 스킵된다.
27. 대안적으로, 블록이 트랜스퀀트-바이패스 모드에서 코딩될 때, 상이한 재성형 및 역 재성형 함수들이 적용된다.
28. 위의 불릿들에 대해, ILR이 디스에이블될 때, 순방향 재성형 및/또는 역 재성형 프로세스가 스킵될 수 있다.
a. 대안적으로, 예측 및/또는 재구성 및/또는 잔차 신호는 원래 도메인에 있다.
b. 대안적으로, 예측 및/또는 재구성 및/또는 잔차 신호는 재성형된 도메인에 있다.
29. 하나의 픽처/하나의 타일 그룹/하나의 VPDU/하나의 영역/하나의 CTU 행/다수의 CU들을 코딩하기 위해 (다수의 PWL 모델들과 같은) 다수의 재성형/역 재성형 함수들이 허용될 수 있다.
a. 다수의 함수들로부터 선택하는 방법은 블록 치수/코딩된 모드/픽처 타입/저지연 체크 플래그/모션 정보/참조 픽처들/비디오 콘텐츠 등에 종속할 수 있다.
b. 일 예에서, 다수의 ILR 사이드 정보 세트들(예를 들어, 재성형/역 재성형 함수들)은 SPS/VPS/PPS/시퀀스 헤더/픽처 헤더/타일 그룹 헤더/타일 헤더/영역들/VPDU/ 등등마다 시그널링될 수 있다.
i. 대안적으로, 게다가, ILR 사이드 정보의 예측 코딩이 이용될 수 있다.
c. 일 예에서, 하나보다 많은 aps_idx가 PPS/픽처 헤더/타일 그룹 헤더/타일 헤더/영역/VPDU/ 등등에서 시그널링될 수 있다.
30. 일 예에서, 재성형 정보는 VPS, SPS, PPS, 또는 APS 이외의 새로운 신택스 세트에서 시그널링된다. 예를 들어, 재성형 정보는 inloop_reshaping_parameter_set()(IRPS, 또는 임의의 다른 이름)으로 표시되는 세트에서 시그널링된다.
a. 예시적인 신택스 설계는 아래와 같다. 추가된 신택스는 이탤릭체로 강조표시된다.
Figure pct00054
inloop_reshaping_parameter_set_id는 다른 신택스 요소들에 의한 참조를 위해 IRPS에 대한 식별자를 제공한다.
주 - IRPS들은 픽처들에 걸쳐 공유될 수 있고 픽처 내의 상이한 타일 그룹들에서 상이할 수 있다.
irps_extension_flag가 0인 것은 IRPS RBSP 신택스 구조에 irps_extension_data_flag 신택스 요소들이 존재하지 않는 것을 명시한다. irps_extension_flag가 1인 것은 IRPS RBSP 신택스 구조에 존재하는 irps_extension_data_flag 신택스 요소들이 있는 것을 명시한다.
irps_extension_data_flag는 임의의 값을 가질 수 있다. 그의 존재 및 값은 본 명세서의 이 버전에서 명시된 프로파일들에 대한 디코더 적합성에 영향을 미치지 않는다. 본 명세서의 이 버전에 따르는 디코더들은 모든 irps_extension_data_flag 신택스 요소들을 무시해야 한다.
b. 예시적인 신택스 설계는 아래와 같다. 추가된 신택스는 이탤릭체로 강조표시된다.
일반 타일 그룹 헤더 신택스 및 시맨틱스
Figure pct00055
tile_group_irps_id는 타일 그룹이 참조하는 IRPS의 inloop_reshaping_parameter_set_id를 명시한다. tile_group_irps_id와 동일한 inloop_reshaping_parameter_set_id를 갖는 IRPS NAL 유닛의 TemporalId는 코딩된 타일 그룹 NAL 유닛의 TemporalId보다 작거나 같아야 한다.
31. 일 예에서, IRL 정보는 APS에서 ALF 정보와 함께 시그널링된다.
a. 예시적인 신택스 설계는 아래와 같다. 추가된 신택스는 이탤릭체로 강조표시된다.
적응 파라미터 세트 신택스 및 시맨틱스
Figure pct00056
b. 일 예에서, 하나의 tile_group_aps_id는 타일 그룹이 참조하는 APS의 adaptation_parameter_set_id를 명시하기 위해 타일 그룹 헤더에서 시그널링된다. 현재 타일 그룹에 대한 ALF 정보와 ILR 정보 양자 모두는 명시된 APS에서 시그널링된다.
i. 예시적인 신택스 설계는 아래와 같다. 추가된 신택스는 이탤릭체로 강조표시된다.
Figure pct00057
32. 일 예에서, ILR 정보 및 ALF 정보는 상이한 APS들에서 시그널링된다.
a. 제1 ID(tile_group_aps_id_alf로 명명될 수 있음)는 타일 그룹이 참조하는 제1 APS의 제1 adaptation_parameter_set_id를 명시하기 위해 타일 그룹 헤더에서 시그널링된다. 현재 타일 그룹에 대한 ALF 정보는 명시된 제1 APS에서 시그널링된다.
b. 제2 ID(tile_group_aps_id_irps로 명명될 수 있음)는 타일 그룹이 참조하는 제2 APS의 제2 adaptation_parameter_set_id를 명시하기 위해 타일 그룹 헤더에서 시그널링된다. 현재 타일 그룹에 대한 ILR 정보는 명시된 제2 APS에서 시그널링된다.
c. 일 예에서, 제1 APS는 적합성 비트-스트림(conformance bit-stream)에 ALF 정보를 가져야 한다;
d. 일 예에서, 제2 APS는 적합성 비트-스트림에 ILR 정보를 가져야 한다;
e. 예시적인 신택스 설계는 아래와 같다. 추가된 신택스는 이탤릭체로 강조표시된다.
Figure pct00058
Figure pct00059
33. 일 예에서, 명시된 adaptation_parameter_set_id를 갖는 일부 APS들은 ALF 정보를 가져야 한다. 다른 예로서, 명시된 adaptation_parameter_set_id를 갖는 일부 APS들은 ILR 정보를 가져야 한다.
a. 예를 들어, adaptation_parameter_set_id가 2N인 APS들은 ALF 정보를 가져야 한다. N은 임의의 정수이다;
b. 예를 들어, adaptation_parameter_set_id가 2N+1인 APS들은 ILR 정보를 가져야 한다. N은 임의의 정수이다;
c. 예시적인 신택스 설계는 아래와 같다. 추가된 신택스는 이탤릭체로 강조표시된다.
Figure pct00060
Figure pct00061
i. 예를 들어, 2* tile_group_aps_id_alf는 타일 그룹이 참조하는 제1 APS의 제1 adaptation_parameter_set_id를 명시한다. 현재 타일 그룹에 대한 ALF 정보는 명시된 제1 APS에서 시그널링된다.
ii. 예를 들어, 2* tile_group_aps_id_irps+1은 타일 그룹이 참조하는 제2 APS의 제2 adaptation_parameter_set_id를 명시한다. 현재 타일 그룹에 대한 ILR 정보는 명시된 제2 APS에서 시그널링된다.
34. 일 예에서, 타일 그룹은 현재 타일 그룹 전에 시그널링되는 명시된 타입의 네트워크 추상화 계층(network abstraction layer, NAL) 유닛 전에 시그널링되는 APS(또는 IRPS)를 참조할 수 없다.
a. 일 예에서, 타일 그룹은 현재 타일 그룹 전에 시그널링되는 명시된 타입의 타일 그룹 전에 시그널링되는 APS(또는 IRPS)를 참조할 수 없다.
b. 예를 들어, 타일 그룹은 현재 타일 그룹 전에 시그널링되는 SPS 전에 시그널링되는 APS(또는 IRPS)를 참조할 수 없다.
c. 예를 들어, 타일 그룹은 현재 타일 그룹 전에 시그널링되는 PPS 전에 시그널링되는 APS(또는 IRPS)를 참조할 수 없다.
d. 예를 들어, 타일 그룹은 현재 타일 그룹 전에 시그널링되는 AUD(Access unit delimiter) NAL 전에 시그널링되는 APS(또는 IRPS)를 참조할 수 없다.
e. 예를 들어, 타일 그룹은 현재 타일 그룹 전에 시그널링되는 EoB(End of bitstream) NAL 전에 시그널링되는 APS(또는 IRPS)를 참조할 수 없다.
f. 예를 들어, 타일 그룹은 현재 타일 그룹 전에 시그널링되는 EoS(End of sequence) NAL 전에 시그널링되는 APS(또는 IRPS)를 참조할 수 없다.
g. 예를 들어, 타일 그룹은 현재 타일 그룹 전에 시그널링되는 IDR(instantaneous decoding refresh) NAL 전에 시그널링되는 APS(또는 IRPS)를 참조할 수 없다.
h. 예를 들어, 타일 그룹은 현재 타일 그룹 전에 시그널링되는 CRA(clean random access) NAL 전에 시그널링되는 APS(또는 IRPS)를 참조할 수 없다.
i. 예를 들어, 타일 그룹은 현재 타일 그룹 전에 시그널링되는 IRAP(intra random access point) 액세스 유닛 전에 시그널링되는 APS(또는 IRPS)를 참조할 수 없다.
j. 예를 들어, 타일 그룹은 현재 타일 그룹 전에 시그널링되는 I 타일 그룹(또는 픽처, 또는 슬라이스) 전에 시그널링되는 APS(또는 IRPS)를 참조할 수 없다.
k. IDF-P1903237401H 및 IDF-P1903234501H에 개시된 방법들은 또한 ILR 정보가 APS 또는 IRPS에서 운반될 때 적용될 수 있다.
35. 적합성 비트스트림은, 인-루프 재성형 방법이 하나의 비디오 데이터 유닛(예컨대, 시퀀스)에 대해 인에이블될 때, 디폴트 모델과 같은 디폴트 ILR 파라미터들이 정의되어야 한다는 것을 충족시켜야 한다.
a. sps_lmcs_enabled_flag가 1로 설정될 때 sps_lmcs_default_model_present_flag는 1로 설정될 것이다.
b. 디폴트 파라미터들은 디폴트 모델 존재 플래그(예컨대, sps_lmcs_default_model_present_flag) 대신에 ILR 인에이블링 플래그의 조건 하에서 시그널링될 수 있다.
c. 각각의 타일 그룹에 대해, 디폴트 모델 사용 플래그(예컨대, tile_group_lmcs_use_default_model_flag)는 SPS 디폴트 모델 사용 플래그를 참조하지 않고 시그널링될 수 있다.
d. 적합성 비트스트림은, ILR에 대한 대응하는 APS 타입들에 어떠한 ILR 정보도 없고, 하나의 비디오 데이터 유닛(예컨대, 타일 그룹)이 ILR 기술을 사용하도록 강제될 때, 디폴트 모델이 이용되어야 함을 충족해야 한다.
e. 대안적으로, 적합성 비트스트림은, ILR에 대한 대응하는 APS 타입들에 어떠한 ILR 정보도 없고, 하나의 비디오 데이터 유닛(예컨대, 타일 그룹)이 ILR 기술을 사용하도록 강제될 때(예컨대, tile_group_lmcs_enable_flag가 1임), 디폴트 모델 사용의 표시가 참이어야 하며, 예를 들어, tile_group_lmcs_use_default_model_flag가 1이어야 함을 충족해야 한다.
f. 디폴트 ILR 파라미터들(예컨대, 디폴트 모델)이 비디오 데이터 유닛(예컨대, SPS)에서 전송되어야 하는 것이 제약된다.
i. 대안적으로, 게다가, 디폴트 ILR 파라미터들은 ILR의 사용을 표시하는 SPS 플래그가 참일 때 전송되어야 한다.
g. 비디오 데이터 유닛(예컨대, SPS)에서 전송되는 적어도 하나의 ILR APS가 존재하는 것이 제약된다.
i. 일 예에서, 적어도 하나의 ILR APS는 디폴트 ILR 파라미터들(예컨대, 디폴트 모델)을 포함한다.
36. 디폴트 ILR 파라미터들은 하나의 플래그에 의해 표시될 수 있다. 이 플래그가 디폴트 ILR 파라미터들이 이용된다고 말할 때, ILR 데이터를 추가로 시그널링할 필요가 없다.
37. 디폴트 ILR 파라미터들은 시그널링되지 않을 때 미리 정의될 수 있다. 예를 들어, 디폴트 ILR 파라미터들은 아이덴티티 맵핑(identity mapping)에 대응할 수 있다.
38. 시간적 계층 정보는 ILR APS에서와 같이 ILR 파라미터들과 함께 시그널링될 수 있다.
a. 일 예에서, 시간적 계층 인덱스는 lmcs_data()에서 시그널링될 수 있다.
b. 일 예에서, 시간적 계층 인덱스 마이너스 1은 lmcs_data()에서 시그널링될 수 있다.
c. 대안적으로, 게다가, 하나의 타일 그룹/타일을 코딩/디코딩할 때, 더 작거나 같은 시간적 계층 인덱스와 연관된 ILR APS들을 참조하는 것이 제한된다.
d. 대안적으로, 하나의 타일 그룹/타일을 코딩/디코딩할 때, 더 작은 시간적 계층 인덱스와 연관된 ILR APS들을 참조하는 것이 제한된다.
e. 대안적으로, 하나의 타일 그룹/타일을 코딩/디코딩할 때, 더 큰 시간적 계층 인덱스와 연관된 ILR APS들을 참조하는 것이 제한된다.
f. 대안적으로, 하나의 타일 그룹/타일을 코딩/디코딩할 때, 더 크거나 같은 시간적 계층 인덱스와 연관된 ILR APS들을 참조하는 것이 제한된다.
g. 대안적으로, 하나의 타일 그룹/타일을 코딩/디코딩할 때, 같은 시간적 계층 인덱스와 연관된 ILR APS들을 참조하는 것이 제한된다.
h. 일 예에서, 위의 제한들이 적용되는지는 디코더에 시그널링되거나 디코더에 의해 추론될 수 있는 정보에 종속할 수 있다.
39. 시간적 계층 정보는 ALF APS에서와 같이 ALF 파라미터들과 함께 시그널링될 수 있다.
a. 일 예에서, 시간적 계층 인덱스는 alf_data()에서 시그널링될 수 있다.
b. 일 예에서, 시간적 계층 인덱스 마이너스 1은 alf_data()에서 시그널링될 수 있다.
c. 대안적으로, 게다가, 하나의 타일 그룹/타일 또는 하나의 타일/타일 그룹 내의 하나의 CTU를 코딩/디코딩할 때, 더 작거나 같은 시간적 계층 인덱스와 연관된 ALF APS들을 참조하는 것이 제한된다.
d. 대안적으로, 하나의 타일 그룹/타일을 코딩/디코딩할 때, 더 작은 시간적 계층 인덱스와 연관된 ALF APS들을 참조하는 것이 제한된다.
e. 대안적으로, 하나의 타일 그룹/타일을 코딩/디코딩할 때, 더 큰 시간적 계층 인덱스와 연관된 ALF APS들을 참조하는 것이 제한된다.
f. 대안적으로, 하나의 타일 그룹/타일을 코딩/디코딩할 때, 더 크거나 같은 시간적 계층 인덱스와 연관된 ALF APS들을 참조하는 것이 제한된다.
g. 대안적으로, 하나의 타일 그룹/타일을 코딩/디코딩할 때, 같은 시간적 계층 인덱스와 연관된 ALF APS들을 참조하는 것이 제한된다.
h. 일 예에서, 위의 제한들이 적용되는지는 디코더에 시그널링되거나 디코더에 의해 추론될 수 있는 정보에 종속할 수 있다.
40. 일 예에서, 원래 샘플들과 재성형된 샘플들 사이의 재성형 맵핑은 양의 관계(positive relationship)가 아닐 수 있는데, 즉, 하나의 더 큰 값이 더 작은 값에 맵핑되도록 허용되지 않는다.
a. 예를 들어, 원래 샘플들과 재성형된 샘플들 사이의 재성형 맵핑은 음의 관계(negative relationship)일 수 있으며, 여기서, 2개의 값에 대해, 원래 도메인에서의 더 큰 하나의 값이 재성형된 도메인에서의 더 작은 값에 맵핑될 수 있다.
41. 적합성 비트스트림에서, 신택스 요소 aps_params_type는 단지 0 및 1과 같은 몇 개의 미리 정의된 값이 되도록 허용된다.
a. 다른 예에서, 그것은 단지 0 및 7인 것이 허용된다.
42. 일 예에서, 디폴트 ILR 정보는 ILR이 적용될 수 있다면(예를 들어, sps_lmcs_enabled_flag가 참이면) 시그널링되어야 한다.
5 개시된 기술의 예시적인 구현들
일부 실시예들에서, tile_group_reshaper_enable_flag는 tile_group_reshaper_model_present_flag가 인에이블될 때 조건부로 존재한다. 추가된 신택스는 이탤릭체로 강조표시된다.
Figure pct00062
대안적으로, tile_group_reshaper_model_present_flag는 tile_group_reshaper_enable_flag가 인에이블될 때 조건부로 존재한다.
Figure pct00063
대안적으로, 2개의 신택스 요소 tile_group_reshaper_model_present_flag 또는 tile_group_reshaper_enable_flag 중 하나만이 시그널링될 수 있다. 시그널링되지 않은 하나는 시그널링될 수 있는 하나와 동일한 것으로 추론된다. 이 경우, 하나의 신택스 요소는 ILR의 사용을 제어한다.
대안적으로, 적합성 비트스트림은 tile_group_reshaper_model_present_flag가 tile_group_reshaper_enable_flag와 동일해야 하는 것을 요구한다.
대안적으로, tile_group_reshaper_model_present_flag 및/또는 tile_group_reshaper_enable_flag 및/또는 tile_group_reshaper_model(), 및/또는 tile_group_reshaper_chroma_residual_scale_flag는 타일 그룹 헤더 대신에 APS에서 시그널링될 수 있다.
JVET-N0805 위의 실시예 #2. 추가된 신택스는 이탤릭체로 강조표시된다.
Figure pct00064
...
sps_lmcs_enabled_flag가 1인 것은 LMCS(luma mapping with chroma scaling)가 CVS(coded video sequence)에서 사용되는 것을 명시한다. sps_lmcs_enabled_flag가 0인 것은 LMCS(luma mapping with chroma scaling)가 CVS에서 사용되지 않는 것을 명시한다.
sps_lmcs_default_model_present_flag가 1인 것은 디폴트 lmcs 데이터가 이 SPS에 존재하는 것을 명시한다. sps_lmcs_default_model_flag가 0인 것은 디폴트 lmcs 데이터가 이 SPS에 존재하지 않는 것을 명시한다. 존재하지 않을 때, sps_lmcs_default_model_present_flag의 값은 0인 것으로 추론된다.
...
Figure pct00065
aps_params_type는 다음의 표에 명시된 바와 같이 APS에서 운반되는 APS 파라미터들의 타입을 명시한다:
Figure pct00066
ALF APS: ALF_APS와 동일한 aps_params_type를 갖는 APS.
LMCS APS: LMCS_APS와 동일한 aps_params_type를 갖는 APS.
다음과 같은 시맨틱스 변경들을 행한다:
...
tile_group_alf_aps_id는 타일 그룹이 참조하는 ALF APS의 adaptation_parameter_set_id를 명시한다. tile_group_alf_aps_id와 동일한 adaptation_parameter_set_id를 갖는 ALF APS NAL 유닛의 TemporalId는 코딩된 타일 그룹 NAL 유닛의 TemporalId보다 작거나 같아야 한다.
동일한 값의 adaptation_parameter_set_id를 갖는 다수의 ALF APS들이 동일한 픽처의 2개 이상의 타일 그룹에 의해 참조될 때, 동일한 값의 adaptation_parameter_set_id를 갖는 다수의 ALF APS들은 동일한 내용을 가질 것이다.
...
tile_group_lmcs_enabled_flag가 1인 것은 LMCS(luma mapping with chroma scaling)가 현재 타일 그룹에 대해 인에이블되는 것을 명시한다. tile_group_lmcs_enabled_flag가 0인 것은 LMCS(luma mapping with chroma scaling)가 현재 타일 그룹에 대해 인에이블되지 않는 것을 명시한다. tile_group_lmcs_enable_flag가 존재하지 않을 때, 그것은 0인 것으로 추론된다.
tile_group_lmcs_use_default_model_flag가 1인 것은 타일 그룹에 대한 LMCS(luma mapping with chroma scaling) 연산이 디폴트 lmcs 모델을 사용하는 것을 명시한다. tile_group_lmcs_use_default_model_flag가 0인 것은 타일 그룹에 대한 LMCS(luma mapping with chroma scaling) 연산이 tile_group_lmcs_aps_id에 의해 참조되는 LMCS APS에서의 lmcs 모델을 사용하는 것을 명시한다. tile_group_reshaper_use_default_model_flag가 존재하지 않을 때, 그것은 0인 것으로 추론된다.
tile_group_lmcs_aps_id는 타일 그룹이 참조하는 LMCS APS의 adaptation_parameter_set_id를 명시한다. tile_group_lmcs_aps_id와 동일한 adaptation_parameter_set_id를 갖는 LMCS APS NAL 유닛의 TemporalId는 코딩된 타일 그룹 NAL 유닛의 TemporalId보다 작거나 같아야 한다.
동일한 값의 adaptation_parameter_set_id를 갖는 다수의 LMCS APS들이 동일한 픽처의 2개 이상의 타일 그룹에 의해 참조될 때, 동일한 값의 adaptation_parameter_set_id를 갖는 다수의 LMCS APS들은 동일한 내용을 가질 것이다.
tile_group_chroma_residual_scale_flag가 1인 것은 크로마 잔차 스케일링이 현재 타일 그룹에 대해 인에이블되는 것을 명시한다. tile_group_chroma_residual_scale_flag가 0인 것은 크로마 잔차 스케일링이 현재 타일 그룹에 대해 인에이블되지 않는 것을 명시한다. tile_group_chroma_residual_scale_flag가 존재하지 않을 때, 그것은 0인 것으로 추론된다.
...
...
LMCS(luma mapping with chroma scaling) 데이터 신택스
Figure pct00067
위에 설명된 예들은 아래에 설명된 방법, 예를 들어, 도 31a 내지 도 39e에 도시된 바와 같은 방법들의 맥락에서 통합될 수 있으며, 이는 비디오 디코더 또는 비디오 인코더에서 구현될 수 있다.
도 31a는 비디오 처리를 위한 예시적인 방법의 흐름도를 도시한다. 방법(3100)은, 단계(3110)에서, 비디오의 현재 비디오 블록과 비디오의 코딩된 표현 사이의 전환을 위해, 제1 도메인 또는 제2 도메인에서의 샘플들에 기초하여 모션 정보 리파인먼트 프로세스를 수행하는 단계를 포함한다. 방법(3100)은, 단계(3120)에서, 모션 정보 리파인먼트 프로세스의 결과에 기초하여 전환을 수행하는 단계를 포함한다. 일부 구현들에서, 전환 동안, 리파인되지 않은 모션 정보를 사용하여 제1 도메인에서의 제1 예측 블록으로부터 현재 비디오 블록에 대한 샘플들이 획득되고, 적어도 제2 예측 블록이 재구성 블록을 결정하는 데 사용되는 리파인된 모션 정보를 사용하여 제2 도메인에서 생성되고, 현재 비디오 블록의 재구성된 샘플들이 적어도 제2 예측 블록에 기초하여 생성된다.
도 31b는 비디오 처리를 위한 예시적인 방법의 흐름도를 도시한다. 방법(3120)은, 단계(3122)에서, 제2 도메인에서의 적어도 하나의 예측 블록에 기초하여, 현재 비디오 블록을 재구성하는 단계를 포함한다. 일부 구현들에서, 전환 동안, 현재 비디오 블록은 제1 도메인 및 제2 도메인에 기초하여 구성되고/되거나 크로마 잔차가 루마 종속적 방식으로 스케일링된다. 일부 구현들에서, 비디오의 비디오 영역에서의 제1 샘플 세트 및 현재 비디오 블록의 참조 픽처에서의 제2 샘플 세트에 적어도 기초하여 도출되는 파라미터들을 사용하여 전환 동안 코딩 툴이 적용된다. 일부 구현들에서, 제1 샘플들에 대한 도메인과 제2 샘플들에 대한 도메인이 정렬된다.
도 32a는 비디오 처리를 위한 예시적인 방법의 흐름도를 도시한다. 방법(3210)은, 단계(3212)에서, 비디오의 현재 비디오 영역의 현재 비디오 블록에 대해, 이전 비디오 영역의 코딩 모드에 대한 하나 이상의 파라미터에 기초하여 현재 비디오 블록의 코딩 모드에 대한 파라미터를 결정하는 단계를 포함한다. 방법(3210)은, 단계(3214)에서, 결정에 기초하여 현재 비디오 블록에 대한 코딩을 수행하여 비디오의 코딩된 표현을 생성하는 단계를 추가로 포함한다. 일부 구현들에서, 코딩 모드에 대한 파라미터는 비디오의 코딩된 표현에서의 파라미터 세트에 포함된다. 일부 구현들에서, 코딩을 수행하는 것은 제1 도메인에서의 현재 비디오 블록의 표현을 제2 도메인에서의 현재 비디오 블록의 표현으로 변환하는 것을 포함한다. 일부 구현들에서, 코딩 모드를 사용하여 코딩을 수행하는 동안, 현재 비디오 블록은 제1 도메인 및 제2 도메인에 기초하여 구성되고/되거나 크로마 잔차가 루마 종속적 방식으로 스케일링된다.
도 32b는 비디오 처리를 위한 예시적인 방법의 흐름도를 도시한다. 방법(3220)은, 단계(3222)에서, 코딩 모드에 대한 파라미터 정보를 포함하는 파라미터 세트를 포함하는 비디오의 코딩된 표현을 수신하는 단계를 포함한다. 방법(3220)은, 단계(3224)에서, 파라미터 정보를 사용하여 코딩된 표현의 디코딩을 수행하여 코딩된 표현으로부터 비디오의 현재 비디오 영역의 현재 비디오 블록을 생성하는 단계를 추가로 포함한다. 일부 구현들에서, 코딩 모드에 대한 파라미터 정보는 이전 비디오 영역의 코딩 모드에 대한 하나 이상의 파라미터에 기초한다. 일부 구현들에서, 코딩 모드에서, 현재 비디오 블록은 제1 도메인 및 제2 도메인에 기초하여 구성되고/되거나 크로마 잔차가 루마 종속적 방식으로 스케일링된다.
도 32c는 비디오 처리를 위한 예시적인 방법의 흐름도를 도시한다. 방법(3230)은, 단계(3232)에서, 비디오의 현재 비디오 블록과 비디오의 코딩된 표현 사이의 전환을 수행하는 단계를 포함한다. 일부 구현들에서, 전환은 제1 도메인 또는 제1 도메인과 상이한 제2 도메인 내의 예측 블록에 필터링 연산을 적용하는 것을 포함한다.
도 32d는 비디오 처리를 위한 예시적인 방법의 흐름도를 도시한다. 방법(3240)은, 단계(3242)에서, 비디오의 현재 비디오 블록과 비디오의 코딩된 표현 사이의 전환을 수행하는 단계를 포함한다. 일부 구현들에서, 전환 동안, 현재 비디오 블록에 대해 최종 재구성 블록이 결정된다. 일부 구현들에서, 예측 방법을 사용하여 임시 재구성 블록이 생성되고 제2 도메인에서 표현된다.
도 33은 비디오 처리를 위한 예시적인 방법의 흐름도를 도시한다. 방법(3300)은, 단계(3302)에서, 비디오의 비디오 영역의 현재 비디오 블록과 비디오의 코딩된 표현 사이의 전환을 수행하는 단계를 포함하고, 전환은 현재 비디오 블록이 제1 도메인 및 제2 도메인에 기초하여 구성되고/되거나 크로마 잔차가 루마 종속적 방식으로 스케일링되는 코딩 모드를 사용하고, 코딩된 표현에서의 파라미터 세트는 코딩 모드에 대한 파라미터 정보를 포함한다.
도 34a는 비디오 처리를 위한 예시적인 방법의 흐름도를 도시한다. 방법(3410)은, 단계(3412)에서, 크로마 블록인 비디오의 현재 비디오 블록과 비디오의 코딩된 표현 사이의 전환을 수행하는 단계를 포함하고, 전환 동안, 현재 비디오 블록은 제1 도메인 및 제2 도메인에 기초하여 구성되며, 전환은 현재 비디오 블록의 하나 이상의 크로마 성분에 순방향 재성형 프로세스(forward reshaping process) 및/또는 역 재성형 프로세스(inverse reshaping process)를 적용하는 것을 추가로 포함한다.
도 34b는 비디오 처리를 위한 예시적인 방법의 흐름도를 도시한다. 방법(3420)은, 단계(3422)에서, 비디오의 현재 비디오 크로마 블록과 비디오의 코딩된 표현 사이의 전환을 수행하는 단계를 포함하고, 전환을 수행하는 것은: 규칙에 기초하여 루마 종속적 크로마 잔차 스케일링(LCRS)이 인에이블 또는 디스에이블되는지를 결정하는 것, 및 결정에 기초하여 현재 비디오 크로마 블록을 재구성하는 것을 포함한다.
도 35a는 비디오 처리를 위한 예시적인 방법의 흐름도를 도시한다. 방법(3510)은, 단계(3512)에서, 비디오의 현재 비디오 블록과 비디오의 코딩된 표현 사이의 전환을 위해, 현재 비디오 블록의 하나 이상의 계수 값에 기초하여 코딩 모드의 사용을 디스에이블할지를 결정하는 단계를 포함한다. 방법(3510)은, 단계(3514)에서, 결정에 기초하여 전환을 수행하는 단계를 추가로 포함한다. 일부 구현들에서, 코딩 모드를 사용하는 전환 동안, 현재 비디오 블록은 제1 도메인 및 제2 도메인에 기초하여 구성되고/되거나 크로마 잔차가 루마 종속적 방식으로 스케일링된다.
도 35b는 비디오 처리를 위한 예시적인 방법의 흐름도를 도시한다. 방법(3520)은, 단계(3522)에서, 비디오의 가상 파이프라인 데이터 유닛(VPDU)을 초과하는 비디오의 현재 비디오 블록 사이의 전환을 위해, 현재 비디오 블록을 영역들로 분할하는 단계를 포함한다. 방법(3520)은, 단계(3524)에서, 각각의 영역에 개별적으로 코딩 모드를 적용함으로써 전환을 수행하는 단계를 추가로 포함한다. 일부 구현들에서, 코딩 모드를 적용하는 것에 의한 전환 동안, 현재 비디오 블록은 제1 도메인 및 제2 도메인에 기초하여 구성되고/되거나 크로마 잔차가 루마 종속적 방식으로 스케일링된다.
도 35c는 비디오 처리를 위한 예시적인 방법의 흐름도를 도시한다. 방법(3530)은, 단계(3532)에서, 비디오의 현재 비디오 블록과 비디오의 코딩된 표현 사이의 전환을 위해, 현재 비디오 블록의 크기 또는 컬러 포맷에 기초하여 코딩 모드의 사용을 디스에이블할지를 결정하는 단계를 포함한다. 방법(3530)은, 단계(3534)에서, 결정에 기초하여 전환을 수행하는 단계를 추가로 포함한다. 일부 구현들에서, 코딩 모드를 사용하는 전환 동안, 현재 비디오 블록은 제1 도메인 및 제2 도메인에 기초하여 구성되고/되거나 크로마 잔차가 루마 종속적 방식으로 스케일링된다.
도 35d는 비디오 처리를 위한 예시적인 방법의 흐름도를 도시한다. 방법(3540)은, 단계(3542)에서, 비디오의 현재 비디오 블록과 비디오의 코딩된 표현 사이의 전환을 수행하는 단계를 포함하고, 전환은 현재 비디오 블록이 제1 도메인 및 제2 도메인에 기초하여 구성되고/되거나 크로마 잔차가 루마 종속적 방식으로 스케일링되는 코딩 모드를 사용하고, 코딩된 표현에서의 적어도 하나의 신택스 요소는 코딩 모드의 사용의 표시 및 재성형기 모델의 표시를 제공한다.
도 35e는 비디오 처리를 위한 예시적인 방법의 흐름도를 도시한다. 방법(3550)은, 단계(3552)에서, 비디오의 현재 비디오 블록과 비디오의 코딩된 표현 사이의 전환을 위해 코딩 모드가 디스에이블된다고 결정하는 단계를 포함한다. 방법(3550)은, 단계(3554)에서, 결정에 기초하여 순방향 재성형 및/또는 역 재성형을 조건부로 스킵하는 단계를 추가로 포함한다. 일부 구현들에서, 코딩 모드에서, 현재 비디오 블록은 제1 도메인 및 제2 도메인에 기초하여 구성되고/되거나 크로마 잔차가 루마 종속적 방식으로 스케일링된다.
도 35f는 비디오 처리를 위한 예시적인 방법의 흐름도를 도시한다. 방법(3560)은, 단계(3562)에서, 비디오의 비디오 영역의 현재 비디오 블록과 비디오의 코딩된 표현 사이의 전환을 수행하는 단계를 포함하고, 전환은 현재 비디오 블록이 제1 도메인 및 제2 도메인에 기초하여 구성되고/되거나 크로마 잔차가 루마 종속적 방식으로 스케일링되는 코딩 모드를 사용하고, 비디오 영역에 대해 재성형 모드에서 다중 순방향 재성형 및/또는 다중 역 재성형이 적용된다.
도 36a는 비디오 처리를 위한 예시적인 방법의 흐름도를 도시한다. 방법(3610)은, 단계(3612)에서, 비디오의 현재 비디오 블록과 비디오의 코딩된 표현 사이의 전환을 위해 코딩 모드가 인에이블된다고 결정을 행하는 단계를 포함한다. 방법(3610)은, 단계(3614)에서, 팔레트 모드를 사용하여 전환을 수행하는 단계를 추가로 포함하고, 적어도 대표 샘플 값들의 팔레트가 현재 비디오 블록에 대해 사용된다. 일부 구현들에서, 코딩 모드에서, 현재 비디오 블록은 제1 도메인 및 제2 도메인에서의 샘플들에 기초하여 구성되고/되거나 크로마 잔차가 루마 종속적 방식으로 스케일링된다.
도 36b는 비디오 처리를 위한 예시적인 방법의 흐름도를 도시한다. 방법(3620)은, 단계(3622)에서, 비디오의 현재 비디오 블록과 비디오의 코딩된 표현 사이의 전환을 위해, 현재 비디오 블록이 적어도 대표 샘플 값들의 팔레트가 현재 비디오 블록을 코딩하기 위해 사용되는 팔레트 모드에서 코딩된다고 결정을 행하는 단계를 포함한다. 방법(3620)은, 단계(2624)에서, 결정으로 인해, 코딩 모드를 디스에이블함으로써 전환을 수행하는 단계를 추가로 포함한다. 일부 구현들에서, 코딩 모드가 비디오 블록에 적용될 때, 비디오 블록은 루마 종속적 방식으로 스케일링되는 크로마 잔차에 기초하여 구성된다.
도 36c는 비디오 처리를 위한 예시적인 방법의 흐름도를 도시한다. 방법(3630)은, 단계(3632)에서, 비디오의 제1 비디오 블록과 비디오의 코딩된 표현 사이의 전환을 수행하는 단계를 포함하고, 전환은 제1 코딩 모드, 및 적어도 대표 픽셀 값들의 팔레트가 현재 비디오 블록을 코딩하기 위해 사용되는 팔레트 코딩 모드를 사용한다. 방법(3630)은, 단계(3634)에서, 팔레트 코딩 모드를 사용하지 않고 코딩되는 비디오의 제2 비디오 블록과 비디오의 코딩된 표현 사이의 전환을 수행하는 단계를 추가로 포함하고, 제2 비디오 블록의 전환은 제1 코딩 모드를 사용한다. 제1 코딩 모드가 비디오 블록에 적용될 때, 비디오 블록은 제1 도메인 및 제2 도메인에 기초하여 구성되고/되거나 크로마 잔차가 루마 종속적 방식으로 스케일링된다. 일부 구현들에서, 제1 코딩 모드는 제1 비디오 블록 및 제2 비디오 블록에 상이한 방식들로 적용된다.
도 37a는 비디오 처리를 위한 예시적인 방법의 흐름도를 도시한다. 방법(3710)은, 단계(3712)에서, 비디오의 현재 비디오 블록과 비디오의 코딩된 표현 사이의 전환을 위해 코딩 모드가 인에이블된다고 결정을 행하는 단계를 포함한다. 방법(3710)은, 단계(3714)에서, 현재 비디오 블록을 포함하는 픽처를 가리키는 적어도 블록 벡터를 사용하여 예측 블록을 생성하는 인트라 블록 카피 모드를 사용하여 전환을 수행하는 단계를 추가로 포함한다. 코딩 모드에서, 현재 비디오 블록은 제1 도메인 및 제2 도메인에서의 샘플들에 기초하여 구성되고/되거나 크로마 잔차가 루마 종속적 방식으로 스케일링된다.
도 37b는 비디오 처리를 위한 예시적인 방법의 흐름도를 도시한다. 방법(3720)은, 단계(3722)에서, 비디오의 현재 비디오 블록과 비디오의 코딩된 표현 사이의 전환을 위해, 현재 비디오 블록을 코딩하기 위해 현재 비디오 블록을 포함하는 비디오 프레임을 가리키는 적어도 블록 벡터를 사용하여 예측 블록을 생성하는 인트라 블록 카피(IBC) 모드에서 현재 비디오 블록이 코딩된다고 결정을 행하는 단계를 포함한다. 방법(3720)은, 단계(3724)에서, 결정으로 인해, 코딩 모드를 디스에이블함으로써 전환을 수행하는 단계를 추가로 포함한다. 코딩 모드가 비디오 블록에 적용될 때, 비디오 블록은 제1 도메인 및 제2 도메인에 기초하여 구성되고/되거나 크로마 잔차가 루마 종속적 방식으로 스케일링된다.
도 37c는 비디오 처리를 위한 예시적인 방법의 흐름도를 도시한다. 방법(3730)은, 단계(3732)에서, 비디오의 제1 비디오 블록과 비디오의 코딩된 표현 사이의 전환을 수행하는 단계를 포함하고, 전환은 현재 비디오 블록을 포함하는 비디오 프레임을 가리키는 적어도 블록 벡터를 사용하여 예측 블록을 생성하는 인트라 블록 카피 모드 및 제1 코딩 모드를 사용한다. 방법(3730)은, 단계(3734)에서, 인트라 블록 카피 모드를 사용하지 않고 코딩되는 비디오의 제2 비디오 블록과 비디오의 코딩된 표현 사이의 전환을 수행하는 단계를 추가로 포함하고, 제2 비디오 블록의 전환은 제1 코딩 모드를 사용한다. 제1 코딩 모드가 비디오 블록에 적용될 때, 비디오 블록은 제1 도메인 및 제2 도메인에 기초하여 구성되고/되거나 크로마 잔차가 루마 종속적 방식으로 스케일링되고, 제1 코딩 모드는 제1 비디오 블록 및 제2 비디오 블록에 상이한 방식들로 적용된다.
도 38a는 비디오 처리를 위한 예시적인 방법의 흐름도를 도시한다. 방법(3810)은, 단계(3812)에서, 비디오의 현재 비디오 블록과 비디오의 코딩된 표현 사이의 전환을 위해 코딩 모드가 인에이블된다고 결정을 행하는 단계를 포함한다. 방법(3810)은, 단계(3814)에서, 블록 기반 델타 펄스 코드 변조(BDPCM) 모드를 사용하여 전환을 수행하는 단계를 추가로 포함한다. 코딩 모드에서, 현재 비디오 블록은 제1 도메인 및 제2 도메인에서의 샘플들에 기초하여 구성되고/되거나 크로마 잔차가 루마 종속적 방식으로 스케일링된다.
도 38b는 비디오 처리를 위한 예시적인 방법의 흐름도를 도시한다. 방법(3820)은, 단계(3822)에서, 비디오의 현재 비디오 블록과 비디오의 코딩된 표현 사이의 전환을 위해, 현재 비디오 블록이 블록 기반 델타 펄스 코드 변조(BDPCM) 모드를 사용하여 코딩된다고 결정을 행하는 단계를 포함한다. 방법(3820)은, 단계(3824)에서, 결정으로 인해, 코딩 모드를 디스에이블함으로써 전환을 수행하는 단계를 추가로 포함한다. 코딩 모드가 비디오 블록에 적용될 때, 비디오 블록은 제1 도메인 및 제2 도메인에 기초하여 구성되고/되거나 크로마 잔차가 루마 종속적 방식으로 스케일링된다.
도 38c는 비디오 처리를 위한 예시적인 방법의 흐름도를 도시한다. 방법(3830)은, 단계(3832)에서, 비디오의 제1 비디오 블록과 비디오의 코딩된 표현 사이의 전환을 수행하는 단계를 포함하고, 제1 비디오 블록의 전환은 제1 코딩 모드 및 블록 기반 델타 펄스 코드 변조(BDPCM) 모드를 사용한다. 방법(3830)은, 단계(3834)에서, 비디오의 제2 비디오 블록과 비디오의 코딩된 표현 사이의 전환을 수행하는 단계를 추가로 포함하고, 제2 비디오 블록은 BDPCM 모드를 사용하지 않고 코딩되고, 제2 비디오 블록의 전환은 제1 코딩 모드를 사용한다. 제1 코딩 모드가 비디오 블록에 적용될 때, 비디오 블록은 제1 도메인 및 제2 도메인에 기초하여 구성되고/되거나 크로마 잔차가 루마 종속적 방식으로 스케일링되고, 제1 코딩 모드는 제1 비디오 블록 및 제2 비디오 블록에 상이한 방식들로 적용된다.
도 38d는 비디오 처리를 위한 예시적인 방법의 흐름도를 도시한다. 방법(3840)은, 단계(3842)에서, 비디오의 현재 비디오 블록과 비디오의 코딩된 표현 사이의 전환을 위해 코딩 모드가 인에이블된다고 결정을 행하는 단계를 포함한다. 방법은, 단계(3844)에서, 현재 비디오 블록을 코딩하는데 있어서 예측 잔차에 대한 변환이 스킵되는 변환 스킵 모드를 사용하여 전환을 수행하는 단계를 추가로 포함한다. 코딩 모드에서, 현재 비디오 블록은 제1 도메인 및 제2 도메인에서의 샘플들에 기초하여 구성되고/되거나 크로마 잔차가 루마 종속적 방식으로 스케일링된다.
도 38e는 비디오 처리를 위한 예시적인 방법의 흐름도를 도시한다. 방법(3850)은, 단계(3852)에서, 비디오의 현재 비디오 블록과 비디오의 코딩된 표현 사이의 전환을 위해, 현재 비디오 블록을 코딩하는데 있어서 예측 잔차에 대한 변환이 스킵되는 변환 스킵 모드에서 현재 비디오 블록이 코딩된다고 결정을 행하는 단계를 포함한다. 방법(3850)은, 단계(3854)에서, 결정으로 인해, 코딩 모드를 디스에이블함으로써 전환을 수행하는 단계를 추가로 포함한다. 코딩 모드가 비디오 블록에 적용될 때, 비디오 블록은 제1 도메인 및 제2 도메인에 기초하여 구성되고/되거나 크로마 잔차가 루마 종속적 방식으로 스케일링된다.
도 38f는 비디오 처리를 위한 예시적인 방법의 흐름도를 도시한다. 방법(3860)은, 단계(3862)에서, 비디오의 제1 비디오 블록과 비디오의 코딩된 표현 사이의 전환을 수행하는 단계를 포함하고, 제1 비디오 블록의 전환은 제1 코딩 모드 및 현재 비디오 블록을 코딩하는데 있어서 예측 잔차에 대한 변환이 스킵되는 변환 스킵 모드를 사용한다. 방법(3860)은, 단계(3864)에서, 비디오의 제2 비디오 블록과 비디오의 코딩된 표현 사이의 전환을 수행하는 단계를 추가로 포함하고, 제2 비디오 블록은 변환 스킵 모드를 사용하지 않고 코딩되고, 제2 비디오 블록의 전환은 제1 코딩 모드를 사용한다. 제1 코딩 모드가 비디오 블록에 적용될 때, 비디오 블록은 제1 도메인 및 제2 도메인에 기초하여 구성되고/되거나 크로마 잔차가 루마 종속적 방식으로 스케일링되고, 제1 코딩 모드는 제1 비디오 블록 및 제2 비디오 블록에 상이한 방식들로 적용된다.
도 38g는 비디오 처리를 위한 예시적인 방법의 흐름도를 도시한다. 방법(3870)은, 단계(3872)에서, 비디오의 현재 비디오 블록과 비디오의 코딩된 표현 사이의 전환을 위해 코딩 모드가 인에이블된다고 결정을 행하는 단계를 포함한다. 방법(3870)은, 단계(3874)에서, 현재 비디오 블록이 변환 및 변환-도메인 양자화를 적용하지 않고 코딩되는 인트라 펄스 코드 변조 모드를 사용하여 전환을 수행하는 단계를 추가로 포함한다. 코딩 모드에서, 현재 비디오 블록은 제1 도메인 및 제2 도메인에서의 샘플들에 기초하여 구성되고/되거나 크로마 잔차가 루마 종속적 방식으로 스케일링된다.
도 38h는 비디오 처리를 위한 예시적인 방법의 흐름도를 도시한다. 방법(3880)은, 단계(3882)에서, 비디오의 현재 비디오 블록과 비디오의 코딩된 표현 사이의 전환을 위해, 현재 비디오 블록이 변환 및 변환-도메인 양자화를 적용하지 않고 코딩되는 인트라 펄스 코드 변조 모드에서 현재 비디오 블록이 코딩된다고 결정을 행하는 단계를 포함한다. 방법(3880)은, 단계(3884)에서, 결정으로 인해, 코딩 모드를 디스에이블함으로써 전환을 수행하는 단계를 추가로 포함한다. 코딩 모드가 비디오 블록에 적용될 때, 비디오 블록은 제1 도메인 및 제2 도메인에 기초하여 구성되고/되거나 크로마 잔차가 루마 종속적 방식으로 스케일링된다.
도 38i는 비디오 처리를 위한 예시적인 방법의 흐름도를 도시한다. 방법(3890)은, 단계(3892)에서, 비디오의 제1 비디오 블록과 비디오의 코딩된 표현 사이의 전환을 수행하는 단계를 포함하고, 제1 비디오 블록의 전환은 제1 코딩 모드 및 현재 비디오 블록이 변환 및 변환-도메인 양자화를 적용하지 않고 코딩되는 인트라 펄스 코드 변조 모드를 사용한다. 방법(3890)은, 단계(3894)에서, 비디오의 제2 비디오 블록과 비디오의 코딩된 표현 사이의 전환을 수행하는 단계를 추가로 포함하고, 제2 비디오 블록은 인트라 펄스 코드 변조 모드를 사용하지 않고 코딩되고, 제2 비디오 블록의 전환은 제1 코딩 모드를 사용한다. 제1 코딩 모드가 비디오 블록에 적용될 때, 비디오 블록은 제1 도메인 및 제2 도메인에 기초하여 구성되고/되거나 크로마 잔차가 루마 종속적 방식으로 스케일링되고, 제1 코딩 모드는 제1 비디오 블록 및 제2 비디오 블록에 상이한 방식들로 적용된다.
도 38j는 비디오 처리를 위한 예시적인 방법의 흐름도를 도시한다. 방법(3910)은, 단계(3912)에서, 비디오의 현재 비디오 블록과 비디오의 코딩된 표현 사이의 전환을 위해 코딩 모드가 인에이블된다고 결정을 행하는 단계를 포함한다. 방법(3910)은, 단계(3914)에서, 현재 비디오 블록이 변환 및 양자화 없이 무손실 코딩되는 수정된 트랜스퀀트-바이패스 모드를 사용하여 전환을 수행하는 단계를 추가로 포함한다. 코딩 모드에서, 현재 비디오 블록은 제1 도메인 및 제2 도메인에서의 샘플들에 기초하여 구성되고/되거나 크로마 잔차가 루마 종속적 방식으로 스케일링된다.
도 38k는 비디오 처리를 위한 예시적인 방법의 흐름도를 도시한다. 방법(3920)은, 단계(3922)에서, 비디오의 현재 비디오 블록과 비디오의 코딩된 표현 사이의 전환을 위해, 현재 비디오 블록이 변환 및 양자화 없이 무손실 코딩되는 트랜스퀀트-바이패스 모드에서 현재 비디오 블록이 코딩된다고 결정을 행하는 단계를 포함한다. 방법(3920)은, 단계(3924)에서, 결정으로 인해, 코딩 모드를 디스에이블함으로써 전환을 수행하는 단계를 추가로 포함한다. 코딩 모드가 비디오 블록에 적용될 때, 비디오 블록은 제1 도메인 및 제2 도메인에 기초하여 구성되고/되거나 크로마 잔차가 루마 종속적 방식으로 스케일링된다.
도 38l은 비디오 처리를 위한 예시적인 방법의 흐름도를 도시한다. 방법(3930)은, 단계(3932)에서, 비디오의 제1 비디오 블록과 비디오의 코딩된 표현 사이의 전환을 수행하는 단계를 포함하고, 제1 비디오 블록의 전환은 제1 코딩 모드 및 현재 비디오 블록이 변환 및 양자화 없이 무손실 코딩되는 트랜스퀀트-바이패스 모드를 사용한다. 방법(3930)은, 단계(3934)에서, 비디오의 제2 비디오 블록과 비디오의 코딩된 표현 사이의 전환을 수행하는 단계를 추가로 포함하고, 제2 비디오 블록은 트랜스퀀트-바이패스 모드를 사용하지 않고 코딩되고, 제2 비디오 블록의 전환은 제1 코딩 모드를 사용한다. 제1 코딩 모드가 비디오 블록에 적용될 때, 비디오 블록은 제1 도메인 및 제2 도메인에 기초하여 구성되고/되거나 크로마 잔차가 루마 종속적 방식으로 스케일링되고, 제1 코딩 모드는 제1 비디오 블록 및 제2 비디오 블록에 상이한 방식들로 적용된다.
도 39a는 비디오 처리를 위한 예시적인 방법의 흐름도를 도시한다. 방법(3940)은, 단계(3942)에서, 비디오의 현재 비디오 블록과 비디오의 코딩된 표현 사이의 전환을 수행하는 단계를 포함하고, 전환은 현재 비디오 블록이 제1 도메인 및 제2 도메인에 기초하여 구성되고/되거나 크로마 잔차가 루마 종속적 방식으로 스케일링되는 코딩 모드를 사용하고, 코딩 모드에 사용되는 정보는 시퀀스 파라미터 세트(sequence parameter set, SPS), 비디오 파라미터 세트(video parameter set, VPS), 픽처 파라미터 세트(picture parameter set, PPS), 또는 적응적 루프 필터링(adaptive loop filtering, ALF) 파라미터들을 운반하는 데 사용되는 적응 파라미터 세트(adaptation parameter set, APS)와 상이한 파라미터 세트에서 시그널링된다.
도 39b는 비디오 처리를 위한 예시적인 방법의 흐름도를 도시한다. 방법(3950)은, 단계(3952)에서, 비디오의 현재 비디오 블록과 비디오의 코딩된 표현 사이의 전환을 수행하는 단계를 포함하고, 전환은 현재 비디오 블록이 제1 도메인 및 제2 도메인에 기초하여 구성되고/되거나 크로마 잔차가 루마 종속적 방식으로 스케일링되는 코딩 모드를 사용하고, 코딩 모드에 사용되는 정보는 적응적 루프 필터링(ALF) 정보와 함께 적응 파라미터 세트(APS)에서 시그널링되고, 코딩 모드에 사용되는 정보와 ALF 정보는 하나의 NAL 유닛에 포함된다.
도 39c는 비디오 처리를 위한 예시적인 방법의 흐름도를 도시한다. 방법(3960)은, 단계(3962)에서, 비디오의 비디오 영역의 현재 비디오 블록과 비디오의 코딩된 표현 사이의 전환을 수행하는 단계를 포함하고, 전환은 현재 비디오 블록이 제1 도메인 및 제2 도메인에 기초하여 구성되고/되거나 크로마 잔차가 루마 종속적 방식으로 스케일링되는 코딩 모드를 사용하고, 코딩 모드에 사용되는 정보는 적응적 루프 필터링(ALF) 정보를 시그널링하는 데 사용되는 제2 타입의 적응 파라미터 세트(APS)와 상이한 제1 타입의 APS에서 시그널링된다.
도 39d는 비디오 처리를 위한 예시적인 방법의 흐름도를 도시한다. 방법(3970)은, 단계(3972)에서, 비디오의 비디오 영역의 현재 비디오 블록과 비디오의 코딩된 표현 사이의 전환을 수행하는 단계를 포함하고, 전환은 현재 비디오 블록이 제1 도메인 및 제2 도메인에 기초하여 구성되고/되거나 크로마 잔차가 루마 종속적 방식으로 스케일링되는 코딩 모드를 사용하고, 비디오 영역은 적응 파라미터 세트 또는 비디오를 처리하는 데 사용되는 지정된 타입의 데이터 구조 이전에 시그널링되는 파라미터 세트를 참조하는 것이 허용되지 않고, 지정된 타입의 데이터 구조는 비디오 영역 이전에 시그널링된다.
도 39e는 비디오 처리를 위한 예시적인 방법의 흐름도를 도시한다. 방법(3980)은, 단계(3982)에서, 비디오의 현재 비디오 블록과 비디오의 코딩된 표현 사이의 전환을 수행하는 단계를 포함하고, 전환은 현재 비디오 블록이 제1 도메인 및 제2 도메인에 기초하여 구성되고/되거나 크로마 잔차가 루마 종속적 방식으로 스케일링되는 코딩 모드를 사용하고, 비디오를 처리하는 데 사용되는 파라미터들을 포함하는 파라미터 세트의 신택스 요소는 적합성 비트스트림(conformance bitstream) 내에 미리 정의된 값들을 갖는다.
도 40a는 비디오 처리 장치(4000)의 블록도이다. 장치(4000)는 본 명세서에 설명된 방법들 중 하나 이상을 구현하는 데 사용될 수 있다. 장치(4000)는 스마트폰, 태블릿, 컴퓨터, 사물 인터넷(IoT) 수신기 등으로 구체화될 수 있다. 장치(4000)는 하나 이상의 프로세서(4002), 하나 이상의 메모리(4004) 및 비디오 처리 하드웨어(4006)를 포함할 수 있다. 프로세서(들)(4002)는 본 문서에 설명된 하나 이상의 방법(도 31a 내지 도 39e에 도시된 바와 같은 방법들을 포함하지만 이에 제한되지 않음)을 구현하도록 구성될 수 있다. 메모리(메모리들)(4004)는 본 명세서에 설명된 방법들 및 기법들을 구현하는 데 사용되는 데이터 및 코드를 저장하는 데 사용될 수 있다. 비디오 처리 하드웨어(4006)는 본 문서에 설명된 일부 기법들을 하드웨어 회로부에 구현하는 데 사용될 수 있다.
도 40b는 개시된 기법들이 구현될 수 있는 비디오 처리 시스템의 블록도의 또 다른 예이다. 도 40b는 본 명세서에 개시된 다양한 기법들이 구현될 수 있는 예시적인 비디오 처리 시스템(4100)을 도시하는 블록도이다. 다양한 구현들은 시스템(4100)의 컴포넌트들의 일부 또는 전부를 포함할 수 있다. 시스템(4100)은 비디오 콘텐츠를 수신하기 위한 입력(4102)을 포함할 수 있다. 비디오 콘텐츠는 미가공(raw) 또는 압축되지 않은 포맷, 예를 들어, 8 또는 10 비트 멀티-컴포넌트 픽셀 값들로 수신될 수 있거나, 압축된 또는 인코딩된 포맷일 수 있다. 입력(4102)은 네트워크 인터페이스, 주변 버스 인터페이스, 또는 저장 인터페이스를 나타낼 수 있다. 네트워크 인터페이스의 예들은 이더넷, PON(passive optical network) 등과 같은 유선 인터페이스들 및 Wi-Fi 또는 셀룰러 인터페이스들과 같은 무선 인터페이스들을 포함한다.
시스템(4100)은 본 문서에 설명된 다양한 코딩 또는 인코딩 방법들을 구현할 수 있는 코딩 컴포넌트(4104)를 포함할 수 있다. 코딩 컴포넌트(4104)는 비디오의 코딩된 표현을 생성하기 위해 입력(4102)으로부터 코딩 컴포넌트(4104)의 출력으로의 비디오의 평균 비트레이트를 감소시킬 수 있다. 따라서, 코딩 기법들은 때때로 비디오 압축 또는 비디오 트랜스코딩 기법들이라고 한다. 코딩 컴포넌트(4104)의 출력은 저장될 수 있거나, 또는 컴포넌트(4106)로 나타낸 바와 같이 연결된 통신을 통해 송신될 수 있다. 입력(4102)에서 수신된 비디오의 저장된 또는 통신된 비트스트림(또는 코딩된) 표현은 디스플레이 인터페이스(4110)에 전송되는 픽셀 값들 또는 디스플레이가능한 비디오를 생성하기 위해 컴포넌트(4108)에 의해 사용될 수 있다. 비트스트림 표현으로부터 사용자-시청가능 비디오를 생성하는 프로세스는 때때로 비디오 압축해제(video decompression)라고 한다. 게다가, 특정 비디오 처리 연산들이 "코딩" 연산들 또는 툴들로 지칭되지만, 코딩 툴들 또는 연산들이 인코더에서 사용되고 코딩의 결과들을 반대로 하는 대응하는 디코딩 툴들 또는 연산들이 디코더에 의해 수행될 것이라는 점이 이해될 것이다.
주변 버스 인터페이스 또는 디스플레이 인터페이스의 예들은 USB(universal serial bus) 또는 HDMI(high definition multimedia interface) 또는 디스플레이포트(Displayport) 등을 포함할 수 있다. 저장 인터페이스들의 예들은 SATA(serial advanced technology attachment), PCI, IDE 인터페이스 등을 포함한다. 본 문서에 설명된 기법들은 디지털 데이터 처리 및/또는 비디오 디스플레이를 수행할 수 있는 모바일 전화, 랩톱, 스마트폰 또는 다른 디바이스와 같은 다양한 전자 디바이스에서 구현될 수 있다.
일부 실시예들에서, 비디오 코딩 방법들은 도 40a 또는 도 40b와 관련하여 설명된 바와 같이 하드웨어 플랫폼 상에 구현되는 장치를 사용하여 구현될 수 있다.
다양한 기법들 및 실시예들은 다음과 같은 조항-기반 포맷을 사용하여 설명될 수 있다.
제1 조항 세트는, 예를 들어, 예 1 및 예 2를 포함하는, 이전 섹션에 열거된 개시된 기법들의 특정 특징들 및 양태들을 설명한다.
1. 비디오 처리 방법으로서, 비디오의 현재 비디오 블록과 상기 비디오의 코딩된 표현 사이의 전환을 위해, 제1 도메인 또는 제2 도메인에서의 샘플들에 기초하여 모션 정보 리파인먼트 프로세스를 수행하는 단계; 및 상기 모션 정보 리파인먼트 프로세스의 결과에 기초하여 상기 전환을 수행하는 단계를 포함하고, 상기 전환 동안, 리파인되지 않은 모션 정보를 사용하여 상기 제1 도메인에서의 제1 예측 블록으로부터 상기 현재 비디오 블록에 대한 샘플들이 획득되고, 적어도 제2 예측 블록이 재구성 블록을 결정하는 데 사용되는 리파인된 모션 정보를 사용하여 상기 제2 도메인에서 생성되고, 상기 현재 비디오 블록의 재구성된 샘플들이 상기 적어도 제2 예측 블록에 기초하여 생성되는, 방법.
2. 조항 1에 있어서, 상기 적어도 제2 예측 블록은 상기 리파인된 모션 정보를 사용하여 상기 제1 도메인에서의 참조 픽처들에서의 샘플들로부터 생성되고, 상기 제1 도메인을 상기 제2 도메인으로 전환하기 위한 재성형 프로세스가 상기 적어도 제2 예측 블록에 추가로 적용되는, 방법.
3. 조항 2에 있어서, 상기 재성형 프로세스 후에, 상기 제2 예측 블록은 상기 현재 비디오 블록의 상기 재구성된 샘플들을 생성하는 데 사용되기 전에 상기 제2 도메인에서의 상기 표현으로 전환되는, 방법.
4. 조항 1에 있어서, 상기 모션 정보 리파인먼트 프로세스를 수행하는 것은 디코더측 모션 벡터 도출(decoder-side motion vector derivation, DMVD) 방법에 기초하는, 방법.
5. 조항 4에 있어서, 상기 DMVD 방법은 DMVR(decoder-side motion vector refinement) 또는 FRUC(frame-rate up conversion) 또는 BIO(Bi-Directional Optical Flow)를 포함하는, 방법.
6. 조항 4에 있어서, 상기 DMVD 프로세스에서의 비용 계산 또는 기울기 계산은 상기 제1 도메인에서의 샘플들에 기초하여 수행되는, 방법.
7. 조항 6에 있어서, 상기 비용 계산은 SAD(sum of absolute differences) 또는 MR-SAD(mean-removed sum of absolute differences)를 포함하는, 방법.
8. 조항 1에 있어서, 상기 모션 정보 리파인먼트 프로세스는 상기 제1 도메인에서의 적어도 상기 제1 예측 블록에서의 샘플들로부터 상기 제2 도메인으로 전환되는 샘플들에 기초하여 수행되고, 상기 리파인된 모션 정보가 획득된 후에, 상기 현재 비디오 블록이 제1 도메인 및 제2 도메인에 기초하여 구성되고/되거나 크로마 잔차가 루마 종속적 방식으로 스케일링되는 코딩 모드가 적어도 상기 제2 예측 블록에 대해 디스에이블되는, 방법.
9. 조항 4에 있어서, 상기 모션 정보 리파인먼트 프로세스는 상기 제1 도메인에서의 적어도 상기 제1 예측 블록에 기초하여 수행되고, 상기 모션 정보 리파인먼트 프로세스는 상기 제1 도메인에서의 상기 제1 예측 블록으로 호출되는, 방법.
10. 조항 1에 있어서, 2개의 제2 예측 블록의 가중 평균으로서 최종 예측 블록이 생성되고, 상기 현재 비디오 블록의 재구성된 샘플들은 상기 최종 예측 블록에 기초하여 생성되는, 방법.
11. 조항 1에 있어서, 상기 모션 정보 리파인먼트 프로세스는 상기 제1 도메인에서의 상기 예측 블록에 기초하여 수행되고, 상기 모션 정보 리파인먼트 프로세스의 수행 후에, 상기 현재 비디오 블록이 제1 도메인 및 제2 도메인에 기초하여 구성되고/되거나 크로마 잔차가 루마 종속적 방식으로 스케일링되는 코딩 모드가 상기 적어도 제2 예측 블록들에 대해 디스에이블되는, 방법.
12. 비디오 처리 방법으로서, 비디오의 현재 비디오 블록과 상기 비디오의 코딩된 표현 사이의 전환을 수행하는 단계를 포함하고, 상기 전환 동안, 상기 현재 비디오 블록은 제1 도메인 및 제2 도메인에 기초하여 구성되고/되거나 크로마 잔차가 루마 종속적 방식으로 스케일링되며, 상기 비디오의 비디오 영역에서의 제1 샘플 세트 및 상기 현재 비디오 블록의 참조 픽처에서의 제2 샘플 세트에 적어도 기초하여 도출되는 파라미터들을 사용하여 상기 전환 동안 코딩 툴이 적용되고, 상기 제1 샘플들에 대한 도메인과 상기 제2 샘플들에 대한 도메인이 정렬되는, 방법.
13. 조항 12에 있어서, 상기 코딩 툴은 상기 전환 동안 상기 현재 비디오 블록에서의 조명 변화들의 선형 모델을 사용하는 로컬 조명 보상(local illumination compensation, LIC) 모델을 포함하고, 상기 LIC 모델은 상기 파라미터들에 기초하여 적용되는, 방법.
14. 조항 12에 있어서, 상기 비디오 영역은 현재 타일, 타일 그룹, 또는 픽처를 포함하는, 방법.
15. 조항 13에 있어서, 상기 LIC 모델은 상기 제2 도메인에서의 예측 블록에 적용되고, 상기 제1 샘플 세트와 상기 제2 샘플 세트는 상기 제2 도메인에 있는, 방법.
16. 조항 13에 있어서, 참조 블록이 상기 제2 도메인으로 전환되고, 상기 LIC 모델은 상기 제2 도메인에서의 예측 블록에 적용되는, 방법.
17. 조항 15에 있어서, 상기 제1 샘플 세트 및 상기 제2 샘플 세트는 상기 파라미터들을 도출하는 데 사용되기 전에 상기 제2 도메인으로 전환되는, 방법.
18. 조항 17에 있어서, 상기 제2 샘플 세트는 참조 픽처들에서의 참조 샘플들 및 상기 참조 샘플들의 이웃하는 및/또는 인접하지 않은 샘플들을 포함하는, 방법.
19. 조항 13에 있어서, 상기 LIC 모델은 상기 제1 도메인에서의 예측 블록에 적용되고, 상기 제1 샘플 세트와 상기 제2 샘플 세트는 상기 제1 도메인에 있는, 방법.
20. 조항 13에 있어서, 참조 블록이 상기 제1 도메인에서 유지되고, 상기 LIC 모델은 상기 제1 도메인에서의 예측 블록에 적용되는, 방법.
21. 조항 19에 있어서, 상기 제1 샘플 세트는 상기 파라미터들을 도출하는 데 사용되기 전에 상기 제1 도메인으로 전환되는, 방법.
22. 조항 21에 있어서, 상기 제1 샘플 세트는 현재 비디오 블록의 공간적으로 이웃하는 및/또는 인접하지 않은 샘플들을 포함하는, 방법.
23. 조항 12에 있어서, 상기 파라미터들을 도출하는 데 사용되는 도메인이 상기 파라미터들을 예측 블록에 적용하는 데 사용되는, 방법.
24. 조항 13에 있어서, 상기 LIC 모델은 상기 제2 도메인에서의 예측 블록에 적용되는, 방법.
25. 조항 20 또는 조항 21에 있어서, 상기 LIC 모델이 상기 제1 도메인에서의 상기 예측 블록에 적용된 후에, 상기 예측 블록에 종속적인 최종 예측 블록이 상기 제2 도메인으로 전환되는, 방법.
26. 조항 1 내지 조항 25 중 어느 한 조항에 있어서, 상기 제1 도메인은 원래 도메인이고, 상기 제2 도메인은 루마 샘플들을 특정 값들에 맵핑하는 LMCS(luma mapping with chroma scaling) 방법을 사용하는 재성형된 도메인인, 방법.
27. 조항 26에 있어서, 상기 LMCS는 상기 루마 샘플들을 상기 특정 값들에 맵핑하기 위해 PWL(piecewise linear) 모델을 사용하는, 방법.
28. 조항 1 내지 조항 27 중 어느 한 조항에 있어서, 상기 전환을 수행하는 것은 상기 현재 블록으로부터 상기 코딩된 표현을 생성하는 것을 포함하는, 방법.
29. 조항 1 내지 조항 27 중 어느 한 조항에 있어서, 상기 전환을 수행하는 것은 상기 코딩된 표현으로부터 상기 현재 블록을 생성하는 것을 포함하는, 방법.
30. 프로세서 및 명령어들을 갖는 비일시적 메모리를 포함하는 비디오 시스템에서의 장치로서, 상기 명령어들은 상기 프로세서에 의한 실행시에, 상기 프로세서로 하여금 조항 1 내지 조항 29 중 어느 한 조항의 방법을 구현하게 하는, 장치.
31. 비일시적 컴퓨터 판독가능 매체 상에 저장되는 컴퓨터 프로그램 제품으로서, 상기 컴퓨터 프로그램 제품은 조항 1 내지 조항 29 중 어느 한 조항의 방법을 실행하기 위한 프로그램 코드를 포함하는, 컴퓨터 프로그램 제품.
제2 조항 세트는, 예를 들어, 예 3 내지 예 5, 예 8, 및 예 15를 포함하는, 이전 섹션에 열거된 개시된 기법들의 특정 특징들 및 양태들을 설명한다.
1. 비디오 처리 방법으로서, 비디오의 현재 비디오 영역의 현재 비디오 블록에 대해, 이전 비디오 영역의 코딩 모드에 대한 하나 이상의 파라미터에 기초하여 상기 현재 비디오 블록의 코딩 모드에 대한 파라미터를 결정하는 단계; 및 상기 결정에 기초하여 상기 현재 비디오 블록에 대한 코딩을 수행하여 상기 비디오의 코딩된 표현을 생성하는 단계를 포함하며, 상기 코딩 모드에 대한 파라미터는 상기 비디오의 코딩된 표현에서의 파라미터 세트에 포함되고, 상기 코딩을 수행하는 것은 제1 도메인에서의 상기 현재 비디오 블록의 표현을 제2 도메인에서의 상기 현재 비디오 블록의 표현으로 변환하는 것을 포함하고, 상기 코딩 모드를 사용하여 상기 코딩을 수행하는 동안, 상기 현재 비디오 블록은 상기 제1 도메인 및 상기 제2 도메인에 기초하여 구성되고/되거나 크로마 잔차가 루마 종속적 방식으로 스케일링되는, 방법.
2. 비디오 처리 방법으로서, 코딩 모드에 대한 파라미터 정보를 포함하는 파라미터 세트를 포함하는 비디오의 코딩된 표현을 수신하는 단계; 및 상기 파라미터 정보를 사용하여 상기 코딩된 표현의 디코딩을 수행하여 상기 코딩된 표현으로부터 상기 비디오의 현재 비디오 영역의 현재 비디오 블록을 생성하는 단계를 포함하며, 상기 코딩 모드에 대한 파라미터 정보는 이전 비디오 영역의 코딩 모드에 대한 하나 이상의 파라미터에 기초하고, 상기 코딩 모드에서, 상기 현재 비디오 블록은 상기 제1 도메인 및 상기 제2 도메인에 기초하여 구성되고/되거나 크로마 잔차가 루마 종속적 방식으로 스케일링되는, 방법.
3. 조항 1 또는 조항 2에 있어서, 상기 파라미터 세트는 타일 그룹 헤더와 상이한, 방법.
4. 조항 1 또는 조항 2에 있어서, 상기 파라미터 세트는 적응 파라미터 세트(APS)인, 방법.
5. 조항 1 또는 조항 2에 있어서, 상기 현재 비디오 영역은 상기 비디오의 비디오 픽처 또는 상기 비디오의 비디오 픽처의 하나의 타일을 포함하는, 방법.
6. 조항 1 또는 조항 2에 있어서, 상기 이전 비디오 영역은 상기 픽처의 하나 이상의 타일을 포함하는, 방법.
7. 조항 1 또는 조항 2에 있어서, 상기 이전 비디오 영역은 상기 비디오의 하나 이상의 비디오 픽처를 포함하는, 방법.
8. 비디오 처리 방법으로서, 비디오의 현재 비디오 블록과 상기 비디오의 코딩된 표현 사이의 전환을 수행하는 단계를 포함하고, 상기 전환은 제1 도메인 또는 상기 제1 도메인과 상이한 제2 도메인 내의 예측 블록에 필터링 연산을 적용하는 것을 포함하는, 방법.
9. 조항 8에 있어서, 상기 제1 도메인에서의 상기 예측 블록에 대해 상기 필터링 연산을 수행하여 필터링된 예측 신호를 생성하고, 상기 필터링된 예측 신호에 코딩 모드를 적용하여 상기 제2 도메인에 있는 재성형된 예측 신호를 생성하고, 상기 현재 비디오 블록은 상기 재성형된 예측 신호를 사용하여 구성되는, 방법.
10. 조항 8에 있어서, 상기 필터링 연산을 적용하기 전에 상기 예측 블록에 코딩 모드를 적용하여 상기 제2 도메인에 있는 재성형된 예측 신호를 생성하고, 상기 재성형된 예측 신호를 사용하여 상기 필터링 연산을 수행하여 필터링된 예측 신호를 생성하고, 상기 현재 비디오 블록은 상기 필터링된 예측 신호를 사용하여 구성되는, 방법.
11. 조항 9 또는 조항 10에 있어서, 상기 코딩 모드에서, 상기 현재 비디오 블록은 상기 제1 도메인 및 상기 제2 도메인에 기초하여 구성되고/되거나 크로마 잔차가 루마 종속적 방식으로 스케일링되는, 방법.
12. 조항 8 내지 조항 11 중 어느 한 조항에 있어서, 상기 필터링 연산은 확산 필터를 포함하는, 방법.
13. 조항 8 내지 조항 11 중 어느 한 조항에 있어서, 상기 필터링 연산과 연관된 파라미터들은 상기 필터링 연산이 상기 제1 도메인에서의 블록에 적용되는지 또는 상기 제2 도메인에서의 블록에 적용되는지에 종속적인, 방법.
14. 조항 8에 있어서, 상기 전환은: 상기 필터링 연산의 적용 전에, 상기 현재 비디오 블록에 모션 보상 예측을 적용하여 예측 신호를 획득하는 것; 상기 필터링 연산의 적용 후에, 필터링된 예측 신호에 코딩 모드를 적용하여 재성형된 예측 신호를 생성하는 것 - 상기 필터링된 예측 신호는 상기 예측 신호에 상기 필터링 연산을 적용함으로써 생성됨 - ; 및 상기 재성형된 예측 신호를 사용하여 상기 현재 비디오 블록을 구성하는 것을 추가로 포함하는, 방법.
15. 조항 8에 있어서, 상기 전환은: 상기 필터링 연산의 적용 전에, 상기 현재 비디오 블록에 모션 보상 예측을 적용하여 예측 신호를 획득하는 것; 상기 예측 신호에 코딩 모드를 적용하여 재성형된 예측 신호를 생성하는 것; 및 상기 필터링 연산의 적용 후에, 필터링된 재성형된 예측 신호를 사용하여 상기 현재 비디오 블록을 구성하는 것을 추가로 포함하고, 상기 필터링된 재성형된 예측 신호는 상기 재성형된 예측 신호에 상기 필터링 연산을 적용함으로써 생성되는, 방법.
16. 비디오 처리 방법으로서, 비디오의 현재 비디오 블록과 상기 비디오의 코딩된 표현 사이의 전환을 수행하는 단계를 포함하고, 상기 전환 동안, 상기 현재 비디오 블록에 대한 최종 재구성 블록이 결정되고, 예측 방법을 사용하여 임시 재구성 블록이 생성되고 상기 제2 도메인에서 표현되는, 방법.
17. 조항 16에 있어서, 상기 전환은: 상기 현재 비디오 블록에 모션 보상 예측을 적용하여 예측 신호를 획득하는 것; 상기 예측 신호에 순방향 재성형을 적용하여 상기 임시 재구성 블록을 생성하는 데 사용되는 재성형된 예측 신호를 생성하는 것; 및 상기 임시 재구성 블록에 역 재성형을 적용하여 역방향 재구성 블록을 획득하는 것을 추가로 포함하고, 상기 역방향 재구성 블록에 상기 필터링을 적용하여 최종 재구성 블록을 생성하는, 방법.
18. 조항 16에 있어서, 상기 전환은: 상기 현재 비디오 블록에 모션 보상 예측을 적용하여 예측 신호를 획득하는 것; 상기 예측 신호에 순방향 재성형을 적용하여 상기 임시 재구성 블록을 생성하는 데 사용되는 재성형된 예측 신호를 생성하는 것; 및 필터링된 재구성 블록에 역 재성형을 적용하여 최종 재구성 블록을 획득하는 것을 추가로 포함하고, 상기 필터링된 재구성 블록은 상기 임시 재구성 블록에 상기 필터링을 적용함으로써 생성되는, 방법.
19. 조항 16 내지 조항 18 중 어느 한 조항에 있어서 상기 전환은 루마 샘플들을 특정 값들에 맵핑하는 루마 종속적 크로마 잔차 스케일링(LMCS) 프로세스를 적용하는 것을 추가로 포함하는, 방법.
20. 조항 16에 있어서, 상기 필터는 상기 제1 도메인에서의 상기 임시 재구성 블록에 적용되고, 상기 제2 도메인에서의 상기 임시 재구성 블록은 먼저 상기 필터의 적용 전에 역 재성형 프로세스를 사용하여 상기 제1 도메인으로 전환되고, 상기 최종 재구성 블록은 상기 필터링된 임시 재구성 블록에 종속적인, 방법.
21. 조항 16에 있어서, 상기 필터는 상기 제2 도메인에서의 상기 임시 재구성 블록에 직접 적용되고, 그 후, 역 재성형 연산이 적용되어 상기 최종 재구성 블록을 생성하는, 방법.
22. 조항 16에 있어서, 상기 필터는 쌍방 필터(BF) 또는 아다마르 변환 도메인 필터(HF)를 포함하는, 방법.
23. 조항 16에 있어서, 상기 필터는 디블록킹 필터(DBF) 프로세스, 샘플 적응적 오프셋(SAO) 필터링 프로세스, 또는 적응적 루프 필터(ALF) 필터링 프로세스를 포함하는, 방법.
24. 조항 1 내지 조항 23 중 어느 한 조항에 있어서, 상기 필터링 연산 또는 상기 필터에 사용되는 필터 파라미터들은 상기 현재 비디오 블록에 대해 코딩 모드가 인에이블되는지 여부에 종속하고, 상기 코딩 모드에서, 상기 현재 비디오 블록은 제1 도메인 및 제2 도메인에 기초하여 구성되고/되거나 크로마 잔차가 루마 종속적 방식으로 스케일링되는, 방법.
25. 조항 1 내지 조항 25 중 어느 한 조항에 있어서, 상기 제1 도메인은 원래 도메인이고, 상기 제2 도메인은 루마 샘플들을 특정 값들에 맵핑하는 LMCS(luma mapping with chroma scaling) 방법을 사용하는 재성형된 도메인인, 방법.
26. 조항 25에 있어서, 상기 LMCS는 상기 루마 샘플들을 상기 특정 값들에 맵핑하기 위해 PWL(piecewise linear) 모델을 사용하는, 방법.
27. 조항 8 내지 조항 26 중 어느 한 조항에 있어서, 상기 전환을 수행하는 것은 상기 현재 블록으로부터 상기 코딩된 표현을 생성하는 것을 포함하는, 방법.
28. 조항 8 내지 조항 26 중 어느 한 조항에 있어서, 상기 전환을 수행하는 것은 상기 코딩된 표현으로부터 상기 현재 블록을 생성하는 것을 포함하는, 방법.
29. 프로세서 및 명령어들을 갖는 비일시적 메모리를 포함하는 비디오 시스템에서의 장치로서, 상기 명령어들은 상기 프로세서에 의한 실행시에, 상기 프로세서로 하여금 조항 1 내지 조항 28 중 어느 한 조항의 방법을 구현하게 하는, 장치.
30. 비일시적 컴퓨터 판독가능 매체 상에 저장되는 컴퓨터 프로그램 제품으로서, 상기 컴퓨터 프로그램 제품은 조항 1 내지 조항 28 중 어느 한 조항의 방법을 실행하기 위한 프로그램 코드를 포함하는, 컴퓨터 프로그램 제품.
제3 조항 세트는, 예를 들어, 예 6을 포함하는, 이전 섹션에 열거된 개시된 기법들의 특정 특징들 및 양태들을 설명한다.
1. 비디오 처리 방법으로서, 비디오의 비디오 영역의 현재 비디오 블록과 상기 비디오의 코딩된 표현 사이의 전환을 수행하는 단계를 포함하며, 상기 전환은 상기 현재 비디오 블록이 제1 도메인 및 제2 도메인에 기초하여 구성되고/되거나 크로마 잔차가 루마 종속적 방식으로 스케일링되는 코딩 모드를 사용하고, 상기 코딩된 표현에서의 파라미터 세트는 상기 코딩 모드에 대한 파라미터 정보를 포함하는, 방법.
2. 조항 1에 있어서, 상기 파라미터 세트는 타일 그룹 헤더와 상이한, 방법.
3. 조항 2에 있어서, 상기 파라미터 세트는 적응 파라미터 세트(APS)인, 방법.
4. 조항 3에 있어서, 코딩 모드 정보에 대한 상기 APS는 LMCS(luma mapping with chroma scaling) APS로 명명되는, 방법.
5. 조항 3에 있어서, 상기 현재 비디오 블록에 대해 이용될 상기 APS에 대한 식별자가 상기 비디오의 상기 코딩된 표현에 포함되는, 방법.
6. 조항 5에 있어서, 상기 식별자가 상기 비디오의 상기 코딩된 표현에 존재하는지는 상기 코딩 모드가 상기 비디오 영역에 대해 인에이블되는지에 종속하는, 방법.
7. 조항 3에 있어서, 상기 파라미터 세트는 상기 APS의 식별자를 포함하는, 방법.
8. 조항 1에 있어서, 상기 파라미터 세트에 대해 NAL 유닛 타입 값이 할당되는, 방법.
9. 조항 1에 있어서, 상기 파라미터 세트의 식별자는 0 내지 M의 범위를 갖고, M은 2K-1인, 방법.
10. 조항 1에 있어서, 상기 파라미터 세트는 상기 비디오의 픽처들에 걸쳐 공유되는, 방법.
11. 조항 1에 있어서, 상기 파라미터 세트의 식별자는 고정 길이 코딩된 값을 갖는, 방법.
12. 조항 1에 있어서, 상기 파라미터 세트의 식별자는, 지수-골룸(exponential-golomb, EG) 코드, 절단된 단항(truncated unary) 코드, 또는 이진화 코드로 코딩되는, 방법.
13. 조항 1에 있어서, 동일한 픽처 내의 2개의 부분-영역에 대해, 상기 파라미터 세트는 2개의 상이한 값을 갖는 식별자들을 갖는, 방법.
14. 조항 3에 있어서, 상기 파라미터 세트와 적응적 루프 필터(ALF) 정보에 대한 APS는 동일한 네트워크 추상화 계층(NAL) 유닛 타입(NUT)을 공유하는, 방법.
15. 조항 1에 있어서, 상기 파라미터 정보는 적응적 루프 필터(ALF) 정보에 대한 현재 APS와 함께 운반되는, 방법.
16. 조항 1에 있어서, 상기 파라미터 정보는 시퀀스 파라미터 세트(SPS), 비디오 파라미터 세트(VPS), 픽처 파라미터 세트(PPS), 시퀀스, 헤더 또는 픽처 헤더에서 운반되는, 방법.
17. 조항 1에 있어서, 상기 파라미터 정보는 재성형기 모델 정보의 표시, 상기 코딩 모드의 사용, 또는 크로마 잔차 스케일링 인자들 중 적어도 하나를 포함하는, 방법.
18. 조항 1에 있어서, 상기 파라미터 정보는 하나의 레벨에서 시그널링되는, 방법.
19. 조항 1에 있어서, 상기 파라미터 정보는 제2 레벨에서 시그널링되는 상기 코딩 모드의 사용을 포함하는, 방법.
20. 조항 18 또는 조항 19에 있어서, 상기 파라미터 정보는 APS에서 시그널링되고, 상기 코딩 모드의 사용은 상기 비디오 영역 레벨에서 시그널링되는, 방법.
21. 조항 1에 있어서, 상기 파라미터 정보는 하나의 레벨에서 파싱되는, 방법.
22. 조항 1에 있어서, 상기 파라미터 정보는 제2 레벨에서 파싱되는 상기 코딩 모드의 사용을 포함하는, 방법.
23. 조항 21 또는 조항 22에 있어서, 상기 파라미터 정보는 APS에서 파싱되고, 상기 코딩 모드의 사용은 상기 비디오 영역 레벨에서 파싱되는, 방법.
24. 조항 1에 있어서, 상기 파라미터 정보를 상이한 APS 인덱스들로 코딩하기 위해 예측 코딩이 적용되는, 방법.
25. 조항 1 내지 조항 24 중 어느 한 조항에 있어서, 상기 제1 도메인은 원래 도메인이고, 상기 제2 도메인은 루마 샘플들을 특정 값들에 맵핑하는 LMCS(luma mapping with chroma scaling) 방법을 사용하는 재성형된 도메인인, 방법.
26. 조항 25에 있어서, 상기 LMCS는 상기 루마 샘플들을 상기 특정 값들에 맵핑하기 위해 PWL(piecewise linear) 모델을 사용하는, 방법.
27. 조항 1 내지 조항 26 중 어느 한 조항에 있어서, 상기 비디오 영역은 픽처 또는 타일 그룹인, 방법.
28. 조항 1 내지 조항 26 중 어느 한 조항에 있어서, 상기 비디오 영역 레벨은 픽처 헤더 또는 타일 그룹 헤더인, 방법.
29. 조항 1 내지 조항 28 중 어느 한 조항에 있어서, 상기 제1 도메인은 원래 도메인이고, 상기 제2 도메인은 재성형 모델들에 따라 루마 샘플들을 특정 값들에 맵핑하는 LMCS(luma mapping with chroma scaling) 방법을 사용하는 재성형된 도메인인, 방법.
30. 조항 29에 있어서, 상기 LMCS는 상기 루마 샘플들을 상기 특정 값들에 맵핑하기 위해 PWL(piecewise linear) 모델을 사용하는, 방법.
31. 조항 1 내지 조항 30 중 어느 한 조항에 있어서, 상기 전환을 수행하는 것은 상기 현재 블록으로부터 상기 코딩된 표현을 생성하는 것을 포함하는, 방법.
32. 조항 1 내지 조항 30 중 어느 한 조항에 있어서, 상기 전환을 수행하는 것은 상기 코딩된 표현으로부터 상기 현재 블록을 생성하는 것을 포함하는, 방법.
33. 프로세서 및 명령어들을 갖는 비일시적 메모리를 포함하는 비디오 시스템에서의 장치로서, 상기 명령어들은 상기 프로세서에 의한 실행시에, 상기 프로세서로 하여금 조항 1 내지 조항 32 중 어느 한 조항의 방법을 구현하게 하는, 장치.
34. 비일시적 컴퓨터 판독가능 매체 상에 저장되는 컴퓨터 프로그램 제품으로서, 상기 컴퓨터 프로그램 제품은 조항 1 내지 조항 32 중 어느 한 조항의 방법을 실행하기 위한 프로그램 코드를 포함하는, 컴퓨터 프로그램 제품.
제4 조항 세트는, 예를 들어, 예 7 및 예 9를 포함하는, 이전 섹션에 열거된 개시된 기법들의 특정 특징들 및 양태들을 설명한다.
1. 비디오 처리 방법으로서, 크로마 블록인 비디오의 현재 비디오 블록과 상기 비디오의 코딩된 표현 사이의 전환을 수행하는 단계를 포함하고, 상기 전환 동안, 상기 현재 비디오 블록은 제1 도메인 및 제2 도메인에 기초하여 구성되며, 상기 전환은 상기 현재 비디오 블록의 하나 이상의 크로마 성분에 순방향 재성형 프로세스(forward reshaping process) 및/또는 역 재성형 프로세스(inverse reshaping process)를 적용하는 것을 추가로 포함하는, 방법.
2. 조항 1에 있어서, 상기 방법은 상기 현재 비디오 블록의 상기 하나 이상의 크로마 성분에 루마 종속적 크로마 잔차 스케일링(LCRS)을 적용하는 것을 억제하는 단계를 추가로 포함하는, 방법.
3. 조항 1에 있어서, PWL(piece-wise linear) 모델, 순방향 룩업 테이블, 또는 역방향 룩업 테이블 중 적어도 하나가 크로마 성분에 이용되는, 방법.
4. 조항 3에 있어서, 상기 크로마 성분에 대한 상기 PWL 모델, 상기 순방향 룩업 테이블, 및 상기 역방향 룩업 테이블은 각각 대응하는 루마 성분의 PWL 모델, 순방향 룩업 테이블, 및 역방향 룩업 테이블로부터 도출되는, 방법.
5. 조항 3에 있어서, 상기 PWL 모델은 시퀀스 파라미터 세트(SPS), 비디오 파라미터 세트(VPS), 적응 파라미터 세트(APS), 픽처 파라미터 세트(PPS), 시퀀스 헤더, 픽처 헤더, 타일 그룹 헤더, 타일 헤더, 코딩 트리 유닛(CTU) 행, CTU들의 그룹, 또는 영역들에서 시그널링되는, 방법.
6. 조항 3에 있어서, 상기 순방향 룩업 테이블 및 상기 역방향 룩업 테이블은 시퀀스 파라미터 세트(SPS), 비디오 파라미터 세트(VPS), 적응 파라미터 세트(APS), 픽처 파라미터 세트(PPS), 시퀀스 헤더, 픽처 헤더, 타일 그룹 헤더, 타일 헤더, 코딩 트리 유닛(CTU) 행, CTU들의 그룹, 또는 영역들에서 시그널링되는, 방법.
7. 비디오 처리 방법으로서, 비디오의 현재 비디오 크로마 블록과 상기 비디오의 코딩된 표현 사이의 전환을 수행하는 단계를 포함하고, 상기 전환을 수행하는 것은: 규칙에 기초하여 루마 종속적 크로마 잔차 스케일링(LCRS)이 인에이블 또는 디스에이블되는지를 결정하는 것, 및 상기 결정에 기초하여 상기 현재 비디오 크로마 블록을 재구성하는 것을 포함하는, 방법.
8. 조항 7에 있어서, 상기 규칙은 특정 블록 치수들, 시간적 계층들, 타일 그룹 타입들, 픽처 타입들, 코딩된 모드들, 특정 타입의 모션 정보에 대해 상기 LCRS가 디스에이블되는 것을 명시하는, 방법.
9. 조항 7에 있어서, 상기 규칙은 상기 LCRS가 크로마 블록들에 대해 디스에이블되고 순방향 및/또는 역 재성형 프로세스가 대응하는 루마 블록들에 적용되는 것을 명시하는, 방법.
10. 조항 7에 있어서, 상기 규칙은 LCRS가 크로마 블록들에 적용되고 순방향 및/또는 역 재성형 프로세스가 대응하는 루마 블록들에 적용되지 않는 것을 명시하는, 방법.
11. 조항 7에 있어서, 상기 규칙은 CCLM(cross component linear model)을 사용하여 코딩된 상기 현재 비디오 크로마 블록에 대해 LCRS가 디스에이블되는 것을 명시하는, 방법.
12. 조항 7에 있어서, 상기 규칙은 CCLM(cross component linear model)을 사용하여 코딩되지 않은 상기 현재 비디오 크로마 블록에 대해 LCRS가 디스에이블되는 것을 명시하는, 방법.
13. 조항 7에 있어서, 상기 규칙은 상기 LCRS를 디스에이블하는 것이 가상 파이프라인 데이터 유닛(VPDU)을 초과하는 비디오 블록의 크기에 기초하는 것을 명시하는, 방법.
14. 조항 13에 있어서, 상기 LCRS는 상기 비디오 블록이 M*H 샘플들보다 작은 비디오 샘플들을 포함하는 경우에 허용되지 않는, 방법.
15. 조항 13에 있어서, 상기 LCRS는 상기 비디오 블록의 폭 및/또는 높이의 최소 크기가 특정 값 이하인 경우에 허용되지 않는, 방법.
16. 조항 13에 있어서, 상기 LCRS는 상기 비디오 블록의 폭 및/또는 높이의 최소 크기가 특정 값보다 작지 않은 경우에 허용되지 않는, 방법.
17. 조항 15 또는 조항 16에 있어서, 상기 특정 값은 8인, 방법.
18. 조항 13에 있어서, 상기 LCRS는 상기 비디오 블록의 폭이 제1 값 이상인 경우 및/또는 상기 비디오 블록의 높이가 제2 값 이상인 경우에 허용되지 않는, 방법.
19. 조항 13에 있어서, 상기 LCRS는 상기 비디오 블록의 폭이 제1 값 이하인 경우 및/또는 상기 비디오 블록의 높이가 제2 값 이하인 경우에 허용되지 않는, 방법.
20. 조항 18 또는 조항 19에 있어서, 상기 제1 값 또는 상기 제2 값 중 적어도 하나는 8, 64 또는 128인, 방법.
21. 조항 13 내지 조항 20 중 어느 한 조항에 있어서, 상기 비디오 블록은 루마 블록 또는 크로마 블록인, 방법.
22. 조항 1 내지 조항 21 중 어느 한 조항에 있어서, 상기 제1 도메인은 원래 도메인이고, 상기 제2 도메인은 재성형 모델들에 따라 루마 샘플들을 특정 값들에 맵핑하는 LMCS(luma mapping with chroma scaling) 방법을 사용하는 재성형된 도메인인, 방법.
23. 조항 22에 있어서, 상기 LMCS는 상기 루마 샘플들을 상기 특정 값들에 맵핑하기 위해 PWL(piecewise linear) 모델을 사용하는, 방법.
24. 조항 1 내지 조항 23 중 어느 한 조항에 있어서, 상기 크로마 잔차는 비디오 크로마 블록의 재구성을 도출하는 데 사용되기 전에 크로마 잔차들을 스케일링하는 것을 포함하는 루마 종속적 크로마 잔차 스케일링 연산을 수행함으로써 상기 루마 종속적 방식으로 스케일링되고, 상기 스케일링 파라미터들은 루마 샘플들로부터 도출되는, 방법.
25. 조항 1 내지 조항 24 중 어느 한 조항에 있어서, 상기 전환을 수행하는 것은 상기 현재 블록으로부터 상기 코딩된 표현을 생성하는 것을 포함하는, 방법.
26. 조항 1 내지 조항 24 중 어느 한 조항에 있어서, 상기 전환을 수행하는 것은 상기 코딩된 표현으로부터 상기 현재 블록을 생성하는 것을 포함하는, 방법.
27. 프로세서 및 명령어들을 갖는 비일시적 메모리를 포함하는 비디오 시스템에서의 장치로서, 상기 명령어들은 상기 프로세서에 의한 실행시에, 상기 프로세서로 하여금 조항 1 내지 조항 26 중 어느 한 조항의 방법을 구현하게 하는, 장치.
28. 비일시적 컴퓨터 판독가능 매체 상에 저장되는 컴퓨터 프로그램 제품으로서, 상기 컴퓨터 프로그램 제품은 조항 1 내지 조항 26 중 어느 한 조항의 방법을 실행하기 위한 프로그램 코드를 포함하는, 컴퓨터 프로그램 제품.
제5 조항 세트는, 예를 들어, 예 10 내지 예 14, 예 28, 예 29, 및 예 40을 포함하는, 이전 섹션에 열거된 개시된 기법들의 특정 특징들 및 양태들을 설명한다.
1. 비디오 처리 방법으로서, 비디오의 현재 비디오 블록과 상기 비디오의 코딩된 표현 사이의 전환을 위해, 상기 현재 비디오 블록의 하나 이상의 계수 값에 기초하여 코딩 모드의 사용을 디스에이블할지를 결정하는 단계; 및 상기 결정에 기초하여 상기 전환을 수행하는 단계를 포함하고, 상기 코딩 모드를 사용하는 전환 동안, 상기 현재 비디오 블록은 제1 도메인 및 제2 도메인에 기초하여 구성되고/되거나 크로마 잔차가 루마 종속적 방식으로 스케일링되는, 방법.
2. 조항 1에 있어서, 상기 재성형 프로세스는: 상기 제1 도메인에서의 샘플들에 순방향 재성형 프로세스 중 적어도 하나를 선택적으로 적용한 다음, 상기 제2 도메인에서의 샘플들로 전환하는 것; 및 상기 제2 도메인에서의 샘플들에 역 재성형 프로세스를 선택적으로 적용한 다음, 상기 제1 도메인에서의 표현으로 전환하는 것을 포함하는, 방법.
3. 조항 1 또는 조항 2에 있어서, 상기 재성형 프로세스는: 루마 종속적 크로마 잔차 스케일링 프로세스를 선택적으로 적용하는 것을 추가로 포함하는, 방법.
4. 조항 1 내지 조항 3 중 어느 한 조항에 있어서, 상기 결정하는 단계는 상기 현재 비디오 블록이 모두 제로 계수들로 코딩되는지에 기초하는, 방법.
5. 조항 2에 있어서, 상기 순방향 재성형 프로세스는 상기 현재 비디오 블록이 모두 제로 계수들로 코딩되는지에 기초하여 스킵되는, 방법.
6. 조항 2에 있어서, 상기 현재 비디오 블록은 모두 제로 계수들로 코딩되고, 상기 역 재성형 프로세스는 스킵되는, 방법.
7. 조항 2에 있어서, 상기 현재 비디오 블록은 모두 제로 계수들로 코딩되고, 상기 루마 종속적 크로마 잔차 스케일링 프로세스는 스킵되는, 방법.
8. 조항 2에 있어서, 상기 결정하는 단계는 상기 현재 비디오 블록이 특정 위치들에 위치하는 단지 하나의 비-제로 계수로 코딩되는지에 기초하는, 방법.
9. 조항 2에 있어서, 상기 현재 비디오 블록은 특정 위치들에 위치된 단지 하나의 비-제로 계수로 코딩되고, 상기 순방향 재성형 프로세스, 상기 역 재성형 프로세스, 또는 상기 루마 종속적 크로마 잔차 스케일링 프로세스 중 적어도 하나는 스킵되는, 방법.
10. 조항 2에 있어서, 상기 결정하는 단계는 상기 현재 비디오 블록이 M개의 비-제로 계수로 코딩되는지에 기초하는, 방법.
11. 조항 2에 있어서, 상기 현재 비디오 블록은 M개의 비-제로 계수로 코딩되고, 상기 순방향 재성형 프로세스, 상기 역 재성형 프로세스, 또는 상기 루마 종속적 크로마 잔차 스케일링 프로세스 중 적어도 하나는 스킵되는, 방법.
12. 조항 11에 있어서, M은 1인, 방법.
13. 비디오 처리 방법으로서, 비디오의 가상 파이프라인 데이터 유닛(VPDU)을 초과하는 비디오의 현재 비디오 블록 사이의 전환을 위해, 상기 현재 비디오 블록을 영역들로 분할하는 단계; 및 각각의 영역에 개별적으로 코딩 모드를 적용함으로써 상기 전환을 수행하는 단계 - 상기 코딩 모드를 적용하는 것에 의한 상기 전환 동안, 상기 현재 비디오 블록은 제1 도메인 및 제2 도메인에 기초하여 구성되고/되거나 크로마 잔차가 루마 종속적 방식으로 스케일링됨 - 를 포함하는, 방법.
14. 조항 13에 있어서, 각각의 영역은 상기 코딩 모드의 개별 코딩 유닛(CU)에 대응하는, 방법.
15. 조항 13에 있어서, 상기 현재 비디오 블록의 폭은 제1 값 이상이고, 상기 현재 비디오 블록은 상기 제1 값 이하인 하나 이상의 폭을 갖는 서브-블록들로 구분되고, 상기 코딩 모드는 각각의 서브-블록에 대해 인에이블되는, 방법.
16. 조항 13에 있어서, 상기 현재 비디오 블록의 높이는 제2 값 이상이고, 상기 현재 비디오 블록은 상기 제2 값 이하인 하나 이상의 높이를 갖는 서브-블록들로 구분되고, 상기 코딩 모드는 각각의 서브-블록에 대해 인에이블되는, 방법.
17. 조항 13에 있어서, 상기 현재 비디오 블록의 크기는 제3 값 이상이고, 상기 현재 비디오 블록은 상기 제3 값 이하인 하나 이상의 크기를 갖는 서브-블록들로 구분되고, 상기 코딩 모드는 각각의 서브-블록에 대해 인에이블되는, 방법.
18. 조항 15 내지 조항 17 중 어느 한 조항에 있어서, 상기 서브-블록들은 동일한 폭 또는 동일한 높이를 갖는, 방법.
19. 비디오 처리 방법으로서, 비디오의 현재 비디오 블록과 상기 비디오의 코딩된 표현 사이의 전환을 위해, 상기 현재 비디오 블록의 크기 또는 컬러 포맷에 기초하여 코딩 모드의 사용을 디스에이블할지를 결정하는 단계; 및 상기 결정에 기초하여 상기 전환을 수행하는 단계를 포함하고, 상기 코딩 모드를 사용하는 전환 동안, 상기 현재 비디오 블록은 제1 도메인 및 제2 도메인에 기초하여 구성되고/되거나 크로마 잔차가 루마 종속적 방식으로 스케일링되는, 방법.
20. 조항 19에 있어서, 상기 결정하는 단계는 가상 파이프라인 데이터 유닛(VPDU)을 초과하는 상기 현재 비디오 블록에 대한 코딩 모드를 디스에이블하기로 결정하는, 방법.
21. 조항 19에 있어서, 상기 결정하는 단계는 M*H보다 작은 수의 샘플들을 포함하는 크기를 갖는 상기 현재 비디오 블록에 대한 코딩 모드를 디스에이블하기로 결정하는, 방법.
22. 조항 19에 있어서, 상기 결정하는 단계는 상기 현재 비디오 블록의 폭 및/또는 높이의 최소 크기가 정수인 X 이하인 경우에 상기 현재 비디오 블록에 대한 코딩 모드를 디스에이블하기로 결정하는, 방법.
23. 조항 19에 있어서, 상기 결정하는 단계는 상기 현재 비디오 블록의 폭 및/또는 높이의 최소 크기가 정수인 X보다 작지 않은 경우에 상기 현재 비디오 블록에 대한 코딩 모드를 디스에이블하기로 결정하는, 방법.
24. 조항 22 또는 조항 23에 있어서, X는 8인, 방법.
25. 조항 19에 있어서, 상기 결정하는 단계는 상기 현재 비디오 블록이 폭 및/또는 높이를 갖는 경우에 상기 현재 비디오 블록에 대한 코딩 모드를 디스에이블하기로 결정하고, 상기 폭은 제1 값 이상이고 상기 높이는 제2 값 이상인, 방법.
26. 조항 19에 있어서, 상기 결정하는 단계는 상기 현재 비디오 블록이 폭 및/또는 높이를 갖는 경우에 상기 현재 비디오 블록에 대한 코딩 모드를 디스에이블하기로 결정하고, 상기 폭은 제1 값 이하이고 상기 높이는 제2 값 이하인, 방법.
27. 조항 25 또는 조항 26에 있어서, 상기 제1 값 또는 상기 제2 값 중 적어도 하나는 8인, 방법.
28. 조항 19 내지 조항 27 중 어느 한 조항에 있어서, 상기 코딩 모드를 디스에이블하는 것은 1) 상기 제1 도메인에서의 샘플들을 상기 제2 도메인으로 전환하는 순방향 재성형; 2) 상기 제2 도메인에서의 샘플들을 상기 제1 도메인으로 전환하는 역방향 재성형; 3) 루마 종속적 크로마 잔차 스케일링 중 적어도 하나를 디스에이블하는 것을 포함하는, 방법.
29. 비디오 처리 방법으로서, 비디오의 현재 비디오 블록과 상기 비디오의 코딩된 표현 사이의 전환을 수행하는 단계를 포함하고, 상기 전환은 상기 현재 비디오 블록이 제1 도메인 및 제2 도메인에 기초하여 구성되고/되거나 크로마 잔차가 루마 종속적 방식으로 스케일링되는 코딩 모드를 사용하고, 상기 코딩된 표현에서의 적어도 하나의 신택스 요소는 상기 코딩 모드의 사용의 표시 및 재성형기 모델의 표시를 제공하는, 방법.
30. 조항 29에 있어서, 상기 코딩 모드의 사용의 표시는 상기 재성형기 모델의 표시에 기초하여 코딩되는, 방법.
31. 조항 29에 있어서, 상기 재성형기 모델의 표시는 상기 코딩 모드의 표시에 기초하여 코딩되는, 방법.
32. 조항 29에 있어서, 상기 신택스 요소들 중 하나만이 코딩되는, 방법.
33. 조항 1 내지 조항 32 중 어느 한 조항에 있어서, 상이한 클리핑 방법들이 예측 신호 및 재구성 신호에 적용되는, 방법.
34. 조항 33에 있어서, 상기 비디오 내의 상이한 클리핑 파라미터들을 허용하는 적응적 클리핑이 상기 예측 신호에 적용되는, 방법.
35. 조항 34에 있어서, 상기 적응적 클리핑에 대한 최대값 및 최소값은 상기 제2 도메인에서 정의되는, 방법.
36. 조항 33에 있어서, 고정 클리핑이 상기 재구성 신호에 적용되는, 방법.
37. 비디오 처리 방법으로서, 비디오의 현재 비디오 블록과 상기 비디오의 코딩된 표현 사이의 전환을 위해 코딩 모드가 디스에이블된다고 결정하는 단계; 및 상기 결정에 기초하여 순방향 재성형 및/또는 역 재성형을 조건부로 스킵하는 단계를 포함하고, 상기 코딩 모드에서, 상기 현재 비디오 블록은 제1 도메인 및 제2 도메인에 기초하여 구성되고/되거나 크로마 잔차가 루마 종속적 방식으로 스케일링되는, 방법.
38. 조항 37에 있어서, 예측 신호, 재구성 신호, 또는 잔차 신호 중 적어도 하나는 상기 제1 도메인에 있는, 방법.
39. 조항 37에 있어서, 예측 신호, 재구성 신호, 또는 잔차 신호 중 적어도 하나는 상기 제2 도메인에 있는, 방법.
40. 비디오 처리 방법으로서, 비디오의 비디오 영역의 현재 비디오 블록과 상기 비디오의 코딩된 표현 사이의 전환을 수행하는 단계를 포함하며, 상기 전환은 상기 현재 비디오 블록이 제1 도메인 및 제2 도메인에 기초하여 구성되고/되거나 크로마 잔차가 루마 종속적 방식으로 스케일링되는 코딩 모드를 사용하고, 상기 비디오 영역에 대해 상기 재성형 모드에서 다중 순방향 재성형 및/또는 다중 역 재성형이 적용되는, 방법.
41. 조항 40에 있어서, 상기 비디오 영역은 픽처, 타일 그룹, 가상 파이프라이닝 데이터 유닛(VPDU), 코딩 트리 유닛(CTU), 행, 또는 다수의 코딩 유닛을 포함하는, 방법.
42. 조항 40 또는 조항 41에 있어서, 상기 다중 순방향 재성형 및/또는 상기 다중 역 재성형을 선택하는 방법은 i) 블록 치수 또는 비디오 영역 치수, ii) 상기 현재 비디오 블록 또는 상기 비디오 영역의 코딩된 모드, iii) 상기 현재 비디오 블록 또는 상기 비디오 영역의 픽처 타입, iv) 상기 현재 비디오 블록 또는 상기 비디오 영역의 저지연 체크 플래그, v) 상기 현재 비디오 블록 또는 상기 비디오 영역의 모션 정보, vi) 상기 현재 비디오 블록 또는 상기 비디오 영역의 참조 픽처들, 또는 vii) 상기 현재 비디오 블록 또는 상기 비디오 영역의 비디오 콘텐츠 중 적어도 하나에 종속하는, 방법.
43. 조항 1 내지 조항 42 중 어느 한 조항에 있어서, 상기 전환 동안, 상기 제1 도메인에서의 샘플은 상기 제1 도메인에서의 샘플의 값보다 작은 값을 갖는 상기 제2 도메인에서의 샘플에 맵핑되는, 방법.
44. 조항 1 내지 조항 43 중 어느 한 조항에 있어서, 상기 제1 도메인은 원래 도메인이고, 상기 제2 도메인은 루마 샘플들을 특정 값들에 맵핑하는 LMCS(luma mapping with chroma scaling) 방법을 사용하는 재성형된 도메인인, 방법.
45. 조항 44에 있어서, 상기 LMCS는 상기 루마 샘플들을 상기 특정 값들에 맵핑하기 위해 PWL(piecewise linear) 모델을 사용하는, 방법.
46. 조항 1 내지 조항 45 중 어느 한 조항에 있어서, 상기 전환을 수행하는 것은 상기 현재 블록으로부터 상기 코딩된 표현을 생성하는 것을 포함하는, 방법.
47. 조항 1 내지 조항 45 중 어느 한 조항에 있어서, 상기 전환을 수행하는 것은 상기 코딩된 표현으로부터 상기 현재 블록을 생성하는 것을 포함하는, 방법.
48. 프로세서 및 명령어들을 갖는 비일시적 메모리를 포함하는 비디오 시스템에서의 장치로서, 상기 명령어들은 상기 프로세서에 의한 실행시에, 상기 프로세서로 하여금 조항 1 내지 조항 47 중 어느 한 조항의 방법을 구현하게 하는, 장치.
49. 비일시적 컴퓨터 판독가능 매체 상에 저장되는 컴퓨터 프로그램 제품으로서, 상기 컴퓨터 프로그램 제품은 조항 1 내지 조항 47 중 어느 한 조항의 방법을 실행하기 위한 프로그램 코드를 포함하는, 컴퓨터 프로그램 제품.
제6 조항 세트는, 예를 들어, 예 16 및 예 17을 포함하는, 이전 섹션에 열거된 개시된 기법들의 특정 특징들 및 양태들을 설명한다.
1. 비디오 처리 방법으로서, 비디오의 현재 비디오 블록과 상기 비디오의 코딩된 표현 사이의 전환을 위해 코딩 모드가 인에이블된다고 결정을 행하는 단계; 및 팔레트 모드를 사용하여 상기 전환을 수행하는 단계를 포함하고, 적어도 대표 샘플 값들의 팔레트가 상기 현재 비디오 블록에 대해 사용되고, 상기 코딩 모드에서, 상기 현재 비디오 블록은 제1 도메인 및 제2 도메인에서의 샘플들에 기초하여 구성되고/되거나 크로마 잔차가 루마 종속적 방식으로 스케일링되는, 방법.
2. 조항 1에 있어서, 상기 대표 샘플 값들의 팔레트는 1) 팔레트 예측자들, 또는 2) 이스케이프된 샘플들 중 적어도 하나를 포함하는, 방법.
3. 조항 1에 있어서, 상기 대표 샘플 값들은 상기 제1 도메인에서의 값들을 나타내는, 방법.
4. 조항 1에 있어서, 상기 대표 샘플 값들은 상기 제2 도메인에서의 값들을 나타내는, 방법.
5. 조항 1 또는 조항 2에 있어서, 상기 팔레트 모드에서 사용되고 상기 코딩된 표현에 포함되는 팔레트 예측자들은 상기 제1 도메인 또는 상기 제2 도메인에 있는, 방법.
6. 조항 1 또는 조항 2에 있어서, 상기 팔레트 모드에서 사용되고 상기 코딩된 표현에 포함되는 이스케이프 샘플들은 상기 제1 도메인 또는 상기 제2 도메인에 있는, 방법.
7. 조항 1 또는 조항 2에 있어서, 상기 팔레트 모드에서 사용되고 상기 코딩된 표현에 포함되는 팔레트 예측자들 및/또는 이스케이프 샘플들이 상기 제2 도메인에 있을 때, 상기 제2 도메인에서의 제1 재구성 블록이 먼저 생성되어 후속 블록들을 코딩하는 데 이용되는, 방법.
8. 조항 7에 있어서, 수정된 팔레트 모드에서 사용되고 상기 코딩된 표현에 포함되는 팔레트 예측자들 및/또는 이스케이프 샘플들이 상기 제2 도메인에 있을 때, 상기 제1 도메인에서의 최종 재구성 블록은 상기 제1 재구성 블록 및 역 재성형 프로세스를 사용하여 생성되는, 방법.
9. 조항 8에 있어서, 상기 역 재성형 프로세스는 상기 디블록킹 필터 프로세스 직전에 호출되는, 방법.
10. 조항 1 내지 조항 9 중 어느 한 조항에 있어서, 상기 전환은 상기 현재 비디오 블록의 컬러 성분에 기초하여 수행되는, 방법.
11. 조항 10에 있어서, 상기 컬러 성분은 루마 성분인, 방법.
12. 비디오 처리 방법으로서, 비디오의 현재 비디오 블록과 상기 비디오의 코딩된 표현 사이의 전환을 위해, 상기 현재 비디오 블록이 적어도 대표 샘플 값들의 팔레트가 상기 현재 비디오 블록을 코딩하기 위해 사용되는 팔레트 모드에서 코딩된다고 결정을 행하는 단계; 및 상기 결정으로 인해, 코딩 모드를 디스에이블함으로써 상기 전환을 수행하는 단계를 포함하고, 상기 코딩 모드가 비디오 블록에 적용될 때, 상기 비디오 블록은 루마 종속적 방식으로 스케일링되는 크로마 잔차에 기초하여 구성되는, 방법.
13. 조항 12에 있어서, 상기 현재 비디오 블록이 상기 팔레트 모드에서 코딩될 때, 상기 코딩 모드는 디스에이블되는, 방법.
14. 비디오 처리 방법으로서, 비디오의 제1 비디오 블록과 상기 비디오의 코딩된 표현 사이의 전환을 수행하는 단계 - 상기 전환은 제1 코딩 모드, 및 적어도 대표 픽셀 값들의 팔레트가 상기 현재 비디오 블록을 코딩하기 위해 사용되는 팔레트 코딩 모드를 사용함 - ; 및 상기 팔레트 코딩 모드를 사용하지 않고 코딩되는 상기 비디오의 제2 비디오 블록과 상기 비디오의 코딩된 표현 사이의 전환을 수행하는 단계를 포함하고, 상기 제2 비디오 블록의 전환은 상기 제1 코딩 모드를 사용하고, 상기 제1 코딩 모드가 비디오 블록에 적용될 때, 상기 비디오 블록은 제1 도메인 및 제2 도메인에 기초하여 구성되고/되거나 크로마 잔차가 루마 종속적 방식으로 스케일링되고, 상기 제1 코딩 모드는 상기 제1 비디오 블록 및 제2 비디오 블록에 상이한 방식들로 적용되는, 방법.
15. 조항 14에 있어서, 상기 제1 비디오 블록에 적용되는 상기 제1 코딩 모드는 상기 제1 도메인과 상기 제2 도메인 사이에서 샘플들을 전환하는 데 사용되는 순방향 재성형 및 역 재성형의 사용을 디스에이블하는 것으로 인해 상기 제2 비디오 블록에 적용되는 상기 제1 코딩 모드와 상이한, 방법.
16. 조항 14에 있어서, 상기 제1 비디오 블록에 적용되는 상기 제1 코딩 모드는 상기 제1 도메인과 상기 제2 도메인 사이에서 샘플들을 전환하는 데 사용되는 상이한 재성형 및/또는 상이한 역 재성형 함수를 사용하는 것으로 인해 상기 제2 비디오 블록에 적용되는 상기 제1 코딩 모드와 상이한, 방법.
17. 조항 1 내지 조항 11 및 조항 14 내지 조항 16 중 어느 한 조항에 있어서, 상기 제1 도메인은 원래 도메인이고, 상기 제2 도메인은 루마 샘플들을 특정 값들에 맵핑하는 LMCS(luma mapping with chroma scaling) 방법을 사용하는 재성형된 도메인인, 방법.
18. 조항 17에 있어서, 상기 LMCS는 상기 루마 샘플들을 상기 특정 값들에 맵핑하기 위해 PWL(piecewise linear) 모델을 사용하는, 방법.
19. 조항 1 내지 조항 18 중 어느 한 조항에 있어서, 상기 전환을 수행하는 것은 상기 현재 블록으로부터 상기 코딩된 표현을 생성하는 것을 포함하는, 방법.
20. 조항 1 내지 조항 18 중 어느 한 조항에 있어서, 상기 전환을 수행하는 것은 상기 코딩된 표현으로부터 상기 현재 블록을 생성하는 것을 포함하는, 방법.
21. 프로세서 및 명령어들을 갖는 비일시적 메모리를 포함하는 비디오 시스템에서의 장치로서, 상기 명령어들은 상기 프로세서에 의한 실행시에, 상기 프로세서로 하여금 조항 1 내지 조항 21 중 어느 한 조항의 방법을 구현하게 하는, 장치.
22. 비일시적 컴퓨터 판독가능 매체 상에 저장되는 컴퓨터 프로그램 제품으로서, 상기 컴퓨터 프로그램 제품은 조항 1 내지 조항 21 중 어느 한 조항의 방법을 실행하기 위한 프로그램 코드를 포함하는, 컴퓨터 프로그램 제품.
제7 조항 세트는, 예를 들어, 예 18 및 예 19를 포함하는, 이전 섹션에 열거된 개시된 기법들의 특정 특징들 및 양태들을 설명한다.
1. 비디오 처리 방법으로서, 비디오의 현재 비디오 블록과 상기 비디오의 코딩된 표현 사이의 전환을 위해 코딩 모드가 인에이블된다고 결정을 행하는 단계; 및 상기 현재 비디오 블록을 포함하는 픽처를 가리키는 적어도 블록 벡터를 사용하여 예측 블록을 생성하는 인트라 블록 카피(intra block copy) 모드를 사용하여 상기 전환을 수행하는 단계를 포함하고, 상기 코딩 모드에서, 상기 현재 비디오 블록은 제1 도메인 및 제2 도메인에서의 샘플들에 기초하여 구성되고/되거나 크로마 잔차가 루마 종속적 방식으로 스케일링되는, 방법.
2. 조항 1에 있어서, 상기 예측 블록은 상기 제1 도메인에서 생성되는, 방법.
3. 조항 1에 있어서, 잔차 블록은 상기 제1 도메인에서의 상기 코딩된 표현으로 표현되는, 방법.
4. 조항 1에 있어서, 상기 예측 블록은 상기 제2 도메인에서 생성되는, 방법.
5. 조항 1에 있어서, 잔차 블록은 상기 제2 도메인에서의 상기 코딩된 표현으로 표현되는, 방법.
6. 조항 4 또는 조항 5에 있어서, 상기 현재 비디오 블록의 제1 구성 블록은 상기 제2 도메인에서의 예측 블록과 상기 잔차 블록의 합에 기초하여 획득되고, 상기 제1 구성 블록은 후속 비디오 블록과 상기 비디오의 코딩된 표현 사이의 전환들을 위해 이용되는, 방법.
7. 조항 4 또는 조항 5에 있어서, 상기 현재 비디오 블록의 최종 구성 블록은 상기 제1 구성 블록을 상기 제2 도메인으로부터 상기 제1 도메인으로 전환하기 위해 제1 구성 블록에 적용되는 역 재성형에 기초하여 획득되는, 방법.
8. 조항 1 내지 조항 7 중 어느 한 조항에 있어서, 상기 전환은 상기 현재 비디오 블록의 컬러 성분에 기초하여 수행되는, 방법.
9. 조항 8에 있어서, 상기 컬러 성분은 루마 성분인, 방법.
10. 비디오 처리 방법으로서, 비디오의 현재 비디오 블록과 상기 비디오의 코딩된 표현 사이의 전환을 위해, 상기 현재 비디오 블록을 코딩하기 위해 상기 현재 비디오 블록을 포함하는 비디오 프레임을 가리키는 적어도 블록 벡터를 사용하여 예측 블록을 생성하는 인트라 블록 카피(IBC) 모드에서 상기 현재 비디오 블록이 코딩된다고 결정을 행하는 단계; 및 상기 결정으로 인해, 코딩 모드를 디스에이블함으로써 상기 전환을 수행하는 단계를 포함하고, 상기 코딩 모드가 비디오 블록에 적용될 때, 상기 비디오 블록은 제1 도메인 및 제2 도메인에 기초하여 구성되고/되거나 크로마 잔차가 루마 종속적 방식으로 스케일링되는, 방법.
11. 조항 10에 있어서, 상기 현재 비디오 블록이 상기 IBC 모드에서 코딩될 때, 상기 코딩 모드는 디스에이블되는, 방법.
12. 비디오 처리 방법으로서, 비디오의 제1 비디오 블록과 상기 비디오의 코딩된 표현 사이의 전환을 수행하는 단계 - 상기 전환은 상기 현재 비디오 블록을 포함하는 비디오 프레임을 가리키는 적어도 블록 벡터를 사용하여 예측 블록을 생성하는 인트라 블록 카피 모드 및 제1 코딩 모드를 사용함 - ; 및 상기 인트라 블록 카피 모드를 사용하지 않고 코딩되는 상기 비디오의 제2 비디오 블록과 상기 비디오의 코딩된 표현 사이의 전환을 수행하는 단계를 포함하고, 상기 제2 비디오 블록의 전환은 상기 제1 코딩 모드를 사용하고, 상기 제1 코딩 모드가 비디오 블록에 적용될 때, 상기 비디오 블록은 제1 도메인 및 제2 도메인에 기초하여 구성되고/되거나 크로마 잔차가 루마 종속적 방식으로 스케일링되고, 상기 제1 코딩 모드는 상기 제1 비디오 블록 및 상기 제2 비디오 블록에 상이한 방식들로 적용되는, 방법.
13. 조항 12에 있어서, 상기 제1 비디오 블록에 적용되는 상기 제1 코딩 모드는 상기 제1 도메인과 상기 제2 도메인 사이에서 샘플들을 전환하는 데 사용되는 순방향 재성형 및 역 재성형의 사용을 디스에이블하는 것으로 인해 상기 제2 비디오 블록에 적용되는 상기 제1 코딩 모드와 상이한, 방법.
14. 조항 12에 있어서, 상기 제1 비디오 블록에 적용되는 상기 제1 코딩 모드는 상기 제1 도메인과 상기 제2 도메인 사이에서 샘플들을 전환하는 데 사용되는 상이한 순방향 재성형 및/또는 상이한 역 재성형을 사용하는 것으로 인해 상기 제2 비디오 블록에 적용되는 상기 제1 코딩 모드와 상이한, 방법.
15. 조항 1 내지 조항 14 중 어느 한 조항에 있어서, 상기 제1 도메인은 원래 도메인이고, 상기 제2 도메인은 루마 샘플들을 특정 값들에 맵핑하는 LMCS(luma mapping with chroma scaling) 방법을 사용하는 재성형된 도메인인, 방법.
16. 조항 15에 있어서, 상기 LMCS는 상기 루마 샘플들을 상기 특정 값들에 맵핑하기 위해 PWL(piecewise linear) 모델을 사용하는, 방법.
17. 조항 1 내지 조항 16 중 어느 한 조항에 있어서, 상기 전환을 수행하는 것은 상기 현재 블록으로부터 상기 코딩된 표현을 생성하는 것을 포함하는, 방법.
18. 조항 1 내지 조항 16 중 어느 한 조항에 있어서, 상기 전환을 수행하는 것은 상기 코딩된 표현으로부터 상기 현재 블록을 생성하는 것을 포함하는, 방법.
19. 프로세서 및 명령어들을 갖는 비일시적 메모리를 포함하는 비디오 시스템에서의 장치로서, 상기 명령어들은 상기 프로세서에 의한 실행시에, 상기 프로세서로 하여금 조항 1 내지 조항 18 중 어느 한 조항의 방법을 구현하게 하는, 장치.
20. 비일시적 컴퓨터 판독가능 매체 상에 저장되는 컴퓨터 프로그램 제품으로서, 상기 컴퓨터 프로그램 제품은 조항 1 내지 조항 18 중 어느 한 조항의 방법을 실행하기 위한 프로그램 코드를 포함하는, 컴퓨터 프로그램 제품.
제8 조항 세트는, 예를 들어, 예 20 내지 예 27을 포함하는, 이전 섹션에 열거된 개시된 기법들의 특정 특징들 및 양태들을 설명한다.
1. 비디오 처리 방법으로서, 비디오의 현재 비디오 블록과 상기 비디오의 코딩된 표현 사이의 전환을 위해 코딩 모드가 인에이블된다고 결정을 행하는 단계; 및 블록 기반 델타 펄스 코드 변조(block-based delta pulse code modulation, BDPCM) 모드를 사용하여 상기 전환을 수행하는 단계를 포함하고, 상기 코딩 모드에서, 상기 현재 비디오 블록은 제1 도메인 및 제2 도메인에서의 샘플들에 기초하여 구성되고/되거나 크로마 잔차가 루마 종속적 방식으로 스케일링되는, 방법.
2. 조항 1에 있어서, 상기 현재 비디오 블록의 예측 블록은 상기 제1 도메인에서 생성되는, 방법.
3. 조항 1에 있어서, 상기 현재 비디오 블록의 잔차 블록은 상기 제1 도메인에서의 상기 코딩된 표현으로 표현되는, 방법.
4. 조항 1에 있어서, 상기 현재 비디오 블록의 예측 블록은 상기 제2 도메인에서 생성되는, 방법.
5. 조항 1에 있어서, 상기 현재 비디오 블록의 잔차 블록은 상기 제2 도메인에서의 상기 코딩된 표현으로 표현되는, 방법.
6. 조항 4 또는 조항 5에 있어서, 상기 현재 비디오 블록의 제1 구성 블록은 상기 제2 도메인에서의 예측 블록과 상기 잔차 블록의 합에 기초하여 획득되고, 상기 제1 구성 블록은 후속 비디오 블록과 상기 비디오의 코딩된 표현 사이의 전환들을 위해 이용되는, 방법.
7. 조항 4 또는 조항 5에 있어서, 상기 현재 비디오 블록의 최종 구성 블록은 상기 제1 구성 블록을 상기 제2 도메인으로부터 상기 제1 도메인으로 전환하기 위해 제1 구성 블록에 적용되는 역 재성형에 기초하여 획득되는, 방법.
8. 비디오 처리 방법으로서, 비디오의 현재 비디오 블록과 상기 비디오의 코딩된 표현 사이의 전환을 위해, 상기 현재 비디오 블록이 블록 기반 델타 펄스 코드 변조(BDPCM) 모드를 사용하여 코딩된다고 결정을 행하는 단계; 및 상기 결정으로 인해, 코딩 모드를 디스에이블함으로써 상기 전환을 수행하는 단계를 포함하고, 상기 코딩 모드가 비디오 블록에 적용될 때, 상기 비디오 블록은 제1 도메인 및 제2 도메인에 기초하여 구성되고/되거나 크로마 잔차가 루마 종속적 방식으로 스케일링되는, 방법.
9. 조항 8에 있어서, 상기 현재 비디오 블록이 상기 BDPCM 모드에서 코딩될 때, 상기 코딩 모드는 디스에이블되는, 방법.
10. 비디오 처리 방법으로서, 비디오의 제1 비디오 블록과 상기 비디오의 코딩된 표현 사이의 전환을 수행하는 단계 - 상기 제1 비디오 블록의 전환은 제1 코딩 모드 및 블록 기반 델타 펄스 코드 변조(BDPCM) 모드를 사용함 - ; 및 상기 비디오의 제2 비디오 블록과 상기 비디오의 코딩된 표현 사이의 전환을 수행하는 단계를 포함하고, 상기 제2 비디오 블록은 상기 BDPCM 모드를 사용하지 않고 코딩되고, 상기 제2 비디오 블록의 전환은 상기 제1 코딩 모드를 사용하며, 상기 제1 코딩 모드가 비디오 블록에 적용될 때, 상기 비디오 블록은 제1 도메인 및 제2 도메인에 기초하여 구성되고/되거나 크로마 잔차가 루마 종속적 방식으로 스케일링되고, 상기 제1 코딩 모드는 상기 제1 비디오 블록 및 상기 제2 비디오 블록에 상이한 방식들로 적용되는, 방법.
11. 조항 10에 있어서, 상기 제1 비디오 블록에 적용되는 상기 제1 코딩 모드는 상기 제1 도메인과 상기 제2 도메인 사이에서 샘플들을 전환하는 데 사용되는 순방향 재성형 및 역 재성형의 사용을 디스에이블하는 것으로 인해 상기 제2 비디오 블록에 적용되는 상기 제1 코딩 모드와 상이한, 방법.
12. 조항 10에 있어서, 상기 제1 비디오 블록에 적용되는 상기 제1 코딩 모드는 상기 제1 도메인과 상기 제2 도메인 사이에서 샘플들을 전환하는 데 사용되는 상이한 순방향 재성형 및/또는 상이한 역 재성형을 사용하는 것으로 인해 상기 제2 비디오 블록에 적용되는 상기 제1 코딩 모드와 상이한, 방법.
13. 비디오 처리 방법으로서, 비디오의 현재 비디오 블록과 상기 비디오의 코딩된 표현 사이의 전환을 위해 코딩 모드가 인에이블된다고 결정을 행하는 단계; 및 상기 현재 비디오 블록을 코딩하는데 있어서 예측 잔차에 대한 변환이 스킵되는 변환 스킵(transform skip) 모드를 사용하여 상기 전환을 수행하는 단계를 포함하고, 상기 코딩 모드에서, 상기 현재 비디오 블록은 제1 도메인 및 제2 도메인에서의 샘플들에 기초하여 구성되고/되거나 크로마 잔차가 루마 종속적 방식으로 스케일링되는, 방법.
14. 조항 13에 있어서, 상기 현재 비디오 블록의 예측 블록은 상기 제1 도메인에서 생성되는, 방법.
15. 조항 13에 있어서, 상기 현재 비디오 블록의 잔차 블록은 상기 제1 도메인에서의 상기 코딩된 표현으로 표현되는, 방법.
16. 조항 13에 있어서, 상기 현재 비디오 블록의 예측 블록은 상기 제2 도메인에서 생성되는, 방법.
17. 조항 13에 있어서, 잔차 블록은 상기 제2 도메인에서의 상기 코딩된 표현으로 표현되는, 방법.
18. 조항 16 또는 조항 17에 있어서, 상기 현재 비디오 블록의 제1 구성 블록은 상기 제2 도메인에서의 예측 블록과 상기 잔차 블록의 합에 기초하여 획득되고, 상기 제1 구성 블록은 후속 비디오 블록과 상기 비디오의 코딩된 표현 사이의 전환들을 위해 이용되는, 방법.
19. 조항 16 또는 조항 17에 있어서, 상기 현재 비디오 블록의 최종 구성 블록은 상기 제1 구성 블록을 상기 제2 도메인으로부터 상기 제1 도메인으로 전환하기 위해 제1 구성 블록에 적용되는 역 재성형에 기초하여 획득되는, 방법.
20. 비디오 처리 방법으로서, 비디오의 현재 비디오 블록과 상기 비디오의 코딩된 표현 사이의 전환을 위해, 상기 현재 비디오 블록을 코딩하는데 있어서 예측 잔차에 대한 변환이 스킵되는 변환 스킵 모드에서 상기 현재 비디오 블록이 코딩된다고 결정을 행하는 단계; 및 상기 결정으로 인해, 코딩 모드를 디스에이블함으로써 상기 전환을 수행하는 단계를 포함하고, 상기 코딩 모드가 비디오 블록에 적용될 때, 상기 비디오 블록은 제1 도메인 및 제2 도메인에 기초하여 구성되고/되거나 크로마 잔차가 루마 종속적 방식으로 스케일링되는, 방법.
21. 조항 20에 있어서, 상기 현재 비디오 블록이 상기 변환 스킵 모드에서 코딩될 때, 상기 코딩 모드는 디스에이블되는, 방법.
22. 비디오 처리 방법으로서, 비디오의 제1 비디오 블록과 상기 비디오의 코딩된 표현 사이의 전환을 수행하는 단계 - 상기 제1 비디오 블록의 전환은 제1 코딩 모드 및 상기 현재 비디오 블록을 코딩하는데 있어서 예측 잔차에 대한 변환이 스킵되는 변환 스킵 모드를 사용함 - ; 및 상기 비디오의 제2 비디오 블록과 상기 비디오의 코딩된 표현 사이의 전환을 수행하는 단계를 포함하고, 상기 제2 비디오 블록은 상기 변환 스킵 모드를 사용하지 않고 코딩되고, 상기 제2 비디오 블록의 전환은 상기 제1 코딩 모드를 사용하며, 상기 제1 코딩 모드가 비디오 블록에 적용될 때, 상기 비디오 블록은 제1 도메인 및 제2 도메인에 기초하여 구성되고/되거나 크로마 잔차가 루마 종속적 방식으로 스케일링되고, 상기 제1 코딩 모드는 상기 제1 비디오 블록 및 상기 제2 비디오 블록에 상이한 방식들로 적용되는, 방법.
23. 조항 22에 있어서, 상기 제1 비디오 블록에 적용되는 상기 제1 코딩 모드는 상기 제1 도메인과 상기 제2 도메인 사이에서 샘플들을 전환하는 데 사용되는 순방향 재성형 및 역 재성형의 사용을 디스에이블하는 것으로 인해 상기 제2 비디오 블록에 적용되는 상기 제1 코딩 모드와 상이한, 방법.
24. 조항 22에 있어서, 상기 제1 비디오 블록에 적용되는 상기 제1 코딩 모드는 상기 제1 도메인과 상기 제2 도메인 사이에서 샘플들을 전환하는 데 사용되는 상이한 순방향 재성형 및/또는 상이한 역 재성형을 사용하는 것으로 인해 상기 제2 비디오 블록에 적용되는 상기 제1 코딩 모드와 상이한, 방법.
25. 비디오 처리 방법으로서, 비디오의 현재 비디오 블록과 상기 비디오의 코딩된 표현 사이의 전환을 위해 코딩 모드가 인에이블된다고 결정을 행하는 단계; 및 상기 현재 비디오 블록이 변환 및 변환-도메인 양자화를 적용하지 않고 코딩되는 인트라 펄스 코드 변조 모드를 사용하여 상기 전환을 수행하는 단계를 포함하고, 상기 코딩 모드에서, 상기 현재 비디오 블록은 제1 도메인 및 제2 도메인에서의 샘플들에 기초하여 구성되고/되거나 크로마 잔차가 루마 종속적 방식으로 스케일링되는, 방법.
26. 조항 25에 있어서, 상기 현재 비디오 블록의 예측 블록은 상기 제1 도메인에서 생성되는, 방법.
27. 조항 25에 있어서, 상기 현재 비디오 블록의 잔차 블록은 상기 제1 도메인에서의 상기 코딩된 표현으로 표현되는, 방법.
28. 조항 25에 있어서, 상기 현재 비디오 블록의 예측 블록은 상기 제2 도메인에서 생성되는, 방법.
29. 조항 25에 있어서, 잔차 블록은 상기 제2 도메인에서의 상기 코딩된 표현으로 표현되는, 방법.
30. 조항 28 또는 조항 29에 있어서, 상기 현재 비디오 블록의 제1 구성 블록은 상기 제2 도메인에서의 예측 블록과 상기 잔차 블록의 합에 기초하여 획득되고, 상기 제1 구성 블록은 후속 비디오 블록과 상기 비디오의 코딩된 표현 사이의 전환들을 위해 이용되는, 방법.
31. 조항 28 또는 조항 29에 있어서, 상기 현재 비디오 블록의 최종 구성 블록은 상기 제1 구성 블록을 상기 제2 도메인으로부터 상기 제1 도메인으로 전환하기 위해 제1 구성 블록에 적용되는 역 재성형에 기초하여 획득되는, 방법.
32. 비디오 처리 방법으로서, 비디오의 현재 비디오 블록과 상기 비디오의 코딩된 표현 사이의 전환을 위해, 상기 현재 비디오 블록이 변환 및 변환-도메인 양자화를 적용하지 않고 코딩되는 인트라 펄스 코드 변조 모드에서 상기 현재 비디오 블록이 코딩된다고 결정을 행하는 단계; 및 상기 결정으로 인해, 코딩 모드를 디스에이블함으로써 상기 전환을 수행하는 단계를 포함하고, 상기 코딩 모드가 비디오 블록에 적용될 때, 상기 비디오 블록은 제1 도메인 및 제2 도메인에 기초하여 구성되고/되거나 크로마 잔차가 루마 종속적 방식으로 스케일링되는, 방법.
33. 조항 32에 있어서, 상기 현재 비디오 블록이 상기 인트라 펄스 코드 변조 모드에서 코딩될 때, 상기 코딩 모드는 디스에이블되는, 방법.
34. 비디오 처리 방법으로서, 비디오의 제1 비디오 블록과 상기 비디오의 코딩된 표현 사이의 전환을 수행하는 단계 - 상기 제1 비디오 블록의 전환은 제1 코딩 모드 및 상기 현재 비디오 블록이 변환 및 변환-도메인 양자화를 적용하지 않고 코딩되는 인트라 펄스 코드 변조 모드를 사용함 - ; 및 상기 비디오의 제2 비디오 블록과 상기 비디오의 코딩된 표현 사이의 전환을 수행하는 단계를 포함하고, 상기 제2 비디오 블록은 상기 인트라 펄스 코드 변조 모드를 사용하지 않고 코딩되고, 상기 제2 비디오 블록의 전환은 상기 제1 코딩 모드를 사용하며, 상기 제1 코딩 모드가 비디오 블록에 적용될 때, 상기 비디오 블록은 제1 도메인 및 제2 도메인에 기초하여 구성되고/되거나 크로마 잔차가 루마 종속적 방식으로 스케일링되고, 상기 제1 코딩 모드는 상기 제1 비디오 블록 및 상기 제2 비디오 블록에 상이한 방식들로 적용되는, 방법.
35. 조항 34에 있어서, 상기 제1 비디오 블록에 적용되는 상기 제1 코딩 모드는 상기 제1 도메인과 상기 제2 도메인 사이에서 샘플들을 전환하는 데 사용되는 순방향 재성형 및 역 재성형의 사용을 디스에이블하는 것으로 인해 상기 제2 비디오 블록에 적용되는 상기 제1 코딩 모드와 상이한, 방법.
36. 조항 34에 있어서, 상기 제1 비디오 블록에 적용되는 상기 제1 코딩 모드는 상기 제1 도메인과 상기 제2 도메인 사이에서 샘플들을 전환하는 데 사용되는 상이한 순방향 재성형 및/또는 상이한 역 재성형을 사용하는 것으로 인해 상기 제2 비디오 블록에 적용되는 상기 제1 코딩 모드와 상이한, 방법.
37. 비디오 처리 방법으로서, 비디오의 현재 비디오 블록과 상기 비디오의 코딩된 표현 사이의 전환을 위해 코딩 모드가 인에이블된다고 결정을 행하는 단계; 및 상기 현재 비디오 블록이 변환 및 양자화 없이 무손실 코딩되는 수정된 트랜스퀀트-바이패스(transquant-bypass) 모드를 사용하여 상기 전환을 수행하는 단계를 포함하고, 상기 코딩 모드에서, 상기 현재 비디오 블록은 제1 도메인 및 제2 도메인에서의 샘플들에 기초하여 구성되고/되거나 크로마 잔차가 루마 종속적 방식으로 스케일링되는, 방법.
38. 조항 37에 있어서, 상기 현재 비디오 블록의 예측 블록은 상기 제1 도메인에서 생성되는, 방법.
39. 조항 37에 있어서, 상기 현재 비디오 블록의 잔차 블록은 상기 제1 도메인에서의 상기 코딩된 표현으로 표현되는, 방법.
40. 조항 37에 있어서, 상기 현재 비디오 블록의 예측 블록은 상기 제2 도메인에서 생성되는, 방법.
41. 조항 37에 있어서, 잔차 블록은 상기 제2 도메인에서의 상기 코딩된 표현으로 표현되는, 방법.
42. 조항 40 또는 조항 41에 있어서, 상기 현재 비디오 블록의 제1 구성 블록은 상기 제2 도메인에서의 예측 블록과 상기 잔차 블록의 합에 기초하여 획득되고, 상기 제1 구성 블록은 후속 비디오 블록과 상기 비디오의 코딩된 표현 사이의 전환들을 위해 이용되는, 방법.
43. 조항 40 또는 조항 41에 있어서, 상기 현재 비디오 블록의 최종 구성 블록은 상기 제1 구성 블록을 상기 제2 도메인으로부터 상기 제1 도메인으로 전환하기 위해 제1 구성 블록에 적용되는 역 재성형에 기초하여 획득되는, 방법.
44. 비디오 처리 방법으로서, 비디오의 현재 비디오 블록과 상기 비디오의 코딩된 표현 사이의 전환을 위해, 상기 현재 비디오 블록이 변환 및 양자화 없이 무손실 코딩되는 트랜스퀀트-바이패스 모드에서 상기 현재 비디오 블록이 코딩된다고 결정을 행하는 단계; 및 상기 결정으로 인해, 코딩 모드를 디스에이블함으로써 상기 전환을 수행하는 단계를 포함하고, 상기 코딩 모드가 비디오 블록에 적용될 때, 상기 비디오 블록은 제1 도메인 및 제2 도메인에 기초하여 구성되고/되거나 크로마 잔차가 루마 종속적 방식으로 스케일링되는, 방법.
45. 조항 44에 있어서, 상기 현재 비디오 블록이 상기 인트라 펄스 코드 변조 모드에서 코딩될 때, 상기 코딩 모드는 디스에이블되는, 방법.
46. 비디오 처리 방법으로서, 비디오의 제1 비디오 블록과 상기 비디오의 코딩된 표현 사이의 전환을 수행하는 단계 - 상기 제1 비디오 블록의 전환은 제1 코딩 모드 및 상기 현재 비디오 블록이 변환 및 양자화 없이 무손실 코딩되는 트랜스퀀트-바이패스 모드를 사용함 - ; 및 상기 비디오의 제2 비디오 블록과 상기 비디오의 코딩된 표현 사이의 전환을 수행하는 단계를 포함하고, 상기 제2 비디오 블록은 상기 트랜스퀀트-바이패스 모드를 사용하지 않고 코딩되고, 상기 제2 비디오 블록의 전환은 상기 제1 코딩 모드를 사용하며, 상기 제1 코딩 모드가 비디오 블록에 적용될 때, 상기 비디오 블록은 제1 도메인 및 제2 도메인에 기초하여 구성되고/되거나 크로마 잔차가 루마 종속적 방식으로 스케일링되고, 상기 제1 코딩 모드는 상기 제1 비디오 블록 및 상기 제2 비디오 블록에 상이한 방식들로 적용되는, 방법.
47. 조항 46에 있어서, 상기 제1 비디오 블록에 적용되는 상기 제1 코딩 모드는 상기 제1 도메인과 상기 제2 도메인 사이에서 샘플들을 전환하는 데 사용되는 순방향 재성형 및 역 재성형의 사용을 디스에이블하는 것으로 인해 상기 제2 비디오 블록에 적용되는 상기 제1 코딩 모드와 상이한, 방법.
48. 조항 46에 있어서, 상기 제1 비디오 블록에 적용되는 상기 제1 코딩 모드는 상기 제1 도메인과 상기 제2 도메인 사이에서 샘플들을 전환하는 데 사용되는 상이한 순방향 재성형 및/또는 상이한 역 재성형을 사용하는 것으로 인해 상기 제2 비디오 블록에 적용되는 상기 제1 코딩 모드와 상이한, 방법.
49. 조항 1 내지 조항 48 중 어느 한 조항에 있어서, 상기 전환은 상기 현재 비디오 블록의 컬러 성분에 기초하여 수행되는, 방법.
50. 조항 49에 있어서, 상기 컬러 성분은 루마 성분인, 방법.
51. 조항 1 내지 조항 50 중 어느 한 조항에 있어서, 상기 제1 도메인은 원래 도메인이고, 상기 제2 도메인은 루마 샘플들을 특정 값들에 맵핑하는 LMCS(luma mapping with chroma scaling) 방법을 사용하는 재성형된 도메인인, 방법.
52. 조항 51에 있어서, 상기 LMCS는 상기 루마 샘플들을 상기 특정 값들에 맵핑하기 위해 PWL(piecewise linear) 모델을 사용하는, 방법.
53. 조항 1 내지 조항 52 중 어느 한 조항에 있어서, 상기 전환을 수행하는 것은 상기 현재 블록으로부터 상기 코딩된 표현을 생성하는 것을 포함하는, 방법.
54. 조항 1 내지 조항 52 중 어느 한 조항에 있어서, 상기 전환을 수행하는 것은 상기 코딩된 표현으로부터 상기 현재 블록을 생성하는 것을 포함하는, 방법.
55. 프로세서 및 명령어들을 갖는 비일시적 메모리를 포함하는 비디오 시스템에서의 장치로서, 상기 명령어들은 상기 프로세서에 의한 실행시에, 상기 프로세서로 하여금 조항 1 내지 조항 54 중 어느 한 조항의 방법을 구현하게 하는, 장치.
56. 비일시적 컴퓨터 판독가능 매체 상에 저장되는 컴퓨터 프로그램 제품으로서, 상기 컴퓨터 프로그램 제품은 조항 1 내지 조항 54 중 어느 한 조항의 방법을 실행하기 위한 프로그램 코드를 포함하는, 컴퓨터 프로그램 제품.
제9 조항 세트는, 예를 들어, 예 30 내지 예 34 및 예 41을 포함하는, 이전 섹션에 열거된 개시된 기법들의 특정 특징들 및 양태들을 설명한다.
1. 비디오 처리 방법으로서, 비디오의 현재 비디오 블록과 상기 비디오의 코딩된 표현 사이의 전환을 수행하는 단계를 포함하고, 상기 전환은 상기 현재 비디오 블록이 제1 도메인 및 제2 도메인에 기초하여 구성되고/되거나 크로마 잔차가 루마 종속적 방식으로 스케일링되는 코딩 모드를 사용하고, 상기 코딩 모드에 사용되는 정보는 시퀀스 파라미터 세트(sequence parameter set, SPS), 비디오 파라미터 세트(video parameter set, VPS), 픽처 파라미터 세트(picture parameter set, PPS), 또는 적응적 루프 필터링(adaptive loop filtering, ALF) 파라미터들을 운반하는 데 사용되는 적응 파라미터 세트(adaptation parameter set, APS)와 상이한 파라미터 세트에서 시그널링되는, 방법.
2. 조항 1에 있어서, 상기 파라미터 세트는 픽처들에 걸쳐 공유되는, 방법.
3. 조항 1에 있어서, 상기 파라미터 세트는 상기 파라미터 세트의 식별자 또는 상기 파라미터 세트의 확장 데이터의 존재를 표시하는 플래그 중 적어도 하나를 포함하는 하나 이상의 신택스 요소를 포함하는, 방법.
4. 조항 1에 있어서, 상기 파라미터 세트는 픽처 내의 타일 그룹에 대해 특정적인, 방법.
5. 비디오 처리 방법으로서, 비디오의 현재 비디오 블록과 상기 비디오의 코딩된 표현 사이의 전환을 수행하는 단계를 포함하고, 상기 전환은 상기 현재 비디오 블록이 제1 도메인 및 제2 도메인에 기초하여 구성되고/되거나 크로마 잔차가 루마 종속적 방식으로 스케일링되는 코딩 모드를 사용하고, 상기 코딩 모드에 사용되는 정보는 적응적 루프 필터링(ALF) 정보와 함께 적응 파라미터 세트(APS)에서 시그널링되고, 상기 코딩 모드에 사용되는 정보와 상기 ALF 정보는 하나의 NAL 유닛에 포함되는, 방법.
6. 조항 5에 있어서, 상기 APS의 식별자는 타일 그룹 헤더에서 시그널링되는, 방법.
7. 비디오 처리 방법으로서, 비디오의 비디오 영역의 현재 비디오 블록과 상기 비디오의 코딩된 표현 사이의 전환을 수행하는 단계를 포함하며, 상기 전환은 상기 현재 비디오 블록이 제1 도메인 및 제2 도메인에 기초하여 구성되고/되거나 크로마 잔차가 루마 종속적 방식으로 스케일링되는 코딩 모드를 사용하고, 상기 코딩 모드에 사용되는 정보는 적응적 루프 필터링(ALF) 정보를 시그널링하는 데 사용되는 제2 타입의 적응 파라미터 세트(APS)와 상이한 제1 타입의 APS에서 시그널링되는, 방법.
8. 조항 7에 있어서, 상기 제2 타입의 APS의 식별자가 상기 비디오 영역 레벨에서 시그널링되는, 방법.
9. 조항 7에 있어서, 상기 제1 타입의 APS의 식별자가 상기 비디오 영역 레벨에서 시그널링되는, 방법.
10. 조항 7에 있어서, 상기 코딩된 표현에 포함된 상기 제1 타입의 APS는 적합성 비트스트림에 상기 ALF 정보를 포함하는 상기 제2 타입의 APS를 포함하는, 방법.
11. 조항 7에 있어서, 상기 코딩된 표현에 포함된 상기 제2 타입의 APS는 적합성 비트스트림에 상기 코딩 모드에 사용된 정보를 포함하는 상기 제1 타입의 APS를 포함하는, 방법.
12. 조항 7에 있어서, 상기 제1 타입의 APS 및 상기 제2 타입의 APS는 상이한 식별자들과 연관되는, 방법.
13. 조항 12에 있어서, 상기 제2 타입의 APS는 2N과 동일한 식별자를 갖고, N은 정수인, 방법.
14. 조항 13에 있어서, 상기 제1 타입의 APS는 2N+1과 동일한 식별자를 갖고, N은 정수인, 방법.
15. 비디오 처리 방법으로서, 비디오의 비디오 영역의 현재 비디오 블록과 상기 비디오의 코딩된 표현 사이의 전환을 수행하는 단계를 포함하며, 상기 전환은 상기 현재 비디오 블록이 제1 도메인 및 제2 도메인에 기초하여 구성되고/되거나 크로마 잔차가 루마 종속적 방식으로 스케일링되는 코딩 모드를 사용하고, 상기 비디오 영역은 적응 파라미터 세트 또는 상기 비디오를 처리하는 데 사용되는 지정된 타입의 데이터 구조 이전에 시그널링되는 파라미터 세트를 참조하는 것이 허용되지 않고, 상기 지정된 타입의 데이터 구조는 상기 비디오 영역 이전에 시그널링되는, 방법.
16. 조항 15에 있어서, 상기 데이터 구조는 네트워크 추상화 계층(NAL) 유닛, 타일 그룹, 시퀀스 파라미터 세트(SPS), 픽처 파라미터 세트(PPS), AUD(access unit delimiter) NAL, EoB(end of bitstream) NAL, EoS(end of sequence) NAL, IDR(instantaneous decoding refresh) NAL, CRA(clean random access) NAL, IRAP(intra random access point) 액세스 유닛, I 타일 그룹, 픽처, 또는 슬라이스 중 적어도 하나를 포함하는, 방법.
17. 비디오 처리 방법으로서, 비디오의 현재 비디오 블록과 상기 비디오의 코딩된 표현 사이의 전환을 수행하는 단계를 포함하고, 상기 전환은 상기 현재 비디오 블록이 제1 도메인 및 제2 도메인에 기초하여 구성되고/되거나 크로마 잔차가 루마 종속적 방식으로 스케일링되는 코딩 모드를 사용하고, 상기 비디오를 처리하는 데 사용되는 파라미터들을 포함하는 파라미터 세트의 신택스 요소는 적합성 비트스트림 내에 미리 정의된 값들을 갖는, 방법.
18. 조항 17에 있어서, 상기 미리 정의된 값들은 0 및 1인, 방법.
19. 조항 17에 있어서, 상기 미리 정의된 값들은 0 및 7인, 방법.
20. 조항 1 내지 조항 19 중 어느 한 조항에 있어서, 상기 비디오 영역은 타일 그룹, 픽처, 슬라이스, 또는 타일 중 적어도 하나를 포함하는, 방법.
21. 조항 1 내지 조항 20 중 어느 한 조항에 있어서, 상기 제1 도메인은 원래 도메인이고, 상기 제2 도메인은 루마 샘플들을 특정 값들에 맵핑하는 LMCS(luma mapping with chroma scaling) 방법을 사용하는 재성형된 도메인인, 방법.
22. 조항 21에 있어서, 상기 LMCS는 상기 루마 샘플들을 상기 특정 값들에 맵핑하기 위해 PWL(piecewise linear) 모델을 사용하는, 방법.
23. 조항 1 내지 조항 22 중 어느 한 조항에 있어서, 상기 전환을 수행하는 것은 상기 현재 블록으로부터 상기 코딩된 표현을 생성하는 것을 포함하는, 방법.
24. 조항 1 내지 조항 22 중 어느 한 조항에 있어서, 상기 전환을 수행하는 것은 상기 코딩된 표현으로부터 상기 현재 블록을 생성하는 것을 포함하는, 방법.
25. 프로세서 및 명령어들을 갖는 비일시적 메모리를 포함하는 비디오 시스템에서의 장치로서, 상기 명령어들은 상기 프로세서에 의한 실행시에, 상기 프로세서로 하여금 조항 1 내지 조항 24 중 어느 한 조항의 방법을 구현하게 하는, 장치.
26. 비일시적 컴퓨터 판독가능 매체 상에 저장되는 컴퓨터 프로그램 제품으로서, 상기 컴퓨터 프로그램 제품은 조항 1 내지 조항 24 중 어느 한 조항의 방법을 실행하기 위한 프로그램 코드를 포함하는, 컴퓨터 프로그램 제품.
전술한 것으로부터, 본 개시된 기술의 특정 실시예들은 예시를 위해 본 명세서에 설명되었지만, 다양한 수정들이 본 발명의 범위로부터 벗어나지 않고 이루어질 수 있는 것이 이해될 것이다. 따라서, 본 개시된 기술은, 첨부된 청구항들에 의한 것을 제외하고는 제한되지 않는다.
본 특허 문서에 설명된 주제 및 기능적 동작들의 구현들은 다양한 시스템들, 디지털 전자 회로에서, 또는 본 명세서에 개시된 구조들 및 그들의 구조적 균등물들을 포함하는 컴퓨터 소프트웨어, 펌웨어, 또는 하드웨어에서, 또는 이들 중 하나 이상의 것의 조합들에서 구현될 수 있다. 본 명세서에 설명된 주제의 구현들은 하나 이상의 컴퓨터 프로그램 제품, 즉, 데이터 처리 장치에 의한 실행을 위해 또는 데이터 처리 장치의 동작을 제어하기 위해 유형의 그리고 비일시적 컴퓨터 판독가능 매체 상에 인코딩된 컴퓨터 프로그램 명령어들의 하나 이상의 모듈로서 구현될 수 있다. 컴퓨터 판독가능 매체는 머신 판독가능 저장 디바이스, 머신 판독가능 저장 기판, 메모리 디바이스, 머신 판독가능 전파 신호를 달성하는 물질의 합성, 또는 이들 중 하나 이상의 것의 조합일 수 있다. "데이터 처리 유닛" 또는 "데이터 처리 장치"라는 용어는, 예로서 프로그램가능 프로세서, 컴퓨터, 또는 다중 프로세서 또는 컴퓨터를 포함한, 데이터를 처리하기 위한 모든 장치, 디바이스, 및 머신을 포함한다. 장치는, 하드웨어 외에도, 문제의(in question) 컴퓨터 프로그램을 위한 실행 환경을 생성하는 코드, 예를 들어, 프로세서 펌웨어, 프로토콜 스택, 데이터베이스 관리 시스템, 운영 체제, 또는 이들 중 하나 이상의 것의 조합을 구성하는 코드를 포함할 수 있다.
컴퓨터 프로그램(프로그램, 소프트웨어, 소프트웨어 애플리케이션, 스크립트 또는 코드로도 알려짐)은 컴파일되거나 해석된 언어를 포함하는 임의의 형태의 프로그래밍 언어로 쓰여질 수 있고, 이는 독립형(stand-alone) 프로그램으로서 또는 모듈, 컴포넌트, 서브루틴 또는 컴퓨팅 환경에서 사용을 위해 적합한 다른 유닛으로서를 포함하는 임의의 형태로 배치될 수 있다. 컴퓨터 프로그램은 파일 시스템 내의 파일에 반드시 대응하지는 않는다. 프로그램은 다른 프로그램들 또는 데이터(예를 들어, 마크업 언어 문서에 저장된 하나 이상의 스크립트)를 유지하는 파일의 일부분에, 문제의 프로그램에 전용된 단일 파일에, 또는 다수의 조정된 파일(coordinated file)(예를 들어, 하나 이상의 모듈, 서브 프로그램(sub program), 또는 코드 부분(portion of code)을 저장하는 파일)에 저장될 수 있다. 컴퓨터 프로그램은 하나의 컴퓨터 상에서, 또는 한 사이트에 배치되거나 다수의 사이트에 걸쳐 분산되어 통신 네트워크에 의해 상호연결되는 다수의 컴퓨터 상에서 실행되도록 배치될 수 있다.
본 명세서에 설명된 프로세스들 및 논리 흐름들은, 입력 데이터에 대해 동작하여 출력을 생성함으로써 기능들을 수행하기 위해 하나 이상의 컴퓨터 프로그램을 실행하는 하나 이상의 프로그램가능 프로세서에 의해 수행될 수 있다. 프로세스들 및 논리 흐름들은, 또한 특수 목적 논리 회로, 예를 들어, FPGA(field programmable gate array) 또는 ASIC(application specific integrated circuit)로서 구현될 수 있다.
컴퓨터 프로그램을 실행하는데 적합한 프로세서들은, 예로서, 범용 마이크로프로세서와 특수 목적 마이크로프로세서 둘 다, 및 임의의 종류의 디지털 컴퓨터의 임의의 하나 이상의 프로세서를 포함한다. 일반적으로, 프로세서는 판독 전용 메모리 또는 랜덤 액세스 메모리 또는 양자 모두로부터 명령어들과 데이터를 수신할 것이다. 컴퓨터의 필수 요소들은, 명령어들을 수행하기 위한 프로세서 및 명령어들과 데이터를 저장하기 위한 하나 이상의 메모리 디바이스이다. 일반적으로, 컴퓨터는 또한 자기, 광 자기 디스크 또는 광 디스크와 같은 데이터를 저장하기 위한 하나 이상의 대용량 저장 디바이스를 포함하거나, 또는 이들로부터 데이터를 수신하거나 이들로 데이터를 전송하거나 둘 다를 행하도록 동작적으로 결합될 것이다. 그러나, 컴퓨터가 이러한 디바이스들을 가질 필요는 없다. 컴퓨터 프로그램 명령어들과 데이터를 저장하기에 적합한 컴퓨터 판독가능 매체는 예로서 반도체 메모리 디바이스들, 예를 들어, EPROM, EEPROM, 및 플래시 메모리 디바이스들을 포함한 모든 형태의 비휘발성 메모리, 매체 및 메모리 디바이스들을 포함한다. 프로세서 및 메모리는 특수 목적 논리 회로에 의해 보완되거나 그에 통합될 수 있다.
도면과 함께 본 명세서는 단지 예시적인 것으로 간주되며, 예시적이라는 말은 한 예를 의미하는 것으로 의도된다. 본 명세서에서 사용되는 바와 같이, "또는"의 사용은, 문맥이 명확하게 달리 나타내지 않는 한, "및/또는"을 포함하는 것으로 의도된다.
본 특허 문서는 많은 세부사항들을 포함하지만, 이들은 임의의 발명의 또는 청구될 수 있는 것의 범위에 관한 제한들로서 해석되어서는 안 되고, 오히려 특정 발명들의 특정 실시예들에 특정할 수 있는 특징들의 설명들로서 해석되어야 한다. 별개의 실시예들의 맥락에서 본 특허 문서에 설명된 특정 특징들은 또한 단일 실시예에서 조합하여 구현될 수 있다. 반대로, 단일 실시예의 맥락에서 설명된 다양한 특징들이 또한 다수의 실시예들에서 개별적으로 또는 임의의 적합한 하위 조합으로 구현될 수 있다. 또한, 위에서는 특징들이 특정 조합들로 동작하는 것으로서 설명되고 심지어 처음에 이와 같이 청구될 수 있지만, 일부 경우들에서는 청구된 조합으로부터의 하나 이상의 특징이 조합으로부터 삭제될 수 있으며, 청구된 조합은 하위 조합 또는 하위 조합의 변형에 대한 것일 수 있다.
유사하게, 도면들에는 동작들이 특정 순서로 도시되지만, 이것은 바람직한 결과들을 달성하기 위해 그러한 동작들이 도시된 특정 순서로 또는 순차적 순서로 수행되어야 하거나, 모든 예시된 동작들이 수행되어야 하는 것을 요구하는 것으로 이해되어서는 안 된다. 또한, 본 특허 문서에 설명된 실시예들에서의 다양한 시스템 컴포넌트들의 분리는 모든 실시예들에서 이러한 분리를 요구하는 것으로 이해되어서는 안 된다.
단지 몇 개의 구현들 및 예들만이 설명되며, 본 특허 문서에서 설명되고 예시된 것에 기초하여 다른 구현들, 개선들 및 변형들이 만들어질 수 있다.

Claims (34)

  1. 비디오 처리 방법으로서,
    비디오의 비디오 영역의 현재 비디오 블록과 상기 비디오의 코딩된 표현(coded representation) 사이의 전환(conversion)을 수행하는 단계를 포함하며,
    상기 전환은 상기 현재 비디오 블록이 제1 도메인 및 제2 도메인에 기초하여 구성되고/되거나 크로마 잔차(chroma residue)가 루마 종속적 방식(luma-dependent manner)으로 스케일링되는 코딩 모드를 사용하고,
    상기 코딩된 표현에서의 파라미터 세트는 상기 코딩 모드에 대한 파라미터 정보를 포함하는, 방법.
  2. 제1항에 있어서, 상기 파라미터 세트는 타일 그룹 헤더와 상이한, 방법.
  3. 제2항에 있어서, 상기 파라미터 세트는 적응 파라미터 세트(adaptation parameter set, APS)인, 방법.
  4. 제3항에 있어서, 코딩 모드 정보에 대한 상기 APS는 LMCS(luma mapping with chroma scaling) APS로 명명되는, 방법.
  5. 제3항에 있어서, 상기 현재 비디오 블록에 대해 이용될 상기 APS에 대한 식별자가 상기 비디오의 상기 코딩된 표현에 포함되는, 방법.
  6. 제5항에 있어서, 상기 식별자가 상기 비디오의 상기 코딩된 표현에 존재하는지는 상기 코딩 모드가 상기 비디오 영역에 대해 인에이블되는지에 종속하는, 방법.
  7. 제3항에 있어서, 상기 파라미터 세트는 상기 APS의 식별자를 포함하는, 방법.
  8. 제1항에 있어서, 상기 파라미터 세트에 대해 NAL 유닛 타입 값이 할당되는, 방법.
  9. 제1항에 있어서, 상기 파라미터 세트의 식별자는 0 내지 M의 범위를 갖고, M은 2K-1인, 방법.
  10. 제1항에 있어서, 상기 파라미터 세트는 상기 비디오의 픽처들에 걸쳐 공유되는, 방법.
  11. 제1항에 있어서, 상기 파라미터 세트의 식별자는 고정 길이 코딩된 값을 갖는, 방법.
  12. 제1항에 있어서, 상기 파라미터 세트의 식별자는, 지수-골룸(exponential-golomb, EG) 코드, 절단된 단항(truncated unary) 코드, 또는 이진화 코드로 코딩되는, 방법.
  13. 제1항에 있어서, 동일한 픽처 내의 2개의 부분-영역에 대해, 상기 파라미터 세트는 2개의 상이한 값을 갖는 식별자들을 갖는, 방법.
  14. 제3항에 있어서, 상기 파라미터 세트와 적응적 루프 필터(adaptive loop filter, ALF) 정보에 대한 APS는 동일한 네트워크 추상화 계층(Network Abstraction Layer, NAL) 유닛 타입(NUT)을 공유하는, 방법.
  15. 제1항에 있어서, 상기 파라미터 정보는 적응적 루프 필터(ALF) 정보에 대한 현재 APS와 함께 운반되는, 방법.
  16. 제1항에 있어서, 상기 파라미터 정보는 시퀀스 파라미터 세트(sequence parameter set, SPS), 비디오 파라미터 세트(video parameter set, VPS), 픽처 파라미터 세트(picture parameter set, PPS), 시퀀스, 헤더 또는 픽처 헤더에서 운반되는, 방법.
  17. 제1항에 있어서, 상기 파라미터 정보는 재성형기 모델 정보의 표시, 상기 코딩 모드의 사용, 또는 크로마 잔차 스케일링 인자들 중 적어도 하나를 포함하는, 방법.
  18. 제1항에 있어서, 상기 파라미터 정보는 하나의 레벨에서 시그널링되는, 방법.
  19. 제1항에 있어서, 상기 파라미터 정보는 제2 레벨에서 시그널링되는 상기 코딩 모드의 사용을 포함하는, 방법.
  20. 제18항 또는 제19항에 있어서, 상기 파라미터 정보는 APS에서 시그널링되고, 상기 코딩 모드의 사용은 상기 비디오 영역 레벨에서 시그널링되는, 방법.
  21. 제1항에 있어서, 상기 파라미터 정보는 하나의 레벨에서 파싱되는, 방법.
  22. 제1항에 있어서, 상기 파라미터 정보는 제2 레벨에서 파싱되는 상기 코딩 모드의 사용을 포함하는, 방법.
  23. 제21항 또는 제22항에 있어서, 상기 파라미터 정보는 APS에서 파싱되고, 상기 코딩 모드의 사용은 상기 비디오 영역 레벨에서 파싱되는, 방법.
  24. 제1항에 있어서, 상기 파라미터 정보를 상이한 APS 인덱스들로 코딩하기 위해 예측 코딩이 적용되는, 방법.
  25. 제1항 내지 제24항 중 어느 한 항에 있어서, 상기 제1 도메인은 원래 도메인이고, 상기 제2 도메인은 루마 샘플들을 특정 값들에 맵핑하는 LMCS(luma mapping with chroma scaling) 방법을 사용하는 재성형된 도메인(reshaped domain)인, 방법.
  26. 제25항에 있어서, 상기 LMCS는 상기 루마 샘플들을 상기 특정 값들에 맵핑하기 위해 PWL(piecewise linear) 모델을 사용하는, 방법.
  27. 제1항 내지 제26항 중 어느 한 항에 있어서, 상기 비디오 영역은 픽처 또는 타일 그룹인, 방법.
  28. 제1항 내지 제26항 중 어느 한 항에 있어서, 상기 비디오 영역 레벨은 픽처 헤더 또는 타일 그룹 헤더인, 방법.
  29. 제1항 내지 제28항 중 어느 한 항에 있어서, 상기 제1 도메인은 원래 도메인이고, 상기 제2 도메인은 재성형 모델들에 따라 루마 샘플들을 특정 값들에 맵핑하는 LMCS(luma mapping with chroma scaling) 방법을 사용하는 재성형된 도메인인, 방법.
  30. 제29항에 있어서, 상기 LMCS는 상기 루마 샘플들을 상기 특정 값들에 맵핑하기 위해 PWL(piecewise linear) 모델을 사용하는, 방법.
  31. 제1항 내지 제30항 중 어느 한 항에 있어서, 상기 전환을 수행하는 것은 상기 현재 블록으로부터 상기 코딩된 표현을 생성하는 것을 포함하는, 방법.
  32. 제1항 내지 제30항 중 어느 한 항에 있어서, 상기 전환을 수행하는 것은 상기 코딩된 표현으로부터 상기 현재 블록을 생성하는 것을 포함하는, 방법.
  33. 프로세서 및 명령어들을 갖는 비일시적 메모리를 포함하는 비디오 시스템에서의 장치로서, 상기 명령어들은 상기 프로세서에 의한 실행시에, 상기 프로세서로 하여금 제1항 내지 제32항 중 어느 한 항의 방법을 구현하게 하는, 장치.
  34. 비일시적 컴퓨터 판독가능 매체 상에 저장되는 컴퓨터 프로그램 제품으로서, 상기 컴퓨터 프로그램 제품은 제1항 내지 제32항 중 어느 한 항의 방법을 실행하기 위한 프로그램 코드를 포함하는, 컴퓨터 프로그램 제품.
KR1020217023159A 2019-02-01 2020-02-01 파라미터 세트들을 사용한 인-루프 재성형 정보의 시그널링 KR102617221B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020237043889A KR20240005124A (ko) 2019-02-01 2020-02-01 파라미터 세트들을 사용한 인-루프 재성형 정보의 시그널링

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
CNPCT/CN2019/074437 2019-02-01
CN2019074437 2019-02-01
PCT/CN2020/074139 WO2020156529A1 (en) 2019-02-01 2020-02-01 Signaling of in-loop reshaping information using parameter sets

Related Child Applications (1)

Application Number Title Priority Date Filing Date
KR1020237043889A Division KR20240005124A (ko) 2019-02-01 2020-02-01 파라미터 세트들을 사용한 인-루프 재성형 정보의 시그널링

Publications (2)

Publication Number Publication Date
KR20210118401A true KR20210118401A (ko) 2021-09-30
KR102617221B1 KR102617221B1 (ko) 2023-12-27

Family

ID=77271633

Family Applications (4)

Application Number Title Priority Date Filing Date
KR1020217023118A KR20210118399A (ko) 2019-02-01 2020-02-01 인-루프 재성형과 인터 코딩 툴들 사이의 상호작용들
KR1020217023159A KR102617221B1 (ko) 2019-02-01 2020-02-01 파라미터 세트들을 사용한 인-루프 재성형 정보의 시그널링
KR1020217023140A KR20210118400A (ko) 2019-02-01 2020-02-01 비디오 코딩을 위한 루마 종속적 크로마 잔차 스케일링의 구성
KR1020237043889A KR20240005124A (ko) 2019-02-01 2020-02-01 파라미터 세트들을 사용한 인-루프 재성형 정보의 시그널링

Family Applications Before (1)

Application Number Title Priority Date Filing Date
KR1020217023118A KR20210118399A (ko) 2019-02-01 2020-02-01 인-루프 재성형과 인터 코딩 툴들 사이의 상호작용들

Family Applications After (2)

Application Number Title Priority Date Filing Date
KR1020217023140A KR20210118400A (ko) 2019-02-01 2020-02-01 비디오 코딩을 위한 루마 종속적 크로마 잔차 스케일링의 구성
KR1020237043889A KR20240005124A (ko) 2019-02-01 2020-02-01 파라미터 세트들을 사용한 인-루프 재성형 정보의 시그널링

Country Status (11)

Country Link
US (4) US11343505B2 (ko)
EP (3) EP3906681A4 (ko)
JP (4) JP7279172B2 (ko)
KR (4) KR20210118399A (ko)
CN (5) CN113366841A (ko)
AU (1) AU2020214946B2 (ko)
BR (2) BR112021014620A2 (ko)
CA (2) CA3128424C (ko)
MX (2) MX2021008916A (ko)
SG (2) SG11202108207SA (ko)
ZA (2) ZA202105195B (ko)

Families Citing this family (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020017910A1 (ko) * 2018-07-18 2020-01-23 한국전자통신연구원 지역 조명 보상을 통한 효과적인 비디오 부호화/복호화 방법 및 장치
WO2020156532A1 (en) 2019-02-01 2020-08-06 Beijing Bytedance Network Technology Co., Ltd. Restrictions on in-loop reshaping
KR20210118399A (ko) 2019-02-01 2021-09-30 베이징 바이트댄스 네트워크 테크놀로지 컴퍼니, 리미티드 인-루프 재성형과 인터 코딩 툴들 사이의 상호작용들
JP7418459B2 (ja) * 2019-02-27 2024-01-19 華為技術有限公司 符号化器、復号器及び対応する方法
CN117499644A (zh) 2019-03-14 2024-02-02 北京字节跳动网络技术有限公司 环路整形信息的信令和语法
WO2020192612A1 (en) 2019-03-23 2020-10-01 Beijing Bytedance Network Technology Co., Ltd. Default in-loop reshaping parameters
WO2020219970A1 (en) * 2019-04-24 2020-10-29 Op Solutions, Llc Signaling of global motion vector in picture header
JP7440544B2 (ja) * 2019-06-18 2024-02-28 エルジー エレクトロニクス インコーポレイティド 画像デコード方法及びその装置
CN114175651A (zh) * 2019-06-20 2022-03-11 Lg电子株式会社 基于亮度映射和色度缩放的视频或图像编码
CN114556934A (zh) 2019-10-12 2022-05-27 北京字节跳动网络技术有限公司 视频编解码中的预测类型信令
WO2022228420A1 (en) * 2021-04-27 2022-11-03 Beijing Bytedance Network Technology Co., Ltd. Method, device, and medium for video processing
US11622106B2 (en) * 2021-05-17 2023-04-04 Meta Platforms, Inc. Supporting multiple partition sizes using a unified pixel input data interface for fetching reference pixels in video encoders
US20230090025A1 (en) * 2021-09-22 2023-03-23 Alibaba Singapore Holding Private Limited Methods and systems for performing combined inter and intra prediction
US11968356B2 (en) * 2022-03-16 2024-04-23 Qualcomm Incorporated Decoder-side motion vector refinement (DMVR) inter prediction using shared interpolation filters and reference pixels
US20240022732A1 (en) * 2022-07-13 2024-01-18 Tencent America LLC Weight derivation of multiple reference line for intra prediction fusion
WO2024037638A1 (en) * 2022-08-18 2024-02-22 Douyin Vision Co., Ltd. Method, apparatus, and medium for video processing

Family Cites Families (99)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5544284A (en) 1992-02-11 1996-08-06 Eastman Kodak Company Sequential product code quantization of digital color image
US20020145610A1 (en) 1999-07-16 2002-10-10 Steve Barilovits Video processing engine overlay filter scaler
US7412003B2 (en) 2003-09-17 2008-08-12 Texas Instruments Incorporated Transcoders and methods
EP2508000A1 (en) * 2009-12-04 2012-10-10 Thomson Licensing Methods and apparatus for improved chroma transforms for inter frames in video encoding and decoding
US9100661B2 (en) 2010-04-05 2015-08-04 Samsung Electronics Co., Ltd. Method and apparatus for encoding video by using dynamic-range transformation, and method and apparatus for decoding video by using dynamic-range transformation
US9094658B2 (en) 2010-05-10 2015-07-28 Mediatek Inc. Method and apparatus of adaptive loop filtering
US8630356B2 (en) 2011-01-04 2014-01-14 The Chinese University Of Hong Kong High performance loop filters in video compression
US9001883B2 (en) * 2011-02-16 2015-04-07 Mediatek Inc Method and apparatus for slice common information sharing
KR20140018873A (ko) * 2011-04-07 2014-02-13 엘지전자 주식회사 영상 정보 부호화 방법 및 복호화 방법
ES2711180T3 (es) * 2011-04-21 2019-04-30 Hfi Innovation Inc Procedimiento y aparato para un filtrado en bucle mejorado
US9277228B2 (en) 2011-07-18 2016-03-01 Qualcomm Incorporated Adaptation parameter sets for video coding
US9948938B2 (en) 2011-07-21 2018-04-17 Texas Instruments Incorporated Methods and systems for chroma residual data prediction
US9083983B2 (en) 2011-10-04 2015-07-14 Qualcomm Incorporated Motion vector predictor candidate clipping removal for video coding
KR20130053645A (ko) 2011-11-15 2013-05-24 한국전자통신연구원 적응적 루프 필터를 이용한 비디오 부호화/복호화 방법 및 장치
US9451252B2 (en) 2012-01-14 2016-09-20 Qualcomm Incorporated Coding parameter sets and NAL unit headers for video coding
WO2013109505A2 (en) * 2012-01-19 2013-07-25 Vid Scale, Inc. Methods, apparatus and systems for signaling video coding adaptation parameters
JP5947405B2 (ja) 2012-02-01 2016-07-06 ノキア テクノロジーズ オーユー ビデオ符号化方法および装置
US9438905B2 (en) * 2012-04-12 2016-09-06 Futurewei Technologies, Inc. LM mode with uniform bit-width multipliers
GB2501125B (en) * 2012-04-13 2015-08-19 Canon Kk Method and device for providing adaptation parameters to a decoder
US9300984B1 (en) 2012-04-18 2016-03-29 Matrox Graphics Inc. Independent processing of data streams in codec
EP2842323A1 (en) * 2012-04-24 2015-03-04 Telefonaktiebolaget LM Ericsson (Publ) Identifying a parameter set for decoding a multi-layer video representation
EP4216547A1 (en) * 2012-06-29 2023-07-26 Electronics And Telecommunications Research Institute Method for encoding/decoding images
KR101835360B1 (ko) 2012-10-01 2018-03-08 지이 비디오 컴프레션, 엘엘씨 향상 레이어에서 변환 계수 블록들의 서브블록-기반 코딩을 이용한 스케일러블 비디오 코딩
WO2014106692A1 (en) * 2013-01-07 2014-07-10 Nokia Corporation Method and apparatus for video coding and decoding
US9491460B2 (en) 2013-03-29 2016-11-08 Qualcomm Incorporated Bandwidth reduction for video coding prediction
US10440365B2 (en) * 2013-06-28 2019-10-08 Velos Media, Llc Methods and devices for emulating low-fidelity coding in a high-fidelity coder
CN105453564B (zh) 2013-07-30 2019-05-10 株式会社Kt 支持多个层的图像编码和解码方法以及使用该方法的装置
JP2017501599A (ja) * 2013-10-07 2017-01-12 ヴィド スケール インコーポレイテッド マルチレイヤビデオコーディングのコンバインドスケーラビリティ処理
US10397607B2 (en) 2013-11-01 2019-08-27 Qualcomm Incorporated Color residual prediction for video coding
US10148895B2 (en) 2013-12-19 2018-12-04 Flir Systems Ab Generating a combined infrared/visible light image having an enhanced transition between different types of image information
TWI536811B (zh) 2013-12-27 2016-06-01 財團法人工業技術研究院 影像處理方法與系統、解碼方法、編碼器與解碼器
WO2015100522A1 (en) 2013-12-30 2015-07-09 Mediatek Singapore Pte. Ltd. Methods for inter-component residual prediction
US11070810B2 (en) 2014-03-14 2021-07-20 Qualcomm Incorporated Modifying bit depths in color-space transform coding
KR102268090B1 (ko) 2014-03-14 2021-06-23 브이아이디 스케일, 인크. 스크린 콘텐츠 코딩을 위한 팔레트 코딩
EP3324629B1 (en) 2014-05-28 2019-06-19 Koninklijke Philips N.V. Methods and apparatuses for encoding an hdr images, and methods and apparatuses for use of such encoded images
AU2014202921B2 (en) * 2014-05-29 2017-02-02 Canon Kabushiki Kaisha Method, apparatus and system for de-blocking a block of video samples
US9948949B2 (en) 2014-06-20 2018-04-17 Qualcomm Incorporated Intra block copy block vector signaling for video coding
US9667829B2 (en) 2014-08-12 2017-05-30 Digimarc Corporation System and methods for encoding information for printed articles
CN106797468B (zh) 2014-10-06 2018-10-30 华为技术有限公司 高效视频编码(hevc)屏幕内容编码(scc)中改进的调色板模式
GB2531005A (en) 2014-10-06 2016-04-13 Canon Kk Improved encoding process using a palette mode
CN104320671A (zh) 2014-11-13 2015-01-28 山东财经大学 一种基于h.264标准的在线视频转码方法
EP3219099B1 (en) * 2014-12-19 2021-04-28 HFI Innovation Inc. Methods of palette based prediction for non-444 color format in video and image coding
CN107211147A (zh) 2015-01-14 2017-09-26 Vid拓展公司 用于非4:4:4屏幕内容视频的调色板编码
US9591325B2 (en) 2015-01-27 2017-03-07 Microsoft Technology Licensing, Llc Special case handling for merged chroma blocks in intra block copy prediction mode
US9998742B2 (en) 2015-01-27 2018-06-12 Qualcomm Incorporated Adaptive cross component residual prediction
US20160234498A1 (en) * 2015-02-05 2016-08-11 Sharp Laboratories Of America, Inc. Methods and systems for palette table coding
US10057574B2 (en) 2015-02-11 2018-08-21 Qualcomm Incorporated Coding tree unit (CTU) level adaptive loop filter (ALF)
JP6383116B2 (ja) 2015-04-06 2018-08-29 ドルビー ラボラトリーズ ライセンシング コーポレイション ハイダイナミックレンジ映像符号化における、ループ内ブロックベース画像再構成
WO2016192662A1 (en) 2015-06-03 2016-12-08 Mediatek Inc. Method and apparatus for resource sharing between intra block copy mode and inter prediction mode in video coding systems
GB2539211A (en) 2015-06-08 2016-12-14 Canon Kk Enhanced coding and decoding using intra block copy mode
US10659783B2 (en) * 2015-06-09 2020-05-19 Microsoft Technology Licensing, Llc Robust encoding/decoding of escape-coded pixels in palette mode
EP3329679A1 (en) 2015-07-28 2018-06-06 VID SCALE, Inc. High dynamic range video coding architectures with multiple operating modes
US10652588B2 (en) 2015-09-21 2020-05-12 Vid Scale, Inc. Inverse reshaping for high dynamic range video coding
US20170105014A1 (en) 2015-10-08 2017-04-13 Qualcomm Incorporated Luma-driven chroma scaling for high dynamic range and wide color gamut contents
KR20180058224A (ko) 2015-10-22 2018-05-31 엘지전자 주식회사 영상 코딩 시스템에서 모델링 기반 영상 디코딩 방법 및 장치
CN106937121B (zh) 2015-12-31 2021-12-10 中兴通讯股份有限公司 图像解码和编码方法、解码和编码装置、解码器及编码器
EP3395073A4 (en) 2016-02-04 2019-04-10 Mediatek Inc. VIDEO ENCODING METHOD AND APPARATUS USING NON-LOCAL ADAPTIVE LOOP FILTERS
US11032550B2 (en) 2016-02-25 2021-06-08 Mediatek Inc. Method and apparatus of video coding
CN108885783B (zh) * 2016-03-23 2022-02-15 杜比实验室特许公司 编码和解码可逆制作质量单层视频信号
US20170310969A1 (en) 2016-04-20 2017-10-26 Mediatek Inc. Image encoding method and apparatus with color space transform performed upon predictor and associated image decoding method and apparatus
CN109076219A (zh) * 2016-05-13 2018-12-21 夏普株式会社 图像解码装置以及图像编码装置
EP3244616A1 (en) 2016-05-13 2017-11-15 Thomson Licensing A method for encoding an input video comprising a luma component and two chroma components, the method comprising reshaping of said input video based on reshaping functions
CN109155853B (zh) 2016-05-19 2023-03-28 杜比实验室特许公司 用于高动态范围图像的色度整形
US10645403B2 (en) * 2016-05-19 2020-05-05 Dolby Laboratories Licensing Corporation Chroma reshaping for high dynamic range images
CN113727109B (zh) * 2016-05-28 2023-12-29 寰发股份有限公司 用于彩色视频数据的调色板模式编解码的方法及装置
US10944976B2 (en) 2016-07-22 2021-03-09 Sharp Kabushiki Kaisha Systems and methods for coding video data using adaptive component scaling
WO2018044803A1 (en) 2016-08-30 2018-03-08 Dolby Laboratories Licensing Corporation Real-time reshaping of single-layer backwards-compatible codec
EP3510772B1 (en) * 2016-09-09 2020-12-09 Dolby Laboratories Licensing Corporation Coding of high dynamic range video using segment-based reshaping
US10652575B2 (en) 2016-09-15 2020-05-12 Qualcomm Incorporated Linear model chroma intra prediction for video coding
WO2018062921A1 (ko) 2016-09-30 2018-04-05 엘지전자 주식회사 영상 코딩 시스템에서 블록 분할 및 인트라 예측 방법 및 장치
CN110199521B (zh) * 2016-12-23 2022-05-31 华为技术有限公司 用于有损视频编码的低复杂度混合域协同环内滤波器
US10506230B2 (en) 2017-01-04 2019-12-10 Qualcomm Incorporated Modified adaptive loop filter temporal prediction for temporal scalability support
US11025903B2 (en) 2017-01-13 2021-06-01 Qualcomm Incorporated Coding video data using derived chroma mode
US10694181B2 (en) 2017-01-27 2020-06-23 Qualcomm Incorporated Bilateral filters in video coding with reduced complexity
US11310532B2 (en) * 2017-02-24 2022-04-19 Interdigital Vc Holdings, Inc. Method and device for reconstructing image data from decoded image data
US10735761B2 (en) 2017-05-19 2020-08-04 Mediatek Inc Method and apparatus of video coding
US10602180B2 (en) * 2017-06-13 2020-03-24 Qualcomm Incorporated Motion vector prediction
US20190007699A1 (en) 2017-06-28 2019-01-03 Futurewei Technologies, Inc. Decoder Side Motion Vector Derivation in Video Coding
KR102580314B1 (ko) 2017-06-29 2023-09-19 돌비 레버러토리즈 라이쎈싱 코오포레이션 통합된 이미지 정형 및 비디오 코딩
US10757442B2 (en) 2017-07-05 2020-08-25 Qualcomm Incorporated Partial reconstruction based template matching for motion vector derivation
CN107360433B (zh) 2017-07-20 2020-06-19 北京奇艺世纪科技有限公司 一种帧间预测编码方法和装置
US20200322606A1 (en) 2017-10-24 2020-10-08 Sharp Kabushiki Kaisha Systems and methods for determining quantization parameter predictive values
US10986349B2 (en) 2017-12-29 2021-04-20 Microsoft Technology Licensing, Llc Constraints on locations of reference blocks for intra block copy prediction
CN117082246A (zh) 2018-02-14 2023-11-17 杜比实验室特许公司 在视频编码中利用率失真优化进行图像再成形
US10757428B2 (en) 2018-10-10 2020-08-25 Apple Inc. Luma and chroma reshaping of HDR video encoding
WO2020085235A1 (ja) 2018-10-22 2020-04-30 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ 符号化装置、復号装置、符号化方法及び復号方法
WO2020086421A1 (en) 2018-10-25 2020-04-30 Interdigital Vc Holdings, Inc. Video encoding and decoding using block-based in-loop reshaping
US11122264B2 (en) 2018-12-06 2021-09-14 Qualcomm Incorporated Adaptive loop filter (ALF) coefficients in video coding
CN113273215A (zh) 2019-01-04 2021-08-17 交互数字Vc控股公司 逆映射简化
KR20210118399A (ko) 2019-02-01 2021-09-30 베이징 바이트댄스 네트워크 테크놀로지 컴퍼니, 리미티드 인-루프 재성형과 인터 코딩 툴들 사이의 상호작용들
WO2020156532A1 (en) 2019-02-01 2020-08-06 Beijing Bytedance Network Technology Co., Ltd. Restrictions on in-loop reshaping
CN113545064B (zh) * 2019-03-04 2024-05-10 阿里巴巴集团控股有限公司 用于处理视频内容的方法和装置及计算机可读存储介质
US10742972B1 (en) 2019-03-08 2020-08-11 Tencent America LLC Merge list construction in triangular prediction
CN117499644A (zh) 2019-03-14 2024-02-02 北京字节跳动网络技术有限公司 环路整形信息的信令和语法
WO2020192612A1 (en) 2019-03-23 2020-10-01 Beijing Bytedance Network Technology Co., Ltd. Default in-loop reshaping parameters
US11388406B2 (en) * 2019-05-20 2022-07-12 Dolby Laboratories Licensing Corporation Piece-wise-linear mapping for in-loop reshaping in image coding
US11509938B2 (en) 2019-11-05 2022-11-22 Hfi Innovation Inc. Method and apparatus of signaling subpicture information in video coding
US20210168406A1 (en) 2019-11-29 2021-06-03 Tencent America LLC Signaling of video coding tools supporting various chroma formats
US11303914B2 (en) 2020-01-08 2022-04-12 Tencent America LLC Method and apparatus for video coding

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
AHG17: Conditional Signaling of ALF and In-Loop Reshaper Model, JVET-N0290 *
AHG17: On ALF and Reshaper Signaling, JVET-N0284 *
AHG17: Signalling of reshaper parameters in APS, JVET-N0117-v1 *

Also Published As

Publication number Publication date
CN113424543B (zh) 2024-03-15
CN113396582A (zh) 2021-09-14
AU2020214946B2 (en) 2023-06-08
JP2023095995A (ja) 2023-07-06
MX2021008916A (es) 2021-08-24
CA3128424A1 (en) 2020-08-06
CN113396582B (zh) 2024-03-08
BR112021014620A2 (pt) 2021-10-05
BR112021014202A2 (pt) 2021-09-21
CA3128424C (en) 2024-04-16
AU2020214946A1 (en) 2021-08-26
US11394995B2 (en) 2022-07-19
CA3127136A1 (en) 2020-08-06
CN117768642A (zh) 2024-03-26
ZA202105195B (en) 2023-01-25
SG11202107760PA (en) 2021-08-30
EP3900362A1 (en) 2021-10-27
EP3906681A1 (en) 2021-11-10
CN113424543A (zh) 2021-09-21
EP3900344A1 (en) 2021-10-27
KR102617221B1 (ko) 2023-12-27
CN113383547A (zh) 2021-09-10
KR20240005124A (ko) 2024-01-11
CN113366841A (zh) 2021-09-07
JP2022518848A (ja) 2022-03-16
EP3900362A4 (en) 2022-03-02
US20220030267A1 (en) 2022-01-27
JP2022517683A (ja) 2022-03-09
JP7199550B2 (ja) 2023-01-05
EP3900344A4 (en) 2022-04-06
US20210314572A1 (en) 2021-10-07
KR20210118400A (ko) 2021-09-30
JP2022518909A (ja) 2022-03-17
US20210281876A1 (en) 2021-09-09
US11343505B2 (en) 2022-05-24
US20230048864A1 (en) 2023-02-16
ZA202105404B (en) 2023-01-25
SG11202108207SA (en) 2021-08-30
MX2021008911A (es) 2021-08-24
US11558636B2 (en) 2023-01-17
JP7199552B2 (ja) 2023-01-05
EP3906681A4 (en) 2022-06-01
KR20210118399A (ko) 2021-09-30
JP7279172B2 (ja) 2023-05-22

Similar Documents

Publication Publication Date Title
KR102617221B1 (ko) 파라미터 세트들을 사용한 인-루프 재성형 정보의 시그널링
CN113574889B (zh) 环路整形信息的信令和语法
AU2020213583B2 (en) Signaling of in-loop reshaping information using parameter sets
KR20210139272A (ko) 적응적 루프 필터링 파라미터 세트들에 대한 제한들
WO2020182219A1 (en) Signaling and syntax for in-loop reshaping information
RU2808682C2 (ru) Передача сигнализации с информацией о внутриконтурном переформировании с использованием набора параметров
RU2806282C2 (ru) Взаимодействие между внутриконтурным переформированием и инструментами для межкадрового кодирования

Legal Events

Date Code Title Description
A302 Request for accelerated examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant