ディープラーニングでモノクロ写真に自動で色つけする「ColouriseSG」
シンガポールの政府関係テクノロジーを活用した試みから誕生したのが、モノクロ写真に自動で色つけするウェブアプリの「ColouriseSG」です。ColouriseSGは1890年から1923年にかけてシンガポールのチャイニーズガールズスクールで撮影されたモノクロ写真を色つけするために、ディープラーニングを用いて作成されたツールで、開発に携わった政府関係の技術者たちがブログの中でその秘話を語っています。
Bringing black and white photos to life using Colourise.sg
https://blog.data.gov.sg/bringing-black-and-white-photos-to-life-using-colourise-sg-435ae5cc5036
モノクロ写真を自動で色つけしてくれる「ColouriseSG」は、以下から使える無料のウェブアプリ。
ColouriseSG
使い方は簡単で、まずはページにアクセスして「Try it yourself」をクリック。
「Select photo」をクリック。
そして色つけしたいモノクロ写真を選択して、「開く」をクリック。
すると以下のように元になったモノクロ写真と色つけした写真が同時に表示されます。ColouriseSGが使用するディープラーニングモデルは、人間の被写体と自然の風景を際立たせるもので、高解像度の画像を使うとよりうまく色つけしてくれるとのこと。なお、色つけのためにアップロードしたモノクロ写真がサーバー上に保存されることはありません。
実際に色つけした写真をダウンロードすることもできます。
ColouriseSGの開発に携わったというソフトウェアエンジニアのプレストン・リムさんは、「これまでに古いモノクロ写真を見て疑問に思ったことはありませんか?写真を撮影した人は実際どのような光景を見ていたのでしょうか?」と語っています。ColouriseSGはモノクロ写真が撮影された際の色味を正確に再現するというものではありませんが、写真に違和感のない色味を追加し、「モノクロ写真が撮影された瞬間にどのような光景が見られたのかを想像する助けとすることは可能」とのこと。
リムさんたちはColouriseSGを2019年1月に行われたハッカソンの中で作り上げたそうで、特に1890年から1923年にかけてシンガポールのチャイニーズガールズスクールで撮影されたモノクロ写真を色つけ「ディープラーニングカラーライザーツール」として開発したと記しています。なお、ColouriseSGの色つけのポイントは「もっともらしい色で画像を生成すること」であり、モノクロ写真が撮影された際の実際の色を正確に再現するというものではありません。また、リムさんたち開発チームは「ディープラーニングを用いたモノクロ写真への色つけは活発な研究分野であり、自分たちのモデルは決して完璧なものではない」とも記しています。
リムさんは「モノクロ写真をカラー化するツールが存在するのは事実ですが、私たちの知る限りではシンガポールの歴史的背景に即してカラー化を訓練したというツールは存在しません」と語っています。なぜ「シンガポールの歴史的背景に即したカラー化」が必要なのかといえば、既存のカラー化ツールであるAlgorithmiaなどを使っても、シンガポールで過去に撮影された写真ではあまり精度の高い色つけができないからだそうです。
Algorithmiaでシンガポールの古いモノクロ写真がうまく色つけされない理由は単純で、Algorithmiaのトレーニングデータセットに使用されている写真とシンガポールの古いモノクロ写真があまりにも異なるものであるためです。なお、Algorithmiaではスタンフォード大学とプリンストン大学の研究者によって作成された画像データベースのImageNetから、130万枚の画像を使用して色つけの学習が行われたそうで、「ImageNetにシンガポールに関連する画像が存在する可能性は低い」とリムさんは指摘しています。
そこで、よりシンガポール特有の歴史的な写真などで学習した色つけツールを作成することで、古い歴史的な写真の色つけをより信ぴょう性のあるものにしようとリムさんたち開発チームは考えたわけです。写真の色つけのため、人間のモノクロ写真をカラー化するアーティスト色は大まかに言うと「1:モノクロ写真にとって適切な色を導き出すために、写真の歴史的・地理的・文化的背景に関する調査を行う」「2:Photoshopなどのソフトウェアツールを使用してモノクロ写真に色をつける」という2つのタスクを行うそうです。そこで、コンピュータープログラムには、以下のようなプログラムを行わせる必要があるとリムさんたち開発チームは考えたそうです。
1:モノクロ写真から対象物を識別して過去に見たことのある画像から、対象物のもっともらしい色味を決める
2:モノクロ写真に色をつける
そしてリムさんたちはモノクロ写真の色つけのために敵対的生成ネットワーク(GANs)を使用することを決定。このGANsが「ジェネレーター」として機能する最初のニューラルネットワークとなり、画像内の特徴に基づいてモノクロ写真内のさまざまなピクセルの色値を予測しようとする、2000万以上の数学パラメータを備えます。さらに、生成された色が元の写真と比較してフォトリアリスティックであるかどうかを識別するためにも、GANsのニューラルネットワークが活用されているそうです。
2つ目のニューラルネットワークが「色つけがフォトリアリスティックである」と判断するまで1つ目のニューラルネットワーク、つまりはジェネレーターを訓練します。なお、モデルの開発には人気のあるfast.aiおよびPyTorchを使用し、データセットには50万枚以上の古いシンガポールの写真使用。これらをNVIDIA V100 GPUを搭載したローカルGPUクラスターを使用し、トレーニングしたそうです。
この時点ではディープラーニングモデルは開発チームの働くオフィスに置かれたローカルGPUクラスターにあり、作成したディープラーニングベースのカラーライザーツールはリムさんたち開発チームにしかアクセスできない状態でした。しかし、開発チームは誰でもカラーライザーツールを使えるようにするために、ディープラーニングモデルをインターネット上に保存する必要がありました。そこでリムさんたちはGoogleクラウドプラットフォームを使用することを決定。最終的に約3秒でアップロードされたモノクロ写真を色つけすることが可能になっています。
リムさんたち開発チームは作成したディープラーニングベースの色つけツールを「ColouriseSG」と名付け、一般向けにも公開しています。なお、開発チームはニューヨーク公共図書館とシンガポール国立公文書館から資料として提供してもらったモノクロ写真(左)をColouriseSGで色つけ(右)しており、特に上手く色つけすることに成功した例をブログ上で公開しています。
1963年9月16日のマレーシア・デイに撮影された、シンガポールの初代大統領ユソフ・ビン・イサークとマレーシアの政治家イスマイル・アブドゥル・ラーマンの写真
シンガポールのコノートドライブの写真
シンガポールで撮影されたココナッツの殻の山の中で放牧されている牛の写真
シンガポール最古のホテルとして知られるジ・アデルフィ・ホテルの写真
シンガポールのアンダーソン橋の写真
・関連記事
100年以上前の白黒写真をディープラーニングで鮮やかなカラー写真によみがえらせる「DeOldify」 - GIGAZINE
白黒写真を自動で違和感なく色つけしてくれる驚愕のサービスが登場 - GIGAZINE
奇妙でお気楽な雰囲気のある白黒写真50連発 - GIGAZINE
モノクロ写真の一部だけをカラーにしてインパクトを与えている写真の例いろいろ - GIGAZINE
約100年前に撮影されたカラー写真 - GIGAZINE
かつてないレベルで白黒写真に色が付く錯覚画像の作り方 - GIGAZINE
・関連コンテンツ