見出し画像

1枚の写真を立体的に動かす~深度マップとディスプレイスメントマップを使って

はじめに

【カぶ旅#22】プリン食べに大分へ! part2:水族館&プリン編 よりプリンの写真を立体的に見せるシーンの制作方法を解説します。
作業手順さえ覚えれば非常に手軽に視差表現を実現できる、おすすめの方法です。

完成イメージ。素材は動画ではなく静止画です。

素材

  • 動かしたい写真 1枚

使用ソフト

  • Adobe After Effects (Aviutlでも可)

  • Adobe Photoshop

手順1:深度マップを作る

深度マップとは画像の奥行き情報を色で示した画像です(手前にあるほど白く、奥にあるほど黒く塗ったもの)。本記事での「立体的に動かす」はこの深度マップを元に手前と奥の視差を作り出すことで実現する…のですが、普通のカメラでは深度情報を撮影することはできません。

じゃあどうするのかというとすごい人たちが作ったソフトの深度マップ自動生成機能を利用します。ここではPhotoshopに搭載されているニューラルフィルターのひとつ「深度ぼかし」を利用します。

画像を開き「フィルター」→「ニューラルフィルター」から「深度ぼかし」を有効化します。

オプションの「深度マップのみ出力」にチェックを入れてOKで適用します。

この白黒画像が深度マップ。photoshopは手前が黒、奥が白で出力する様子。

フィルターを適用した白黒画像を保存します。

手順2:深度マップとディスプレイスメントマップを組み合わせる

AfterEffects(またはaviutl)に写真と深度マップを取り込み動かします。
同じスケール(倍率)で配置したあと、下記のようにエフェクトを設定します。

深度マップには「ブラー(ガウス)」、ブラー量を100、レイヤーを非表示に
写真レイヤーには「ディスプレイスメントマップ」、マップレイヤーを深度マップのレイヤー、その隣の設定を「エフェクトとマスク」に(重要)。加えて水平置き換えに使用/垂直置き換えに使用を「輝度」に。

この状態でディスプレイスメントマップの「最大水平置き換え」または「最大垂直置き換え」を弄ってみましょう。

ぐりぐり動きます

ディスプレイスメントマップはエフェクトにセットした「マップ」の濃淡に従って画像を変形させるエフェクトです。今回はマップレイヤーに深度マップをセットし、濃淡における変形量の割合をコントロールすることで「手前(奥)にあるピクセルほど大きく変形させる」、すなわち遠近感があるかのような動きを実現しています。

なお深度マップに「ブラー(ガウス)」をかけているのは深度マップのエッジ(濃淡の差が大きいところ)で変形が破綻する影響を軽減するためです。どの程度ブラーをかけるかは現物合わせで調整します。

深度マップブラーなし。プリンやお皿、コーヒーカップの持ち手部分などに破綻が見える。

最後にディスプレイスメントマップの「最大水平置き換え」「最大垂直置き換え」にキーフレームを打ち、時間に応じて変形具合を変化するようにすれば完成です。

おまけ1:aviutlで編集する場合

aviutlの場合は下記のツイートを参考にエフェクトを設定してみてください。

おまけ2:深度マップの応用先

深度マップは「奥行きに応じてぼかす=ピント位置の前後をぼかす」という表現にも活用できます。After Effectsだと「ブラー(カメラレンズ)」を適用し、「ブラーマップ」に深度マップのレイヤーを指定、「ブラーの焦点距離」を変更することで後からピント位置を調整することができます。

参考

この手法を取り入れて作成した動画です。


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