見出し画像

AIによる画像修復

今回はAIの応用例の一つとして画像修復の技術を紹介します。AI、とくにディープラーニングは画像処理を中心にここ数年で大きな進歩をもたらしています。画像にディープラーニングを使った事例は既にいくつもありますが、今回は私が個人的に面白くて応用性の高いと感じた画像修復についてご説明します。

画像修復とは

文字で説明するより、まずは画像を見たほうが早いですね。

スクリーンショット 2020-05-16 9.24.24

AIモデルに左の画像を読み込ませると右の画像を出力します。要は画像修復とは画像の欠けている部分を修復する技術です。この画像はNVIDIA社が発表した方法を元にした方法で修復されています。(ここで好きな画像でお試しできます )

仕組み

ここでは具体的な数式の話はしませんが、簡単な原理を説明しておきます。

モデルの学習アルゴリズム
①欠損のない普通の画像(A)を用意
②その画像の一部をわざと欠損させた画像(B)を作成
  同時に画像のどの場所が欠損しているかというデータ(C)も作成
③一部が欠けた画像(B)と欠損場所のデータ(C)の2つをモデルに読み込ませて、
  欠ける前の元の画像(A)を生成させるようにモデルに少しずつ学習させていく。

スクリーンショット 2020-05-16 11.11.19

画像の欠損場所データがあることでモデルは「この場所を復元すればいいんだな」、「ということはそれ以外の場所はそのままでいいんだな」と理解してくれるようになります。この学習を続けていくと、いずれモデルは欠けた画像から元の画像に近いものを生成できるようになっています。

スクリーンショット 2020-05-16 11.39.28

実際に私が論文を再現したときのモデルの学習が進んでいく様子です。はじめは元の画像どころか何が写っているかもわからない画像が出力されますが、学習が進むにつれて元の画像に似た像が生成されているのがわかります。論文によると、この顔写真を修復するモデルを作成するために約3万枚の顔写真と3日間の時間を学習に使っています。

AIも万能ではない

画像修復は実際に一部が欠けた画像の復元に使うことも可能ですが、必ずしもオリジナルの画像を正確に復元できるわけではありません。というのも、この画像修復、オリジナルの画像を復元しているのではなく、あくまでAIが自然な画像になるように書き足しているだけなのです。なのでこの技術を使って顔写真を修復したところで、その画像が本人の顔と一致している保証はありません。

スクリーンショット 2020-05-16 11.46.32

冒頭でお見せした写真の元画像がこれです。AIによって修復された画像も、どこかに実在する人物のように写っていますが、オリジナルの顔とは別人ですね。(元画像リンク

つまり修復された画像は、モデルがこれまでに「過去に学習した画像をお手本にして欠損部分に手を加えた画像」なのであって、「オリジナル画像をそのまま復元できるもの」ではありません。それがこの技術の限界でもあります。

しかし、この限界を逆手にとった活用法もあると思います。たとえば不自然な映り込みの除去です。

応用①不自然な映り込みの除去

スクリーンショット 2020-05-16 12.01.10

前述の通りモデルは学習したお手本をもとに復元しようとするので、どうしても平均的な自然な画像に仕上げます。この特性を利用して不自然な映り込みを自然な描写に変更することができます。

これは既に一部で製品化されています。例えばこのアプリでは消したいオブジェクトをタップするとそれを画像から自然に削除してくれます。このアプリで使われている技術がここで紹介した手法と同一かは定かではありませんが、似たような技術を使っていると考えられます。

応用②プライバシー保護

スクリーンショット 2020-05-16 12.09.18

その他の応用例だとプライバシーの保護にも活用できそうです。写真や映像で人物の顔にぼかしを入れることがありますが、ぼかしを使うとどうしても違和感のある画になってしまいます。そこでぼかしを入れるのではなく、その部分を画像修復で加工してあげることによってプライバシーを保護しつつ自然な画像に編集することができるでしょう。

プライバシー保護にも似てますが、画像修復で加工した自分の写真をプロフィール画像やアバターとして使用することもできますね。自分に似ているけど別人に見える写真をつくることができます。

今後の展望

今回ご紹介した手法は2018年に発表されたものです。ご存知の通りこの分野の技術進歩はとても速く、現在ではさらに高精度な手法や派生形が続々登場しています。面白いと思った手法を少し紹介しておきます。

動画への拡張

画像を3Dに変換 
(3Dにするためには写真では見えていない陰(被写体の裏側など)の領域を補う必要がありますよね。そこに画像修復が使われています。)

さいごに

AIの技術進歩が社会に及ぼす影響はますます大きくなることが予想されます。しかし、これらの技術を社会で役立てるためには技術力だけではなく、課題を発見し解決可能な問題に落とし込む応用力も必須です。この応用力を身につけるためには、「これを問題をデータ分析で解決するにはどうするか」「この手法はどのように応用されるべきか」と日頃から考える習慣をつけることです。

あなたならこの画像修復の技術を何に応用したいですか?

この記事が気に入ったらサポートをしてみませんか?