JP2023504817A - ポスト・フィルタリングを用いるブロック・ワイズ・ニューラル画像圧縮のための方法及び装置 - Google Patents

ポスト・フィルタリングを用いるブロック・ワイズ・ニューラル画像圧縮のための方法及び装置 Download PDF

Info

Publication number
JP2023504817A
JP2023504817A JP2022533334A JP2022533334A JP2023504817A JP 2023504817 A JP2023504817 A JP 2023504817A JP 2022533334 A JP2022533334 A JP 2022533334A JP 2022533334 A JP2022533334 A JP 2022533334A JP 2023504817 A JP2023504817 A JP 2023504817A
Authority
JP
Japan
Prior art keywords
block
reconstructed
prediction
blocks
area
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.)
Pending
Application number
JP2022533334A
Other languages
English (en)
Other versions
JPWO2022072093A5 (ja
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 JP2023504817A publication Critical patent/JP2023504817A/ja
Publication of JPWO2022072093A5 publication Critical patent/JPWO2022072093A5/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/85Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
    • H04N19/86Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression involving reduction of coding artifacts, e.g. of blockiness
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/044Recurrent networks, e.g. Hopfield networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformations in the plane of the image
    • G06T3/40Scaling of whole images or parts thereof, e.g. expanding or contracting
    • G06T3/4046Scaling of whole images or parts thereof, e.g. expanding or contracting using neural networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T9/00Image coding
    • G06T9/002Image coding using neural networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/105Selection of the reference unit for prediction within a chosen coding or prediction mode, e.g. adaptive choice of position and number of pixels used for prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/117Filters, e.g. for pre-processing or post-processing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/157Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
    • H04N19/159Prediction type, e.g. intra-frame, inter-frame or bidirectional frame prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/593Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial prediction techniques
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20084Artificial neural networks [ANN]

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Evolutionary Computation (AREA)
  • Artificial Intelligence (AREA)
  • General Physics & Mathematics (AREA)
  • General Health & Medical Sciences (AREA)
  • Data Mining & Analysis (AREA)
  • Computational Linguistics (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Biophysics (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Biomedical Technology (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

ポスト・フィルタリングを用いるブロック・ワイズ・ニューラル画像圧縮の方法は、エンコーダの少なくとも1つのプロセッサにより実行され、第1ニューラル・ネットワークを使用して、入力画像のブロックを符号化するステップであって、符号化されたブロックは、再構成されたブロックを生成するために、第2ニューラル・ネットワークを使用してデコーダによって復号化される、ステップ;及び 予測ブロックを生成するために、第3ニューラル・ネットワークを使用して、再構成されたブロックに関してイントラ予測を実行するステップを含む。本方法は、予測残差を生成するために、入力画像のブロックと生成された予測ブロックとの間の差分を決定するステップ;第4ニューラル・ネットワークを使用して、生成された予測残差を符号化するステップであって、符号化された予測残差は、第5ニューラル・ネットワークを使用してデコーダにより復号化される、ステップ;及び復元された予測ブロックを生成するために、復号化された予測残差を、生成された予測ブロックに加えるステップを更に含む。

Description

関連出願の相互参照
本件出願は、米国特許商標庁に2020年9月30日付で出願された米国仮特許出願第63/085,900号、2020年9月30日付で出願された米国仮特許出願第63/085,908号、2020年10月7日付で出願された米国仮特許出願第63/088,675号、及び2021年6月29日付で出願された米国特許出願第17/362,003号を基礎とし且つ優先権を主張しており、それらの開示全体が参照により本件に援用される。
従来、オリジナル画像全体を直接的に符号化する代わりに、ブロック・ベースのイントラ予測&残差コーディング機構は、高効率ビデオ・コーディング(High Efficiency Video Coding,HEVC)や汎用ビデオ・コーディング(Versatile Video Coding,VVC)規格のような現代のビデオ・コーディング・システムにおいて、画像フレームを圧縮することに非常に効果的であることが実証されている。画像全体は先ずコーディング・ツリー・ユニット(CTU)にパーティション化される。各CTUに関し、それは、種々のサイズのブロックにパーティション化される可能性があり、予測ブロックは、種々の角度方向に沿って、以前の圧縮されたブロックの境界ピクセルをコピーすることによって生成される。次いで、オリジナル・ブロックと予測ブロックの間の残差が圧縮される。残差は、オリジナル・ピクセルよりもはるかに効率的に符号化することが可能であり、より良いコーディング・パフォーマンスを達成することができる。
ISO/IEC MPEG (JTC 1/SC 29/WG 11)は、将来のビデオ・コーディング技術の標準化に関する潜在的なニーズを積極的に探求している。ISO/IEC JPEGは、ディープ・ニューラル・ネットワーク(Deep Neural Networks,DNN)を用いるAIベースのエンド・ツー・エンド・ニューラル画像圧縮に焦点を当てたJPEG‐AIグループを設立している。また、中国のAVS規格も、ニューラル画像及びビデオ圧縮技術に取り組むためにAVS-AIスペシャル・グループを結成している。最近のアプローチの成功により、高度なニューラル画像及びビデオ圧縮方法論に産業界の関心が益々高まっている。
入力画像xが与えられた場合に、ニューラル画像圧縮(Neural Image Compression,NIC)のターゲットは、画像xをDNNエンコーダへの入力として使用して、記憶及び伝送のためにコンパクトにした圧縮された表現
Figure 2023504817000001
(以下、混乱が生じない限り、xハット又はx^と言及する)を計算し、次いで、x^をDNNデコーダ入力として使用して、画像
Figure 2023504817000002
(以下、混乱が生じない限り、xバー又はx-と言及する)を再構築することである。従来のNIC法は、変分オートエンコーダ(variational autoencoder,VAE)構造を採用しており、DNNエンコーダは、画像全体xをその入力として直接的に使用し、その入力は、出力表現x^を計算するブラック・ボックスのように機能する一組のネットワーク層を通過する。それに対応して、DNNデコーダは、全体表現x^をその入力として採用し、その入力は、再構成されたx-を計算する別のブラック・ボックスのように機能する別の一組のネットワーク層を通過する。
HEVCでは、デブロッキング・フィルタ・プロセスが、復号化プロセスと同じ順序で各コーディング・ユニット(CU)に対して実行される。先ず垂直エッジがフィルタリング(水平フィルタリング)され、次いで水平エッジがフィルタリング(垂直フィルタリング)される。フィルタリングは、ルマ及びクロマ成分の両方に対してフィルタリングされるように決定された8×8ブロック境界に適用される。4×4 ブロック境界は、複雑さを減らすために処理されない。
境界強度(boundary strength,Bs)は、どの程度強いフィルタリング・プロセスが境界に必要とされるのかを反映することができる。Bsに関して2という値は強いフィルタリングを示し、1は弱いフィルタリングを示し、0はデブロッキング・フィルタリングを行わないことを示す。
PとQを、フィルタリングに関与するブロックとして定義し、ここで、Pは境界の左側(垂直エッジの場合)又は上方(水平エッジの場合)に位置するブロックを表し、Qは境界の右側(垂直エッジの場合)又は下方(水平エッジの場合)に位置するブロックを表す。図1は、イントラ・コーディング・モード、非ゼロ変換係数の存在、参照ピクチャ、動きベクトル数、及び動きベクトル差分に基づいて、Bs値がどのように計算されるかを示す。例えば、MV差分が閾値Tを下回る場合、Bsは0に等しい。閾値Tは1ピクセルに設定される。HEVCでは、MV精度は1/4ピクセルであり、MV差分閾値は4に設定されている。VTMでは、MV精度は1/16であり、MV差分は16に設定されている。
Bsは4×4ブロック・ベースで計算されるが、8×8グリッドに再マッピングされる。4×4グリッド内のラインで構成される8ピクセルに対応するBsの2つの値のうちの最大値が、8×8グリッドの境界に対するBsとして選択される。
VTM5では、デブロッキング・フィルタリング・プロセスはHEVCにおけるものとほとんど同じである。ただし、以下の変更が加えられる。
1) 再構成されたサンプルの平均ルマ・レベルに依存するデブロッキング・フィルタのフィルタ強度
2) デブロッキングtCテーブルの拡張
3) ルマ用のより強力なデブロッキング・フィルタ
4) クロマ用のより強力なデブロッキング・フィルタ
5) 4×4サンプル・グリッドに関するルマ・デブロッキング、及び8×8サンプル・グリッドに関するクロマ・デブロッキング
HEVCでは、デブロッキング・フィルタのフィルタ強度は、平均化された量子化パラメータqPLから導出される変数βとtCによって制御される。VTM5では、デブロッキング・フィルタは、再構成されたサンプルのルマ・レベルに従って、qPLにオフセットを加えることによって、デブロッキング・フィルタの強度を制御する。再構成されたルマ・レベルLLは、次のように導出される:
LL= ( ( p0,0 + p0,3 + q0,0 + q0,3 ) >> 2 ) / ( 1 << bitDepth ) (Eq. 1),
ここで、サンプル値pi,k及びqi,kは、(i = 0..3,k = 0及び3)は、図2に示されているように導出される。
変数qPLは、次のように導出される:
qPL = ( ( QpQ + QpP +1 ) >> 1 ) + qpOffset (Eq. 2),
ここで、QpQ及びQpPはそれぞれサンプルq0,0及びp0,0を含むコーディング・ユニットの量子化パラメータを示す。伝達関数に依存するオフセットqpOffset、その値はSPSでシグナリングされる。
VTM5では、Maximum QPは、51から63へ変更されており、ブロックQPに基づいてデブロッキング・パラメータtCの値を導出するデブロッキング・テーブルに対する相応の変化を反映することが望ましい。以下は、QP範囲の拡張に対処するためにアップデートされたtCテーブルである。
Figure 2023504817000003
バイリニア・フィルタ(より強力なデブロッキング・フィルタ)は、境界の片側のサンプルがラージ・ブロックに属する場合に使用される。ラージ・ブロックに属するサンプルは、垂直エッジについて幅が32以上であり、水平エッジについて高さが32以上である場合として定義される。ブロック境界サンプルpi(i=0ないしSp-1)及びqi(j=0ないしSq-1)は、次のように線形補間で置換される:
Figure 2023504817000004
ここで、tcPDi及びtcPDjの項は位置依存クリッピングであり、gj, fi, Middles,t, Ps及びQsは以下の通りである:
テーブル1 - ルマに対する強デブロッキング・パラメータの導出
Figure 2023504817000005
上記のより強いルマ・フィルタは、Condition1(条件1)、Condition2(条件2)、Condition 3(条件3)の全てがTRUEである場合にのみ使用される。条件1は“ラージ・ブロック条件”である。この条件は、P側とQ側のサンプルがラージ・ブロックに属しているかどうかを検出する。条件2と条件3は以下により決定される:
Condition2 = (d < β) ? TRUE: FALSE (Eq. 6); 及び
Condition3 = StrongFilterCondition = (dpq is less than ( β >> 2 ), sp3 + sq3 が( 3*β >> 5 )より小さい, 且つAbs( p0 ― q0 )が( 5 * tC + 1 ) >> 1)より小さい ? TRUE : FALSE (Eq. 7).
クロマに対する強デブロック・フィルタは以下のように定義される:
p2′= (3*p3+2*p2+p1+p0+q0+4) >> 3 (Eq. 8);
p1′= (2*p3+p2+2*p1+p0+q0+q1+4) >> 3 (Eq. 9); 及び
p0′= (p3+p2+p1+2*p0+q0+q1+q2+4) >> 3 (Eq. 10).
上記のクロマ・フィルタは、8×8クロマ・サンプル・グリッドでデブロッキングを実行する。クロマ強フィルタは、ブロック境界の両側で使用される。ここで、クロマ・フィルタは、クロマ・エッジの両側が (クロマ・サンプル単位で) 8以上であり、続く3条件判定が満たされる場合に選択される。第1のものはラージ・ブロックに加えて境界強度の判定に関するものである。第2及び第3のものは、基本的にはHEVCルマ判定と同じであり、これらはそれぞれon/off判定及び強フィルタ判定である。第1判定では、bSが、テーブル2に示すようにクロマ・フィルタリングに関して修正される。テーブル1の条件が順次チェックされる。条件が満たされると、より低い優先度の残りの条件はスキップされる。
テーブル2 - 修正される境界強度
Figure 2023504817000006
クロマ・デブロッキングは、bSが2に等しい場合、又はラージ・ブロック境界が検出された場合にはbSが1に等しい場合に、実行される。第2及び第3条件は、基本的にはHEVCルマ強フィルタ決定と同じである。
現在のVVCワーキング・ドラフトでは、デブロッキング・フィルタは、ルマの場合は4×4グリッド、クロマの場合は8×8グリッドでイネーブルにされる。
デブロッキング・フィルタリング・プロセスは、サブブロック境界に加えてCU境界にも適用される。サブブロック境界は、STMVP及びアフィン・モードによって導入される予測ユニット境界や、SBT及びISPモードによって導入される変換ユニット境界を含む。
SBT及びISPサブブロックに対しては、HEVCデブロッキング・フィルタでのTUにおける同じロジックが適用される。エッジを横切るどちらのサブブロックにも非ゼロ係数が存在する場合に、デブロッキング・フィルタがTU境界に適用される。
4×4グリッド上のSbTMVP及びアフィン・サブブロックについては、HEVCデブロッキング・フィルタでのPUにおける同じロジックが適用される。PU境界については、動きベクトルと隣接サブブロックの参照ピクチャとの間の差を考慮して、デブロッキング・フィルタが適用される。
既存のネットワーク・アーキテクチャを利用し、より高いコーディング効率を達成できることが可能な、より効率的なNIC技術を開発する必要があるかもしれない。
イントラ予測は、HEVC及びVVCのような画像及びビデオ圧縮アルゴリズムにおいて広く使用されている重要な機構である。予測のゴールは、以前に再構成された周囲のピクセルから、ピクセルのブロックを推論することである。オリジナル・ピクセルと予測されたピクセルとの間で計算された残差を符号化/復号することにより、圧縮方法はより効率的になり得る。
従来のビデオ・コーデック(HEVC,VVC)におけるイントラ予測は、予測されるブロックとその近傍との間の依存性を当てにしている。例えば、VVCでは、レート歪・基準に従って、予測方法は、35の固定されたシンプルな予測関数の中から1つのモードに従って選択し、指定された方向に沿ってピクセル値を伝搬させる。周囲のピクセルから因果関係によって単純にピクセルを伝搬させる代わりに、以前の提案では、予測されるブロックに対して、画像内で最良に一致するものを発見するための探索方法が導入された。更なる研究では、近傍のk個の最も近いパッチの線形結合として定義される、画像内の自己類似性(self-similarities)を活用している。
近年、リカレント・ニューラル・ネットワークは、画像ピクセルの予測について信頼性の高いモデルを学習する能力を実証している。例えば、リカレント・ニューラル・ネットワークは、画像の既知の領域内のピクセル間の依存性のそれらの内部表現を逐次的に更新し、次いで、画像の未知の領域内の次のピクセルを生成する。
また、イントラ予測のための全結合(fully connected,FC)層ベースの方法も提案されている。FCニューラル・ネットワークは、隣接する再構成ピクセルから現在のブロックへのエンド・ツー・エンド・マッピングを学習することができる。これは、コンテキスト・エリア(モデルへの入力)として、ピクセルの複数の参照ラインを使用する。しかしながら、この方法は非常に小数のピクセルしか予測することができない。幾つかの以前の研究では、イントラ予測のための畳み込み層ベースの方法が提案された。これは隣接する再構成ピクセルを取り込み、それを予測のために畳み込みニューラル・ネットワーク(convolutional neural network,CNN)ネットワークへ送る。
現在の予測方法は、ビデオ・イントラ予測モジュール用に設計されており、ニューラル・ベースの画像圧縮に直接的に使用することはできない。更に、現在のニューラル・ベースの予測方法は、再構成されたピクセル(コンテキスト・エリア)を2つの分離されたエリアにパーティション化するが、以下の欠点を招く可能性がある:1) それらは2つの分離されたコンテキスト・エリア間の境界エリアを学習することができない;2) 2つのコンテキスト・エリア(又はこれら2つのコンテキスト・エリアによって変換された潜在表現)を統合するために、予測方法は、演算時間に加えて、膨大な量の演算リソースを必要とする可能性がある。
実施形態によれば、ポスト・フィルタリングを用いるブロック・ワイズ・ニューラル画像圧縮の方法は、エンコーダの少なくとも1つのプロセッサにより実行されるものであり、第1ニューラル・ネットワークを使用して、入力画像のブロックを符号化するステップであって、符号化されたブロックは、再構成されたブロックを生成するために、第2ニューラル・ネットワークを使用してデコーダによって復号化される、ステップ;及び予測ブロックを生成するために、第3ニューラル・ネットワークを使用して、前記再構成されたブロックに関してイントラ予測を実行するステップを含む。方法は、更に、予測残差を生成するために、前記入力画像のブロックと生成された予測ブロックとの間の差分を決定するステップ;第4ニューラル・ネットワークを使用して、生成された予測残差を符号化するステップであって、符号化された予測残差は、第5ニューラル・ネットワークを使用して前記デコーダにより復号化される、ステップ;及び復元された予測ブロックを生成するために、復号化された予測残差を、前記生成された予測ブロックに加えるステップを含む。
別の実施形態によれば、ポスト・フィルタリングを用いるブロック・ワイズ・ニューラル画像圧縮のための装置は、エンコーダとして実装されるものであり、プログラム・コードを記憶するように構成された少なくとも1つのメモリ;及び前記プログラム・コードを読み込み、前記プログラム・コードにより指示されるとおりに動作するように構成された少なくとも1つのプロセッサを含む。前記プログラム・コードは:第1ニューラル・ネットワークを使用して、入力画像のブロックを符号化することを、前記少なくとも1つのプロセッサに行わせるように構成された第1符号化コードであって、符号化されたブロックは、再構成されたブロックを生成するために、第2ニューラル・ネットワークを使用してデコーダによって復号化される、第1符号化コード;及び予測ブロックを生成するために、第3ニューラル・ネットワークを使用して、前記再構成されたブロックに関してイントラ予測を実行することを、前記少なくとも1つのプロセッサに行わせるように構成された第1実行コードを含む。プログラム・コードは、更に、予測残差を生成するために、前記入力画像のブロックと生成された予測ブロックとの間の差分を決定することを、前記少なくとも1つのプロセッサに行わせるように構成された決定コード;第4ニューラル・ネットワークを使用して、生成された予測残差を符号化することを、前記少なくとも1つのプロセッサに行わせるように構成された第2符号化コードであって、符号化された予測残差は、第5ニューラル・ネットワークを使用して前記デコーダにより復号化される、第2符号化コード;及び復元された予測ブロックを生成するために、復号化された予測残差を、前記生成された予測ブロックに加えることを、前記少なくとも1つのプロセッサに行わせるように構成された加算コードを含む。
実施形態によれば、命令を記憶する非一時的なコンピュータ読み取り可能な媒体において、前記命令は、エンコーダのポスト・フィルタリングを用いるブロック・ワイズ・ニューラル画像圧縮のために、少なくとも1つのプロセッサにより実行されると、前記少なくとも1つのプロセッサに:第1ニューラル・ネットワークを使用して、入力画像のブロックを符号化するステップであって、符号化されたブロックは、再構成されたブロックを生成するために、第2ニューラル・ネットワークを使用してデコーダによって復号化される、ステップ;予測ブロックを生成するために、第3ニューラル・ネットワークを使用して、前記再構成されたブロックに関してイントラ予測を実行するステップを行わせる。命令は、少なくとも1つのプロセッサにより実行されると、少なくとも1つのプロセッサに、更に:予測残差を生成するために、前記入力画像のブロックと生成された予測ブロックとの間の差分を決定するステップ;第4ニューラル・ネットワークを使用して、生成された予測残差を符号化するステップであって、符号化された予測残差は、第5ニューラル・ネットワークを使用して前記デコーダにより復号化される、ステップ;及び復元された予測ブロックを生成するために、復号化された予測残差を、前記生成された予測ブロックに加えるステップを行わせる。
図1は、境界強度(Bs)を計算するフロー図である。 図2は、サンプル位置の図である。 図3は、本件で説明される方法、装置及びシステムが実施形態に従って実施されることが可能な環境の図である。 図4は、図3の1つ以上のデバイスの例示的なコンポーネントのブロック図である。 図5Aは、実施形態によるブロック・ワイズ・ニューラル画像圧縮のためのエンコーダのブロック図である。 図5Bは、実施形態による図5Aのエンコーダのイントラ予測コンポーネントのブロック図である。 図6は、実施形態によるブロック・ワイズ・ニューラル画像圧縮のためのデコーダのブロック図である。 図7は、実施形態による後処理コンポーネントのブロック図である。 図8は、図7の後処理コンポーネントのデブロッキング・コンポーネントの図である。 図9は、実施形態による境界エリアを取り出す方法を示す図である。 図10は、実施形態によるマルチ・モデルのデブロッキング・コンポーネントの図である。 図11は、図7の後処理コンポーネントのポスト・エンハンスメント・コンポーネントの図である。 図12は、実施形態によるマルチ・モデルのポスト・エンハンスメント・コンポーネントの図である。 図13は、実施形態によるポスト・エンハンスメント・コンポーネントの図である。 図14は、実施形態によるポスト・エンハンスメント&デブロッキング・コンポーネントを有する重複エリアの図である。 図15は、実施形態によるDNN符号化及びDNN予測残差符号化のための装置のブロック図である。 図16は、実施形態によるDNN復号化及びDNN予測残差復号化のための装置のブロック図である。 図17Aは、予測ブロック及び再構成されたピクセルの図である。 図17Bは、実施形態による2つのコンテキスト・エリア予測方法を示す図である。 図17Cは、実施形態によるパディング予測方法を示す図である。 図17Dは、実施形態による変換予測方法を示す図である。 図18は、実施形態によるポスト・フィルタリングを用いたブロック・ワイズ・ニューラル画像圧縮方法のフローチャートである。 図19は、実施形態によるポスト・フィルタリングを用いたブロック・ワイズ・ニューラル画像圧縮装置のブロック図である。
本開示は、ブロック・ベースのイントラ予測からの残差を用いてDNNによって入力画像を圧縮するためのニューラル画像圧縮(NIC)フレームワークを記述している。
図3は、本件で説明される方法、装置、及びシステムが実装され得る実施形態による環境300を示す図である。
図3に示すように、環境300は、ユーザー装置310、プラットフォーム320、及びネットワーク330を含んでもよい。環境300のうちの装置は、有線接続、無線接続、又は有線及び無線接続の組み合わせを介して相互接続されてもよい。
ユーザー装置310は、プラットフォーム320に関連する情報を、受信、生成、記憶、処理、及び/又は提供することが可能な1つ以上の装置を含む。例えば、ユーザー装置310は、演算装置(例えば、デスクトップ・コンピュータ、ラップトップ・コンピュータ、タブレット・コンピュータ、ハンドヘルド・コンピュータ、スマート・スピーカ、サーバー等)、携帯電話(例えば、スマートフォン、無線電話など)、ウェアラブル装置(例えば、一対のスマート・グラス又はスマート・ウォッチ)、又は類似の装置を含んでもよい。幾つかの実装では、ユーザー装置310は、プラットフォーム320から情報を受信し及び/又はプラットフォーム320へ情報を送信することができる。
プラットフォーム320は、本件の他の箇所で説明されるように、1つ以上の装置を含む。幾つかの実装では、プラットフォーム320は、クラウド・サーバー又はクラウド・サーバーのグループを含んでもよい。幾つかの実装では、プラットフォーム320は、ソフトウェア・コンポーネントが交換できるようにモジュールとして設計されてもよい。このように、プラットフォーム320は、異なる用途のために容易に及び/又は迅速に再構成されてもよい。
幾つかの実装では、図示のように、プラットフォーム320は、クラウド演算環境322でホストされてもよい。特に、本件で説明される実装は、プラットフォーム320を、クラウド演算環境322でホストされるものとして説明しているが、一部の実装では、プラットフォーム320は、クラウド・ベースでなくてもよく(即ち、クラウド・演算環境の外部で実装されてもよく)、又は部分的にクラウド・ベースであってもよい。
クラウド演算環境322は、プラットフォーム320をホストする環境を含む。クラウド・演算環境322は、プラットフォーム320をホストするシステム及び/又は装置の物理的な位置及び構成に関する知識をエンド・ユーザー(例えば、ユーザー装置310)に要求しない演算、ソフトウェア、データ・アクセス、ストレージ等のサービスを提供することができる。図示のように、クラウド演算環境322は、演算リソース324のグループ(全体的には“演算リソース(複数形)324”と称し、個々には“演算リソース(単数形)324”と称する)を含んでもよい。
演算リソース324は、1つ以上のパーソナル・コンピュータ、ワークステーション・コンピュータ、サーバー装置、又は他のタイプの演算及び/又は通信装置を含む。幾つかの実装では、演算リソース324は、プラットフォーム320をホストしてもよい。クラウド・リソースは、演算リソース324において実行する演算インスタンス、演算リソース324において提供される記憶装置、演算リソース324によって提供されるデータ転送装置などを含んでもよい。幾つかの実装では、演算リソース324は、有線接続、無線接続、又は有線及び無線接続の組み合わせを介して、他の演算リソース324と通信することができる。
図3に更に示すように、演算リソース324は、1つ以上のアプリケーション(“APP”)324-1、1つ以上の仮想マシン(“VM”)324-2、仮想化されたストレージ(“VS”)324-3、1つ以上のハイパーバイザ(“HYP”)324-4のようなクラウド・リソースのグループを含む。
アプリケーション324-1は、ユーザー装置310及び/又はプラットフォーム320によって提供又はアクセスされることが可能な1つ以上のソフトウェア・アプリケーションを含む。アプリケーション324-1は、ユーザー装置310上にソフトウェア・アプリケーションをインストールして実行する必要性を排除することができる。例えば、アプリケーション324-1は、プラットフォーム320に関連するソフトウェア、及び/又はクラウド演算環境322を介して提供されることが可能な他の任意のソフトウェアを含んでもよい。幾つかの実装では、1つのアプリケーション324-1は、仮想マシン324-2を介して、1つ以上の他のアプリケーション324-1へ/からの情報を送信/受信することができる。
仮想マシン324-2は、物理マシンのようなプログラムを実行するマシン(例えば、コンピュータ)のソフトウェア実装を含む。仮想マシン324-2は、仮想マシン324-2による現実の何らかのマシンに対する用途及び対応の程度に応じて、システム仮想マシン又はプロセス仮想マシンの何れかであってもよい。システム仮想マシンは、完全なオペレーティング・システム(“OS”)の実行をサポートする完全なシステム・プラット・フォームを提供することができる。プロセス仮想マシンは、単一のプログラムを実行してもよく、単一のプロセスをサポートしてもよい。幾つかの実装では、仮想マシン324-2は、ユーザー(例えば、ユーザー装置310)に代わって実行することができ、データ管理、同期化、又は長時間データ転送のようなクラウド演算環境322のインフラストラクチャを管理することができる。
仮想化された記憶装置324-3は、演算リソース324の記憶システム又は装置内で仮想化技術を使用する1つ以上の記憶システム及び/又は1つ以上の装置を含む。幾つかの実装では、記憶システムのコンテキスト内で、仮想化のタイプは、ブロック仮想化及びファイル仮想化を含んでもよい。ブロック仮想化は、物理ストレージ又はヘテロジニアス構造に関係なく、ストレージ・システムがアクセスを受けることができるように、物理ストレージからの論理ストレージの抽象化(又はセパレーション)を参照することができる。このセパレーションは、エンド・ユーザーのストレージをアドミニストレータがどのように管理するかについての柔軟性を、ストレージ・システムのアドミニストレータに許可することができる。ファイル仮想化は、ファイル・レベルでアクセスされるデータと、ファイルが物理的に格納される場所との間の依存関係を排除することができる。これは、ストレージの使用、サーバーの統合、及び/又は非破壊的なファイル移動のパフォーマンスを最適化できるようにする可能性がある。
ハイパーバイザ324-4は、複数のオペレーティング・システム(例えば、“ゲスト・オペレーティング・システム”)が、演算リソース324のようなホスト・コンピュータ上で同時に実行することを可能にするハードウェア仮想化技術を提供することができる。ハイパーバイザ324-4は、ゲスト・オペレーティング・システムに対して仮想オペレーティング・プラットフォームを提示し、ゲスト・オペレーティング・システムの実行を管理することができる。様々なオペレーティング・システムの複数のインスタンスが、仮想化されたハードウェア・リソースを共有する可能性がある。
ネットワーク330は、1つ以上の有線及び/又は無線ネットワークを含む。例えば、ネットワーク330は、セルラー・ネットワーク(例えば、第5世代(5G)ネットワーク、ロング・ターム・エボリューション(LTE)ネットワーク、第3世代(3G)ネットワーク、符号分割多元接続(CDMA)ネットワーク等)、公衆陸上移動網(PLMN)、ローカル・エリア・ネットワーク(LAN)、ワイド・エリア・ネットワーク(WAN)、メトロポリタン・エリア・ネットワーク(MAN)、電話網(例えば、公衆交換電話網(PSTN))、プライベート・ネットワーク、アドホック・ネットワーク、イントラネット、インターネット、光ファイバ・ベースのネットワーク等、及び/又はこれら又は他のタイプのネットワークの組み合わせを含んでもよい。
図3に示すデバイス及びネットワークの数及び配置は、一例として提供されている。実際には、図3に示すものに対して、追加の装置及び/又はネットワーク、より少ない装置及び/又はネットワーク、異なる装置及び/又はネットワーク、又は別様に配置された装置及び/又はネットワークが存在してもよい。更に、図3に示す2つ以上のデバイスは、単一のデバイス内に実装されてもよいし、又は図3に示す単一のデバイスは、複数の分散されたデバイスとして実装されてもよい。追加的又は代替的に、環境300のデバイス・セット(例えば、1つ以上のデバイス)は、環境300の別のデバイス・セットによって実行されるものとして説明される1つ以上の機能を実行してもよい。
図4は、図3の1つ以上のデバイスの例示的なコンポーネントのブロック図である。
装置400は、ユーザー装置310及び/又はプラットフォーム340に対応してもよい。図4に示すように、装置400は、バス410、プロセッサ420、メモリ430、記憶コンポーネント440、入力コンポーネント450、出力コンポーネント460、及び通信インターフェース470を含んでもよい。
バス410は、装置400のコンポーネント間の通信を可能にするコンポーネントを含む。プロセッサ420は、ハードウェア、ファームウェア、又はハードウェアとソフトウェアの組み合わせで実装される。プロセッサ420は、中央処理ユニット(CPU)、グラフィックス処理ユニット(GPU)、加速処理ユニット(APU)、マイクロプロセッサ、マイクロコントローラ、デジタル信号プロセッサ(DSP)、フィールド・プログラマブル・ゲート・アレイ(FPGA)、特定用途向け集積回路(ASIC)、又は別のタイプの処理コンポーネントである。幾つかの実装では、プロセッサ420は、機能を実行するようにプログラムされることが可能な1つ以上のプロセッサを含む。メモリ430は、ランダム・アクセス・メモリ(RAM)、リード・オンリー・メモリ(ROM)、及び/又は、別のタイプのダイナミック又はスタティック記憶装置(例えば、フラッシュ・メモリ、磁気メモリ、及び/又は、光メモリ)であって、プロセッサ420による使用のための情報及び/又は命令を記憶するものを含む。
記憶コンポーネント440は、装置400の動作及び使用に関連する情報及び/又はソフトウェアを記憶する。例えば、記憶コンポーネント440は、ハード・ディスク(例えば、磁気ディスク、光ディスク、光磁気ディスク、及び/又はソリッド・ステート・ディスク)、コンパクト・ディスク(CD)、デジタル多用途ディスク(DVD)、フロッピー・ディスク、カートリッジ、磁気テープ、及び/又は他のタイプの非一時的なコンピュータ読み取り可能な媒体を、対応するドライブと共に含んでもよい。
入力コンポーネント450は、ユーザー入力(例えば、タッチ・スクリーン・ディスプレイ、キーボード、キーパッド、マウス、ボタン、スイッチ、及び/又はマイクロホン)等を介して情報を受信することを、装置400が実行できるようにするコンポーネントを含む。追加的又は代替的に、入力コンポーネント450は、情報をセンシングするためのセンサー(例えば、グローバル・ポジショニング・システム(GPS)コンポーネント、加速度計、ジャイロスコープ、及び/又はアクチュエータ)を含んでもよい。出力コンポーネント460は、デバイス400(例えば、ディスプレイ、スピーカ、及び/又は1つ以上の発光ダイオード(LED))からの出力情報を提供するコンポーネントを含む。
通信インターフェース470は、装置400が有線接続、無線接続、又は有線及び無線接続の組み合わせ等を介して他の装置と通信することを可能にするトランシーバのようなコンポーネント(例えば、トランシーバ及び/又は別個の受信機と送信機)を含む。通信インターフェース470は、デバイス400が、他のデバイスから情報を受信し、及び/又は他のデバイスへ情報を提供することを可能にする。例えば、通信インターフェース470は、イーサーネット・インターフェース、光インターフェース、同軸インターフェース、赤外線インターフェース、無線周波数(RF)インターフェース、ユニバーサル・シリアル・バス(USB)インターフェース、Wi-Fiインターフェース、セルラー・ネットワーク・インターフェース等を含んでもよい。
装置400は、本件で説明される1つ以上のプロセスを実行することができる。装置400は、メモリ430及び/又は記憶コンポーネント440のような非一時的なコンピュータ読み取り可能な媒体によって記憶されたソフトウェア命令を実行するプロセッサ420に応答して、これらのプロセスを実行してもよい。コンピュータ読み取り可能な媒体は、本件では非一時的なメモリ・デバイスとして定義される。メモリ・デバイスは、単一の物理ストレージ・デバイス内のメモリ空間、又は複数の物理ストレージ・デバイスに分散されたメモリ空間を含む。
ソフトウェア命令は、メモリ430及び/又はストレージ・コンポーネント440内に、別のコンピュータ読み取り可能な媒体から、又は通信インターフェース470を介して別の装置から読み込まれてもよい。実行されると、メモリ430及び/又はストレージ・コンポーネント440に記憶されたソフトウェア命令は、プロセッサ420に、本件で説明される1つ以上のプロセスを実行させることができる。追加的又は代替的に、ハードワイヤード回路が、ソフトウェア命令の代わりに又はそれと組み合わせて使用され、本件で説明される1つ以上のプロセスを実行することができる。従って、本件で説明される実装は、ハードウェア回路とソフトウェアの何らかの特定の組み合わせに限定されない。
図4に示すコンポーネントの数及び配置は、一例として提供されている。実際には、装置400は、図4に示されるものに対して、追加のコンポーネント、より少ないコンポーネント、異なるコンポーネント、又は別様に配置されたコンポーネントを含んでもよい。追加的又は代替的に、デバイス400のコンポーネントのセット(例えば、1つ以上のコンポーネント)は、デバイス400のコンポーネントの別のセットによって実行されるものとして説明される1つ以上の機能を実行してもよい。
ポスト・フィルタリングを用いたブロック・ワイズ・ニューラル画像圧縮のための方法及び装置をこれから詳細に説明する。
本開示はNICのためのブロック・ベースのイントラ予測及び残差コーディング・フレームワークを記述している。従来の予測メカニズムはNICに修正され、NICコーディング効率は大幅に改善される。オリジナル・ピクセルを符号化する代わりに、予測ブロックとオリジナル・ブロックの間の残差が符号化される。
予測コンポーネント530のDNNは、少数の畳み込み層及びデコンボリューション層を含んでもよい。異なる数の再構成されたブロックを、コンテキスト・エリアとしてサポートするために、完全に接続された層が、イントラ予測コンポーネント530のDNNで使用されることも可能である。例えば、画像超解像度で使用されるDNNを、(出力サイズを入力サイズと同じであるように変更すること等によって)本件で使用することが可能である。
図6に記載されているように、デコーダ600は、ブロック選択信号、符号化されたブロック残差r-bl ^ 、又は符号化されたブロックbl ^ を含むビットストリームにおけるブロック・レベル情報に従って画像を再構成する。ブロック選択信号は、現在のブロックを復号化する方法を示す。ブロックがレギュラーDNNベースの圧縮方法を使用する場合、それは、bl ^をDNNデコーダ520へ送信して、再構成された対応するブロックbl を生成し、後にこれは一組の以前の再構成ブロックに追加される。ブロックが予測ベースの圧縮方法を使用する場合、一組の以前の再構成ブロック{b0 ,b1 ,...,bi-1 }が与えられると、(エンコーダ側と同じ)イントラ予測コンポーネント530のDNNは、予測された現在のブロックbi’を計算するために使用され、これは、復号化された残差ブロックr-bl に加算器570によって加算されて、再構成ブロックbl を生成する。次いで、この再構成されたブロックbl は、一組の以前の再構成されたブロック{b0 ,b1 ,...,bi-1 }に追加される。実施形態では、デコーダ側のイントラ予測コンポーネント530、DNNデコーダ520、DNN予測残差デコーダ560は、エンコーダ側と同じブロック・ワイズ対応メカニズムを使用する。デコーダ600はまた、デブロッキングDNN及びポスト・エンハンスメント型DNNを有する。再構成されたブロックは、ブロック間のアーチファクトを含む可能性があるx’を形成する。従ってx’はそのようなアーチファクトを最小化するために使用されるデブロッキングDNNへ送られる。将来、損失を低減するために、画像は、最終的に再構成されたxを生成するために、ポスト・エンハンスメントDNNへ送られる。デブロッキングDNN及びポスト・エンハンスメントDNNは、少数の畳み込み層を含んでもよい。例えば、画像超解像度で使用されるDNNを、(出力サイズを入力サイズと同じであるように変更すること等によって)本件で使用することが可能である。
実施形態では、DNNエンコーダ510は、DNNエンコーダを使用してブロックbiを符号化する。DNN予測残差エンコーダ550は、予測残差符号化DNNを使用して、残差r_biを符号化する。DNNデコーダ520は、DNNデコーダを使用して、符号化された残差bl ^を復号化する。DNN予測残差デコーダ560は、予測残差復号化DNNを使用して、符号化された残差r_bl を復号化する。DNNエンコーダとDNNデコーダはVAE構造をとり、予測残差符号化DNNと予測残差復号化DNNもVAE構造をとる。DNNエンコーダ/デコーダと予測残差符号化/復号化DNNの構造は、異なっていてもよいし或いは同じであってもよい。
本開示は、イントラ予測コンポーネント530のDNN、DNNエンコーダ/デコーダ、及び予測残差符号化/復号化DNN、デブロッキングDNN、及びポスト・エンハンスメントDNNのための特定のネットワーク構造に関して如何なる制約も課していない。本開示は、ブロック・サイズ、画像をブロックに分割する方法、及びブロックの走査順序に関して如何なる制限も課していない。
以下は、上述の予測ベースのDNNエンコーダ/デコーダ・アーキテクチャを実装するための幾つかの実施形態である。
実施形態では、HEVC及びVVCにおけるもののような従来のビデオ・コーディング・システムにおけるブロッキング・パーティショニングを採用することが可能である。サンプルの正方形配列であるコーディング・ツリー・ユニット(coding tree unit,CTU)は、基本的な処理単位と考えられる。ピクチャは一連のCTUに分割されることが可能である。潜在的な更なるパーティション化が可能であり、CTUの下で、より小さなブロックを使用することが可能である。CTUサイズは、CTU内部の32×32、64×64、128×128等であるとることが可能である。上述の予測ベースのDNNエンコーダ/デコーダを実施するために使用されるブロックは、CTU内のコーディング・ブロック又は予測ブロックであってもよい。
別の実施形態では、従来のビデオ・コーディング・システムにおけるものを採用する以外に、簡略化されたブロック・パーティショニング方法が使用されてもよい。例えば、ピクチャは一連のMxNブロックに分割されることが可能である。各ブロックに関し、それは、四分木パーティションを使用して、4つのより小さなブロックに更に分割されてもよい。ブロックを分割するかどうかは、ビットストリームでシグナリングすることが可能であり、或いは学習ベースのアプローチで推論することが可能である。
実施形態では、上述の予測ベースの方法が、画像全体に関して使用される(そして画像全体はブロックにパーティション化される)。別の実施形態では、最初に画像が幾つかのパッチに分割される可能性があり、各パッチについて、更にブロックにパーティション化され、画像圧縮がパッチ・レベルで並列に実行される。
実施形態では、スキャン開始ブロックは、左上コーナー、右上コーナー、左下コーナー、及び右下コーナーにあってもよい。そして、スキャン順序は、幅を最初にするだけでなく、高さを最初にすることも可能である。
実施形態では、予測DNNは、ブロックを予測するために、全ての再構成されたブロックを入力として取り込む。別の実施形態では、予測DNNは、ブロックを予測するために、部分的に再構成されたブロック(例えば、予測されるべきものに隣接するブロック)を取り込む。
実施形態では、予測DNNは:1)再構成されたブロックを潜伏空間に変換するための複数の畳み込み層のセット;2)全結合層、又は連結演算、又は空間ピラミッド・プーリング層であって、異なる再構成されたブロックからの潜在空間を一緒に統合するもの;及び3)統合された潜在空間からターゲット・ブロックの予測を生成するために使用されるデコンボリューション・ネットワーク、という3つの主要なコンポーネントから構成される。
実施形態では、イントラ予測コンポーネント530は、図5Bに示すように、3つのコンポーネントから構成される。再構成されたブロックは、先ず、それら位置に応じて1つ以上のグループにグループ化される。図5Bは一例として3つのグループを示していることに留意されたい。実施形態では、グループの数は、1(即ち、1つのグループ内に全ての再構成されたブロックがある)からブロックの数(即ち、各々の再構成されたブロックはグループ内にある)までの範囲内にある。変換コンポーネント532において、各グループについて、変換532A、532B、又は532Nは、ブロックを潜在空間に変換する。変換コンポーネント532は、少数の畳み込み層から構成されてもよい。それはまた、正しい予測を行うために、再構成されたブロックの中で見るべき最も重要な場所を強調することが可能なアテンション・メカニズムから構成されることも可能である。統合コンポーネント534は、潜在空間を一緒に統合する。潜在空間を結合する能力を有する任意のオペレーション又はDNNレイヤが本件で使用可能である。例えば、それは全結合層、連結演算、又は空間ピラミッド・プーリング層であるとすることが可能である。予測コンポーネント536において、予測モジュールは、統合コンポーネント534によって生成された統合された潜在空間に従って、ブロックbl を予測する。通常、それはデコンボリューション層のセットを含む。それはまた、正しい予測を行うために、再構成されたブロックの中で見るべき最も重要な場所を強調することが可能なアテンション・メカニズムから構成されることも可能である。変換コンポーネント532、統合コンポーネント534、及び予測コンポーネント536は、訓練プロセス中に学習が行われるDNNである。
上記においてDNNの使用を通じてピクチャを符号化及び復号化する方法に関する幾つかの方法を説明する。サンプルの再構成後に、再構成されたブロックは、ブロックの境界の間にアーチファクトを含む可能性があるx’を形成する。次いで、x’は、このようなアーチファクトを最小化してx”を生成するために使用されるデブロッキングDNNに送られる。復号化された画像品質を改善するために、画像は、最終的に再構成されたxを生成するために、ポスト・エンハンスメントDNNへ送られる。図7は、後処理コンポーネント700の実施形態のワークフローを示す。デブロッキング・コンポーネント710及びポスト・エンハンスメントコンポーネント720の実施形態の詳細はそれぞれ以下のセクションで行われる。
デブロッキング・コンポーネント710及びポスト・エンハンスメント・コンポーネント720に関する処理の順序は、交換されてもよい。即ち、ポスト・エンハンスメント・コンポーネント720が最初に使用され、デブロッキング・コンポーネント710に続いてもよい。
ブロック間のアーチファクトを更に低減するために、以下のデブロッキング方法のうちの1つ(又はその組み合わせ)を使用することができる。図8は、デブロッキング・コンポーネント710の実施形態のワークフローを示す。描写を容易にするために、図8には4つの等しいサイズのブロックのみが存在している。一般的なケースでは、画像は多数のブロックにパーティション化されることが可能であり、各ブロックのサイズは異なってもよいことに留意されたい。
ブロック間の(ブロック境界エリアにおける)アーチファクトを低減するために、DNNベースのデブロッキング・モデルを使用することができる。先ず、ブロック810から、隣接するブロックによって誘発されるアーチファクトを含むエリア (このような領域は、以下では境界エリア820として示される)を取り出すことができる。図8に示されるように、境界エリアは、隣接する2つのブロックからの2つのサブ・エリアから構成され、境界エリアのサイズは、2m×n又はn×2mであり、nはブロックの長さであり、mはブロックから取り出されるエリアの高さである。mの値は整数として変化する可能性がある。例えば、それは4ピクセルであるとすることが可能である。境界エリアは、アーチファクトを低減して、デブロッキング済みエリア830を生成するためにデブロッキング・コンポーネント710へ送られる。次いで、図8に示すように、デブロッキング済みエリアは、画像内で840にアップデートされる。
図8のケースでは、境界エリアは、2つの隣接するブロックから特定される。しかしながら、図9に示されるように一例として、境界エリア910は、複数のブロックから構成されてもよい。
図8は、境界エリアを改善するために、単一のデブロッキング・モデルを使用する方法を示す。図10は、マルチ・モデル・デブロッキング・コンポーネント1040A、1040B、及び1040Nの実施形態のワークフローを示す。キーとなるアイディアは、異なるタイプの境界エリア1010に対して、対応するデブロッキング・モデルが、アーチファクトを除去するために使用されることである。図10に示されるように、境界エリア1010が取り出されると、分類コンポーネント1020が(DNNベースのモデル、又はビデオ・コーデックで使用されている従来の方法であるとすることが可能である)、境界エリアを、異なるカテゴリに分類するために使用される。次いで、境界エリア1030は、それらのカテゴリに応じて、異なるデブロッキング・コンポーネント1040A、1040B、及び1040Nへ送られる。実際には、境界エリアのタイプを定義するために、以下のメトリックを使用することができる(但し、それらに限定されない)。第1に、境界エリアの内容を使用することが可能である。例えば、高い周波数の中身を有する境界エリアは、低い周波数の中身をデブロッキングするために設計されたモデルとは異なるモデルに送られる。第2に、アーチファクトの強度を使用することが可能である。マルチ・モデル・デブロッキング・コンポーネント1040A、1040B、及び1040Nにおける境界エリアは、図10に描かれているものに限定されないことに留意されたい。図9に描かれているデブロッキング・エリアもまた、マルチ・モデルのデブロッキング方法を使用することが可能である。上記において、エリアの周波数は、エリア内の異なるサンプルの最大差によって測定されてもよい。一例では、境界の一方の側のエッジ近傍のサンプルの差が測定されてもよいし;別の例では、境界の他方の側のエッジ近傍のサンプルの差が測定されてもよい。
図8及び10に描かれているDNNデブロッキング・モデルの主なゴールは、ブロック間のアーチファクトを除去することである。境界に近接したピクセルは、境界から離れたピクセルと比較して、より強くデブロッキングされてもよい。デブロッキング・モデルは、少数の畳み込み層を含んでもよい。CNNベースのアテンション・メカニズム(非ローカル・アテンション、SEnetなど)と残差ネット(convnetと活性化関数のセットを含むもの)が使用されてもよい。例えば、画像の超解像度で使用されるDNNが、(出力サイズを入力サイズと同じであるように変更すること等によって)本件で使用されてもよい。
上記においてDNN又はその他の学習に基づく方法を利用して境界エリア上でデブロッキングをどのように実行するかについての方法が説明されている。代替的に、エンコーダ及びデコーダは、従来のデブロッキング方法又は本件で説明される方法の中で選択されることが可能である。選択の決定は、スライス/ピクチャ・レベル、ピクチャのグループ、又はシーケンス・レベル、のような様々なレベルで行うことが可能である。選択は、シグナリング・フラグを送信することによって行うことが可能であり、又は内容の分析から推測されることも可能である。
上記においてDNN又はその他の学習に基づく方法を利用して境界エリア上でデブロッキングをどのように実行するかについての方法が説明されている。代替的に、エンコーダ及びデコーダは、本件で説明される方法に加えて、種々のレベルの境界強度を適用することが可能であり、但し、ピクセルにおけるDNN導出調整は境界強度のデフォルト・レベルにあると仮定する。境界条件とブロック・コーディング特徴を分析することにより、デフォルト調整を拡大又は縮小するために、異なるレベルのBSが割り当てられてもよい。
デブロッキング・モジュールを使用することによりアーチファクトを低減した後、再構成された画像がエンハンスメント・モジュールに送られ、最終的に再構成された画像xが生成される。図11は、ポスト・エンハンスメント・コンポーネント720の実施形態のワークフローを示す。描写を簡易にするために、図11では、4つの等しいサイズのブロックのみが存在している。一般的なケースでは、画像は多数のブロックにパーティション化される可能性があり、各ブロックのサイズは異なる可能性があることに留意されたい。
画像の質を高めるために、DNNベースのポスト・エンハンスメント・モデルを、ポスト・エンハンスメント720コンポーネントとして使用することができる。先ず、ブロック1110から、デブロッキング・モデルへは送付されないエリア(このようなエリアは、以下では残りのブロック1120として示される)を取り出すことができる。図11に示すように、残りのブロック1120は、1つのブロックからのエリアで構成され、境界エリアのサイズは、(n-m)×(n-m)であり、ここで、nはブロックの辺の長さであり、mはデブロッキングのためのエリアの長さである。mの値は整数である。それは例えば4ピクセルである。残りのブロック1120は、エリアの品質を更に高めて、エンハンスト・ブロック1140を生成するために、ポスト・エンハンスメント・コンポーネント720へ送られる。次いで、エンハンスト・ブロック1140は、画像に戻してアップデートされる(1150)。代替的に、残りのブロックは、全体の一部分においてデブロッキング境界エリアとオーバーラップしてもよい。後者の場合、残りのブロックは、コーディング・ブロック全体であってもよい。
上記の実施形態は、残りのブロックを改善するために単一のポスト・エンハンスメント・モデルを使用する方法を説明している。図12は、複数モデルのポスト・エンハンスメント・コンポーネント1230A、1230B、及び1230Nの実施形態のワークフローを示す。キーとなるアイディアは、異なるタイプの残りのブロック1120について、対応するポスト・エンハンスメント・モデルが、品質を改善するために使用されることである。図12に示されるように、残りのブロック1120が取り出されると、分類コンポーネント1210が(DNNベースの分類モデル、又はビデオ・コーデックで使用されている従来の方法であるとすることが可能である)、残りのブロックを、異なるカテゴリに分類するために使用される。従って、分類された残りのブロック1220は、それらのカテゴリに応じて、異なるポスト・エンハンスメント・コンポーネント1230A、1230B、及び1230Nへ送られる。実際には、残りのブロックのタイプを定義するために、以下のメトリックが使用される(但し、それらに限定されない)。例えば、残りのブロック・エリアの内容が使用してもよい。この例では、高い周波数の中身を有する残りのブロックは、低い周波数の中身を強調するために設計されたモデルとは異なるモデルに送られる。
ブロック・レベルで画像を強調する代わりに、画像全体を一度に強調するポスト・エンハンスメント・モデルが考慮されてもよい。図13は、残りのブロック及び境界エリアを含む画像1320全体に対するポスト・エンハンスメント・コンポーネント1310の実施形態のワークフローを示す。描写を簡易にするために、図13では、4つの等しいサイズのブロックのみが存在している。一般的なケースでは、画像は多数のブロックにパーティション化される可能性があり、各ブロックのサイズは異なる可能性があることに留意されたい。このようにして画像を強調することにより、アーチファクト境界は更に小さくなる。
図11-13に描かれているDNNエンハンスメント・モデルの主な機能は、画像の品質を高めることである。ポスト・エンハンスメント・コンポーネント720は、少数の畳み込み層を含んでもよい。CNNベースのアテンション・メカニズム(非ローカル・アテンション、SEnetなど)と残差ネット(convnetと活性化関数のセットを含むもの)が、エンハンスメントのゴールを達成するために使用されてもよい。例えば、画像の超解像度で使用されるDNNが、(出力サイズを入力サイズと同じであるように変更すること等によって)本件で使用されてもよい。
上述の方法では、2つのモジュールが、重複する領域を有する場合、同じサンプルが、ポスト・エンハンスメント・コンポーネント720及びデブロッキング・コンポーネント710の両方からの修正の影響を受ける。その場合、ポスト・エンハンスメントからの修正されたサンプルはP1, P2, ... と表され;同様に、デブロッキングからの修正されたサンプルはD1, D2, ... と表される。図14に示すように、Pi及びDiサンプル(i=0,1, ...)の両方からの加重平均が、Aiとして示される最終的な出力サンプルを生成するために使用される。このプロセスは、境界エリアでのピクセル・ブレンドと言及される。例えば、Ai(i=0,1, ...N-1)は、ポスト・エンハンスメント・エリア1410とデブロッキング・エリア1420とのブレンド後の重複エリアにおける2つのサンプルを表す。これらは、Ai=S(wi*Pi + (1-wi)*Di) のように導出することが可能であり、ここで、wiは、エリア内の位置 iに関して指定される重みパラメータである。異なる位置については、ウェイトが異なる可能性がある。一例では、wiは常に0.5に設定されている。別の例では、wi値は2つのモジュールまでの距離に依存する。一般に、一方のモジュールにより近い位置は、同じモジュールにより生成されるサンプルに関して、より大きなウェイトの割り当てを受ける。図14における一例では、A1=5/8*P1+3/8*D1; A2=3/8*P2+5/8*D2である。
訓練プロセスの目標は、予測DNN、符号化DNN、復号化DNN、予測残差符号化DNN、予測残差復号化DNN、デブロッキングDNN、及びポスト・エンハンスメントDNNを学習することである。
訓練プロセスにおいて、学習されるべき上述のDNNのウェイト係数は、例えば予め訓練された対応するDNNモデルを使用して、又はそれらを乱数に設定することによって、先ず初期化される。次いで、入力トレーニング画像xが与えられ、図5Aで説明された符号化プロセスを通って、ビットストリームに符号化された情報を生成し、次いでそれは図6で説明された復号化プロセスを通って、画像xを計算して再構成することになる。NICについては、2つの競合するターゲットが存在する可能性があり:より良い再構成品質_対_より少ないビット消費である。品質損失関数D(x, x)は、再構成品質を測定するために使用され、これは、通常、歪損失と呼ばれ、従来のPSNR、MS-SSIM、又は両者の重み付けされた組み合わせのようなものである。レート損失
Figure 2023504817000007

が、圧縮された表現のビット消費を測定するために計算される。従って、トレードオフ・ハイパーパラメータλを用いて、ジョイント・レート歪(R-D)損失を最適化する:
Figure 2023504817000008
ここで、Eは、符号化される前のオリジナル・ブロック残差と比較した場合の、復号化されたブロック残差の歪を測定するものであり、これは、残差符号化/復号化DNNと符号化/復号化DNNに対する正則化損失(regularization loss)として作用する。βは、正則化損失の重要度のバランスをとるためのハイパーパラメータである。
大きなλを用いる場合の訓練は、より小さな歪を有するが、より多くのビット消費を伴う圧縮モデルをもたらし、逆もまた同様である。DNNのウェイト係数を学習するために、符号化DNNと予測残差符号化DNNは、図15に示すように、2つの部分に分解される。同様に、復号化DNNと予測残差復号化DNNは、図16に示すように、2つの部分に分解される。
図15は、実施形態によるDNN符号化及びDNN予測残差符号化のための装置1500のブロック図である。図16は、実施形態によるDNN復号化及びDNN予測残差復号化のための装置1600のブロック図である。
図15に示すように、符号化DNNは、ニューラル・エンコーダ1510とそれに続くエンコーダ1520とに分解される。また、対応する処理モジュールは、ニューラル符号化モジュールとそれに続く符号化モジュールとに分解される。同様に、予測残差符号化DNNは、ニューラル残差エンコーダ1530とそれに続く残差エンコーダ1540とに分解される。また、対応する処理モジュールは、ニューラル予測残差符号化モジュールとそれに続く予測残差符号化モジュールとに分解される。実施形態では、ニューラル・エンコーダ1510又はニューラル残差エンコーダ1530はDNNであり、DNNは訓練プロセス中に学習され、検証段階で展開される。他方、エンコーダ1520又は残差エンコーダ1540は、訓練及び検証で異なる。検証段階では、エンコーダ1520又は残差エンコーダ1540は、実際のエンコーダであり、これは量子化器とそれに続くエントロピー・エンコーダとを含む可能性がある。訓練段階では、エンコーダ1520又は残差エンコーダ1540は、統計データ・サンプラを使用して、実際の量子化器の効果を近似し、エントロピー・エンコーダは訓練中はスキップされる。
同様に、図16に示すように、復号化DNNはデコーダ1610とそれに続くニューラル・デコーダ1620とに分解される。また、対応する処理モジュールは、復号化モジュールとそれに続くニューラル復号化モジュールとに分解される。予測残差復号化DNNは、残差デコーダ1630とそれに続くニューラル残差デコーダ1640とに分解される。また、対応する処理モジュールは、予測残差復号化モジュールとそれに続くニューラル予測残差復号化モジュールとに分解される。
実施形態では、ニューラル・デコーダ1620又はニューラル残差デコーダ1640はDNNであり、DNNは訓練プロセス中に学習され、検証段階で展開される。他方、デコーダ1610又は残差デコーダ1630は、訓練及び検証で異なる。検証段階では、デコーダ1610又は残差デコーダ1630は、実際のデコーダであり、これはエントロピー・デコーダとそれに続く逆量子化器とを含む可能性がある。訓練段階では、デコーダ1610又は残差デコーダ1540はスキップされる。
本開示は、ニューラル・エンコーダ1510、エンコーダ1520、デコーダ1610、ニューラル・デコーダ1620、ニューラル残差エンコーダ1530、残差エンコーダ1540、残差デコーダ1630、又はニューラル残差デコーダ1640で使用される方法に如何なる制限も課していない。換言すれば、本開示のNICフレームワークは、様々なタイプの符号化DNN、復号化DNN、予測残差符号化DNN、及び予測残差復号化DNNを収容することができる。
一実施形態では、このフレームワークは、一般に、スケール・ハイパープライア(scale-hyperprior)エンコーダ・デコーダ・フレームワーク(又は混合ガウシアン尤度(Gaussian Mixture Likelihoods)フレームワーク)及びその変形、RNNベースの再帰的圧縮方法及びその変形のような、任意のDNNベースの画像圧縮方法を使用することができる。
別の実施形態では、フレームワークは、JPEG、JEPG2000、BPGのような任意の既存の画像圧縮方法を用いて動作することができる。
学習プロセスの実施形態において、予測DNN、符号化DNN、予測残差符号化DNN、符号化DNN、予測残差復号化DNN、デブロッキングDNN、及びポスト・エンハンスメントDNNは、エンド・ツー・エンド(E2E)方式で、上記の逆伝搬勾配に基づいて一緒に更新され得ることは、言及するに価する。また、これらのDNNのうちの何れも個別に学習することが可能である。例えば、予測DNNは、何らかのデータセット(上述の訓練プロセスで使用されたデータセットと同じか又は異なるもの)を用いて個別に訓練されることが可能であり、それらは上述の訓練プロセスでは固定され、その場合においては、残りのDNNのウェイト係数のみが更新される。
図17Aに示されるように、ブロック1720(サイズ w×h)を予測するために、以前に再構成されたピクセル1710がコンテキストとして使用されてもよい。コンテキスト・ピクセルは、予測モジュールへの入力として取り込まれ、ブロックの予測サンプルが生成される。以下では、再構成されたピクセル1710からコンテキスト・エリアを形成する方法によって、予測方法が議論される。
以下の全ての実施形態では、ラスタ・スキャン順序が使用され、一例として左上ブロックから始まっていることに留意されたい。一般的なケースでは、スキャン開始ブロックは、左上コーナー、右上コーナー、左下コーナー、及び右下コーナーとすることが可能である。そして、スキャン順序は、幅を最初に行うだけでなく、高さを最初に行うことも可能である。
HEVC及びVVCでは予測の過去の経験に従って、コンテキスト・エリアは予測されるべきブロックを囲む。実施形態では、再構成されたピクセル1710を、2つの別個のエリアとして考えている(即ち、予測ブロックの上にあるコンテキスト・エリアCaboveと、予測ブロックの左側にあるコンテキスト・エリアCleftであり、ラスタ・スキャン順序で開始点は左上ブロックである)。図17Bは、この予測方法の実施形態を示す。図17Bに示すように、コンテキスト・エリアは‘L’又は‘7’のような形状である。2つのコンテキスト・エリアに基づいてブロックを予測するために、予測モデルは先ずこれら2つのエリア(CaboveとCleft)を潜在表現に変換し、次いで、2つの潜在表現を統合する。このモデルは、統合された潜在表現に基づいて、最終的なブロック予測を生成する。
図17Bに示されるように、実施形態では、左コンテキスト及び上コンテキストのサイズは、2h×w及び2w×h(2つの予測ブロックサイズ)とすることが可能である。他の実施形態において、左コンテキスト及び上コンテキストのサイズは異なってもよく、予測ブロック・サイズの整数倍でなくてもよい。
コンテキスト・エリアをCleftとCaboveにパーティション化する代わりに図17Cに示されるように一実施形態はコンテキスト・エリアを矩形エリアとして考える。それを行うために、パディング処理が必要される可能性がある。図17Cは、パディング・エリアがCaboveとの下とCleftの右側にある例を示す。パディングの後、パディング・エリアとコンテキスト・エリアは、新しい矩形領域を、予測モデルへの入力として形成する。他の実施形態では、パディング・エリアは予測ブロックと同じであるとすることが可能であり、又は、パディング・エリアは余分なブロックを含むことが可能であることに留意されたい(このアイディアは、パディング・エリアとコンテキスト・エリアを統合して矩形エリアを形成するものであり、従ってパディング・エリアは変化する可能性がある)。ツー・コンテキスト・エリア予測法(Two Context Area Prediction Method)とは異なり、パディング法の予測モデルへの入力は1つの矩形領域である。次いで、予測モデルは、入力を取り込み、潜在表現に変換し、そしてブロックの最終的な予測サンプルを生成する。
以下は、議論しているパディング・エリアを充填するパディング方法の幾つかの実施形態である。
一実施形態では、ゼロ・パディングを使用して、上述のエリアを埋めてもよい。
一実施形態では、平均パディングを使用して、上述のエリアを埋めてもよい。その値は、CaboveとCleftを平均化することにより、又は画像全体を平均化することにより、又は画像データセットを平均化することにより(例えば、ImageNETで使用されるゼロ平均化法のようなものにより)計算することができる。
一実施形態では、エリアはCaboveから延長されたピクセルを使用してパディングされてもよい。
一実施形態では、エリアはCleftから延長されたピクセルを使用してパディングされてもよい。
他の実施形態では、エリアは、Cleft及びCaboveから延長されたピクセルの組み合わせ(例えば、和、平均)を使用してパディングされてもよい。
一実施形態では、従来のイントラ予測方法における予測ブロック・サンプル生成プロセスを使用して、パディング・エリアを埋めることが可能であり、但し、パディング・エリアは予測されるべき現在のブロックであると仮定する。このような方法の例は、DCモード、PLANARモード、不均等に重み付けされた平面モード、PDPC (位置依存予測結合)などを含む。
本開示で言及されていない他のパディング方法もまた、パディング予測方法で使用することが可能である。
上記の全てのパディング方法において、パディング・エリアは、予測ブロックよりも大きいことが可能であり、又は予測ブロックと同じ大きさであることも可能である。前者の場合、Caboveの幅は予測ブロックより大きいであろう;後者の場合、Caboveの幅は予測ブロックと同じであろう。同様にパディング・エリアの高さも、予測ブロックと同じであるか又はより大きい可能性がある。
パディングとは異なる別の方法において、周囲のコンテキスト・エリアは、以下のように、矩形形状に変換されてもよい。
図17Dに示されるように、変換方法において、Cleft1730は、水平形状1740に変換され(図示を簡単にするために3ピクセルのみが示されている)、変換されたCleftとCaboveの間の中間エリア(図17D(a)の灰色ピクセル部分1760)をパディングして、矩形コンテキスト・エリア1770を形成する。かくて、コンテキスト・エリアの形状は矩形エリアに(‘L’から‘-’に)変換される。予測モデルへの入力は1つの矩形エリアである。次いで、予測モデルは入力を取り込み、潜在表現に変換し、そしてブロックの最終的な予測を生成する。
一実施形態では、Caboveは垂直形状に変換される。パディングの後に、矩形領域が得られる(‘L’から‘I’)。
一実施形態では、ゼロ・パディングを使用して、中間エリアを埋めてもよい。
一実施形態では、平均パディングを使用して、灰色のエリアを埋めて、灰色のエリア全体が同じ値を使用してパディングされてもよい。その値は、CaboveとCleftを平均化することにより、又は画像全体を平均化することにより、又は画像データセットを平均化することにより(例えば、ImageNETで使用されるゼロ平均化法のようなものにより)計算することができる。
一実施形態では、平均パディングを使用して、中間エリアを埋めてもよい。異なるラインが、異なる値を使用してパディングされてもよい。その値は、Cleft中の同一ライン内のピクセルを平均化することにより、又はCabove中の同一ライン内のピクセルを平均化することにより、又はCleftとCabove双方で同一ライン内のピクセルを組み合わせることにより(例えば、平均、和)、計算することができる。
一実施形態では、中間エリアは、Cabove内の同一ラインから延長されたピクセルを使用してパディングされてもよい。
一実施形態では、中間エリアは、Cleft内の同一ラインから延長されたピクセルを使用してパディングされてもよい。
一実施形態では、中間エリアは、CleftとCabove双方で同一ラインから延長されたピクセルの組み合わせ(例えば、平均、和)を使用して、パディングされてもよい。
一実施形態では、中間エリアは、CleftとCabove双方で同一ラインから延長された最も近いピクセルの組み合わせ(例えば、平均、和)を使用して、パディングされてもよい。即ち、変換後に、同一ラインの隣接する(左右の)ピクセルを使用して、灰色エリアをパディングする。
代替的に、図17D(b)の部分に示されるように、コンテキスト・エリア1730の異なるラインに対して、余分な数のピクセルが、各ラインの総数を等しくするために使用される。即ち、変換1780及びシフト1790の後に、中間エリアをパディングすることなく、矩形エリアを確立することができる。左コンテキスト・エリアの右又は下に余分なピクセルがある場合、上記の任意の方法を使用してパディングされてもよい。
本開示で言及されていない他のパディング方法もまた、パディング予測方法で使用することが可能である。
CaboveとCleftの形状が同一である場合(例えば、予測ブロックが正方形であり、上コンテキスト・エリアの形状が3×w×2wであり、左コンテキスト・エリアの形状が3×2w×wである場合;ここで、wはブロックの幅である)、次の方法を使用して、2つのコンテキスト・エリアを統合してもよい。
2つのコンテキスト・エリアは変換されて、3×2w×2wのコンテキスト・エリアに統合され、予測モデルに送られて、最終的な予測を生成する。
上コンテキスト・エリアは、3×2w×wに変換されてもよい。
左コンテキスト・エリアは、3×w×2wに変換されてもよい。
2つのコンテキスト・エリアは変換され、6×W×2W又は6×2W×Wのエリアに統合され(チャネル毎の連結)、予測モデルに送られて、最終的な予測を生成する。
上コンテキスト・エリアは、3×2w×wに変換されてもよい。
左コンテキスト・エリアは、3×w×2wに変換されてもよい。
他の実施形態では、CaboveとCleftが潜在表現に先ず変換され、次いで、上記の方法を使用して、潜伏表現を統合し、そして最終的な予測を生成することができる。
図18は、実施形態によるスタック化可能なネスト化されたモデル構造を有するマルチ・レート・ニューラル画像圧縮の方法1800のフローチャートである。
幾つかの実装形態では、図18の1つ以上のプロセス・ブロックは、プラットフォーム320によって実行されてもよい。幾つかの実装では、図18の1つ以上のプロセス・ブロックは、プラットフォーム320から分離された、又はプラットフォーム320を含む、別のデバイス又はデバイスのグループ、例えばユーザー・デバイス310によって実行されてもよい。
図18に示すように、オペレーション1810において、方法1800は、第1ニューラル・ネットワークを使用して、入力画像のブロックを符号化するステップを含み、ここで、符号化されたブロックは、再構成されたブロックを生成するために、第2ニューラル・ネットワークを使用してデコーダによって復号化される。
オペレーション1820において、方法1800は、予測ブロックを生成するために、第3ニューラル・ネットワークを使用して、再構成されたブロックに関してイントラ予測を実行するステップを含む。
オペレーション1830において、方法1800は、予測残差を生成するために、入力画像のブロックと生成された予測ブロックとの間の差分を決定するステップを含む。
オペレーション1840において、方法1800は、第4ニューラル・ネットワークを使用して、生成された予測残差を符号化するステップを含む。ここで、符号化された予測残差は、第5ニューラル・ネットワークを使用してデコーダにより復号化される。
オペレーション1850において、方法1800は、復元された予測ブロックを生成するために、復号化された予測残差を、生成された予測ブロックに加えるステップを含む。
方法1800は、更に、入力画像のブロックに関してより少ない損失をもたらすものを、再構成されたブロック及び生成され復元された予測ブロックの中から選択するステップ;及び再構成されたブロック及び復元された予測ブロックの中から選択されたものを示す選択信号を、再構成されたブロック及び復元された予測ブロックの中から選択されたものに対応する、符号化されたブロック及び符号化された予測残差のうちのもの、とともにデコーダへ送信するステップを含んでもよい。符号化されたブロック及び符号化された予測残差のうちの送信されたものは、送信された選択信号に基づいてデコーダにより復号化されることが可能である。
再構成されたブロックに関してイントラ予測を実行するステップは:複数の再構成されたブロックを1つ以上のグループに、複数の再構成されたブロックの位置に基づいてグループ化するステップ;1つ以上の潜在空間を生成するために、1つ以上のグループの各々に関して個々の変換を実行するステップ;生成された1つ以上の潜在空間を統合するステップ;及び予測ブロックを生成するために、統合された1つ以上の潜在空間に関してイントラ予測を実行するステップを含んでもよい。
方法1800は、更に:複数の再構成されたブロックの各々から、アーチファクトを含む境界エリアを取り除くステップ;1つ以上のニューラル・ネットワークを使用して、取り除かれた境界エリアに関してデブロッキングを実行して、アーチファクトを伴わないデブロック化されたエリアを生成するステップ; 及び複数の再構成されたブロックの各々を、生成されたデブロック化されたエリアでアップデートするステップを含んでもよい。
方法1800は、更に:前記複数の再構成されたブロックの各々から、取り除かれた境界エリアを伴わない残りのブロック・エリアを取り除くステップ;エンハンスト・ブロック・エリアを生成するために、少なくとも1つのニューラル・ネットワークを使用して、取り除かれた残りのブロック・エリアに関してポスト・エンハンスメントを実行するステップ;及び複数の再構成されたブロックの各々を、生成されたエンハンスト・ブロック・エリアでアップデートするステップを含んでもよい。
再構成されたブロックに関してイントラ予測を実行するステップは:再構成されたブロックの上にある再構成されたピクセルの第1コンテキスト・エリアと、再構成されたブロックの左にある再構成されたピクセルの第2コンテキスト・エリアとを取得するステップ;潜在表現を生成するために、取得された第1コンテキスト・エリアと取得された第2コンテキスト・エリアの各々に関して個々の変換を実行するステップ;生成された潜在表現を統合するステップ;及び予測ブロックを生成するために、統合された潜在表現に関してイントラ予測を実行するステップを含んでもよい。
再構成されたブロックに関してイントラ予測を実行するステップは:再構成されたブロックの上にある再構成されたピクセルの第1コンテキスト・エリアと、再構成されたブロックの左にある再構成されたピクセルの第2コンテキスト・エリアと、第1コンテキスト・エリアの下及び第2コンテキスト・エリアの右にあるパディング・エリアとを取得するステップ;矩形エリアを取得するために、取得された第1コンテキスト・エリアと、取得された第2コンテキスト・エリアと、取得されたパディング・エリアを統合するステップ;潜在表現を生成するために、取得された矩形エリアに関して変換を実行するステップ;及び予測ブロックを生成するために、生成された潜在表現に関してイントラ予測を実行するステップを含んでもよい。
図18は、方法1800の例示的なブロックを示しているが、幾つかの実装において、方法1800は、図18に示されているものに対して追加のブロック、より少ないブロック、異なるブロック、又は別様に配置されたブロックを含んでもよい。追加的又は代替的に、方法1800のブロックのうちの2つ以上は、並列的に実行されてもよい。
図19は、実施形態によるスタック化可能なネスト化されたモデル構造を有するマルチ・レート・ニューラル画像圧縮の装置1900のブロック図である。
図19に示されるように、装置1900は、第1符号化コード1910と、第1実行コード1920と、決定コード1930と、第2符号化コード1940と、加算コード1950とを含む。
第1符号化コード1910は、第1ニューラル・ネットワークを使用して、入力画像のブロックを符号化することを、少なくとも1つのプロセッサに行わせるように構成されており、符号化されたブロックは、再構成されたブロックを生成するために、第2ニューラル・ネットワークを使用してデコーダによって復号化される。
第1実行コード1920は、予測ブロックを生成するために、第3ニューラル・ネットワークを使用して、再構成されたブロックに関してイントラ予測を実行することを、少なくとも1つのプロセッサに行わせるように構成されている。
決定コード1930は、予測残差を生成するために、入力画像のブロックと生成された予測ブロックとの間の差分を決定することを、少なくとも1つのプロセッサに行わせるように構成されている。
第2符号化コード1940は、第4ニューラル・ネットワークを使用して、生成された予測残差を符号化することを、少なくとも1つのプロセッサに行わせるように構成されており、符号化された予測残差は、第5ニューラル・ネットワークを使用してデコーダにより復号化される。
加算コード1950は、復元された予測ブロックを生成するために、復号化された予測残差を、生成された予測ブロックに加えることを、少なくとも1つのプロセッサに行わせるように構成されている。
プログラム・コードは、更に:入力画像のブロックに関してより少ない損失をもたらすものを、再構成されたブロック及び生成され復元された予測ブロックの中から選択することを、少なくとも1つのプロセッサに行わせるように構成された選択コード;及び再構成されたブロック及び復元された予測ブロックの中から選択されたものを示す選択信号を、再構成されたブロック及び復元された予測ブロックの中から選択されたものに対応する、符号化されたブロック及び符号化された予測残差のうちのもの、とともにデコーダへ送信することを、少なくとも1つのプロセッサに行わせるように構成された送信コードを含んでもよい。符号化されたブロック及び符号化された予測残差のうちの送信されたものは、送信された選択信号に基づいてデコーダにより復号化されてもよい。
第1実行コード1920は、更に:複数の再構成されたブロックを1つ以上のグループに、複数の再構成されたブロックの位置に基づいてグループ化すること;1つ以上の潜在空間を生成するために、1つ以上のグループの各々に関して個々の変換を実行すること;生成された1つ以上の潜在空間を統合すること;及び予測ブロックを生成するために、統合された1つ以上の潜在空間に関してイントラ予測を実行することを、少なくとも1つのプロセッサに行わせるように構成されていてもよい。
前記プログラム・コードは、更に:複数の再構成されたブロックの各々から、アーチファクトを含む境界エリアを取り除くことを、少なくとも1つのプロセッサに行わせるように構成された第1除去コード;1つ以上のニューラル・ネットワークを使用して、取り除かれた境界エリアに関してデブロッキングを実行して、アーチファクトを伴わないデブロック化されたエリアを生成することを、少なくとも1つのプロセッサに行わせるように構成された第2実行コード;及び複数の再構成されたブロックの各々を、生成されたデブロック化されたエリアでアップデートすることを、少なくとも1つのプロセッサに行わせるように構成された第1アップデート・コードを含んでもよい。
プログラム・コードは、更に:複数の再構成されたブロックの各々から、取り除かれた境界エリアを伴わない残りのブロック・エリアを取り除くことを、少なくとも1つのプロセッサに行わせるように構成された第2除去コード;エンハンスト・ブロック・エリアを生成するために、少なくとも1つのニューラル・ネットワークを使用して、取り除かれた残りのブロック・エリアに関してポスト・エンハンスメントを実行することを、少なくとも1つのプロセッサに行わせるように構成された第3実行コード;及び複数の再構成されたブロックの各々を、生成されたエンハンスト・ブロック・エリアでアップデートすることを、少なくとも1つのプロセッサに行わせるように構成された第2アップデート・コードを含んでもよい。
第1実行コード1920は、更に:再構成されたブロックの上にある再構成されたピクセルの第1コンテキスト・エリアと、再構成されたブロックの左にある再構成されたピクセルの第2コンテキスト・エリアとを取得すること;潜在表現を生成するために、取得された第1コンテキスト・エリアと取得された第2コンテキスト・エリアの各々に関して個々の変換を実行すること;生成された潜在表現を統合すること;及び予測ブロックを生成するために、統合された潜在表現に関してイントラ予測を実行することを、少なくとも1つのプロセッサに行わせるように構成されていてもよい。
第1実行コード1920は、更に:再構成されたブロックの上にある再構成されたピクセルの第1コンテキスト・エリアと、再構成されたブロックの左にある再構成されたピクセルの第2コンテキスト・エリアと、第1コンテキスト・エリアの下及び第2コンテキスト・エリアの右にあるパディング・エリアとを取得すること;矩形エリアを取得するために、取得された第1コンテキスト・エリアと、取得された第2コンテキスト・エリアと、取得されたパディング・エリアを統合すること;潜在表現を生成するために、取得された矩形エリアに関して変換を実行すること;及び予測ブロックを生成するために、生成された潜在表現に関してイントラ予測を実行することを、少なくとも1つのプロセッサに行わせるように構成されていてもよい。
従来のE2E画像圧縮方法と比較して、本開示は以下の利点を有する。予測機構は、オリジナル・ピクセルを符号化する代わりに、予測ブロックとオリジナル・ブロックの間の残差を符号化することによって、NICコーディング
効率を改善するために活用される。柔軟で一般的なフレームワークは、様々なイントラ予測法及びイントラ予測プロセスからの残差に対する様々なニューラル符号化法に適合する。柔軟で一般的なフレームワークは、様々なタイプの品質メトリックに適合する。
従来の予測方法と比較して、本開示は以下の利点を有する。実施形態はニューラル・ベースの画像圧縮方法に使用することができる。パディング方法及び変換方法に関し、コンテキスト・エリアをパーティション化する必要はない。パディング方法、変換方法、及び特殊なケースにおける方法に関し、コンテキストは矩形エリアであり、従って2つの分離されたエリアをマージするための追加の演算を減らすことができる。
本方法は、別々に又は任意の順序で組み合わせて使用されてもよい。更に、方法(又は実施形態)、エンコーダ、及びデコーダの各々は、処理回路(例えば、1つ以上のプロセッサ、又は1つ以上の集積回路)によって実装されてもよい。一例では、1つ以上のプロセッサは、非一時的なコンピュータ読み取り可能な媒体に格納されたプログラムを実行する。
前述の開示は、図示及び説明を提供するが、網羅的であることや、実装を開示された厳密な形態に限定するようなことを意図してはいない。修正及び変形が上記の開示に関して可能であり、又は実装の慣行から把握される可能性がある。
本件で使用される場合に、コンポーネントという用語は、ハードウェア、ファームウェア、又はハードウェアとソフトウェアの組み合わせとして広く解釈されるように意図されている。
本件で説明されるシステム及び/又は方法は、ハードウェア、ファームウェア、又はハードウェアとソフトウェアの組み合わせの様々な形態で実施されてもよいことは、明らかであろう。これらのシステム及び/又は方法を実装するために使用される実際の特化された制御ハードウェア又はソフトウェア・コードは、実装を制限するものではない。従って、システム及び/又は方法の動作及び挙動は、特定のソフトウェア・コードを参照することなく、本件で説明されており――ソフトウェア及びハードウェアは、本件における説明に基づいてシステム及び/又は方法を実装するように設計されてもよいことが理解される。
特徴の組み合わせがクレームに記載され及び/又は明細書で開示されてたとしても、これらの組み合わせは、可能な実装の開示を限定するようには意図されていない。実際、これらの特徴の多くは、クレームに具体的には記載されていない、及び/又は明細書に開示されていない方法で組み合わせられる可能性がある。以下に列挙される各従属クレームは、1つのクレームのみに直接的に従属しているかもしれないが、可能な実装の開示は、各々の従属クレームを、クレーム・セット中の他の全てのクレームとの組み合わせで含んでいる。
本件で使用される要素、動作、又は命令は、しかるべく明示的に記述されていない限り、重要又は必須と解釈されてはならない。また、本件で使用される場合、“ある”及び“或る”(“a” and “an”)という不定冠詞的な語は、1つ以上のアイテムを含むように意図されており、“1つ以上”と可換に使用されてもよい。更に、本件で使用される場合、“セット”という用語は、1つ以上のアイテム(例えば、関連するアイテム、非関連のアイテム、関連するアイテムと非関連のアイテムの組み合わせ等)を含むように意図されており、“1つ以上”と可換に使用されてもよい。1つのアイテムのみが意図される場合、用語“1つ”又は類似の言葉が使用される。また、本件で使用される場合、“有する”、“含む”、“有している”等の用語は、オープン・エンドの用語であるように意図されている。更に、“基づいて”という言い回しは、明示的に別段の記載がない限り、“少なくとも部分的に基づいて”を意味するように意図されている。
(付記1)
ポスト・フィルタリングを用いるブロック・ワイズ・ニューラル画像圧縮の方法であって:
第1ニューラル・ネットワークを使用して、入力画像のブロックを符号化するステップであって、符号化されたブロックは、再構成されたブロックを生成するために、第2ニューラル・ネットワークを使用してデコーダによって復号化される、ステップ;
予測ブロックを生成するために、第3ニューラル・ネットワークを使用して、前記再構成されたブロックに関してイントラ予測を実行するステップ;
予測残差を生成するために、前記入力画像のブロックと生成された予測ブロックとの間の差分を決定するステップ;
第4ニューラル・ネットワークを使用して、生成された予測残差を符号化するステップであって、符号化された予測残差は、第5ニューラル・ネットワークを使用して前記デコーダにより復号化される、ステップ;及び
復元された予測ブロックを生成するために、復号化された予測残差を、前記生成された予測ブロックに加えるステップ;
を含む方法。
(付記2)
付記1に記載の方法において、更に:
前記入力画像のブロックに関してより少ない損失をもたらすものを、前記再構成されたブロック及び生成され復元された予測ブロックの中から選択するステップ;及び
前記再構成されたブロック及び復元された予測ブロックの中から選択されたものを示す選択信号を、前記再構成されたブロック及び復元された予測ブロックの中から選択されたものに対応する、前記符号化されたブロック及び符号化された予測残差のうちのもの、とともに前記デコーダへ送信するステップ;
を含み、前記符号化されたブロック及び符号化された予測残差のうちの送信されたものは、送信された選択信号に基づいて前記デコーダにより復号化される、方法。
(付記3)
付記1に記載の方法において、前記再構成されたブロックに関してイントラ予測を実行するステップは:
複数の再構成されたブロックを1つ以上のグループに、前記複数の再構成されたブロックの位置に基づいてグループ化するステップ;
1つ以上の潜在空間を生成するために、前記1つ以上のグループの各々に関して個々の変換を実行するステップ;
生成された1つ以上の潜在空間を統合するステップ;及び
前記予測ブロックを生成するために、統合された1つ以上の潜在空間に関して前記イントラ予測を実行するステップ;
を含む、方法。
(付記4)
付記1に記載の方法において、更に:
複数の再構成されたブロックの各々から、アーチファクトを含む境界エリアを取り除くステップ;
1つ以上のニューラル・ネットワークを使用して、取り除かれた境界エリアに関してデブロッキングを実行して、前記アーチファクトを伴わないデブロック化されたエリアを生成するステップ; 及び
前記複数の再構成されたブロックの各々を、生成されたデブロック化されたエリアでアップデートするステップ;
を含む、方法。
(付記5)
付記4に記載の方法において、更に:
前記複数の再構成されたブロックの各々から、取り除かれた境界エリアを伴わない残りのブロック・エリアを取り除くステップ;
エンハンスト・ブロック・エリアを生成するために、少なくとも1つのニューラル・ネットワークを使用して、取り除かれた残りのブロック・エリアに関してポスト・エンハンスメントを実行するステップ;及び
前記複数の再構成されたブロックの各々を、生成されたエンハンスト・ブロック・エリアでアップデートするステップ;
を含む、方法。
(付記6)
付記1に記載の方法において、前記再構成されたブロックに関してイントラ予測を実行するステップは:
前記再構成されたブロックの上にある再構成されたピクセルの第1コンテキスト・エリアと、前記再構成されたブロックの左にある再構成されたピクセルの第2コンテキスト・エリアとを取得するステップ;
潜在表現を生成するために、取得された前記第1コンテキスト・エリアと取得された前記第2コンテキスト・エリアの各々に関して個々の変換を実行するステップ;
生成された潜在表現を統合するステップ;及び
前記予測ブロックを生成するために、統合された潜在表現に関して前記イントラ予測を実行するステップ;
を含む、方法。
(付記7)
付記1に記載の方法において、前記再構成されたブロックに関してイントラ予測を実行するステップは:
前記再構成されたブロックの上にある再構成されたピクセルの第1コンテキスト・エリアと、前記再構成されたブロックの左にある再構成されたピクセルの第2コンテキスト・エリアと、前記第1コンテキスト・エリアの下及び前記第2コンテキスト・エリアの右にあるパディング・エリアとを取得するステップ;
矩形エリアを取得するために、取得された前記第1コンテキスト・エリアと、取得された前記第2コンテキスト・エリアと、取得された前記パディング・エリアを統合するステップ;
潜在表現を生成するために、取得された前記矩形エリアに関して変換を実行するステップ;及び
前記予測ブロックを生成するために、生成された潜在表現に関して前記イントラ予測を実行するステップ;
を含む、方法。
(付記8)
ポスト・フィルタリングを用いるブロック・ワイズ・ニューラル画像圧縮のための装置であって、前記装置はエンコーダとして実装され、前記装置は:
プログラム・コードを記憶するように構成された少なくとも1つのメモリ;及び
前記プログラム・コードを読み込み、前記プログラム・コードにより指示されるとおりに動作するように構成された少なくとも1つのプロセッサ;
を含み、前記プログラム・コードは:
第1ニューラル・ネットワークを使用して、入力画像のブロックを符号化することを、前記少なくとも1つのプロセッサに行わせるように構成された第1符号化コードであって、符号化されたブロックは、再構成されたブロックを生成するために、第2ニューラル・ネットワークを使用してデコーダによって復号化される、第1符号化コード;
予測ブロックを生成するために、第3ニューラル・ネットワークを使用して、前記再構成されたブロックに関してイントラ予測を実行することを、前記少なくとも1つのプロセッサに行わせるように構成された第1実行コード;
予測残差を生成するために、前記入力画像のブロックと生成された予測ブロックとの間の差分を決定することを、前記少なくとも1つのプロセッサに行わせるように構成された決定コード;
第4ニューラル・ネットワークを使用して、生成された予測残差を符号化することを、前記少なくとも1つのプロセッサに行わせるように構成された第2符号化コードであって、符号化された予測残差は、第5ニューラル・ネットワークを使用して前記デコーダにより復号化される、第2符号化コード;及び
復元された予測ブロックを生成するために、復号化された予測残差を、前記生成された予測ブロックに加えることを、前記少なくとも1つのプロセッサに行わせるように構成された加算コード;
を含む、装置。
(付記9)
付記8に記載の装置において、前記プログラム・コードは、更に:
前記入力画像のブロックに関してより少ない損失をもたらすものを、前記再構成されたブロック及び生成され復元された予測ブロックの中から選択することを、前記少なくとも1つのプロセッサに行わせるように構成された選択コード;及び
前記再構成されたブロック及び復元された予測ブロックの中から選択されたものを示す選択信号を、前記再構成されたブロック及び復元された予測ブロックの中から選択されたものに対応する、前記符号化されたブロック及び符号化された予測残差のうちのもの、とともに前記デコーダへ送信することを、前記少なくとも1つのプロセッサに行わせるように構成された送信コード;
を含み、前記符号化されたブロック及び符号化された予測残差のうちの送信されたものは、送信された選択信号に基づいて前記デコーダにより復号化される、装置。
(付記10)
付記8に記載の装置において、前記第1実行コードは、更に:
複数の再構成されたブロックを1つ以上のグループに、前記複数の再構成されたブロックの位置に基づいてグループ化すること;
1つ以上の潜在空間を生成するために、前記1つ以上のグループの各々に関して個々の変換を実行すること;
生成された1つ以上の潜在空間を統合すること;及び
前記予測ブロックを生成するために、統合された1つ以上の潜在空間に関して前記イントラ予測を実行すること;
を、前記少なくとも1つのプロセッサに行わせるように構成されている、装置。
(付記11)
付記8に記載の装置において、前記プログラム・コードは、更に:
複数の再構成されたブロックの各々から、アーチファクトを含む境界エリアを取り除くことを、前記少なくとも1つのプロセッサに行わせるように構成された第1除去コード;
1つ以上のニューラル・ネットワークを使用して、取り除かれた境界エリアに関してデブロッキングを実行して、前記アーチファクトを伴わないデブロック化されたエリアを生成することを、前記少なくとも1つのプロセッサに行わせるように構成された第2実行コード;及び
前記複数の再構成されたブロックの各々を、生成されたデブロック化されたエリアでアップデートすることを、前記少なくとも1つのプロセッサに行わせるように構成された第1アップデート・コード;
を含む、装置。
(付記12)
付記11に記載の装置において、前記プログラム・コードは、更に:
前記複数の再構成されたブロックの各々から、取り除かれた境界エリアを伴わない残りのブロック・エリアを取り除くことを、前記少なくとも1つのプロセッサに行わせるように構成された第2除去コード;
エンハンスト・ブロック・エリアを生成するために、少なくとも1つのニューラル・ネットワークを使用して、取り除かれた残りのブロック・エリアに関してポスト・エンハンスメントを実行することを、前記少なくとも1つのプロセッサに行わせるように構成された第3実行コード;及び
前記複数の再構成されたブロックの各々を、生成されたエンハンスト・ブロック・エリアでアップデートすることを、前記少なくとも1つのプロセッサに行わせるように構成された第2アップデート・コード;
を含む、装置。
(付記13)
付記8に記載の装置において、前記第1実行コードは、更に:
前記再構成されたブロックの上にある再構成されたピクセルの第1コンテキスト・エリアと、前記再構成されたブロックの左にある再構成されたピクセルの第2コンテキスト・エリアとを取得すること;
潜在表現を生成するために、取得された前記第1コンテキスト・エリアと取得された前記第2コンテキスト・エリアの各々に関して個々の変換を実行すること;
生成された潜在表現を統合すること;及び
前記予測ブロックを生成するために、統合された潜在表現に関して前記イントラ予測を実行すること;
を、前記少なくとも1つのプロセッサに行わせるように構成されている、装置。
(付記14)
付記8に記載の装置において、前記第1実行コードは、更に:
前記再構成されたブロックの上にある再構成されたピクセルの第1コンテキスト・エリアと、前記再構成されたブロックの左にある再構成されたピクセルの第2コンテキスト・エリアと、前記第1コンテキスト・エリアの下及び前記第2コンテキスト・エリアの右にあるパディング・エリアとを取得すること;
矩形エリアを取得するために、取得された前記第1コンテキスト・エリアと、取得された前記第2コンテキスト・エリアと、取得された前記パディング・エリアを統合すること;
潜在表現を生成するために、取得された前記矩形エリアに関して変換を実行すること;及び
前記予測ブロックを生成するために、生成された潜在表現に関して前記イントラ予測を実行すること;
を、前記少なくとも1つのプロセッサに行わせるように構成されている、装置。
(付記15)
命令を記憶する非一時的なコンピュータ読み取り可能な媒体であって、前記命令は、エンコーダのポスト・フィルタリングを用いるブロック・ワイズ・ニューラル画像圧縮のために、少なくとも1つのプロセッサにより実行されると、前記少なくとも1つのプロセッサに:
第1ニューラル・ネットワークを使用して、入力画像のブロックを符号化するステップであって、符号化されたブロックは、再構成されたブロックを生成するために、第2ニューラル・ネットワークを使用してデコーダによって復号化される、ステップ;
予測ブロックを生成するために、第3ニューラル・ネットワークを使用して、前記再構成されたブロックに関してイントラ予測を実行するステップ;
予測残差を生成するために、前記入力画像のブロックと生成された予測ブロックとの間の差分を決定するステップ;
第4ニューラル・ネットワークを使用して、生成された予測残差を符号化するステップであって、符号化された予測残差は、第5ニューラル・ネットワークを使用して前記デコーダにより復号化される、ステップ;及び
復元された予測ブロックを生成するために、復号化された予測残差を、前記生成された予測ブロックに加えるステップ;
を行わせる、非一時的なコンピュータ読み取り可能な媒体。
(付記16)
付記15に記載の非一時的なコンピュータ読み取り可能な媒体において、前記命令は、前記少なくとも1つのプロセッサにより実行されると、前記少なくとも1つのプロセッサに、更に:
前記入力画像のブロックに関してより少ない損失をもたらすものを、前記再構成されたブロック及び生成され復元された予測ブロックの中から選択するステップ;及び
前記再構成されたブロック及び復元された予測ブロックの中から選択されたものを示す選択信号を、前記再構成されたブロック及び復元された予測ブロックの中から選択されたものに対応する、前記符号化されたブロック及び符号化された予測残差のうちのもの、とともに前記デコーダへ送信するステップ;
を行わせ、前記符号化されたブロック及び符号化された予測残差のうちの送信されたものは、送信された選択信号に基づいて前記デコーダにより復号化される、非一時的なコンピュータ読み取り可能な媒体。
(付記17)
付記15に記載の非一時的なコンピュータ読み取り可能な媒体において、前記命令は、前記少なくとも1つのプロセッサにより実行されると、前記少なくとも1つのプロセッサに、更に:
複数の再構成されたブロックを1つ以上のグループに、前記複数の再構成されたブロックの位置に基づいてグループ化するステップ;
1つ以上の潜在空間を生成するために、前記1つ以上のグループの各々に関して個々の変換を実行するステップ;
生成された1つ以上の潜在空間を統合するステップ;及び
前記予測ブロックを生成するために、統合された1つ以上の潜在空間に関して前記イントラ予測を実行するステップ;
を行わせる、非一時的なコンピュータ読み取り可能な媒体。
(付記18)
付記15に記載の非一時的なコンピュータ読み取り可能な媒体において、前記命令は、前記少なくとも1つのプロセッサにより実行されると、前記少なくとも1つのプロセッサに、更に:
複数の再構成されたブロックの各々から、アーチファクトを含む境界エリアを取り除くステップ;
1つ以上のニューラル・ネットワークを使用して、取り除かれた境界エリアに関してデブロッキングを実行して、前記アーチファクトを伴わないデブロック化されたエリアを生成するステップ; 及び
前記複数の再構成されたブロックの各々を、生成されたデブロック化されたエリアでアップデートするステップ;
を行わせる、非一時的なコンピュータ読み取り可能な媒体。
(付記19)
付記18に記載の非一時的なコンピュータ読み取り可能な媒体において、前記命令は、前記少なくとも1つのプロセッサにより実行されると、前記少なくとも1つのプロセッサに、更に:
前記複数の再構成されたブロックの各々から、取り除かれた境界エリアを伴わない残りのブロック・エリアを取り除くステップ;
エンハンスト・ブロック・エリアを生成するために、少なくとも1つのニューラル・ネットワークを使用して、取り除かれた残りのブロック・エリアに関してポスト・エンハンスメントを実行するステップ;及び
前記複数の再構成されたブロックの各々を、生成されたエンハンスト・ブロック・エリアでアップデートするステップ;
を行わせる、非一時的なコンピュータ読み取り可能な媒体。
(付記20)
付記15に記載の非一時的なコンピュータ読み取り可能な媒体において、前記命令は、前記少なくとも1つのプロセッサにより実行されると、前記少なくとも1つのプロセッサに、更に:
前記再構成されたブロックの上にある再構成されたピクセルの第1コンテキスト・エリアと、前記再構成されたブロックの左にある再構成されたピクセルの第2コンテキスト・エリアとを取得するステップ;
潜在表現を生成するために、取得された前記第1コンテキスト・エリアと取得された前記第2コンテキスト・エリアの各々に関して個々の変換を実行するステップ;
生成された潜在表現を統合するステップ;及び
前記予測ブロックを生成するために、統合された潜在表現に関して前記イントラ予測を実行するステップ;
を行わせる、非一時的なコンピュータ読み取り可能な媒体。


Claims (9)

  1. ポスト・フィルタリングを用いるブロック・ワイズ・ニューラル画像圧縮の方法であって:
    第1ニューラル・ネットワークを使用して、入力画像のブロックを符号化するステップであって、符号化されたブロックは、再構成されたブロックを生成するために、第2ニューラル・ネットワークを使用してデコーダによって復号化される、ステップ;
    予測ブロックを生成するために、第3ニューラル・ネットワークを使用して、前記再構成されたブロックに関してイントラ予測を実行するステップ;
    予測残差を生成するために、前記入力画像のブロックと生成された予測ブロックとの間の差分を決定するステップ;
    第4ニューラル・ネットワークを使用して、生成された予測残差を符号化するステップであって、符号化された予測残差は、第5ニューラル・ネットワークを使用して前記デコーダにより復号化される、ステップ;及び
    復元された予測ブロックを生成するために、復号化された予測残差を、前記生成された予測ブロックに加えるステップ;
    を含む方法。
  2. 請求項1に記載の方法において、更に:
    前記入力画像のブロックに関してより少ない損失をもたらすものを、前記再構成されたブロック及び生成され復元された予測ブロックの中から選択するステップ;及び
    前記再構成されたブロック及び復元された予測ブロックの中から選択されたものを示す選択信号を、前記再構成されたブロック及び復元された予測ブロックの中から選択されたものに対応する、前記符号化されたブロック及び符号化された予測残差のうちのもの、とともに前記デコーダへ送信するステップ;
    を含み、前記符号化されたブロック及び符号化された予測残差のうちの送信されたものは、送信された選択信号に基づいて前記デコーダにより復号化される、方法。
  3. 請求項1に記載の方法において、前記再構成されたブロックに関してイントラ予測を実行するステップは:
    複数の再構成されたブロックを1つ以上のグループに、前記複数の再構成されたブロックの位置に基づいてグループ化するステップ;
    1つ以上の潜在空間を生成するために、前記1つ以上のグループの各々に関して個々の変換を実行するステップ;
    生成された1つ以上の潜在空間を統合するステップ;及び
    前記予測ブロックを生成するために、統合された1つ以上の潜在空間に関して前記イントラ予測を実行するステップ;
    を含む、方法。
  4. 請求項1に記載の方法において、更に:
    複数の再構成されたブロックの各々から、アーチファクトを含む境界エリアを取り除くステップ;
    1つ以上のニューラル・ネットワークを使用して、取り除かれた境界エリアに関してデブロッキングを実行して、前記アーチファクトを伴わないデブロック化されたエリアを生成するステップ; 及び
    前記複数の再構成されたブロックの各々を、生成されたデブロック化されたエリアでアップデートするステップ;
    を含む、方法。
  5. 請求項4に記載の方法において、更に:
    前記複数の再構成されたブロックの各々から、取り除かれた境界エリアを伴わない残りのブロック・エリアを取り除くステップ;
    エンハンスト・ブロック・エリアを生成するために、少なくとも1つのニューラル・ネットワークを使用して、取り除かれた残りのブロック・エリアに関してポスト・エンハンスメントを実行するステップ;及び
    前記複数の再構成されたブロックの各々を、生成されたエンハンスト・ブロック・エリアでアップデートするステップ;
    を含む、方法。
  6. 請求項1に記載の方法において、前記再構成されたブロックに関してイントラ予測を実行するステップは:
    前記再構成されたブロックの上にある再構成されたピクセルの第1コンテキスト・エリアと、前記再構成されたブロックの左にある再構成されたピクセルの第2コンテキスト・エリアとを取得するステップ;
    潜在表現を生成するために、取得された前記第1コンテキスト・エリアと取得された前記第2コンテキスト・エリアの各々に関して個々の変換を実行するステップ;
    生成された潜在表現を統合するステップ;及び
    前記予測ブロックを生成するために、統合された潜在表現に関して前記イントラ予測を実行するステップ;
    を含む、方法。
  7. 請求項1に記載の方法において、前記再構成されたブロックに関してイントラ予測を実行するステップは:
    前記再構成されたブロックの上にある再構成されたピクセルの第1コンテキスト・エリアと、前記再構成されたブロックの左にある再構成されたピクセルの第2コンテキスト・エリアと、前記第1コンテキスト・エリアの下及び前記第2コンテキスト・エリアの右にあるパディング・エリアとを取得するステップ;
    矩形エリアを取得するために、取得された前記第1コンテキスト・エリアと、取得された前記第2コンテキスト・エリアと、取得された前記パディング・エリアを統合するステップ;
    潜在表現を生成するために、取得された前記矩形エリアに関して変換を実行するステップ;及び
    前記予測ブロックを生成するために、生成された潜在表現に関して前記イントラ予測を実行するステップ;
    を含む、方法。
  8. ポスト・フィルタリングを用いるブロック・ワイズ・ニューラル画像圧縮のための装置であって、前記装置はエンコーダとして実装され、前記装置は:
    プログラム・コードを記憶するように構成された少なくとも1つのメモリ;及び
    前記プログラム・コードを読み込み、前記プログラム・コードにより指示されるとおりに動作するように構成された少なくとも1つのプロセッサ;
    を含み、前記プログラム・コードは、請求項1-7のうちの何れか一項に記載の方法を前記少なくとも1つのプロセッサに実行させる、装置。
  9. 請求項1-7のうちの何れか一項に記載の方法を少なくとも1つのプロセッサに実行させるコンピュータ・プログラム。
JP2022533334A 2020-09-30 2021-08-27 ポスト・フィルタリングを用いるブロック・ワイズ・ニューラル画像圧縮のための方法及び装置 Pending JP2023504817A (ja)

Applications Claiming Priority (9)

Application Number Priority Date Filing Date Title
US202063085900P 2020-09-30 2020-09-30
US202063085908P 2020-09-30 2020-09-30
US63/085,900 2020-09-30
US63/085,908 2020-09-30
US202063088675P 2020-10-07 2020-10-07
US63/088,675 2020-10-07
US17/362,003 2021-06-29
US17/362,003 US20220101492A1 (en) 2020-09-30 2021-06-29 Method and apparatus for block-wise neural image compression with post filtering
PCT/US2021/047996 WO2022072093A1 (en) 2020-09-30 2021-08-27 Method and apparatus for block-wise neural image compression with post filtering

Publications (2)

Publication Number Publication Date
JP2023504817A true JP2023504817A (ja) 2023-02-07
JPWO2022072093A5 JPWO2022072093A5 (ja) 2023-12-14

Family

ID=80822706

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2022533334A Pending JP2023504817A (ja) 2020-09-30 2021-08-27 ポスト・フィルタリングを用いるブロック・ワイズ・ニューラル画像圧縮のための方法及び装置

Country Status (6)

Country Link
US (1) US20220101492A1 (ja)
EP (1) EP4046375A4 (ja)
JP (1) JP2023504817A (ja)
KR (1) KR20220091606A (ja)
CN (1) CN114747207A (ja)
WO (1) WO2022072093A1 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20230105436A1 (en) * 2021-10-06 2023-04-06 Kwai Inc. Generative adversarial network for video compression
WO2023198057A1 (en) * 2022-04-12 2023-10-19 Beijing Bytedance Network Technology Co., Ltd. Method, apparatus, and medium for video processing

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3451293A1 (en) * 2017-08-28 2019-03-06 Thomson Licensing Method and apparatus for filtering with multi-branch deep learning
EP3725081A4 (en) * 2017-12-13 2021-08-18 Nokia Technologies Oy APPARATUS, METHOD AND COMPUTER PROGRAM FOR CODING AND DECODING OF VIDEO
US11019355B2 (en) * 2018-04-03 2021-05-25 Electronics And Telecommunications Research Institute Inter-prediction method and apparatus using reference frame generated based on deep learning

Also Published As

Publication number Publication date
EP4046375A4 (en) 2022-12-14
CN114747207A (zh) 2022-07-12
KR20220091606A (ko) 2022-06-30
US20220101492A1 (en) 2022-03-31
EP4046375A1 (en) 2022-08-24
WO2022072093A1 (en) 2022-04-07

Similar Documents

Publication Publication Date Title
CN111066326B (zh) 机器学习视频处理***和方法
KR102549824B1 (ko) 픽처 예측 방법 및 픽처 예측 장치
RU2696237C2 (ru) Способ декодирования видеосигнала
JP6342500B2 (ja) 再帰的なブロック・パーティショニング
KR102435595B1 (ko) 분산 처리 환경에서의 학습 파라미터의 압축 및 전송을 제공하는 방법 및 장치
WO2014190468A1 (en) Video encoder for images
JP7480303B2 (ja) ビデオ符号化のための方法並びに、その装置、及びコンピュータプログラム
JP2023504817A (ja) ポスト・フィルタリングを用いるブロック・ワイズ・ニューラル画像圧縮のための方法及び装置
KR20220162786A (ko) 비디오 코딩에서 심층 신경 네트워크 기반 인터프레임 예측을 위한 방법 및 장치
JP2022531131A (ja) インタ予測における融合モード候補のための大域的運動
JP6962193B2 (ja) 動画像符号化装置、動画像符号化方法および動画像符号化プログラムを記憶する記録媒体
KR20230010259A (ko) 사후-필터링을 위한 콘텐츠-적응형 온라인 트레이닝 방법 및 장치
KR20240000583A (ko) 블록 단위 이미지 압축에서의 디블로킹을 위한 콘텐츠 적응적 온라인 트레이닝 방법 및 장치
CN113039793A (zh) 指数分区的方法与***
JP2023518301A (ja) 品質入力を有するループフィルタのためのマスクされたニューラルネットワークによるモデル共有
JP7437426B2 (ja) インター予測方法および装置、機器、記憶媒体
EP3959889A1 (en) Adaptive motion vector prediction candidates in frames with global motion
JP7483030B2 (ja) 潜在特徴領域におけるイントラ予測によるニューラル画像圧縮
JPWO2022072093A5 (ja)
JP6992815B2 (ja) 動画像符号化装置、動画像符号化方法および動画像符号化プログラム
CA3157445A1 (en) Methods and systems for adaptive cropping
JP7471734B2 (ja) メタ学習による滑らかな品質管理を用いた品質適応型のニューラル・ネットワーク・ベースのループフィルタ
Krishnegowda et al. Optimal coding unit decision for early termination in high efficiency video coding using enhanced whale optimization algorithm
KR20230003566A (ko) 포스트 필터링에 의한 신경 이미지 압축에서의 블록별 컨텐츠-적응적 온라인 훈련
JP2023530068A (ja) 品質適応型ニューラル・ネットワーク・ベースのループフィルタのための代替品質ファクター学習

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20220603

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20230726

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20230905

A524 Written submission of copy of amendment under article 19 pct

Free format text: JAPANESE INTERMEDIATE CODE: A524

Effective date: 20231205

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20240227

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20240524

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20240611