IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ テンセント・アメリカ・エルエルシーの特許一覧

特許7482232時間変形可能畳み込みによるディープループフィルタ
<>
  • 特許-時間変形可能畳み込みによるディープループフィルタ 図1
  • 特許-時間変形可能畳み込みによるディープループフィルタ 図2
  • 特許-時間変形可能畳み込みによるディープループフィルタ 図3
  • 特許-時間変形可能畳み込みによるディープループフィルタ 図4
  • 特許-時間変形可能畳み込みによるディープループフィルタ 図5
  • 特許-時間変形可能畳み込みによるディープループフィルタ 図6
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-05-01
(45)【発行日】2024-05-13
(54)【発明の名称】時間変形可能畳み込みによるディープループフィルタ
(51)【国際特許分類】
   H04N 19/85 20140101AFI20240502BHJP
   H04N 19/80 20140101ALI20240502BHJP
【FI】
H04N19/85
H04N19/80
【請求項の数】 10
(21)【出願番号】P 2022538953
(86)(22)【出願日】2021-08-18
(65)【公表番号】
(43)【公表日】2023-03-08
(86)【国際出願番号】 US2021046471
(87)【国際公開番号】W WO2022076085
(87)【国際公開日】2022-04-14
【審査請求日】2022-06-23
(31)【優先権主張番号】63/090,126
(32)【優先日】2020-10-09
(33)【優先権主張国・地域又は機関】US
(31)【優先権主張番号】17/394,504
(32)【優先日】2021-08-05
(33)【優先権主張国・地域又は機関】US
(73)【特許権者】
【識別番号】520353802
【氏名又は名称】テンセント・アメリカ・エルエルシー
(74)【代理人】
【識別番号】100107766
【弁理士】
【氏名又は名称】伊東 忠重
(74)【代理人】
【識別番号】100070150
【弁理士】
【氏名又は名称】伊東 忠彦
(74)【代理人】
【識別番号】100135079
【弁理士】
【氏名又は名称】宮崎 修
(72)【発明者】
【氏名】ジャン,ウェイ
(72)【発明者】
【氏名】ワン,ウエイ
(72)【発明者】
【氏名】リー,ゼチアン
(72)【発明者】
【氏名】リィウ,シャン
【審査官】松元 伸次
(56)【参考文献】
【文献】米国特許出願公開第2020/0265567(US,A1)
【文献】Deng Jianing et al.,Spatio-Temporal Deformable Convolution for Compressed Video Quality Enhancement,PROCEEDINGS OF THE AAAI CONFERENCE ON ARTIFICIAL INTELLIGENCE,vol.34, no.07,2020年03月04日,pp 10696-10700,インターネットより入手
【文献】Yapeng Tian et al.,TDAN: Temporally-Deformable Alignment Network for Video Super-Resolution,2020 IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR),IEEE,2020年06月13日,pp. 3357-3360,https://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=9156615,IEL Online (IEEE Xplore)
(58)【調査した分野】(Int.Cl.,DB名)
H04N 19/00-19/98
(57)【特許請求の範囲】
【請求項1】
ループフィルタを有する1つ以上のニューラルネットワークを使用してビデオコーディングを実行する方法であって、
ビデオシーケンスにおける複数の画像フレームを取得するステップと、
前記複数の画像フレームの各々について特徴マップを決定するステップと、
前記複数の画像フレームの中から参照フレームを選択するステップであって、前記参照フレームは、前記複数の画像フレームにおける他のフレームが整合される必要があるフレームである、選択するステップと、
前記参照フレームの参照特徴マップと前記複数の画像フレームにおける前記他のフレームの各々の特徴マップと、を連結し、前記連結された特徴マップをオフセット生成ディープニューラルネットワーク(DNN)に通して、オフセットマップを決定するステップと、
前記特徴マップ及び前記オフセットマップに対して時間変形可能畳み込み(TDC)を実行することにより整合された特徴マップを決定するステップと、
前記整合された特徴マップに基づいて複数の整合されたフレームを生成するステップと、
を含む方法。
【請求項2】
前記複数の整合されたフレームを合成して前記複数の画像フレームに対応する複数の高品質フレームを出力するステップ、
をさらに含む請求項1に記載の方法。
【請求項3】
前記特徴マップと前記整合された特徴マップとの間の不整合の誤差を示す整合損失を決定するステップ、
をさらに含み、
前記1つ以上のニューラルネットワークは、前記整合損失により訓練される、請求項1に記載の方法。
【請求項4】
前記複数の画像フレームを取得することは、前記複数の画像フレームを積み重ねて4次元(4D)入力テンソルを取得することを含む、請求項1に記載の方法。
【請求項5】
前記複数の画像フレームは、デブロッキングフィルタ(DF)、サンプル適応オフセット(SAO)、適応ループフィルタ(ALF)、又はクロスコンポーネント適応フィルタ(CCALF)のうちの少なくとも1つを使用してさらに処理される、請求項1に記載の方法。
【請求項6】
前記複数の高品質フレームは、前記複数の画像フレームの再構成品質を決定するために評価され、
前記複数の画像フレームの前記再構成品質は、前記1つ以上のニューラルネットワーク内で逆伝搬され、
前記1つ以上のニューラルネットワークは、前記複数の画像フレームの前記再構成品質により訓練される、請求項2に記載の方法。
【請求項7】
前記複数の画像フレームの各々が元の画像フレームであるか又は高品質フレームであるかの分類における誤差を示す識別損失を決定するステップ、
をさらに含み、
前記1つ以上のニューラルネットワークは、前記識別損失により訓練される、請求項1に記載の方法。
【請求項8】
前記整合された特徴マップを決定することは、時間変形可能畳み込みディープニューラルネットワーク(TDC DNN)を使用することを含み、
前記TDC DNNは、積み重ねにおける複数のTDC層を含み、
前記複数のTDC層の各々は、正規化線形ユニット(ReLU)を含む非線形活性化層が後に続く、請求項1に記載の方法。
【請求項9】
装置であって、
コンピュータプログラムコードを記憶する少なくとも1つのメモリと、
前記少なくとも1つのメモリにアクセスし、前記コンピュータプログラムコードを実行するように構成された少なくとも1つのプロセッサと、
を含み、
前記コンピュータプログラムコードは、前記少なくとも1つのプロセッサに請求項1乃至のうちいずれか1項に記載の方法を実行させる、装置。
【請求項10】
少なくとも1つのプロセッサに請求項1乃至のうちいずれか1項に記載の方法を実行させるコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
[関連出願の相互参照]
本出願は、米国特許商標庁に2020年10月9日に出願された米国仮出願第63/090,126号、及び2021年8月5日に出願された米国出願第17/394,504号に基づき、これらに対して優先権を主張するものであり、これらの開示はその全体を参照により本明細書に組み込まれる。
【0002】
1. 分野
本開示は、ビデオコーディングの分野に関し、特に、時間変形可能畳み込み(TDC)を有するディープニューラルネットワーク(DNN)に基づいてデコードされたビデオを処理するためにループフィルタを使用するデバイス及び方法に関する。
【背景技術】
【0003】
2. 関連技術の説明
H.264/アドバンストビデオコーディング(Advanced Video Coding)(H.264/AVC)、高効率ビデオコーディング(High-Efficiency Video Coding、HEVC)、及び汎用ビデオコーディング(Versatile Video Coding、VVC)などの従来のビデオコーディング標準は、同様の(再帰的な)ブロックベースのハイブリッド予測/変換フレームワークを共有しており、これにおいて、イントラ/インター予測、整数変換、及びコンテキスト適応エントロピーコーディングなどの個々のコーディングツールは、全体効率を最適化するために集中的に手作りされている。基本的に、時空間的な画素近傍は、後続の変換、量子化、及びエントロピーコーディングのための対応する残差を取得するために、予測信号構築に利用される。一方、ディープニューラルネットワーク(DNN)の性質は、近隣画素の受容野からの時空間情報を分析することにより、異なるレベルの時空間刺激を抽出することである。高度な非線形性及び非局所的な時空間相関を探索する能力は、大きく改善された圧縮品質の有望な機会を提供する。
【0004】
しかしながら、圧縮されたビデオは必然的に圧縮アーチファクトに悩まされ、それは体感品質(QoE)を深刻に劣化させる。DNNベースの方法は、画像ノイズ除去、超解像、ぼけ除去等など、圧縮された画像の視覚品質を向上させるように開発されてきている。これらの方法がビデオに適用されると、画像ベースの方法は、圧縮されたビデオの品質、ビデオシーン、及びビデオ内のオブジェクトの動きを変えることにより引き起こされる不安定性及び変動に悩まされる。したがって、ビデオ内の近隣のフレームからの情報を利用して、向上させた視覚品質を安定させ、改善することが重要である。
【0005】
複数の近隣のビデオフレームからの情報を利用することの1つの注意は、移動するカメラ及び動的なシーンにより引き起こされる複雑な動きである。従来のブロックベースの動きベクトルは、非並進運動に対してうまく機能しない。また、学習ベースのオプティカルフロー法は、画素レベルでより正確な動き情報を提供することができるが、それらは、特に移動するオブジェクトの境界に沿って、依然として誤差を生じやすい。
【0006】
したがって、本開示の1つ以上の実施形態は、明示的な動き推定なしにデータ駆動方式で任意の及び複雑な動きを扱うための、時間変形可能畳み込み(TDC)を有するDNNベースのモデルを提供する。
【発明の概要】
【0007】
一実施形態によれば、ループフィルタを有する1つ以上のニューラルネットワークを使用してビデオコーディングを実行する方法が提供される。当該方法は、ビデオシーケンスにおける複数の画像フレームを取得するステップと、複数の画像フレームの各々について特徴マップを決定し、特徴マップに基づいてオフセットマップを決定するステップと、特徴マップ及びオフセットマップに対して時間変形可能畳み込み(temporal deformable convolution、TDC)を実行することにより整合された(aligned)特徴マップを決定するステップと、複数の整合されたフレームを生成するステップと、を含む。
【0008】
一実施形態によれば、コンピュータプログラムコードを記憶する少なくとも1つのメモリと、少なくとも1つのメモリにアクセスし、コンピュータプログラムコードにより指示されるとおり動作するように構成された少なくとも1つのプロセッサと、を含む装置が提供される。コンピュータプログラムコードは、少なくとも1つのプロセッサに、ビデオシーケンスにおける複数の画像フレームを取得することをさせるように構成された取得コードと、少なくとも1つのプロセッサに、複数の画像フレームの各々について特徴マップを決定し、特徴マップに基づいてオフセットマップを決定し、特徴マップ及びオフセットマップに対して時間変形可能畳み込み(TDC)を実行することにより整合された特徴マップを決定することをさせるように構成された決定コードと、少なくとも1つのプロセッサに、複数の整合されたフレームを生成することをさせるように構成された生成コードと、を含む。
【0009】
一実施形態によれば、コンピュータプログラムコードを記憶する非一時的コンピュータ読取可能記憶媒体が提供され、コンピュータプログラムコードが少なくとも1つのプロセッサにより実行されると、少なくとも1つのプロセッサは、ビデオシーケンスにおける複数の画像フレームを取得し、複数の画像フレームの各々について特徴マップを決定し、特徴マップに基づいてオフセットマップを決定し、特徴マップ及びオフセットマップに対して時間変形可能畳み込み(TDC)を実行することにより整合された特徴マップを決定し、複数の整合されたフレームを生成するように構成される。
【図面の簡単な説明】
【0010】
以下の説明は、本開示の1つ以上の実施形態を例示する添付の図面を簡潔に紹介する。
図1】一実施形態によるビデオコーディングシステムを示す図である。
図2】一実施形態によるエンコーダ及びデコーダを含むコンピューティングデバイスの一例を示す図である。
図3】一実施形態によるDNN LFモジュールを訓練する方法を示す図である。
図4】一実施形態による2D TDCを使用するDNN LFモジュールの動作を示す図である。
図5】一実施形態による3D TDCを使用するDNN LFモジュールの動作を示す図である。
図6】一実施形態によるTDCを有するDNNを使用してビデオデータを処理する装置のブロック図である。
【発明を実施するための形態】
【0011】
本明細書において添付の図面を参照して、例示的な実施形態について詳細に説明する。本明細書に記載される開示の1つ以上の実施形態は例示的な実施形態に過ぎず、本開示の範囲を限定するものと解釈されるべきではない。
【0012】
図1は、一実施形態によるビデオコーディングシステムを示す図である。
【0013】
図1を参照し、ビデオコーディングシステム100は、ネットワーク130を介して互いに接続されたエンコーダ110及びデコーダ120を含むことができる。エンコーダ110は、画像データ又はビデオデータを圧縮するように構成され得る。エンコーダ110は、ビデオコーディングシステム100のサーバ側に配置されてもよい。サーバは、クラウドサーバ、又は複数のサーバを含むサーバラスタであってよい。サーバは、プロセッサ、通信インターフェース、及びデータベースを含むことができる。プロセッサは、ビデオシーケンスの1つ以上の画像フレームをエンコードするように構成され得る。通信インターフェースは、ビデオシーケンスの1つ以上の画像フレーム、又はビデオシーケンスのエンコーディングに関連し得る他のデータを送信及び受信するように構成され得る。データベースは、ビデオシーケンスの1つ以上の画像、エンコードされたデータ、及びデコードされたデータを記憶するように構成され得る。しかしながら、1つ以上の実施形態はこれに限定されない。例えば、エンコーダ110は、ネットワーク130に接続されたコンピューティングデバイス(例えば、デスクトップコンピュータ、ラップトップコンピュータ、タブレットコンピュータ、モバイルデバイス、パーソナルデジタルアシスタント(PDA)、コンソール、ウェアラブルデバイスなど)において実現されてもよい。エンコーダ110は、コンピューティングデバイス上で動作するソフトウェアでもよい。
【0014】
図2は、一実施形態によるエンコーダ及び/又はデコーダとして実現されるコンピューティングデバイスの一例を示す図である。コンピューティングデバイス200は、図1に示すエンコーダ110及び/又はデコーダ120として実現されてもよい。
【0015】
図2を参照し、コンピューティングデバイス200は、プロセッサ210、メモリ220、ストレージ230、入力インターフェース240、出力インターフェース250、通信インターフェース260、及びバス270を含むことができる。
【0016】
プロセッサ210は、ハードウェア、ファームウェア、又はハードウェアとソフトウェアの組み合わせで実現される。プロセッサ210は、中央処理装置(CPU)、グラフィックス処理ユニット(GPU)、アクセラレーテッド処理ユニット(APU)、マイクロプロセッサ、マイクロコントローラ、デジタル信号プロセッサ(DSP)、フィールドプログラマブルゲートアレイ(FPGA)、特定用途向け集積回路(ASIC)、又は別のタイプの処理コンポーネントである。いくつかの実装において、プロセッサ210は、機能を実行するようにプログラム可能な1つ以上のプロセッサを含む。
【0017】
メモリ220は、ランダムアクセスメモリ(RAM)、読取専用メモリ(ROM)、及び/又は、プロセッサ210による使用のための情報及び/又は命令を記憶する別のタイプの動的又は静的記憶デバイス(例えば、フラッシュメモリ、磁気メモリ、及び/又は光学メモリ)を含む。
【0018】
ストレージ230は、コンピューティングデバイス200の動作及び使用に関連する情報及び/又はソフトウェアを記憶する。例えば、ストレージ230は、ハードディスク(例えば、磁気ディスク、光ディスク、磁気光ディスク、及び/又はソリッドステートディスク)、コンパクトディスク(CD)、デジタル多用途ディスク(DVD)、フロッピーディスク、カートリッジ、磁気テープ、及び/又は別のタイプの非一時的コンピュータ読取可能媒体を、対応するドライブと共に含んでもよい。
【0019】
入力インターフェース240は、コンピューティングデバイス200がユーザ入力を介してなどで情報を受け取ることを可能にするコンポーネント(例えば、タッチスクリーンディスプレイ、キーボード、キーパッド、マウス、ボタン、スイッチ、及び/又はマイクロフォン)を含む。さらに又は代わりに、入力インターフェース240は、情報を感知するセンサ(例えば、全地球測位システム(GPS)コンポーネント、加速度計、ジャイロスコープ、及び/又はアクチュエータ)を含んでもよい。出力インターフェース250は、コンピューティングデバイス200からの出力情報を提供するコンポーネント(例えば、ディスプレイ、スピーカ、及び/又は1つ以上の発光ダイオード(LED))を含む。
【0020】
通信インターフェース260は、コンピューティングデバイス200が有線接続、無線接続、又は有線及び無線接続の組み合わせを介してなどで他のデバイスと通信することを可能にするトランシーバ様のコンポーネント(例えば、トランシーバ、及び/又は別個の受信機及び送信機)を含む。通信インターフェース260は、コンピューティングデバイス200が別のデバイスから情報を受信し、及び/又は別のデバイスに情報を提供することを可能にし得る。例えば、通信インターフェース260は、イーサネットインターフェース、光インターフェース、同軸インターフェース、赤外線インターフェース、無線周波数(RF)インターフェース、ユニバーサルシリアルバス(USB)インターフェース、Wi-Fiインターフェース、セルラーネットワークインターフェースなどを含んでもよい。
【0021】
バス270は、コンピューティングデバイス200のコンポーネント間の通信を可能にするコンポーネントを含む。
【0022】
コンピューティングデバイス200は、本明細書に記載される1つ以上の動作を実行することができる。コンピューティングデバイス200は、プロセッサ210がメモリ220及び/又はストレージ230などの非一時的コンピュータ読取可能媒体に記憶されたソフトウェア命令を実行することに応答して、本明細書に記載される動作を実行してもよい。コンピュータ読取可能媒体は、本明細書において非一時的メモリデバイスとして定義される。メモリデバイスは、単一の物理ストレージデバイス内のメモリ空間、又は複数の物理ストレージデバイスにわたり分散されたメモリ空間を含んでもよい。
【0023】
ソフトウェア命令は、別のコンピュータ読取可能媒体から、又は通信インターフェース260を介して別のデバイスから、メモリ220及び/又はストレージ230に読み込むことができる。実行されると、メモリ220及び/又はストレージ230に記憶されたソフトウェア命令は、プロセッサ210に、本明細書に記載される1つ以上のプロセスを実行させることができる。さらに又は代わりに、本明細書に記載される1つ以上のプロセスを実行するために、ソフトウェア命令の代わりに、又はソフトウェア命令と組み合わせて、ハードワイヤード回路が使用されてもよい。したがって、本明細書に記載される実装は、ハードウェア回路とソフトウェアの特定の組み合わせに限定されない。
【0024】
図2に示すコンポーネントの数及び配置は、一例として提供されている。実際には、コンピューティングデバイス200は、図2に示されるものに対してさらなるコンポーネント、より少ないコンポーネント、異なるコンポーネント、又は別様に配置されたコンポーネントを含んでもよい。さらに又は代わりに、コンピューティングデバイス200のコンポーネントのセット(例えば、1つ以上のコンポーネント)が、コンピューティングデバイス200のコンポーネントの別のセットにより実行されるものとして説明される1つ以上の機能を実行してもよい。
【0025】
図3は、一実施形態によるDNN LFモジュールの訓練する方法を示す図である。
【0026】
まず、典型的なビデオ圧縮フレームワークについて本明細書において説明する。入力ビデオxが、複数の元の画像フレームx,...,xを含むと仮定する。第1の動き推定ステップにおいて、複数の元の画像フレームは空間ブロックに分割され、各空間ブロックは反復的により小さいブロックにさらに分割することができ、カレントの(current)元の画像フレームxと前の再構成されたフレームのセット
【数1】

との間の動きベクトルのセットmが、各空間ブロックについて計算される。ここで、下付き文字tは、カレントの第tのエンコーディングサイクルを表し、これは、画像フレームのタイムスタンプと一致しないことがある。さらに、前の再構成フレームのセット
【数2】

は、複数の前のエンコーディングサイクルからのフレームを含むことができる。第2の動き補償ステップにおいて、予測されたフレーム
【数3】

が、動きベクトルmに基づいて前の再構成フレーム
【数4】

の対応する画素をコピーすることにより得られ、カレントの元の画像フレームxと、予測フレーム
【数5】

との間の残差rが、
【数6】

により得られる。第3の推定ステップにおいて、空間ブロック上で離散コサイン変換(DCT)を実行した後、残差rのDCT係数は、量子化された残差
【数7】

を得るために量子化される。したがって、動きベクトルmと、量子化残差
【数8】

の双方が、エントロピーコーディングによりビットストリームにエンコードされ、ビットストリームは、1つ以上のデコーダに送信される。デコーダ側において、量子化残差
【数9】

は、まず、復元された残差
【数10】

を得るために(例えば、逆離散コサイン変換(IDCT)などの逆変換を通して)量子化解除され(de-quantized)、次いで、復元残差
【数11】

は、予測フレーム
【数12】

に加算され、
【数13】

により、再構成フレームが得られる。
【0027】
さらに、再構成フレーム
【数14】

の視覚品質を改善するために、さらなるコンポーネントが使用されてもよい。デブロッキングフィルタ(Deblocking Filter、DF)、サンプル適応オフセット(Sample-Adaptive Offset、SAO)、適応ループフィルタ(Adaptive Loop Filter、ALF)、クロスコンポーネント適応フィルタ(Cross-Component Adaptive Filter、CCALF)等などのエンハンスメントモジュールの1つ以上が、再構成フレーム
【数15】

を処理するために選択されてもよい。例えば、デブロッキングフィルタ(DF)は、ブロックコーディング手法を使用するときにマクロブロック間に形成される鋭いエッジを平滑化することにより視覚品質及び予測性能を改善するために、デコードされたビデオに適用され得るビデオフィルタである。サンプル適応オフセット(SAO)は、各サンプルにオフセット値を加えることにより平均サンプル歪みを低減するためのループ内フィルタ手法である。SAOは、2つのタイプのオフセット手法を含み、それらは、エッジオフセット(EO)とバンドオフセット(BO)である。EOは、フィルタリングされる画像フレーム内の局所的な方向構造により駆動され、BOは、近傍への依存なしに画像フレームの強度値を修正する。適応ループフィルタ(ALF)は、元のサンプル画像とデコードされたサンプル画像との間の平均二乗誤差を最小化するために使用され得る。エンハンスメントモジュールを処理する順序及びエンハンスメントモジュールの選択は、ユーザ設定に従って様々に修正されてもよい。
【0028】
一実施形態によれば、DNN LFを訓練する全体的な方法が提供される。図3を参照し、N個の前の再構成フレームのセット
【数16】

が、DNN LFモジュール310への入力として提供される。DNN LFモジュール310は、エンドツーエンド(E2E)LF DNNネットワークを使用することにより、高品質フレーム
【数17】

を生成することができる。生成された高品質フレーム
【数18】

は、次いで、再構成品質計算モジュール320により元の画像フレームxの再構成品質を評価するために計算される。次いで、再構成品質計算モジュール320は、再構成品質
【数19】

を逆伝搬モジュール330に出力する。逆伝搬モジュール330は、再構成品質計算モジュール320により評価された再構成品質に従ってDNN LFモジュール310を訓練するために、再構成品質
【数20】

をDNN LFモジュール310にフィードバックする。
【0029】
さらに、DNN LFモジュール310により出力されるN個の前の再構成フレームのセットに対する整合損失
【数21】

が、逆伝搬モジュール330に供給され得、これは次いで、DNN LFモジュール310を訓練するために、逆伝搬モジュール330を通じてDNN LFモジュール310にフィードバックされる。整合損失のより詳細な説明は、図4を参照して以下に記載される。
【0030】
さらに、高品質フレーム
【数22】

と、元の画像フレームxは、高品質フレーム
【数23】

と、元の画像フレームxとの間の差を認識及び検出するために、識別モジュール(discrimination module)340に入力され得る。すなわち、識別モジュール340は、
【数24】

及びxに基づいて、識別損失
【数25】

を計算し、識別損失を逆伝搬モジュール330に送ることができる。識別損失
【数26】

は、DNN LFモジュール310及び識別モジュール340を訓練するために、逆伝搬モジュール330を通じてDNN LFモジュール310及び識別モジュール340にフィードバックされ得る。
【0031】
識別DNNは、識別特徴マップ
【数27】

又はd(x)を計算するために、入力として
【数28】

及びxのうちの少なくとも1つを使用する分類ネットワークでもよい。識別特徴マップ
【数29】

又はd(x)に基づいて、識別DNNは、入力が元の画像フレームxであるか、又は生成された(又は合成された)高品質フレーム
【数30】

であるかを分類する。カテゴリ的交差エントロピー損失などの誤分類損失を測定するために、分類損失
【数31】

を計算することができる。さらに、生成された高品質画像フレーム
【数32】

に基づいて計算された識別特徴マップと、元の画像フレームxに基づいて計算された識別特徴マップとの間の差を測定するために、特徴識別損失
【数33】

が計算されてもよい。
【0032】
全体的な識別損失
【数34】

は、
【数35】

の線形結合でもよく、これは、以下の式(1)に従って計算される。
【数36】
【0033】
ここで、γは、識別特徴マップ
【数37】

及びd(x)に関連づけられた重みである。
【0034】
上述したように、再構成品質計算モジュール320により出力される再構成品質
【数38】

、DNN LF 310により出力される整合損失
【数39】

、識別モジュール340により出力される識別損失
【数40】

は、逆伝搬モジュール330に送られる。それぞれのモジュールからこれらの計算を受け取ることに基づいて、逆伝搬モジュール330は、結合損失(joint loss)Ljointの勾配を計算することができ、これは、DNN LFモジュール310及び識別モジュール340にフィードバックされ得る。結合損失Ljointの勾配は、次の式(2)に従って計算されてもよい。
【数41】
【0035】
ここで、λは、整合損失に関連づけられた重みであり、βは、識別損失に関連づけられた重みである。
【0036】
結合損失Ljointの勾配は、LF DNN(例えば、特徴抽出DNN、オフセット生成DNN、TDC DNN、フレーム再構成DNN、フレーム合成DNN、識別DNN、並びにTDC及び特徴融合DNN)におけるDNN重み係数を更新するために、逆伝搬モジュール330を通じて逆伝搬することができる。
【0037】
結合損失Ljointを上記の1つ以上のDNNにフィードバックすることに基づいて、予測フレーム
【数42】

は、N個の前の再構成フレームのセット
【数43】

を更新するために追加される。例えば、カレントフレームから最大の距離にある最も古いフレームが、N個の前の再構成フレームのセットから除去されてもよく、予測フレーム
【数44】

が、除去された最も古いフレームを置き換えるために追加されてもよい。その後、エンコーダは、tからt+1へ、次のエンコーディングサイクルに入ることができる。
【0038】
一実施形態によれば、DNN LFモジュール310は、再構成フレーム
【数45】

の視覚品質を改善するために、上述したさらなるコンポーネント(例えば、DF、SAO、ALF、CCALFなど)の1つ以上と組み合わせて使用されてもよい。例えば、再構成フレーム
【数46】

は、DF、DNN LFモジュール、SAO、及びALFを通じて順次処理され得る。しかしながら、1つ以上の実施形態はこれに限定されず、さらなるコンポーネントを処理する順序が様々に構成されてもよい。一実施形態において、DNN LFモジュール310は、再構成フレーム
【数47】

の視覚品質を向上させるために、全ての他のさらなるコンポーネントの代替として単独で使用されてもよい。
【0039】
図4は、一実施形態による2D TDCを使用するDNN LFモジュールの動作を示す図である。
【0040】
図4を参照し、DNN LFモジュール400は、特徴抽出モジュール410、オフセット生成モジュール420、TDCモジュール430、フレーム再構成モジュール440、フレーム合成モジュール450、及び整合誤差計算モジュール460を含むことができる。
【0041】
特徴抽出モジュール410は、入力としてN個の前の再構成フレームのセット
【数48】

を受け取り、フォワード推論(forward inference)を通じて特徴抽出DNNを使用することにより特徴マップ
【数49】

を計算するように構成され得る。例えば、フレーム
【数50】

が、全ての他のフレームが整合されなければならない参照フレームとして使用されると仮定し、オフセット生成モジュール420は、
【数51】

に基づいて、特徴マップ
【数52】

を連結し(concatenating)、連結された特徴マップをオフセット生成DNNに通すことにより、オフセットマップΔPj→i,tを計算することができる。ここで、フレーム
【数53】

は、N個の前の再構成フレームのセット
【数54】

の、任意のフレームであってよい。一般性を損なうことなく、N個の前の再構成フレームのセット
【数55】

は、それらのタイムスタンプに従って昇順にランク付けされる。したがって、視覚品質を向上させるためのフレームは、N個の再構成フレーム
【数56】

のタイムスタンプに基づいて選択されてもよい。例えば、ターゲットが、カレント再構成フレーム
【数57】

を向上させることであるとき、
【数58】

である。すなわち、全ての他の前に再構成された近隣フレームは、
【数59】

の前であり得る。別の実施形態において、前に再構成された近隣フレームの一部が、
【数60】

の前であってよく、残りのフレームは、
【数61】

の後であってもよい。
【0042】
オフセット生成モジュール420により生成されたオフセットマップΔPj→i,tは、TDCモジュール430に入力され得る。図4において、TDC DNNは、いくつかのTDC層を積み重ねる(stacking)ことにより形成され、各層は、正規化線形ユニット(Rectified Linear Unit、ReLU)などの非線形活性化層、及び他のDNN層(例えば、ボトルネック層)が後に続いてもよい。TDCモジュール430は、TDC DNNを使用して、特徴抽出モジュール410により出力される特徴マップ
【数62】

と、オフセット生成モジュール420により出力されるオフセットマップΔPj→i,tとに基づいて、整合された特徴マップ
【数63】

を計算する。
【0043】
一実施形態によれば、TDC DNNは、二次元(2D)TDC層を含んでもよい。例えば、wは、2D TDCカーネルの重み係数を表し、kは、1以上の自然数(例えば、k=1,...,K)であり、pは、カーネル内の第kの位置に対する所定のオフセットを表す(例えば、3x3カーネルは、K=9、及びp∈{(-1,-1),(-1,0),...,(1,1)}で定義される)と仮定する。2D TDC層は、入力特徴fin及び学習可能なオフセットΔPに基づいて、出力特徴foutを計算することができ、ここで、サンプリング位置pにおける特徴は、以下の式に基づいて決定される。
【数64】
【0044】
ここで、オフセットの合計(p+p+Δp)は不規則でもよく、整数でなくてもよく、TDC演算は、(p+p+Δp)の不規則な位置を矯正するために、補間(例えば、双線形補間)を実行することができる。
【0045】
さらに、整合誤差計算モジュール460は、整合損失
【数65】

を計算して、
【数66】

の間の不整合の誤差を測定するように構成され得る。例えば、不整合を計算するために、L1ノルム(又は絶対誤差の平均)、又はL2ノルム(二乗根誤差の平均)が使用されてもよい。フレーム再構成モジュール440は、フィードフォワード推論計算を通じてフレーム再構成DNNを使用して、特徴抽出モジュール410により出力される特徴マップ
【数67】

と、TDCモジュール430により出力される整合された特徴マップ
【数68】

とに基づいて、整合されたフレーム
【数69】

を生成することができる。整合されたフレーム
【数70】

は、フレーム合成モジュール450への入力として使用されてもよく、フレーム合成モジュール450は、フレーム合成DNNを使用して合成された高品質フレーム
【数71】

を生成することができる。
【0046】
DNN LFモジュールのいくつかの特定の実施形態が上述されたが、本開示の1つ以上の実施形態はこれに限定されないことを理解されたい。例えば、特徴抽出DNN、オフセット生成DNN、TDC DNN、フレーム再構成DNN、及びフレーム合成DNNの各々に対して、層のタイプ、層の数、カーネルサイズ等は様々に構成されてもよい。例えば、ResNETなどの任意のバックボーンネットワークが、特徴合成DNNとして使用されてもよい。例えば、規則的な畳み込み層及びボトルネック層のセットが、オフセット生成DNNとして積み重ねられてもよい。例えば、TDC層のセットが、TDC DNNとして積み重ねられてもよく、スキップ接続を有する少数の畳み込み層が、フレーム再構成DNNとして一緒に積み重ねられてもよい。例えば、少数の残差ブロック層が、フレーム合成DNNとして一緒に積み重ねられてもよい。
【0047】
図5は、一実施形態による3D TDCを使用するDNN LFモジュールの動作を示す図である。
【0048】
図5を参照し、DNN LFモジュール500は、特徴抽出モジュール510、TDC及び特徴融合モジュール520、及び特徴再構成モジュール530を含むことができる。DNN LFモジュール500のコンポーネントの特徴又は機能の一部は、図4を参照して上述されていることを理解されたい。したがって、その繰り返しの記載は省略されることがある。
【0049】
一実施形態によれば、入力フレーム
【数72】

は、サイズ(n、c、h、w)の4D入力テンソルを取得するために一緒に積み重ねられてもよく、ここで、cは、チャネルの数(例えば、カラーフレームに対して3)であり、(h、w)は、ビデオフレームの解像度を提供する。特徴抽出モジュール510は、フォワード推論を通じて特徴抽出DNNを使用して、特徴マップ
【数73】

の4D特徴テンソルを計算するように構成され得る。一実施形態において、特徴抽出DNNは、3D畳込み層(例えば、C3D)を使用して、特徴マップ
【数74】

を計算し、ビデオの時空間特性を捕捉する。別の実施形態において、各個々の特徴マップは、図4を参照して説明したように、2D畳み込み層を使用して計算されてもよい。ここで、特徴マップ
【数75】

は、各個々の入力フレームについて特徴マップ
【数76】

を計算した後、4Dテンソルに連結されてもよい。したがって、特徴抽出モジュール510は、4D特徴テンソルを出力することができる。
【0050】
例えば、wが、3D TDCカーネルの重み係数を表し、pが、カーネル内の第kの位置に対する所定のオフセットを表し、kは、1以上の自然数(例えば、k=1,...,K)であると仮定する。3D TDCカーネルは、K=27、及びp∈{(-1,-1,-1),(-1,-1,0),...,(1,1,1)}として定義されてもよい。3D TDC層は、入力特徴fin及び学習可能なオフセットΔPに基づいて、出力特徴foutを計算することができ、ここで、サンプリング位置pにおける特徴は、上記で提供された同じ式(3)を使用して与えられる。
【0051】
図5において、TDC及び特徴融合DNNは、1つ以上の3D TDC層を積み重ねることにより形成されてもよく、各層は、ReLUなどの非線形活性化層が後に続く。さらに又は代わりに、各3D TDC層は、ボトルネック層などの他のDNN層が後に続いてもよい。例えば、フレーム
【数77】

が、全ての他のフレームが整合される必要がある参照フレームであり、TDC及び特徴融合モジュール520は、TDC及び特徴融合DNNを使用して、4D特徴テンソル
【数78】

に基づいて、融合された整合された特徴マップ
【数79】

を計算すると仮定する。フレーム再構成モジュール530は、フレーム再構成DNNを使用して、融合された整合された特徴マップ
【数80】

に基づいて、再構成された高品質フレーム
【数81】

を計算する。ここで、DNN LFモジュール500を訓練する際に実行される明示的な空間整合はない。代わりに、3D変形可能畳み込みは、時空間オフセットを直接学習して、整合された融合された特徴を生成する。
【0052】
DNN LFモジュールのいくつかの特定の実施形態が上述されたが、本開示の1つ以上の実施形態はこれに限定されないことを理解されたい。例えば、特徴抽出DNN、TDC及び特徴融合DNN、及びフレーム再構成DNNの各々に対して、層のタイプ、層の数、カーネルサイズ等は様々に構成されてもよい。
【0053】
図6は、一実施形態によるTDCを有するDNN LFを使用してビデオデータを処理する装置のブロック図である。装置600のコンポーネントの特徴又は機能の一部は、図4及び図5を参照して上述されていることを理解されたい。したがって、その繰り返しの記載は省略されることがある。
【0054】
装置600は、コンピュータプログラムコードを記憶する少なくとも1つのメモリと、少なくとも1つのメモリにアクセスし、コンピュータプログラムコードにより指示されるとおり動作するように構成された少なくとも1つのプロセッサとを含むことができる。コンピュータプログラムコード600は、取得コード610、決定コード620、及び生成コード630を含むことができる。
【0055】
取得コード610は、ビデオシーケンスにおける再構成画像フレームのセットを取得するように構成され得る。一実施形態によれば、取得コード610は、図4及び図5に関して上述した特徴抽出モジュール410及び510の動作を実行するように構成されてもよい。
【0056】
決定コード620は、複数の画像フレームの各々について特徴マップを決定し、特徴マップに基づいてオフセットマップを決定し、特徴マップ及びオフセットマップに対して時間変形可能畳み込み(TDC)を実行することにより整合された特徴マップを決定するように構成され得る。一実施形態によれば、決定コード620は、図4に関して上述したオフセット生成モジュール420、TDC430、及び整合誤差計算モジュール460、並びに図5に関して上述したTDC及び特徴融合モジュール520の動作を実行するように構成されてもよい。
【0057】
生成コード630は、複数の整合されたフレームを生成し、複数の整合されたフレームを合成して、複数の画像フレームに対応する複数の高品質フレームを出力するように構成され得る。一実施形態によれば、生成コード630は、図4のフレーム再構成モジュール430及びフレーム合成モジュール450、並びに図5のフレーム再構成モジュール530の動作を実行するように構成されてもよい。
【0058】
装置600は、取得コード610、決定コード620、及び生成コード630のみを含むものとして記載されたが、本開示の1つ以上の実施形態はこれに限定されない。1つ以上の実施形態は、図6に示されたものより多くの又は少ないコンポーネント又は部分を含んでもよい。
【0059】
「ユニット」又は「モジュール」などの、本開示の1つ以上の実施形態で使用される用語は、少なくとも1つの機能又は動作を処理するユニットを示し、ハードウェア、ソフトウェアにおいて、又はハードウェアとソフトウェアの組み合わせで実装することができる。
【0060】
用語「ユニット」、「コード」、又は「モジュール」は、アドレス指定可能な記憶媒体に記憶され、プロセッサにより実行可能であるプログラムにより実装されてもよい。
【0061】
例えば、用語「ユニット」、「コード」、又は「モジュール」は、ソフトウェアコンポーネント、オブジェクト指向ソフトウェアコンポーネント、クラスコンポーネント及びタスクコンポーネント、プロセス、機能、属性、プロシージャ、サブルーチン、プログラムコードのセグメント、ドライバ、ファームウェア、マイクロコード、回路、データ、データベース、データ構造、テーブル、アレイ、及び/又は変数を含んでもよい。
【0062】
本開示の実施形態のいくつかが上記で示され、説明されている。しかしながら、本開示の1つ以上の実施形態は、前述の特定の実施形態に限定されない。本開示の主旨及び範囲から逸脱することなく、様々な修正、置換、改良、及びその同等のものがなされ得ることが理解され得る。このような修正、置換、改良、及びその同等のものは、本開示の保護範囲に含まれるものとし、本開示の発明概念又は見通しから独立していると解釈されるべきではないことを理解されたい。
図1
図2
図3
図4
図5
図6