この記事のコードは、PaddleGANに基づいて開発されています。
MPR_Net
1 はじめに
MPR_Net はCVPR2021 で公開された画像復元方法です。画像復元タスクでは、画像を復元する際に、空間の詳細と高レベルのコンテキスト情報との間の複雑なバランスが必要です。MPR_Net は、これらの競合する目的を最適にバランスさせる新しい協調設計を提案します。主な提案は、劣化した入力の復元機能を徐々に学習する多段階アーキテクチャであり、復元プロセス全体をより管理しやすいステップに分解します。具体的には、モデルは最初にエンコーダー/デコーダー アーキテクチャを使用してコンテキスト化された機能を学習し、次にそれらをローカル情報を保持する高解像度ブランチと組み合わせます。各段階で、MPR_Net は、その場で監視された注意を活用してローカル機能を再重み付けする、新しいピクセルごとの適応設計を導入します。このマルチステージ アーキテクチャの重要な要素は、異なるステージ間の情報交換です。この目的のために、MPR_Net は、情報が初期段階から後期段階まで順次交換されるだけでなく、情報の損失を回避するために機能処理ブロック間に横方向の接続があるという 2 つのアプローチを提案します。その結果、MPRNet と呼ばれる緊密に相互接続されたマルチステージ アーキテクチャは、画像のデレイン、ブレ除去、ノイズ除去などのさまざまなタスクにわたって、10 個のデータセットのパフォーマンスを大幅に向上させます。
2 使い方
2.1 クイックスタート
PaddleGAN をインストールした後、次のように Python コードを実行して、復元されたイメージを生成できます。その中には、 、 、 から選択できるtask
回復方法の種類があり、がピクチャ パスです。Deblurring
Denoising
Deraining
PATH_OF_IMAGE
ppgan.apps からインポート MPRPredictor 予測 = MPRPredictor(task='Deblurring') predictor.run(PATH_OF_IMAGE)
または、次のようなコマンドを実行して同じ結果を取得します。
python applications/tools/mprnet.py --input_image ${PATH_OF_IMAGE} --task ブレ除去
その中には、 、 、 から選択できるtask
回復方法の種類があり、がピクチャ パスです。Deblurring
Denoising
Deraining
PATH_OF_IMAGE
2.1 データセットの準備
ブレ除去されたトレーニング データセットは GoPro です。ブレ除去用の GoPro データセットは、サイズが 1,280×720 の 3214 枚のぼやけた画像で構成されています。これらの画像は、2103 のトレーニング画像と 1111 のテスト画像に分けられます。ここからダウンロードできます。ダウンロード後、データディレクトリに解凍します。展開された構造はGoProdataset
次のとおりです。
GoPro ├── 電車 │ ├── 入力 │ └── ターゲット └── テスト ├── 入力 └── ターゲット
ノイズ除去トレーニング データセットは SIDD です。これは、10 の異なる照明条件からの 30,000 のノイズを含む画像を含む画像ノイズ除去データセットであり、トレーニングおよびテスト データセットからダウンロードできます。ダウンロード後、データディレクトリに解凍します。展開された構造はSIDDdataset
次のとおりです。
SIDD ├── 列車 │ ├── 入力 │ └── ターゲット └── val ├── 入力 └── ターゲット
Deraining トレーニング データセットは合成雨データセットで、複数のデータセット (Rain14000、Rain1800、Rain800、Rain12) から収集された 13,712 のきれいな雨水画像ペアで構成され、トレーニングおよびテストデータセットからダウンロードできます。ダウンロード後、データディレクトリに解凍します。展開された構造はSynthetic_Rain_Datasets
次のとおりです。
Synthetic_Rain_Datasets ├── 訓練 │ ├── 入力 │ └── ターゲット └── テスト ├── Test100 ├── Rain100H ├── Rain100L ├── Test1200 └── Test2800
2.2 トレーニング
例として、ブレ除去のトレーニングがあります。他のタスクをトレーニングする場合は、構成ファイルを置き換えることができます。
python -u tools/main.py --config-file configs/mprnet_deblurring.yaml
2.3 テスト
テスト モデル:
python tools/main.py --config-file configs/mprnet_deblurring.yaml --evaluate-only --load ${PATH_OF_WEIGHT}
3件の結果
ブレ除去
モデル | データセット | PSNR/SSIM |
---|---|---|
MPRNet | ゴープロ | 33.4360/0.9410 |
ノイズ除去
モデル | データセット | PSNR/SSIM |
---|---|---|
MPRNet | シド | 43.6100 / 0.9586 |
雨に
モデル | データセット | PSNR/SSIM |
---|---|---|
MPRNet | レイン100L | 36.2848 / 0.9651 |
4 ダウンロード
モデル | 仲間 |
---|---|
MPR_ブレ除去 | MPR_ブレ除去 |
MPR_ノイズ除去 | MPR_ノイズ除去 |
MPR_Deraining | MPR_Deraining |