JP7353401B2 - レート歪み最適化を用いたビデオ符号化における画像整形 - Google Patents
レート歪み最適化を用いたビデオ符号化における画像整形 Download PDFInfo
- Publication number
- JP7353401B2 JP7353401B2 JP2022018653A JP2022018653A JP7353401B2 JP 7353401 B2 JP7353401 B2 JP 7353401B2 JP 2022018653 A JP2022018653 A JP 2022018653A JP 2022018653 A JP2022018653 A JP 2022018653A JP 7353401 B2 JP7353401 B2 JP 7353401B2
- Authority
- JP
- Japan
- Prior art keywords
- bin
- shaping
- codeword
- shaped
- reshaper
- Prior art date
- Legal status (The legal status 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 status listed.)
- Active
Links
- 238000007493 shaping process Methods 0.000 title claims description 225
- 238000005457 optimization Methods 0.000 title description 11
- 238000000034 method Methods 0.000 claims description 146
- 238000013507 mapping Methods 0.000 claims description 28
- 238000012886 linear function Methods 0.000 claims description 3
- 230000006870 function Effects 0.000 description 108
- OSWPMRLSEDHDFF-UHFFFAOYSA-N methyl salicylate Chemical compound COC(=O)C1=CC=CC=C1O OSWPMRLSEDHDFF-UHFFFAOYSA-N 0.000 description 88
- 241000023320 Luma <angiosperm> Species 0.000 description 80
- 230000008569 process Effects 0.000 description 62
- 239000000872 buffer Substances 0.000 description 22
- 238000001914 filtration Methods 0.000 description 12
- 238000009826 distribution Methods 0.000 description 11
- 238000013459 approach Methods 0.000 description 10
- 238000012545 processing Methods 0.000 description 10
- 238000010276 construction Methods 0.000 description 9
- 238000004519 manufacturing process Methods 0.000 description 9
- 238000013139 quantization Methods 0.000 description 9
- 238000012360 testing method Methods 0.000 description 9
- 101150039623 Clip1 gene Proteins 0.000 description 6
- 208000010587 benign idiopathic neonatal seizures Diseases 0.000 description 6
- 230000006978 adaptation Effects 0.000 description 5
- 230000003044 adaptive effect Effects 0.000 description 5
- 230000001186 cumulative effect Effects 0.000 description 5
- 238000011161 development Methods 0.000 description 4
- 230000004044 response Effects 0.000 description 4
- 230000009466 transformation Effects 0.000 description 4
- 238000007792 addition Methods 0.000 description 3
- 230000008901 benefit Effects 0.000 description 3
- 238000004422 calculation algorithm Methods 0.000 description 3
- 238000013500 data storage Methods 0.000 description 3
- 238000009795 derivation Methods 0.000 description 3
- 238000013461 design Methods 0.000 description 3
- 230000000694 effects Effects 0.000 description 3
- 239000000284 extract Substances 0.000 description 3
- 238000007726 management method Methods 0.000 description 3
- 239000003607 modifier Substances 0.000 description 3
- 230000000007 visual effect Effects 0.000 description 3
- 238000004364 calculation method Methods 0.000 description 2
- 238000006243 chemical reaction Methods 0.000 description 2
- 238000007906 compression Methods 0.000 description 2
- 230000006835 compression Effects 0.000 description 2
- 230000001419 dependent effect Effects 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 238000003860 storage Methods 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 238000012669 compression test Methods 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 238000010219 correlation analysis Methods 0.000 description 1
- 238000013144 data compression Methods 0.000 description 1
- 238000003066 decision tree Methods 0.000 description 1
- 238000011143 downstream manufacturing Methods 0.000 description 1
- 230000009977 dual effect Effects 0.000 description 1
- 238000010191 image analysis Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000005693 optoelectronics Effects 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 238000005192 partition Methods 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 238000012163 sequencing technique Methods 0.000 description 1
- 230000011664 signaling Effects 0.000 description 1
- 230000002123 temporal effect Effects 0.000 description 1
- 238000012549 training Methods 0.000 description 1
- 239000011800 void material Substances 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/85—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
- H04N19/146—Data rate or code amount at the encoder output
- H04N19/147—Data rate or code amount at the encoder output according to rate distortion criteria
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/46—Embedding additional information in the video signal during the compression process
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods 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/103—Selection of coding mode or of prediction mode
- H04N19/107—Selection of coding mode or of prediction mode between spatial and temporal predictive coding, e.g. picture refresh
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods 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/117—Filters, e.g. for pre-processing or post-processing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods 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/119—Adaptive subdivision aspects, e.g. subdivision of a picture into rectangular or non-rectangular coding blocks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods 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/132—Sampling, masking or truncation of coding units, e.g. adaptive resampling, frame skipping, frame interpolation or high-frequency transform coefficient masking
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
- H04N19/136—Incoming video signal characteristics or properties
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
- H04N19/157—Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
- H04N19/159—Prediction type, e.g. intra-frame, inter-frame or bidirectional frame prediction
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods 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/17—Methods 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/176—Methods 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/42—Methods 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
- H04N19/423—Methods 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 characterised by memory arrangements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/70—Methods 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/80—Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation
- H04N19/82—Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation involving filtering within a prediction loop
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Description
本願は、2019年1月14日に出願された米国仮特許出願第62/792,122号、2018年12月20日に出願された米国仮特許出願第62/782,659号、2018年11月28日に出願された米国仮特許出願第62/772,228号、2018年10月1日に出願された米国仮特許出願第62/739,402号、2018年9月4日に出願された米国仮特許出願第62/726,608号、2018年6月28日に出願された米国仮特許出願第62/691,366号、および2018年2月14日に出願された米国仮特許出願第62/630,385号に対する優先権の利益を主張するものであり、それぞれその全体が参照により本明細書に組み込まれる。
本発明は、概括的には、画像およびビデオ符号化に関する。より詳細には、本発明のある実施形態は、ビデオ符号化における画像整形に関する。
本明細書に記載される例示的実施形態は、ビデオのための信号整形および符号化に関する。エンコーダにおいて、プロセッサは、第2の符号語表現に整形されるべき第1の符号語表現の入力画像を受領し、前記第2の符号語表現は、前記第1の符号語表現よりも効率的な圧縮を許容するものであり、プロセッサはさらに、前記入力画像のピクセルを第2の符号語表現にマッピングする前方整形関数を生成する。前記前方整形関数を生成するために、前記エンコーダは:前記入力画像を複数のピクセル領域に分割し、前記ピクセル領域のそれぞれを、各ピクセル領域の第1のルミナンス特性に従って複数の符号語ビンのうちの1つに割り当て、各符号語ビンに割り当てられた前記ピクセル領域のそれぞれの第2のルミナンス特性に従って前記複数の符号語ビンのうちのそれぞれの符号語ビンのビン・メトリックを計算し、前記第2の符号語表現におけるいくつかの符号語を、各符号語ビンのビン・メトリックおよびレート‐歪み最適化基準に従って各符号語ビンに割り当て、前記複数の符号語ビンのそれぞれへの前記第2の符号語表現における符号語の割り当てに応答して、前記前方整形関数を生成する。
そのデフォルトのビン重要度値をそのデルタ・ビン重要度値に加えることによってそのビン重要度値を決定し;
ビンのビン重要度値および割り当てリストに基づいて、符号語ビンに割り当てられるべき符号語の数を決定し;
各符号語ビンに割り当てられた符号語の数に基づいて前方整形関数を生成する。
プロセッサは、整形情報に関係するメタデータに基づいて、逆整形関数および前方整形関数を生成する。ここで、逆整形関数は、第1の符号語表現から第2の符号語表現に整形画像のピクセルをマッピングし、前方整形関数は、第2の符号語表現から第1の符号語表現へ画像のピクセルをマッピングする。プロセッサは、符号化されたビットストリームから、一つまたは複数の符号化された単位を含む符号化された整形画像を抽出する。ここで、符号化された整形画像における一つまたは複数の符号化された単位について:
符号化された整形画像における整形されたイントラ符号化された符号化単位(coding unit、CU)については、プロセッサは:
CUにおける整形された残差および整形された予測サンプルに基づいてCUの第1の整形された再構成サンプルを生成し;
第1の整形された再構成サンプルおよびループ・フィルタ・パラメータに基づいて、整形されたループ・フィルタ出力を生成し;
逆整形関数を整形されたループ・フィルタ出力に適用して、第2の符号語表現での符号化単位のデコードされたサンプルを生成し;
第2の符号語表現での符号化単位のデコードされたサンプルを参照バッファに格納し;
符号化された整形画像における整形されたインター符号化された符号化単位については、プロセッサは:
第2の符号語表現での、参照バッファに格納された予測サンプルに前方整形関数を適用し、第2の整形された予測サンプルを生成し;
符号化されたCUにおける整形された残差および第2の整形された予測サンプルに基づいて符号化単位の第2の整形された再構成サンプルを生成し;
第2の整形された再構成サンプルおよびループ・フィルタ・パラメータに基づいて、整形されたループ・フィルタ出力を生成し;
整形されたループ・フィルタ出力に逆整形関数を適用して、第2の符号語表現での符号化単位のサンプルを生成し;
第2の符号語表現での符号化単位のサンプルを参照バッファに格納する。最後に、プロセッサは、参照バッファ内の格納されたサンプルに基づいて、デコードされた画像を生成する。
符号化された整形画像におけるイントラ符号化された符号化単位(イントラCU)については、プロセッサは:
イントラCUにおける整形された残差およびイントラ予測された整形された予測サンプルに基づいて、イントラCUの整形された再構成サンプル(285)を生成し;
逆整形関数(265-3)をイントラCUの整形された再構成サンプルに適用して、第1の符号語表現でのイントラCUのデコードされたサンプルを生成し;
イントラCUのデコードされたサンプルにループ・フィルタ(270)を適用して、イントラCUの出力サンプルを生成し;
イントラCUの出力サンプルを参照バッファに格納し;
符号化された整形画像におけるインター符号化されたCU(インターCU)については、プロセッサは:
前方整形関数(282)を、第1の符号語表現での参照バッファに格納されたインター予測サンプルに適用して、入力符号語表現でのインターCUについての整形された予測サンプルを生成し;
インターCUの整形された残差およびインターCUについての整形された予測サンプルに基づいてインターCUの整形された再構成サンプルを生成し;
逆整形関数(265-3)をインターCUの整形された再構成サンプルに適用して、第1の符号語表現でのインターCUのデコードされたサンプルを生成し;
ループ・フィルタ(270)をインターCUのデコードされたサンプルに適用して、インターCUの出力サンプルを生成し;
インターCUの出力サンプルを参照バッファに格納し;
参照バッファ内の出力サンプルに基づいて、第1の符号語表現でのデコードされた画像を生成する。
図1Aは、ビデオ捕捉からビデオ・コンテンツ表示までのさまざまな段階を示す、従来のビデオ配信パイプライン(100)の例示的なプロセスを示す。ビデオ・フレーム(102)のシーケンスが、画像生成ブロック(105)を用いて捕捉または生成される。ビデオ・フレーム(102)は、デジタル的に(たとえば、デジタルカメラによって)捕捉されるか、またはコンピュータによって(たとえば、コンピュータ・アニメーションを使用して)生成されて、ビデオ・データ(107)を提供しうる。あるいはまた、ビデオ・フレーム(102)は、フィルム・カメラによってフィルム上に捕捉されてもよい。フィルムは、デジタル・フォーマットに変換されて、ビデオ・データ(107)を提供する。制作フェーズ(110)では、ビデオ・データ(107)が編集されて、ビデオ制作ストリーム(112)を提供する。
図1Bは、特許文献2による信号整形のための例示的なプロセスを示す。入力フレーム(117)が与えられると、前方整形ブロック(150)は、入力および符号化制約条件を解析し、入力フレーム(117)を再量子化された出力フレーム(152)にマッピングする符号語マッピング関数を生成する。たとえば、入力(117)は、ある種の電気光学伝達関数(electro-optical transfer function、EOTF)(たとえば、ガンマ)に従ってエンコードされていてもよい。いくつかの実施形態では、メタデータを使用して、整形プロセスに関する情報が下流の装置(たとえば、デコーダ)に伝えられてもよい。本明細書で使用されるところでは、用語「メタデータ」は、符号化されたビットストリームの一部として送信され、デコードされた画像をレンダリングするためにデコーダを支援する任意の補助情報に関する。そのようなメタデータは、本明細書に記載されるような、色空間または色域情報、参照ディスプレイ・パラメータ、および補助信号パラメータを含みいるが、これらに限定されない。
ある色成分中のBビットのビット深さによって表わされる整形されたビデオ信号(たとえば、Y、Cbおよび/またはCrについてB=10)を考えると、合計2B個の利用可能な符号語がある。望まれる符号語範囲[0 2B]をN個のセグメントまたはビンに分割することを考える。Mkは、目標ビットレートRが与えられたときに源ピクチャーとデコードまたは再構成されたピクチャーとの間の歪みDが最小になるような整形マッピング後の、k番目のセグメントまたはビンの中の符号語の数を表わすとする。一般性を失うことなく、Dは、源入力の対応するピクセル値(Source(i,j))と再構成されたピクチャー(Recon(i,j))との間の平方誤差和(SSE)の尺度として表現されてもよい。
D=SSE=Σi,jDiff(i,j)2 (1)
ここで、
Diff(i,j)=Source(i,j)-Recon(i,j)
である。
・各ビンについてブロック分散の和(varbin(k))とカウンタ(cbin(k))を0に初期化する。たとえば、k=0,1,…,N-1についてvarbin(k)=0、cbin(k)=0とする。
・ピクチャーをL*Lの重複しないブロックに分割する(たとえばL=16)。
・各ピクチャー・ブロックについて、ブロックのルーマ平均およびブロックiのルーマ分散(たとえば、Luma_mean(i)およびLuma_var(i))を計算する。
・ブロックの平均ルーマに基づいて、そのブロックをN個のビンのうちの1つに割り当てる。ある実施形態では、Luma_mean(i)が入力ダイナミックレンジ内のk番目のセグメント内にある場合、k番目のビンについての全ビン・ルミナンス分散が、新たに割り当てられたブロックのルーマ分散によってインクリメントされ、そのビンについてのカウンタは1だけ増加される。すなわち、i番目のピクセル領域がk番目のビンに属する場合:
varbin(k)=varbin(k)+Luma_var(i); (2)
cbin(k)=cbin(k)+1
・各ビンについて、カウンタが0に等しくないと想定して、そのビン内のブロック分散の和をカウンタで除算することによって、そのビンについての平均のルミナンス分散を計算する。あるいは、cbin(k)が0でない場合、
varbin(k)=varbin(k)/cbin(k) (3)
とする。
k番目のビンについて、
if ビン内にピクセルがない
Mk=0;
else if varbin(k)<THU (4)
Mk=Mf;
else
Mk=Ma; //(注:これは、各ビンが少なくともMa個の符号語をもつことを確実にするため。
//代替的に、Ma+1個の符号語を割り当ててもよい。)
end
ここで、THUは所定の上限閾値を表わす。
k番目のビンについて、
if ビン内にピクセルがない
Mk=0;
else if TH0<varbin(k)<TH1 (5)
Mk=Mf;
else
Mk=Ma;
end
ここで、TH0およびTH1は、所定の下限および上限閾値を表わす。
k番目のビンについて、
if ビン内にピクセルがない
Mk=0;
else if varbin(k)>THL (6)
Mk=Mf;
else
Mk=Ma;
end
ここで、THLは、所定の下限閾値を表わす。
J(i)=D+λR (7)
として定義される。次いで、最適閾値は、J(i)が最小になる前記集合におけるTH(i)値として定義されうる。
k番目のビンについて、
if ビン内にピクセルがない
Mk=0;
else if varbin(k)<TH0
Mk=CW0;
else if TH0<varbin(k)<TH1 (8)
Mk=CW1;
…
else if THp-1<varbin(k)<THp
Mk=CWp;
…
else if varbin(k)>THq-1
Mk=CWq;
end
・ステップ415が、そのルミナンス特性(たとえば、平均および分散)を計算する。
・ステップ420が、各画像ブロックをN個のビンのうちの1つに割り当てる。
・ステップ425が、各ビンにおける平均のルミナンス分散を計算する
ステップ425において計算された値が与えられると、ステップ430において、各ビンは、たとえば、式(4)から(8)に示された符号語割り当てアルゴリズムのいずれかを使用して、一つまたは複数の閾値に従って、いくつかの符号語が割り当てられる。最後に、ステップ(435)において、最終的な符号語割り当てが、前方整形関数および/または逆整形関数を生成するために使用されうる。
tot_cw=2B;
hist_lens=tot_cw/N;
for (i=0;i<N;i++)
{
double temp=(double) M[i]/(double)hist_lens; //M[i]がMkに対応
for (j=0;j<hist_lens;j++)
{
CW_bins_LUT_all[i*hist_lens
+ j]=temp;
}
Y_LUT_all[0]=CW_bins_LUT_all[0];
for (i=1;i<tot_cw;i++)
{
Y_LUT_all[i]=Y_LUT_all[i-1]+CW_bins_LUT_all[i];
}
for (i=0;i<tot_cw;i++)
{
FLUT[i]=Clip3(0,tot_cw-1,(Int)(Y_LUT_all[i]+0.5));
}
low=FLUT[0];
high=FLUT[tot_cw-1];
first=0;
last=tot_cw-1;
for (i=1;i<tot_cw;i++)
if(FLUT[0]<FLUT[i])
{
first=i-1;
break;
}
for (i=tot_cw-2;i>=0;i--)
if(FLUT[tot_cw-1]>FLUT[i])
{
last=i+1;
break;
}
for (i=0;i<tot_cw;i++)
if(i<=low)
{
ILUT[i]=first;
}
else if(i>=high)
{
ILUT[i]=last;
}
else
{
for(j=0;j<tot_cw-1;j++)
if(FLUT[j]>=i)
{
ILUT[i]=j;
break;
}
}
}
表2:第1のパラメトリック・モデルを用いた整形の構文
reshaper_model_profile_typeは、整形器構築プロセスで使用されるプロファイル・タイプを指定する。所与のプロファイルは、ビンの数、デフォルトのビンの重要度または優先度の値、およびデフォルトの符号語割り当て(たとえば、Maおよび/またはMf値)など、使用されるデフォルト値に関する情報を提供しうる。
reshaper_model_scale_idxは、整形器構築プロセスで使用されるスケール因子(ScaleFactorと記される)のインデックス値を指定する。ScaleFactorの値は、全体的な符号化効率を改善するための整形関数の制御を改善することを可能にする。
reshaper_model_min_bin_idxは、整形器構築プロセスにおいて使用される最小ビン・インデックスを指定する。reshaper_model_min_bin_idxの値は、両端を含め0~31の範囲とする。
reshaper_model_max_bin_idxは、整形器構築プロセスにおいて使用される最大ビン・インデックスを指定する。reshaper_model_max_bin_idxの値は、両端を含め0~31の範囲とする。
reshaper_model_bin_profile_delta[i]は、整形器構築プロセスにおいてi番目のビンのプロファイルを調整するために使用されるデルタ値を指定する。reshaper_model_bin_profile_delta[i]の値は、両端を含め0~1の範囲とする。
表3:第2のパラメトリック・モデルを用いた再構成のシンタックス
resharper_model_delta_max_bin_idxは、最大の許容されるビン・インデックス(たとえば31)から、整形器構築プロセスにおいて使用される最大ビン・インデックスを引いたものに等しくなるように設定される。
reshaper_model_num_cw_minus1に1を加えたものは、信号伝達されるべき符号語の数を指定する。
reshaper_model_delta_abs_CW[i]は、i番目の絶対デルタ符号語値を指定する。
reshaper_model_delta_sign_CW[i]は、i番目のデルタ符号語(codeword)についての符号(sign)を指定する。そして:
reshaper_model_delta_CW[i]=(1-2*reshaper_model_delta_sign_CW[i])*
reshaper_model_delta_abs_CW [i];
reshaper_model_CW[i]=32+reshaper_model_delta_CW[i]である。
reshaper_model_bin_profile_delta[i]は、整形器構築プロセスにおいてi番目のビンのプロファイルを調整するために使用されるデルタ値を指定する。reshaper_model_bin_profile_delta[i]の値は、reshaper_model_num_cw_minus1が0に等しいときは、0ないし1の範囲にある。reshaper_model_bin_profile_delta[i]の値は、reshaper_model_num_cw_minus1が1に等しいときは、0ないし2の範囲にある。reshaper_model_bin_profile_delta[i]が0に等しくなるよう設定されるときはCW=32であり、reshaper_model_bin_profile_delta[i]が1に等しくなるよう設定されるときはCW=reshaper_model_CW[0]であり、reshaper_model_bin_profile_delta[i]が2に等しくなるよう設定されるときはCW=reshaper_model_CW[1]である。ある実施形態では、reshaper_model_num_cw_minus1は1より大きいことが許容され、それにより、reshaper_model_num_cw_minus1およびreshaper_model_bin_profile_delta[i]がより効率的な符号化のためにue(v)で信号伝達されることを許容する。
表4:第3のモデルを用いた整形のシンタックス
reshaper_model_bin_delta_abs_cw_prec_minus1に1を加えたものは、シンタックスreshaper_model_bin_delta_abs_CW[i]の表現のために使用されるビット数を指定する。
reshaper_model_bin_delta_abs_CW[i]は、i番目のビンについての絶対デルタ符号語値を指定する。
reshaper_model_bin_delta_sign_CW_flag[i]は、reshaper_model_bin_delta_abs_CW[i]の符号を次のように指定する:
・reshaper_model_bin_delta_sign_CW_flag[i]が0に等しい場合、対応する変数RspDeltaCW[i]は正の値をもつ。
・それ以外の場合(reshaper_model_bin_delta_sign_CW_flag[i]が0に等しくない)、対応する変数RspDeltaCW[i]は負の値をもつ。
reshaper_model_bin_delta_sign_CW_flag[i]が存在しないときは、それは0に等しいと推定される。
変数RspDeltaCW[i]=(1-2*reshaper_model_bin_delta_sign_CW [i])*reshaper_model_bin_delta_abs_CW
[i];
変数OrgCWは、(1<<BitDepthY)/(resharper_model_number_bins_minus_1+1)に設定される;
変数RspCW[i]は次のように導出される:
if reshaper_model_min_bin_idx<=i<=reshaper_model_max_bin_idx
then RspCW[i]=OrgCW+RspDeltaCW[i]
else, RspCW[i]=0
まず、次のように「ビン重要度(bin importance)」を割り当てる:
k番目のビンについて、
if Mk=0;
bin_importance=0;
else if Mk==Mf
bin_importance=2; (9)
else
bin_importance=1;
end
1)ルミナンス範囲をN個のビンに分割する(たとえばN=32)
2)シンタックスから各ビンについてのbin-importanceインデックスを導出する。たとえば、
k番目のビンについて、
if reshaper_model_min_bin_idx<=k<=reshaper_model_max_bin_idx
bin_importance[k]=default_bin_importance[k]+reshaper_model_bin_profile_delta[k];
else
bin_importance[k]=0;
3)ビン重要度に基づいて符号語を自動的に事前割り当てする:
k番目のビンについて、
if bin_importance[k]==0
Mk=0;
else if bin_importance[k]==2
Mk=Mf;
else
Mk=Ma;
end
4)各ビンについて割り当てられた符号語を累積することによって、各ビンについての符号語割り当てに基づいて前方整形LUTを構築する。合計は、全符号語予算(たとえば、10ビット・フルレンジの場合は1024)以下であるべきである。(たとえば、最初のCコードを参照。)
5)逆整形LUTを構築する(たとえば、最初のCコードを参照)。
たとえば、(265-2)では、再構成された値はRec=ILUT(FLUT(Pred)+Res)によって与えられる。ここで、FLUTは前方整形LUTを表わし、ILUTは逆整形LUTを表わす。
Y=((Y2-Y1)/(X2-X1))*(X-X1)+Y1
固定小数点実装では、上記の式は次のように書き換えられる:
Y=((m*X+2FP_PREC-1)>>FP_PREC)+c
ここで、mおよびcは線形補間のためのスカラーおよびオフセットを表わし、FP_PRECは固定小数点精度に関連する定数である。
lutSize=(1<<BitDepthY)
とする。変数:
binNum=reshaper_model_number_bins_minus1+1
および
binLen=lutSize/binNum
とする。
i番目のビンについて、その2つの両端のピボット(たとえば、X1およびX2)は、X1=i*binLenおよびX2=(i+1)*binLenとして導出されうる。そして:
binsLUT[0]=0;
for(i=0; i<reshaper_model_number_bins_minus1+1; i++){
binsLUT[(i+1)*binLen]=binsLUT[i*binLen]+RspCW[i];
Y1=binsLUT[i*binLen];
Y2=binsLUT[(i+1)*binLen];
scale=((Y2-Y1)*(1<<FP_PREC)+(1<<(log2(binLen)-1)))>>(log2(binLen));
for(j=1;j<binLen;j++){
binsLUT[i*binLen+j]=Y1+((scale*j+(1<<(FP_PREC-1)))>>FP_PREC);
}
}
前述したように、整形の間に、符号語割り当ては、一つまたは複数の閾値(たとえば、TH、THU、THLなど)を使用して調整されることがある。ある実施形態では、そのような閾値は、コンテンツ特性に基づいて適応的に生成されうる。図5は、ある実施形態による、そのような閾値を導出するための例示的なプロセスを示す。
1)ステップ505では、入力画像のルミナンス範囲がN個のビン(たとえば、N=32)に分割される。たとえば、NをPIC_ANALYZE_CW_BINSとも記されることにする。
2)ステップ510において、各ビンについてルミナンス特性を計算するために画像分析を実行する。たとえば、各ビン内のピクセルの百分率(BinHist[b]、b=1,2,…,Nと記される)を計算してもよい。ここで、
BinHist[b]=100*(ビンb内の総ピクセル数)/(ピクチャー内の総ピクセル数) (10)
先に論じたように、画像特性のもう一つの良好なメトリックは、BinVar[b]と表わされる、各ビンにおけるピクセルの平均分散(または標準偏差)である。BinVar[b]は、式(2)および(3)に至る節に記載される諸ステップのように、「ブロック・モード」で計算されてもよい。あるいはまた、ブロック・ベースの計算は、ピクセル・ベースの計算で洗練することができる。たとえば、i番目のピクセルを中心とするm×mの近傍窓(たとえば、m=5)内のi番目のピクセルを囲むピクセルのグループに関連付けられた分散を、vf(i)と表わす。たとえば、
for(int b=0; b<PIC_ANALYZE_CW_BINS; b++
//初期化(未ソート)
{
BinVarSortDsd[b]=BinVar[b];
BinIdxSortDsd[b]=b;
}
//ソート(付録1のコード例を参照)
bubbleSortDsd(BinVarSortDsd,BinIdxSortDsd,PIC_ANALYZE_CW_BINS);
ソートされた平均ビン分散因子の例示的なプロットを図6Aに示す。
たとえば、CDFが配列BinVarSortDsdCDF[b]に格納される場合、ある実施形態では:
BinVarSortDsdCDF[0]=BinHist[BinIdxSortDsd[0]];
for(int b=1; b<PIC_ANALYZE_CW_BINS; b++)
{
BinVarSortDsdCDF[b]=BinVarSortDsdCDF[b-1]+BinHist[BinIdxSortDsd[b]];
}
図6Aのデータに基づく計算されたCDFの例示的なプロット(605)が図6Bに示されている。CDF値対ソートされた平均ビン分散の対{x=BinVarSortDsd[b],y=BinVarSortDsdCDF[b]}は、「ピクチャー内にx以上の分散をもつy%のピクセルが存在する」または「ピクチャー内にx未満の分散をもつ(100-y)%のピクセルが存在する」と解釈できる。
5)最後に、ステップ525において、ソートされた平均ビン分散値の関数としてCDF、BinVarSortDsdCDF[BinVarSortDsd[b]]が与えられて、ビン分散および累積割合に基づいて閾値を定義することができる。
ループ・フィルタリング
特許文献6では、ループ・フィルタが、もとのピクセル・ドメインまたは整形ピクセル・ドメインのいずれかで動作できることが記載されている。ある実施形態では、ループ・フィルタリングは、(ピクチャー整形後に)もとのピクセル・ドメインで実行されることが提案される。たとえば、ハイブリッドのループ内整形アーキテクチャ(200_Eおよび200_D)では、イントラ・ピクチャーについては、ループ・フィルタ(270-1)の前に逆整形(265-1)を適用する必要がある。
RecSample=Res+PredSample (14)
再構成されたサンプル(227)を与えられて、ループ・フィルタリング(270)および逆ピクチャー整形(265)が適用されて、DPB(260)に格納されるRecSampleInDPBサンプルが導出される。ここで、
RecSampleInDPB=InvLUT(LPF(RecSample)))=
=InvLUT(LPF(Res+PredSample))) (15)
ここで、InvLUT()は、逆整形関数または逆整形ルックアップテーブルを示し、LPF()は、ループ・フィルタリング動作を示す。
distortion=dfunc(FwdLUT(SrcSample)-RecSample) (16)
ここで、FwdLUT()は前方整形関数(またはLUT)を表わし、SrcSampleはもとの画像サンプルを表わす。
RecSample=(Res+FwdLUT(PredSample)) (17)
再構成されたサンプル(267)が与えられて、ループ・フィルタリング(270)および逆ピクチャー整形(265)が適用されて、DPBに格納されるRecSampleInDPBサンプルが導出される。ここで、
RecSampleInDPB=InvLUT(LPF(RecSample)))=InvLUT(LPF(Res+FwdLUT(PredSample)))) (18)
Res=FwdLUT(SrcSample)-PredSample (19a)
ここで、予測のために使用されるすべての近傍サンプル(PredSample)はすでに整形ドメインにあると想定されている。インター予測(たとえば、動き補償を使用する)は、非整形ドメイン(すなわち、DPBからの参照ピクチャーを直接使用する)において実行される。すなわち、
PredSample=MC(RecSampleinDPB) (19b)
ここで、MC()は動き補償関数を表わす。動き推定および残差が生成されない高速モード決定のためには、歪みを次式を使って計算できる:
distortion=dfunc(SrcSample-PredSample)
しかしながら、残差が生成されるフル・モード決定のためには、モード決定は整形ドメインで実行される。すなわち、フル・モード決定については、
distortion=dfunc(FwdLUT(SrcSample)-RecSample) (20)
先に説明したように、提案されたループ内整形器は、CUレベルで整形を適応させることを許容し、たとえば、必要に応じて変数CU_reshaperをオンまたはオフに設定する。同じアーキテクチャの下では、インター符号化されるCUについては、CU_reshaper=offのとき、このインター符号化されたCUについてCU_reshaperフラグがオフに設定されていても、再構成されたピクセルは整形ドメインにある必要がある。
RecSample=FwdLUT(Res+PredSample) (21)
よって、イントラ予測は、常に整形ドメインの近隣ピクセルを有する。DPBピクセルは、次のように導出できる:
RecSampleInDPB=InvLUT(LPF(RecSample)))=
=InvLUT(LPF(FwdLUT(Res+PredSample))) (22)
1)すべてのイントラ符号化されたCUは、CU_reshaper=onで符号化される。この場合、すべてのピクセルがすでに整形ドメインにあるので、追加の処理は必要ない。
2)いくつかのイントラ符号化されたCUは、CU_reshaper=offを使用して符号化できる。この場合、CU_reshaper=offについては、イントラ予測を適用するとき、イントラ予測がもとのドメインで実行され、最終的な再構成されたピクセルは整形ドメインにある必要があるように、近隣ピクセルに対して逆整形を適用する必要がある。すなわち、
RecSample=FwdLUT(Res+InvLUT(PredSample)) (23)
そして、
RecSampleInDPB=InvLUT(LPF(RecSample)))=
=InvLUT(LPF(FwdLUT(Res+InvLUT(PredSample))))) (24)
RecSample=(Res+FwdLUT(PredSample))
ここで、FwdLUT(PredSample)は、インター予測器(280)およびそれに続く前方整形(282)の出力を示す。そうではなく、イントラCUについては(たとえば、Muxが284からの出力を有効にする)、再構成モジュール(285)の出力は
RecSample=(Res+IPredSample)
となる。ここで、IPredSampleはイントラ予測ブロック(284)の出力を示す。逆整形ブロック(265-3)は
YCU=InvLUT[RecSample]
を実行する。
PredSampleCombined=PredSampeIntra+FwdLUT(PredSampleInter)
RecSample=Res+PredSampleCombined
すなわち、もとのドメイン内のインター符号化されたサンプルは、加算前に整形される。そうではなく、組み合わされたインター/イントラ予測モードがもとのドメインで行なわれるときは:
PredSampleCombined=InvLUT(PredSampeIntra)+PredSampleInter
RecSample=Res+FwdLUT(PredSampleCombined)
すなわち、イントラ予測されたサンプルはもとのドメインになるように逆整形される。
distortion=dfunc(SrcSample-InvLUT(RecSample))
特許文献6と同様に、整形曲線によって生じるルーマとクロマの関係をバランスさせるために、同じ提案されたchromaDQP導出プロセスを適用してもよい。ある実施形態では、各ビンについての符号語割り当てに基づいて、区分的なクロマDQP値を導出することができる。たとえば:
k番目のビンについて
scalek=(Mk/Ma); (25)
chromaDQP=6*log2(scalek);
end
特許文献6に記載されているように、lumaDQPが有効にされているときは、ピクセル・ベースの重み付けされた歪みを使用することが推奨される。整形が使用されるとき、一例では、必要な重みは、整形関数(f(x))に基づいて調整される。たとえば:
Wrsp=f'(x)2 (26)
ここで、f'(x)は整形関数f(x)の勾配を表わす。
k番目のビンについて、
Wrsp(k)=(Mk/Ma)2 (27)
sf=2((chromaDQP-INT(chromaDQP))/3)
alpha=(minCW-maxCW)/(maxVar-minVar);
beta=(maxCW*maxVar-minCW*minVar)/(maxVar-minVar);
bin_cw=round(alpha*bin_var+beta);,
ここで、minVarはすべてのビンにわたる最小の分散を表わし、maxVarはすべてのビンにわたる最大の分散を表わし、minCW、maxCWは整形モデルによって決定されるビン当たりの符号語の最小数と最大数を表わす。
特許文献6では、ルーマとクロマの間の相互作用を補償するために、追加的なクロマQPオフセット(chromaDQPまたはcQPOと記される)とルーマに基づくクロマ残差スケーラー(cScale)が定義された。たとえば:
chromaQP=QP_luma+chromaQPOffset+cQPO (28)
ここで、chromaQPOffsetはクロマQPオフセットを表わし、QP_lumaは符号化単位についてのルーマQPを表わす。特許文献6に示されているように、ある実施形態では、
chromaQP_actual=f_QPi2QPc[chromaQP]=
=f_QPi2QPc[QP_luma+chromaQPOffset+cQPO] (31)
クロマ残差をスケーリングするためには、cQPOを適用する前と、cQPOを適用した後の両方の実際のクロマ符号化QPの間の現実の差に基づいて、スケールを計算する必要がある:
QPcBase=f_QPi2QPc[QP_luma+chromaQPOffset];
QPcFinal=f_QPi2QPc[QP_luma+chromaQPOffset+cQPO]; (32)
cQPO_refine=QPcFinal-QpcBase;
cScale=pow(2,-cQPO_refine/6)
QPcBase=f_QPi2QPc[QP_luma];
QPcFinal=f_QPi2QPc[QP_luma+chromaQPOffset+cQPO]; (33)
cTotalQPO_refine=QPcFinal-QpcBase;
cScale=pow(2,-cTotalQPO_refine/6)
CSCALE_FP_PREC=16が精度パラメータを表わすとする。
・順スケーリング:クロマ残差が生成された後、変換および量子化の前に:
C_Res=C_orig-C_pred
C_Res_scaled=C_Res*cScale+(1<<(CSCALE_FP_PREC-1)))>>CSCALE_FP_PREC
・逆スケーリング:クロマ逆量子化および逆変換後、ただし再構成の前に:
C_Res_inv=(C_Res_scaled<<CSCALE_FP_PREC)/cScale
C_Reco=C_Pred+C_Res_inv;
CxRec=CxPred+CxRes (36)
となる。このアプローチは、デコーダが、シンタックス構文解析の直後にクロマ・デコードのための逆量子化および変換演算を開始することを許容する。CUのために使用されるcScale値は、CbおよびCr成分によって共有されてもよく、式(29)および(30)から、次のように導出されてもよい:
Modifier=pow(2,-cQPO_refine/3);
New_lambda=Old_lambda/Modifier (38)
cScaleInv=(1/cScale)
とすると、例として、エンコーダで
cResScale=CxRes*cScale=CxRes/(1/cScale)=CxRes/cScaleInv
とし、デコーダで
CxRes=cResScale/cScale=CxRes*(1/cScale)=CxRes*cScaleInv
とする。
c'=sign(c)*((abs(c)*s+2CSCALE_FP_PREC-1)>>CSCALE_FP_PREC)
ここで、cはクロマ残差、sはcScaleInv[binIdx]からのクロマ残差スケーリング因子、binIdxは対応する平均ルーマ値によって決定され、CSCALE_FP_PRECは精度に関する定数値である。
・別々のルーマ/クロマ・ツリーが使用されるときはクロマ残差スケーリングを無効にする。
・2×2のクロマについてはクロマ残差スケーリングを無効にする。
・イントラおよびインター符号化された単位について、再構成信号ではなく予測信号を使用する。
・前方および逆方向の整形ブロック(282および265-3)は使用されない。
・新しいクロマ残差スケーリング・ブロック(288)があり、実質的にルーマについての逆整形ブロック(265-3)を置き換える。
・再構成ブロック(285-C)は、式(36): CxRec=CxPred+CxResに記載されているように、もとのドメインの色残差を扱うように修正される。
CxRes=CxResScaled*CScaleInv
は、CxRec=CxPred+CxResを計算するために再構成ユニット(285-C)によって使用されるクロマ残差スケーリング・ブロック(288)によって生成された、再スケーリングされたクロマ残差を表わすとする。ここで、CxPredはイントラ(284)またはインター(280)予測ブロックによって生成される。
・イントラ・モードであれば、イントラ予測されたルーマ値の平均を計算する;
・インター・モードであれば、前方整形されたインター予測されたルーマ値の平均を計算する。すなわち、平均ルーマ値は、整形ドメインで計算される。
・組み合わされたマージおよびイントラ予測であれば、組み合わされた予測ルーマ値の平均を計算する。たとえば、組み合わされた予測ルーマ値は、付録2の8.4.6.6節に従って計算されてもよい。
・ある実施形態では、avgY'TUに基づいてCScaleInvを計算するためにLUTを適用することができる。あるいはまた、整形関数の区分線形(PWL)表現が与えられて、値avgY'TUが逆マッピングPWLに属するインデックスidxを見つけることができる。
・次いで、CScaleInv=cScaleInv[idx]
ITUおよびISOによって現在開発中の多用途ビデオ符号化(Versatile Video Coding)コーデック(非特許文献8)に適用できる例示的実装は、付録2(たとえば、8.5.5.1.2節参照)に見出すことができる。
1.クロマ・スケーリング因子は、ルーマ・サンプル値の平均または中央値に依存して、フレーム全体について同じに保たれてもよい。これにより、クロマ残差スケーリングについてのルーマに対するTUレベルの依存性が除去される。
2.クロマ・スケーリング因子は、近隣のCTUからの再構成されたルーマ値を用いて導出できる。
3.エンコーダは、ソース・ルーマ・ピクセルに基づいてクロマ・スケーリング因子を導出し、それをCU/CTUレベルでビットストリームにおいて送信することができる(たとえば、整形関数の区分表現へのインデックスとして)。次いで、デコーダは、ルーマ・データに依存することなく、整形関数からクロマ・スケーリング因子を抽出しうる。
・CTUについてのスケール因子は、イントラ・スライスについてのみ導出され、送信されることができるが、インター・スライスについても使用されることができる。追加的な信号伝達コストは、イントラ・スライスについてのみ発生し、よって、ランダムアクセスにおける符号化効率には影響を及ぼさない。
4.クロマは、ルーマとしてフレーム・レベルで整形されることができ、ルーマ整形曲線は、ルーマとクロマの間の相関分析に基づいて、ルーマ整形曲線から導出される。これにより、クロマ残差スケーリングが完全になくされる。
AVCおよびHEVCでは、パラメータdelta_qpが符号化ブロックについてのQP値を修正することが許容されている。ある実施形態では、整形器内のルーマ曲線を使用して、delta_qp値を導出することができる。各ビンについての符号語割り当てに基づいて、区分的なルーマDQP値を導出することができる。たとえば:
k番目のビンについて、
scalek=(Mk/Ma); (39)
lumaDQPk=INT(6*log2(scalek))
ここで、INT()にはCEIL()、ROUND()またはFLOOR()でありうる。エンコーダは、ルーマ(luma)の関数、たとえばaverage(luma)、min(luma)、max(luma)などを使用して、そのブロックについてのルーマ値を見出し、次いで、対応するlumaDQP値をそのブロックのために使用することができる。式(27)から、レート‐歪みの利益を得るためには、モード決定において重み付けされた歪みを使用して、
Wrsp(k)=scalek 2
と設定することができる。
典型的な10ビット・ビデオ符号化では、整形マッピングのために少なくとも32個のビンを使用することが好ましいが、デコーダ実装を単純化するために、ある実施形態では、より少数のビン、たとえば16個またはさらには8個のビンを使用してもよい。シーケンスを解析し、分布符号語を導出するためにエンコーダがすでに32個のビンを使用している可能性があることを考えると、もとの32ビンの符号語分布を再利用し、それぞれの32個のビン内で、対応する16個のビン2つを加算することによって、16ビンの符号語を導出することができる。すなわち、
For i=0 to 15
CWIn16Bin[i]=CWIn32Bin[2i]+CWIn32Bin[2i+1]
In32Bin[32]={0 0 33 38 38 38 38 38 38 38 38 38 38 38 38 38 38 33 33 33 33 33 33 33 33 33 33 33 33 33 0 0}
を与えられると、対応する16ビンCW割り当ては、
CWIn16Bin[16]={ 0 71 76 76 76 76 76 76 71 66 66 66 66 66 66 0}
となる。このアプローチは、たとえば8個など、一層少数のビンを扱うように拡張できる。
For i=0 to 7
CWIn8Bin[i]=CWIn16Bin[2i]+CWIn16Bin[2i+1]
参考文献
本明細書に挙げられている参考文献のそれぞれは、ここに参照によりその全体において組み込まれる。
"Exploratory Test Model for HDR extension of HEVC", K. Minoo et al., MPEG output document, JCTVC-W0092 (m37732), 2016, San Diego, USA
本発明の実施形態は、コンピュータ・システム、電子回路およびコンポーネントにおいて構成されるシステム、マイクロコントローラなどの集積回路(IC)、フィールド・プログラマブル・ゲート・アレイ(FPGA)、または他の構成可能またはプログラマブルなロジック・デバイス(PLC)、離散時間またはデジタル信号プロセッサ(DSP)、特定用途向けIC(ASIC)、および/またはかかるシステム、デバイスまたはコンポーネントの一つまたは複数を含む装置を用いて実装されうる。コンピュータおよび/またはICは、ここに記載されるような画像の信号整形および符号化に関する命令を実行、制御、または執行してもよい。コンピュータおよび/またはICは、本明細書に記載される信号整形および符号化プロセスに関連する多様なパラメータまたは値の任意のものを計算しうる。画像およびビデオの実施形態は、ハードウェア、ソフトウェア、ファームウェア、およびそれらのさまざまな組み合わせで実装されうる。
このように、画像の効率的な信号整形および符号化に関連する例示的な実施形態が記載される。前述の明細書において、本発明の実施形態は、実装毎に変化しうる多数の個別的詳細を参照して記述されてきた。よって、何が発明であり、出願人によって発明であることが意図されているかの唯一かつ排他的な指標は、本願に対して発行される請求項のセットの、その後の訂正があればそれも含めてかかる請求項が許可される具体的な形である。かかる請求項に含まれる用語について本稿に明示的に記載される定義は、それらの請求項において使用されるかかる用語の意味を支配する。よって、請求項に明示的に記載されていない限定、要素、特性、特徴、利点または属性は、かかる請求項の範囲をいかなる仕方でも限定すべきではない。よって、本明細書および図面は、制約する意味ではなく例示的な意味に考えられるべきである。
本発明は、本発明のいくつかの部分の構造、特徴、および機能を記述する以下の箇条書き例示的実施形態(Enumerated Example Embodiment、EEE)を含むが、これらに限定されない、本明細書に記載された形の任意のもので具現されうる。
〔EEE1〕
プロセッサを用いてビデオ・シーケンスを適応的に整形する方法であって、当該方法は:
プロセッサにより、第1の符号語表現での入力画像にアクセスする段階と;
前記入力画像のピクセルを第2の符号語表現にマッピングする前方整形関数を生成する段階とを含み、前記第2の符号語表現は、前記第1の符号語表現よりも効率的な圧縮を許容し、前記前方整形関数を生成することは:
前記入力画像を複数のピクセル領域に分割し;
各ピクセル領域の第1のルミナンス特性に従って各ピクセル領域を複数の符号語ビンのうちの一つに割り当て;
各符号語ビンに割り当てられたピクセル領域のそれぞれの第2のルミナンス特性に従って前記複数の符号語ビンのそれぞれについてのビン・メトリックを計算し;
各符号語ビンのビン・メトリックおよびレート‐歪み最適化基準に従って、各符号語ビンに第2の符号語表現での符号語の数を割り当て;
前記複数の符号語ビンのそれぞれに対する第2の符号語表現での符号語の配分に応答して、前記前方整形関数を生成することを含む、
方法。
〔EEE2〕
ピクセル領域の第1のルミナンス特性が、そのピクセル領域内の平均ルミナンス・ピクセル値を含む、EEE1記載の方法。
〔EEE3〕
ピクセル領域の第2のルミナンス特性が、そのピクセル領域のルミナンス・ピクセル値の分散を含む、EEE1記載の方法。
〔EEE4〕
符号語ビンについてのビン・メトリックを計算することは、その符号語ビンに割り当てられたすべてのピクセル領域についてのルミナンス・ピクセル値の分散の平均を計算することを含む、EEE3記載の方法。
〔EEE5〕
符号語ビンに、そのビン・メトリックに従って前記第2の符号語表現での符号語の数を割り当てることは:
その符号語ビンにピクセル領域が割り当てられていない場合は、その符号語ビンに符号語を割り当てず;
その符号語ビンのビン・メトリックが上限閾値より低い場合、第1の数の符号語を割り当て;
そうでない場合、その符号語ビンに第2の数の符号語を割り当てることを含む、
EEE1記載の方法。
〔EEE6〕
Bビットの深さをもつ第1の符号語表現と、Boビットの深さをもつ第2の符号語表現と、N個の符号語ビンについて、符号語の前記第1の数は、Mf=CEIL((2Bo/(CW2-CW1))*Ma)を含み、符号語の前記第2の数は、Ma=2B/Nを含み、ここで、CW1<CW2は、[0 2B-1]における2つの符号語を表わす、EEE5記載の方法。
〔EEE7〕
CW1=16×2(B-8)およびCW2=235×2(B-8)であるEEE6記載の方法。
〔EEE8〕
前記上限閾値を決定することが:
潜在的閾値の集合を定義し;
閾値の前記集合内の各閾値について:
その閾値に基づく前方整形関数を生成し;
前記整形関数およびビットレートRに従って入力試験フレームの集合をエンコードおよびデコードして、デコードされた試験フレームの出力集合を生成し;
前記入力試験フレームおよびデコードされた試験フレームに基づいて全体的なレート‐歪み最適化(RDO)メトリックを計算し;
潜在的な閾値の前記集合における、前記RDOメトリックが最小である閾値を、前記上限閾値として選択することを含む、
EEE5記載の方法。
〔EEE9〕
前記RDOメトリックを計算することは:
J=D+λRを計算することを含み、ここで、Dは前記入力試験フレームのピクセル値とデコードされた試験フレームにおける対応するピクセル値との間の歪みの指標を表わし、λはラグランジュ乗数を表わす、
EEE8記載の方法。
〔EEE10〕
Dは、入力試験フレームとデコードされた試験フレームの対応するピクセル値の間の差分平方和の指標である、EEE9記載の方法。
〔EEE11〕
符号語ビンに、そのビン・メトリックに従って前記第2の符号語表現での符号語の数を割り当てることは、符号語割り当てルックアップテーブルに基づき、前記符号語割り当てルックアップテーブルは、ビン・メトリック値の範囲をセグメントに分割する2つ以上の閾値を定義し、各セグメント内のビン・メトリックを有するビンに割り当てられる符号語の数を与える、EEE1記載の方法。
〔EEE12〕
ビンへのデフォルトの符号語割り当てが与えられて、大きなビン・メトリックをもつビンは、デフォルトの符号語割り当てよりも少数の符号語を割り当てられ、小さなビン・メトリックをもつビンは、デフォルトの符号語割り当てよりも多くの符号語が割り当てられる、EEE11記載の方法。
〔EEE13〕
Bビットを用いた第1の符号語表現およびN個のビンについて、ビン当たりのデフォルトの符号語割り当てはMa=2B/Nによって与えられる、EEE12記載の方法。
〔EEE14〕
前記前方整形関数に応答して整形情報を生成する段階をさらに含み、前記整形情報は:
整形再構成プロセスで使用される最小符号語ビン・インデックス値を示すフラグ;
前記整形構成プロセスで使用される最大符号語ビン・インデックス値を示すフラグ;
整形モデル・プロファイル・タイプを示すフラグであって、各モデル・プロファイル・タイプがデフォルトのビン関連パラメータに関連付けられている、フラグ、または
デフォルトのビン関連パラメータを調整するために使用される一つまたは複数のデルタ値
のうちの一つまたは複数を含む、
EEE1記載の方法。
〔EEE15〕
各符号語ビンにビン重要度値を割り当てる段階をさらに含み、前記ビン重要度値は:
その符号語ビンに符号語が割り当てられていない場合は0;
その符号語に符号語の第1の値が割り当てられている場合は2;
それ以外の場合には1である、
EEE5記載の方法。
〔EEE16〕
前記上限閾値を決定することが:
入力画像におけるピクセル値のルミナンス範囲をビンに分割する段階と;
各ビンについて、ビン・ヒストグラム値および平均ビン分散値を決定する段階であって、ビンについて、前記ビン・ヒストグラム値は、画像中の総数のピクセルにおけるそのビン内のピクセルの数を含み、平均ビン分散値は、そのビン内のピクセルの平均ピクセル分散のメトリックを与える、段階と;
平均ビン分散値をソートして、平均ビン分散値のソートされたリストおよび平均ビン分散-値インデックスのソートされたリストを生成する段階と;
前記ビン・ヒストグラム値に基づくソートされた平均ビン分散値と、平均ビン分散-値インデックスの前記ソートされたリストとに基づいて、ソートされた平均ビン分散値の関数として累積密度関数を計算する段階と;
前記累積密度関数の値によって満たされる基準に基づいて上限閾値を決定する段階とを含む、
EEE5記載の方法。
〔EEE17〕
前記累積密度関数を計算することが:
BinVarSortDsdCDF[0]=BinHist[BinIdxSortDsd[0]];
for(int b=1; b<PIC_ANALYZE_CW_BINS; b++)
{ BinVarSortDsdCDF[b]=BinVarSortDsdCDF[b-1]+BinHist[BinIdxSortDsd[b]];}
を計算することを含み、ここで、bはビン番号、PIC_ANALYZE_CW_BINSはビンの総数、BinVarSortDsdCDF[b]はビンbについてのCDF関数の出力、BinHist[i]はビンiについてのビン・ヒストグラム値、BinIdxSortDsd[]は平均ビン分散値インデックスのソートされたリストを表わす、
EEE16記載の方法。
〔EEE18〕
入力画像内のピクセルのk%について平均ビン分散が前記上限閾値以上であるという基準の下で、前記上限閾値が、CDF出力がk%である平均ビン分散値として決定される、EEE16記載の方法。
〔EEE19〕
k=50である、EEE18記載の方法。
〔EEE20〕
デコーダにおいて、整形関数を再構成する方法であって、当該方法は:
整形モデルを特徴付ける符号化されたビットストリーム・シンタックス要素を受領する段階であって、前記シンタックス要素は:
整形構成プロセスにおいて使用される最小符号語ビン・インデックス値を示すフラグ、
整形構成プロセスにおいて使用される最大符号語ビン・インデックス値を示すフラグ、
整形モデル・プロファイル・タイプを示すフラグであって、前記モデル・プロファイル・タイプはビン重要度値を含むデフォルトのビン関連パラメータに関連付けられている、フラグ、または
前記整形モデル・プロファイルにおいて定義されているデフォルトのビン重要度値を調整するために使用される一つまたは複数のデルタ・ビン重要度値を示すフラグ
のうちの一つまたは複数を含む、段階と;
前記整形モデル・プロファイルに基づいて、各ビンについてのデフォルトのビン重要度値と、ビンの重要度値に応じて各ビンに割り当てられる符号語のデフォルト数の割り当てリストとを決定する段階と;
各符号語ビンについて:
そのデフォルト・ビン重要度値をそのデルタ・ビン重要度値に加えることによってそのビン重要度値を決定し;
そのビンのビン重要度値および前記割り当てリストに基づいて、その符号語ビンに割り当てられる符号語の数を決定し;
各符号語ビンに割り当てられた符号語の数に基づいて、順方向の整形関数を生成する段階とを含む、
方法。
〔EEE21〕
割り当てリストを使用して、k番目の符号語ビンに割り当てられた符号語の数Mkを決定することが、さらに:
k番目のビンについて:
bin_importance[k]==0であれば、
Mk=0とし;
そうでない場合、bin_importance[k]==2であれば
Mk=Mfとし、
そうでない場合、
Mk=Maとすることを含み、
ここで、MaおよびMfは前記割り当てリストの要素であり、bin_importance[k]は、k番目のビンのビン重要度値を表わす、
EEE20記載の方法。
〔EEE522〕
一つまたは複数のプロセッサを有するデコーダにおいて、符号化されたデータを再構成する方法であって、当該方法は:
第1の符号語表現における一つまたは複数の符号化された整形画像と該符号化された整形画像についての整形情報に関係するメタデータ(207)とを含む符号化ビットストリーム(122)を受領する段階と;
前記整形情報に関係するメタデータに基づいて逆整形関数を生成する段階(250)であって、前記逆整形関数は、前記第1の符号語表現から第2の符号語表現へと前記整形画像のピクセルをマッピングする、段階と;
(250)前記整形情報に関係するメタデータに基づいて前方整形関数を生成する段階(250)であって、前記前方整形関数は、前記第2の符号語表現から前記第1の符号語表現へと画像のピクセルをマッピングする、段階と;
前記符号化ビットストリームから、一つまたは複数の符号化された単位を含む符号化された整形画像を抽出する段階であって、前記符号化された整形画像中の一つまたは複数の符号化された単位について:
前記符号化された整形画像内のイントラ符号化された符号化単位(CU)について:
そのCUにおける整形された残差および第1の整形された予測サンプルに基づいて、そのCUの第1の整形された再構成されたサンプル(227)を生成し;
前記第1の整形された再構成されたサンプルおよびループ・フィルタ・パラメータに基づいて、整形されたループ・フィルタ出力を生成し(270);
前記整形されたループ・フィルタ出力に前記逆整形関数を適用して、前記第2の符号語表現でのその符号化単位のデコードされたサンプルを生成し(265);
前記第2の符号語表現でのその符号化単位のデコードされたサンプルを、参照バッファに記憶する段階と;
前記符号化された整形された画像内のインター符号化された符号化単位について:
前記第2の符号語表現での前記参照バッファに記憶されている予測サンプルに前記前方整形関数を適用して、第2の整形された予測サンプルを生成し;
その符号化されたCUにおける整形された残差および前記第2の整形された予測サンプルに基づいて、その符号化単位の第2の整形された再構成されたサンプルを生成し;
前記第2の整形された再構成されたサンプルおよびループ・フィルタ・パラメータに基づいて、整形されたループ・フィルタ出力を生成し;
前記整形されたループ・フィルタ出力に前記逆整形関数を適用して、第2の符号語表現でのその符号化単位のサンプルを生成し;
前記第2の符号語表現でのその符号化単位のサンプルを参照バッファに記憶する段階と;
前記参照バッファにおける記憶されているサンプルに基づいて、デコードされた画像を生成する段階とを含む、
方法。
〔EEE23〕
プロセッサを備え、EEE1ないし22のいずれかに記載の方法を実行するように構成された装置。
〔EEE24〕
EEE1ないし22のいずれかに従って一つまたは複数のプロセッサで方法を実行するためのコンピュータ実行可能命令をその上に記憶している非一時的なコンピュータ読取可能記憶媒体。
バブルソートの例示的実装
void bubbleSortDsd(double* array, int*idx, int n)
{
int i,j;
bool swapped;
for(i=0; i < n-1; i++)
{
swapped=false;
for(j=0; j <n-i-1; j++)
{
if(array[j]<array[j+1])
{
swap(&array[j],&array[j+1]);
swap(&idx[j],&idx[j+1]);
swapped=true;
}
}
if(swapped==false)
break;
}
}
例として、この付録は、現在ISOおよびITUによる共同開発中の汎用ビデオコーデック(Versatile Video Codec、VVC)(非特許文献8)における、整形をサポートする実施形態による例示的なシンタックス構造および関連するシンタックス要素を提供する。既存のドラフト・バージョンにおける新しいシンタックス要素は、ハイライトされるか、明示的に注記される。(8-xxx)のような式番号は、最終仕様において必要に応じて更新されるプレースホルダーを示す。
sps_reshaper_enabled_flagが1に等しいことは、符号化されたビデオ・シーケンス(CVS)においてその整形器(reshaper)が使用されることを指定する。sps_reshaper_enabled_flagが0に等しいことは、CVSにおいてその整形器が使用されないことを指定する。
tile_group_reshaper_model_present_flagが1に等しいことは、tile_group_reshaper_model()タイル・グループ・ヘッダに存在することを指定することを示す。tile_group_reshaper_model_present_flagが0に等しいことは、tile_group_reshaper_model()がタイル・グループ・ヘッダに存在しないことを指定する。tile_group_reshaper_model_present_flagが存在しない場合は、0に等しいと推定される。
tile_group_reshaper_enabled_flagが1に等しいことは、現在のタイル・グループにおいてその整形器が有効にされていることを指定する。tile_group_reshaper_enabled_flagが0に等しいことは、現在のタイル・グループについてその整形器が有効にされていないことを指定する。tile_group_resharper_enable_flagが存在しない場合は、0に等しいと推定される。
tile_group_reshaper_chroma_residual_scale_flagが1に等しいことは、現在のタイル・グループについてクロマ残差スケーリングが有効にされていることを指定する。tile_group_reshaper_chroma_residual_scale_flagが0に等しいことは、現在のタイル・グループについてクロマ残差スケーリングが有効にされないことを指定する。tile_group_reshaper_chroma_residual_scale_flagが存在しない場合は、0に等しいと推定される。
reshaper_model_min_bin_idxは、整形器構成プロセスにおいて使用される最小ビン(またはピース)インデックスを指定する。reshaper_model_min_bin_idxの値は、両端を含め0~MaxBinIdxの範囲とする。MaxBinIdxの値は15に等しい。
reshaper_model_delta_max_bin_idxは、最大許容ビン(またはピース)インデックスMaxBinIdxから、整形器構成プロセスで使用される最大ビン・インデックスを引いた値を指定する。reshaper_model_max_bin_idxの値はMaxBinIdx-reshaper_model_delta_max_bin_idxに等しく設定される。
reshaper_model_bin_delta_abs_cw_prec_minus1に1を加えたものは、シンタックスreshaper_model_bin_delta_abs_CW[i]の表現のために使用されるビット数を指定する。
reshaper_model_bin_delta_abs_CW[i]は、i番目のビンのための絶対デルタ符号語値を指定する。
reshaper_model_bin_delta_sign_CW_flag[i]は、reshaper_model_bin_delta_abs_CW[ i ]の符号を次のように指定する。
・reshaper_model_bin_delta_sign_CW_flag[i]が0に等しい場合、対応する変数RspDeltaCW[i]は正の値である。
・それ以外の場合(reshaper_model_bin_delta_sign_CW_flag[i]が0に等しくない)、対応する変数RspDeltaCW[i]は負の値である。
reshaper_model_bin_delta_sign_CW_flag[i]が存在しない場合は、0に等しいと推定される。
変数RspDeltaCW[i]=(1-2*reshaper_model_bin_delta_sign_CW[i])*reshaper_model_bin_delta_abs_CW[i];
変数RspCW[i]は、以下のステップで導出される:
変数OrgCWが、(1<<BitDepthY)/(MaxBinIdx+1)に等しく設定される。
・reshaper_model_min_bin_idx<=i<=reshaper_model_max_bin_idxの場合は
RspCW[i]=OrgCW+RspDeltaCW[i]
・それ以外の場合は、RspCW[i]=0
RspCW[i]の値は、BitDepthYisの値が10に等しい場合、32から2*OrgCW-1の範囲である。
両端を含め0からMaxBinIdx+1までの範囲のiについて変数InputPivot[i]は、次のように導出される。
InputPivot[i]=i*OrgCW
両端を含め0からMaxBinIdx+1までの範囲のiについて変数ReshapePivot[i]と、両端を含め0からMaxBinIdxまでの範囲のiについての変数ScaleCoef[i]およびInvScaleCoeff[i]は、次のように導出される:
shiftY=14
ReshapePivot[0]=0;
for(i=0; i<=MaxBinIdx; i++){
ReshapePivot[i+1]=ReshapePivot[i]+RspCW[i]
ScaleCoef[i]=(RspCW[i]*(1<<shiftY)+(1<<(Log2(OrgCW)-1)))>>(Log2(OrgCW))
if(RspCW[i]==0)
InvScaleCoeff[i]=0
else
InvScaleCoeff[i]=OrgCW*(1<<shiftY)/RspCW[i]
}
両端を含め0からMaxBinIdxまでの範囲のiについて変数ChromaScaleCoef[i]は、次のように導出される:
ChromaResidualScaleLut[64]={16384,16384,16384,16384,16384,16384,16384,8192,8192,8192,8192,5461,5461,5461,5461,4096,4096,4096,4096,3277,3277,3277,3277,2731,2731,2731,2731,2341,2341,2341,2048,2048,2048,1820,1820,1820,1638,1638,1638,1638,1489,1489,1489,1489,1365,1365,1365,1365,1260,1260,1260,1260,1170,1170,1170,1170,1092,1092,1092,1092,1024,1024,1024,1024};
shiftC=11
・(RspCW[i]==0)である場合は
ChromaScaleCoef[i]=(1<<shiftC)
・それ以外の場合は(RspCW[i]!=0)
ChromaScaleCoef[i]=ChromaResidualScaleLut[Clip3(1,64,RspCW[i]>>1)-1]
注:代替的な実装では、ルーマとクロマのスケーリングを統一し、ChromaResidualScaleLut[]を不要にしてもよい。その場合、クロマ・スケーリングは以下のように実装されうる:
shiftC=11
・(RspCW[i]==0)である場合は
ChromaScaleCoef[i]=(1<<shiftC)
・それ以外の場合(RspCW[i]!=0)は、下記が適用される:
BinCW=BitDepthY>10?(RspCW[i]>>(BitDepthY-10)):BitDepthY<10?(RspCW[i]<<(10 BitDepthY)):RspCW[i];
ChromaScaleCoef[i]=OrgCW*(1<<shiftC)/BinCW[i]
8.4.6.6 組み合わされたマージおよびイントラ予測のための重み付けされたサンプル予測プロセス
このプロセスへの入力は以下の通り:
・現在の符号化ブロックの幅cbWidth
・現在の符号化ブロック高さcbHeight
・2つの(cbWidth)×(cbHeight)の配列、preSamplesInterおよびpreSamplesIntra
・イントラ予測モードpredModeIntra
・色成分インデックスを指定する変数cIdx
このプロセスの出力は、予測サンプル値の(cbWidth)×(cbHeight)の配列predSamplesCombである。
変数bitDepthは次のように導出される。
・cIdxが0に等しい場合、bitDepthはBitDepthYに等しく設定される。
・それ以外の場合、bitDepthはBitDepthCに等しく設定される。
x=0..cbWidth-1およびy=0..cbHeight-1についての予測サンプルpredSamplesComb[x][y]は、以下のように導出される:
・重みwは次のように導出される:
・predModeIntraがINTRA_ANGULAR50の場合、wは、テーブル8-10において、nPosがyに等しく、nSizeがcbHeightに等しいとして、指定される。
・それ以外の場合、predModeIntraがINTRA_ANGULAR18の場合、wは、テーブル8-10において、nPosがxに等しく、nSizeがcbWidthに等しいとして、指定される。
・それ以外の場合、wは4に設定される。
predSamplesComb[x][y]=(w*predSamplesIntra[x][y]+
(8-w)*predSamplesInter[x][y])>>3) (8-740)
テーブル8-10 位置nPとサイズnSの関数としてのwの指定
8.5.5 ピクチャー構成プロセス
このプロセスへの入力は次の通り:
・現在のブロックの左上サンプルを、現在のピクチャー成分の左上サンプルに対して指定する位置(xCurr,yCurr)
・現在のブロックの幅と高さをそれぞれ指定する変数nCurrSwとnCurrSh
・現在のブロックの色成分を指定する変数cIdx
・現在のブロックの予測されたサンプルを指定する(nCurrSw)×(nCurrSh)配列predSamples
・現在のブロックの残差サンプルを指定する(nCurrSw)×(nCurrSh)配列resSamples
色成分cIdxの値に依存して、以下の割り当てが行なわれる:
・cIdxが0に等しい場合、recSamplesは再構成されたピクチャー・サンプル配列SLに対応し、関数clipCidx1はClip1Yに対応する。
・それ以外の場合、cIdxが1に等しい場合は、recSamplesは再構成されたクロマ・サンプル配列SCbに対応し、関数clipCidx1はClip1Cに対応する。
・それ以外の場合(cIdxは2に等しい)、recSamplesは再構成されたクロマ・サンプル配列SCrに対応し、関数clipCidx1はClip1Cに対応する。
i=0..nCurrSw-1、j=0..nCurrSh-1について、
recSamples[xCurr+i][yCurr+j]=clipCidx1(predSamples[i][j]+resSamples[i][j])
[外1]
この節は、マッピング・プロセスを用いたピクチャー再構成を規定する。ルーマ・サンプル値についてのマッピング・プロセスを用いたピクチャー再構成は、8.5.5.1.1で規定される。クロマ・サンプル値についてのマッピング・プロセスを用いたピクチャー再構成は、8.5.5.1.2で規定される。
8.5.5.1 ルーマ・サンプル値についてのマッピング・プロセスを用いたピクチャー再構成
このプロセスへの入力は以下の通り:
・現在のブロックのルーマ予測サンプルを指定する(nCurrSw)×(nCurrSh)配列predSamples
・現在のブロックのルーマ残差サンプルを指定する(nCurrSw)×(nCurrSh)配列resSamples
・このプロセスについての出力は以下の通り:
・(nCurrSw)×(nCurrSh)のマッピングされたルーマ予測サンプル配列predMapSamples
・(nCurrSw)×(nCurrSh)の再構成されたルーマ・サンプル配列recSamples
predMapSamplesは、次のように導出される:
If(CuPredMode[xCurr][yCurr]==MODE_INTRA)||(CuPredMode[xCurr][yCurr]==MODE_INTER && mh_intra_flag[xCurr][yCurr])
predMapSamples[xCurr+i][yCurr+j]=predSamples[i][j]
ここで、i=0..nCurrSw-1、j=0..nCurrSh-1
[外3]
それ以外の場合((CuPredMode[xCurr][yCurr]==MODE_INTER && !mh_intra_flag[xCurr][yCurr]))、次が適用される:
shiftY=14
idxY=predSamples[i][j]>>Log2(OrgCW)
predMapSamples[xCurr+i][yCurr+j]=ReshapePivot[idxY]
+(ScaleCoeff[idxY]*(predSamples[i][j]-InputPivot[idxY])
+(1<<(shiftY-1)))>>shiftY
ここで、i=0..nCurrSw-1、j=0..nCurrSh-1
[外4]
recSamplesは次のように導出される:
recSamples[xCurr+i][yCurr+j]=Clip1Y(predMapSamples[xCurr+i][yCurr+j]+resSamples[i][j]])
ここで、i=0..nCurrSw-1、j=0..nCurrSh-1
[外5]
8.5.5.1.2 クロマ・サンプル値についてのマッピング・プロセスを用いたピクチャー再構成
このプロセスへの入力は以下の通り:
・現在のブロックのマッピングされたルーマ予測サンプルを指定する(nCurrSwx2)×(nCurrShx2)のマッピングされた配列predMapSamples
・現在のブロックのクロマ予測サンプルを指定する(nCurrSw)×(nCurrSh)の配列PredSamples
・現在のブロックのクロマ残差サンプルを指定する(nCurrSw)×(nCurrSh)の配列resSamples
このプロセスの出力は、再構成されたクロマ・サンプル配列recSamplesである。
recSamplesは以下のように導出される:
・If(!tile_group_reshaper_chroma_residual_scale_flag||((nCurrSw)x(nCurrSh)<=4))
recSamples[xCurr+i][yCurr+j]=Clip1C(predSamples[i][j]+resSamples[i][j])
ここで、i=0..nCurrSw-1、j=0..nCurrSh-1
[外6]
・それ以外の場合(tile_group_reshaper_chroma_residual_scale_flag &&((nCurrSw)x(nCurrSh)>4))、次が適用される:
変数varScaleは次のように導出される:
1.invAvgLuma=Clip1Y((ΣiΣjpredMapSamples[(xCurr<<1)+i][(yCurr<<1)+j]
+nCurrSw*nCurrSh*2)/(nCurrSw*nCurrSh*4))
2.変数idxYInvは、サンプル値invAvgLumaの入力を用いて、
[外7]
節で規定されているように、区分ごとの関数インデックスの識別を呼び出すことによって導出される。
3.varScale=ChromaScaleCoef[idxYInv]
varScale=ChromaScaleCoef[idxYInv]
recSamplesは以下のように導出される:
・tu_cbf_cIdx[xCurr][yCurr]が1に等しい場合は、次が適用される:
shiftC=11
recSamples[xCurr+i][yCurr+j]=ClipCidx1(predSamples[i][j]+Sign(resSamples[i][j])
*((Abs(resSamples[i][j])*varScale+(1<<(shiftC-1)))>>shiftC))
ここで、i=0..nCurrSw-1、j=0..nCurrSh-1
[外8]
・それ以外の場合(tu_cbf_cIdx[xCurr][yCurr]が0に等しい)場合は、
recSamples[xCurr+i][yCurr+j]=ClipCidx1(predSamples[i][j])
[外9]
本節は、tile_group_reshaper_enabled_flagの値が1に等しいときに援用される。入力は再構成されたピクチャー・ルーマ・サンプル配列SLであり、出力は、逆マッピング・プロセス後の修正された再構成されたピクチャー・ルーマ・サンプル配列S'Lである。ルーマ・サンプル値についての逆マッピング・プロセスが、8.4.6.1で規定される。
8.5.6.1 ルーマ・サンプル値についてのピクチャー逆マッピング・プロセス
このプロセスへの入力は、現在のピクチャーの左上のルーマ・サンプルに対するルーマ・サンプル位置を指定するルーマ位置(xP,yP)である。
このプロセスの出力は、逆マッピングされたルーマ・サンプル値invLumaSampleである。invLumaSampleの値は、以下の順序付けられたステップを適用して導出される:
1.変数idxYInvは、ルーマ・サンプル値SL[xP][yP]の入力を用いて、節8.5.6.2に指定されているような区分ごとの関数インデックスの識別を呼び出すことによって導出される。
2.reshapeLumaSampleの値は以下のように導出される:
shiftY=14
invLumaSample=InputPivot[idxYInv]+(InvScaleCoeff[idxYInv]*(SL[xP][yP]-ReshapePivot[idxYInv])
+(1<<(shiftY-1)))>>shiftY
[外10]
3.clipRange=((reshaper_model_min_bin_idx>0) && (reshaper_model_max_bin_idx<MaxBinIdx));
clipRangeが1に等しい場合は、下記が適用される:
minVal=16<<(BitDepthY-8)
maxVal=235<<(BitDepthY-8)
invLumaSample=Clip3(minVal,maxVal,invLumaSample)
それ以外の場合(clipRangeが0に等しい)は、次が適用される:
invLumaSample=ClipCidx1(invLumaSample)
8.5.6.2 ルーマ成分についての区分ごとの関数インデックスの特定
このプロセスへの入力はルーマ・サンプル値Sである。
このプロセスの出力は、サンプルSが属するピース〔区分〕を識別するインデックスidxSである。
変数idxSは次のように導出される:
for(idxS=0, idxFound=0; idxS<=MaxBinIdx; idxS++){
if((S<ReshapePivot[idxS+1]){
idxFound=1
break
}
}
注、識別idxSを見つけるための代替的な実装は、以下のとおり:
if(S<ReshapePivot[reshaper_model_min_bin_idx])
idxS=0
else if(S>=ReshapePivot[reshaper_model_max_bin_idx])
idxS=MaxBinIdx
else
idxS=findIdx(S,0,MaxBinIdx+1,ReshapePivot[])
function idx=findIdx(val,low,high,pivot[]){
if(high-low<=1)
idx=low
else {
mid=(low+high)>>1
if(val<pivot[mid])
high=mid
else
low=mid
idx=findIdx(val,low,high,pivot[])
}
}
〔態様1〕
符号化されたビデオ・データを一つまたは複数のプロセッサで再構成する方法であって、当該方法は:
入力符号語表現における一つまたは複数の符号化された整形画像を含む符号化ビットストリーム(122)を受領する段階と;
前記符号化ビットストリーム内の前記一つまたは複数の符号化された整形画像についての整形メタデータ(207)を受領する段階と;
前記整形メタデータに基づいて前方整形関数(282)を生成する段階であって、前記前方整形関数は、第1の符号語表現から前記入力符号語表現へと画像のピクセルをマッピングする、段階と;
前記整形メタデータまたは前記前方整形関数に基づいて逆整形関数(265-3)を生成する段階であって、前記逆整形関数は、前記入力符号語表現から前記第1の符号語表現へと整形画像のピクセルをマッピングする、段階と;
前記符号化されたビットストリームから、一つまたは複数の符号化された単位を含む符号化された整形画像を抽出する段階と;
前記符号化された整形画像におけるイントラ符号化された符号化単位(イントラCU)について:
前記イントラCU内の整形された残差およびイントラ予測された整形された予測サンプルに基づいて前記イントラCUの整形された再構成されたサンプルを生成し(285);
前記イントラCUの前記整形された再構成されたサンプルに前記逆整形関数(265-3)を適用して、前記第1の符号語表現でのイントラCUのデコードされたサンプルを生成し;
前記イントラCUのデコードされたサンプルにループ・フィルタ(270)を適用して、前記イントラCUの出力サンプルを生成し;
前記イントラCUの前記出力サンプルを参照バッファに記憶する段階と;
前記符号化された整形画像におけるインター符号化されたCU(インターCU)について:
前記第1の符号語表現での前記参照バッファに記憶されているインター予測サンプルに前記前方整形関数(282)を適用して、前記入力符号語表現での前記インターCUについての整形予測サンプルを生成し;
前記インターCUにおける整形された残差および前記インターCUについての前記整形された予測サンプルに基づいて、前記インターCUの整形された再構成されたサンプルを生成し;
前記インターCUの前記整形された再構成されたサンプルに前記逆整形関数(265-3)を適用し、前記第1の符号語表現における前記インターCUのデコードされたサンプルを生成し;
前記インターCUのデコードされたサンプルにループ・フィルタ(270)を適用して、前記インターCUの出力サンプルを生成し;
前記インターCUの前記出力サンプルを前記参照バッファに記憶する段階と;
前記参照バッファ内の出力サンプルに基づいて、前記第1の符号語表現でのデコードされた画像を生成する段階とを含む、
方法。
〔態様2〕
前記イントラCUの整形された再構成されたサンプル(RecSample)を生成することが:
RecSample=(Res+IpredSample)
を計算することを含み、
ここで、Resは、前記入力符号語表現での前記イントラCUにおける整形された残差サンプルを表わし、IpredSampleは、前記入力符号語表現でのイントラ予測された整形された予測サンプルを表わす、
態様1記載の方法。
〔態様3〕
前記インターCUの整形された再構成されたサンプル(RecSample)を生成することが:
RecSample=(Res+Fwd(PredSample))
を計算することを含み、
ここで、Resは前記入力符号語表現での前記インターCUにおける整形された残差を表わし、Fwd()は前記前方整形関数を表わし、PredSampleは前記第1の符号語表現におけるインター予測サンプルを表わす、
態様1記載の方法。
〔態様4〕
前記参照バッファに記憶される出力サンプル(RecSampleInDPB)を生成することが:
RecSampleInDPB=LPF(Inv(RecSample))
を計算することを含み、
ここで、Inv()は前記逆整形関数を表わし、LPF()は前記ループ・フィルタを表わす、
態様2または3記載の方法。
〔態様5〕
前記入力符号語表現における前記インター符号化されたCU(インターCU)におけるクロマ残差サンプルについて、さらに:
前記入力符号語表現でのルーマ・ピクセル値および前記整形メタデータに基づくクロマ・スケーリング因子を決定する段階と;
前記インターCUにおける前記クロマ残差サンプルに前記クロマ・スケーリング因子を乗算して、前記第1の符号語表現での前記インターCUにおけるスケーリングされたクロマ残差サンプルを生成する段階と;
前記インターCUにおけるスケーリングされたクロマ残差と、前記参照バッファに記憶されているクロマ・インター予測サンプルとに基づいて、前記インターCUの再構成されたクロマ・サンプルを生成して、前記インターCUのデコードされたクロマ・サンプルを生成する段階と;
前記インターCUの前記デコードされたクロマ・サンプルに前記ループ・フィルタ(270)を適用して、前記インターCUの出力クロマ・サンプルを生成する段階と;
前記インターCUの前記出力クロマ・サンプルを前記参照バッファに記憶する段階とを含む、
態様1記載の方法。
〔態様6〕
イントラ・モードにおいて、前記クロマ・スケーリング因子は、イントラ予測されたルーマ値の平均に基づいている、態様5記載の方法。
〔態様7〕
インター・モードにおいて、前記クロマ・スケーリング因子は、前記入力符号語表現でのインター予測されたルーマ値の平均に基づいている、態様5記載の方法。
〔態様8〕
前記整形メタデータが:
前記第1の符号語表現を表現するために使用されるビンの数を示す第1のパラメータ;
整形において使用される最小ビン・インデックスを示す第2のパラメータ;
前記入力符号語表現における各ビンについての絶対デルタ符号語値を示すパラメータの第1の集合;
前記入力符号語表現における各ビンについてのデルタ符号語値の符号を示すパラメータの第2の集合を含む、
態様1記載の方法。
〔態様9〕
前記前方整形関数は、前記整形メタデータによって導出される線形セグメントをもつ区分ごとの線形関数として再構成される、態様1記載の方法。
〔態様10〕
プロセッサによってビデオ・シーケンスを適応的に整形する方法であって、当該方法は:
プロセッサによって、第1の符号語表現での入力画像にアクセスする段階と;
前記入力画像のピクセルを第2の符号語表現にマッピングする前方整形関数を生成する段階とを含み、前記第2の符号語表現は、前記第1の符号語表現よりも効率的な圧縮を許容し、前記前方整形関数を生成することは:
前記入力画像を複数のピクセル領域に分割し;
各ピクセル領域の第1のルミナンス特性に従って各ピクセル領域を複数の符号語ビンのうちの一つに割り当て;
前記複数の符号語ビンのそれぞれに割り当てられた前記ピクセル領域のそれぞれの第2のルミナンス特性に従って前記複数の符号語ビンのうちのそれぞれについてのビン・メトリックを計算し;
前記複数の符号語ビンのそれぞれのビン・メトリックおよびレート‐歪み最適化基準に従って、前記複数の符号語ビンのそれぞれに前記第2の符号語表現での符号語の数を割り当て;
前記複数の符号語ビンのそれぞれに対する前記第2の符号語表現での符号語の配分に応答して、前記前方整形関数を生成することを含む、
方法。
〔態様11〕
ピクセル領域の前記第1のルミナンス特性が、そのピクセル領域内の平均ルミナンス・ピクセル値を含む、態様10記載の方法。
〔態様12〕
ピクセル領域の前記第2のルミナンス特性が、そのピクセル領域のルミナンス・ピクセル値の分散を含む、態様10記載の方法。
〔態様13〕
符号語ビンについてのビン・メトリックを計算することは、その符号語ビンに割り当てられたすべてのピクセル領域についてのルミナンス・ピクセル値の分散の平均を計算することを含む、態様12記載の方法。
〔態様14〕
符号語ビンに、そのビン・メトリックに従って前記第2の符号語表現での符号語の数を割り当てることは:
その符号語ビンにピクセル領域が割り当てられていない場合は、その符号語ビンに符号語を割り当てず;
その符号語ビンのビン・メトリックが上限閾値より低い場合、第1の数の符号語を割り当て;
そうでない場合、その符号語ビンに第2の数の符号語を割り当てることを含む、
態様10記載の方法。
〔態様15〕
プロセッサを有しており、態様1ないし14のうちいずれか一項記載の方法を実行するように構成されている装置。
〔態様16〕
態様1ないし14のうちいずれか一項記載の、一つまたは複数のプロセッサによる方法を実行するためのコンピュータ実行可能命令を記憶している非一時的なコンピュータ読取可能記憶媒体。
Claims (8)
- 符号化されたビデオ・データを一つまたは複数のプロセッサで再構成する方法であって、当該方法は:
整形された符号語表現における一つまたは複数の符号化された整形画像を含む符号化ビットストリームを受領する段階と;
前記符号化ビットストリーム内の前記一つまたは複数の符号化された整形画像についての整形パラメータを受領する段階とを含み、前記整形パラメータは、前記整形パラメータに基づいて前方整形関数を生成するためのパラメータを含み、前記前方整形関数は、入力符号語表現から前記整形された符号語表現へと画像のピクセルをマッピングするものであり、前記整形パラメータは:
整形のために使用されるアクティブな最大ビン・インデックスを決定するデルタ・インデックス・パラメータであって、前記アクティブな最大ビン・インデックスはあらかじめ定義された最大ビン・インデックスより小さい、デルタ・インデックス・パラメータと;
前記整形において使用される最小ビン・インデックスを示す最小ビン・パラメータと;
前記整形された符号語表現におけるそれぞれのアクティブなビンについての絶対デルタ符号語値と;
前記整形された符号語表現におけるそれぞれのアクティブなビンについての前記絶対デルタ符号語値の符号とを含む、
方法。 - 前記前方整形関数は、前記整形パラメータによって導出される線形セグメントをもつ区分ごとの線形関数として再構成される、請求項1記載の方法。
- 前記入力符号語表現を表すために使用される前記アクティブな最大ビン・インデックスを決定することが、前記あらかじめ定義された最大ビン・インデックスと前記デルタ・インデックス・パラメータとの差を計算することを含む、請求項1記載の方法。
- 前記あらかじめ定義された最大ビン・インデックスは、15、31または63のうちの一つである、請求項1記載の方法。
- エンコードされたビットストリームのための整形パラメータを生成する方法であって、当該方法は:
入力符号語表現でのビデオ・ピクチャーのシーケンスを受領する段階と;
ビデオ・ピクチャーの前記シーケンスにおける一つまたは複数のピクチャーについて、前方整形関数を適用して、整形された符号語表現での整形されたピクチャーを生成する段階であって、前記前方整形関数は、前記入力符号語表現から前記整形された符号語表現へと画像のピクセルをマッピングするものである、段階と;
前記整形された符号語表現のための整形パラメータを生成する段階と;
少なくとも前記整形されたピクチャーに基づいて、符号化されたビットストリームを生成する段階とを含み、前記整形パラメータは:
整形のために使用されるアクティブな最大ビン・インデックスを決定するデルタ・インデックス・パラメータであって、前記アクティブな最大ビン・インデックスはあらかじめ定義された最大ビン・インデックスより小さい、デルタ・インデックス・パラメータと;
前記整形において使用される最小ビン・インデックスを示す最小ビン・パラメータと;
前記整形された符号語表現におけるそれぞれのアクティブなビンについての絶対デルタ符号語値と;
前記整形された符号語表現におけるそれぞれのアクティブなビンについての前記絶対デルタ符号語値の符号とを含む、
方法。 - 前記前方整形関数は、前記整形パラメータによって導出される線形セグメントをもつ区分ごとの線形関数を含む、請求項5記載の方法。
- 前記入力符号語表現を表すために使用される前記アクティブな最大ビン・インデックスを決定することが、前記あらかじめ定義された最大ビン・インデックスと前記デルタ・インデックス・パラメータとの差を計算することを含む、請求項5記載の方法。
- 前記あらかじめ定義された最大ビン・インデックスは、15、31または63のうちの一つである、請求項5記載の方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2023151429A JP2023166582A (ja) | 2018-02-14 | 2023-09-19 | レート歪み最適化を用いたビデオ符号化における画像整形 |
Applications Claiming Priority (16)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201862630385P | 2018-02-14 | 2018-02-14 | |
US62/630,385 | 2018-02-14 | ||
US201862691366P | 2018-06-28 | 2018-06-28 | |
US62/691,366 | 2018-06-28 | ||
US201862726608P | 2018-09-04 | 2018-09-04 | |
US62/726,608 | 2018-09-04 | ||
US201862739402P | 2018-10-01 | 2018-10-01 | |
US62/739,402 | 2018-10-01 | ||
US201862772228P | 2018-11-28 | 2018-11-28 | |
US62/772,228 | 2018-11-28 | ||
US201862782659P | 2018-12-20 | 2018-12-20 | |
US62/782,659 | 2018-12-20 | ||
US201962792122P | 2019-01-14 | 2019-01-14 | |
US62/792,122 | 2019-01-14 | ||
JP2020542886A JP7024102B2 (ja) | 2018-02-14 | 2019-02-13 | レート歪み最適化を用いたビデオ符号化における画像整形 |
PCT/US2019/017891 WO2019160986A1 (en) | 2018-02-14 | 2019-02-13 | Image reshaping in video coding using rate distortion optimization |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2020542886A Division JP7024102B2 (ja) | 2018-02-14 | 2019-02-13 | レート歪み最適化を用いたビデオ符号化における画像整形 |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2023151429A Division JP2023166582A (ja) | 2018-02-14 | 2023-09-19 | レート歪み最適化を用いたビデオ符号化における画像整形 |
Publications (3)
Publication Number | Publication Date |
---|---|
JP2022058944A JP2022058944A (ja) | 2022-04-12 |
JP2022058944A5 JP2022058944A5 (ja) | 2022-12-26 |
JP7353401B2 true JP7353401B2 (ja) | 2023-09-29 |
Family
ID=65529870
Family Applications (3)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2020542886A Active JP7024102B2 (ja) | 2018-02-14 | 2019-02-13 | レート歪み最適化を用いたビデオ符号化における画像整形 |
JP2022018653A Active JP7353401B2 (ja) | 2018-02-14 | 2022-02-09 | レート歪み最適化を用いたビデオ符号化における画像整形 |
JP2023151429A Pending JP2023166582A (ja) | 2018-02-14 | 2023-09-19 | レート歪み最適化を用いたビデオ符号化における画像整形 |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2020542886A Active JP7024102B2 (ja) | 2018-02-14 | 2019-02-13 | レート歪み最適化を用いたビデオ符号化における画像整形 |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2023151429A Pending JP2023166582A (ja) | 2018-02-14 | 2023-09-19 | レート歪み最適化を用いたビデオ符号化における画像整形 |
Country Status (18)
Country | Link |
---|---|
US (2) | US11395009B2 (ja) |
EP (1) | EP3753253A1 (ja) |
JP (3) | JP7024102B2 (ja) |
KR (6) | KR102487032B1 (ja) |
CN (6) | CN117135355A (ja) |
AU (3) | AU2019222715B2 (ja) |
BR (1) | BR112020015394A2 (ja) |
CA (2) | CA3142715A1 (ja) |
CL (3) | CL2020002090A1 (ja) |
IL (3) | IL276062B2 (ja) |
MA (1) | MA51865A (ja) |
MX (1) | MX2020008499A (ja) |
RU (1) | RU2741586C1 (ja) |
SG (1) | SG11202006779RA (ja) |
TW (2) | TWI787460B (ja) |
UA (1) | UA126871C2 (ja) |
WO (1) | WO2019160986A1 (ja) |
ZA (2) | ZA202104693B (ja) |
Families Citing this family (41)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102487032B1 (ko) * | 2018-02-14 | 2023-01-11 | 돌비 레버러토리즈 라이쎈싱 코오포레이션 | 레이트 왜곡 최적화를 이용한 비디오 코딩에서의 이미지 재성형 |
EP3759916A1 (en) * | 2018-02-28 | 2021-01-06 | Dolby Laboratories Licensing Corporation | Linear encoder for image/video processing |
WO2020142186A1 (en) * | 2019-01-04 | 2020-07-09 | Interdigital Vc Holdings, Inc. | Inverse mapping simplification |
MX2021008911A (es) | 2019-02-01 | 2021-08-24 | Beijing Bytedance Network Tech Co Ltd | Se?alizacion de informacion de reformacion en bucle utilizando conjuntos de parametros. |
WO2020156528A1 (en) | 2019-02-01 | 2020-08-06 | Beijing Bytedance Network Technology Co., Ltd. | Filtering processes based on in-loop reshaping |
KR102393325B1 (ko) * | 2019-02-28 | 2022-05-02 | 엘지전자 주식회사 | Aps 시그널링 기반 비디오 또는 영상 코딩 |
EP3932063A1 (en) | 2019-02-28 | 2022-01-05 | InterDigital VC Holdings, Inc. | Method and device for picture encoding and decoding |
US11924431B2 (en) * | 2019-03-01 | 2024-03-05 | Lg Electronics Inc. | LMCS-based image coding method and device therefor |
WO2020177703A1 (en) * | 2019-03-04 | 2020-09-10 | Beijing Bytedance Network Technology Co., Ltd. | Signaling of filtering information in video processing |
KR102479050B1 (ko) * | 2019-03-07 | 2022-12-19 | 엘지전자 주식회사 | 루마 맵핑 및 크로마 스케일링 기반 비디오 또는 영상 코딩 |
AU2020235190B2 (en) | 2019-03-08 | 2023-06-01 | Beijing Bytedance Network Technology Co., Ltd. | Constraints on model-based reshaping in video processing |
US20220191481A1 (en) * | 2019-03-13 | 2022-06-16 | Interdigital Vc Holdings, Inc. | In-loop reshaping adaptive reshaper direction |
WO2020182219A1 (en) * | 2019-03-14 | 2020-09-17 | Beijing Bytedance Network Technology Co., Ltd. | Signaling and syntax for in-loop reshaping information |
CN113574889B (zh) | 2019-03-14 | 2024-01-12 | 北京字节跳动网络技术有限公司 | 环路整形信息的信令和语法 |
CN113632469B (zh) | 2019-03-23 | 2022-12-13 | 北京字节跳动网络技术有限公司 | 默认的环内整形参数 |
CN117336469A (zh) | 2019-04-12 | 2024-01-02 | 北京字节跳动网络技术有限公司 | 根据基于矩阵的帧内预测的变换编码 |
KR20210145757A (ko) | 2019-04-16 | 2021-12-02 | 베이징 바이트댄스 네트워크 테크놀로지 컴퍼니, 리미티드 | 인트라 코딩 모드에서의 행렬 도출 |
CN117528068A (zh) | 2019-04-18 | 2024-02-06 | 北京字节跳动网络技术有限公司 | 视频编解码中的跨分量模式中的选择性使用 |
EP3935855A4 (en) | 2019-04-23 | 2022-09-21 | Beijing Bytedance Network Technology Co., Ltd. | METHOD OF CROSS-COMPONENT DEPENDENCE REDUCTION |
WO2020221372A1 (en) | 2019-05-01 | 2020-11-05 | Beijing Bytedance Network Technology Co., Ltd. | Context coding for matrix-based intra prediction |
JP2022531147A (ja) | 2019-05-01 | 2022-07-06 | 北京字節跳動網絡技術有限公司 | フィルタリングを用いた行列ベースイントラ予測 |
EP3949395A4 (en) | 2019-05-08 | 2022-06-29 | Beijing Bytedance Network Technology Co., Ltd. | Conditions for applicability of cross-component coding |
US11863754B2 (en) * | 2019-05-15 | 2024-01-02 | Hyundai Motor Company | Method and for reconstructing chroma block and video decoding apparatus |
KR20220011127A (ko) | 2019-05-22 | 2022-01-27 | 베이징 바이트댄스 네트워크 테크놀로지 컴퍼니, 리미티드 | 업샘플링을 이용한 행렬 기반 인트라 예측 |
CN114051735A (zh) | 2019-05-31 | 2022-02-15 | 北京字节跳动网络技术有限公司 | 基于矩阵的帧内预测中的一步下采样过程 |
WO2020246790A1 (ko) * | 2019-06-03 | 2020-12-10 | 엘지전자 주식회사 | 맵핑된 루마 성분 및 스케일링된 크로마 성분 기반 비디오 또는 영상 코딩 |
CN117768652A (zh) | 2019-06-05 | 2024-03-26 | 北京字节跳动网络技术有限公司 | 视频处理方法、装置、介质、以及存储比特流的方法 |
CN117478908A (zh) | 2019-06-22 | 2024-01-30 | 北京字节跳动网络技术有限公司 | 色度残差缩放的语法元素 |
JP7460748B2 (ja) | 2019-07-07 | 2024-04-02 | 北京字節跳動網絡技術有限公司 | クロマ残差スケーリングのシグナリング |
US11140388B2 (en) * | 2019-09-06 | 2021-10-05 | Tencent America LLC | Method and apparatus for non-linear loop filtering |
US11172237B2 (en) | 2019-09-11 | 2021-11-09 | Dolby Laboratories Licensing Corporation | Inter-layer dynamic range scalability for HDR video |
US11277623B2 (en) | 2019-09-17 | 2022-03-15 | Dolby Laboratories Licensing Corporation | Block-level lossless video coding using in-loop reshaping |
EP4042689A4 (en) | 2019-10-28 | 2023-06-07 | Beijing Bytedance Network Technology Co., Ltd. | SIGNALING AND SYNTAX ANALYSIS BASED ON A COLOR COMPONENT |
JP7391214B2 (ja) * | 2019-11-27 | 2023-12-04 | ドルビー ラボラトリーズ ライセンシング コーポレイション | Hdr画像化におけるレート制御認識リシェーピング |
US11889091B2 (en) | 2020-02-21 | 2024-01-30 | Alibaba Group Holding Limited | Methods for processing chroma signals |
EP4082188A4 (en) | 2020-03-19 | 2024-01-31 | Fg innovation co ltd | APPARATUS AND METHOD FOR ENCODING VIDEO DATA |
JP7460792B2 (ja) * | 2020-03-27 | 2024-04-02 | ベイジン、ターチア、インターネット、インフォメーション、テクノロジー、カンパニー、リミテッド | ビデオ符号化方法、およびコンピューティング装置 |
US11601657B2 (en) * | 2020-04-02 | 2023-03-07 | Qualcomm Incorporated | LUMA mapping with chroma scaling (LMCS) in video coding |
CN115462076A (zh) * | 2020-04-30 | 2022-12-09 | 北京达佳互联信息技术有限公司 | 用于针对视频编解码的预测相关残差缩放的方法和设备 |
EP4028987A4 (en) * | 2020-05-08 | 2022-10-12 | Huawei Technologies Co., Ltd. | ENCODER, DECODER, SYSTEM AND METHOD FOR DETERMINING TONE MAPPING CURVE PARAMETERS |
US11985346B2 (en) * | 2022-09-20 | 2024-05-14 | Qualcomm Incorporated | Encoding high dynamic range video data |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP7024102B2 (ja) | 2018-02-14 | 2022-02-22 | ドルビー ラボラトリーズ ライセンシング コーポレイション | レート歪み最適化を用いたビデオ符号化における画像整形 |
Family Cites Families (23)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP2051527A1 (en) * | 2007-10-15 | 2009-04-22 | Thomson Licensing | Enhancement layer residual prediction for bit depth scalability using hierarchical LUTs |
RU2504011C2 (ru) | 2009-03-13 | 2014-01-10 | Долби Лабораторис Лайсэнзин Корпорейшн | Многоуровневое сжатие видеоизображения с расширенным динамическим диапазоном, визуальным динамическим диапазоном и широкой цветовой гаммой |
WO2011126272A2 (en) | 2010-04-05 | 2011-10-13 | Samsung Electronics Co., Ltd. | Method and apparatus for encoding video by using dynamic-range transformation, and method and apparatus for decoding video by using dynamic-range transformation |
US9438904B2 (en) * | 2012-01-19 | 2016-09-06 | Futurewei Technologies, Inc. | Reduced look-up table for LM mode calculation |
CN105787909B (zh) | 2012-08-08 | 2018-07-20 | 杜比实验室特许公司 | 用于高动态范围图像的图像处理 |
US9565452B2 (en) | 2012-09-28 | 2017-02-07 | Qualcomm Incorporated | Error resilient decoding unit association |
KR102149115B1 (ko) | 2012-11-16 | 2020-08-27 | 인터디지털 브이씨 홀딩스 인코포레이티드 | 높은 동적 범위 이미지들의 프로세싱 |
PL2941872T3 (pl) * | 2013-01-02 | 2019-03-29 | Dolby Laboratories Licensing Corporation | Kompatybilne wstecznie kodowanie dla sygnałów wideo o ultra wysokiej rozdzielczości z rozszerzonym zakresem dynamicznym |
US9704226B2 (en) * | 2013-03-14 | 2017-07-11 | Drs Network & Imaging Systems, Llc | System and method for fast digital signal dynamic range reduction using adaptive histogram compaction and stabilization |
US9516306B2 (en) * | 2013-03-27 | 2016-12-06 | Qualcomm Incorporated | Depth coding modes signaling of depth data for 3D-HEVC |
US9584811B2 (en) * | 2013-06-17 | 2017-02-28 | Dolby Laboratories Licensing Corporation | Adaptive reshaping for layered coding of enhanced dynamic range signals |
WO2016140954A1 (en) * | 2015-03-02 | 2016-09-09 | Dolby Laboratories Licensing Corporation | Content-adaptive perceptual quantizer for high dynamic range images |
KR101844732B1 (ko) * | 2015-03-20 | 2018-04-02 | 돌비 레버러토리즈 라이쎈싱 코오포레이션 | 신호 재정형 근사화 |
CN107439012B (zh) | 2015-04-06 | 2018-09-25 | 杜比实验室特许公司 | 用于环内转换的方法、装置和计算机可读存储介质 |
EP4020995A1 (en) | 2015-07-16 | 2022-06-29 | Dolby Laboratories Licensing Corporation | Signal reshaping and coding for hdr and wide color gamut signals |
US10652588B2 (en) | 2015-09-21 | 2020-05-12 | Vid Scale, Inc. | Inverse reshaping for high dynamic range video coding |
US10674150B2 (en) | 2015-09-23 | 2020-06-02 | Arris Enterprises Llc | System and method for reshaping and adaptation of high dynamic range video data |
CN106937121B (zh) * | 2015-12-31 | 2021-12-10 | 中兴通讯股份有限公司 | 图像解码和编码方法、解码和编码装置、解码器及编码器 |
US10165275B2 (en) * | 2016-01-26 | 2018-12-25 | Dolby Laboratories Licensing Corporation | Content-adaptive reshaping for high dynamic range images |
US10032262B2 (en) * | 2016-02-02 | 2018-07-24 | Dolby Laboratories Licensing Corporation | Block-based content-adaptive reshaping for high dynamic range images |
EP3226563B1 (en) | 2016-03-30 | 2021-06-23 | Dolby Laboratories Licensing Corp. | Chroma reshaping |
EP3244616A1 (en) * | 2016-05-13 | 2017-11-15 | Thomson Licensing | A method for encoding an input video comprising a luma component and two chroma components, the method comprising reshaping of said input video based on reshaping functions |
EP4064701A1 (en) * | 2017-06-29 | 2022-09-28 | Dolby Laboratories Licensing Corporation | Integrated image reshaping and video decoding |
-
2019
- 2019-02-13 KR KR1020227036150A patent/KR102487032B1/ko active IP Right Grant
- 2019-02-13 CN CN202311286486.5A patent/CN117135355A/zh active Pending
- 2019-02-13 SG SG11202006779RA patent/SG11202006779RA/en unknown
- 2019-02-13 CN CN202311283633.3A patent/CN117082246A/zh active Pending
- 2019-02-13 EP EP19707619.3A patent/EP3753253A1/en active Pending
- 2019-02-13 KR KR1020227019850A patent/KR102435014B1/ko active IP Right Grant
- 2019-02-13 AU AU2019222715A patent/AU2019222715B2/en active Active
- 2019-02-13 CA CA3142715A patent/CA3142715A1/en active Pending
- 2019-02-13 IL IL276062A patent/IL276062B2/en unknown
- 2019-02-13 UA UAA202005147A patent/UA126871C2/uk unknown
- 2019-02-13 KR KR1020237000612A patent/KR102625573B1/ko active IP Right Grant
- 2019-02-13 CN CN201980013360.6A patent/CN111713108B/zh active Active
- 2019-02-13 JP JP2020542886A patent/JP7024102B2/ja active Active
- 2019-02-13 TW TW108104749A patent/TWI787460B/zh active
- 2019-02-13 WO PCT/US2019/017891 patent/WO2019160986A1/en active Application Filing
- 2019-02-13 US US16/968,574 patent/US11395009B2/en active Active
- 2019-02-13 CN CN202311286612.7A patent/CN117082248A/zh active Pending
- 2019-02-13 IL IL305463A patent/IL305463A/en unknown
- 2019-02-13 RU RU2020126572A patent/RU2741586C1/ru active
- 2019-02-13 BR BR112020015394-0A patent/BR112020015394A2/pt unknown
- 2019-02-13 TW TW111145811A patent/TW202320544A/zh unknown
- 2019-02-13 KR KR1020207023477A patent/KR102409649B1/ko active IP Right Grant
- 2019-02-13 KR KR1020227028467A patent/KR102457485B1/ko active IP Right Grant
- 2019-02-13 MA MA051865A patent/MA51865A/fr unknown
- 2019-02-13 IL IL300136A patent/IL300136B2/en unknown
- 2019-02-13 CN CN202311283805.7A patent/CN117082247A/zh active Pending
- 2019-02-13 CN CN202311287341.7A patent/CN117097903A/zh active Pending
- 2019-02-13 KR KR1020237003666A patent/KR20230021187A/ko active Application Filing
- 2019-02-13 MX MX2020008499A patent/MX2020008499A/es unknown
- 2019-02-13 CA CA3091190A patent/CA3091190C/en active Active
-
2020
- 2020-08-12 CL CL2020002090A patent/CL2020002090A1/es unknown
-
2021
- 2021-01-13 CL CL2021000102A patent/CL2021000102A1/es unknown
- 2021-07-06 ZA ZA2021/04693A patent/ZA202104693B/en unknown
- 2021-12-08 AU AU2021282439A patent/AU2021282439B2/en active Active
- 2021-12-27 CL CL2021003512A patent/CL2021003512A1/es unknown
-
2022
- 2022-02-09 JP JP2022018653A patent/JP7353401B2/ja active Active
- 2022-03-29 US US17/707,581 patent/US20220224946A1/en active Pending
- 2022-06-15 ZA ZA2022/06622A patent/ZA202206622B/en unknown
-
2023
- 2023-06-19 AU AU2023203814A patent/AU2023203814A1/en active Pending
- 2023-09-19 JP JP2023151429A patent/JP2023166582A/ja active Pending
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP7024102B2 (ja) | 2018-02-14 | 2022-02-22 | ドルビー ラボラトリーズ ライセンシング コーポレイション | レート歪み最適化を用いたビデオ符号化における画像整形 |
Also Published As
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP7353401B2 (ja) | レート歪み最適化を用いたビデオ符号化における画像整形 | |
KR102580314B1 (ko) | 통합된 이미지 정형 및 비디오 코딩 | |
RU2772104C2 (ru) | Преобразование изображения в кодировании видео с использованием оптимизации зависимости искажения от скорости передачи | |
OA20172A (en) | Image reshaping in video coding using rate distortion optimization. |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20220209 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20221216 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20230404 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20230512 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20230822 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20230919 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 7353401 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |