[画像のノイズ除去] DnCNNペーパーの詳細な説明(ガウスノイズ除去装置を超えて:画像のノイズ除去のためのディープCNNの残余学習)..



Detailed Explanation Dncnn Paper Beyond Gaussian Denoiser



原紙: https://arxiv.org/pdf/1608.03981.pdf

1.はじめに

正直なところ、この論文の後半は注意深く読む価値はありません。内容の多くは実験に関するものであり、執筆はかなり言葉が多いです。啓発的なコンテンツは少なくなります。それを読んだ後、私はあなたのモデルがうまく機能していることを知っているだけですが、なぜそれが良いのかわかりません。



記事の焦点

  1. これは、画像の復元における残余学習とバッチ正規化の補完的な役割を強調しています。これにより、深いネットワーク条件下でも高速な収束と優れたパフォーマンスを実現できます。



  2. この記事はDnCNNを提案しています。ガウスノイズ除去の問題では、単一のモデルを使用してさまざまな程度のガウスノイズを処理します。単一のモデルを使用して、ガウスノイズ除去、超解像、およびJPEGロック解除の問題を処理することもできます。

2、DnCNNネットワークモデル

DnCNNネットワーク構造

ネットワーク構造:

最初の部分:Conv(3 * 3 * c * 64)+ ReLu(cは画像チャネルの数を表します)



2番目の部分:Conv(3 * 3 * 64 * 64)+ BN(バッチ正規化)+ ReLu

パートIII:コンバージョン(3 * 3 * 64)

各レイヤーのパディングはゼロであるため、各レイヤーの入力サイズと出力サイズは同じままです。これにより、境界アーティファクトの作成が防止されます。 2番目の部分では、畳み込みとreLUの間にバッチ正規化(BN)が追加されます。

2.1。残余学習

DnCNNは、ResNetの残余学習を組み合わせたものです。 ResNetの知識の要約については、他の記事を参照してください。 https://www.jianshu.com/p/11f1a979b384

違いは、DnCNNが2層ごとにショートカット接続を追加するのではなく、ネットワークの出力を残差画像(残差画像)に直接変更し、純粋な画像をxに設定し、ノイズ画像をyに設定することです(y = xと仮定)。 + vの場合、vは残差画像です。つまり、DnCNNの最適化の目標は、実際の画像とネットワーク出力の間のMSE(平均二乗誤差)ではなく、実際の残差画像とネットワーク出力の間のMSEです。

ResNetの理論によると、残差が0の場合、積み重ねられたレイヤーは恒等写像と同等であり、恒等写像のトレーニングと最適化は非常に簡単です。著者は、画像復元の分野(特に低ノイズの場合)では、ノイズ画像と純粋な画像の残差が非常に小さいため、理論的には残余学習が画像復元に非常に適していると述べています。

素人の言葉で言えば、そのようなネットワーク設計は、隠れ層の元の雑音指数yから実際の画像xを排除することです。著者は、超解像フィールドでは、低解像度画像は高解像度画像のダブルスリーアップサンプリング操作によって形成されるため、超解像フィールドの残差画像とガウスノイズの残差画像に注意します。 -削除されたフィールドは同等です。 JPEGロック解除フィールドにも画像が残っています。同様に、1つのモデルで3つの問題に対処することが可能であり、最終的な実験はそれが実際に効果的であることを証明しています。

2.2。バッチ正規化

SGD(Stochastic Gradient Descent)は、CNNトレーニング方法で広く使用されていますが、トレーニングのパフォーマンスは、 内部共変量シフト この問題は影響を受けます。 BNは、非線形処理の各レイヤーの前に正規化、スケーリング、およびシフト操作を追加して、内部共変量のシフトを削減します。これにより、トレーニングの速度とパフォーマンスが向上するため、ネットワークが初期化変数に与える影響が少なくなります。

内部共変量シフト :非線形変換が実行される前のディープニューラルネットワークのアクティブ化入力値。ネットワークの深さが深まるにつれて、またはトレーニングプロセス中に、その分布は徐々にシフトまたは変化します。トレーニングの収束が遅い理由は、一般に、全体的な分布が非線形関数に向かって徐々に変化するためです。の値間隔の上限と下限が近い(シグモイド関数の場合、アクティベーション入力値WU + Bが大きな負であることを意味します)。または正の値)、これにより、バックプロパゲーション中に低レベルニューラルネットワークの勾配が消えます。これは、ディープニューラルネットワークがますますゆっくりと収束するようにトレーニングするための本質的な理由です。

バッチ正規化 :特定の標準化された手段により、ニューラルネットワークの各層のニューロンの入力値の分布を強制的に引き戻すことです。 平均は0、分散は1です。標準正規分布 、つまり、より多くのバイアスされた分布をより標準的な分布に戻すことで、アクティブ化入力値が非線形関数が入力に対してより敏感な領域に収まるようにするため、入力の小さな変化により、損失関数の変化が大きいということは、勾配が消える問題を回避するために勾配を大きくすることを意味し、勾配が大きいということは、学習収束速度が速いことを意味し、トレーニング速度を大幅に高速化できます。

2.3。ネットワークの深さ

著者は、「大規模画像認識のための非常に深い畳み込みネットワーク」の標準を参照し、DnCNN畳み込みカーネルサイズを3 * 3に設定し、すべてのプーリング層を削除します。

受容野 :畳み​​込みニューラルネットワークのレイヤーによって出力された特徴マップからネットワーク入力画像にマッピングされた領域のサイズです。

画像

受容野コンピューティングで説明する必要のあるいくつかの状況があります。

  1. 最初の畳み込み層の出力特徴マップのピクセルの受容野のサイズは、フィルターのサイズと同じです。
  2. 深い畳み込み層の受容野のサイズは、前のすべての層のフィルターサイズとステップサイズに関連しています。
  3. 受容野のサイズを計算するとき、画像の端の影響は無視されます。つまり、パディングのサイズは考慮されません。

さらに、各レイヤーのストライドの説明に関して、このストライドは、前のすべてのレイヤーのストライドの積です。

strides(i)= stride(1)* stride(2)* ... * stride(i-1)

単層畳み込みネットワークの場合、特徴マップの各特徴点に対応する特徴マップの受容野のサイズは、多層畳み込みネットワークの畳み込みレイヤーフィルターのサイズと同じです。これはフィードバックできます。層ごとに、繰り返し反復して、元の入力画像の受容野サイズを取得します。つまり、深い畳み込み層の受容野サイズは、以前のすべてのネットワーク層の受容野サイズと同じです。 フィルターサイズステップ それは重要です。計算するときは、画像のパディングのサイズを無視してください。使用される式は次のように表すことができます。

r(i)=(r(i + 1)-1)* stride(i)+ c(i)

その中で、r(i)はi番目の受容野のサイズを表し、stride(i)はi番目の層のステップサイズを表し、c(i)はi番目の層の畳み込みカーネルのサイズを表します。
さらに、畳み込みネットワークの活性化関数層(ReLU / Sigmoid / ...)の場合、受容野反復式は次のようになります。

r(i)= r(i + 1)

DnCNNネットワークの場合、ネットワーク層の数がdの場合、ネットワークの受容野は(2d + 1)*(2d + 1)になります。 DnCNNの受容野は、ネットワークの深さdに関連しており、 畳み込みニューラルネットワークの受容野は、従来のノイズ除去アルゴリズムの有効パッチサイズと比較できます。 。したがって、著者は最も主流のノイズ除去アルゴリズムを参照し、2d + 1 =有効なパッチサイズに従って、DnCNNの適切なネットワーク深度を逆に導入します。

結局、ノイズレベルが25の場合、EPLLの有効パッチサイズは水平方向に比較的小さいため、著者はEPLLの36 * 36を参照標準として選択しました(DnCNNが最小の受容野を選択した場合、これらの主流を克服できます)アルゴリズム、それはDnCNNを意味します非常に良い)。ガウスノイズ除去を処理するためのDnCNNの深さは17であり、一般的なノイズ除去タスクのためのDnCNNの深さは20です。

3.実験

著者は3つの実験を行いました。

  1. 残余学習とバッチ正規化が回復効果と収束速度に及ぼす影響を比較すると、これら2つは補完的であり、それぞれを使用してネットワークのすべての側面で最高のパフォーマンスを達成することが最終的に証明されます。

  2. ある程度のガウスノイズに従ってDnCNN-Sをトレーニングし、不確実な程度のガウスノイズに従ってDnCNN-Bをトレーニングし、さまざまな程度のノイズ(さまざまな程度のガウスノイズ、さまざまな程度の低解像度、さまざまな程度を含む)に従ってトレーニングします。 JPEGエンコーディングの)DnCNN-3は、他の最先端のアルゴリズムとの比較実験を行うようになります。結論:DnCNN-Sは最高のパフォーマンスを発揮しますが、DnCNN-Bは他のアルゴリズムよりも優れたパフォーマンスを発揮します。これは、DnCNN-Bがガウスノイズを盲目的に除去する優れた能力を備えていることを証明しています。一般化されたイメージを復元します。

  3. DnCNNやその他の最先端のノイズ除去アルゴリズムの実行速度の実験と比較すると、速度は依然として良好であり、CPU GPU環境は上位中間レベルに属していると結論付けられます。

4.まとめ

この記事は素晴らしいオープンソースなので、後で複製することを検討します。