ペア画像はいらない!実用的な超解像技術の提案
3つの要点
✔️ ペア画像を必要としない
✔️ 超解像手法の直接拡大法および間接拡大法の欠点を同時に克服
✔️ ネットワークを分離することが肝
Unpaired Image Super-Resolution using Pseudo-Supervision
written by Shunta Maeda
(Submitted on 26 Feb 2020)
Comments: Published by CVPR2020
Subjects: Image and Video Processing (eess.IV); Computer Vision and Pattern Recognition (cs.CV)
企業紹介
Navier(ナビエ)株式会社 2018年創業のAIスタートアップ。
超解像をはじめとしたディープラーニングを活用した画像処理技術に特化して研究開発を行っています。
はじめに
本稿では、CVPR2020で弊社(Navier株式会社)が発表した論文 “Unpaired Image Super-resolution using Pseudo-supervision” をご紹介します。
論文ではページ数の都合で簡略化せざるを得なかった研究背景に比重を置き(1章と2章)、提案手法の技術詳細には簡単に触れるに留めます(3章)。読者としては専門外の方を想定し、深層学習を用いた超解像の課題と既存のアプローチについて包括的に記述するように努めました。提案手法の詳細に興味のある方は、ぜひ論文をお読みいただけると嬉しいです。
1. 超解像と深層学習
1-1. 超解像とは
超解像とは、解像度が低い画像の高周波成分を予測/復元して解像度を高める技術のことを指します。超解像技術は次の2種類に大きく分類できます。
・単一フレーム超解像
あるルールに基づいて周辺画素から補完を行い、学習/データベースを利用して予測することで、1枚の低解像度画像から解像度を高める技術
・複数フレーム超解像
互いにわずかに位置ずれした複数枚の低解像度画像を、位置合わせして再構成することで解像度を高める技術
大まかに言って、単一フレーム超解像は復元よりも予測、複数フレーム超解像は予測よりも復元の度合いが強くなるイメージです。本稿および本論文では、より広い用途をもつ単一フレーム超解像に焦点を当てています。次節からは特に断りのない場合、超解像といえば単一フレーム超解像のことを指します。
1-2. 深層学習による超解像
深層学習は、膨大な学習パラメータによる高度な予測と未学習データへの汎化を両立することで広範な技術領域に影響を与えました。特に、畳み込みニューラルネットワーク(CNN)を用いた深層学習は様々な画像認識/画像処理タスクに応用されています。1枚の低解像度画像からその高解像度画像を予測する単一フレーム超解像に対しても深層学習は非常に相性が良く、深層学習の登場によって大きく進展した技術領域の一つと言えます。しかし、以降で説明するように学習データと実データ(テストデータ)の不整合に起因して実環境において超解像性能が著しく低下する場合があり、深層学習を用いた超解像技術の実用に向けての障害となっています。
深層学習による超解像は、一般に、低解像度画像とその目標となる高解像度画像を学習データとして必要とします。そこで図1のように、高解像度画像$y$を任意の方法$D$で縮小し、縮小前後の画像ペアを用いて超解像ネットワーク$U$を学習することが多いです。具体的には、高解像度画像$y$を縮小して作成した低解像度画像$D(y)$を超解像ネットワーク$U$に入力し、$U$の出力画像$U(D(y))$と元画像$y$の差異を損失関数$L$で評価して$L$を小さくするように$U$を学習します。高解像度画像のみから学習するこの方法は自己教師あり学習に分類できます(他の流儀もあるかもしれませんが本稿ではこのように分類します)
図1:超解像ネットワーク$U$の学習方法(自己教師あり学習)
このように超解像ネットワーク$U$を学習することで、学習に用いていない画像であってもそれが学習データと同一の方法$D$で縮小されたものであれば精度良く高解像度化できます。一方この学習方法では、学習データと異なる方法で縮小された画像は上手く高解像度化できないことが(実験的に)知られています。
図2は学習データとテストデータを異なる縮小方法$D$で作成した場合の、テストデータの超解像結果です。$σ$は縮小の際に用いられたカーネルサイズを表しています。ここでは、図中の$σ_{SR}$が学習データの$D$、$σ_{LR}$がテストデータの$D$と考えていただければ十分です(左上から右下への対角線上でのみ$σ_{SR} = σ_{LR}$となっています)。$σ_{SR} ≠ σ_{LR}$の場合には、学習データとテストデータの不整合によって超解像性能が低下していることが見て取れます。
図2:縮小カーネルの不整合が超解像性能に及ぼす影響(下記より引用)
Blind super-resolution with iterative kernel correction
written by Jinjin Gu, Hannan Lu, Wangmeng Zuo, Chao Dong
(Submitted 6 Apr 2019 (v1), last revised 29 May 2019 (this version, v2))
Comments: Published by CVPR2019
Subjects: Computer Vision and Pattern Recognition (cs.CV)
Code
汎化という言葉を使って整理すると、先述の自己教師あり学習では、画像の内容(被写体の種類など)に対しては十分汎化する一方で、画像の縮小方法に対しては汎化が不十分であるということになります。学習データに含まれる画像の内容は多種多様であるのに対して、縮小方法$D$が固定されていることを考えれば、これはある意味当然のことと言えます。
超解像技術のユースケースを想像すると、縮小過程が既知のケースは稀ですし、そもそも縮小過程を経ていない画像が大半であるため上記の課題は実用上の大きな障害になります。
2. 深層学習による超解像手法の分類
前章で述べたように自己教師あり学習による超解像には実用上の課題がありますが、定量評価がしやすい(論文が書きやすい)ため盛んに研究されてきました。これらの研究では、いわば、理想的な学習データが存在する(学習データとテストデータの不整合がない)という前提の下で、いかにネットワーク構造と損失関数を改善し超解像性能を向上するかという点に焦点が当てられてきました。近年(2018年~)ではより実用を意識して、学習データの制約を緩めたり、未知の縮小過程に適応するための研究が増えてきています。
図3:学習データに着目した超解像手法の分類
深層学習による超解像の手法は、学習データに着目すれば図3のように分類できるでしょう。参考として2018年以降の主要国際会議で発表された論文からいくつかを選んで併記しています。大半の研究が自己教師あり学習に分類されるため、これらについては特に記載していません。
各学習方法の概要、利点、欠点を簡単にまとめました。
自己教師あり学習
概要:高解像度画像を任意の方法で縮小し、異なる解像度の画像ペアを作成して学習する。
- 利点:学習データを容易に作成できる。学習自体も簡単。
- 欠点:学習時と同一の方法で縮小された画像以外に対しては性能が低下する。縮小操作によって実際の低解像度画像を再現することが困難。
教師あり学習(ペア)
概要:解像度の異なるカメラで、あるいはカメラの倍率を変えて撮影した画像を位置合わせして学習データを作成する。
- 利点:実用性が高く、ペアで学習できるため性能も良い。
- 欠点:学習データの作成にかかるコストが大きい。不完全な位置合わせが学習に影響する可能性がある。
教師あり学習(非ペア)
概要:敵対的生成ネットワーク(GAN)などを利用して、ペアではないデータから学習する。
- 利点:学習データの作成が容易で位置合わせも不要。低解像度画像として実データを使用して学習できるので実用性が高い。
- 欠点:非ペアのため学習が不安定になりやすい。適切なペアの学習データが存在する場合にはペアで学習した場合と比べて性能が低くなる。
教師なし学習
概要:学習データを必要とせず、1枚のテスト画像のみを使用して高解像度化する。1枚のテスト画像内の互いに異なる位置の情報を利用したり、CNNに元より備わっている特性を利用する。
- 利点:汎用性が高く、原理的にはどんな画像にも適用可能。
- 欠点:1枚1枚の処理時間が長い。1枚のテスト画像の情報しか利用できないため、適切な学習データが存在する場合には教師あり学習に比べて性能が低くなる。
究極的な目標は、学習データとテストデータの不整合がない場合の自己教師あり学習の性能と教師なし学習の汎用性を両立することだと言っても良いと思います。しかし、現実的にはユースケースによって最適なアプローチを選択していくことが重要になります。
CVPR2020で発表された論文 Meta-Transfer Learning for Zero-Shot Super-Resolution は、自己教師あり学習による事前学習(メタ学習)によって教師なし学習を安定化/高速化することでその欠点を(部分的に)解消しています。この論文の紹介スライドを、以前弊社でインターンをしてくれていた内田さん(現所属:Sansan株式会社)が作成されています。とてもわかりやすいので是非ご覧ください。
次に、汎用性を軸に各学習方法を眺めてみます。
教師なし学習のように縮小過程の情報を必要としない汎用的な手法はブラインド超解像とも呼ばれます。ブラインド超解像は、1枚の画像からその縮小過程を陽にまたは陰に予測することで汎用性を高めていると考えることができます。しかし、ブラインドといってもほとんどの手法では予測可能な縮小過程の分布をある程度限定しているため、真の意味でブラインドと呼べる手法は限られています。ルールベースの単純なbicubic拡大法は真の意味でブラインドといっても良いと思いますが、その汎用性の代償としてどのような画像に対しても全体的に超解像の性能は低くなってしまいます。この意味で汎用性(ブラインド性)と超解像性能はトレードオフの関係にあるといえます。
教師なし学習に限らず、自己教師あり学習および教師あり学習の枠組みの中でも、ある程度汎用性を向上させることは可能です。自己教師あり学習の場合は、例えばデータ増強(augmentation)によって縮小過程にバリエーションを持たせることによって汎用性の向上が期待できます。また教師あり学習(ペア/非ペア)においても、様々なデバイスを使って撮影した低解像度画像を使用することで汎用性を向上できるでしょう(ただしペア学習の場合はデータの収集コストが非常に大きくなるためあまり現実的ではありません)。
3. 提案手法の紹介
3-1. 先行研究
本論文で提案した手法は非ペアデータを用いた教師あり学習に分類できます(前章の図3をご覧ください)。非ペアデータから学習するためには一般に、敵対的生成ネットワーク(GAN)が利用されます。非ペアデータを用いた教師あり学習はさらに次の2通りに大きく分類できます(図4)。
図4:非ペアデータを用いた教師あり学習の分類、(左)直接拡大法、(右)間接拡大法
・直接拡大法
概要:GANの生成器(超解像ネットワーク)が低解像度画像を拡大し、その出力が高解像度画像であるか否かを識別器が判定することで学習する。
- 欠点:超解像ネットワークの学習に通常用いられる画素レベルの損失関数(MSE、L1など)を利用できないため性能が低下する。
・間接拡大法
概要:GANの生成器が高解像度画像を縮小し、その出力が実際の低解像度画像であるか否かを識別器が判定することで縮小過程を再現するように学習する。生成器の出力(低解像度)と入力(高解像度)をペアにして超解像ネットワークを学習する。
- 欠点:生成器が出力した低解像度画像と真の低解像度画像の分布のずれによって超解像性能が低下する(どれだけ頑張っても生成器は真の低解像度画像を完全に再現することはできない)。
3-2. 提案手法
図5:提案手法の学習フロー
本論文では、前節で述べた直接拡大法および間接拡大法の欠点を同時に克服する手法を提案しました(図5)。黒と緑の実線で学習する際のフローを表していますが、テストの際には黒の実線で表示されたフローのみを使用します。図中左上の$x$が低解像度のドメインで、中央下側の$y$が高解像度のドメインです。
本手法の肝は、ネットワーク全体を非ペア学習の補正ネットワーク(図5 左)と疑似ペア学習の超解像ネットワーク(図5 右)に分離していることです。補正ネットワークは画像のドメイン変換を可能とするサイクル構造になっています。補正ネットワークは、まず、高解像度画像$y$を所定の演算で縮小した$y$↓を真の低解像度画像$x$のドメインにマッピングし、その後再度$y$↓のドメインに引き戻すことにより、擬似的な$y$↓を生成します。超解像ネットワークは、その擬似的な$y$↓から元の高解像度画像を再構成するようにペアで学習されます。
以上の手順で学習することで、先行研究の欠点が次のように克服されます。
超解像ネットワークはペアで学習ができるように補正ネットワークから分離されているため、これまでに自己教師あり学習の研究によって十分に調べられてきたネットワーク構造と画素レベルの損失関数を使用することが可能。
→ 直接拡大法の欠点を克服
補正ネットワークは生成された低解像度画像だけでなくサイクル構造を介して真の低解像度画像に対しても学習されるため、生成された低解像度画像の分布と真の低解像度画像の分布の違いが超解像性能を低下させない。
→ 間接拡大法の欠点を克服
図6は提案手法の中間出力画像です。上が実際の低解像度画像xを入力としたフローです。生成器$G_{XY}$↓によってノイズが除去できていることが確認できます。また、下が高解像度画像$y$を所定の演算で縮小した$y$↓を入力としたフローです。生成器$G_{Y}$↓Xが実際の低解像度画像を模倣したノイズを生成し、そのノイズを生成器G_{XY}↓が除去しています。
図6:学習時の中間出力画像
最後に、提案手法による超解像結果を見ていきます(図7)。ここでは、昨年開催された非ペアのデータセットから超解像を行うコンペ(AIM2019 Real-World SR Challenge)で提供されたデータセットを使用し、教師なし学習の代表的な手法であるZSSRと定性的な比較しています。ZSSRがノイズに対応できていないのに対して、本手法(Ours)ではノイズを除去できていることがわかります。定量結果や実験条件などの詳細は割愛しますので、ぜひ論文をお読みいただければと思います。
図7:超解像結果
まとめ
弊社がCVPR2020で発表した、実用的な学習条件における画像超解像に関する論文をご紹介しました。研究背景として深層学習を用いた超解像の課題を説明し、必要となる学習データの観点から既存のアプローチを分類することで、分野全体の中での本研究の立ち位置をご理解いただけるような構成にしました。本論文で提案した手法については最後に簡単に触れましたが、さらに興味のある方はぜひ論文を手にとっていただければと思います。
最後にこの場をお借りして、会議の査読行程およびPRMUメンターシッププログラムを通して論文原稿にいくつかの有益なコメントをいただいたことに対して、心より感謝申し上げます。
また著者インタビュー記事も取り上げていただいております。どう言った考えで論文投稿までを考えたかについても記事化されていますのでご覧ください。
お知らせ
Navierでは一緒に研究開発に取り組む仲間を募集しています!研究活動に重きを置いているのが当社の特徴です。画像処理技術で研究の最先端にチャレンジしたい方、先端技術を実際に使える形にする開発に興味がある方はぜひご一緒しましょう!採用職種一覧からご覧ください。
もう少し会社について話を聞いてみたい! という方はこちらにご連絡ください。
info@navier.co.jp
この記事に関するカテゴリー