KR102616383B1 - 비디오 픽처 헤더의 필터 파라미터 시그널링 - Google Patents

비디오 픽처 헤더의 필터 파라미터 시그널링 Download PDF

Info

Publication number
KR102616383B1
KR102616383B1 KR1020227036045A KR20227036045A KR102616383B1 KR 102616383 B1 KR102616383 B1 KR 102616383B1 KR 1020227036045 A KR1020227036045 A KR 1020227036045A KR 20227036045 A KR20227036045 A KR 20227036045A KR 102616383 B1 KR102616383 B1 KR 102616383B1
Authority
KR
South Korea
Prior art keywords
video
offset
syntax element
video unit
deblocking
Prior art date
Application number
KR1020227036045A
Other languages
English (en)
Other versions
KR20230002429A (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 KR1020237043232A priority Critical patent/KR20240000623A/ko
Publication of KR20230002429A publication Critical patent/KR20230002429A/ko
Application granted granted Critical
Publication of KR102616383B1 publication Critical patent/KR102616383B1/ko

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/85Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
    • H04N19/86Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression involving reduction of coding artifacts, e.g. of blockiness
    • 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/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/174Methods 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 slice, e.g. a line of blocks or a group of blocks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/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/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/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

Landscapes

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

Abstract

비디오 처리를 위한 방법 및 장치가 설명된다. 비디오 처리는 비디오 인코딩, 비디오 디코딩 또는 비디오 트랜스코딩을 포함할 수 있다. 하나의 예시적인 비디오 처리 방법은 비디오의 비디오 픽처와 비디오의 비트스트림 사이의 변환을 수행하는 단계를 포함한다. 제1 비디오 유닛에서 하나 이상의 슬라이스에 대한 크로마 컴포넌트에 적용되는 β에 대한 디블로킹 파라미터 오프셋을 2로 나눈 값을 지정하는 제1 비디오 유닛 레벨의 제1 신택스 요소 및 상기 제1 비디오 유닛에서 상기 하나 이상의 슬라이스에 대한 상기 크로마 컴포넌트에 적용되는 tC에 대한 디블로킹 파라미터 오프셋을 2로 나눈 값을 지정하는 상기 제1 비디오 유닛 레벨의 제2 신택스 요소는 상기 비트스트림에 포함되지 않은 상기 제1 신택스 요소와 상기 제2 신택스 요소에 응답하여 규칙에 따라 결정된다.

Description

비디오 픽처 헤더의 필터 파라미터 시그널링
이 특허 문서는 이미지 및 비디오 코딩(video coding) 및 디코딩(decoding)에 관한 것이다.
본 출원은, 2020년 4월 29일에 출원된 미국 가특허출원 번호 US 63/017,499의 우선권과 헤택을 주장하는, 2021년 4월 27일에 출원된 국제특허출원 PCT/US2021/029416호를 기반으로 한다. 전술한 모든 특허 출원은 그 전체가 참고로 여기에 통합된다.
디지털 비디오는 인터넷 및 다른 디지털 통신 네트워크에서 가장 많은 대역폭을 사용한다. 비디오(video)를 수신하고 나타낼 수 있는 연결된 사용자 장치(connected user device)의 수가 증가함에 따라, 디지털 비디오 사용에 대한 대역폭 수요가 계속 증가할 것으로 예상된다.
본 문서는 코딩된 표현(coded representation)의 디코딩(decoding)에 유용한 제어 정보(control information)를 사용하여 비디오의 코딩된 표현을 처리하기 위해 비디오 인코더(encoder) 및 디코더(decoder)에 의해 사용될 수 있는 기술을 개시한다.
하나의 예시적인 측면에서, 비디오 처리 방법(video processing method)이 개시된다. 이 방법은 비디오의 비디오 픽처(video picture)와 비디오의 비트스트림 사이의 변환을 수행하는 단계를 포함한다. 변환(conversion)은 파라미터가 표시된 디블로킹 필터를 사용하여 재구성된 비디오 블록(reconstructed video block)의 적어도 일부 샘플이 선택적으로 필터링되는 디블로킹 필터링 동작(deblocking filtering operation)을 수행하는 단계를 포함한다. 제1 비디오 유닛(first video unit)에서 하나 이상의 슬라이스(slice)에 대한 크로마 컴포넌트(chroma component)에 적용되는 β에 대한 디블로킹 파라미터 오프셋(deblocking parameter offset)을 2로 나눈 값을 지정하는 제1 비디오 유닛 레벨(first video unit level)의 제1 신택스 요소(first syntax element) 및 제1 비디오 유닛에서 하나 이상의 슬라이스에 대한 크로마 컴포넌트에 적용되는 tC에 대한 디블로킹 파라미터 오프셋을 2로 나눈 값을 지정하는 제1 비디오 유닛 레벨 내의 제2 신택스 요소(second syntax element)는 비트스트림에 포함되지 않은 제1 신택스 요소와 제2 신택스 요소에 응답하여 규칙에 따라 결정된다. 규칙은 (1) 신택스 플래그(syntax flag)가 크로마 툴 오프셋이 픽처 파라미터 세트에 존재함을 나타내는 경우, 제1 신택스 요소는 제2 비디오 유닛과 연관된 크로마 컴포넌트에 적용되는 β에 대한 디블로킹 파라미터 오프셋을 2로 나눈 값을 지정하는 제2 비디오 유닛 레벨의 제3 신택스 요소와 동일하고, 제2 신택스 요소는 제2 비디오 유닛과 연관된 크로마 컴포넌트에 적용되는 tC에 대한 디블로킹 파라미터 오프셋을 2로 나눈 값을 지정하는 제2 비디오 유닛 레벨의 제4 신택스 요소와 동일하고, (2) 신택스 플래그(syntax flag)가 크로마 툴 오프셋이 픽처 파라미터 세트에 존재하지 않음을 나타내는 경우, 제1 신택스 요소(first syntax element)는, 제1 비디오 유닛(first video unit)에서 하나 이상의 슬라이스(slice)에 대한 루마 컴포넌트(luma component)에 적용되는 β에 대한 디블로킹 파라미터 오프셋(deblocking parameter offset)을 2로 나눈 값을 지정하는 제1 비디오 유닛 레벨(first video unit level)의 제5 신택스 요소와 동일하고, 및 제2 신택스 요소(first syntax element)는, 제1 비디오 유닛(first video unit)에서 하나 이상의 슬라이스(slice)에 대한 루마 컴포넌트(luma component)에 적용되는 tC에 대한 디블로킹 파라미터 오프셋(deblocking parameter offset)을 2로 나눈 값을 지정하는 제1 비디오 유닛 레벨(first video unit level)의 제6 신택스 요소와 동일함을 지정한다.
하나의 예시적인 측면에서, 비디오 처리 방법(video processing method)이 개시된다. 본 방법은 하나 이상의 비디오 블록을 포함하는 비디오와 비디오의 코딩된 표현 간의 변환을 수행하는 단계를 포함하며, 변환은 재구성된 비디오 블록이 디블로킹 필터를 사용하여 선택적으로 필터링되는 디블로킹 필터링 동작을 수행하는 단계를 포함하고, 파라미터들은 포맷 규칙에 따라 코딩된 표현에서 시그널링되며, 포맷 규칙은 크로마 컴포넌트에 사용되는 디블로킹 필터의 파라미터가 코딩된 표현으로부터 유추되는 유추 규칙(inference rule)을 포함한다.
또 다른 예시적인 측면에서, 비디오 인코더 장치(video encoder apparatus)가 개시된다. 비디오 인코더는 전술한 방법을 구현하도록 구성된 프로세서(processor)를 포함한다.
또 다른 예시적인 측면에서, 비디오 디코더 장치(video decoder apparatus)가 개시된다. 비디오 디코더는 전술한 방법을 구현하도록 구성된 프로세서를 포함한다.
또 다른 실시예 측면에서, 코드(code)가 저장된 컴퓨터 판독 가능 매체(computer readable medium)가 개시된다. 코드는 프로세서 실행 가능 코드의 형태로 여기에 설명된 방법 중 하나를 구현한다.
이러한 기능 및 기타 기능은 본 문서 전체에 걸쳐 설명되어 있다.
도 1은 예시적인 비디오 처리 시스템의 블록도이다.
도 2는 비디오 처리 장치의 블록도이다.
도 3은 비디오 처리 방법의 하나의 예의 방법에 대한 순서도이다.
도 4는 본 개시의 일부 실시예에 따른 비디오 코딩 시스템을 예시하는 블록도이다.
도 5는 본 개시의 일부 실시예에 따른 인코더를 예시하는 블록도이다.
도 6은 본 개시의 일부 실시예에 따른 디코더를 예시하는 블록도이다.
도 7은 본 기술에 따른 비디오 처리 방법의 흐름도 표현이다.
섹션 제목은 이해의 편의를 위해 본 문서에서 사용되며 각 섹션에 개시된 기술 및 실시예의 적용 가능성을 해당 섹션에만 제한하지 않는다. 또한, H.266 용어는 일부 설명에서 이해의 편의를 위해서만 사용되며 개시된 기술의 범위를 제한하기 위한 것이 아니다. 이와 같이, 여기에 설명된 기술은 다른 비디오 코덱 프로토콜 및 설계에도 적용할 수 있다.
1. 개요
이 문서는 비디오 코딩 기술(video coding technologies)과 관련이 있다. 특히 디블로킹 파라미터의 시그널링 개선에 관한 내용이다. 아이디어는 다층 비디오 코딩(multi-layer video coding), 예를 들어 개발 중인 범용 비디오 코딩(Versatile Video Coding)(VVC)을 지원하는 임의의 비디오 코딩 표준 또는 비표준 비디오 코덱에 개별적으로 또는 다양한 조합으로 적용될 수 있다.
2. 약어
ALF 적응형 루프 필터(Adaptive Loop Filter)
APS 적응형 파라미터 세트(Adaptation Parameter Set)
AU 액세스 유닛(Access Unit)
AUD 액세스 유닛 구분 기호(Access Unit Delimiter)
AVC 고급 비디오 코딩(Advanced Video Coding)
CLVS 코딩된 계층 비디오 시퀀스(Coded Layer Video Sequence)
CPB 코딩된 픽처 버퍼Coded Picture Buffer()
CRA 클린 랜덤 액세스(Clean Random Access)
CTU 코딩 트리 유닛(Coding Tree Unit)
CVS 코딩된 비디오 시퀀스(Coded Video Sequence)
DCI 디코딩 기능 정보(Decoding Capability Information)
DPB 디코딩된 픽처 버퍼(Decoded Picture Buffer)
DU 디코딩 유닛(Decoding Unit)
EOB 비트스트림 끝(End Of Bitstream)
EOS 시퀀스 끝(End Of Sequence)
GDR 점진적 디코딩 리프레시(Gradual Decoding Refresh)
HEVC 고효율 비디오 코딩(High Efficiency Video Coding)
HRD 가상 레퍼런스 디코더(Hypothetical Reference Decoder)
IDR 인스턴트 디코딩 리프레시(Instantaneous Decoding Refresh)
JEM 공동 연구 모델(Joint Exploration Model)
LMCS 크로마 스케일링을 사용한 루마 매핑(Luma Mapping with Chroma Scaling)
MCTS 모션 제약 타일 세트(Motion-Constrained Tile Set)
NAL 네트워크 추상화 계층(Network Abstraction Layer)
OLS 출력 계층 세트(Output Layer Set)
PH 픽처 헤더(Picture Header)
PPS 픽처 파라미터 세트(Picture Parameter Set)
PTL 프로필, 티어 및 레벨(Profile, Tier and Level)
PU 픽처 유닛(Picture Unit)
RADL 랜덤 액세스 디코딩가능 리딩(Random Access Decodable Leading)(픽처)
RAP 랜덤 액세스 포인트(Random Access Point)
RASL 랜덤 액세스 시킵된 리딩(Random Access Skipped Leading)(픽처)
RBSP 원시 바이트 시퀀스 페이로드(Raw Byte Sequence Payload)
RPL 레퍼런스 픽처 목록(Reference Picture List)
SAO 샘플 적응형 오프셋(Sample Adaptive Offset)
SEI 추가 개선 정보(Supplemental Enhancement Information)
SPS 시퀀스 파라미터 세트(Sequence Parameter Set)
STSA 단계적 시간적 서브계층 액세스(Step-wise Temporal Sublayer Access)
SVC 스케일러블 비디오 코딩(Scalable Video Coding)
VCL 비디오 코딩 계층(Video Coding Layer)
VPS 비디오 파라미터 세트(Video Parameter Set)
VTM VVC 테스트 모델(VVC Test Model)
VUI 비디오 사용성 정보(Video Usability Information)
VVC 다목적 비디오 코딩(Versatile Video Coding)
3. 초기 논의
비디오 코딩 표준은 주로 잘 알려진 ITU-T 및 ISO/IEC 표준의 개발을 통해 발전해 왔다. ITU-T는 H.261및 H.263을 제작했으며, ISO/IEC는 MPEG-1 및 MPEG-4 비주얼을 제작했으며, 두 조직은 H.262/MPEG-2 비디오 및 H.264/MPEG-4 고급 비디오 코딩(AVC) 및 H.265/HEV 표준을 공동 제작했다. H.262 이후, 비디오 코딩 표준은 시간적 예측(temporal prediction)과 트랜스폼 코딩(transform coding)이 사용되는 하이브리드 비디오 코딩 구조에 기초한다. HEVC를 넘어 미래의 비디오 코딩 기술을 연구하기 위해, 공동 비디오 연구팀(JVET: Joint Video Exploration Team)이 2015년에 VCEG와 MPEG의 공동으로 설립되었다. 그 이후로, JVET에 의해 많은 새로운 방법들이 채택되었고, 공동 연구 모델(JEM: Joint Exploration Model)이라고 명명된 레퍼런스 픽처소프트웨어(reference software)에 적용되었다. JVET 회의는 분기마다 한번 동시 개최되며, 새로운 코딩 표준은 HEVC 대비 비트레이트 50% 감소를 목표로 하고 있다. 새로운 비디오 코딩 표준은 2018년 4월 JVET 회의에서 공식적으로 다목적 비디오 코딩(Versatile Video Coding; VVC)로 명명되었으며, 당시 VVC 테스트 모델(VTM)의 제1 버전이 출시되었다. VVC 표준화에 기여하는 지속적인 노력이 있기 때문에 모든 JVET 회의에서 새로운 코딩 기술이 VVC 표준에 채택되고 있다. VVC 작업 드래프트와 테스트 모델 VTM은 모든 회의 후에 업데이트된다. VVC 프로젝트는 현재 2020년 7월 회의에서 기술 완료(FDIS)를 목표로 하고 있다.
3.1. 파라미터 세트(Parameter sets)
AVC, HEVC 및 VVC는 파라미터 세트을 지정한다. 파라미터 세트의 유형은 SPS, PPS, APS 및 VPS를 포함한다. SPS 및 PPS는 모든 AVC, HEVC 및 VVC에서 지원된다. VPS는 HEVC 이후 도입되었으며 HEVC와 VVC에 모두 포함되어 있다. APS는 AVC 또는 HEVC에 포함되지 않았지만 최신 VVC 초안 텍스트에 포함되었다.
SPS는 시퀀스 레벨 헤더 정보를 전달하도록 설계되었으며 PPS는 자주 변경되지 않는 픽처 레벨 헤더 정보를 전달하도록 설계되었다. SPS 및 PPS를 사용하면 각 시퀀스 또는 픽처에 대해 드물게 변경되는 정보를 반복할 필요가 없으므로 이 정보의 중복 시그널링을 피할 수 있다. 또한 SPS 및 PPS를 사용하면 중요한 헤더 정보의 대역 외 전송이 가능하므로 중복 전송의 필요성을 피할 뿐만 아니라 오류 복원력(error resilience)도 개선된다.
VPS는 다층 비트스트림의 모든 계층에 공통적인 시퀀스 레벨 헤더 정보를 전달하기 위해 도입되었다.
APS는 코딩하는 데 상당한 비트가 필요하고 여러 픽처에서 공유 할 수 있으며 순서대로 매우 다양한 변형이 있을 수 있는 픽처 레벨 또는 슬라이스 레벨 정보를 전달하기 위해 도입되었다.
3.2. VVC의 슬라이스 헤더 및 픽처 헤더(Slice header and picture header in VVC)
HEVC와 마찬가지로, VVC의 슬라이스 헤더는 특정 슬라이스에 대한 정보를 전달한다. 이는 슬라이스 어드레스, 슬라이스 유형, 슬라이스 QP, 픽처 순서 카운트(picture order count)(POC) 최하위 비트(least significant bits)(LSB), RPS 및 RPL 정보, 가중 예측 파라미터, 루프 필터링 파라미터, 타일 및 WPP의 진입 오프셋 등을 포함한다.
VVC는 특정 픽처에 대한 헤더 파라미터를 포함하는 픽처 헤더(PH)를 도입했다. 각 픽처에는 하나 또는 단지 하나의 PH가 있어야 한다. PH는 기본적으로 PH가 도입되지 않은 경우 슬라이스 헤더에 있었을 파라미터를 전달하지만 각 파라미터는 픽처의 모든 슬라이스에 대해 동일한 값을 갖다. 이는 IRAP/GDR 픽처 표시, 인터/인트라 슬라이스 허용 플래그, POC LSB 및 선택적으로 POC MSB, RPL에 대한 정보, 디블로킹, SAO, ALF, QP 델타 및 가중 예측, 코딩 블록 분할 정보, 가상 경계, 공존 픽처 정보 등을 포함한다. 전체 픽처 시퀀스의 각 픽처에 하나의 슬라이스만 포함되는 경우가 종종 있다. 그러한 경우에 각각의 픽처에 대해 적어도 2개의 NAL 유닛을 갖지 않도록 하기 위해, PH 신택스 구조는 PH NAL 유닛 또는 슬라이스 헤더에 포함될 수 있다.
VVC에서, 시간적 모션 벡터 예측에 사용되는 콜 픽처에 대한 정보는 픽처 헤더 또는 슬라이스 헤더에서 시그널링된다.
3.3. VVC의 디블로킹 필터(Deblocking filter in VVC)
VVC에서, 경계가 픽처 경계이기도 한 경우나 슬라이스, 타일 또는 서브픽처 경계에서 디블로킹이 비활성화된 경우 (인코더에서 신호를 보낼 수 있는 옵션) 를 제외하고 CU, TU 및 서브블록 경계에 인접한 샘플에 디블로킹 필터가 적용된다. 디블로킹 필터링 프로세스(deblocking filtering process)는 CU 경계(CU boundaries) 및 트랜스폼 서브를록 경계(transform subblock boundaries)의 경우 4x4 그리드에 적용되고 예측 서브블록 경계(prediction subblock boundaries)의 경우 8x8 그리드에 적용된다. 예측 서브블록 경계는 SBTMVP 및 아핀 모드에 의해 도입된 예측 유닛 경계를 포함하고, 트랜스폼 서브블록 경계는 SBT 및 ISP 모드에서 도입된 트랜스폼 유닛 경계와 대형 CU의 암시적 분할로 인한 트랜스폼을 포함한다. HEVC에서와 같이, 디블로킹 필터의 처리 순서는 먼저 전체 픽처의 수직 가장자리에 대한 수평 필터링으로 정의되고, 그 다음에 수평 가장자리에 대한 수직 필터링으로 정의된다. 이 특정 순서를 사용하면 여러 개의 수평 필터링 또는 수직 필터링 프로세스를 병렬 스레드(parallel thread)에 적용되거나 처리 지연 시간이 짧지만 여전히 CTB별로 CTB 기준으로 구현할 수 있다.
VVC는 긴 디블로킹 필터(deblocking filter)를 지정한다. 필터링 프로세스(filtering process)는 HEVC와 유사하다. 디블로킹 필터의 경계 필터 강도(boundary filter strength)(B)는 인접한 두 블록의 여러 신택스 요소 값에 의해 제어되고, 필터 강도 및 인접 블록의 평균 양자화 파라미터에 따라 미리 정의된 테이블로부터 2개의 임계값 tC 및 β가 결정된다. 루마 샘플의 경우, β와 블록 크기를 기준으로 필터링 없음, 약한 필터링, 짧고 강한 필터링 및 길고 강한 필터링 네 가지 사례 중 하나를 선택한다. 크로마 샘플에는 필터링 없음, 일반 필터링 및 강한 필터링의 세 가지 경우가 있다. HEVC에 비해, 루마 샘플에 대한 길고 강한 필터링과 크로마 샘플에 대한 강한 필터링이 VVC에 새로 도입되었다. 긴 루마 강한 필터링(Long luma strong filtering)은 경계의 한쪽 측면에 있는 샘플이 큰 블록에 속할 때 사용된다. 대형 블록(large block)에 속하는 샘플은 수직 모서리의 경우 폭이 32보다 크거나 같거나 높이가 수평 모서리의 높이가 32보다 클 때 정의된다. 경계의 한 쪽에 있는 최대 7개의 샘플이 강한 필터에서 필터링된다. 크로마 가장자리의 양면이 8보다 크거나 같고 (크로마 샘플 유닛) 각 측면의 크로마 샘플 3개가 필터링될 때 강한 크로마 필터링이 적용된다.
VVC의 루마 적응형 디블로킹은 재구성된 샘플의 평균 루마 레벨을 기반으로 디블로킹 필터의 tC 및 β를 추가로 조정한다. 루마 적응형 디블로킹(luma-adaptive deblocking)이 활성화되면 필터링 경계 주변의 평균 루마 레벨을 기반으로 유도되는 오프셋(QPOffset)이 인접한 두 블록의 평균 양자화 파라미터에 추가된다. QPOffset과 루마 레벨의 매핑 함수는 비디오 콘텐츠의 전달 특성 (전자-광학 전달 함수 (EOTF) 및 광-광학 전달 함수 (OOTF)) 에 따라 유도되어야 하며 SPS로 신호를 보내야 한다.
3.4. VVC에서의 디블로킹 시그널링(Deblocking signalling in VVC)
일부 실시예에서의 디블로킹 시그널링(deblocking signalling)은 다음과 같이 정의된다.
7.3.2.4 픽처 파라미터 세트 RBSP 신텍스.
7.4.3.4 픽처 파라미터 세트 RBSP 시맨틱(Picture parameter set RBSP semantics)
. . .
1과 동일한 deblocking_filter_control_present_flag는 PPS에 디블로킹 필터 제어 신택스 요소의 존재를 지정한다. 0과 동일한 deblocking_filter_control_present_flag는 PPS에 디블로킹 필터 제어 신택스 요소의 부재 및 디블로킹 필터가 0값 디블로킹 β 및 tC 오프셋을 사용하여 PPS를 참조하는 모든 슬라이스에 적용되는 것을 지정한다.
1과 동일한 deblocking_filter_override_enabled_flag는 PPS를 참조하는 PH의 ph_deblocking_filter_override_flag 또는 PPS를 참조하는 슬라이스 헤더의 slice_deblocking_filter_override_flag의 존재를 지정한다. 0과 동일한 deblocking_filter_override_enabled_flag는 PPS를 참조하는 PH에서 ph_deblocking_filter_override_flag 또는 PPS를 참조하는 슬라이스 헤더에서 slice_deblocking_filter_override_flag의 부재를 지정한다. 존재하지 않는 경우, deblocking_filter_override_enabled_flag의 값은 0과 동일한 것으로 유추된다.
1과 동일한 pps_deblocking_filter_disabled_flag는, 다음 두 조건 중 하나가 참인 PPS를 참조하는 슬라이스에는 디블로킹 필터 동작이 적용되지 않음을 지정한다: 1) ph_deblockig_filter_disabled_flag 및 slice_deblocking_filter_disabled_flag는 존재하지 않고, 2) ph_deblockig_filter_disabled_flag 또는 slice_deblocking_filter_disabled_flag는 존재하고 1과 동일하고, 및 또한 ph_deblockig_filter_disabled_flag 또는 slice_deblocking_filter_disabled_flag가 존재하고 0과 동일한 PPS를 참조하는 슬라이스에 디블로킹 필터 동작을 적용하도록 지정한다.
0과 동일한 pps_deblocking_filter_disabled_flag는, 다음 두 조건 중 하나가 참인 PPS를 참조하는 슬라이스에 디블로킹 필터의 동작이 적용됨을 지정한다: 1) ph_deblockig_filter_disabled_flag 및 slice_deblocking_filter_disabled_flag가 존재하지 않고 2) ph_deblockig_filter_disabled_flag 또는 slice_deblocking_filter_disabled_flag가 존재하고 0과 동일하고, 및또한 ph_deblockig_filter_disabled_flag 또는 slice_deblocking_filter_disabled_flag가 존재하고 1과 동일한 PPS를 참조하는 슬라이스에 디블로킹 필터 동작을 적용하지 않도록 지정한다.
존재하지 않는 경우, pps_deblocking_filter_disabled_flag의 값은 0과 동일한 것으로 유추된다.
1과 동일한 dbf_info_in_ph_flag는 디블로킹 필터 정보가 PH 신택스 구조에 존재하고 PH 신택스 구조를 포함하지 않는 PPS를 참조하는 슬라이스 헤더에 존재하지 않음을 지정한다.
0과 동일한 dbf_info_in_ph_flag는 디블로킹 필터 정보가 PH 신택스 구조에 존재하지 않고 PPS를 참조하는 슬라이스 헤더에 존재할 수 있음을 지정한다. 존재하지 않는 경우, dbf_info_in_ph_flag의 값은 0과 동일한 것으로 유추된다.
디폴트 디블로킹 파라미터 오프셋이 PPS를 참조하는 픽처 헤더 또는 슬라이스의 슬라이스 헤더에 있는 디블로킹 파라미터 오프셋에 의해 무시되지 않는 한, pps_luma_beta_offset_div2pps_luma_tc_offset_div2 s는 PPS를 참조하는 슬라이스의 루마 컴포넌트에 적용되는 β 및 tC(2로 나누어진)에 대한 디폴트 디블로킹 파라미터 오프셋을 지정한다. pps_luma_beta_offset_div2 및 pps_luma_tc_offset_div2의 값은 모두 -12에서 12까지를 포함하는 범위에 있어야 한다. 존재하지 않는 경우, pps_luma_beta_offset_div2 및 pps_luma_tc_offset_div2의 값은 모두 0과 동일한 것으로 유추된다.
디폴트 디블로킹 파라미터 오프셋이 PPS를 참조하는 슬라이스의 슬라이스 헤더에 있는 디블로킹 파라미터 오프셋에 의해 무시되지 않는 한, pps_cb_beta_offset_div2pps_cb_tc_offset_div2는 PPS를 참조하는 슬라이스의 Cb 컴포넌트에 적용되는 β 및 tC(2로 나누어진)에 대한 디폴트 디블로킹 파라미터 오프셋을 지정한다. pps_cb_beta_offset_div2 및 pps_cb_tc_offset_div2의 값은 모두 -12에서 12까지를 포함하는 범위에 있어야 한다. 존재하지 않는 경우, pps_cb_beta_offset_div2 및 pps_cb_tc_offset_div2의 값은 각각 pps_luma_beta_offset_div2 및 pps_luma_tc_offset_div2와 동일한 것으로 유추된다.
디폴트 디블로킹 파라미터 오프셋이 PPS를 참조하는 슬라이스의 슬라이스 헤더에 있는 디블로킹 파라미터 오프셋에 의해 무시되지 않는 한, pps_cr_beta_offset_div2 및 pps_cr_tc_offset_div2는 PPS를 참조하는 슬라이스의 Cr 컴포넌트에 적용되는 β 및 tC(2로 나누어진)에 대한 디폴트 디블로킹 파라미터 오프셋을 지정한다. pps_cr_beta_offset_div2 및 pps_cr_tc_offset_div2의 값은 모두 -12에서 12까지를 포함하는 범위에 있어야 한다. 존재하지 않을 때, pps_cr_beta_offset_div2 및 pps_cr_tc_offset_div2의 값은 각각 pps_luma_beta_offset_div2 및 pps_luma_tc_offset_div2와 동일한 것으로 유추된다.
. . .
7.3.2.7 픽처 헤더 구조 신택스(Picture header structure syntax)
7.4.3.7 픽처 헤더 구조 시맨틱(Picture header structure semantics)
1과 동일한 ph_deblocking_filter_override_flag는 디블로킹 파라미터가 PH에 존재하는 것을 지정한다. 0과 동일한 ph_deblocking_filter_override_flag는 디블로킹 파라미터가 PH에 존재하지 않음을 지정한다. 존재하지 않을 때, ph_deblocking_filter_override_flag의 값은 0과 동일한 것으로 유추된다.
1과 동일한 ph_deblocking_filter_disabled_flag는 SH에 slice_deblocking_filter_disabled_flag가 존재하지 않고 1과 동일하거나 SH에 존재하고 1과 동일한 것으로 유추되는 PH와 연관된 슬라이스에 디블로킹 필터의 동작이 적용되지 않고, 및 또한 SH에 slice_deblocking_filter_disabled_flag가 존재하지 않고 0과 동일하거나 SH에 존재하고 0과 동일한 것으로 유추되는 PH와 연관련된 슬라이스에 디블로킹 필터의 동작이 적용되도록 지정한다.
0과 동일한 ph_deblocking_filter_disabled_flag는 디블로킹 필터의 동작은 sh에 slice_deblocking_filter_disabled_flag가 존재하지 않고 0과 동일하거나 SH에 존재하고 0와 동일한 것으로 유추되는 PH와 관련된 슬라이스에 적용되고, 및 또한 SH에 slice_deblocking_filter_disabled_flag가 존재하지 않고고 1과 동일하거나 SH에 존재하고 1과 동일한 것으로 유추되는 PH와 연관된 슬라이스에 디블로킹 필터의 동작이 적용되지 않도록 지정한다.
ph_deblocking_filter_disabled_flag가 존재하지 않는 경우 다음과 같이 유추된다:
pps_deblocking_filter_disabled_flag 및 ph_deblocking_filter_override_flag가 모두 1과 동일한 경우, ph_deblocking_filter_disabled_flag의 값은 0과 동일한 것으로 유추된다.
그렇지 않으면((pps_deblocking_filter_disabled_flag or ph_deblocking_filter_override_flag는 0과 동일함), ph_deblocking_filter_disabled_flag의 값은 pps_deblocking_filter_disabled_flag와 동일한 것으로 유추된다.
ph_luma_beta_offset_div2ph_luma_tc_offset_div2는 PH와 연관된 슬라이스의 루마 컴포넌트에 적용되는 β 및 tC(2로 나눈 값)에 대한 디블로킹 파라미터 오프셋을 지정한다. ph_luma_beta_offset_div2 및 ph_luma_tc_offset_div2의 값은 모두 -12에서 12까지를 포함하는 범위에 있어야 한다. 존재하지 않을 때, ph_luma_beta_offset_div2 및 ph_luma_tc_offset_div2의 값은 각각 pps_cr_beta_offset_div2 및 pps_cr_tc_offset_div2와 동일한 것으로 유추된다.
ph_beta_offset_div2 및 ph_tc_offset_div2는 PH와 관련된 슬라이스의 루마 컴포넌트에 적용되는 β 및 tC(2로 나눈 값)에 대한 디블로킹 파라미터 오프셋을 지정한다. ph_cb_beta_offset_div2 및 ph_cb_tc_offset_div2의 값은 모두 -12에서 12까지를 포함하는 범위에 있어야 한다. 존재하지 않는 경우, ph_cb_beta_offset_div2 및 ph_cb_tc_offset_div2의 값은 각각 ph_luma_beta_offset_div2 및 ph_luma_tc_offset_div2와 동일한 것으로 유추된다.
ph_cr_beta_offset_div2 및 ph_cr_tc_offset_div2는 PH와 관련된 슬라이스의 Cr 컴포넌트에 적용되는 β 및 tC(2로 나눈 값)에 대한 디블로킹 파라미터 오프셋을 지정한다. ph_cr_beta_offset_div2 및 ph_cr_tc_offset_div2의 값은 모두 -12에서 12까지를 포함하는 범위에 있어야 한다. 존재하지 않는 경우, ph_cr_beta_offset_div2 및 ph_cr_tc_offset_div2의 값은 각각 ph_luma_beta_offset_div2 및 ph_luma_tc_offset_div2와 동일한 것으로 유추된다.
. . .
7.3.7.1 일반 슬라이스 헤더 신택스
7.4.8.1 일반 슬라이스 헤더 시맨틱(General slice header semantics)
1과 동일한 slice_deblocking_filter_override_flag는 디블로킹 파라미터가 슬라이스 헤더에 존재하는 것을 지정한다.
0과 동일한 slice_deblocking_filter_override_flag는 디블로킹 파라미터가 슬라이스 헤더에 존재하지 않음을 지정한다. 존재하지 않을 때, slice_deblocking_filter_override_flag의 값은 0과 동일한 것으로 유추된다.
1과 동일한 slice_deblocking_filter_disabled_flag는 디블로킹 필터의 동작이 현재 슬라이스에 적용되지 않음을 지정한다.
0과 동일한 slice_deblocking_filter_disabled_flag는 디블로킹 필터의 동작이 현재 슬라이스에 적용되는 것을 지정한다.
slice_deblocking_filter_disabled_flag가 없는 경우 다음과 같이 유추된다:
pps_deblocking_filter_disabled_flag 및 slice_deblocking_filter_override_flag가 모두 1과 동일한 경우 slice_deblocking_filter_disabled_flag의 값은 0과 동일한 것으로 유추된다.
그렇지 않으면(slice_deblocking_filter_disabled_flag or ph_deblocking_filter_override_flag는 0과 동일함), slice_deblocking_filter_disabled_flag의 값은 ph_deblocking_filter_disabled_flag와 동일한 것으로 유추된다.
slice_luma_beta_offset_div2slice_luma_tc_offset_div2는 현재 슬라이스의 루마 컴포넌트에 적용되는 β 및 tC(2로 나눈 값)에 대한 디블로킹 파라미터 오프셋을 지정한다. slice_luma_beta_offset_div2 및 slice_luma_tc_offset_div2의 값은 모두 -12에서 12까지를 포함하는 범위에 있어야 한다. 존재하지 않는 경우, slice_beta_offset_div2 및 slice_tc_offset_div2의 값은 각각 ph_beta_offset_div2 및 ph_tc_offset_div2와 동일한 것으로 유추된다.
slice_cb_beta_offset_div2slice_cb_tc_offset_div2는 현재 슬라이스의 Cb 컴포넌트에 적용되는 β 및 tC(2로 나누어진)에 대한 디블로킹 파라미터 오프셋을 지정한다. slice_cb_beta_offset_div2 및 slice_cb_tc_offset_div2의 값은 모두 -12에서 12까지를 포함하는 범위에 있어야 한다. 존재하지 않는 경우, slice_cb_beta_offset_div2 및 slice_cb_tc_offset_div2의 값은 각각 slice_luma_beta_offset_div2 및 slice_luma_tc_offset_div2와 동일한 것으로 유추된다.
slice_cb_beta_offset_div2slice_cb_tc_offset_div2는 현재 슬라이스의 Cr 컴포넌트에 적용되는 β 및 tC(2로 나누어진)에 대한 디블로킹 파라미터 오프셋을 지정한다. slice_cr_beta_offset_div2 및 slice_cr_tc_offset_div2의 값은 모두 -12에서 12까지를 포함하는 범위에 있어야 한다. 존재하지 않는 경우, slice_cr_beta_offset_div2 및 slice_cr_tc_offset_div2의 값은 각각 slice_luma_beta_offset_div2 및 slice_luma_tc_offset_div2와 동일한 것으로 유추된다.
4. 개시된 기술 솔루션으로 해결된 기술적 문제의 예
일부 구현의 기존 설계에는 다음과 같은 문제가 있다:
1) 존재하지 않을 때 ph_cb_beta_offset_div2 및 ph_cb_tc_offset_div2의 유추는 pps_cb_beta_offset_div2 및 pps_cb_tc_offset_div2의 값을 쓸모 없게 만든다.
2) 존재하지 않을 때 ph_cr_beta_offset_div2 및 ph_cr_tc_offset_div2의 유추는 pps_cr_beta_offset_div2 및 pps_cr_tc_offset_div2의 값을 쓸모 없게 만든다.
3) 존재하지 않을 때 slice_cb_beta_offset_div2 및 slice_cb_tc_offset_div2의 유추는 ph_cb_beta_offset_div2 및 ph_cb_tc_offset_div2의 값을 쓸모 없게 만든다.
4) 존재하지 않을 때 slice_cr_beta_offset_div2 및 slice_cr_tc_offset_div2의 유추는 ph_cr_beta_offset_div2 및 ph_cr_tc_offset_div2의 값을 쓸모 없게 만든다.
5. 솔루션 및 실시 예의 목록
상기와 같은 문제점을 해결하기 위해, 아래와 같이 정리한 방법을 개시한다. 발명은 일반적인 개념을 설명하기 위한 예시로 간주되어야 하며 좁은 의미로 해석되어서는 안 된다. 또한, 이들 발명은 개별적으로 또는 임의의 방식으로 조합하여 적용될 수 있다.
1) 문제 1을 해결하기 위해, ph_cb_beta_offset_div2 and ph_cb_tc_offset_div2의 유추는 다음과 같이 변경된다:
존재하지 않는 경우, ph_cb_beta_offset_div2 and ph_cb_tc_offset_div2의 값은 다음과 같이 유추된다. pps_chroma_tool_offsets_present_flag가 0과 동일하면, ph_cb_beta_offset_div2 and ph_cb_tc_offset_div2는 각각 ph_luma_beta_offset_div2 and ph_luma_tc_offset_div2와 동일한 것으로 유추된다. 그렇지 않으면, ph_cb_beta_offset_div2 및 ph_cb_tc_offset_div2의 값은 각각 pps_cb_beta_offset_div2 및 pps_cb_tc_offset_div2와 동일한 것으로 유추된다.
2) 문제 2를 해결하기 위해, ph_cr_beta_offset_div2 및 ph_cr_tc_offset_div2의 유추는 다음과 같이 변경된다:
존재하지 않는 경우, ph_cr_beta_offset_div2 및 ph_cr_tc_offset_div2의 값은 다음과 같이 유추된다. pps_chroma_tool_offsets_present_flag가 0과 동일하면, ph_cr_beta_offset_div2 and ph_cr_tc_offset_div2는 각각 ph_luma_beta_offset_div2 and ph_luma_tc_offset_div2와 동일한 것으로 유추된다. 그렇지 않으면, ph_cr_beta_offset_div2 및 ph_cr_tc_offset_div2의 값은 각각 pps_cr_beta_offset_div2 및 pps_cr_tc_offset_div2와 동일한 것으로 유추된다.
3) 문제 3을 해결하기 위해, slice_cb_beta_offset_div2 및 slice_cb_tc_offset_div2의 유추는 다음과 같이 변경된다:
존재하지 않는 경우, slice_cb_beta_offset_div2 and slice_cb_tc_offset_div2의 값은 다음과 같이 유추된다. pps_chroma_tool_offsets_present_flag가 0과 동일하면, slice_cb_beta_offset_div2 and slice_cb_tc_offset_div2는 각각 slice_luma_beta_offset_div2 and slice_luma_tc_offset_div2와 동일한 것으로 유추된다. 그렇지 않으면, slice_cb_beta_offset_div2 및 slice_cb_tc_offset_div2의 값은 각각 ph_cb_beta_offset_div2 and ph_cb_tc_offset_div2와 동일한 것으로 유추된다.
4) 문제 4를 해결하기 위해, slice_cr_beta_offset_div2 및 slice_cr_tc_offset_div2의 유추는 다음과 같이 변경된다:
존재하지 않는 경우, slice_cr_beta_offset_div2 and slice_cr_tc_offset_div2의 값은 다음과 같이 유추된다. pps_chroma_tool_offsets_present_flag가 0과 동일하면, slice_cr_beta_offset_div2 and slice_cr_tc_offset_div2는 각각 slice_luma_beta_offset_div2 and slice_luma_tc_offset_div2와 동일한 것으로 유추된다. 그렇지 않으면, slice_cr_beta_offset_div2 및 slice_cr_tc_offset_div2의 값은 각각 ph_cr_beta_offset_div2 및 ph_cr_tc_offset_div2와 동일한 것으로 유추된다.
6. 실시예
다음은, VVC 사양에 적용될 수 있는, 위의 섹션 5에서 요약된 발명 측면 중 일부에 대한 몇 가지 예시적인 실시예이다. 추가 또는 수정된 대부분의 관련 부품은 굵은 기울임꼴로 밑줄이 그어져 있고 삭제된 부품 중 일부는 []] 를 사용하여 표시된다.
6.1. 제1 실시예
이 실시예는 항목 1, 2, 3 및 4에 대한 것이다.
7.4.3.7 픽처 헤더 구조 시맨틱(Picture header structure semantics)
1과 동일한 ph_deblocking_filter_override_flag는 디블로킹 파라미터가 PH에 존재하는 것을 지정한다. 0과 동일한 ph_deblocking_filter_override_flag는 디블로킹 파라미터가 PH에 존재하지 않음을 지정한다. 존재하지 않을 때, ph_deblocking_filter_override_flag의 값은 0과 동일한 것으로 유추된다.
1과 동일한 ph_deblocking_filter_disabled_flag는 SH에 slice_deblocking_filter_disabled_flag가 존재하지 않고 1과 동일하거나 SH에 존재하고 1과 동일한 것으로 유추되는 PH와 연관된 슬라이스에 디블로킹 필터의 동작이 적용되지 않고, 및 또한 SH에 slice_deblocking_filter_disabled_flag가 존재하지 않고 0과 동일하거나 SH에 존재하고 0과 동일한 것으로 유추되는 PH와 연관련된 슬라이스에 디블로킹 필터의 동작이 적용되도록 지정한다.
0과 동일한 ph_deblocking_filter_disabled_flag는 디블로킹 필터의 동작은 sh에 slice_deblocking_filter_disabled_flag가 존재하지 않고 0과 동일하거나 SH에 존재하고 0와 동일한 것으로 유추되는 PH와 관련된 슬라이스에 적용되고, 및 또한 SH에 slice_deblocking_filter_disabled_flag가 존재하지 않고고 1과 동일하거나 SH에 존재하고 1과 동일한 것으로 유추되는 PH와 연관된 슬라이스에 디블로킹 필터의 동작이 적용되지 않도록 지정한다.
ph_deblocking_filter_disabled_flag가 존재하지 않는 경우 다음과 같이 유추된다:
- pps_deblocking_filter_disabled_flag 및 ph_deblocking_filter_override_flag가 모두 1과 동일한 경우, ph_deblocking_filter_disabled_flag의 값은 0과 동일한 것으로 유추된다.
- 그렇지 않으면((pps_deblocking_filter_disabled_flag or ph_deblocking_filter_override_flag는 0과 동일함), ph_deblocking_filter_disabled_flag의 값은 pps_deblocking_filter_disabled_flag와 동일한 것으로 유추된다.
ph_luma_beta_offset_div2ph_luma_tc_offset_div2는 PH와 연관된 슬라이스의 루마 컴포넌트에 적용되는 β 및 tC(2로 나눈 값)에 대한 디블로킹 파라미터 오프셋을 지정한다. ph_luma_beta_offset_div2 및 ph_luma_tc_offset_div2의 값은 모두 -12에서 12까지를 포함하는 범위에 있어야 한다. 존재하지 않을 때, ph_luma_beta_offset_div2 및 ph_luma_tc_offset_div2의 값은 각각 pps_cr_beta_offset_div2 및 pps_cr_tc_offset_div2와 동일한 것으로 유추된다.
ph_beta_offset_div2 및 ph_tc_offset_div2는 PH와 관련된 슬라이스의 루마 컴포넌트에 적용되는 β 및 tC(2로 나눈 값)에 대한 디블로킹 파라미터 오프셋을 지정한다. ph_cb_beta_offset_div2 및 ph_cb_tc_offset_div2의 값은 모두 -12에서 12까지를 포함하는 범위에 있어야 한다.
존재하지 않는 경우, ph_cb_beta_offset_div2 and ph_cb_tc_offset_div2의 값은 다음과 같이 유추된다. pps_chroma_tool_offsets_present_flag가 0과 동일하면, ph_cb_beta_offset_div2 and ph_cb_tc_offset_div2는 각각 ph_luma_beta_offset_div2 and ph_luma_tc_offset_div2와 동일한 것으로 유추된다. 그렇지 않으면, ph_cb_beta_offset_div2 및 ph_cb_tc_offset_div2의 값은 각각 pps_cb_beta_offset_div2 및 pps_cb_tc_offset_div2와 동일한 것으로 유추된다.
존재하지 않는 경우, ph_cb_beta_offset_div2 및 ph_cb_tc_offset_div2의 값은 각각 ph_luma_beta_offset_div2 및 ph_luma_tc_offset_div2와 동일한 것으로 유추된다.
ph_cr_beta_offset_div2 및 ph_cr_tc_offset_div2는 PH와 관련된 슬라이스의 Cr 컴포넌트에 적용되는 β 및 tC(2로 나눈 값)에 대한 디블로킹 파라미터 오프셋을 지정한다. ph_cr_beta_offset_div2 및 ph_cr_tc_offset_div2의 값은 모두 -12에서 12까지를 포함하는 범위에 있어야 한다.
존재하지 않는 경우, ph_cr_beta_offset_div2 및 ph_cr_tc_offset_div2의 값은 다음과 같이 유추된다. pps_chroma_tool_offsets_present_flag가 0과 동일하면, ph_cr_beta_offset_div2 and ph_cr_tc_offset_div2는 각각 ph_luma_beta_offset_div2 and ph_luma_tc_offset_div2와 동일한 것으로 유추된다. 그렇지 않으면, ph_cr_beta_offset_div2 및 ph_cr_tc_offset_div2의 값은 각각 pps_cr_beta_offset_div2 및 pps_cr_tc_offset_div2와 동일한 것으로 유추된다.
[[존재하지 않는 경우, ph_cr_beta_offset_div2 및 ph_cr_tc_offset_div2의 값은 각각 ph_luma_beta_offset_div2 및 ph_luma_tc_offset_div2와 동일한 것으로 유추된다.]]
. . .
7.4.8.1 일반 슬라이스 헤더 시맨틱(General slice header semantics)
. . .
1과 동일한 slice_deblocking_filter_override_flag는 디블로킹 파라미터가 슬라이스 헤더에 존재하는 것을 지정한다.
0과 동일한 slice_deblocking_filter_override_flag는 디블로킹 파라미터가 슬라이스 헤더에 존재하지 않음을 지정한다. 존재하지 않을 때, slice_deblocking_filter_override_flag의 값은 0과 동일한 것으로 유추된다.
1과 동일한 slice_deblocking_filter_disabled_flag는 디블로킹 필터의 동작이 현재 슬라이스에 적용되지 않음을 지정한다.
0과 동일한 slice_deblocking_filter_disabled_flag는 디블로킹 필터의 동작이 현재 슬라이스에 적용되는 것을 지정한다.
slice_deblocking_filter_disabled_flag가 없는 경우 다음과 같이 유추된다:
- pps_deblocking_filter_disabled_flag 및 slice_deblocking_filter_override_flag가 모두 1과 동일한 경우 slice_deblocking_filter_disabled_flag의 값은 0과 동일한 것으로 유추된다.
- 그렇지 않으면(slice_deblocking_filter_disabled_flag or ph_deblocking_filter_override_flag는 0과 동일함), slice_deblocking_filter_disabled_flag의 값은 ph_deblocking_filter_disabled_flag와 동일한 것으로 유추된다.
slice_luma_beta_offset_div2slice_luma_tc_offset_div2는 현재 슬라이스의 루마 컴포넌트에 적용되는 β 및 tC(2로 나눈 값)에 대한 디블로킹 파라미터 오프셋을 지정한다. slice_luma_beta_offset_div2 및 slice_luma_tc_offset_div2의 값은 모두 -12에서 12까지를 포함하는 범위에 있어야 한다. 존재하지 않는 경우, slice_beta_offset_div2 및 slice_tc_offset_div2의 값은 각각 ph_beta_offset_div2 및 ph_tc_offset_div2와 동일한 것으로 유추된다.
slice_cb_beta_offset_div2slice_cb_tc_offset_div2는 현재 슬라이스의 Cb 컴포넌트에 적용되는 β 및 tC(2로 나누어진)에 대한 디블로킹 파라미터 오프셋을 지정한다. slice_cb_beta_offset_div2 및 slice_cb_tc_offset_div2의 값은 모두 -12에서 12까지를 포함하는 범위에 있어야 한다.
존재하지 않는 경우, slice_cb_beta_offset_div2 and slice_cb_tc_offset_div2의 값은 다음과 같이 유추된다. pps_chroma_tool_offsets_present_flag가 0과 동일하면, slice_cb_beta_offset_div2 and slice_cb_tc_offset_div2는 각각 slice_luma_beta_offset_div2 and slice_luma_tc_offset_div2와 동일한 것으로 유추된다. 그렇지 않으면, slice_cb_beta_offset_div2 및 slice_cb_tc_offset_div2의 값은 각각 ph_cb_beta_offset_div2 and ph_cb_tc_offset_div2와 동일한 것으로 유추된다.
[[존재하지 않는 경우, slice_cb_beta_offset_div2 및 slice_cb_tc_offset_div2의 값은 각각 slice_luma_beta_offset_div2 및 slice_luma_tc_offset_div2와 동일한 것으로 유추된다.]]
slice_cb_beta_offset_div2slice_cb_tc_offset_div2는 현재 슬라이스의 Cr 컴포넌트에 적용되는 β 및 tC(2로 나누어진)에 대한 디블로킹 파라미터 오프셋을 지정한다. slice_cr_beta_offset_div2 및 slice_cr_tc_offset_div2의 값은 모두 -12에서 12까지를 포함하는 범위에 있어야 한다.
존재하지 않는 경우, slice_cr_beta_offset_div2 and slice_cr_tc_offset_div2의 값은 다음과 같이 유추된다. pps_chroma_tool_offsets_present_flag가 0과 동일하면, slice_cr_beta_offset_div2 and slice_cr_tc_offset_div2는 각각 slice_luma_beta_offset_div2 and slice_luma_tc_offset_div2와 동일한 것으로 유추된다. 그렇지 않으면, slice_cr_beta_offset_div2 및 slice_cr_tc_offset_div2의 값은 각각 ph_cr_beta_offset_div2 및 ph_cr_tc_offset_div2와 동일한 것으로 유추된다.
[[존재하지 않는 경우, slice_cr_beta_offset_div2 및 slice_cr_tc_offset_div2의 값은 각각 slice_luma_beta_offset_div2 및 slice_luma_tc_offset_div2와 동일한 것으로 유추된다.]]
도 1은 여기에 개시된 다양한 기술들이 구현될 수 있는 예시적인 비디오 처리 시스템(video processing system)(1900)을 도시하는 블록도이다. 다양한 구현은 시스템(system)(1900)의 컴포넌트 중 일부 또는 전부를 포함할 수 있다. 시스템(1900)은 비디오 컨텐츠를 수신하기 위한 입력(input)(1902)을 포함할 수 있다. 비디오 컨텐츠는 원시 또는 압축되지 않은 포맷, 예를 들어, 8 또는 10비트 다중 컴포넌트 픽셀 값으로 수신될 수 있거나 압축 또는 인코딩된 포맷일 수 있다. 입력(1902)은 네트워크 인터페이스, 주변 버스 인터페이스, 또는 저장 인터페이스를 표현할 수 있다. 네트워크 인터페이스의 예로는 이더넷, 수동 광 네트워크(PON) 등과 동일한 유선 인터페이스와 Wi-Fi 또는 셀룰러 인터페이스와 같은 무선 인터페이스가 있다.
시스템(1900)은 본 문서에 설명된 다양한 코딩 또는 인코딩 방법을 구현할 수 있는 코딩 컴포넌트(coding component)(1904)를 포함할 수 있다. 코딩 컴포넌트(1904)는 비디오의 코딩된 표현을 생성하기 위해 입력(1902)으로부터 코딩 컴포넌트(1904)의 출력으로 비디오의 평균 비트레이트를 감소시킬 수 있다. 따라서 코딩 기술은 비디오 압축 또는 비디오 트랜스코딩 기술이라고도 한다. 코딩 컴포넌트(1904)의 출력은 컴포넌트(component)(1906)에 의해 표현되는 바와 같이, 연결된 통신을 통해 저장되거나 전송될 수 있다. 입력(1902)에서 수신된 비디오의 저장되거나 통신된 비트스트림(또는 코딩된) 표현은 디스플레이 인터페이스(1910)로 전송되는 픽셀 값 또는 디스플레이 가능한 비디오를 생성하기 위해 컴포넌트(1908)에 의해 사용될 수 있다. 비트스트림 표현( bitstream representation)에서 사용자가 볼 수 있는 비디오를 생성하는 프로세스를 비디오 압축 해제(decompression)라고도 한다. 또한, 특정 비디오 처리 동작을 "코딩" 동작(coding operation) 또는 툴(tools)로 지칭하지만, 코딩 툴 또는 동작이 인코더에서 사용되고 코딩 결과를 되돌리는 대응하는 디코딩 툴 또는 동작이 디코더에 의해 수행된다는 점을 이해할 것이다.
주변 버스 인터페이스 또는 디스플레이 인터페이스의 예로는 범용 직렬 버스(USB) 또는 고화질 멀티미디어 인터페이스(HDMI) 또는 디스플레이포트 등이 포함될 수 있다. 스토리지 인터페이스의 예로는 SATA(직렬 첨단 기술 첨부 파일), PCI, IDE 인터페이스 등이 있다. 본 문서에 기재된 기술은 휴대전화, 노트북, 스마트폰 또는 디지털 데이터 처리 및/또는 비디오 디스플레이를 수행할 수 있는 기타 장치와 같은 다양한 전자 기기에 구현될 수 있다.
도 2는 비디오 처리 장치(3600)의 블록도이다. 장치(apparatus)(3600)는 여기에 설명된 방법 중 하나 이상을 구현하는 데 사용될 수 있다. 장치(3600)는 스마트폰, 태블릿, 컴퓨터, 사물 인터넷(IoT) 수신기 등으로 구현될 수 있다. 장치(3600)는 하나 이상의 프로세서(processor)(3602), 하나 이상의 메모리(memory)(3604) 및 비디오 처리 하드웨어(video processing hardware)(3606)를 포함할 수 있다. 프로세서(들)(3602)는 본 문서에 설명된 하나 이상의 방법을 구현하도록 구성될 수 있다. 메모리(메모리들)(3604)는 여기에 설명된 방법 및 기술을 구현하는 데 사용되는 데이터 및 코드를 저장하는 데 사용될 수 있다. 비디오 처리 하드웨어(video processing hardware)(3606)는 하드웨어 회로에서 본 문서에 설명된 일부 기술을 구현하는 데 사용될 수 있다.
도 4는 본 개시의 기술을 활용할 수 있는 예제 비디오 코딩 시스템(100)을 예시하는 블록도이다.
도 4의 도시된 바와 같이, 비디오 코딩 시스템(100)은 소스 장치(source device)(110) 및 목적 장치(destination device)(120)를 포함할 수 있다. 소스 장치(110)는 인코딩된 비디오 데이터를 생성하고, 비디오 인코딩 장치로 참조될 수 있다. 목적 장치(120)는 소스 장치(110)에 의해 생성된 인코딩된 비디오 데이터를 디코딩할 수 있고, 비디오 디코딩 장치로 참조될 수 있다.
소스 장치(110)에는 비디오 소스(112), 비디오 인코더(114) 및 입력/출력(I/O) 인터페이스(116)가 포함될 수 있다.
비디오 소스(112)에는 비디오 캡처 장치, 비디오 컴텐츠 공급자로부터 비디오 데이터를 수신하는 인터페이스, 비디오 데이터를 생성하기 위한 컴퓨터 그래픽 시스템 또는 이러한 소스의 조합을 포함할 수 있다. 비디오 데이터는 하나 이상의 픽처를 포함할 수 있다. 비디오 인코더(114)는 비디오 소스(112)의 비디오 데이터를 인코딩하여 비트스트림을 생성한다. 비트스트림에는 비디오 데이터의 코딩된 표현을 형성하는 비트들의 시퀀스가 포함될 수 있다. 비트스트림에는 코딩된 픽처 및 관련 데이터가 포함될 수 있다. 코딩된 픽처는 픽처의 코딩된 표현(representation)이다. 관련 데이터에는 시퀀스 파라미터 세트, 픽처 파라미터 세트 및 기타 신택스 구조가 포함될 수 있다. I/O 인터페이스(116)는 변조기/복조기(모뎀) 및/또는 송신기(transmitter)를 포함할 수 있다. 인코딩된 비디오 데이터는 네트워크(130a)를 거쳐, I/O 인터페이스(116)를 통해 목적 장치(120)로 직접 전송될 수 있다. 인코딩된 비디오 데이터는 목적 장치(120)에 의한 액세스를 위해 저장 매체/서버(130b)에 저장될 수도 있다.
목적 장치(120)는 I/O 인터페이스(126), 비디오 디코더(124) 및 디스플레이 장치(122)를 포함할 수 있다.
I/O 인터페이스(126)는 수신기 및/또는 모뎀을 포함할 수 있다. I/O 인터페이스(126)는 소스 장치(110) 또는 저장 매체/서버(130b)로부터 인코딩된 비디오 데이터를 획득할 수 있다. 비디오 디코더(124)는 인코딩된 비디오 데이터를 디코딩할 수 있다. 디스플레이 장치(122)는 디코딩된 비디오 데이터를 사용자에게 디스플레이 할 수 있다. 디스플레이 장치(122)는 목적 장치(120)와 통합될 수 있거나, 외부 디스플레이 장치와 인터페이스 하도록 구성된 목적 장치(120)의 외부에 위치할 수 있다.
비디오 인코더(114) 및 비디오 디코더(124)는 고효율 비디오 코딩(HEVC) 표준, 다목적 비디오 코딩(VVC) 표준 및 기타 현재 및/또는 추가 표준과 동일한 비디오 압축 표준에 따라 동작할 수 있다.
도 5는 도 4에 예시된 시스템(100)의 비디오 인코더(video encoder)(114)일 수 있는 비디오 인코더(video encoder)(200)의 예를 도시하는 블록도이다.
비디오 인코더(200)는 본 개시의 기술 중 어느 또는 전부를 수행하도록 구성될 수 있다. 도 5의 예에서, 비디오 인코더(200)는 복수의 기능적 컴포넌트들을 포함한다. 본 개시에 기재된 기술은 비디오 인코더(200)의 다양한 컴포넌트들 간에 공유될 수 있다. 일부 예에서, 프로세서는 본 개시에 기재된 임의 또는 전부를 수행하기 위해 구성될 수 있다.
비디오 인코더(video encoder)(200)의 기능적 컴포넌트는 파티션 유닛(partition unit)(201)와, 모드 선택 유닛(mode select unit)(203), 모션 추정 유닛(motion estimation unit)(204), 모션 보상 유닛(motion compensation unit)(205) 및 인트라 예측 유닛(intra prediction unit)(206)을 포함할 수 있는 예측 유닛(predication unit)(202)과, 잔차 생생 유닛(residual generation unit)(207), 트랜스폼 유닛(transform unit)(208), 양자화 유닛(quantization unit)(209), 역양자화 유닛(inverse quantization unit)(210), 역트랜스폼 유닛(inverse transform unit)(211), 재구성 유닛(reconstruction unit)(212), 버퍼(buffer)(213), 및 엔트로피 인코딩 유닛(entropy encoding unit)(214)를 포함할 수 있다.
다른 예에서, 비디오 인코더(200)에는 더 많거나, 적거나, 다른 기능적 컴포넌트가 포함될 수 있다. 예를 들어, 예측 유닛(202)는 인트라 블록 카피(IBC) 유닛을 포함할 수 있다. IBC 유닛은 IBC 모드에서, 적어도 하나의 레퍼런스 픽처가 현재 비디오 블록이 있는 픽처인 경우, 예측을 수행할 수 있다.
더욱이, 모션 추정부(204) 및 모션 보정부(205)와 같은 일부 컴포넌트는 고도로(highly) 통합될 수 있으나, 도 5의 예에서는 설명의 목적을 위해 분리된 것으로 표현되었다.
파티션 장치(201)는 픽처를 하나 이상의 비디오 블록으로 파티셔닝할 수 있다. 비디오 인코더(200) 및 비디오 디코더(300)는 다양한 비디오 블록 크기를 지원할 수 있다.
모드 선택 유닛(203)는 오류 결과에 기초하여 코딩 모드, 예를 들면, 인트라 또는 인터 등을 선택하고, 결과인 인트라 또는 인터 코딩된 블록을, 잔차 생성 유닛(207)에 제공하여 잔차 블록 데이터를 생성하고, 재구성 유닛(212)으로 제공하여 레퍼런스 픽처로 사용하기 위한 인커딩된 블록을 재구성한다. 일부 예에서, 모드 선택 유닛(203)는 인트라 및 인터 예측(CIIP) 모드의 조합을 선택할 수 있고, 이 모드에서 예측은 인터 예측 시그널 및 인트라 예측 시그널에 기초한다. 모드 선택 유닛(203)는 또한, 인터 예측의 경우, 블록에 대한 모션 벡터의 해상도(예를 들어, 서브 픽셀 또는 정수 픽셀 정밀도)를 선택할 수 있다.
현재 비디오 블록에서 인터 예측을 수행하기 위해, 모션 추정 유닛(204)는 버퍼(213)에서 현재 비디오 블록에 하나 이상의 레퍼런스 프레임을 비교하여 현재 비디오 블록에 대한 모션 정보를 생성할 수 있다. 모션 보상 유닛(205)는 현재 비디오 블록과 연관된 픽처 이외의 버퍼(213)로부터의 모션 정보 및 디코딩된 픽처 샘플에 기초하여 현재 비디오 블록에 대한 예측 비디오 블록을 결정할 수 있다.
모션 추정 유닛(204) 및 모션 보상 유닛(205)는 현재 비디오 블록이 I 슬라이스, P 슬라이스 또는 B 슬라이스에 있는지 여부에 따라 현재 비디오 블록에 대해 서로 다른 동작을 수행할 수 있다.
일부 예에서, 모션 추정 유닛(204)은 현재 비디오 블록에 대한 유니-디렉셔널(uni-directional) 예측을 수행할 수 있고, 모션 추정 유닛(204)은 현재 비디오 블록에 대한 레퍼런스 비디오 블록에 대한 list 0 또는 list 1의 레퍼런스 픽처를 검색할 수 있다. 그런 다음, 모션 추정 유닛(204)는 현재 비디오 블록과 레퍼런스 비디오 블록 사이의 공간 변위(spatial displacement)를 나타내는 레퍼런스 비디오 블록 및 모션 벡터를 포함하는 목록 0 또는 목록 1에서 레퍼런스 픽처를 나타내는 레퍼런스 인덱스(reference index)를 생성할 수 있다. 모션 추정 유닛(204)는 레퍼런스 인덱스, 예측 디렉션 표시자 및 모션 벡터를 현재 비디오 블록의 모션 정보로 출력할 수 있다. 모션 보상 유닛(205)는 현재 비디오 블록의 동작 정보에 의해 표시된 레퍼런스 비디오 블록에 기초하여 현재 블록의 예측된 비디오 블록을 생성할 수 있다.
다른 예에서, 모션 추정 유닛(204)는 현재 비디오 블록에 대한 바이-디렉셔널(bi-directional) 예측을 수행할 수 있고, 모션 추정 유닛(204)는 현재 비디오 블록에 대한 레퍼런스 비디오 블록에 대한 목록 0에서 레퍼런스 픽처를 검색할 수 있으며, 또한 현재 비디오 블록에 대한 다른 레퍼런스 비디오 블록에 대한 목록 1에서 레퍼런스 픽처를 검색할 수 있다. 그런 다음, 모션 추정 유닛(204)는 레퍼런스 비디오 블록과 현재 비디오 블록 사이의 공간 변위를 나타내는 레퍼런스 비디오 블록 및 모션 벡터를 포함하는 목록 0 및 목록 1에서 레퍼런스 픽처를 나타내는 레퍼런스 인덱스를 생성할 수 있다. 모션 추정 유닛(204)는 현재 비디오 블록의 모션 정보로서 현재 비디오 블록의 레퍼런스 인덱스 및 모션 벡터를 출력할 수 있다. 모션 보상 유닛(205)은 현재 비디오 블록의 동작 정보에 의해 표시된 레퍼런스 비디오 블록에 기초하여 현재 비디오 블록의 예측 비디오 블록을 생성할 수 있다.
일부 예에서, 모션 추정 유닛(204)는 디코더의 디코딩 처리를 위한 전체 모션 정보 세트를 출력할 수 있다.
일부 예에서, 모션 추정 유닛(204)는 현재 비디오에 대한 전체 모션 정보 세트를 출력하지 않을 수 있다. 오히려, 모션 추정 유닛(204)는 다른 비디오 블록의 동작 정보를 참조하여 현재 비디오 블록의 모션 정보를 시그널링할 수 있다. 예를 들어, 모션 추정 유닛(motion estimation unit)(204)는 현재 비디오 블록의 모션 정보가 이웃 비디오 블록의 동작 정보와 충분히 유사하다고 결정할 수 있다.
하나의 예에서, 모션 추정 유닛(204)는 현재 비디오 블록과 연결된 신택스 구조에서 현재 비디오 블록이 다른 비디오 블록과 동일한 모션 정보를 가지고 있음을 비디오 디코더(300)에 나타내는 값을 나타낼 수 있다.
또 다른 예에서, 모션 추정 유닛(204)는 현재 비디오 블록과 연관된 신택스 구조에서, 다른 비디오 블록 및 모션 벡터 차이(MVD)를 식별할 수 있다. 모션 벡터 차이는 현재 비디오 블록의 모션 벡터와 표시된 비디오 블록의 모션 벡터 사이의 차이를 나타낸다. 비디오 디코더(300)는 현재 비디오 블록의 모션 벡터를 결정하기 위해 표시된 비디오 블록의 모션 벡터 및 모션 벡터 차이를 사용할 수 있다.
위에서 설명한 바와 같이, 비디오 인코더(200)는 모션 벡터를 예측적으로 시그널링할 수 있다. 비디오 인코더(200)에 의해 구현될 수 있는 예측 시그널링 기술의 두 가지 예는, 어드밴스드 모션 벡터 예측(AMVP) 및 병합 모드 시그널링을 포함한다.
인트라 예측 유닛(206)은 현재 비디오 블록에 대한 인트라 예측을 수행할 수 있다. 인트라 예측 유닛(206)이 현재 비디오 블록에 대한 인트라 예측을 수행하는 경우, 인트라 예측 유닛(206)는 동일 픽처에서 다른 비디오 블록의 디코딩된 샘플에 기초하여 현재 비디오 블록에 대한 예측 데이터를 생성할 수 있다. 현재 비디오 블록에 대한 예측 데이터에는 예측된 비디오 블록 및 다양한 신택스 요소가 포함될 수 있다.
잔차 생성 유닛(207)는 현재 비디오 블록으로부터 예측된 비디오 블록의 예측 비디오 블록(예를 들어, 마이너스 기호로 표시)을 빼서 현재 비디오 블록에 대한 잔차 데이터를 생성할 수 있다. 현재 비디오 블록의 잔차 데이터는 현재 비디오 블록에서 샘플의 상이한 샘플 컴포넌트에 대응하는 잔차 비디오 블록을 포함할 수 있다.
다른 예에서, 현재 비디오 블록에 대한 현재 비디오 블록에 대한 잔차 데이터가 없을 수 있고, 예를 들어 스킵(skip) 모드에서, 잔차 생성 유닛(207)는 빼기 동작을 수행하지 않을 수 있다.
트랜스폼 처리 유닛(208)는 현재 비디오 블록과 연결된 잔차 비디오 블록에 하나 이상의 트랜스폼을 적용하여 현재 비디오 블록에 대해 하나 이상의 트랜스폼 계수 비디오 블록을 생성할 수 있다.
트랜스폼 처리 유닛(208)는 현재 비디오 블록과 연관된 트랜스폼 계수 비디오 블록을 생성한 후, 양자화 유닛(209)는 현재 비디오 블록과 연관된 하나 이상의 양자화 파라미터(QP) 값에 기초하여 현재 비디오 블록과 연관된 트랜스폼 계수 비디오 블록을 양자화할 수 있다.
역양자화 유닛(210)와 역트랜스폼 유닛(211)는 트랜스폼 계수 비디오 블록으로부터 잔차 비디오 블록을 재구성하기 위해, 트랜스폼 계수 비디오 블록에 역양자화 유닛 및 역트랜스폼 유닛을 각각 적용할 수 있다. 재구성 유닛(212)는 예측 유닛(202)에 의해 생성된 하나 이상의 예측된 비디오 블록으로부터 대응하는 샘플에 재구성된 잔차 비디오 블록을 추가하여 버퍼(213)에 저장하기 위한 현재 블록과 연관된 재구성된 비디오 블록을 생성할 수 있다.
재구성 유닛(212)가 비디오 블록을 재구성한 후, 비디오 블록에서 비디오 차단 아티팩트를 줄이기 위해 루프 필터링 동작이 수행된다.
엔트로피 인코딩 유닛(214)은 비디오 인코더(200)의 다른 함수 컴포넌트로부터 데이터를 수신할 수 있다. 엔트로피 인코딩 유닛(214)가 데이터를 수신하는 경우, 엔트로피 인코딩 유닛(214)는 엔트로피 인코딩된 데이터를 생성하고 엔트로피 인코딩된 데이터를 포함하는 비트스트림을 출력하기 위해 하나 이상의 엔트로피 인코딩 동작을 수행할 수 있다.
도 6은 도 4에 예시된 시스템(100)의 비디오 디코더(114)일 수 있는 비디오 디코더(300)의 예를 도시하는 블록도이다.
비디오 디코더(300)는 본 개시의 기술 중 어느 또는 전부를 수행하도록 구성될 수 있다. 도 6의 예에서, 비디오 디코더(300)는 복수의 기능적 컴포넌트를 포함한다. 본 개시에 기재된 기술은 비디오 디코더(300)의 다양한 컴포넌트들 간에 공유될 수 있다. 일부 예에서, 프로세서는 본 개시에 기재된 임의 또는 전부를 수행하기 위해 구성될 수 있다.
도 6의 예에서, 비디오 디코더(video decoder)(300)는 엔트로피 디코딩 유닛(entropy decoding unit)(301), 모션 보상 유닛(motion compensation unit)(302), 인트라 예측 유닛(intra prediction unit)(303), 역양자화 유닛(inverse quantization unit)(304), 역트랜스폼 유닛(inverse transformation uni)(305), 및 재구성 유닛(reconstruction unit)(306) 및 버퍼(buffer)(307)를 포함한다. 비디오 디코더(300)는, 일부 예에서, 비디오 인코더(200)에 대하여 기술된 인코딩 패스(pass)와 일반적으로 서로 주고 받는(reciprocal) 디코딩 패스를 수행할 수 있다(도 5).
엔트로피 디코딩 유닛(301)는 인코딩된 비트스트림을 검색할 수 있다. 인코딩된 비트스트림에는 엔트로피 코딩된 비디오 데이터(예를 들어, 비디오 데이터의 인코딩된 블록)가 포함될 수 있다. 엔트로피 디코딩 유닛(301)는 엔트로피 코딩된 비디오 데이터를 디코딩할 수 있고, 엔트로피 디코딩된 비디오 데이터로부터 모션 보상 유닛(302)는 모션 벡터, 모션 벡터 정밀도, 레퍼런스 픽처 목록 인덱스 및 기타 모션 정보를 포함하는 모션 정보를 결정할 수 있다. 모션 보상 유닛(302)는, 예를 들어 AMVP 및 병합 모드를 수행하여 이러한 정보를 결정할 수 있다.
모션 보상 유닛(302)는 보간 필터에 기초하여 보간(interpolation)을 수행하여 모션 보정 블록을 생성할 수 있다. 서브 픽셀 정밀도와 함께 사용되는 보간 필터에 대한 식별자가 신택스 요소에 포함될 수 있다.
모션 보상 유닛(302)는 비디오 블록을 인코딩하는 동안 비디오 인코더(200)에서 사용하는 보간 필터를 사용하여 레퍼런스 블록의 서브 정수 픽셀에 대한 보간 값을 계산할 수 있다. 모션 보상 유닛(302)는 수신된 신택스 정보에 따라 비디오 인코더(200)에서 사용하는 보간 필터를 결정하고 보간 필터를 사용하여 예측 블록을 생성할 수 있다.
모션 보상 유닛(302)는 인코딩된 비디오 시퀀스의 프레임 및/또는 슬라이스를 인코딩하는 데 사용되는 블록의 크기, 인코딩된 비디오 시퀀스의 각 매크로 블록이 파티셔닝되는 방식을 설명하는 파티션 정보, 각 파티션이 인코딩된 방법, 각 파티션이 인코딩되는 방식을 나타내는 모드, 각 인터-인코딩된 블록에 대한 하나 이상의 레퍼런스 프레임(및 레퍼런스 프레임 목록) 및 인코딩된 비디오 시퀀스를 디코딩하는 다른 정보들을 결정하기 위해 일부 신택스 정보를 사용할 수 있다.
인트라 예측 유닛(303)는, 공간적으로 인접한 블록(adjacent block)으로부터 예측 블록을 형성하기 위해 예를 들어 비트스트림에서 수신된 인트라 예측 모드를 사용할 수 있다. 역양자화 유닛(303)는 비트스트림에서 제공되고 엔트로피 디코딩 유닛(301)에서 디코딩된 양자화된 비디오 블록 계수를 역양자화(예를 들어, 비양자화(de-quantize))한다. 역트랜스폼 유닛(Inverse transform unit)(303)은 역트랜스폼을 적용한다.
재구성 유닛(Reconstruction unit)(306)은 모션 보상 유닛(202) 또는 인트라 예측 유닛(303)에 의해 생성된 대응하는 예측 블록과 잔차 블록을 합산하여 디코딩된 블록을 형성할 수 있다. 원하는 경우, 디블로킹 필터(deblocking filter)를 적용하여 차단 아티팩트를 제거하기 위해 디코딩된 블록을 필터링할 수도 있다. 디코딩된 비디오 블록은 버퍼(307)에 저장되고, 이는 이후의 모션 보상/인트라 예측에 대한 레퍼런스 블록을 제공하고, 디스플레이 장치에서 재생하기 위한 디코딩된 비디오를 생성한다.
일부 실시예에서, 선호하는 솔루션 목록이 다음에 제공된다.
다음 솔루션은 이전 섹션(예를 들어, 아이템 1 내지 4)에서 논의된 기술의 예시적인 실시예를 보여준다.
1. 비디오 처리 방법(예를 들어, 도 3에 도시된 방법(300))에서, 하나 이상의 비디오 블록을 포함하는 비디오와 비디오의 코딩된 표현 사이의 변환을 수행하는 단계(3002)를 포함하고; 여기서 변환은 포맷 규칙에 따라 코딩된 표현에서 파라미터가 시그널링되는 디블로킹 필터를 사용하여 재구성된 비디오 블록이 선택적으로 필터링되는 디블로킹 필터링 동작을 수행하는 단계를 포함하고, 여기서 포맷 규칙은 크로마 컴포넌트에 사용되는 디블로킹 필터의 파라미터가 코딩된 표현으로부터 유추되는 유추 규칙을 포함한다.
2. 솔루션 1의 방법에서, 크로마 컴포넌트는 cr 컴포넌트에 있다.
3. 솔루션 1 내지 2의 임의의 방법에서, 크로마 컴포넌트는 cb 컴포넌트이다.
4. 솔루션 1 내지 3 중 어느 방법에서, 유추 규칙은 디블로킹 필터에 대한 베타(beta) 파라미터 및 디블로킹 필터에 대한 오프셋 파라미터가 코딩된 표현에 포함된 플래그의 값에 기초하여 유추되도록 지정한다.
5. 솔루션 4의 방법에서, 유추 규칙은 플래그의 제1 값에 대해 베타(beta) 파라미터 및 오프셋 파라미터가 0으로 유추되도록 지정한다.
6. 솔루션 4 내지 5 중 어느 방법에서, 유추 규칙은 플래그의 제2 값에 대해 베타(beta) 파라미터 및 오프셋 파라미터가 해당 루마 블록에 대한 베타(beta) 및 오프셋 파라미터로부터 유도되도록 명시한다.
7. 솔루션 1 내지 6의 방법 중 어느 하나에서, 변환은 비디오를 코딩된 표현으로 인코딩하는 단계를 포함한다.
8. 솔루션 1 내지 6의 방법 중 어느 하나에서, 변환은 비디오의 픽셀 값을 생성하기 위해 코딩된 표현을 디코딩하는 단계를 포함한다.
9. 솔루션 1 내지 8의 방법 중 어느 하나 이상에 인용된 방법을 구현하도록 구성된 프로세서를 포함하는 비디오 디코딩 장치.
10. 솔루션 1 내지 8의 방법 중 어느 하나 이상에 인용된 방법을 구현하도록 구성된 프로세서를 포함하는 비디오 인코딩 장치.
11. 컴퓨터 코드가 저장되어 있는 컴퓨터 프로그램에서, 코드는, 프로세서에 의해 실행 시, 프로세서로 하여금 솔루션 1 내지 8 중 어느 하나 이상에 인용된 방법을 구현하도록 한다.
12. 본 문서에 기술된 방법, 장치 및 시스템.
도 7은 본 기술에 따른 비디오 처리 방법(700)의 흐름도 표현이다. 방법(700)은, 동작(710)에서, 비디오의 비디오 픽처와 비디오의 비트스트림 사이의 변환을 수행하는 단계를 포함한다. 변환(conversion)은 파라미터가 표시된 디블로킹 필터를 사용하여 재구성된 비디오 블록(reconstructed video block)의 적어도 일부 샘플이 선택적으로 필터링되는 디블로킹 필터링 동작(deblocking filtering operation)을 수행하는 단계를 포함한다. 제1 비디오 유닛(first video unit)에서 하나 이상의 슬라이스(slice)에 대한 크로마 컴포넌트(chroma component)에 적용되는 β에 대한 디블로킹 파라미터 오프셋(deblocking parameter offset)을 2로 나눈 값을 지정하는 제1 비디오 유닛 레벨(first video unit level)의 제1 신택스 요소(first syntax element) 및 제1 비디오 유닛에서 하나 이상의 슬라이스에 대한 크로마 컴포넌트에 적용되는 tC에 대한 디블로킹 파라미터 오프셋을 2로 나눈 값을 지정하는 제1 비디오 유닛 레벨 내의 제2 신택스 요소(second syntax element)는 비트스트림에 포함되지 않은 제1 신택스 요소와 제2 신택스 요소에 응답하여 규칙에 따라 결정된다. 규칙은 (1) 신택스 플래그(syntax flag)가 크로마 툴 오프셋이 픽처 파라미터 세트에 존재함을 나타내는 경우, 제1 신택스 요소는 제2 비디오 유닛과 연관된 크로마 컴포넌트에 적용되는 β에 대한 디블로킹 파라미터 오프셋을 2로 나눈 값을 지정하는 제2 비디오 유닛 레벨의 제3 신택스 요소와 동일하고, 제2 신택스 요소는 제2 비디오 유닛과 연관된 크로마 컴포넌트에 적용되는 tC에 대한 디블로킹 파라미터 오프셋을 2로 나눈 값을 지정하는 제2 비디오 유닛 레벨의 제4 신택스 요소와 동일하고, (2) 신택스 플래그(syntax flag)가 크로마 툴 오프셋이 픽처 파라미터 세트에 존재하지 않음을 나타내는 경우, 제1 신택스 요소(first syntax element)는, 제1 비디오 유닛(first video unit)에서 하나 이상의 슬라이스(slice)에 대한 루마 컴포넌트(luma component)에 적용되는 β에 대한 디블로킹 파라미터 오프셋(deblocking parameter offset)을 2로 나눈 값을 지정하는 제1 비디오 유닛 레벨(first video unit level)의 제5 신택스 요소와 동일하고, 및 제2 신택스 요소(first syntax element)는, 제1 비디오 유닛(first video unit)에서 하나 이상의 슬라이스(slice)에 대한 루마 컴포넌트(luma component)에 적용되는 tC에 대한 디블로킹 파라미터 오프셋(deblocking parameter offset)을 2로 나눈 값을 지정하는 제1 비디오 유닛 레벨(first video unit level)의 제6 신택스 요소와 동일함을 지정한다.
일부 실시예에서, 크로마 컴포넌트는 cb 컴포넌트이다. 일부 실시예에서, 크로마 컴포넌트는 cr 컴포넌트이다. 일부 실시예에서, 제1 비디오 유닛 레벨은 픽처 헤더이고, 제2 비디오 유닛 레벨은 픽처 파라미터 세트이다. 일부 실시예에서, 제1 비디오 유닛은 픽처고, 제2 비디오 유닛은 하나 이상의 픽처를 포함한다. 일부 실시예에서, 제1 비디오 유닛 레벨은 슬라이스 헤더이고, 제2 비디오 유닛 레벨은 픽처 헤더이다. 일부 실시예에서, 제1 비디오 유닛은 슬라이스이고, 제2 비디오 유닛은 픽처다.
일부 실시예에서, 신택스 플래그는 픽처 파라미터 세트에 존재하는 크로마 툴 오프셋에 응답하여 1과 동일하다. 일부 실시예에서, 신택스 플래그는 픽처 파라미터 세트에서 크로마 툴 오프셋이 생략되는 것에 응답하여 0과 동일하다.
일부 실시예에서, 변환은 비디오를 비트스트림으로 인코딩하는 단계를 포함한다. 일부 실시예에서, 변환은 비트스트림으로부터 비디오를 디코딩하는 단계를 포함한다.
본 문서에서 "비디오 처리(video processing)"라는 용어는 비디오 인코딩, 비디오 디코딩, 비디오 압축 또는 비디오 압축 해제(decompression)를 의미할 수 있다. 예를 들어, 비디오 압축 알고리즘은 비디오의 픽셀 표현에서 대응하는 비트스트림 표현으로 또는 그 반대로 변환 동안 적용될 수 있다. 현재 비디오 블록의 비트스트림 표현은, 예를 들어, 신택스에 의해 정의된 바와 같이 비트스트림 내의 다른 위치들에 함께 배치(병치)(co-located)되거나 확산되는 비트들에 대응할 수 있다. 예를 들어, 매크로블록(macroblock)은 트랜스폼 및 코딩된 오류 잔차 값의 관점에서, 그리고 또한 비트스트림의 헤더 및 기타 필드에 비트를 사용하여 인코딩 될 수 있다. 또한, 변환 동안, 디코더는 위의 솔루션에서 설명된 바와 같이 결정에 기초하여 일부 필드들이 존재하거나 없을 수 있다는 지식으로 비트스트림을 파싱할 수 있다. 유사하게, 인코더는 특정 신택스 필드가 포함되는지 여부를 결정할 수 있고, 이에 따라 코딩된 표현으로부터 신택스 필드를 포함하거나 또는 제외함으로써 코딩된 표현을 생성할 수 있다.
본 문서에 기재된 개시 및 기타 솔루션, 예, 실시예, 모듈 및 기능적 동작(operation)은 디지털 전자 회로, 또는 컴퓨터 소프트웨어, 펌웨어 또는 하드웨어에서 구현될 수 있으며, 여기에는 이 문서 및 그 구조적 등가물 또는 그 중 하나 이상의 조합으로 구현될 수 있다. 개시된 및 기타 실시예는 하나 이상의 컴퓨터 프로그램 제품으로 구현될 수 있고, 즉, 컴퓨터 프로그램 지침의 하나 이상의 모듈을 컴퓨터 판독 가능한 매체에 인코딩 하여 실행하거나, 데이터 처리 장치의 작동을 제어할 수 있다. 컴퓨터 판독 가능 매체는 기계 판독 가능 저장 장치, 기계 판독 가능 저장 기판, 메모리 장치, 기계 판독 가능 전파 신호에 영향을 미치는 물질의 조성 또는 하나 이상의 조합일 수 있다. 용어 "데이터 처리 장치"는 예를 들어, 프로그래밍 가능한 프로세서, 컴퓨터 또는 다중 프로세서 또는 컴퓨터를 포함하여 데이터를 처리하기 위한 모든 장치, 장치 및 컴퓨터를 포함한다. 장치는 하드웨어에 추가하여 대응 컴퓨터 프로그램에 대한 실행 환경을 생성하는 코드, 예를 들어 프로세서 펌웨어, 프로토콜 스택, 데이터베이스 관리 시스템, 운영 체제, 또는 이들 중 하나 이상의 조합을 구성하는 코드를 포함할 수 있다. 전파된 신호는 인위적으로 생성된 신호, 예를 들어, 기계에서 생성된 전기, 광학 또는 전자기 신호이고, 이는 적합한 수신기 장치로 전송하기 위한 정보를 인코딩 하기 위해 생성된다.
컴퓨터 프로그램(프로그램, 소프트웨어, 소프트웨어 애플리케이션, 스크립트 또는 코드라고도 함)은 컴파일 된 언어를 비롯한 모든 형태의 프로그래밍 언어로 작성할 수 있으며 독립 실행형 프로그램 또는 컴퓨팅 환경에서 사용하기에 적합한 모듈, 컴포넌트, 서브루틴 또는 기타 유닛으로 모든 형태로 배포할 수 있다. 컴퓨터 프로그램이 파일 시스템의 파일에 반드시 대응하는 것은 아니다. 프로그램은 다른 프로그램이나 데이터(예를 들어, 마크업 언어 문서에 저장된 하나 이상의 스크립트), 대응하는 프로그램에 전용되는 단일 파일 또는 여러 조정된 파일들(예를 들어, 하나 이상의 모듈, 서브 프로그램 또는 코드 일부를 저장하는 파일)에 저장할 수 있다. 컴퓨터 프로그램은 한 컴퓨터 또는 한 사이트에 위치하거나 여러 사이트에 분산되고 통신 네트워크에 의해 상호 연결된 여러 컴퓨터에서 실행하도록 배포할 수 있다.
이 문서에 설명된 프로세스 및 논리 흐름은 하나 이상의 프로그래밍 가능한 프로세서가 하나 이상의 프로그래밍 가능한 프로세서에서 수행하여 입력 데이터에서 작동하고 출력을 생성하여 기능을 수행할 수 있다. 프로세스 및 로직 흐름도 수행될 수 있으며, 장치는 특수 목적 논리 회로, 예를 들어, FPGA(필드 프로그래밍 가능한 게이트 어레이) 또는 ASIC(애플리케이션 별 집적 회로)로 구현될 수 있다.
컴퓨터 프로그램의 실행에 적합한 프로세서에는 예를 들어, 일반 및 특수 목적 마이크로프로세서와 모든 종류의 디지털 컴퓨터의 하나 이상의 프로세서가 포함된다. 일반적으로 프로세서는 읽기 전용 메모리 또는 랜덤 액세스 메모리 또는 둘 다에서 지침과 데이터를 받게 된다. 컴퓨터의 필수 요소는 지침과 데이터를 저장하기 위한 하나 이상의 메모리 장치를 수행하기 위한 프로세서이다. 일반적으로, 컴퓨터는 또한 데이터를 저장하기 위한 하나 이상의 대용량 저장 장치, 예를 들어, 자기, 광자기 디스크, 또는 광 디스크로부터 데이터를 수신하거나 이들로 데이터를 전송하거나 둘 전체를 포함하거나 작동 가능하게 연결된다. 그러나, 컴퓨터에 이러한 장치가 필요하지 않다. 컴퓨터 프로그램 지침 및 데이터를 저장하는 데 적합한 컴퓨터 판독 가능한 미디어에는 반도체 메모리 장치, 예를 들어, EPROM, EEPROM 및 플래시 메모리 장치, 자기 디스크, 예를 들어, 내부 하드 디스크 또는 이동식 디스크; 마그네토 광학 디스크; 및 CD ROM 및 DVD-ROM 디스크를 비롯한 모든 형태의 비휘발성 메모리, 미디어 및 메모리 장치가 포함된다. 프로세서와 메모리는 특수 목적 논리 회로에 의해 보충되거나 통합될 수 있다.
이 특허 문서에는 많은 세부 사항이 포함되어 있지만, 이는 어떤 주제의 범위 나 청구될 수 있는 것에 대한 제한으로 해석되어서는 안되고, 오히려 특정 기술의 특정 구현예에 특정할 수 있는 특징에 대한 설명으로 해석되어서는 안 된다. 이 특허 문서에 기재된 특정 특징은 별도의 실시예의 맥락에서 또한 단일 실시예에서 조합하여 구현될 수 있다. 역으로, 단일 실시예의 맥락에서 설명된 다양한 특징은 또한 개별적으로 또는 임의의 적절한 서브 조합으로 다중 실시예들에서도 구현될 수 있다. 더욱이, 앞서와 같이 특징들은 특정 조합으로 작용하는 것으로 설명될 수 있고 심지어 처음에 그렇게 주장될 수도 있지만, 청구된 조합으로부터 하나 이상의 특징은 어떤 경우에는 조합으로부터 제외될 수 있고, 주장된 조합은 서브 조합 또는 서브 조합의 변형에 관한 것일 수 있다.
마찬가지로, 동작은 특정 순서로 도면에 묘사되어 있지만, 바람직한 결과를 달성하기 위하여, 이러한 동작이 표시된 특정 순서 또는 순차적인 순서로 수행되거나, 모든 예시된 동작들이 수행되는 것을 요구하는 것으로 이해되어서는 안 된다. 더욱이, 본 특허 문서에 기재된 실시예들에서, 다양한 시스템 컴포넌트들의 분리가 모든 실시예들에서 이러한 분리를 요구하는 것으로 이해되어서는 안 된다.
단지 몇 가지 구현 및 예제만 설명되며, 이 특허 문서에서 기술되고 예시되는 내용에 기초하여 다른 구현들, 개선 및 변형들을 만들 수 있다.

Claims (20)

  1. 비디오 처리 방법에서,
    상기 방법은:
    비디오의 비디오 픽처와 상기 비디오의 비트스트림 사이의 변환을 수행하는 단계
    를 포함하고,
    상기 변환은,
    파라미터가 표시된 디블로킹 필터를 사용하여 재구성된 비디오 블록의 적어도 일부 샘플이 선택적으로 필터링되는 디블로킹 필터링 동작을 수행하는 단계
    를 포함하고,
    제1 비디오 유닛에서 하나 이상의 슬라이스에 대한 크로마 컴포넌트에 적용되는 β에 대한 디블로킹 파라미터 오프셋을 2로 나눈 값을 지정하는 제1 비디오 유닛 레벨의 제1 신택스 요소 및
    상기 제1 비디오 유닛에서 상기 하나 이상의 슬라이스에 대한 상기 크로마 컴포넌트에 적용되는 tC에 대한 디블로킹 파라미터 오프셋을 2로 나눈 값을 지정하는 상기 제1 비디오 유닛 레벨의 제2 신택스 요소는,
    상기 비트스트림에 포함되지 않은 상기 제1 신택스 요소와 상기 제2 신택스 요소에 응답하여
    규칙에 따라 결정되고, 및
    상기 규칙은,
    (1) 신택스 플래그가 크로마 툴 오프셋이 픽처 파라미터 세트에 존재함을 나타내는 경우,
    상기 제1 신택스 요소는,
    제2 비디오 유닛과 연관된 크로마 컴포넌트에 적용되는 β에 대한 디블로킹 파라미터 오프셋을 2로 나눈 값을 지정하는 제2 비디오 유닛 레벨의 제3 신택스 요소와 동일하고,
    상기 제2 신택스 요소는,
    제2 비디오 유닛과 연관된 크로마 컴포넌트에 적용되는 tC에 대한 디블로킹 파라미터 오프셋을 2로 나눈 값을 지정하는 제2 비디오 유닛 레벨의 제4 신택스 요소와 동일하고, 및
    (2) 상기 신택스 플래그가 상기 크로마 툴 오프셋이 상기 픽처 파라미터 세트에 존재하지 않음을 나타내는 경우,
    상기 제1 신택스 요소는,
    상기 제1 비디오 유닛에서 상기 하나 이상의 슬라이스에 대한 루마 컴포넌트에 적용되는 β에 대한 상기 디블로킹 파라미터 오프셋을 2로 나눈 값을 지정하는 상기 제1 비디오 유닛 레벨의 제5 신택스 요소와 동일하고,
    상기 제2 신택스 요소는,
    상기 제1 비디오 유닛에서 상기 하나 이상의 슬라이스에 대한 상기 루마 컴포넌트에 적용되는 tC에 대한 상기 디블로킹 파라미터 오프셋을 2로 나눈 값을 지정하는 상기 제1 비디오 유닛 레벨의 제6 신택스 요소와 동일함
    을 지정하는
    방법.
  2. 제1항에 있어서,
    상기 크로마 컴포넌트는,
    cb 컴포넌트인
    방법.
  3. 제1항에 있어서,
    상기 크로마 컴포넌트는,
    cr 컴포넌트인
    방법.
  4. 제1항에 있어서,
    상기 제1 비디오 유닛 레벨은,
    픽처 헤더이고,
    상기 제2 비디오 유닛 레벨은,
    상기 픽처 파라미터 세트인
    방법.
  5. 제4항에 있어서,
    상기 제1 신택스 요소는,
    현재 픽처의 슬라이스에 대한 크로마 컴포넌트에 적용되는 2로 나눈 β에 대한 상기 디블로킹 파라미터 오프셋을 지정하고 및
    상기 제2 신택스 요소는,
    상기 현재 픽처의 슬라이스에 대한 상기 크로마 컴포넌트에 적용되는 2로 나눈 tC에 대한 상기 디블로킹 파라미터 오프셋을 지정하는
    방법.
  6. 제4항에 있어서,
    상기 제1 비디오 유닛은,
    픽처이고,
    상기 제2 비디오 유닛은,
    하나 이상의 픽처를 포함하는
    방법.
  7. 제1항에 있어서,
    상기 제1 비디오 유닛 레벨은, 슬라이스 헤더이고,
    상기 제2 비디오 유닛 레벨은,
    픽처 헤더인
    방법.
  8. 제7항에 있어서,
    상기 제1 비디오 유닛은, 슬라이스이고,
    상기 제2 비디오 유닛은,
    픽처인
    방법.
  9. 제7항에 있어서,
    상기 제1 신택스 요소는,
    현재 슬라이스에 대한 크로마 컴포넌트에 적용된 2로 나눈 β에 대한 상기 디블로킹 파라미터 오프셋을 지정하고 및
    상기 제2 신택스 요소는,
    상기 현재 슬라이스에 대한 상기 크로마 컴포넌트에 적용되는 2로 나눈 tC에 대한 상기 디블로킹 파라미터 오프셋을 지정하는
    방법.
  10. 제1항에 있어서,
    상기 신택스 플래그는,
    상기 픽처 파라미터 세트에 존재하는 상기 크로마 툴 오프셋에 대한 응답으로 1과 동일한
    방법.
  11. 제1항에 있어서,
    상기 신택스 플래그는,
    상기 픽처 파라미터 세트에서 상기 크로마 툴 오프셋이 생략되는 것에 응답으로 0과 동일한
    방법.
  12. 제1항에 있어서,
    상기 변환은,
    상기 비디오를 상기 비트스트림으로 인코딩하는 단계
    를 포함하는
    방법.
  13. 제1항에 있어서,
    상기 변환은,
    상기 비트스트림으로 부터 상기 비디오를 디코딩하는 단계
    를 포함하는
    방법.
  14. 프로세서 및 명령들이 있는 비일시적 메모리를 포함하는 비디오 데이터를 처리하기 위한 장치에 있어서,
    상기 명령은,
    상기 프로세서에 의한 실행 시,
    상기 프로세서로 하여금,
    비디오의 비디오 픽처와 상기 비디오의 비트스트림 사이의 변환을 수행
    하게 하고,
    상기 변환은,
    파라미터가 표시된 디블로킹 필터를 사용하여 재구성된 비디오 블록의 적어도 일부 샘플이 선택적으로 필터링되는 디블로킹 필터링 동작을 수행하는 단계
    를 포함하고,
    제1 비디오 유닛에서 하나 이상의 슬라이스에 대한 크로마 컴포넌트에 적용되는 β에 대한 디블로킹 파라미터 오프셋을 2로 나눈 값을 지정하는 제1 비디오 유닛 레벨의 제1 신택스 요소 및
    상기 제1 비디오 유닛에서 상기 하나 이상의 슬라이스에 대한 상기 크로마 컴포넌트에 적용되는 tC에 대한 디블로킹 파라미터 오프셋을 2로 나눈 값을 지정하는 상기 제1 비디오 유닛 레벨의 제2 신택스 요소는,
    상기 비트스트림에 포함되지 않은 상기 제1 신택스 요소와 상기 제2 신택스 요소에 응답하여
    규칙에 따라 결정되고, 및
    상기 규칙은,
    (1) 신택스 플래그가 크로마 툴 오프셋이 픽처 파라미터 세트에 존재함을 나타내는 경우,
    상기 제1 신택스 요소는,
    제2 비디오 유닛과 연관된 크로마 컴포넌트에 적용되는 β에 대한 상기 디블로킹 파라미터 오프셋을 2로 나눈 값을 지정하는 제2 비디오 유닛 레벨의 제3 신택스 요소와 동일하고,
    상기 제2 신택스 요소는,
    상기 제2 비디오 유닛과 연관된 상기 크로마 컴포넌트에 적용되는 tC에 대한 상기 디블로킹 파라미터 오프셋을 2로 나눈 값을 지정하는 상기 제2 비디오 유닛 레벨의 제4 신택스 요소와 동일하고, 및
    (2) 상기 신택스 플래그가 상기 크로마 툴 오프셋이 상기 픽처 파라미터 세트에 존재하지 않음을 나타내는 경우,
    상기 제1 신택스 요소는,
    상기 제1 비디오 유닛에서 상기 하나 이상의 슬라이스에 대한 루마 컴포넌트에 적용되는 β에 대한 상기 디블로킹 파라미터 오프셋을 2로 나눈 값을 지정하는 상기 제1 비디오 유닛 레벨의 제5 신택스 요소와 동일하고,
    상기 제2 신택스 요소는,
    상기 제1 비디오 유닛에서 상기 하나 이상의 슬라이스에 대한 상기 루마 컴포넌트에 적용되는 tC에 대한 상기 디블로킹 파라미터 오프셋을 2로 나눈 값을 지정하는 상기 제1 비디오 유닛 레벨의 제6 신택스 요소와 동일함
    을 지정하는
    장치.
  15. 제14항에 있어서,
    상기 제1 비디오 유닛은,
    픽처이고,
    상기 제2 비디오 유닛은,
    하나 이상의 픽처를 포함하고,
    상기 제1 신택스 요소는,
    현재 픽처의 슬라이스에 대한 크로마 컴포넌트에 적용되는 2로 나눈 β에 대한 상기 디블로킹 파라미터 오프셋을 지정하고
    상기 제2 신택스 요소는 상기 현재 픽처의 슬라이스에 대한 상기 크로마 컴포넌트에 적용되는 2로 나눈 tC에 대한 상기 디블로킹 파리미터 오프셋을 지정하는
    장치.
  16. 제14항에 있어서,
    상기 제1 비디오 유닛은,
    슬라이스이고,
    상기 제2 비디오 유닛은 픽처이고,
    상기 제1 신택스 요소는,
    현재 슬라이스에 대한 크로마 컴포넌트에 적용되는 2로 나눈 β에 대한 상기 디블로킹 파라미터 오프셋을 지정하고,
    상기 제2 신택스 요소는,
    상기 현재 슬라이스에 대한 상기 크로마 컴포넌트에 적용되는 tC를 2로 나눈 상기 디블로킹 파라미터 오프셋을 지정하는
    장치.
  17. 제14항에 있어서,
    상기 신택스 플래그는,
    상기 픽처 파리미터 세트에 존재하는 상기 크로마 툴 오프셋에 대한 응답으로,
    1과 동일한
    장치.
  18. 제14항에 있어서,
    상기 신택스 플래그는,
    상기 픽처 파리미터 세트에 존재하는 상기 크로마 툴 오프셋에 대한 응답으로,
    0과 동일한
    장치.
  19. 명령을 저장하는 비일시적 컴퓨터 판독 가능 저장 매체에 있어서,
    상기 명령은,
    프로세서로 하여금:
    비디오의 비디오 픽처와 상기 비디오의 비트스트림 사이의 변환을 수행
    하게 하고,
    상기 변환은,
    파라미터가 표시된 디블로킹 필터를 사용하여 재구성된 비디오 블록의 적어도 일부 샘플이 선택적으로 필터링되는 디블로킹 필터링 동작을 수행하는 단계
    를 포함하고,
    제1 비디오 유닛에서 하나 이상의 슬라이스에 대한 크로마 컴포넌트에 적용되는 β에 대한 디블로킹 파라미터 오프셋을 2로 나눈 값을 지정하는 제1 비디오 유닛 레벨의 제1 신택스 요소 및
    상기 제1 비디오 유닛에서 상기 하나 이상의 슬라이스에 대한 상기 크로마 컴포넌트에 적용되는 tC에 대한 디블로킹 파라미터 오프셋을 2로 나눈 값을 지정하는 상기 제1 비디오 유닛 레벨의 제2 신택스 요소는,
    상기 비트스트림에 포함되지 않은 상기 제1 신택스 요소와 상기 제2 신택스 요소에 응답하여 규칙에 따라 결정되고, 및
    상기 규칙은,
    (1) 신택스 플래그가 크로마 툴 오프셋이 픽처 파라미터 세트에 존재함을 나타내는 경우,
    상기 제1 신택스 요소는,
    제2 비디오 유닛과 연관된 크로마 컴포넌트에 적용되는 β에 대한 상기 디블로킹 파라미터 오프셋을 2로 나눈 값을 지정하는 제2 비디오 유닛 레벨의 제3 신택스 요소와 동일하고,
    상기 제2 신택스 요소는,
    상기 제2 비디오 유닛과 연관된 상기 크로마 컴포넌트에 적용되는 tC에 대한 상기 디블로킹 파라미터 오프셋을 2로 나눈 값을 지정하는 상기 제2 비디오 유닛 레벨의 제4 신택스 요소와 동일하고, 및
    (2) 상기 신택스 플래그가 상기 크로마 툴 오프셋이 상기 픽처 파라미터 세트에 존재하지 않음을 나타내는 경우,
    상기 제1 신택스 요소는,
    상기 제1 비디오 유닛에서 상기 하나 이상의 슬라이스에 대한 루마 컴포넌트에 적용되는 β에 대한 상기 디블로킹 파라미터 오프셋을 2로 나눈 값을 지정하는 상기 제1 비디오 유닛 레벨의 제5 신택스 요소와 동일하고,
    상기 제2 신택스 요소는,
    상기 제1 비디오 유닛에서 상기 하나 이상의 슬라이스에 대한 상기 루마 컴포넌트에 적용되는 tC에 대한 상기 디블로킹 파라미터 오프셋을 2로 나눈 값을 지정하는 상기 제1 비디오 유닛 레벨의 제6 신택스 요소와 동일함
    을 지정하는
    비일시적 컴퓨터 판독 가능 저장 매체.
  20. 비디오 처리 장치에 의해 수행되는 방법에 의해 생성되는 비디오의 비트스트림을 저장하는 비일시적 컴퓨터 판독 가능 기록 매체에 있어서,
    상기 방법은:
    상기 비디오의 비디오 픽처와 상기 비디오의 비트스트림 사이의 변환을 수행하는 단계
    를 포함하고,
    상기 변환은,
    파라미터가 표시된 디블로킹 필터를 사용하여 재구성된 비디오 블록의 적어도 일부 샘플이 선택적으로 필터링되는 디블로킹 필터링 동작을 수행하는 단계
    를 포함하고,
    제1 비디오 유닛에서 하나 이상의 슬라이스에 대한 크로마 컴포넌트에 적용되는 β에 대한 디블로킹 파라미터 오프셋을 2로 나눈 값을 지정하는 제1 비디오 유닛 레벨의 제1 신택스 요소 및
    상기 제1 비디오 유닛에서 상기 하나 이상의 슬라이스에 대한 상기 크로마 컴포넌트에 적용되는 tC에 대한 디블로킹 파라미터 오프셋을 2로 나눈 값을 지정하는 상기 제1 비디오 유닛 레벨의 제2 신택스 요소는,
    상기 비트스트림에 포함되지 않은 상기 제1 신택스 요소와 상기 제2 신택스 요소에 응답하여 규칙에 따라 결정되고, 및
    상기 규칙은,
    (1) 신택스 플래그가 크로마 툴 오프셋이 픽처 파라미터 세트에 존재함을 나타내는 경우,
    상기 제1 신택스 요소는,
    제2 비디오 유닛과 연관된 크로마 컴포넌트에 적용되는 β에 대한 상기 디블로킹 파라미터 오프셋을 2로 나눈 값을 지정하는 제2 비디오 유닛 레벨의 제3 신택스 요소와 동일하고,
    상기 제2 신택스 요소는,
    상기 제2 비디오 유닛과 연관된 상기 크로마 컴포넌트에 적용되는 tC에 대한 상기 디블로킹 파라미터 오프셋을 2로 나눈 값을 지정하는 상기 제2 비디오 유닛 레벨의 제4 신택스 요소와 동일하고, 및
    (2) 상기 신택스 플래그가 상기 크로마 툴 오프셋이 픽처 파라미터 세트에 존재하지 않음을 나타내는 경우,
    상기 제1 신택스 요소는,
    상기 제1 비디오 유닛에서 상기 하나 이상의 슬라이스에 대한 루마 컴포넌트에 적용되는 β에 대한 상기 디블로킹 파라미터 오프셋을 2로 나눈 값을 지정하는 상기 제1 비디오 유닛 레벨의 제5 신택스 요소와 동일하고,
    상기 제2 신택스 요소는,
    상기 제1 비디오 유닛에서 상기 하나 이상의 슬라이스에 대한 상기 루마 컴포넌트에 적용되는 tC에 대한 상기 디블로킹 파라미터 오프셋을 2로 나눈 값을 지정하는 상기 제1 비디오 유닛 레벨의 제6 신택스 요소와 동일함
    을 지정하는
    비일시적 컴퓨터 판독 가능 기록 매체.

KR1020227036045A 2020-04-29 2021-04-27 비디오 픽처 헤더의 필터 파라미터 시그널링 KR102616383B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020237043232A KR20240000623A (ko) 2020-04-29 2021-04-27 비디오 픽처 헤더의 필터 파라미터 시그널링

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US202063017499P 2020-04-29 2020-04-29
US63/017,499 2020-04-29
PCT/US2021/029416 WO2021222260A1 (en) 2020-04-29 2021-04-27 Filter parameter signaling in video picture headers

Related Child Applications (1)

Application Number Title Priority Date Filing Date
KR1020237043232A Division KR20240000623A (ko) 2020-04-29 2021-04-27 비디오 픽처 헤더의 필터 파라미터 시그널링

Publications (2)

Publication Number Publication Date
KR20230002429A KR20230002429A (ko) 2023-01-05
KR102616383B1 true KR102616383B1 (ko) 2023-12-21

Family

ID=78332159

Family Applications (2)

Application Number Title Priority Date Filing Date
KR1020227036045A KR102616383B1 (ko) 2020-04-29 2021-04-27 비디오 픽처 헤더의 필터 파라미터 시그널링
KR1020237043232A KR20240000623A (ko) 2020-04-29 2021-04-27 비디오 픽처 헤더의 필터 파라미터 시그널링

Family Applications After (1)

Application Number Title Priority Date Filing Date
KR1020237043232A KR20240000623A (ko) 2020-04-29 2021-04-27 비디오 픽처 헤더의 필터 파라미터 시그널링

Country Status (7)

Country Link
US (2) US11997318B2 (ko)
EP (1) EP4128763A4 (ko)
JP (2) JP7372483B2 (ko)
KR (2) KR102616383B1 (ko)
CN (1) CN115486067A (ko)
BR (1) BR112022021853A2 (ko)
WO (1) WO2021222260A1 (ko)

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9445128B2 (en) * 2006-12-08 2016-09-13 Freescale Semiconductor, Inc. System and method of determining deblocking control flag of scalable video system for indicating presentation of deblocking parameters for multiple layers
US9344723B2 (en) * 2012-04-13 2016-05-17 Qualcomm Incorporated Beta offset control for deblocking filters in video coding
US10708591B2 (en) 2017-03-20 2020-07-07 Qualcomm Incorporated Enhanced deblocking filtering design in video coding
RU2768016C1 (ru) * 2018-03-30 2022-03-23 Шарп Кабусики Кайся Системы и способы применения фильтров деблокирования к восстановленным видеоданным
KR20220127351A (ko) * 2020-02-04 2022-09-19 후아웨이 테크놀러지 컴퍼니 리미티드 하이 레벨 신택스를 시그널링하는 것에 관한 인코더, 디코더 및 대응하는 방법
WO2021167830A1 (en) 2020-02-21 2021-08-26 Alibaba Group Holding Limited Methods for processing chroma signals
BR112022015618A2 (pt) 2020-02-25 2022-09-27 Panasonic Ip Corp America Codificador, decodificador, método de codificação e método de decodificação
US11303897B2 (en) * 2020-02-25 2022-04-12 Tencent America LLC Method and apparatus for signaling of chroma quantization parameters
WO2021194229A1 (ko) * 2020-03-23 2021-09-30 엘지전자 주식회사 비디오 또는 이미지 코딩 시스템에서 디블록킹 필터 파라미터 정보를 시그널링하는 방법
EP4131971A4 (en) 2020-04-02 2024-04-17 LG Electronics, Inc. IMAGE CODING METHODS BASED ON CHROMA DEBLOCKING PARAMETER INFORMATION FOR SINGLE COLOR FORMAT IN A VIDEO OR IMAGE CODING SYSTEM
US11470358B2 (en) * 2020-04-02 2022-10-11 Sharp Kabushiki Kaisha Systems and methods for signaling scaling window information in video coding

Non-Patent Citations (5)

* Cited by examiner, † Cited by third party
Title
AhG 9: Removed Redundant Coding of Chroma Deblocking Filter Parameters, JVET-R0172
AHG9: Chroma deblocking strength signaling, JVET-R0081-v1
AHG9: On signaling of deblocking parameters for coding monochrome pictures, JVET-R0078
Chroma deblocking parameters based on chroma coding tools, JVET-R0077-v1
On Deblocking Control, JVET-R0106-v1

Also Published As

Publication number Publication date
US20230328294A1 (en) 2023-10-12
JP2023519760A (ja) 2023-05-12
KR20230002429A (ko) 2023-01-05
US20230090012A1 (en) 2023-03-23
EP4128763A4 (en) 2023-08-30
CN115486067A (zh) 2022-12-16
US11997318B2 (en) 2024-05-28
JP7372483B2 (ja) 2023-10-31
EP4128763A1 (en) 2023-02-08
WO2021222260A1 (en) 2021-11-04
KR20240000623A (ko) 2024-01-02
JP2023179750A (ja) 2023-12-19
BR112022021853A2 (pt) 2022-12-20

Similar Documents

Publication Publication Date Title
JP7443548B2 (ja) ビデオビットストリームにおける参照ピクチャ情報のシグナリング
KR20220120566A (ko) 비디오 비트스트림들에서의 가상 참조 디코더 파라미터들의 시그널링에 대한 제약들
KR20220114558A (ko) 비디오 코딩에서의 프로필, 티어 및 계층 표시
KR20220155277A (ko) 스케일러블 비디오 코딩의 랜덤 액세스 포인트 액세스 유닛
KR20220115957A (ko) 비디오 코딩에서의 디코딩 파라미터 세트들
JP7514330B2 (ja) ローカルデュアルツリーモードタイプ定義を伴うパレットモード
KR20230025787A (ko) 코딩된 비디오에서 양자화 정보의 시그널링
KR20220155293A (ko) 비디오 코딩에서 픽처 출력 플래그 표시
KR102616383B1 (ko) 비디오 픽처 헤더의 필터 파라미터 시그널링
CN115299063A (zh) 变换跳过残差编解码
JP7415038B2 (ja) 映像コーディングにおける適合性ウィンドウパラメータ
JP2023515513A (ja) サブピクチャレベルに基づいたパーティション計算
JP2023519402A (ja) 変換スキップモードにおける係数コーディング
JP2023528592A (ja) ビデオコーディングでのサブピクチャ及びタイルの使用

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
GRNT Written decision to grant