KR20240024975A - 비디오 인코딩, 비디오 디코딩 방법, 장치, 전자 기기 및 저장 매체 - Google Patents

비디오 인코딩, 비디오 디코딩 방법, 장치, 전자 기기 및 저장 매체 Download PDF

Info

Publication number
KR20240024975A
KR20240024975A KR1020247002467A KR20247002467A KR20240024975A KR 20240024975 A KR20240024975 A KR 20240024975A KR 1020247002467 A KR1020247002467 A KR 1020247002467A KR 20247002467 A KR20247002467 A KR 20247002467A KR 20240024975 A KR20240024975 A KR 20240024975A
Authority
KR
South Korea
Prior art keywords
picture
weighted prediction
video
parameters
identification information
Prior art date
Application number
KR1020247002467A
Other languages
English (en)
Inventor
샤오웨이 시에
자오 우
핑 우
핀롱 차이
잉 가오
Original Assignee
지티이 코포레이션
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 지티이 코포레이션 filed Critical 지티이 코포레이션
Publication of KR20240024975A publication Critical patent/KR20240024975A/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/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/573Motion compensation with multiple frame prediction using two or more reference frames in a given prediction direction
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • 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/124Quantisation
    • H04N19/126Details of normalisation or weighting functions, e.g. normalisation matrices or variable uniform quantisers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • 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)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • General Health & Medical Sciences (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Computational Linguistics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Evolutionary Computation (AREA)
  • Artificial Intelligence (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

본 발명의 실시예는 비디오 인코딩, 비디오 디코딩 방법, 장치, 전자 기기 및 저장 매체를 제공하며, 여기서, 상기 비디오 인코딩 방법은, 비디오 픽쳐를 획득하되, 상기 비디오 픽쳐는 비디오의 적어도 한 프레임의 픽쳐인 단계(110); 및 상기 비디오 픽쳐에 대해 가중 예측 인코딩을 수행하여 픽쳐 코드 스트림을 생성하되, 상기 가중 예측 인코딩에는 적어도 한 세트의 가중 예측 식별 정보 및 파라미터가 사용되는 단계(120)를 포함한다.

Description

비디오 인코딩, 비디오 디코딩 방법, 장치, 전자 기기 및 저장 매체
관련 출원의 상호 참조
본 발명은 출원 번호가 202110875430.8이고, 출원 일자가 2021년 7월 30일인 중국 특허 출원을 기반으로 제출되었고, 해당 중국 특허의 우선권을 주장하는 바, 해당 중국 특허 출원의 모든 내용은 참조로서 본 발명에 의해 인용된다.
본 발명은 픽쳐 처리 기술분야에 관한 것으로, 특히 비디오 인코딩, 비디오 디코딩 방법, 장치, 전자 기기 및 저장 매체에 관한 것이다.
디지털 미디어 기술의 급속한 발전에 따라 비디오는 중요한 커뮤니케이션 매체가 되었는 바, 비디오 형태의 커뮤니케이션, 오락 및 학습은 점차 대중의 일상생활에 융합되어 일반 사용자에게 점점 더 가까워지고 있다. 현재 일반적인 비디오 형식에서는 테마 콘텐츠의 시작 부분이나 종료 부분에 그라데이션 특수 효과를 추가하는 경우가 많은데, 페이드 인 및 페이드 아웃 효과를 통해 관중들에게 보다 자연스럽고 편안한 시청 경험을 제공한다.
네트워크 대역폭에 대한 데이터 전송 압력을 줄이기 위해, 비디오 인코딩 및 디코딩 기술은 멀티미디어 분야의 중요한 연구 콘텐츠로 되고 있다. 비디오 인코딩을 수행할 때, 프레임 간 예측 기술은 시간 도메인 데이터 중복을 효과적으로 제거하여 비디오 전송 비트율을 크게 줄일 수 있다. 그러나, 비디오 시퀀스에서 페이드 인 및 페이드 아웃, 렌즈 조리개 변조, 전체 또는 국부적 광원 변경 등과 같이 밝기 변화 장면이 발생하는 경우, 기존의 프레임 간 움직임 추정 도메인에서 움직임 보상은 이상적인 데이터 압축 효과를 달성하기 어렵고, 실제 인코딩 과정에서 밝기가 변하는 로컬 콘텐츠 블록을 만나더라도 최적화 모델의 결정 결과는 일반적으로 프레임 내 예측 인코딩을 채택하는 것이므로 비디오 인코딩 효율이 크게 떨어진다. 따라서, 콘텐츠 밝기 변화 장면 내의 인코딩 효과를 개선하기 위해, 비디오 인코딩에서 가중 예측 기술을 사용할 수 있으며, 밝기 변화가 감지되면, 인코딩단에서 참조 픽쳐에 대한 현재 픽쳐의 밝기 변화 가중치 및 오프셋을 결정하고, 밝기 보상 동작에 의해 대응되는 가중 예측 프레임이 생성된다.
현재 H.264/AVC 표준에는 가중 예측 기술이 제안되어 있는데, 가중 예측을 적용하는 데에는 명시적 가중 예측 및 암시적 가중 예측 이 두 모드가 있다. 암시적 가중 예측의 경우, 모델 파라미터가 모두 고정되어 있는 바, 즉 인코딩 및 디코딩단은 동일한 가중 예측 파라미터를 사용하기로 합의하여 인코딩단이 파라미터를 전송할 필요가 없으므로, 코드 스트림 전송에 대한 압력이 줄어들고, 전송 효율이 향상된다. 그러나, 암시적 모드에서 가중 예측 파라미터는 고정되어 있으므로, 프레임 간 단방향 예측에 적용할 경우, 현재 프레임과 참조 프레임 간의 거리가 변화되면 고정된 가중치를 적용한 예측 효과가 이상적이지 못하다. 다시 말하면, 명시적 모드는 프레임 간 단방향 예측 및 양방향 예측에 적용되는 반면, 암시적 모드는 프레임 간 양방향 예측에만 적용된다. 명시적 모드의 경우, 인코딩단에서는 가중 예측 파라미터를 결정하고, 이를 데이터 헤더 정보에 라벨링해야 하며; 디코딩단에서는 코드 스트림에서 상응한 가중 예측 파라미터를 판독하여 픽쳐를 원활하게 디코딩해야 한다. 가중 예측에는 weight(가중치), offset(오프셋), log weight denominator(로그 가중치 분모)라는 세 가지 예측 파라미터가 포함된다. 여기서, 부동 소수점 연산을 피하기 위해, 인코딩단에서는 가중치를 증폭해야 하는데, 즉 로그 가중치 분모를 도입하고, 디코딩단에서는 상응한 배수를 축소시켜야 한다.
H.266/VVC 표준을 예로 들면, 가중 예측의 일련의 파라미터 정보는 픽쳐 헤더(Picture header) 또는 슬라이스 헤더(Slice header) 내에 포함될 수 있다. 유의해야 할 것은, 참조 픽쳐의 각 밝기 또는 색차 성분은 모두 독립적인 가중 예측 파라미터를 갖는다. 비디오 콘텐츠에 복잡한 밝기 변화 장면이 나타나는 경우, 픽쳐 내의 상이한 슬라이스 영역에 대해 상이한 가중 예측 파라미터를 구성할 수 있지만, 인코딩 시 슬라이스 분할은 네트워크 추상화 계층 데이터 전송 등에 영향을 미치기 때문에 슬라이스 분할 방식에는 많은 한계가 있으며, 슬라이스 계층 적응형 가중 예측 기술은 다양한 밝기 변화 상황을 원활하게 충족시키기 어렵다. 한편, 기존의 표준화 기술에서는 각 참조 픽쳐에 한 세트의 가중 예측 파라미터(즉 서로 매칭되는 한 세트의 가중치 및 오프셋)만 구성하며, 현재 전체 픽쳐가 완전하고 일치한 밝기 변화 형태를 가질 경우, 전방으로 가장 가까운 참조 픽쳐 및 그 가중 예측 파라미터만 선택하여 매우 좋은 예측 효과를 달성할 수 있다. 그러나, 다른 형태의 콘텐츠 밝기 변화 장면을 적절히 함께 고려하기 위해, 비디오 프레임 간 인코딩을 수행할 때, 기존 표준에 따라 복수의 상이한 참조 픽쳐를 선택하고, 도 1에 도시된 바와 같이 현재 픽쳐 내의 상이한 영역 콘텐츠에 대해 적응형 참조 픽쳐의 가중치 및 오프셋을 인위적으로 구성할 수 있다. 특히 초고화질 비디오, 파노라마 비디오 등 대용량 미디어 콘텐츠의 경우 디코딩단의 버퍼가 종종 소량의 디코딩된 참조 픽쳐만 저장할 수 있다는 점을 고려하면, 실제 적용에서 도 1에 도시된 수단은 일부 밝기 변화 장면에만 적용될 수 있다.
요컨대, 기존 비디오 인코딩 표준화 기술의 비디오 인코딩 수단은 비디오에서 복잡한 그래픽 밝기 변화 장면을 인코딩할 때 타당성과 유연성에 큰 한계가 있다.
본 발명의 실시예의 주요 목적은 복잡한 그래픽 밝기 변화 장면에서 비디오의 원활한 인코딩을 구현하고, 비디오 인코딩 효율을 향상시키며, 인코딩 효율에 대한 그래픽 밝기 변화의 영향을 줄이기 위한 비디오 인코딩 방법, 장치, 전자 기기 및 저장 매체를 제안하는 것이다.
본 발명의 실시예는 비디오 인코딩 방법을 제공하며, 여기서, 상기 방법은, 비디오 픽쳐를 획득하되, 상기 비디오 픽쳐는 비디오의 적어도 한 프레임의 픽쳐인 단계; 및 상기 비디오 픽쳐에 대해 가중 예측 인코딩을 수행하여 픽쳐 코드 스트림을 생성하되, 상기 가중 예측 인코딩에는 적어도 한 세트의 가중 예측 식별 정보 및 파라미터가 사용되는 단계;를 포함한다.
본 발명의 실시예는 비디오 디코딩 방법을 제공하며, 여기서, 상기 방법은, 픽쳐 코드 스트림을 획득하고, 상기 픽쳐 코드 스트림 내의 가중 예측 식별 정보 및 파라미터를 해석하는 단계; 및 상기 가중 예측 식별 정보 및 파라미터에 따라 상기 픽쳐 코드 스트림을 디코딩하여 재구축 픽쳐를 생성하는 단계;를 포함한다.
본 발명의 실시예는 또한 비디오 인코딩 장치를 제공하며, 여기서, 상기 장치는, 비디오 픽쳐를 획득하되, 상기 비디오 픽쳐는 비디오의 적어도 한 프레임의 픽쳐인 픽쳐 획득 모듈; 및 상기 비디오 픽쳐에 대해 가중 예측 인코딩을 수행하여 픽쳐 코드 스트림을 생성하되, 상기 가중 예측 인코딩에는 적어도 한 세트의 가중 예측 식별 정보 및 파라미터가 사용되는 비디오 인코딩 모듈;을 포함한다.
본 발명의 실시예는 또한 비디오 디코딩 장치를 제공하며, 여기서, 상기 장치는, 픽쳐 코드 스트림을 획득하고, 상기 픽쳐 코드 스트림 내의 가중 예측 식별 정보 및 파라미터를 해석하는 코드 스트림 획득 모듈; 및 상기 가중 예측 식별 정보 및 파라미터에 따라 상기 픽쳐 코드 스트림을 디코딩하여 재구축 픽쳐를 생성하는 픽쳐 재구축 모듈;을 포함한다.
본 발명의 실시예는 또한 전자 기기를 제공하며, 여기서, 상기 전자 기기는 하나 이상의 프로세서; 및 하나 이상의 프로그램을 저장하기 위한 메모리;를 포함하고, 상기 하나 이상의 프로그램이 상기 하나 이상의 프로세서에 의해 실행될 경우, 상기 하나 이상의 프로세서가 본 발명의 실시예들 중 어느 하나에 따른 방법을 구현하도록 한다.
본 발명의 실시예는 또한 컴퓨터 프로그램이 저장된 컴퓨터 판독 가능 저장 매체를 제공하며, 상기 컴퓨터 프로그램이 프로세서에 의해 실행될 경우 본 발명의 실시예들 중 어느 하나에 따른 방법이 구현된다.
본 발명의 실시예에서는 비디오 중 적어도 한 프레임의 픽쳐인 비디어 픽쳐를 획득하고, 비디오 픽쳐에 대해 가중 예측 인코딩을 수행하여 픽쳐 코드 스트림을 생성하며, 여기서 가중 예측 인코딩 과정에서 적어도 한 세트의 가중 예측 식별 정보 및 파라미터를 사용하여 비디오 픽쳐의 원활한 인코딩을 구현함으로써, 비디오 인코딩 효율을 향상시키고, 인코딩 효율에 대한 비디오 픽쳐 밝기 변화의 영향을 줄일 수 있다.
도 1은 일부 실시형태에서 다중 참조 픽쳐를 지향하는 지역적 적응형 가중 예측 예시도이다.
도 2는 본 발명의 실시예에 의해 제공되는 비디오 인코딩 방법의 흐름도이다.
도 3은 본 발명의 실시예에 의해 제공되는 다른 비디오 인코딩 방법의 흐름도이다.
도 4는 본 발명의 실시예에 의해 제공되는 다른 비디오 인코딩 방법의 흐름도이다.
도 5는 본 발명의 실시예에 의해 제공되는 비디오 인코딩 방법의 예시도이다.
도 6은 본 발명의 실시예에 의해 제공되는 다른 비디오 인코딩 방법의 예시도이다.
도 7은 본 발명의 실시예에 의해 제공되는 비디오 디코딩 방법의 흐름도이다.
도 8은 본 발명의 실시예에 의해 제공되는 다른 비디오 디코딩 방법의 흐름도이다.
도 9는 본 발명의 실시예에 의해 제공되는 비디오 디코딩 방법의 예시도이다.
도 10은 본 발명의 실시예에 의해 제공되는 다른 비디오 디코딩 방법의 예시도이다.
도 11은 본 발명의 실시예에 의해 제공되는 비디오 인코딩 장치의 구조 모식도이다.
도 12는 본 발명의 실시예에 의해 제공되는 비디오 디코딩 장치의 구조 모식도이다.
도 13은 본 발명의 실시예에 의해 제공되는 인코더의 구조 모식도이다.
도 14는 본 발명의 실시예에 의해 제공되는 디코더의 구조 모식도이다.
도 15는 본 발명의 실시예에 의해 제공되는 전자 기기의 구조 모식도이다.
이해해야 할 것은, 여기에 설명된 구체적인 실시예는 본 발명을 해석하기 위한 것일 뿐 본 발명을 한정하기 위한 것이 아니다.
후속 설명에 있어서, 구성요소를 나타내기 위한 "모듈", "부재" 또는 "유닛" 등의 접미사를 사용한 것은 본 발명의 설명에 유리하도록 하기 위한 것일 뿐 그 자체로는 특별한 의미를 갖지 않는다. 따라서, "모듈", "부재" 또는 "유닛"은 혼용될 수 있다.
도 2는 본 발명의 실시예에 의해 제공되는 비디오 인코딩 방법의 흐름도로서, 본 발명의 실시예는 밝기 변화 장면 내의 비디오 인코딩에 적용될 수 있고, 상기 방법은 비디오 인코딩 장치에 의해 수행될 수 있으며, 상기 장치는 소프트웨어 및/또는 하드웨어 방식을 통해 구현될 수 있고, 일반적으로 단말 기기에 통합된다. 도 2를 참조하면, 본 발명의 실시예에 의해 제공되는 방법은 구체적으로 다음과 같은 단계를 포함한다.
단계 110에서, 비디오 픽쳐를 획득하되, 비디오 픽쳐는 비디오의 적어도 한 프레임의 픽쳐이다.
여기서, 비디오 픽쳐는 전송이 필요한 비디오 데이터일 수 있고, 비디오 픽쳐는 비디오 데이터 시퀀스 중 특정 프레임의 데이터 또는 특정 시각에 대응되는 한 프레임의 데이터일 수 있다.
본 발명의 실시예에서는 비디오 데이터를 처리하고, 그 중 한 프레임 이상의 픽쳐 데이터를 비디오 인코딩을 수행하기 위한 비디오 데이터로 추출할 수 있다.
단계 120에서, 비디오 픽쳐에 대해 가중 예측 인코딩을 수행하여 픽쳐 코드 스트림을 생성하되, 가중 예측 인코딩에는 적어도 한 세트의 가중 예측 식별 정보 및 파라미터가 사용된다.
여기서, 비디오 내 장면은 시간이 지남에 따라 광선의 강도가 점차 변하거나 동일한 장면의 비디오에 음영 효과가 나타나기 때문에 프레임 간의 배경 유사성이 매우 높을 수 있고 밝고 어두운 차이가 크며 인접한 프레임 픽쳐의 밝기 변화가 있더라도, 현재 프레임은 이전 프레임 전체에 가중치(weight)를 곱한 것과 동일할 수 있으며, 여기에 오프셋 방식을 결합하여 이전 프레임을 기반으로 비디오 인코딩을 수행하는데, 이러한 가중치와 오프셋을 통해 비디오 인코딩을 수행하는 과정을 가중 예측 인코딩이라고 지칭할 수 있다. 가중 예측 인코딩 과정은 주로 가중치(weight), 오프셋(offset), 로그 가중치 분모(log weight denominator)라는 세 가지 예측 파라미터가 포함되고,여기서, 로그 가중치 분모는 인코딩 과정 중에 부동 소수점 연산을 방지하고 가중치를 증폭시킬 수 있다. 가중 예측 식별 정보는 가중 예측에 사용되는 파라미터의 식별 정보일 수 있고, 파라미터는 가중 예측 식별 정보의 구체적인 파라미터일 수 있으며, 가중치, 오프셋 및 로그 가중치 분모 중 적어도 하나를 포함할 수 있다. 픽쳐 코드 스트림은 비디오 픽쳐 인코딩 후 생성된 데이터일 수 있고, 픽쳐 코드 스트림은 단말 기기 간의 전송에 사용될 수 있다.
본 발명의 실시예에서, 비디오 픽쳐에 대해 가중 예측 인코딩을 수행할 수 있고, 가중 예측 인코딩 과정에서 한 세트 이상의 가중 예측 식별 정보 및 파라미터를 사용할 수 있는 바, 예를 들어, 상이한 프레임의 비디오 픽쳐에 대해 상이한 가중 예측 식별 정보 및 파라미터를 사용할 수 있거나, 동일한 프레임 내 상이한 영역의 비디오 픽쳐에 대해 상이한 가중 예측 식별 정보 및 파라미터를 사용할 수 있다. 이해할 수 있는 것은, 비디오 픽쳐에 대해 가중 예측 인코딩을 수행하는 과정에서, 비디오 픽쳐의 밝기 변화에 따라 상이한 가중 예측 식별 정보 및 파라미터를 사용하여 비디오 인코딩을 수행할 수 있다.
본 발명의 실시예에서는 비디오 중 적어도 한 프레임의 픽쳐인 비디어 픽쳐를 획득하고, 비디오 픽쳐에 대해 가중 예측 인코딩을 수행하여 픽쳐 코드 스트림을 생성하며, 여기서 가중 예측 인코딩 과정에서 적어도 한 세트의 가중 예측 식별 정보 및 파라미터를 사용하여 비디오 픽쳐의 원활한 인코딩을 구현함으로써, 비디오 인코딩 효율을 향상시키고, 인코딩 효율에 대한 비디오 픽쳐 밝기 변화의 영향을 줄일 수 있다.
도 3은 본 발명의 실시예에 의해 제공되는 다른 비디오 인코딩 방법의 흐름도이고, 본 발명의 실시예는 전술한 본 발명의 실시예를 기반으로 구체화되며, 도 3을 참조하면, 본 발명의 실시예에 의해 제공되는 방법은 구체적으로 다음과 같은 단계를 포함한다.
단계 210에서, 비디오 픽쳐를 획득하되, 상기 비디오 픽쳐는 비디오의 적어도 한 프레임의 픽쳐이다.
단계 220에서, 비디오 픽쳐와 참조 픽쳐의 비교 결과에 따라 밝기 변화 상황을 결정한다.
여기서, 참조 픽쳐는 비디오 데이터 시퀀스에서 현재 처리 중인 비디오 픽쳐 앞 또는 뒤에 위치한 북 데이터일 수 있고, 참조 픽쳐는 현재 처리 중인 비디오 픽쳐에 대한 움직임 추정 동작에 사용될 수 있으며, 참조 픽쳐의 개수는 한 프레임 이상일 수 있다. 밝기 변화 상황은 참조 픽쳐 대비 비디오 픽쳐의 밝기 변화 상황일 수 있고, 밝기 변화 상황은 구체적으로 비디오 픽쳐와 참조 픽쳐의 픽셀값 변화에 의해 결정될 수 있다.
본 발명의 실시예에서, 비디오 픽쳐와 참조 픽쳐를 비교할 수 있으며, 비교 방식은 상응한 위치의 픽셀값의 차이값을 계산하거나, 비디오 픽쳐와 참조 픽쳐의 픽셀 평균값의 차이값을 계산하는 등의 방식을 포함할 수 있고, 비디오 픽쳐와 참조 픽쳐의 비교 결과에 따라 밝기 변화 상황을 결정할 수 있으며, 밝기 변화 상황은 점진적인 밝아짐, 점진적인 어두워짐, 변화 없음, 무작위 변화 등을 포함할 수 있다.
나아가, 전술한 본 발명의 실시예를 기반으로, 상기 밝기 변화 상황은 픽쳐 밝기 변화 평균값 및 픽셀 밝기 변화값 중 적어도 하나를 포함한다.
구체적으로, 비디오 픽쳐와 참조 픽쳐의 밝기 변화 상황은 픽쳐 밝기 변화 평균값 및/또는 픽셀 밝기 변화값을 통해 결정할 수 있으며, 여기서, 픽쳐 밝기 변화 평균값이란 현재 픽쳐 및 참조 픽쳐의 밝기값의 평균값 변화를 의미할 수 있고, 픽셀 밝기 변화값은 비디오 픽쳐 중 각 픽셀의 밝기값 및 참조 픽쳐에 대응되는 위치의 픽셀 밝기값의 변화일 수 있다. 이해할 수 있는 것은, 밝기 변화 상황은 다른 밝기값 통계적 특성의 변화, 예를 들어, 밝기 분산, 밝기 평균 분산 등일 수도 있다.
단계 230에서, 비디오 픽쳐의 밝기 변화 상황에 따라 비디오 픽쳐에 대해 가중 예측 인코딩을 수행하되, 가중 예측 인코딩에는 적어도 한 세트의 가중 예측 식별 정보 및 파라미터가 사용된다.
본 발명의 실시예에서, 여러 세트의 가중 예측 식별 정보 및 파라미터를 미리 설정할 수 있고, 밝기 변화 상황에 따라 대응되는 예측 식별 정보 및 파라미터를 선택하여 비디오 픽쳐에 대해 가중 예측 인코딩을 수행할 수 있다. 이해할 수 있는 것은, 밝기 변화 상황의 구체적인 콘텐츠에 따라 비디오 픽쳐에 대해 예측 가중 인코딩을 수행할 수 있는 바, 예를 들어, 상이한 프레임의 비디오 픽쳐의 밝기 변화에 따라 상이한 가중 예측 식별 정보 및 파라미터를 선택하여 가중 예측 인코딩을 수행할 수 있고, 비디오 픽쳐 내의 상이한 영역에 따라 상이한 가중 예측 식별 정보 및 파라미터를 선택하여 가중 예측 인코딩을 수행할 수도 있다.
단계 240에서, 가중 예측 식별 정보 및 파라미터를 픽쳐 코드 스트림에 기입한다.
구체적으로, 비디오 픽쳐는 가중 예측 인코딩을 거친 후 픽쳐 코드 스트림을 생성하고, 인코딩 과정에 사용되는 가중 예측 식별 정보 및 파라미터를 후속 과정에서 비디오 디코딩 과정에 용이하도록 픽쳐 코드 스트림에 기입할 수 있다.
본 발명의 실시예에서는 비디오 픽쳐를 획득하고, 비디오 픽쳐와 참조 픽쳐의 비교 결과에 따라 밝기 변화 상황을 결정하며, 밝기 변화 상황에 따라 비디오 픽쳐에 대해 가중 예측 인코딩을 수행하고, 가중 예측 인코딩에 사용되는 가중 예측 식별 정보 및 파라미터를 픽쳐 코드 스트림에 기입함으로써, 비디오 픽쳐의 원활한 인코딩을 구현하여 비디오 인코딩 효율을 향상시키고, 인코딩 효율에 대한 비디오 픽쳐 밝기 변화의 영향을 줄일 수 있다.
나아가, 전술한 본 발명의 실시예를 기반으로, 상기 밝기 변화 상황에 따라 상기 비디오 픽쳐에 대해 가중 예측 인코딩을 수행하는 상기 단계는,
밝기 변화 상황이 전체 프레임 픽쳐 밝기가 일치한 것이면, 비디오 픽쳐에 대해 가중 예측 인코딩을 수행하는 단계; 및
밝기 변화 상황이 파티션 픽쳐 밝기가 일치한 것이면, 비디오 픽쳐 내의 각 파티션 픽쳐에 대해 각각 가중 예측 인코딩을 수행하도록 결정하는 단계; 중 적어도 하나를 포함한다.
여기서, 전체 프레임 픽쳐 밝기가 일치한 것은 비디오 픽쳐의 전체 픽쳐 프레임의 밝기 변화가 동일한 것일 수 있다. 파티션 픽쳐 밝기가 일치한 것은 비디오 픽쳐에 복수의 영역이 존재하고, 각 영역의 밝기 변화가 상이한 것일 수 있다.
본 발명의 실시예에서, 밝기 변화 상황이 전체 프레임 픽쳐 밝기가 일치한 것이면, 전체 프레임 비디오 픽쳐에 대해 가중 예측 인코딩을 수행할 수 있고, 밝기 변화 상황이 파티션 픽쳐 밝기가 일치한 것이면, 비디오 픽쳐 내의 밝기 변화 상황은 다양하고, 각 픽쳐 영역에 대해 가중 예측 인코딩을 수행할 수 있으며, 이해할 수 있는 것은, 각 픽쳐 영역의 밝기 변화가 상이하면, 가중 예측 인코딩 과정에 사용되는 가중 예측 식별 정보 및 파라미터는 상이할 수 있다.
나아가, 전술한 본 발명의 실시예를 기반으로, 상기 비디오 픽쳐는 상기 참조 픽쳐 또는 상기 참조 픽쳐의 파티션 픽쳐에 대해 적어도 한 세트의 상기 가중 예측 식별 정보 및 파라미터를 갖는다.
본 발명의 실시예에서, 비디오 픽쳐의 가중 예측 인코딩 과정에 사용되는 가중 예측 식별 정보 및 파라미터는 참조 픽쳐에서 결정된 정보에 해당되고, 비디오 픽쳐는 참조 픽쳐를 기준으로 한 세트 이상의 가중 예측 식별 정보 및 파라미터를 가지며, 비디오 픽쳐의 참조 픽쳐가 복수의 프레임인 경우, 비디오 픽쳐는 각 프레임의 참조 픽쳐에 대해 각각 세트 이상의 가중 예측 식별 정보 및 파라미터를 가질 수 있으며, 각 세트의 가중 예측 식별 정보 및 파라미터는 대응되는 비디오 픽쳐 및/또는 참조 픽쳐와 연관 관계가 있을 수 있다.
도 4는 본 발명의 실시예에 의해 제공되는 다른 비디오 인코딩 방법의 흐름도이고, 본 발명의 실시예는 전술한 본 발명의 실시예를 기반으로 구체화되며, 도 4를 참조하면, 본 발명의 실시예에 의해 제공되는 방법은 구체적으로 다음과 같은 단계를 포함한다.
단계 310에서, 비디오 픽쳐를 획득하되, 상기 비디오 픽쳐는 비디오의 적어도 한 프레임의 픽쳐이다.
단계 320에서, 사전 훈련된 신경망 모델에 따라 비디오 픽쳐에 대해 가중 예측 인코딩을 수행한다.
여기서, 신경망 모델은 비디오 픽쳐에 대해 가중 예측 인코딩 처리를 수행할 수 있고, 비디오 픽쳐에 사용되는 가중 예측 식별 정보 및 파라미터를 결정할 수 있으며, 신경망 모델은 가중 예측 식별 정보 및 파라미터가 라벨링된 픽쳐 샘플을 사용하여 훈련을 통해 생성될 수 있다. 신경망 모델은 비디오 픽쳐의 가중 예측 식별 정보 및 파라미터를 결정하거나 비디오 픽쳐의 픽쳐 코드 스트림을 직접 결정할 수 있다.
본 발명의 실시예에서, 비디오 픽쳐를 신경망 모델에 직접 또는 간접적으로 입력할 수 있고, 신경망 모델을 통해 비디오 픽쳐에 대한 가중 예측 인코딩을 구현한다. 이해할 수 있는 것은, 신경망 모델의 입력 계층은 비디오 픽쳐 또는 비디오 픽쳐의 특징을 수용할 수 있고, 신경망 모델은 비디오 픽쳐의 가중 예측 인코딩에 사용되는 가중 예측 식별 정보 및 파라미터를 생성하거나 비디오 픽쳐에 대해 직접 가중 예측 인코딩을 수행할 수 있다.
단계 330에서, 가중 예측 식별 정보 및 파라미터를 픽쳐 코드 스트림에 기입한다.
본 발명의 실시예에서는 비디오 픽쳐를 획득하고, 사전 훈련된 신경망 모델을 사용하여 비디오 픽쳐에 대해 가중 예측 인코딩을 수행하며, 가중 예측 인코딩에 사용되는 가중 예측 식별 정보 및 파라미터를 픽쳐 비디오 인코딩에서 생성된 픽쳐 코드 스트림에 기입함으로써, 비디오 픽쳐의 원활한 인코딩을 구현하여 비디오 인코딩 효율을 향상시키고, 인코딩 효율에 대한 비디오 픽쳐 밝기 변화의 영향을 줄일 수 있다.
나아가, 전술한 본 발명의 실시예를 기반으로, 상기 가중 예측 식별 정보는 신경망 모델 구조 및 신경망 모델 파라미터를 더 포함한다.
구체적으로, 가중 예측 식별 정보에는 신경망 모델 구조 및 신경망 모델 파라미터가 더 포함될 수 있고, 여기서, 신경망 모델 결과는 신경망 결과를 반영하는 정보, 예를 들어, 완전 연결 계층에 사용되는 함수, 활성화 함수, 손실 함수 등일 수 있으며, 신경망 모델 파라미터는 신경망 모델 파라미터의 구체적인 값, 예를 들어, 네트워크 가중치, 은닉 계층 수 등일 수 있다.
나아가, 전술한 본 발명의 실시예를 기반으로, 상기 가중 예측 인코딩에 사용되는 한 세트의 상기 가중 예측 식별 정보 및 파라미터는 한 프레임의 상기 비디오 픽쳐 또는 상기 비디오 픽쳐의 적어도 하나의 파티션 픽쳐에 대응된다.
본 발명의 실시예에서, 가중 예측 인코딩 과정에서는 한 세트 이상의 가중 예측 식별 정보 및 파라미터를 사용할 수 있고, 각 세트의 가중 예측 식별 정보 및 파라미터는 가중 예측 인코딩 과정에서 한 프레임의 비디오 픽쳐 또는 비디오 픽쳐 중 하나의 파티션 픽쳐에 대응되며, 상기 파티션 픽쳐는 비디오 픽쳐의 일부, 예를 들어, 슬라이스 픽쳐 또는 서브 픽쳐 등일 수 있다.
나아가, 전술한 본 발명의 실시예를 기반으로, 상기 파티션 픽쳐의 사양은 슬라이스(Slice), 타일(Tile), 서브픽쳐(Subpicture), 코딩 트리 유닛(Coding Tree Unit), 코딩 유닛(Coding Unit) 중 적어도 하나를 포함한다.
구체적으로, 비디오 픽쳐에 대해 파티션 픽쳐의 형태로 가중 예측 인코딩을 수행하는 경우, 파티션 픽쳐는 슬라이스(Slice), 타일(Tile), 서브픽쳐(Subpicture), 코딩 트리 유닛(Coding Tree Unit), 코딩 유닛(Coding Unit) 중 하나 이상일 수 있다.
나아가, 전술한 본 발명의 실시예를 기반으로, 상기 가중 예측 식별 정보 및 상기 파라미터는 시퀀스 계층 파라미터 집합, 픽쳐 계층 파라미터 집합, 슬라이스 계층 파라미터 집합, 보완 강화 정보, 비디오 가용성 정보, 픽쳐 헤더 정보, 슬라이스 헤더 정보, 네트워크 추상화 계층 유닛 헤더 정보, 코딩 트리 유닛, 코딩 유닛 중 적어도 하나의 파라미터 집합에 포함된다.
구체적으로, 가중 예측 식별 정보 및 파라미터를 픽쳐 코드 스트림에 기입할 수 있고, 식별 정보 및 파라미터는 시퀀스 계층 파라미터 집합, 픽쳐 계층 파라미터 집합, 슬라이스 계층 파라미터 집합, 보완 강화 정보, 비디오 가용성 정보, 픽쳐 헤더 정보, 슬라이스 헤더 정보, 네트워크 추상화 계층 유닛 헤더 정보 중 일부 또는 전부 파라미터 집합에 포함되거나, 새로운 정보 유닛으로서 코딩 트리 유닛 또는 코딩 유닛에 포함될 수도 있다.
나아가, 전술한 본 발명의 실시예를 기반으로, 상기 가중 예측 식별 정보 및 상기 파라미터는 참조 픽쳐 인덱스 정보, 가중 예측 활성화 제어 정보, 영역 적응형 가중 예측 활성화 제어 정보, 가중 예측 파라미터 중 적어도 하나를 포함한다.
본 발명의 실시예에서, 가중 예측 식별 정보는 밝기 변화에 사용되는 참조 픽쳐를 결정하기 위한 참조 픽쳐 인덱스 정보, 가중 예측 인코딩을 수행할지 여부를 결정하기 위한 가중 예측 활성화 제어 정보, 픽쳐 비디오에 대해 영역 가중 예측 인코딩을 수행할지 여부를 결정하기 위한 영역 적응형 가중 예측 활성화 제어 정보일 수 있고, 가중 예측 파라미터는 가중 예측 인코딩 과정에 사용되는 파라미터일 수 있으며, 가중치, 오프셋, 로그 가중치 분모 등을 포함할 수 있다.
나아가, 전술한 본 발명의 실시예를 기반으로, 상기 픽쳐 코드 스트림은 전송 스트림 또는 미디어 파일을 포함한다.
구체적으로, 픽쳐 코드 스트림은 전송 스트림 또는 미디어 파일일 수 있다.
일 실시형태에서, 도 5는 본 발명의 실시예에 의해 제공되는 비디오 인코딩 방법의 예시도이고, 도 5를 참조하면, 인코딩 처리의 입력은 비디오에 포함된 픽쳐이고, 출력은 픽쳐 코드 스트림 또는 픽쳐 코드 스트림이 포함된 전송 데이터 스트림 또는 미디어 파일이며, 비디오 인코딩 과정은 다음과 같은 단계를 포함할 수 있다.
단계 101에서, 픽쳐를 판독하고, 여기서, 상기 픽쳐는 비디오 시퀀스 내의 특정 프레임의 데이터일 수 있고, 특정 시각에 대응되는 한 프레임의 데이터일 수도 있다.
단계 102에서, 특정 참조 픽쳐에 대한 상기 픽쳐의 밝기 변화를 감지한다.
여기서, 참조 픽쳐는 비디오 시퀀스에서 타임 라인 상의 픽쳐의 이전 픽쳐를 의미할 수 있고, 타임 라인 상의 현재 픽쳐 이후의 픽쳐를 의미할 수도 있으며, 참조 픽쳐는 현재 픽쳐에 대해 움직임 추정 동작을 수행하기 위한 것이다. 참조 픽쳐에는 하나 또는 복수의 프레임이 있을 수 있고;
밝기 변화는 현재 픽쳐와 참조 픽쳐의 밝기값의 평균값 변화를 의미할 수 있으며, 현재 픽쳐의 각 픽셀의 밝기값과 참조 픽쳐에 대응되는 위치의 픽셀의 밝기값 변화를 의미할 수도 있고, 기타 밝기값의 통계적 특성 변화를 의미할 수도 있으며;
참조 픽쳐가 복수의 프레임인 경우, 현재 픽쳐는 각 프레임의 참조 픽쳐에 대해 밝기 변화를 감지해야 한다.
단계 103에서, 단계 102의 밝기 변화 감지 결과에 따라, 가중 예측 동작을 채택해야 하는지 여부를 판단한다. 여기서 판단 근거에는 특정 밝기 변화 상황에 지향하여, 인코딩 효율 향상과 인코딩 복잡성 증가 사이에서 가중 예측 동작의 절충이 포함된다.
단계 104에서, 가중 예측 동작을 채택해야 하는 경우, 가중 예측 인코딩을 수행하고, 전술한 참조 픽쳐의 인덱스 정보, 한 세트 이상의 가중 예측 파라미터, 및/또는 가중 예측 파라미터 인덱스 정보를 기록한다.
단계 102의 밝기 변화 통계 정보에 따라, 인코더는 밝기 변화의 영역 특성을 기록한다. 여기서 밝기 변화의 영역 특성에는 밝기 변화가 전체 프레임 픽쳐 영역에서 변화 일치성을 유지하거나, 밝기 변화가 픽쳐의 일부 영역에서 변화 일치성을 유지하는 것이 포함된다. 상기 일부 영역은 하나 이상의 슬라이스(Slice)일 수 있고, 하나 이상의 타일(Tile)일 수도 있으며, 하나 이상의 서브픽쳐(Subpicture)일 수도 있고, 하나 이상의 코딩 트리 유닛(Coding Tree Unit, CTU)일 수도 있으며, 하나 이상의 코딩 유닛(Coding Unit, CU)일 수도 있고;
밝기 변화가 전체 프레임 픽쳐 영역에서 일치성을 유지한다면, 현재 픽쳐에 대응되는 참조 픽쳐는 밝기 변화가 균일한 것으로 간주할 수 있고, 그렇지 않으면 불균일한 것으로 간주할 수 있으며;
현재 픽쳐의 밝기 변화 상황이 균일하면, 가중 예측 인코딩을 수행하고, 전술한 참조 픽쳐 인덱스 정보와 한 세트의 가중 예측 파라미터를 기록하며, 여기서 가중 예측 파라미터는 가중치 및 오프셋을 포함하고;
현재 픽쳐의 각 영역의 밝기 변화 상황이 다양하면, 픽쳐 영역에 따라 가중 예측 인코딩을 수행하고, 전술한 참조 픽쳐 인덱스 정보와 여러 세트의 가중 예측 파라미터, 및 각 픽쳐 영역에 사용되는 특정 가중 예측 파라미터 인덱스 정보를 기록한다. 여기서, 하나의 픽쳐 영역이 한 세트의 가중 예측 파라미터에 대응될 수 있고, 복수의 픽쳐 영역이 한 세트의 가중 예측 파라미터에 대응될 수 있다.
단계 105에서, 가중 예측 식별 정보 및 파라미터를 코드 스트림에 기입하고, 상기 식별 정보 및 파라미터는 시퀀스 계층 파라미터 집합, 픽쳐 계층 파라미터 집합, 슬라이스 계층 파라미터 집합, 보완 강화 정보, 비디오 가용성 정보, 픽쳐 헤더 정보, 슬라이스 헤더 정보, 네트워크 추상화 계층 유닛 헤더 정보 중 일부 또는 전부 파라미터 집합에 포함되거나, 새로운 정보 유닛으로서 코딩 트리 유닛 또는 코딩 유닛에 포함될 수도 있다.
단계 106에서, 가중 예측 동작을 채택할 필요가 없는 경우, 직접 기존 방법을 기반으로 픽쳐 인코딩을 수행하고;
단계 107에서, 픽쳐 코드 스트림 또는 픽쳐 코드 스트림을 포함하는 전송 스트림 또는 미디어 파일을 출력한다.
다른 실시형태에서, 도 6은 본 발명의 실시예에 의해 제공되는 비디오 인코딩 방법의 예시도이고, 도 6을 참조하면, 본 실시예는 딥러닝 기술을 영역 적응형 가중 예측 동작에 적용하며, 비디오 인코딩 과정은 다음과 같은 단계를 포함할 수 있다.
단계 201에서, 픽쳐를 판독하고, 여기서, 상기 픽쳐는 비디오 시퀀스 내의 특정 프레임의 데이터일 수 있으며, 특정 시각에 대응되는 한 프레임의 데이터일 수도 있다.
단계 202에서, 딥러닝 기술에 기반한 가중 예측 수단을 사용할지 여부를 결정한다.
단계 203에서, 딥러닝 기술을 사용하는 경우, 훈련을 통해 생성된 신경망 모델 및 파라미터를 사용하여 픽쳐 가중 예측 인코딩을 수행한다.
일부 구현예에서, 연산 복잡성을 줄이기 위해, 신경망 학습 및 훈련을 기반으로 고정된 가중 예측 파라미터로 단순화할 수 있다. 애플리케이션에서, 픽쳐 내의 상이한 영역 콘텐츠에 지향하여, 적절한 가중 예측 파라미터를 선택하여 가중 예측 인코딩을 수행한다. 상기 가중 예측 파라미터는 가중치 및 오프셋을 포함할 수 있고; 여기서, 단일 픽쳐는 한 그룹의 값 중 일부 또는 전부의 가중치 및 오프셋을 사용할 수 있다.
단계 204에서, 신경망 모델을 기반으로 픽쳐 가중 예측 인코딩을 수행하는 경우, 신경망 모델 구조 및 파라미터를 포함하되 이에 한정되지 않는 딥러닝 수단에 필요한 가중 예측 파라미터, 추출된 한 그룹의 가중 예측 파라미터값 및 각 픽쳐 영역에 사용되는 파라미터 인덱스 정보를 기록한다.
단계 205에서, 딥러닝 기술을 사용하지 않는 경우, 실시예 1의 동작 과정과 같이 종래의 연산 수단을 기반으로 영역 적응형 가중 예측 인코딩을 수행한다.
단계 206에서, 가중 예측 식별 정보 및 파라미터를 코드 스트림에 기입하고, 상기 식별 정보 및 파라미터는 시퀀스 계층 파라미터 집합, 픽쳐 계층 파라미터 집합, 슬라이스 계층 파라미터 집합, 보완 강화 정보, 비디오 가용성 정보, 픽쳐 헤더 정보, 슬라이스 헤더 정보, 네트워크 추상화 계층 유닛 헤더 정보 중 일부 또는 전부 파라미터 집합에 포함되거나, 새로운 정보 유닛으로서 코딩 트리 유닛 또는 코딩 유닛에 포함될 수도 있다.
단계 207에서, 픽쳐 코드 스트림 또는 픽쳐 코드 스트림을 포함하는 전송 스트림 또는 미디어 파일을 출력한다.
도 7은 본 발명의 실시예에 의해 제공되는 비디오 디코딩 방법의 흐름도이고, 본 발명의 실시예는 밝기 변화 장면 내의 비디오 디코딩에 적용될 수 있으며, 상기 방법은 비디오 디코딩 장치에 의해 수행될 수 있고, 상기 장치는 소프트웨어 및/또는 하드웨어 방식을 통해 구현될 수 있으며, 일반적으로 단말 기기에 통합되고, 도 7을 참조하면, 본 발명의 실시예에 의해 제공되는 방법은 구체적으로 다음과 같은 단계를 포함한다.
단계 410에서, 픽쳐 코드 스트림을 획득하고, 픽쳐 코드 스트림 내의 가중 예측 식별 정보 및 파라미터를 해석한다.
본 발명의 실시예에서는 전송된 픽쳐 코드 스트림을 수신하고, 픽쳐 코드 스트림에서 가중 예측 식별 정보 및 파라미터를 추출할 수 있으며, 여기서, 픽쳐 코드 스트림은 한 세트 이상의 가중 예측 식별 정보 및 파라미터를 포함할 수 있다.
단계 420에서, 가중 예측 식별 정보 및 파라미터에 따라 픽쳐 코드 스트림을 디코딩하여 재구축 픽쳐를 생성한다.
구체적으로, 획득된 가중 예측 식별 정보 및 파라미터를 사용하여 픽쳐 코드 스트림에 대해 가중 예측 디코딩을 수행하고, 픽쳐 코드 스트림을 재구축 픽쳐로 처리할 수 있으며, 여기서, 재구축 픽쳐는 전송 코드 스트림에 따라 생성된 픽쳐일 수 있다.
본 발명의 실시예에서는 픽쳐 코드 스트림을 획득하고, 픽쳐 코드 스트림 내의 가중 예측 식별 정보 및 파라미터를 획득하며, 획득된 가중 예측 식별 정보 및 파라미터에 따라 픽쳐 코드 스트림을 처리하여 새로운 픽쳐를 생성함으로써, 픽쳐 코드 스트림에 대한 동적 디코딩을 구현하여 비디오 디코딩 효율을 향상시키고, 비디오 디코딩 효율에 대한 픽쳐 밝기 변화의 영향을 줄일 수 있다.
도 8은 본 발명의 실시예에 의해 제공되는 다른 비디오 디코딩 방법의 흐름도이고, 본 발명의 실시예는 전술한 본 발명의 실시예를 기반으로 구체화되며, 도 8을 참조하면, 본 발명의 실시예에 의해 제공되는 방법은 구체적으로 다음과 같은 단계를 포함한다.
단계 510에서, 픽쳐 코드 스트림을 획득하고, 픽쳐 코드 스트림 내의 가중 예측 식별 정보 및 파라미터를 해석한다.
단계 520에서, 사전 훈련된 신경망 모델에 따라 가중 예측 식별 정보 및 파라미터를 사용하여 픽쳐 코드 스트림에 대해 가중 예측 디코딩을 수행하여 재구축 픽쳐를 생성한다.
여기서, 신경망 모델은 픽쳐 코드 스트림의 디코딩을 위한 딥러닝 모델일 수 있고, 상기 딥러닝 모델은 샘플 코드 스트림 및 샘플 픽쳐를 훈련하여 생성할 수 있으며, 신경망 모델은 픽쳐 코드 스트림에 대해 가중 예측 디코딩을 수행할 수 있다.
본 발명의 실시예에서, 픽쳐 코드 스트림, 가중 예측 식별 정보 및 파라미터를 사전 훈련된 신경망 모델에 입력하고, 신경망 모델은 픽쳐 코드 스트림에 대해 가중 예측 디코딩 처리를 수행하며, 픽쳐 코드 스트림을 재구축 픽쳐로 처리할 수 있다.
본 발명의 실시예에서는 픽쳐 코드 스트림을 획득하고, 픽쳐 코드 스트림 내의 가중 예측 식별 정보 및 파라미터를 획득하며, 사전 훈련된 신경망 모델을 사용하여 가중 예측 식별 정보 및 파라미터를 기반으로 픽쳐 코드 스트림을 재구축 픽쳐로 처리함으로써, 픽쳐 코드 스트림의 동적 디코딩을 구현하여 비디오 디코딩 효율을 향상시키고, 비디오 디코딩 효율에 대한 픽쳐 밝기 변화의 영향을 줄일 수 있다.
나아가, 전술한 본 발명의 실시예를 기반으로, 상기 픽쳐 코드 스트림 내의 가중 예측 식별 정보 및 파라미터의 개수는 적어도 한 세트이다.
구체적으로, 픽쳐 코드 스트림은 비디오 픽쳐에 대해 가중 예측 인코딩을 수행하여 생성된 정보일 수 있고, 가중 예측 인코딩을 수행하는 상이한 방식을 기반으로, 픽쳐 코드 스트림에는 한 세트 이상의 가중 예측 식별 정보 및 파라미터가 존재할 수 있는 바, 예를 들어, 인코딩단이 비디오 픽쳐 내의 상이한 영역에 대해 각각 가중 예측 인코딩을 수행하면, 픽쳐 코드 스트림에는 여러 세트의 가중 예측 식별 정보 및 파라미터가 존재할 수 있다.
나아가, 전술한 본 발명의 실시예를 기반으로, 상기 가중 예측 식별 정보 및 상기 파라미터는 시퀀스 계층 파라미터 집합, 픽쳐 계층 파라미터 집합, 슬라이스 계층 파라미터 집합, 보완 강화 정보, 비디오 가용성 정보, 픽쳐 헤더 정보, 슬라이스 헤더 정보, 네트워크 추상화 계층 유닛 헤더 정보, 코딩 트리 유닛, 코딩 유닛 중 적어도 하나의 파라미터 집합에 포함된다.
나아가, 전술한 본 발명의 실시예를 기반으로, 상기 가중 예측 식별 정보 및 상기 파라미터는 참조 픽쳐 인덱스 정보, 가중 예측 활성화 제어 정보, 영역 적응형 가중 예측 활성화 제어 정보, 가중 예측 파라미터 중 적어도 하나를 포함한다.
나아가, 전술한 본 발명의 실시예를 기반으로, 상기 픽쳐 코드 스트림은 전송 스트림 또는 미디어 파일을 포함한다.
나아가, 전술한 본 발명의 실시예를 기반으로, 상기 가중 예측 식별 정보 및 파라미터는 신경망 모델 구조 및 신경망 모델 파라미터를 더 포함한다.
일 실시형태에서, 도 9는 본 발명의 실시예에 의해 제공되는 비디오 디코딩 방법의 예시도이고, 도 9를 참조하면, 디코딩 처리의 입력은 픽쳐 코드 스트림 또는 픽쳐 코드 스트림을 포함하는 전송 데이터 스트림 또는 미디어 파일이며, 출력은 비디오의 픽쳐를 구성하고, 비디오 픽쳐의 디코딩 과정은 다음과 같은 단계를 포함할 수 있다.
단계 301에서, 코드 스트림을 판독한다.
단계 302에서, 코드 스트림을 해석하고, 가중 예측 식별 정보를 획득한다.
디코더는 시퀀스 계층 파라미터 집합, 픽쳐 계층 파라미터 집합 및/또는 슬라이스 계층 파라미터 집합을 해석하고, 가중 예측 식별 정보를 획득한다. 여기서, 시퀀스 계층 파라미터 집합은 시퀀스 파라미터 집합(Sequence Parameter Set, SPS)을 포함하고, 픽쳐 계층 파라미터 집합은 픽쳐 파라미터 집합(Picture Parameter Set, PPS), 어댑테이션 파라미터 집합(Adaptation Parameter Set, APS)을 포함하며, 슬라이스 계층 파라미터 집합은 APS를 포함한다. 시퀀스 계층 파라미터 집합 내의 가중 예측 식별 정보는 픽쳐 계층 파라미터 집합 및 슬라이스 계층 파라미터 집합에 의해 인용될 수 있고, 픽쳐 계층 파라미터 집합 내의 가중 예측 식별 정보는 슬라이스 계층 파라미터 집합에 의해 인용될 수 있다. 상기 가중 예측 식별 정보는 현재 파라미터 집합이 지시하는 시퀀스 및/또는 픽쳐가 단방향 가중 예측, 양방향 가중 예측 및/또는 영역 적응형 다중 가중치 가중 예측을 채택하는지 여부를 포함하나 이에 한정되지 않으며;
여기서, 영역 적응형 다중 가중치 가중 예측을 채택하는지 여부를 구분하는 방식은 이진 식별자, 또는 가중 예측 파라미터 세트 수(1보다 크거나 같은지 여부) 해석을 포함하나 이에 한정되지 않는다.
단계 303에서, 가중 예측 식별 정보에 따라 현재 픽쳐가 가중 예측 디코딩을 채택하는지 여부를 판단한다.
단계 304에서, 현재 픽쳐가 가중 예측 디코딩을 채택하는 것으로 결정되면, 가중 예측 파라미터 정보를 획득한다.
디코더는 식별 정보 지시에 따라 파라미터 집합 및/또는 데이터 헤더 정보에서 가중 예측 파라미터 정보를 획득한다. 여기서, 파라미터 집합은 SPS, PPS, APS를 포함하고, 데이터 헤더 정보는 픽쳐 헤더(PH), 슬라이스 헤더(Slice Header, SH)를 포함한다. 상기 가중 예측 파라미터 정보는 참조 픽쳐 리스트 내의 각 참조 픽쳐에 가중 예측 파라미터(가중치 및 오프셋)가 구성되어 있는지 여부, 각 참조 픽쳐에 구성된 가중 예측 파라미터 세트 수, 및 각 세트의 가중 예측 파라미터의 구체적인 값 등을 포함하나 이에 한정되지 않는다.
단계 305에서, 가중 예측 식별 정보와 파라미터에 따라 현재 픽쳐에 대해 가중 예측 디코딩을 수행한다.
가중 예측 식별 정보에 따라, 디코더는 현재 완전한 픽쳐에 대해 균일한 형태의 가중 예측 디코딩을 수행하거나, 픽쳐 내의 각 로컬 콘텐츠에 대해 차별화된 가중 예측 디코딩을 수행할 수 있다.
단계 306에서, 현재 픽쳐가 가중 예측 디코딩을 채택하지 않는 것으로 결정되면, 직접 기존 방법을 기반으로 픽쳐 디코딩을 수행한다.
단계 307에서, 재구축 픽쳐를 생성한다. 여기서 재구축 픽쳐는 표시에 사용될 수 있고, 직접 저장될 수도 있다.
다른 실시형태에서, 도 10은 본 발명의 실시예에 의해 제공되는 다른 비디오 디코딩 방법의 예시도이고, 도 10을 참조하면, 본 실시예는 딥러닝 기술을 영역 적응형 가중 예측 동작에 적용하며, 비디오 디코딩 방법은 구체적으로 다음과 같은 단계를 포함한다.
단계 401에서, 코드 스트림을 판독한다.
단계 402에서, 코드 스트림을 해석하고, 딥러닝을 기반으로 한 가중 예측 식별 정보를 획득한다.
디코더는 시퀀스 계층 파라미터 집합, 픽쳐 계층 파라미터 집합 및/또는 슬라이스 계층 파라미터 집합을 해석하고, 딥러닝을 기반으로 한 가중 예측 식별 정보를 획득한다. 여기서, 시퀀스 계층 파라미터 집합은 시퀀스 파라미터 집합(Sequence Parameter Set, SPS)을 포함하고, 픽쳐 계층 파라미터 집합은 픽쳐 파라미터 집합(Picture Parameter Set, PPS), 어댑테이션 파라미터 집합(Adaptation Parameter Set, APS)을 포함하며, 슬라이스 계층 파라미터 집합은 APS를 포함한다. 시퀀스 계층 파라미터 집합 내의 가중 예측 식별 정보는 픽쳐 계층 파라미터 집합 및 슬라이스 계층 파라미터 집합에 의해 인용될 수 있고, 픽쳐 계층 파라미터 집합 내의 가중 예측 식별 정보는 슬라이스 계층 파라미터 집합에 의해 인용될 수 있다. 상기 딥러닝을 기반으로 한 가중 예측 식별 정보는 현재 파라미터 집합이 지시하는 시퀀스 및/또는 픽쳐가 딥러닝을 기반으로 한 가중 예측을 채택하는지 여부를 포함하나 이에 한정되지 않는다.
단계 403에서, 딥러닝을 기반으로 한 가중 예측 식별 정보에 따라 현재 픽쳐가 딥러닝을 기반으로 한 가중 예측 디코딩을 채택하는지 여부를 판단한다.
단계 404에서 현재 픽쳐가 딥러닝을 기반으로 한 가중 예측 디코딩을 채택하는 것으로 결정되면, 딥러닝 수단에 필요한 가중 예측 파라미터를 획득한다.
디코더는 식별 정보 지시에 따라 파라미터 집합 및/또는 데이터 헤더 정보에서 가중 예측 파라미터 정보를 획득한다. 여기서, 파라미터 집합은 SPS, PPS, APS를 포함하고, 데이터 헤더 정보는 픽쳐 헤더(PH), 슬라이스 헤더(Slice Header, SH)를 포함한다. 상기 가중 예측 파라미터 정보는 참조 픽쳐 인덱스 정보, 신경망 모델 구조 및 파라미터, 가중 예측 파라미터값의 일부 또는 전부, 현재 픽쳐의 각 영역 콘텐츠에 사용되는 가중 예측 파라미터 인덱스 정보를 포함하나 이에 한정되지 않는다.
단계 405에서, 가중 예측 식별 정보와 파라미터에 따라 현재 픽쳐에 대해 딥러닝을 기반으로 한 가중 예측 디코딩을 수행한다.
단계 406에서, 현재 픽쳐가 딥러닝을 기반으로 한 가중 예측 디코딩을 채택하지 않는 것으로 결정되면, 직접 기존 방법을 기반으로 픽쳐 디코딩을 수행한다.
단계 407에서, 재구축 픽쳐를 생성한다. 여기서 재구축 픽쳐는 표시에 사용될 수 있고, 직접 저장될 수도 있다.
일 실시형태에서, 실시예는 코드 스트림 내 시퀀스 계층 파라미터 집합(SPS)에 포함된 영역 적응형 가중 예측 파라미터의 식별 정보를 제공한다. SPS 내의 식별 정보는 PPS, APS에 의해 인용될 수 있다. 표 1의 구문과 어의는 다음과 같이 정의된다.
sps_weighted_pred_flag는 시퀀스 계층이 가중 예측 기술을 단방향 예측 슬라이스(P slices)에 적용한 활성화 제어 정보이다. sps_weighted_pred_flag가 1인 경우, 이는 상기 SPS가 지시하는 P slices가 가중 예측을 적용하였을 수 있음을 나타내고; 반대로, sps_weighted_pred_flag가 0인 경우, 이는 상기 SPS가 지시하는 P slices가 가중 예측을 적용하지 않았음을 나타낸다.
sps_weighted_bipred_flag는 시퀀스 계층이 가중 예측 기술이 양방향 예측 슬라이스(B slices)에 적용된 활성화 제어 정보이다. sps_weighted_bipred_flag가 1인 경우, 이는 상기 SPS가 지시하는 B slices가 명시적 가중 예측을 적용하였을 수 있음을 나타내고; 반대로, sps_weighted_pred_flag가 0인 경우, 이는 상기 SPS가 지시하는 B slices가 명시적 가중 예측을 적용하지 않았음을 나타낸다.
sps_wp_multi_weights_flag는 시퀀스 계층이 단일 참조 픽쳐에 대해 여러 세트의 가중 예측 파라미터를 갖는 활성화 제어 정보이다. sps_wp_multi_weights_flag가 1인 경우, 이는 상기 SPS가 지시하는 픽쳐의 단일 참조 픽쳐가 여러 세트의 가중 예측 파라미터를 가질 수 있음을 나타내고; 반대로, sps_wp_multi_weights_flag가 0인 경우, 이는 상기 SPS가 지시하는 픽쳐의 단일 참조 픽쳐가 단일 세트의 가중 예측 파라미터만 가짐을 나타낸다.
seq_parameter_set_rbsp() { Descriptor
......
sps_weighted_pred_flag u(1)
sps_weighted_bipred_flag u(1)
if (sps_weighted_pred_flag || sps_weighted_bipred_flag)
sps_wp_multi_weights_flag u(1)
......
}
일 실시형태에서, 본 실시예는 코드 스트림 내 픽쳐 계층 파라미터 집합(PPS)에 포함된 영역 적응형 가중 예측 파라미터의 식별 정보를 제공하고, PPS 내의 식별 정보는 APS에 의해 인용될 수 있다.
표 2의 구문과 어의는 다음과 같이 정의된다.
pps_weighted_pred_flag는 픽쳐 계층이 가중 예측 기술을 단방향 예측 슬라이스(P slices)에 적용한 활성화 제어 정보이다. pps_weighted_pred_flag가 1인 경우, 이는 상기 PPS가 지시하는 P slices가 가중 예측을 적용하였음을 나타내고; 반대로, pps_weighted_pred_flag가 0인 경우, 이는 상기 PPS가 지시하는 P slices가 가중 예측을 적용하지 않았음을 나타낸다. sps_weighted_pred_flag가 0인 경우, pps_weighted_pred_flag의 값은 0이어야 한다.
pps_weighted_bipred_flag는 픽쳐 계층이 가중 예측 기술을 양방향 예측 슬라이스(B slices)에 적용된 활성화 제어 정보이다. pps_weighted_bipred_flag가 1인 경우, 이는 상기 PPS가 지시하는 B slices가 명시적 가중 예측을 적용하였음을 나타내고; 반대로, pps_weighted_pred_flag가 0인 경우, 이는 상기 PPS가 지시하는 B slices가 명시적 가중 예측을 적용하지 않았음을 나타낸다. sps_weighted_bipred_flag가 0인 경우, pps_weighted_bipred_flag의 값은 0이어야 한다.
pps_wp_multi_weights_flag는 픽쳐 계층이 단일 참조 픽쳐에 대해 여러 세트의 가중 예측 파라미터를 갖는 활성화 제어 정보이다. pps_wp_multi_weights_flag가 1인 경우, 이는 상기 PPS가 지시하는 픽쳐의 단일 참조 픽쳐가 여러 세트의 가중 예측 파라미터를 가짐을 나타내고; 반대로, pps_wp_multi_weights_flag가 0인 경우, 이는 상기 PPS가 지시하는 픽쳐의 단일 참조 픽쳐가 한 세트의 가중 예측 파라미터만 가짐을 나타낸다. sps_wp_multi_weights_flag가 0인 경우, pps_wp_multi_weights_flag의 값은 0이어야 한다.
pps_no_pic_partition_flag가 1인 경우, 이는 상기 PPS가 지시하는 각 픽쳐가 모두 픽쳐 분할을 적용하지 않음을 나타내고; pps_no_pic_partition_flag가 0인 경우, 이는 상기 PPS가 지시하는 각 픽쳐가 모두 복수의 타일(Tile) 또는 슬라이스(Slice)로 분할되었을 수 있음을 나타낸다.
pps_rpl_info_in_ph_flag가 1인 경우, 이는 참조 픽쳐 리스트 (Reference Picture List, RPL) 정보가 픽쳐 헤더(Picture Header, PH) 구문 구조에 존재하고 상기 PPS가 지시하는 PH 구문 구조를 포함하지 않는 슬라이스 헤더에 존재하지 않음을 나타낸다. pps_rpl_info_in_ph_flag가 0인 경우, 이는 RPL 정보가 PH 구문 구조에 존재하지 않고 상기 PPS가 지시하는 슬라이스 헤더에 존재할 수 있음을 나타낸다.
pps_wp_info_in_ph_flag가 1인 경우, 이는 가중 예측 정보가 PH 구문 구조에 존재하고 상기 PPS가 지시하는 PH 구문 구조를 포함하지 않는 슬라이스 헤더에 존재하지 않음을 나타낸다. pps_wp_info_in_ph_flag가 0인 경우, 이는 가중 예측 정보가 PH 구문 구조에 존재하지 않고 상기 PPS가 지시하는 슬라이스 헤더에 존재할 수 있음을 나타낸다.
pic_parameter_set_rbsp() { Descriptor
......
pps_weighted_pred_flag u(1)
pps_weighted_bipred_flag u(1)
if (pps_weighted_pred_flag || pps_weighted_bipred_flag)
pps_wp_multi_weights_flag u(1)
......
if( !pps_no_pic_partition_flag) {
pps_rpl_info_in_ph_flag u(1)
......
if( ( pps_weighted_pred_flag || pps_weighted_bipred_flag) && pps_rpl_info_in_ph_flag)
pps_wp_info_in_ph_flag u(1)
......
}
다른 실시형태에서, 실시예는 코드 스트림 내 픽쳐 헤더(PH)에 포함된 영역 적응형 가중 예측 파라미터의 식별 정보를 제공한다. PH에 포함된 가중 예측 파라미터는 현재 픽쳐, 현재 픽쳐 내의 슬라이스, 및/또는 현재 픽쳐 내의 CTU 또는 CU에 의해 인용될 수 있다.
표 3의 구문과 어의는 다음과 같이 정의된다.
ph_inter_slice_allowed_flag가 0인 경우, 이는 상기 픽쳐의 모든 인코딩 슬라이스가 모두 프레임 내 예측 유형(I slice)임을 나타낸다. ph_inter_slice_allowed_flag가 1인 경우, 이는 상기 픽쳐가 하나 이상의 단방향 또는 양방향 프레임 간 예측 유형의 슬라이스(P slice 또는 B slice)를 포함하도록 허용됨을 나타낸다.
multi_pred_weights_table()은 가중 예측 파라미터를 포함하는 수치 표이고, 여기서 단일 참조 픽쳐는 여러 세트의 가중 예측 파라미터(가중치+오프셋)를 가질 수 있다. 프레임 간 가중 예측 기술을 적용하는 것이 결정되고 또한 가중 예측 정보가 PH에 있을 수 있는 경우, pps_wp_multi_weights_flag가 1이면, 상기 표에서 가중 예측 파라미터를 획득할 수 있다.
pred_weight_table()은 가중 예측 파라미터를 포함하는 수치 표이고, 여기서 단일 참조 픽쳐가 단일 세트의 가중 예측 파라미터(가중치+오프셋)만 갖는다. 프레임 간 가중 예측 기술을 적용하는 것이 결정되고 또한 가중 예측 정보가 PH에 있을 수 있는 경우, pps_wp_multi_weights_flag가 0이면, 상기 표에서 가중 예측 파라미터를 획득할 수 있다.
picture_header_structure() { Descriptor
......
ph_inter_slice_allowed_flag u(1)
......
if( ph_inter_slice_allowed_flag) {
......
if( ( pps_weighted_pred_flag | | pps_weighted_bipred_flag) && pps_wp_info_in_ph_flag)
if( pps_wp_multi_weights_flag)
multi_pred_weights_table()
else
pred_weight_table()
}
......
}
다른 실시형태에서, 실시예는 코드 스트림 내 슬라이스 헤더(SH)에 포함된 영역 적응형 가중 예측 파라미터의 식별 정보를 제공한다. SH에 포함된 가중 예측 파라미터는 현재 슬라이스 및/또는 현재 슬라이스 내의 CTU 또는 CU에 의해 인용될 수 있다.
표 4의 구문과 어의는 다음과 같이 정의된다.
sh_picture_header_in_slice_header_flag가 1이면, 이는 PH 구문 구조가 슬라이스 헤더에 있음을 나타낸다. sh_picture_header_in_slice_header_flag가 0이면, PH 구문 구조는 슬라이스 헤더에 존재하지 않는 바, 즉 슬라이스 계층은 픽쳬 계층의 식별 정보를 완전 상속할 필요가 없으며, 인코딩 도구를 원활하게 선택할 수 있다.
sh_slice_type는 슬라이스의 인코딩 유형을 나타내며, 프레임 내 인코딩 유형(I slice), 단방향 프레임 간 인코딩 유형(P slice), 양방향 프레임 간 인코딩 유형(B slice)일 수 있다.
sh_wp_multi_weights_flag는 슬라이스 계층 단일 참조 픽쳐에 대해 여러 세트의 가중 예측 파라미터를 갖는 활성화 제어 정보이다. sh_wp_multi_weights_flag가 1인 경우, 이는 상기 슬라이스 헤더(SH)가 지시하는 픽쳐 슬라이스의 단일 참조 픽쳐가 여러 세트의 가중 예측 파라미터를 가짐을 나타내고; 반대로, sh_wp_multi_weights_flag가 0인 경우, 이는 상기 SH가 지시하는 픽쳐 슬라이스의 단일 참조 픽쳐가 한 세트의 가중 예측 파라미터만 가짐을 나타낸다. pps_wp_multi_weights_flag가 0인 경우, sh_wp_multi_weights_flag의 값은 0이어야 한다.
프레임 간 가중 예측 기술을 적용하는 것이 결정되고 또한 가중 예측 정보가 SH에 존재할 수 있는 경우, pps_wp_multi_weights_flag가 1이면, 가중 예측 파라미터는 수치 표 multi_pred_weights_table()에서 획득할 수 있고; pps_wp_multi_weights_flag가 0이면, 가중 예측 파라미터는 수치 표 pred_weight_table()에서 획득될 수 있다.
slice_header() { Descriptor
sh_picture_header_in_slice_header_flag u(1)
if( sh_picture_header_in_slice_header_flag)
picture_header_structure()
......
if( ph_inter_slice_allowed_flag)
sh_slice_type ue(v)
......
if( sh_slice_type != I) {
......
if( !pps_wp_info_in_ph_flag && ( ( pps_weighted_pred_flag && sh_slice_type = = P) | | ( pps_weighted_bipred_flag && sh_slice_type = = B)))
sh_wp_multi_weights_flag
if( sh_wp_multi_weights_flag)
multi_pred_weights_table()
else
pred_weight_table()
}
......
}
다른 실시형태에서, 실시예는 가중 예측 파라미터의 수치 표의 구문과 어의를 제공하고, pred_weight_table()과 multi_pred_weights_table()은 모두 가중 예측 파라미터를 포함하는 수치 표이나, 차이점은 전자는 단일 참조 픽쳐에 단일 세트의 가중 예측 파라미터만 있다고 정의하는 반면, 후자는 단일 참조 픽쳐에 여러 세트의 가중 예측 파라미터가 있을 수 있다고 정의하는 것이다. 구체적으로, pred_weight_table()의 구문과 어의는 국제 표준 H.266/VVC version 1의 문서 설명을 참조할 수 있고; multi_pred_weights_table()의 구문과 어의는 표 5 및 그 설명에서 제공된다. 여기서,
luma_log2_weight_denom 및 delta_chroma_log2_weight_denom은 인코딩단의 부동 소수점 연산을 방지하기 위해 각각 밝기 및 색차를 지향하는 가중 인자의 증폭 계수이다.
num_l0_weights는 pps_wp_info_in_ph_flag가 1인 경우, 참조 픽쳐 리스트 0(RPL 0) 내 많은 항목(참조 픽쳐)에 대해 지시해야 하는 가중 인자의 수를 나타낸다. num_l0_weights의 값 범위는 [0, Min(15, num_ref_entries[0][RplsIdx[0]])]이고, 여기서 num_ref_entries[listIdx][rplsIdx]는 참조 픽쳐 리스트 구문 구조 ref_pic_list_struct(listIdx, rplsIdx) 내의 항목 수를 나타낸다. pps_wp_info_in_ph_flag가 1인 경우, 변수 NumWeightsL0은 num_l0_weights로 설정되고; 반대로, pps_wp_info_in_ph_flag가 0인 경우, 변수 NumWeightsL0은 NumRefIdxActive[0]으로 설정된다. 여기서, NumRefIdxActive[i]-1의 값은 참조 픽쳐 리스트 i(RPL i) 내의 디코딩 슬라이스에 사용될 수 있는 최대 참조 인덱스를 지시한다. NumRefIdxActive[i]의 값이 0이면, 이는 RPL i에 디코딩 슬라이스를 위한 참조 인덱스가 없음을 나타낸다.
luma_weight_l0_flag[i]가 1인 경우, 이는 참조 리스트 0 내 i번째 항목(RefPicList[0][i])을 사용하여 단방향 예측을 수행하는 밝기 성분이 가중 인자(가중치+오프셋)를 가짐을 나타낸다. luma_weight_l0_flag[i]가 0인 경우, 이는 전술한 가중 인자가 존재하지 않음을 나타낸다.
chroma_weight_l0_flag[i]가 1인 경우, 이는 참조 리스트 0 내 i번째 항목(RefPicList[0][i])을 사용하여 단방향 예측을 수행하는 색차 예측 값이 가중 인자(가중치+오프셋)를 가짐을 나타낸다. chroma_weight_l0_flag[i]가 0인 경우, 이는 전술한 가중 인자가 존재하지 않음을 나타낸다(기본 상황).
num_l0_luma_pred_weights[i]는 luma_weight_l0_flag[i]가 1인 경우, 참조 픽쳐 리스트 0(RPL 0) 내 항목 i(참조 픽쳐 i)의 밝기 성분에 대해 지시해야 하는 가중 인자의 수, 즉 리스트 0 내 단일 참조 픽쳐 i 밝기 성분이 가질 수 있는 가중 예측 파라미터의 수를 나타낸다.
delta_luma_weight_l0[i][k] 및 luma_offset_l0[i][k]는 각각 참조 픽쳐 리스트 0 내 i번째 참조 픽쳐의 밝기 성분을 지향하는 k번째 가중치 인자 및 오프셋 값을 지시한다.
num_l0_chroma_pred_weights[i][j]는 chroma_weight_l0_flag[i]가 1인 경우, 참조 픽쳐 리스트 0(RPL 0) 내 항목 i(참조 픽쳐 i)의 j번째 색차 성분에 대해 지시해야 하는 가중 인자의 수, 즉 리스트 0 내 단일 참조 픽쳐 i의 j번째 색차 성분이 가질 수 있는 가중 예측 파라미터의 수를 나타낸다.
delta_chroma_weight_l0[i][j][k] 및 delta_chroma_offset_l0[i][j][k]는 각각 참조 픽쳐 리스트 0 내 i번째 참조 픽쳐의 j번째 색차 성분을 지향하는 k번째 가중치 인자 및 오프셋 값을 지시한다.
양방향 예측의 겨우, 전술한 참조 픽쳐 리스트 0에 대한 가중 예측 파라미터 식별 외에, 참조 픽쳐 리스트 1(RPL 1)에 대해서도 표 5에 도시된 바와 같이 유사한 정보 식별을 수행해야 한다.
multi_pred_weights_table() { Descriptor
luma_log2_weight_denom ue(v)
if( sps_chroma_format_idc != 0)
delta_chroma_log2_weight_denom se(v)
if( pps_wp_info_in_ph_flag)
num_l0_weights ue(v)
for( i = 0; i < NumWeightsL0; i++)
luma_weight_l0_flag[ i ] u(1)
if( sps_chroma_format_idc != 0)
for( i = 0; i < NumWeightsL0; i++)
chroma_weight_l0_flag[ i ] u(1)
for( i = 0; i < NumWeightsL0; i++) {
if( luma_weight_l0_flag[ i ]) {
num_l0_luma_pred_weights[ i ] ue(v)
for( k = 0; k < num_l0_luma_pred_weights[ i ]; k++) {
delta_luma_weight_l0[ i ][ k ] se(v)
luma_offset_l0[ i ][ k ] se(v)
}
}
if( chroma_weight_l0_flag[ i ])
for( j = 0; j < 2; j++) {
num_l0_chroma_pred_weights[ i ][ j ] ue(v)
for( k = 0; k < num_l0_chroma_pred_weights[ i ][ j ]; k++) {
delta_chroma_weight_l0[ i ][ j ][ k ] se(v)
delta_chroma_offset_l0[ i ][ j ][ k ] se(v)
}
}
}
if( pps_weighted_bipred_flag && pps_wp_info_in_ph_flag && num_ref_entries[ 1 ][ RplsIdx[ 1 ] ] > 0)
num_l1_weights ue(v)
for( i = 0; i < NumWeightsL1; i++)
luma_weight_l1_flag[ i ] u(1)
if( sps_chroma_format_idc != 0)
for( i = 0; i < NumWeightsL1; i++)
chroma_weight_l1_flag[ i ] u(1)
for( i = 0; i < NumWeightsL1; i++) {
if( luma_weight_l1_flag[ i ]) {
num_l1_luma_pred_weights[ i ] ue(v)
for( k = 0; k < num_l1_luma_pred_weights[ i ]; k++) {
delta_luma_weight_l1[ i ][ k ] se(v)
luma_offset_l1[ i ][ k ] se(v)
}
}
if( chroma_weight_l1_flag[ i ])
for( j = 0; j < 2; j++) {
num_l1_chroma_pred_weights[ i ][ j ] ue(v)
for( k = 0; k < num_l1_chroma_pred_weights[ i ][ j ]; k++) {
delta_chroma_weight_l1[ i ][ j ][ k ] se(v)
delta_chroma_offset_l1[ i ][ j ][ k ] se(v)
}
}
}
}
다른 실시형태에서, 본 실시예는 다른 가중 예측 파라미터의 수치 표의 구문 및 의미를 제공한다. pred_weight_table() 및 multi_pred_weights_table()은 모두 가중 예측 파라미터를 포함하는 수치 표로, 차이점은 전자는 단일 참조 픽쳐에 단일 세트의 가중 예측 파라미터만 있다고 정의하는 반면, 후자는 단일 참조 픽쳐에 여러 세트의 가중 예측 파라미터가 있을 수 있다고 정의하는 것이다. 구체적으로, pred_weight_table()의 구문과 어의는 국제 표준 H.266/VVC version 1의 문서 설명을 참조할 수 있고; multi_pred_weights_table()의 구문과 어의는 표 6 및 그 설명에서 제공된다. 실시예 11에서, multi_pred_weights_table()에는 참조 픽쳐 리스트 내의 많은 항목이 포함되는 바, 즉 지정된 복수의 참조 픽쳐는 모두 가중 인자가 있는지 여부를 판단해야 하며, 또한 가중 인자가 있는 단일 참조 픽쳐는 여러 세트의 가중 예측 파라미터(가중치 및 오프셋 포함)가 있을 수도 있다. 상대적으로, 본 실시예는 실시예 11의 특별한 예로서, 여기서는 각 참조 픽쳐 리스트 중 하나의 참조 픽쳐만 고려하는 바, 즉 가중 예측 기술을 적용하기로 결정할 때, 상기 참조 픽쳐에 있는 여러 세트의 가중 예측 파라미터를 직접 지정한다. 표 6의 각 필드의 의미는 표 5의 각 필드에 대응되는 어의의 해석과 동일하다.
multi_pred_weights_table() { Descriptor
luma_log2_weight_denom ue(v)
if( sps_chroma_format_idc != 0)
delta_chroma_log2_weight_denom se(v)
num_l0_luma_pred_weights ue(v)
for( i = 0; i < num_l0_luma_pred_weights; i++) {
delta_luma_weight_l0[ i ] se(v)
luma_offset_l0[ i ] se(v)
}
if( sps_chroma_format_idc != 0)
for( j = 0; j < 2; j++) {
num_l0_chroma_pred_weights[ j ] ue(v)
for( i = 0; i < num_l0_chroma_pred_weights[ j ]; i++) {
delta_chroma_weight_l0[ j ][ i ] se(v)
delta_chroma_offset_l0[ j ][ i ] se(v)
}
}
if( pps_weighted_bipred_flag){
num_l1_luma_pred_weights ue(v)
for( i = 0; i < num_l1_luma_pred_weights; i++) {
delta_luma_weight_l1[ i ] se(v)
luma_offset_l1[ i ] se(v)
}
if( sps_chroma_format_idc != 0)
for( j = 0; j < 2; j++) {
num_l1_chroma_pred_weights[ j ] ue(v)
for( i = 0; i < num_l1_chroma_pred_weights[ j ]; i++) {
delta_chroma_weight_l1[ j ][ i ] se(v)
delta_chroma_offset_l1[ j ][ i ] se(v)
}
}
}
}
다른 실시형태에서, 영역 적응형 가중 예측 식별 정보 및 파라미터는 코딩 트리 유닛(CTU)에서 제공된다.
CTU 내의 가중 예측 파라미터 정보는 독립적으로 식별될 수 있고, 기타 파라미터 집합(예를 들어, 시퀀스 계층 파라미터 집합(SPS), 픽쳐 계층 파라미터 집합(PPS)) 또는 헤더 정보(예를 들어, 픽쳐 헤더(PH), 슬라이스 헤더(SH))를 인용할 수도 있으며, 가중 예측 파라미터 차이값 또는 가중 예측 파라미터 인덱스 정보와 차이값이 기록될 수도 있다. CTU 내의 가중 예측 파라미터 정보가 차이값을 기록하거나 인덱스 정보 및 차이값을 기록하는 경우, 이는 기타 파라미터 집합 또는 헤더 정보에서 하나의 가중치를 얻은 후, CTU 내의 하나의 차이값을 더하여 상기 CTU 또는 CU에 최종적으로 적용되는 가중 예측 파라미터를 얻을 수 있음을 의미한다. CTU를 단위로 가중 예측 파라미터 정보를 포함하는 경우, 원형 그래디언트, 방사 그래디언트 등 CTU를 단위로 하는 정밀화된 밝기 그래디언트 효과를 구현할 수 있다.
CTU에서 가중 예측 파라미터 정보를 식별하는 경우, 구체적인 코드 스트림 구성 방법은 표 7에 도시된 바와 같을 수 있다.
표 7에서, 참조 픽쳐 리스트 RPL 내 단일 참조 픽쳐가 한 세트의 가중 예측 파라미터만 갖는 경우, 예를 들어, 지시 정보 sh_wp_multi_weights_flag가 0인 경우, CTU에서 가중 예측 파라미터 차이값을 직접 설정할 수 있고; 참조 픽쳐 리스트 내 단일 참조 픽쳐가 여러 세트의 가중 예측 파라미터를 갖는 경우, 예를 들어, 지시 정보 sh_wp_multi_weights_flag가 1인 경우, CTU에서 자체 인덱스의 특정 세트의 가중 예측 파라미터 및 가중 예측 파라미터 차이값을 식별해야 한다.
현재 CTU에 최종적으로 적용되는 가중 예측 파라미터는 참조 픽쳐의 특정 가중 예측 파라미터에 coding_tree_unit()에 정의된 가중 예측 파라미터 차이값을 더한 값이다.
상기 가중 예측 파라미터 차이값은 RPL0 중 밝기 성분을 지향하는 가중 예측 파라미터 차이값(ctu_delta_luma_weight_l0 및 ctu_delta_luma_offset_l0), RPL0 중 색차 성분을 지향하는 가중 예측 파라미터 차이값(ctu_delta_chroma_weight_l0[ i ] 및 ctu_delta_chroma_offset_l0[ i ]), RPL1 중 밝기 성분을 지향하는 가중 예측 파라미터 차이값(ctu_delta_luma_weight_l1 및 ctu_delta_luma_offset_l1), RPL1 중 색차 성분을 지향하는 가중 예측 파라미터 차이값(ctu_delta_chroma_weight_l1[ i ] 및 ctu_delta_chroma_offset_l1[ i ])을 포함하나 이에 한정되지 않는다.
상기 가중 예측 파라미터 인덱스 정보는 RPL0 중 밝기 성분을 지향하는 가중 예측 파라미터 인덱스 번호(ctu_index_l0_luma_pred_weights), RPL0 중 색차 성분을 지향하는 가중 예측 파라미터 인덱스 번호(ctu_index_l0_chroma_pred_weights[ i ]), RPL1 중 밝기 성분을 지향하는 가중 예측 파라미터 인덱스 번호(ctu_index_l1_luma_pred_weights), RPL1 중 색차 성분을 지향하는 가중 예측 파라미터 인덱스 번호(ctu_index_l1_chroma_pred_weights[ i ])를 포함하나 이에 한정되지 않는다.
요컨대, 현재 CTU에 최종적으로 적용되는 가중 예측 파라미터는 참조 픽쳐의 특정 가중 예측 파라미터에 coding_tree_unit()에 정의된 가중 예측 파라미터 차이값을 더한 값이다.
coding_tree_unit() { Descriptor
......
if ( !sh_wp_multi_weights_flag) {
ctu_delta_luma_weight_l0 se(v)
ctu_delta_luma_offset_l0 se(v)
if( sps_chroma_format_idc != 0)
for( i = 0; i < 2; i++) {
ctu_delta_chroma_weight_l0[ i ] se(v)
ctu_delta_chroma_offset_l0[ i ] se(v)
}
if( pps_weighted_bipred_flag) {
ctu_delta_luma_weight_l1 se(v)
ctu_delta_luma_offset_l1 se(v)
if( sps_chroma_format_idc != 0)
for( i = 0; i < 2; i++) {
ctu_delta_chroma_weight_l1[ i ] se(v)
ctu_delta_chroma_offset_l1[ i ] se(v)
}
}
}
else {
ctu_index_l0_luma_pred_weights se(v)
ctu_delta_luma_weight_l0 se(v)
ctu_delta_luma_offset_l0 se(v)
if( sps_chroma_format_idc != 0)
for( i = 0; i < 2; i++) {
ctu_index_l0_chroma_pred_weights[ i ] se(v)
ctu_delta_chroma_weight_l0[ i ] se(v)
ctu_delta_chroma_offset_l0[ i ] se(v)
}
if( pps_weighted_bipred_flag){
ctu_index_l1_luma_pred_weights se(v)
ctu_delta_luma_weight_l1 se(v)
ctu_delta_luma_offset_l1 se(v)
if( sps_chroma_format_idc != 0)
for( i = 0; i < 2; i++) {
ctu_index_l1_chroma_pred_weights[ i ] se(v)
ctu_delta_chroma_weight_l1[ i ] se(v)
ctu_delta_chroma_offset_l1[ i ] se(v)
}
}
}
......
}
다른 실시형태에서, 영역 적응형 가중 예측 식별 정보 및 파라미터는 코딩 유닛(CU)에서 제공된다.
CU 내의 가중 예측 파라미터 정보는 독립적으로 식별될 수 있고, 기타 파라미터 집합(예를 들어, 시퀀스 계층 파라미터 집합(SPS), 픽쳐 계층 파라미터 집합(PPS)) 또는 헤더 정보(예를 들어, 픽쳐 헤더(PH), 슬라이스 헤더(SH))를 인용하거나 코딩 트리 유닛(CTU)에서 인용될 수도 있으며, 가중 예측 파라미터 차이값 또는 가중 예측 파라미터 인덱스 정보와 차이값이 기록될 수도 있다. CU 내의 가중 예측 파라미터 정보가 차이값을 기록하거나 인덱스 정보 및 차이값을 기록하는 경우, 이는 기타 파라미터 집합 또는 헤더 정보에서 하나의 가중치를 얻은 후, CU 내의 하나의 차이값을 더하여 상기 CU에 최종적으로 적용되는 가중 예측 파라미터를 얻을 수 있음을 의미한다. CU를 단위로 가중 예측 파라미터 정보를 포함하는 경우, 원형 그래디언트, 방사 그래디언트 등 CU를 단위로 하는 정밀화된 밝기 그래디언트 효과를 구현할 수 있다.
CU에서 가중 예측 파라미터 정보를 식별하는 경우, 구체적인 코드 스트림 구성 방법은 표 8에 도시된 바와 같을 수 있다.
여기서, cu_pred_weights_adjust_flag는 현재 CU에 의해 인덱싱된 가중 예측 파라미터값을 조정해야 하는지 여부를 지시한다. cu_pred_weights_adjust_flag가 1인 경우, 현재 CU가 가중 예측 파라미터값을 조정해야 함을 지시하는 바, 즉 현재 CU에 최종적으로 적용되는 가중 예측 파라미터값은 CTU 레벨의 가중 예측 파라미터값과 CU 레벨로 식별되는 차이값의 합이며; cu_pred_weights_adjust_flag가 1인 경우, 현재 CU가 CTU 레벨에서 결정된 가중 예측 파라미터값을 직접 사용하도록 지시한다.
표 8에서, 상기 CU 레벨로 식별되는 가중 예측 파라미터 차이값은 RPL0 중 밝기 성분을 지향하는 가중 예측 파라미터 차이값(cu_delta_luma_weight_l0 및 cu_delta_luma_offset_l0)을 포함한다.
현재 CU가 색차 성분을 포함하면, CU 레벨로 식별되는 가중 예측 파라미터 차이값은 각 색차 성분을 지향하는 가중 예측 파라미터 차이값을 더 포함하고; 현재 CU가 양방향으로 예측되면, CU 레벨로 식별되는 가중 예측 파라미터 차이값은 RPL1 중 밝기 성분 및/또는 각 색차 성분을 지향하는 가중 예측 파라미터 차이값을 더 포함한다.
요컨대, 현재 CU에 최종적으로 적용되는 가중 예측 파라미터는 인코딩 및 디코딩 구조에서 상위 계층 데이터(예를 들어 CTU 레벨, Slice 레벨, Subpicture 레벨)가 갖는 특정 가중 예측 파라미터에 coding_unit()에 정의된 가중 예측 파라미터 차이값을 더한 값이다.
coding_unit() { Descriptor
......
cu_pred_weights_adjust_flag u(1)
if ( cu_pred_weights_adjust_flag)
cu_delta_luma_weight_l0 se(v)
cu_delta_luma_offset_l0 se(v)
......
}
다른 실시형태에서, 영역 적응형 가중 예측 식별 정보 및 파라미터는 보완 강화 정보(Supplemental Enhancement Information, SEI)에서 제공된다.
네트워크 추상화 계층 유닛 헤더 정보 nal_unit_header() 내의 NAL unit type는 23으로 설정되고, 선행 SEI 정보를 나타낸다. sei_rbsp()는 관련 코드 스트림 sei_message()를 포함하고, sei_message()에는 유효 데이터 정보가 포함된다. payloadType값을 현재 H.266/VVC version 1 내의 기타 SEI 정보와 다르게 설정하면(예를 들어, 값은 100일 수 있음), payload_size_byte에는 영역 적응형 가중 예측과 관련된 코드 스트림 정보가 포함된다. 구체적인 코드 스트림 구성 방법은 표 7에 도시된 바와 같다.
multi_pred_weights_cancel_flag가 1이면, 이전 픽쳐와 관련된 SEI 정보를 취소하여 상기 픽쳐는 관련SEI 기능을 사용하지 않으며; multi_pred_weights_cancel_flag가 0이면, 이전 SEI 정보를 계속하여 사용하고(디코딩 과정에서, 현재 픽쳐에 SEI 정보가 없으면, 메모리에 남아 있는 이전 픽쳐의 SEI 정보가 현재 픽쳐의 디코딩 과정에 계속하여 사용됨), 상기 픽쳐는 관련 SEI 기능을 활성화하며; multi_pred_weights_persistence_flag가 1이면, SEI 정보는 현재 픽쳐 및 현재 계층 이후의 픽쳐에 적용되고; multi_pred_weights_persistence_flag가 0이면, SEI 정보는 현재 픽쳐에만 적용된다. 표 9의 기타 필드의 의미는 표 5의 각 필드에 대응되는 어의의 해석과 동일하다.
multi_pred_weights_info( payloadSize) { Descriptor
multi_pred_weights_cancel_flag u(1)
if( !multi_pred_weights_cancel_flag){
multi_pred_weights_persistence_flag u(1)
luma_log2_weight_denom ue(v)
if( sps_chroma_format_idc != 0)
delta_chroma_log2_weight_denom se(v)
if( pps_wp_info_in_ph_flag)
num_l0_weights ue(v)
for( i = 0; i < NumWeightsL0; i++)
luma_weight_l0_flag[ i ] u(1)
if( sps_chroma_format_idc != 0)
for( i = 0; i < NumWeightsL0; i++)
chroma_weight_l0_flag[ i ] u(1)
for( i = 0; i < NumWeightsL0; i++) {
if( luma_weight_l0_flag[ i ]) {
num_l0_luma_pred_weights[ i ] ue(v)
for( k = 0; k < num_l0_luma_pred_weights[ i ]; k++) {
delta_luma_weight_l0[ i ][ k ] se(v)
luma_offset_l0[ i ][ k ] se(v)
}
}
if( chroma_weight_l0_flag[ i ])
for( j = 0; j < 2; j++) {
num_l0_chroma_pred_weights[ i ][ j ] ue(v)
for( k = 0; k < num_l0_chroma_pred_weights[ i ][ j ]; k++) {
delta_chroma_weight_l0[ i ][ j ][ k ] se(v)
delta_chroma_offset_l0[ i ][ j ][ k ] se(v)
}
}
}
if( pps_weighted_bipred_flag && pps_wp_info_in_ph_flag && num_ref_entries[ 1 ][ RplsIdx[ 1 ] ] > 0)
num_l1_weights ue(v)
for( i = 0; i < NumWeightsL1; i++)
luma_weight_l1_flag[ i ] u(1)
if( sps_chroma_format_idc != 0)
for( i = 0; i < NumWeightsL1; i++)
chroma_weight_l1_flag[ i ] u(1)
for( i = 0; i < NumWeightsL1; i++) {
if( luma_weight_l1_flag[ i ]) {
num_l1_luma_pred_weights[ i ] ue(v)
for( k = 0; k < num_l1_luma_pred_weights[ i ]; k++) {
delta_luma_weight_l1[ i ][ k ] se(v)
luma_offset_l1[ i ][ k ] se(v)
}
}
if( chroma_weight_l1_flag[ i ])
for( j = 0; j < 2; j++) {
num_l1_chroma_pred_weights[ i ][ j ] ue(v)
for( k = 0; k < num_l1_chroma_pred_weights[ i ][ j ]; k++) {
delta_chroma_weight_l1[ i ][ j ][ k ] se(v)
delta_chroma_offset_l1[ i ][ j ][ k ] se(v)
}
}
}
}
}
다른 실시형태에서, 영역 적응형 가중 예측 식별 정보 및 파라미터는 미디어 설명 정보에서 제공된다. 여기서, 미디어 설명 정보에는 HTTP 기반의 동적 적응 스트리밍(Dynamic Adaptive Streaming over HTTP, DASH) 프로토콜의 미디어 프리젠데이션 디스크립션(Media Presentation Description, MPD) 정보, MPEG 미디어 전송(MPEG Media Transport, MMT) 프로토콜의 미디어 자원 디스크립터(Asset Descriptor) 정보가 포함되나 이에 한정되지 않는다. MMT의 미디어 자원 디스크립터를 예로 들면, 영역 적응형 가중 예측 정보를 위한 코드 스트림 구성 방법은 표 10에 도시된 바와 같다. 표 10의 구문 및 필드 의미는 표 5의 각 필드에 대응되는 어의의 해석과 동일하다.
Asset_descriptor() { Descriptor
......
luma_log2_weight_denom ue(v)
if( sps_chroma_format_idc != 0)
delta_chroma_log2_weight_denom se(v)
if( pps_wp_info_in_ph_flag)
num_l0_weights ue(v)
for( i = 0; i < NumWeightsL0; i++)
luma_weight_l0_flag[ i ] u(1)
if( sps_chroma_format_idc != 0)
for( i = 0; i < NumWeightsL0; i++)
chroma_weight_l0_flag[ i ] u(1)
for( i = 0; i < NumWeightsL0; i++) {
if( luma_weight_l0_flag[ i ]) {
num_l0_luma_pred_weights[ i ] ue(v)
for( k = 0; k < num_l0_luma_pred_weights[ i ]; k++) {
delta_luma_weight_l0[ i ][ k ] se(v)
luma_offset_l0[ i ][ k ] se(v)
}
}
if( chroma_weight_l0_flag[ i ])
for( j = 0; j < 2; j++) {
num_l0_chroma_pred_weights[ i ][ j ] ue(v)
for( k = 0; k < num_l0_chroma_pred_weights[ i ][ j ]; k++) {
delta_chroma_weight_l0[ i ][ j ][ k ] se(v)
delta_chroma_offset_l0[ i ][ j ][ k ] se(v)
}
}
}
if( pps_weighted_bipred_flag && pps_wp_info_in_ph_flag && num_ref_entries[1][RplsIdx[1]] > 0)
num_l1_weights ue(v)
for( i = 0; i < NumWeightsL1; i++)
luma_weight_l1_flag[i] u(1)
if( sps_chroma_format_idc != 0)
for( i = 0; i < NumWeightsL1; i++)
chroma_weight_l1_flag[i] u(1)
for( i = 0; i < NumWeightsL1; i++) {
if( luma_weight_l1_flag[i]) {
num_l1_luma_pred_weights[ i ] ue(v)
for( k = 0; k < num_l1_luma_pred_weights[ i ]; k++) {
delta_luma_weight_l1[i][ k ] se(v)
luma_offset_l1[i][ k ] se(v)
}
}
if( chroma_weight_l1_flag[i])
for( j = 0; j < 2; j++) {
num_l1_chroma_pred_weights[ i ][ j ] ue(v)
for( k = 0; k < num_l1_chroma_pred_weights[ i ][ j ]; k++) {
delta_chroma_weight_l1[i][j][ k ] se(v)
delta_chroma_offset_l1[i][j][ k ] se(v)
}
}
}
}
도 11은 본 발명의 실시예에 의해 제공되는 비디오 인코딩 장치의 구조 모식도로서, 본 발명의 임의의 실시예에 의해 제공되는 비디오 인코딩 방법을 수행할 수 있고, 방법을 수행하기 위한 상응한 기능 모듈 및 유익한 효과를 가지며, 상기 장치는 소프트웨어 및/또는 하드웨어에 의해 구현될 수 있고, 구체적으로 픽쳐 획득 모듈(610) 및 비디오 인코딩 모듈(620)을 포함한다.
픽쳐 획득 모듈(610)은 비디오 픽쳐를 획득하되, 상기 비디오 픽쳐는 비디오의 적어도 한 프레임의 픽쳐이다.
비디오 인코딩 모듈(620)은 상기 비디오 픽쳐에 대해 가중 예측 인코딩을 수행하여 픽쳐 코드 스트림을 생성하되, 상기 가중 예측 인코딩에는 적어도 한 세트의 가중 예측 식별 정보 및 파라미터가 사용된다.
본 발명의 실시예에서는 픽쳐 획득 모듈을 통해 비디오 중 적어도 한 프레임의 픽쳐인 비디오 픽쳐를 획득하고, 비디오 인코딩 모듈은 비디오 픽쳐에 대해 가중 예측 인코딩을 수행하여 픽쳐 코드 스트림을 생성하며, 여기서 가중 예측 인코딩 과정에서 적어도 한 세트의 가중 예측 식별 정보 및 파라미터를 사용하여 비디오 픽쳐의 원활한 인코딩을 구현함으로써, 비디오 인코딩 효율을 향상시키고, 인코딩 효율에 대한 비디오 픽쳐 밝기 변화의 영향을 줄일 수 있다.
나아가, 전술한 본 발명의 실시예를 기반으로, 상기 장치는,
상기 비디오 픽쳐와 참조 픽쳐의 비교 결과에 따라 밝기 변화 상황을 결정하는 변화 결정 모듈을 더 포함한다.
나아가, 전술한 본 발명의 실시예를 기반으로, 상기 밝기 변화 상황은 픽쳐 밝기 변화 평균값 및 픽셀 밝기 변화값 중 적어도 하나를 포함한다.
나아가, 전술한 본 발명의 실시예를 기반으로, 상기 비디오 인코딩 모듈(620)은,
상기 비디오 픽쳐의 밝기 변화 상황에 따라 상기 비디오 픽쳐에 대해 가중 예측 인코딩을 수행하는 인코딩 처리 유닛을 포함한다.
나아가, 전술한 본 발명의 실시예를 기반으로, 상기 인코딩 처리 유닛은 구체적으로 상기 밝기 변화 상황이 전체 프레임 픽쳐의 밝기가 일치한 것인 경우, 상기 비디오 픽쳐에 대해 가중 예측 인코딩을 수행하고; 상기 밝기 변화 상황이 파티션 픽쳐의 밝기가 일치한 것인 경우, 상기 비디오 픽쳐 내의 각 상기 파티션 픽쳐에 대해 각각 가중 예측 인코딩을 수행하기로 결정한다.
나아가, 전술한 본 발명의 실시예를 기반으로, 상기 장치에서 가중 예측 인코딩에 사용되는 한 세트의 상기 가중 예측 식별 정보 및 파라미터는 한 프레임의 상기 비디오 픽쳐 또는 상기 비디오 픽쳐의 적어도 하나의 파티션 픽쳐에 대응된다.
나아가, 전술한 본 발명의 실시예를 기반으로, 상기 장치에서 파티션 픽쳐의 사양은 슬라이스(Slice), 타일(Tile), 서브픽쳐(Subpicture), 코딩 트리 유닛(Coding Tree Unit), 코딩 유닛(Coding Unit) 중 적어도 하나를 포함한다.
나아가, 전술한 본 발명의 실시예를 기반으로, 상기 장치는,
상기 가중 예측 식별 정보 및 파라미터를 상기 픽쳐 코드 스트림에 기입하는 코드 스트림 기입 모듈을 더 포함한다.
나아가, 전술한 본 발명의 실시예를 기반으로, 상기 장치에서 가중 예측 식별 정보 및 상기 파라미터는 시퀀스 계층 파라미터 집합, 픽쳐 계층 파라미터 집합, 슬라이스 계층 파라미터 집합, 보완 강화 정보, 비디오 가용성 정보, 픽쳐 헤더 정보, 슬라이스 헤더 정보, 네트워크 추상화 계층 유닛 헤더 정보, 코딩 트리 유닛, 코딩 유닛 중 적어도 하나의 파라미터 집합에 포함된다.
나아가, 전술한 본 발명의 실시예를 기반으로, 상기 장치에서 가중 예측 식별 정보 및 상기 파라미터는 참조 픽쳐 인덱스 정보, 가중 예측 활성화 제어 정보, 영역 적응형 가중 예측 활성화 제어 정보, 가중 예측 파라미터 중 적어도 하나를 포함한다.
나아가, 전술한 본 발명의 실시예를 기반으로, 상기 장치에서 픽쳐 코드 스트림은 전송 스트림 또는 미디어 파일을 포함한다.
나아가, 전술한 본 발명의 실시예를 기반으로, 상기 비디오 인코딩 모듈(620)은,
사전 훈련된 신경망 모델에 따라 상기 비디오 픽쳐에 대해 가중 예측 인코딩을 수행하는 딥러닝 유닛을 더 포함한다.
나아가, 전술한 본 발명의 실시예를 기반으로, 상기 장치에서 가중 예측 식별 정보는 신경망 모델 구조 및 신경망 모델 파라미터를 더 포함한다.
도 12는 본 발명의 실시예에 의해 제공되는 비디오 디코딩 장치의 구조 모식도로서, 본 발명의 임의의 실시예에 의해 제공되는 비디오 디코딩 방법을 수행할 수 있고, 방법을 수행하기 위한 상응한 기능 모듈 및 유익한 효과를 가지며, 상기 장치는 소프트웨어 및/또는 하드웨어에 의해 구현될 수 있고, 구체적으로 코드 스트림 획득 모듈(710) 및 픽쳐 재구축 모듈(720)을 포함한다.
코드 스트림 획득 모듈(710)은 픽쳐 코드 스트림을 획득하고, 상기 픽쳐 코드 스트림 내의 가중 예측 식별 정보 및 파라미터를 해석한다.
픽쳐 재구축 모듈(720)은 상기 가중 예측 식별 정보 및 파라미터에 따라 상기 픽쳐 코드 스트림을 디코딩하여 재구축 픽쳐를 생성한다.
본 발명의 실시예에서는 코드 스트림 획득 모듈을 통해 픽쳐 코드 스트림을 획득하고, 픽쳐 코드 스트림 내의 가중 예측 식별 정보 및 파라미터를 획득하며, 픽쳐 재구축 모듈은 획득된 가중 예측 식별 정보 및 파라미터에 따라 픽쳐 코드 스트림을 처리하여 새로운 픽쳐를 생성함으로써, 픽쳐 코드 스트림의 동적 디코딩을 구현하여 비디오 디코딩 효율을 향상시키고, 비디오 디코딩 효율에 대한 픽쳐 밝기 변화의 영향을 줄일 수 있다.
나아가, 전술한 본 발명의 실시예를 기반으로, 상기 장치에서 픽쳐 코드 스트림 내의 가중 예측 식별 정보 및 파라미터의 개수는 적어도 한 세트이다.
나아가, 전술한 본 발명의 실시예를 기반으로, 상기 장치에서 가중 예측 식별 정보 및 상기 파라미터는 시퀀스 계층 파라미터 집합, 픽쳐 계층 파라미터 집합, 슬라이스 계층 파라미터 집합, 보완 강화 정보, 비디오 가용성 정보, 픽쳐 헤더 정보, 슬라이스 헤더 정보, 네트워크 추상화 계층 유닛 헤더 정보, 코딩 트리 유닛, 코딩 유닛 중 적어도 하나의 파라미터 집합에 포함된다.
나아가, 전술한 본 발명의 실시예를 기반으로, 상기 장치에서 가중 예측 식별 정보 및 상기 파라미터는 참조 픽쳐 인덱스 정보, 가중 예측 활성화 제어 정보, 영역 적응형 가중 예측 활성화 제어 정보, 가중 예측 파라미터 중 적어도 하나를 포함한다.
나아가, 전술한 본 발명의 실시예를 기반으로, 상기 장치에서 픽쳐 코드 스트림은 전송 스트림 또는 미디어 파일을 포함한다.
나아가, 전술한 본 발명의 실시예를 기반으로, 상기 픽쳐 재구축 모듈(720)은,
사전 훈련된 신경망 모델에 따라 상기 가중 예측 식별 정보 및 파라미터를 사용하여 상기 픽쳐 코드 스트림에 대해 가중 예측 디코딩을 수행하여 재구축 픽쳐를 생성하는 딥러닝 디코딩 유닛을 포함한다.
나아가, 전술한 본 발명의 실시예를 기반으로, 상기 장치에서 가중 예측 식별 정보 및 파라미터는 신경망 모델 구조 및 신경망 모델 파라미터를 더 포함한다.
일부 예시에서, 도 13은 본 발명의 실시예에 의해 제공되는 인코더의 구조 모식도로서, 도 13에 도시된 인코더는 비디오를 인코딩 처리하는 장치에 적용된다. 상기 장치의 입력은 비디오에 포함된 픽쳐이고, 출력은 픽쳐 코드 스트림 또는 픽쳐 코드 스트림이 포함된 전송 스트림 또는 미디어 파일이다. 상기 인코더는 다음 용도로 사용된다. 단계 501에서 픽쳐를 입력한다. 단계 502에서 인코더는 픽쳐를 처리하여 인코딩을 수행한다. 구체적인 동작 과정은 전술한 임의의 실시예에 의해 제공되는 비디오 인코딩 방법과 같을 수 있다. 단계 503에서 코드 스트림을 출력한다.
일부 예시에서, 도 14는 본 발명의 실시예에 의해 제공되는 디코더의 구조 모식도로서, 도 14에 도시된 디코더는 비디오를 디코딩 처리하는 장치에 적용된다. 상기 장치의 입력은 픽쳐 코드 스트림 또는 픽쳐 코드 스트림이 포함된 전송 스트림 또는 미디어 파일이고, 출력은 비디오를 구성하는 픽쳐이다. 상기 디코더는 다음 용도로 사용된다. 단계 601에서 픽쳐를 입력한다. 단계 602에서 디코더는 코드 스트림을 해석하여 픽쳐를 획득하고, 픽쳐를 디코딩한다. 구체적인 동작 과정의 예시는 전술한 임의의 실시예에 의해 제공되는 비디오 디코딩 방법과 같을 수 있다. 단계 603에서 픽쳐를 출력한다. 단계 604에서 플레이어가 픽쳐를 재생한다.
도 15는 본 발명의 실시예에 의해 제공되는 전자 기기의 구조 모식도로서, 상기 전자 기기는 프로세서(70), 메모리(71), 입력 장치(72) 및 출력 장치(73)를 포함하고; 전자 기기 내 프로세서(70)의 개수는 하나 이상일 수 있으며, 도 15에서는 하나의 프로세서(70)를 예로 들어 설명하고; 전자 기기 내 프로세서(70), 메모리(71), 입력 장치(72) 및 출력 장치(73)는 버스 또는 기타 방식을 통해 연결될 수 있으며, 도 15에서는 버스를 통한 연결을 예로 들어 설명한다.
메모리(71)는 컴퓨터 판독 가능 저장 매체로서, 소프트웨어 프로그램, 컴퓨터 실행 가능 프로그램 및 모듈(예: 본 발명의 실시예의 비디오 인코딩 장치 또는 비디오 디코딩 장치에 대응되는 모듈(픽쳐 획득 모듈(610) 및 비디오 인코딩 모듈(620), 또는, 코드 스트림 획득 모듈(710) 및 픽쳐 재구축 모듈(720))을 저장할 수 있다. 프로세서(70)는 메모리(71)에 저장된 소프트웨어 프로그램, 명령 및 모듈을 실행하여 전자 기기의 다양한 기능 애플리케이션 및 데이터 처리를 실행하는 바, 즉 전술한 방법을 구현한다.
메모리(71)는 주로 프로그램 저장 영역 및 데이터 저장 영역을 포함할 수 있고, 여기서, 프로그램 저장 영역은 운영체제, 적어도 하나의 기능에 필요한 적용 프로그램을 저장할 수 있으며; 데이터 저장 영역은 전자 기기의 사용에 따라 생성된 데이터 등을 저장할 수 있다. 이 밖에, 메모리(71)는 고속 랜덤 액세스 메모리를 포함할 수 있고, 적어도 하나의 자기 디스크 저장 소자, 플래시 메모리 소자, 또는 다른 비휘발성 고체 저장 소자와 같은 비휘발성 메모리를 포함할 수도 있다. 일부 구현예에서, 메모리(71)는 프로세서(70)에 대해 원격에 설치된 메모리를 추가로 포함할 수 있고, 이러한 원격 메모리는 네트워크를 통해 전자 기기에 연결될 수 있다. 전술한 네트워크의 구현예는 인터넷, 인트라넷, 근거리 통신망, 이동 통신 네트워크 및 이들의 조합을 포함하지만 이에 한정되지 않는다.
입력 장치(72)는 입력된 숫자 또는 문자 정보를 수신하고, 전자 기기의 사용자 설정 및 기능 제어와 관련된 키 신호 입력을 생성할 수 있다. 출력 장치(73)는 디스플레이 스크린과 같은 디스플레이 장치를 포함할 수 있다.
본 발명의 실시예는 또한 컴퓨터 실행 가능 명령을 포함하는 저장 매체를 제공하며, 상기 컴퓨터 실행 가능 명령은 컴퓨터 프로세서에 의해 실행될 경우 비디오 인코딩 방법을 수행할 수 있고, 상기 방법은,
비디오 픽쳐를 획득하되, 상기 비디오 픽쳐는 비디오의 적어도 한 프레임의 픽쳐인 단계; 및
상기 비디오 픽쳐에 대해 가중 예측 인코딩을 수행하여 픽쳐 코드 스트림을 생성하되, 상기 가중 예측 인코딩에는 적어도 한 세트의 가중 예측 식별 정보 및 파라미터가 사용되는 단계를 포함한다.
또는, 상기 컴퓨터 실행 가능 명령은 컴퓨터 프로세서에 의해 실행될 경우 비디오 디코딩 방법을 수행하며, 상기 방법은,
픽쳐 코드 스트림을 획득하고, 상기 픽쳐 코드 스트림 내의 가중 예측 식별 정보 및 파라미터를 해석하는 단계; 및
상기 가중 예측 식별 정보 및 파라미터에 따라 상기 픽쳐 코드 스트림을 디코딩하여 재구축 픽쳐를 생성하는 단계를 포함한다.
이상의 실시형태에 관련된 설명을 통해, 당업자는 본 발명이 소프트웨어 및 필요한 범용 하드웨어에 의해 구현될 수 있고, 물론 하드웨어를 통해 구현될 수도 있지만 대부분의 경우 전자가 더 나은 실시형태임을 명확히 이해할 수 있다. 이러한 이해를 기반으로 본 발명의 기술적 해결수단은 본질적이거나 종래 기술에 기여하는 부분이 소프트웨어 제품의 형태로 구현될 수 있으며, 상기 컴퓨터 소프트웨어 제품은 컴퓨터의 플로피 디스크, 읽기 전용 메모리(Read-Only Memory, ROM), 랜덤 액세스 메모리(Random Access Memory, RAM), 플래시 메모리(FLASH), 하드 디스크 또는 광 디스크와 같은 컴퓨터 판독 가능 저장 매체에 저장될 수 있고, 여러 명령을 포함하여 하나의 컴퓨터 기기(개인용 컴퓨터, 서버 또는 네트워크 기기 등일 수 있음)가 본 발명의 각 실시예에 따른 방법을 수행하도록 한다.
유의해야 할 것은, 전술한 장치의 실시예에서, 포함된 각 유닛 및 모듈은 단지 기능 논리에 따라 분할될 뿐, 상응한 기능이 구현될 수 있는 한 전술한 분할에 한정되지 않으며; 또한, 각 기능 유닛의 구체적인 명칭은 단지 상호 구별의 편의를 위한 것일 뿐 본 발명의 보호 범위를 한정하기 위한 것이 아니다.
당업자는 위에 개시된 방법의 모든 또는 일부 단계, 시스템 및 기능 모듈/유닛이 소프트웨어, 펌웨어, 하드웨어 및 이들의 적절한 조합으로 구현될 수 있다는 것을 이해할 수 있다.
하드웨어 실시형태에서, 위의 설명에서 언급된 기능 모듈/유닛 간의 분할은 반드시 물리적 구성요소의 분할에 대응되는 것은 아니며; 예를 들어, 하나의 물리적 구성요소가 여러 기능을 가질 수도 있고, 하나의 기능이나 단계가 여러 물리적 구성요소에 의해 협력적으로 수행될 수도 있다. 물리적 구성요소 중 일부 또는 전부는 중앙 처리 장치, 디지털 신호 프로세서 또는 마이크로프로세서와 같은 프로세서에 의해 실행되는 소프트웨어로 구현되거나, 하드웨어로 구현되거나, 주문형 집적 회로와 같은 집적 회로로 구현될 수 있다. 이러한 소프트웨어는 컴퓨터 저장 매체(또는 비일시적 매체) 및 통신 매체(또는 임시 매체)를 포함할 수 있는 컴퓨터 판독 가능 매체에 배포될 수 있다. 당업자에게 알려진 바와 같이, 컴퓨터 저장 매체라는 용어는 정보(예: 컴퓨터 판독 가능 명령, 데이터 구조, 프로그램 모듈 또는 기타 데이터)를 저장하기 위한 임의의 방법 또는 기술로 구현되는 휘발성 및 비휘발성, 제거 가능 및 제거 불가능 매체를 포함한다. 컴퓨터 저장 매체에는 RAM, ROM, EEPROM, 플래시 메모리 또는 기타 메모리 기술, CD-ROM, 디지털 다목적 디스크(DVD) 또는 기타 광학 디스크 저장소, 자기 카세트, 자기 테이프, 자기 디스크 저장소 또는 기타 자기 저장 장치, 또는 원하는 정보를 저장하는 데 사용할 수 있고 컴퓨터에서 액세스할 수 있는 기타 매체를 포함하지만 이에 한정되지 않는다. 이 밖에, 통신 매체는 일반적으로 컴퓨터 판독 가능 명령, 데이터 구조, 프로그램 모듈 또는 반송파 또는 기타 전송 메커니즘과 같은 변조된 데이터 신호 내의 기타 데이터를 포함하고, 또한 임의의 정보 전달 매체를 포함할 수 있다는 것은 당업자에게 알려져 있다.
이상, 첨부된 도면을 참조하여 본 발명의 일부 실시예를 설명하였으나 본 발명의 권리 범위가 이에 의해 한정되는 것은 아니다. 본 발명의 범위와 실질을 벗어나지 않고 당업자가 수행한 모든 수정, 동등한 대체 및 개선은 모두 본 발명의 권리 범위 내에 있어야 한다.

Claims (25)

  1. 비디오 인코딩 방법으로서,
    비디오 픽쳐를 획득하는 단계 - 상기 비디오 픽쳐는 비디오의 적어도 한 프레임의 픽쳐임 -; 및
    상기 비디오 픽쳐에 대해 가중 예측 인코딩을 수행하여 픽쳐 코드 스트림을 생성하는 단계 - 상기 가중 예측 인코딩에서는 적어도 한 세트의 가중 예측 식별 정보 및 파라미터가 사용됨 -
    를 포함하는 비디오 인코딩 방법.
  2. 제1항에 있어서,
    상기 비디오 픽쳐와 참조 픽쳐의 비교 결과에 따라 밝기 변화 상황을 결정하는 단계
    를 더 포함하는 비디오 인코딩 방법.
  3. 제2항에 있어서,
    상기 밝기 변화 상황은,
    픽쳐 밝기 변화 평균값 및 픽셀 밝기 변화값
    중 적어도 하나를 포함하는 것인 비디오 인코딩 방법.
  4. 제1항에 있어서,
    상기 비디오 픽쳐에 대해 가중 예측 인코딩을 수행하여 픽쳐 코드 스트림을 생성하는 단계는,
    상기 비디오 픽쳐의 밝기 변화 상황에 따라 상기 비디오 픽쳐에 대해 가중 예측 인코딩을 수행하는 단계
    를 포함하는 것인 비디오 인코딩 방법.
  5. 제4항에 있어서,
    상기 밝기 변화 상황에 따라 상기 비디오 픽쳐에 대해 가중 예측 인코딩을 수행하는 단계는,
    상기 밝기 변화 상황이 전체 프레임 픽쳐의 밝기가 일치함인 경우, 상기 비디오 픽쳐에 대해 가중 예측 인코딩을 수행하는 단계; 및
    상기 밝기 변화 상황이 파티션 픽쳐의 밝기가 일치함인 경우, 상기 비디오 픽쳐 내의 각 파티션 픽쳐에 대해 각각 가중 예측 인코딩을 수행하기로 결정하는 단계
    중 적어도 하나를 포함하는 것인 비디오 인코딩 방법.
  6. 제1항에 있어서,
    상기 비디오 픽쳐는 상기 참조 픽쳐 또는 상기 참조 픽쳐의 파티션 픽쳐에 대해 적어도 한 세트의 상기 가중 예측 식별 정보 및 파라미터를 갖는 것인 비디오 인코딩 방법.
  7. 제1항에 있어서,
    상기 가중 예측 인코딩에서 사용되는 상기 한 세트의 가중 예측 식별 정보 및 파라미터는 한 프레임의 상기 비디오 픽쳐 또는 상기 비디오 픽쳐의 적어도 하나의 파티션 픽쳐에 대응되는 것인 비디오 인코딩 방법.
  8. 제7항에 있어서,
    상기 파티션 픽쳐의 사양은,
    슬라이스(Slice), 타일(Tile), 서브픽쳐(Subpicture), 코딩 트리 유닛(Coding Tree Unit), 코딩 유닛(Coding Unit)
    중 적어도 하나를 포함하는 것인 비디오 인코딩 방법.
  9. 제1항에 있어서,
    상기 가중 예측 식별 정보 및 파라미터를 상기 픽쳐 코드 스트림에 기입하는 단계
    를 더 포함하는 비디오 인코딩 방법.
  10. 제9항에 있어서,
    상기 가중 예측 식별 정보 및 상기 파라미터는, 시퀀스 계층 파라미터 집합, 픽쳐 계층 파라미터 집합, 슬라이스 계층 파라미터 집합, 보완 강화 정보, 비디오 가용성 정보, 픽쳐 헤더 정보, 슬라이스 헤더 정보, 네트워크 추상화 계층 유닛 헤더 정보, 코딩 트리 유닛, 코딩 유닛 중, 적어도 하나의 파라미터 집합에 포함되는 것인 비디오 인코딩 방법.
  11. 제1항에 있어서,
    상기 가중 예측 식별 정보 및 상기 파라미터는, 참조 픽쳐 인덱스 정보, 가중 예측 활성화 제어 정보, 영역 적응형 가중 예측 활성화 제어 정보, 가중 예측 파라미터 중, 적어도 하나를 포함하는 것인 비디오 인코딩 방법.
  12. 제1항에 있어서,
    상기 픽쳐 코드 스트림은 전송 스트림 또는 미디어 파일을 포함하는 것인 비디오 인코딩 방법.
  13. 제1항에 있어서,
    상기 비디오 픽쳐에 대해 가중 예측 인코딩을 수행하여 픽쳐 코드 스트림을 생성하는 단계는,
    사전 훈련된 신경망 모델에 따라 상기 비디오 픽쳐에 대해 가중 예측 인코딩을 수행하는 단계
    를 포함하는 것인 비디오 인코딩 방법.
  14. 제13항에 있어서,
    상기 가중 예측 식별 정보는 신경망 모델 구조 및 신경망 모델 파라미터를 더 포함하는 것인 비디오 인코딩 방법.
  15. 비디오 디코딩 방법으로서,
    픽쳐 코드 스트림을 획득하고, 상기 픽쳐 코드 스트림 내의 가중 예측 식별 정보 및 파라미터를 해석하는 단계; 및
    상기 가중 예측 식별 정보 및 파라미터에 따라 상기 픽쳐 코드 스트림을 디코딩하여 재구축 픽쳐를 생성하는 단계
    를 포함하는 비디오 디코딩 방법.
  16. 제15항에 있어서,
    상기 픽쳐 코드 스트림 내의 가중 예측 식별 정보 및 파라미터의 개수는 적어도 한 세트인 것인 비디오 디코딩 방법.
  17. 제15항에 있어서,
    상기 가중 예측 식별 정보 및 상기 파라미터는, 시퀀스 계층 파라미터 집합, 픽쳐 계층 파라미터 집합, 슬라이스 계층 파라미터 집합, 보완 강화 정보, 비디오 가용성 정보, 픽쳐 헤더 정보, 슬라이스 헤더 정보, 네트워크 추상화 계층 유닛 헤더 정보, 코딩 트리 유닛, 코딩 유닛 중, 적어도 하나의 파라미터 집합에 포함되는 것인 비디오 디코딩 방법.
  18. 제15항에 있어서,
    상기 가중 예측 식별 정보 및 상기 파라미터는, 참조 픽쳐 인덱스 정보, 가중 예측 활성화 제어 정보, 영역 적응형 가중 예측 활성화 제어 정보, 가중 예측 파라미터 중, 적어도 하나를 포함하는 것인 비디오 디코딩 방법.
  19. 제15항에 있어서,
    상기 픽쳐 코드 스트림은 전송 스트림 또는 미디어 파일을 포함하는 것인 비디오 디코딩 방법.
  20. 제15항에 있어서,
    상기 가중 예측 식별 정보 및 파라미터에 따라 상기 픽쳐 코드 스트림을 디코딩하여 재구축 픽쳐를 생성하는 단계는,
    사전 훈련된 신경망 모델에 따라 상기 가중 예측 식별 정보 및 파라미터를 사용하여 상기 픽쳐 코드 스트림에 대해 가중 예측 디코딩을 수행하여 재구축 픽쳐를 생성하는 단계
    를 포함하는 것인 비디오 디코딩 방법.
  21. 제20항에 있어서,
    상기 가중 예측 식별 정보 및 파라미터는 신경망 모델 구조 및 신경망 모델 파라미터를 더 포함하는 것인 비디오 디코딩 방법.
  22. 비디오 인코딩 장치로서,
    비디오 픽쳐를 획득하기 위한 픽쳐 획득 모듈 - 상기 비디오 픽쳐는 비디오의 적어도 한 프레임의 픽쳐임 -; 및
    상기 비디오 픽쳐에 대해 가중 예측 인코딩을 수행하여 픽쳐 코드 스트림을 생성하기 위한 비디오 인코딩 모듈 - 상기 가중 예측 인코딩에서는 적어도 한 세트의 가중 예측 식별 정보 및 파라미터가 사용됨 -
    을 포함하는 비디오 인코딩 장치.
  23. 비디오 디코딩 장치로서,
    픽쳐 코드 스트림을 획득하고, 상기 픽쳐 코드 스트림 내의 가중 예측 식별 정보 및 파라미터를 해석하기 위한 코드 스트림 획득 모듈; 및
    상기 가중 예측 식별 정보 및 파라미터에 따라 상기 픽쳐 코드 스트림을 디코딩하여 재구축 픽쳐를 생성하기 위한 픽쳐 재구축 모듈
    을 포함하는 비디오 디코딩 장치.
  24. 전자 기기로서,
    하나 이상의 프로세서; 및
    하나 이상의 프로그램을 저장하는 메모리
    를 포함하되,
    상기 하나 이상의 프로그램은, 상기 하나 이상의 프로세서에 의해 실행될 경우, 상기 하나 이상의 프로세서가 제1항 내지 제14항 또는 제15항 내지 제21항 중 어느 한 항에 따른 방법을 수행하게 하는 것인 전자 기기.
  25. 하나 이상의 프로그램이 저장된 컴퓨터 판독 가능 저장 매체로서,
    상기 하나 이상의 프로그램은 하나 이상의 프로세서에 의해 실행되어 제1항 내지 제14항 또는 제15항 내지 제21항 중 어느 한 항에 따른 방법을 구현할 수 있는 것인 컴퓨터 판독 가능 저장 매체.
KR1020247002467A 2021-07-30 2022-06-29 비디오 인코딩, 비디오 디코딩 방법, 장치, 전자 기기 및 저장 매체 KR20240024975A (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
CN202110875430.8A CN115695812A (zh) 2021-07-30 2021-07-30 视频编码、视频解码方法、装置、电子设备和存储介质
CN202110875430.8 2021-07-30
PCT/CN2022/102406 WO2023005579A1 (zh) 2021-07-30 2022-06-29 视频编码、视频解码方法、装置、电子设备和存储介质

Publications (1)

Publication Number Publication Date
KR20240024975A true KR20240024975A (ko) 2024-02-26

Family

ID=85059734

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020247002467A KR20240024975A (ko) 2021-07-30 2022-06-29 비디오 인코딩, 비디오 디코딩 방법, 장치, 전자 기기 및 저장 매체

Country Status (4)

Country Link
EP (1) EP4380156A1 (ko)
KR (1) KR20240024975A (ko)
CN (1) CN115695812A (ko)
WO (1) WO2023005579A1 (ko)

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2302933A1 (en) * 2009-09-17 2011-03-30 Mitsubishi Electric R&D Centre Europe B.V. Weighted motion compensation of video
KR101373704B1 (ko) * 2012-05-29 2014-03-14 주식회사 코아로직 적응적 가중치 예측을 이용한 영상 처리 방법
CN114584766A (zh) * 2016-04-29 2022-06-03 英迪股份有限公司 解码和编码视频的方法以及传送比特流的方法
CN106358041B (zh) * 2016-08-30 2019-05-10 北京奇艺世纪科技有限公司 一种帧间预测编码方法及装置
CN112261409A (zh) * 2019-07-22 2021-01-22 中兴通讯股份有限公司 残差编码、解码方法及装置、存储介质及电子装置

Also Published As

Publication number Publication date
EP4380156A1 (en) 2024-06-05
WO2023005579A1 (zh) 2023-02-02
CN115695812A (zh) 2023-02-03

Similar Documents

Publication Publication Date Title
KR100908062B1 (ko) 비디오 신호의 디코딩/인코딩 방법 및 장치
US8363724B2 (en) Methods and apparatus using virtual reference pictures
US9380313B2 (en) Techniques for describing temporal coding structure
US20140086306A1 (en) Image decoding method, image coding method, image decoding apparatus, image coding apparatus, and image coding and decoding apparatus
KR101751153B1 (ko) 디코딩 장치, 방법 및 비-일시적 컴퓨터 판독가능 기록매체
US20190014331A1 (en) Picture decoding and encoding methods and apparatuses, decoder, and encoder
US9392279B2 (en) Method and system for generating an instantaneous decoding refresh (IDR) picture slice in an H.264/AVC compliant video data stream
US11336965B2 (en) Method and apparatus for processing video bitstream, network device, and readable storage medium
JP5170708B2 (ja) 動画像ストリーム加工方法及び装置、それを用いた動画像再生装置並びに動画像配信装置
KR20090099547A (ko) 멀티뷰 코딩 비디오에서 비디오 에러 정정을 위한 방법 및 장치
US20050114887A1 (en) Quality of video
US11831865B2 (en) Image decoding device, image decoding method, image encoding device, and image encoding method
CN105379281B (zh) 用于使用图形处理器的视频解码的图片参考控制
CN107635142B (zh) 一种视频数据的处理方法及装置
KR20240024975A (ko) 비디오 인코딩, 비디오 디코딩 방법, 장치, 전자 기기 및 저장 매체
JP2024521528A (ja) ビデオ符号化、ビデオ復号化の方法、装置、電子機器及び記憶媒体
EP4329299A1 (en) Image encoding method and apparatus, image decoding method and apparatus, and electronic device and storage medium

Legal Events

Date Code Title Description
A201 Request for examination