1枚の画像から精巧な3Dを生成するスクリプトで3D化させてみた

先日、面白いニュースが公開されました。
RGBに「奥行き(Depth)」情報を加えた「RGB-D」画像から、立体的な写真である「3D写真」を生成する方法ということなのですが、よくわかりません(;^_^A
こちらの論文です。
https://shihmengli.github.io/3D-Photo-Inpainting/

でも、1枚の画像から精巧な3D画像が作成できるというのは、興味深いです。
ということで、私も実際に1枚の画像から精巧な3D画像を作成してみました。

まずは、フリー画像サイト、pixabayの画像をお借りしてどんな動きが生成されるのかを説明します。


スクリプトを実行すると以下の3つの動きの3D動画が生成されます。

一気に3つできるのは面倒くさくなくていいにゃん!

ファンタジーな風景画像の場合

元画像

circleの動き

円を描くようにグリグリと動きますね。
空と浮遊している島との奥行き感がすごいです。少し右側が欠けてます。

swingの動き

半円を描くような動きです。

zoom_inの動き

そのままズームインです。
立体感をアップさせるため?ちょっと斜めにズームしていく感じですね。

こんな感じですね。

他にも同じくフリー画像を利用して検証してみました。

丘にオオカミがいる画像の場合

元画像

circleの動き

オオカミが手前にいることがはっきりわかりますね。これが1枚からできてるとは思えません。右側が少し欠けてます。

swingの動き

これも右端が欠けていますが、すごい奥行き感です。3Dって感じです。

zoom_inの動き

ズームイン!
オオカミ自体もちゃんと左半身が見えてきそうな感じです。

すごいにゃ!
こんにゃに3Dに見れると思ってにゃかったにゃ!

すごいよねー!
しかも写真だけじゃなくて絵でもできるんだよー

それは気になるにゃ!
ひろとあきの絵でも試してほしいにゃ!

じゃあ、やってみよう!
でもその前に手順を説明するね。

1枚の画像から3D映像を作成する具体的な手順

3D化の手順.1

まず、googleアカウントにログインしてから、コチラへアクセスします。すると、以下のような画面が表示されます。

3D化の手順.2

ファイルタブの中にある「gitHubにコピーを保存」をクリックします。

3D化の手順.3

コピーされたら、「Prepare environment」と書かれた矢印アイコンをクリックします。アイコンがグルグルと回転するようなアニメーションしている間は処理をしているので待ちましょう。
処理経過も表示されます。

こんな感じですね。アイコンがこんな感じでグルグルアニメーションします。
動かなくなったら、次の手順に進みましょう。

3D化の手順.4

次に、「Download script and pretrained model」の矢印アイコンをクリックします。
同じようにアニメーションが終わったら、次の手順へ。

3D化の手順.5

「Switch off off-screen rendering」の(1)をクリック。
アニメ終了後、(2)をクリック。

3D化の手順.6

【ファイル選択】をクリックして、3D化させたい画像ファイルを選択します。
画像フォーマットは、jpgなので注意しましょう。

3D化の手順.7

「!python main.py –config argument.yml」の矢印アイコンをクリックすると、3D化のスクリプトが実行されます。処理終了までは結構時間がかかるのでのんびり待ちましょう。

3D化の手順.8

以下のように表示されると終了です。
次の手順に進みます。

3D化の手順.9

サイドメニューの更新(2)をクリックして、更新します。
フォルダアイコン(1)をクリックするとフォルダツリーが表示されます。

「3d-photo-inpainting」→「movie」を開くと、元の画像ファイル_swing.mp4などのようなファイルが作成させているはずです。

上手くできない場合

もし、デフォルトのmoon.jpgのものしかできてなかったら、フォルダツリーを右クリックして直接imageフォルダに入れて、スクリプトを走らせる(手順7)とちゃんとできると思います。(moon.jpgは削除してもいいようです)

結構大変にゃ感じするけど、ボクでもできる?

ほとんどクリックするだけだからできると思うよ。

わかったにゃん!
あとでやってみるにゃ!

長くなったので、私の絵を3D化してみる実験は次の記事にしようと思います。
今回は、1枚画像から精巧な3D映像を作成する方法でした。
技術の進歩はすごいですね!

スポンサーリンク