機械学習もここまで来たか,モザイク除去機が簡単に作れてしまう時代へ

面白いGitHubのリポジトリを見つけました.

github.com

こちら,かなりの精度でモザイクを除去することができるようです.

以下,GitHubのリポジトリ上で使われているサンプル画像を引用させていただきます.

モザイク除去効果

まずはどれだけの効果が出ているのかを確認しましょう.

例えば,このような顔の写真があります.

f:id:McG:20160830230457p:plain

これに,モザイクがけをするとこのようになります.

f:id:McG:20160830230533p:plain

これでは,元がどんな顔なのか正直全然わかりませんね.

しかし,今回のプログラムを使って復元してみると,このようになります.

f:id:McG:20160830230648p:plain

これはすごい,ほとんど再現することができています.

多少目の細かいところや口周りは異なっていますが,知人等が見れば「あれ?本人かもしれない...?」といったレベルまで復元できているといえるのではないでしょうか.

サンプルは他にも掲載されていました.

一番左がモザイクを掛けた画像,右から2番目が復元後で一番右が元の画像とのことです.

f:id:McG:20160830230816p:plain

ここまで精度よく復元できるとは驚きです.

人工知能技術で他に何ができるの?

このプログラムは,機械学習系のライブラリが充実しているPythonと呼ばれるプログラミング言語を用いて書かれています.

Pythonのライブラリの中で,今回はGoogleが開発した,TensorFlowと呼ばれるライブラリを使用しています.

モザイク復元処理には,深層学習モデルである,DCGAN(Deep Convolutional Generative Adversarial Networks)と呼ばれるものを利用してるようです.

簡単に言うと,DCGANは機械学習を利用して画像を生成するアルゴリズムのことです.

人工知能に学習させて,それっぽい画像を生成してくれるわけです.今回のモザイクの例だと,モザイクを掛けた画像とモザイクを掛ける前の画像を沢山学習させて,特徴点検出を行うと言った感じです.

また,DCGANでは,画像をベクトルのように扱うことが出来ます.

そのため,「メガネをかけていない男の人」と「メガネをかけている女の人」の二枚の画像を使って,「メガネをかけている男の人」の写真を生成することができるというわけです.

「ネガネをかけていない男の人」の画像から「男の人」のベクトル成分を取り,「メガネをかけている女の人」の画像から「メガネ」のベクトル成分を取って足し合わせると,「メガネをかけている男の人」の画像を生成できますね.

DCGANを利用した記事には,他にもいろんな人が様々なことをしています.

コンピュータに絵を書かせてみたり...

qiita.com

アイドルの顔画像を生成してみたり...

memo.sugyan.com

こちら,かなり詳しい解説がガッツリ載っていました.

まとめ

画質の悪い防犯カメラの画像からの犯人の特定とかができるようになったりするわけですよね.

そのうち,目撃者証言をそのまま人工知能にお渡しするといった時代が来たりして.

自動運転や画像処理,自然言語処理など様々なことで人工知能技術が使われていますし,Googleもどんどん積極的に開発をしています.

これからの人工知能の発展に期待です.

© 2016-2017 迫 佑樹