ディープラーニングを使用した超解像入門

ディープラーニングを使用した超解像に使用される様々なコンポーネント、損失関数、メトリクスに関する精巧な議論。

ジェレミー-トーマスによる写真Unsplash

はじめに

超解像度は、特定の低解像度(LR)画像から高解像度(HR)画像を回復するプロセ 画像は、より小さい空間分解能(すなわち、サイズ)または劣化の結果(ぼかしなど)のために、「より低い解像度」を有し得る。 HR画像とLR画像を次の式で関連付けることができます。LR = degradation(HR)

高解像度バージョン以外にも低解像度の画像が保持されています。 (写真:Jarrad Horne On Unsplash)

明らかに、劣化関数を適用すると、HR画像からLR画像が得られます。 しかし、逆を行うことはできますか? 理想的なケースでは、はい! 正確な劣化関数を知っていれば、その逆をLR画像に適用することによって、HR画像を回復することができます。しかし、そこに問題があります。

しかし、そこに問題があります。

私達は通常手の前に低下機能を知らない。 逆劣化関数を直接推定することは、不適切な問題です。 それにもかかわらず、ディープラーニング技術は超解像に有効であることが証明されています。

このブログは、主に教師ありトレーニング方法を使用して深い学習を使用して超解像を実行するための紹介を提供することに焦点を当てています。 いくつかの重要な損失関数と指標についても議論した。 コンテンツの多くは、読者が参照できるこの文献レビューから派生しています。前に述べたように、deep learningを使用して、低解像度(LR)画像が与えられた場合、高解像度(HR)画像を推定することができます。

教師あり方法

前に、低解像度(LR)画像が与えられた場合、deep learningを使用して高解像度(HR)画像を推定できます。 HR画像をターゲット(または根拠)として使用し、LR画像を入力として使用することにより、これを教師あり学習問題のように扱うことができます。

このセクションでは、畳み込み層が編成されている方法で、さまざまな深層学習アプローチをグループ化します。 グループに進む前に、データ準備と畳み込みのタイプに関する入門書が提示されています。 モデルを最適化するために使用される損失関数は、このブログの最後に向かって別々に提示されています。

データの準備

LRデータを取得する簡単な方法の1つは、HRデータを劣化させることです。 これは、多くの場合、ノイズをぼかしたり追加したりすることで行われます。 より低い空間分解能の画像は、双一次補間や双立方体補間などの古典的なアップサンプリング法によってスケーリングすることもできます。 JPEGと量子化アーティファクトは、画像を劣化させるために導入することもできます。

高解像度の画像を劣化させて、低解像度のバージョンを取得します。 (写真:Jarrad Horne On Unsplash)

注意すべき重要なことの1つは、HRイメージを非圧縮(または可逆圧縮)形式で保存することをお勧めします。 これは、非可逆圧縮によるH R画像の品質の劣化を防止するためであり、これは、最適ではない性能を与える可能性がある。

たたみ込みの種類

古典的な2Dたたみ込みに加えて、いくつかの興味深い変種をネットワークで使用して結果を改善することができます。 拡張された(Atrous)畳み込みは、より大きな有効視野を提供することができ、したがって、大きな距離で分離された情報を使用する。 スキップ接続、空間ピラミッドプーリング、密なブロックは、低レベルと高レベルの両方の機能を組み合わせてパフォーマ

ネットワーク設計戦略。 (ソース)

上記の画像は、ネットワーク設計戦略の数を言及しています。 詳細については、この論文を参照できます。 深層学習で一般的に使用されるさまざまなタイプの畳み込みに関する入門書については、このブログを参照してください。

Group1—Pre-Upsampling

この方法では、低解像度の画像が最初に補間され、”粗い”高解像度の画像が得られます。 ここで、Cnnは、補間された低解像度画像から高解像度画像へのエンドツーエンドのマッピングを学習するために使用されます。 直感的には、低次元空間から高次元空間への直接マッピングを学ぶよりも、最初に従来の方法(双一次補間など)を使用して低解像度の画像をアップサ

典型的なプリアップサンプリングネットワーク。 (Source)

この手法を使用している一部のモデルについては、このペーパーの5ページを参照できます。 利点は、アップサンプリングは従来の方法で処理されるため、CNNは粗い画像を洗練する方法を学習するだけで済み、これは簡単です。 さらに、ここでは転置畳み込みを使用していないため、市松模様のアーティファクトは回避される可能性があります。 しかし、欠点は、事前定義されたアップサンプリング方法がノイズを増幅し、ぼかしを引き起こす可能性があることです。この場合、低解像度の画像はそのままCnnに渡されます。

グループ2—アップサンプリング後

この場合、低解像度の画像はCnnに渡されます。

グループ2-アップサンプリング後

このようにします。 アップサンプリングは、学習可能なレイヤーを使用して最後のレイヤーで実行されます。

典型的なポストアップサンプリングネットワーク。 (Source)

この方法の利点は、特徴抽出が低次元空間(アップサンプリング前)で実行されるため、計算の複雑さが軽減されることです。 さらに、学習可能なアップサンプリングレイヤーを使用することで、モデルをエンドツーエンドで訓練することができます。

グループ3—プログレッシブアップサンプリング

上記のグループでは、計算の複雑さが軽減されたにもかかわらず、単一のアップサンプリング畳み込みのみが使用されました。 これにより、大規模なスケーリング係数の学習プロセスが困難になります。 この欠点に対処するために、laplacian Pyramid SR Network(LapSRN)やProgressive SR(ProSR)などの作品では、プログレッシブアップサンプリングフレームワークが採用されました。 この場合のモデルは、Cnnのカスケードを使用して、各ステップでより小さなスケーリング係数で高解像度の画像を徐々に再構成します。

典型的なプログレッシブアップサンプリングネットワーク。 (Source)

難しいタスクを簡単なタスクに分解することにより、学習難易度が大幅に低下し、より良いパフォーマンスが得られます。 さらに、カリキュラム学習のような学習戦略を統合することで、学習の難易度をさらに下げ、最終的なパフォーマンスを向上させることができます。

グループ4—反復上下サンプリング

もう一つの一般的なモデルアーキテクチャは、砂時計(またはUネット)構造です。 Stacked Hourglass networkのようないくつかの亜種は、いくつかの砂時計構造を直列に使用し、アップサンプリングとダウンサンプリングのプロセスを効果的に交互に

典型的な反復アップアンドダウンサンプリングネットワーク。 (Source)

このフレームワークの下でのモデルは、LR-HR画像ペア間の深い関係をより良く掘り、より高品質の再構成結果を提供することがで

損失関数

損失関数は、生成された高解像度画像とグランド真理高解像度画像との差を測定するために使用されます。 この差(誤差)は、教師あり学習モデルを最適化するために使用されます。 損失関数のいくつかのクラスが存在し、それぞれが生成された画像の異なる側面を罰する。多くの場合、各損失関数から得られた誤差を個別に重み付けして合計することにより、複数の損失関数が使用されます。

多くの場合、各損失関数から得られた誤差を個別に重みづけして合計します。 これにより、モデルは複数の損失関数によって寄与される側面に同時に焦点を当てることができます。

total_loss = weight_1 * loss_1 + weight_ 2 * loss_2 + weight_3 * loss_3

このセクションでは、モデルのトレーニングに使用される損失関数のいくつかの一般的なクラスを探ります。

Pixel Loss

Pixel-wise lossは、生成されたイメージ内の各ピクセルがグラウンド-トゥルース-イメージ内の各ピクセルと直接比較される、最も単純なクラスの損 L1またはL2損失などの一般的な損失関数、またはSmooth L1損失などの高度な変形が使用されます。

滑らかなL1損失のプロット。 (Source)

PSNRメトリック(後述)は、ピクセル単位の差と非常に相関しているため、ピクセル損失を最小限に抑えることは、PSNRメトリック値(良好な しかし、ピクセル損失は画質を考慮せず、モデルは知覚的に満足できない結果を出力することがよくあります(多くの場合、高周波数の詳細が欠けてい

コンテンツ損失

この損失は、知覚品質に基づいて画質を評価します。 これを行う興味深い方法は、生成された画像と地上の真理値画像の高レベルの特徴を比較することです。 これらの高レベルの特徴は、これらの画像の両方を事前に訓練された画像分類ネットワーク(VGG-NetやResNetなど)に渡すことによって得ることができます。

地上真理画像と生成された画像との間のコンテンツの損失。 (Source)

上の式は、事前に訓練されたネットワーク(Φ)と損失が計算されるこの事前訓練されたネットワークの層(l)が与えられた場合、グラウンド-トゥルース画像と生成された画像との間のコンテンツ損失を計算します。 この損失は、生成された画像が地上真実画像と知覚的に類似していることを奨励する。 このため、それは知覚損失としても知られています。

テクスチャ損失

生成された画像が同じスタイル(テクスチャ、色、コントラストなど)を持つことを可能にするには、

テクスチャ損失

(grand truth image)としては、テクスチャ損失(またはスタイル再構成損失)が用いられる。 Gatys et.によって説明されているように、画像のテクスチャ。 alは、異なる特徴チャネル間の相関として定義される。 特徴チャネルは、通常、事前訓練された画像分類ネットワーク(Φ)を使用して抽出された特徴マップから取得される。P>

グラム行列を計算します。 (Source)

フィーチャマップ間の相関は、ベクトル化されたフィーチャマップijl(上に示す)。 グラム行列が両方の画像に対して計算されると、テクスチャ損失の計算は以下に示すように簡単です。

テクスチャ損失 (Source)

この損失を使用することにより、モデルは現実的なテクスチャと視覚的により満足のいく結果を作成するように動機付け

総変動損失

総変動(TV)損失は、生成された画像のノイズを抑制するために使用されます。 これは、隣接するピクセル間の絶対差の合計を取り、画像内のノイズの量を測定します。 生成された画像の場合、TV損失は以下に示すように計算されます。

生成された高解像度画像で使用される総変動損失。 ここで、i,j,kは、それぞれ高さ、幅、チャネルを繰り返します。

敵対的損失

生成的敵対的ネットワーク(GANs)は、超解像を含むいくつかの画像ベースのアプリケーションにますます使用されています。 GANは通常、生成器と判別器の2つのニューラルネットワークのシステムで構成され、互いにデュエルしています。

ターゲットサンプルのセットが与えられた場合、ジェネレータは判別子を欺いてそれらが本物であると信じることができるサンプルを生成しようと 判別子は、偽の(生成された)サンプルから実際の(ターゲット)サンプルを解決しようとします。 この反復学習アプローチを使用すると、最終的には、ターゲットサンプルに似たサンプルを生成するのに非常に優れたジェネレータになります。 次の画像は、典型的なGANの構造を示しています。p>

アクションでGANs。 (Source)

パフォーマンスを向上させるために、基本的なGANアーキテクチャへの進歩が導入されました。 例えば、Park et. アル 実際の高解像度画像のより意味のある潜在的な属性をキャプチャするために、特徴レベルの判別器を使用しました。 あなたはGANsの進歩についてのより精巧な調査のためにこのブログをチェックアウトすることができます。

通常、敵対的損失で訓練されたモデルは、ピクセル損失で訓練されたモデルと比較してPSNRで失う可能性がありますが、知覚品質が優れています。 一つのマイナーな欠点は、GANsのトレーニングプロセスは少し困難で不安定である、ということです。 しかし、GANの訓練を安定させる方法は積極的に取り組んでいます。

Metrics

一つの大きな問題は、我々は定量的に私たちのモデルのパフォーマンスを評価する方法です。 多数の画像品質評価(IQA)技術(または測定基準)が、そのために使用される。 これらの指標は、主観的指標と客観的指標の二つのカテゴリに大きく分類することができます。

主観的指標は人間の観察者の知覚的評価に基づいているのに対し、客観的指標は画質を評価しようとする計算モデルに基づいています。

主観的指標は、人間の観察者の知覚的評価に基づいています。 主観的なメトリックは、多くの場合、より”知覚的に正確”ですが、これらのメトリックのいくつかは、計算するのに不便、時間がかかる、または高価です。 別の問題は、これらの2つのカテゴリの指標が互いに一貫していない可能性があることです。 したがって、研究者は、多くの場合、両方のカテゴリからの指標を使用して結果を表示します。

このセクションでは、超解像モデルの性能を評価するために広く使用されているいくつかのメトリックを簡単に説明します。ピーク信号対雑音比(PSNR)は、非可逆変換の再構成品質を測定するために一般的に使用される客観的なメトリックです。

PSNR

ピーク信号対雑音比(PSNR)は、非可逆変換の再構成品質を測定するために一般的に使用される客観的なメトリックです。 PSNRは、地上真理値イメージと生成されたイメージとの間の平均二乗誤差(MSE)の対数に反比例します。P>

PSNRの計算。 (Source)

上記の式において、Lは可能な最大ピクセル値です(8ビットRGB画像の場合は255です)。 当然のことながら、PSNRはピクセル値の違いだけを気にしているので、知覚的な品質をそれほどうまく表現していません。構造類似性(SSIM)は、3つの比較的独立した比較、すなわち輝度、コントラスト、および構造に基づいて、画像間の構造類似性を測定するために使用される主観 抽象的には、SSIM式は、輝度、コントラストおよび構造の比較の重み付けされた積として独立して計算されて表示することができます。

SSIMは、上記の比較の重み付けされた積です。 (Source)

上記の式において、alpha、beta、gammaはそれぞれ輝度、コントラスト、構造比較関数の重みです。 SSIM式の一般的に使用される表現は、以下に示すとおりです。

SSIM式の一般的に使用される表現。 (Source)

上記の式でμ(I)σ(I)σ(I,I’)σ(I,I’)μ(I)は特定の画像の標準偏差を表す。C1, C2不安定性を回避するために設定された定数です。 簡潔にするために、用語の重要性と正確な派生はこのブログでは説明されておらず、興味のある読者はこの論文のセクション2.3.2をチェックアウト

画像の統計的特徴や歪みが不均一に分布する可能性があるため、画像品質を局所的に評価する方が、グローバルに適用するよりも信頼性が高い。 画像を複数のウィンドウに分割し、各ウィンドウで得られたSSIMを平均化するMean SSIM(MSSIM)は、局所的に品質を評価するそのような方法の一つです。

いずれにしても、SSIMは人間の視覚システムの観点から再構成の品質を評価するので、知覚評価の要件をよりよく満たしています。

その他のIQAスコア

説明なしに、画像品質を評価するいくつかの他の方法を以下に示します。 興味のある読者は、詳細についてはこの論文を参照することができます。

  • 平均オピニオンスコア(MOS)
  • タスクベースの評価
  • 情報忠実度基準(IFC)
  • 視覚情報忠実度(VIF)

結論

このブログ記事では、超解像のための深層学習モデルを訓練するための入門資料と手順について説明しました。 よりよい性能をもたらすかもしれない最新式の研究によって導入される高度の技術が全くあります。 さらに、教師なし超解像、より良い正規化技術、より良い代表的な指標などの道を研究することは、この分野を大きく前進させる可能性があります。 興味のある読者は、PIRMチャレンジなどの課題に参加することによって、革新的なアイデアを試すことをお勧めします。

コメントを残す

メールアドレスが公開されることはありません。