超解像+CoreML+Swiftを使ってアプリの画像データ転送量削減に挑戦する | try! Swift Tokyo 2018 Day2-5

超解像」は低解像度画像を高解像度に変換する技術のことです。この技術をiOSアプリに適用することで、画像データの転送量削減が期待できます。本トークではCoreMLとSwiftを使って超解像処理を実装し、従来手法と比較・検証した結果についてご報告します。

超解像+CoreML+Swiftを使ってアプリの画像データ転送量削減に挑戦する

f:id:niwatako:20180302115614j:plain

こんにちは、DeNAのまつまえけんたろうです。 始めて英語でプレゼンテーションします。

今日は超解像度+CoreMLです。

低画質画像を高画質画像に復元する技術です。SRCNN、DeepLerningを使った技術です。

f:id:niwatako:20180302115746j:plain

マンガボックスという漫画サービスをやっています。

f:id:niwatako:20180302115752j:plain

f:id:niwatako:20180302115758j:plain

データ量の削減ができるのではないかと考えました

デモです。

f:id:niwatako:20180302115826j:plain

f:id:niwatako:20180302115829j:plain

f:id:niwatako:20180302115833j:plain

(ジャギっている画像がクリアになった)

f:id:niwatako:20180302115848j:plain

漫画画像を1/3に圧縮します。クライアントサイドで高解像度化します

ネットワークにつながっている必要はなくクライアント側だけでできます。

モデルを得る必要が

f:id:niwatako:20180302115922j:plain

あります

f:id:niwatako:20180302115936j:plain

OSS試しましたが、結果はよくありません。セリフが潰れる、スクリーントーンのテクスチャが失われました。

f:id:niwatako:20180302120003j:plain

f:id:niwatako:20180302120007j:plain

これはアニメでトレーニングされており、漫画向けでなかった

f:id:niwatako:20180302120032j:plainf:id:niwatako:20180302120035j:plainf:id:niwatako:20180302120039j:plainf:id:niwatako:20180302120046j:plain f:id:niwatako:20180302120108j:plainf:id:niwatako:20180302120112j:plainf:id:niwatako:20180302120117j:plainf:id:niwatako:20180302120120j:plainf:id:niwatako:20180302120123j:plainf:id:niwatako:20180302120126j:plain

サイズはけっこう小さい

本質的にはこの程度のコードでできます。 実行性能は1秒で1ページ分ぐらい変換できます

漫画以外にも使えそうなのでOSS化しました SRCNNKitで1行程度で簡単に組み込めます

学習済みモデル公開はダメでした。ちょっとお待ちいただきたいと思います。

学習スクリプトも同梱しました

f:id:niwatako:20180302120254j:plainf:id:niwatako:20180302120257j:plainf:id:niwatako:20180302120301j:plainf:id:niwatako:20180302120304j:plainf:id:niwatako:20180302120307j:plainf:id:niwatako:20180302120315j:plainf:id:niwatako:20180302120320j:plain f:id:niwatako:20180302120325j:plain

f:id:niwatako:20180302120333j:plain

UIImageのExtensionです。

モデルさえあればSwiftとCoreMLの知識で利用できます

f:id:niwatako:20180302120346j:plain

f:id:niwatako:20180302120349j:plain

[広告]面白かったら、ためになったら

  • はてなブックマークSwift タグをつけてブックマーク!
  • 「インターネットで生活を楽しく豊かにしたい」仲間を募集しています
  • Bitcoin: 3KGqXtR1ZaGVdkvcw8CCNrkDxDhdbZBYHL