ポートレートモードは複数のカメラを利用した深度測定により、主題を浮き上がらせ背景をぼかす技術です。そのときに大事なのがカメラと被写体との距離。スマートフォンがどこが撮影対象で、どこが背景なのかを1ピクセル単位で理解することで、シャープな写真で美しいボケが実現できるようになります。
Googleの最新スマートフォン、Pixel 4ではポートレートモードにおいて、デュアルピクセルとデュアルカメラを活用して、2つの大きな改善がなされました。
Google AIブログがその仕組みと改善点について紹介していたので、わかりやすく解説します。
目次
改善点①より精度の高い深度測定
Pixel 4では新たにデュアルカメラになったことでよりポートレートモードの精度がより高くなっています。
従来はデュアルピクセルでポートレートモードに対応していた
Pixel 2とPixel 3はシングルカメラでしたが、ポートレートモードが利用できました。これは、センサー上のピクセルを半分に割る、「デュアルピクセル」の技術が利用されています。
二つに割られたピクセルからは、それぞれ少しだけずれた画像が得られます。上のGIF画像は、二種類のピクセルから得られた画像です。これを見ると、少しだけズレが有ることがわかります。
これは「視差(Parallax)」と呼ばれる現象です。少しずれた点から対象を見ると、得られる絵も少しずれていることです。右目と左目で見る映像が少し違うのは視差が原因です。
この視差、自分と対象の距離によってズレが変わってきます。近いものほど視差は大きくなり、遠いものほど視差は小さくなります。右目と左目で実際にやってみるとよくわかりますね。
Pixel 2とPixel 3では、このデュアルピクセルを用いた視差から深度情報を取得、対象と背景を判別し、背景のみをぼかしていました。これにより、シングルカメラでもポートレートモードが使えました。
デュアルカメラでポートレートモードがより改善
しかし、従来のこの方法では一つ問題がありました。それは、デュアルピクセルの割る方向の深度測定に弱いことです。
我々の眼は左右についているため、左右のズレは認識できますが、上下のズレは認識できません。それと同じでデュアルピクセルも割る方向に対して、深度測定が弱い方向がありました。
この問題ですが、Pixel 4でデュアルカメラになったことで改善されました。
Pixel 4はカメラが横に並んでいるのに対してその垂直の方向にデュアルピクセルが並んでいます。これにより、片方の方向はデュアルピクセルの視差を、片方の方向はデュアルカメラの視差を利用することで、どの方向のズレでも認識できるようになりました。
この画像を利用してわかりやすく説明ができます。
上段の鳥のゲージの写真ですが、一番左のデュアルピクセルに基づく深度マップでは、縦方向の測定がうまくいっておらず、縦の深度マップが表示されていません。そこで、真ん中の、デュアルピクセルの垂直に並んだデュアルカメラに基づく深度マップの情報を補完してやることで、右のような上下左右どの方向においてもきれいな深度マップが作成できます。
【補足】デュアルピクセルのほうがデュアルカメラよりも優れている理由
デュアルカメラによる深度マップはデュアルピクセルによる深度マップよりも汚く見えます。これは、カメラスペックと視差の大きさが影響しています。
Pixel 4のデュアルカメラは画素数が異なる広角と望遠なので、2枚の画像の差が大きすぎて視差情報が得られないピクセルが現れます。カメラが2つある方がうまくいきそうな気がしますが、意外とデュアルピクセルの方がいいボケが得られるのです。
もちろんこれらの2種類の深度情報は、Googleお得意の機械学習を活用してお互いを補う形で利用されることになります。ここに関してはあまり詳しくないのでパスさせていただきます。
まとめると、デュアルピクセルとデュアルカメラの2種類の深度情報を活用することで、より正確なボケ量がわかるようになりました、ということです。
改善点②より美しい丸ボケ
Pixel 4では背景ボケの美しさも改善されています。
左から一眼レフカメラの丸ボケ、従来のスマホカメラの丸ボケ、Pixel 4の丸ボケ
一眼カメラでは、背景ボケはピントがずれていることから発生します。手前の対象にピントを合わせると自然と背景のピントがずれ、それにより背景がボケます。スマホカメラでは、センサーサイズやレンズサイズが小さいため、ピントのズレは一眼カメラほど大きくないため背景があまりボケません。
従来のポートレートモードのボケは低コントラストだった
従来のスマホのポートレートモードでは、写真に深度マスクを掛け、背景の部分をガウスぼかしのようにデジタル的にぼかすことでポートレートモードを実現していました。しかし、これではコントラストが低くなります。
一眼カメラの丸ボケは、該当やイルミネーションなどの強い光源に対して発生します。強い光源のボケは丸くなったボケに十分な光の量が届いているため、明るい丸ボケになります。
一方で、デジタル的にぼかしたものは、明るさも分散されてしまいます。その結果、ボケのコントラストが落ちてしまいます。絵の具を水でにじませると絵の具の色が薄くなるのをイメージしていただければよく分かると思います。
ボケ写真の撮影とHDRで解決
Googleは、この問題を別途ボケ写真を撮影することと、HDRで解決しました。
まずはボケのコントラスト向上です。
シャープな画像とは別に全部ボケた画像を先に撮影し、深度マッピングをした後に背景にそのボケ画像を合成することで、原理的には一眼カメラと同じボケにすることができます。これにより、上のGIF画像のように、ハイコントラストでシャキッとしたボケとなりました。
また、この手法により明度情報が少しかけてしまいますが、それはHDR+を利用することで解決しました。
これらの新しい技術により、Pixel 4では一眼カメラに近いより美しいボケとなりました。これを実現するためには一度に様々なボケ量、様々な明度の写真を撮影し、一瞬で合成する必要があります。Googleの機械学習に基づくアルゴリズムがあってこその技術であると言えるでしょう。ボケに関してはGoogle自身が作例集を上げているので興味があればぜひ見てみてください。
この美しいボケはバージョン7.2にアップグレードしたGoogle Cameraアプリで、Pixel 4のメインカメラ及びPixel3, 3aのリアカメラで体験することができます。
いくらスマホカメラが進化しても、未だに一眼カメラとスマホカメラの間には大きな壁があります。Googleのこうしたアルゴリズムの改善で一眼カメラに近い写真を撮る試みは、一眼カメラとスマホカメラの壁を超えられるようになるのでしょうか。Pixelの進化に期待ですね。
Source : Google AI Blog
Google強い