質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.47%
3DCG

コンピュータの演算により、3次元空間の仮想物体を、2次元平面上で表現する手法である。

Q&A

解決済

5回答

29139閲覧

ディープラーニングによって2次元画像から3Dモデルを生み出す技術はありますか?

KureteRubyLua

総合スコア206

3DCG

コンピュータの演算により、3次元空間の仮想物体を、2次元平面上で表現する手法である。

3グッド

5クリップ

投稿2016/11/27 10:08

編集2016/11/27 11:20

3Dモデルを簡単に作れる技術、今のゲームや映画とまで行かなくても、MMDで使われているような3Dモデルをたった一日で一から製作してしまうような技術はないのか、
あるいは作る事は出来ないのかと、かなり真剣に悩まされています。

そこで、ディープラーニング系統の技術を使い、大量の3Dモデルと2D画像を
学習させて2D画像から推測して3Dモデルを生成するようにすれば
行けるのではないかとも思ったのですが誰でも思いつきそうな事なのに
調べても出てきません。
調べてでも出てこないという事は、おそらく何らかの技術的障壁がある
というところまでは想像できるのですが具体的にどのような壁があるのでしょうか?

LLman, nayates, shibuya👍を押しています

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答5

0

2D画像から3Dオブジェクトを作成する「StyleLit」
https://www.youtube.com/watch?v=Qx-ISmfOF4g
![]イメージ説明

デモならここからダウンロードできます
http://stylit.org/

スケッチから3Dオブジェクトを作成
http://users.cecs.anu.edu.au/~yili/cnnsbsr/
Pythonのソースコードをダウンロード出来ます
イメージ説明

一枚の画像から自動で髪の毛を生成
https://www.youtube.com/watch?v=XmM1tF7AxdA
イメージ説明

一枚の画像から3Dの人間のポーズと形を生成「SMPLify」
https://www.youtube.com/watch?v=eUnZ2rjxGaE

インタラクティブにスケッチからモデリング
https://www.youtube.com/watch?v=rn4T9Y9PbgQ

ボクセルベースのVAE、マインクラフトみたい
https://www.youtube.com/watch?v=LtpU1yBStlU

こちらもマインクラフトみたい
https://github.com/mxgmn/WaveFunctionCollapse

オートエンコーダを使っての手続き型モデル、複数のオブジェクトを混ぜあわせたオブジェクトを作成
https://www.youtube.com/watch?v=wl3h4S1g2u4

まだまだ沢山ありますが紹介しきれないです

投稿2016/11/27 14:19

編集2016/11/27 14:48
cat_breed

総合スコア123

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

ベストアンサー

ディープラーニング系統の技術を使い、大量の3Dモデルと2D画像を
学習させて2D画像から推測して3Dモデルを生成するようにすれば

良い発想ですし、「ディープラーニング(DL)」が有名になったので、
それを利用すればいいのでは、と疑問に思われるのも分かります。

しかし、何でもかんでもDLだけで解決するわけではありません。
たしかにDLは優秀ですが、銀の弾丸ではないのです。


なぜDLでやらないかというと、3Dモデルを直接作った方が早いからです。
後述する集団を描くシーンは大変ですが、コピペして使い回せる部分があります。

3DCGでは、とくにコマ数が多い場合には、
モデルを作る部分よりも、アニメーションが一番大変な部分です。
そのアニメの部分は、モーションキャプチャーでやった方が早くて確実です。


東大のTeddyについては、「マジカルスケッチ」や
「ラクガキ王国」にすでに製品化されています。

ただし、実際に試しましたが、大ざっぱな形になるので、
精密なモデリングに使うには、まだ今後の課題が残ると思います。


じゃあダメなのかというと、むしろ将来的に有望かもしれません。

とくに集団を描く部分のアニメーションなんかは、
コスト的に群体AIで済ませたいという要求が強いでしょう。

群体AIには「Boid(s)」というアルゴリズムがあって、
すでに人工知能で研究されている分野です。

ただし、将来主流になるAI=ディープラーニングとは限りません。
技術は適材適所の使い分けが一番重要で、
人工知能にしても様々なアルゴリズムを広く学ぶ必要があります。

また、VRやARを使って人間がモデリングする手法の可能性もあると思います。
技術は手段なので、人工知能だけに固執する必要はないのです。


あと、『Poser』とか『Vue』とかが実用例ですが、
髪の毛や自然物の処理といった物理的な法則に従うものは、
かなり自動生成できるようになってきました。

しかしこれは、DLというより物理シミュレーション(エンジン)の
発達でできるようになったので、何でもかんでもDLということへの違和感は消えません。

投稿2016/11/27 13:48

編集2016/11/27 16:56
LLman

総合スコア5592

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

KureteRubyLua

2016/11/27 13:52

モーションキャプチャが出来る3Dモデルに限られてしまいますが 3Dアニメーションの場合は可動式フィギュアを作り、それを動かしたデータを Leap MotionやKinectでデータとして取得すれば取得すれば比較的簡単に 作れるのではないかと考えているのですがどうでしょうか?
LLman

2016/11/27 17:13 編集

>可動式フィギュアを作り、それを動かしたデータを >Leap MotionやKinectでデータとして取得すれば それはアニメーションの方法ですか? それとも3Dモデリングの方法ですか? もし前者なら、本文でモーションキャプチャを述べたように、 Kinectで普通にモーションキャプチャはされていますし、 Leap Motionによるモデリングもすでに行われています。 また、想像されているものとは異なるでしょうが、 「クーマリオン」のようなフィギュアによる入力装置もあります。 もし後者でしたら、モーションキャプチャの移動データから、 3Dモデルを復元するというお考えでしょうか? その場合、最善でもフィギュアの形を復元できるだけなので、 直接モデルを作ればいいという話になりそうです。
KureteRubyLua

2016/11/28 09:51

どうもありがとうございました。
guest

0

例えばこんなのがあります
Monocular Depth Perception with cGAN
参考画像(GIF)
↑この画像はディープラーニングによって生成した深度マップで立体化されています
2D画像から深度マップを推定するだけとかなら両方とも2次元ですので
pix2pixのようなGAN系の技術を発展させれば将来的に可能ではあると思います
(ただし膨大な撮影データと深度マップの組み合わせが必要となり
またそれを状況に応じて使い分ける処理を実装しなくてはなりません)

これができると昔の映画やホームビデオなんかが
立体映像で鑑賞することができるようになるわけで
VRの市場拡大に一役買うことになるでしょう

ただポリゴンなどを生成するとなると
ディープラーニング以外の技術も必要となってくると思います

また生物の筋肉のように時事刻々と形状が変わるものについては
まずそれに応じた複雑なデータモデルが必要になるでしょう
(基本の形があってどこを動かすと連動してどこがどれだけ変異するかとか)

実際にボーンなどの入った基本的なモデルがあって
そのテクスチャや形状を2次元画像に近づけたいのなら
遺伝的アルゴリズムなどの手法の方が向いているかもしれません
(この場合、モデルの形状や光源や影や質感などを
実空間と仮想空間とである程度合わせてやる必要があります)

建物などの2次元画像から固定された3次元モデルを作成する技術というのは
ディープラーニングが出てくる以前
少なくとも20年以上前からあることはあります
1996年のSIGGRAPHでは
image-based modelingという技法が発表されています
立体を回転させて撮影する事で造形するというもののようで
映画「マトリックス」などでもその技術が応用されていたようです

投稿2017/06/25 11:46

e-cube

総合スコア284

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

面白い視点の質問だと思いますが、一方で「だから何?」という感想も持ちます。

OpenMVGのように、視点の異なる複数の2次元画像から3次元モデルを復元するライブラリはあります。できるだけ正確な結果を得たければこういう手法を使えばいいでしょう。

画像の諧調などから「推測」して「なんちゃって3D化」する技術なら、家庭用テレビ受像機にだって搭載されています。特に対象の題材が限定されている場合 (たとえば人の頭部限定)、この手法は有効でしょう。

ほかの方が回答しているものの中には、よく似ている (ということを「学習」させてある) 3D像をパターンマッチングでひっぱってきているだけにしか見えないものもありますね。こういうのが「ディープラーニング」らしいと言えば言えないこともない。

私は、「ディープラーニング」の現実的な応用としては、設計段階でシステムのパラメータを発見するために大量のデータを「学習」させたモデルを使う、というのが普通だと思っています。ユーザに提供されるシステムそのものの実装は、信頼性 (あとコスト面も) を考えればもっと簡素・堅牢なものが求められるのではないでしょうか。


「ディープラーニング」なるバズワードにあまり振り回されないほうがいいと思います。ひところ「クラウド」でなんでも解決するかのように言われていたのと同じようなもんでしょう (それに「クラウド」の例にならえば、そのうち何の関係もないモノやサービスまで「ディープラーニング」と呼ばれるようになるんだろうし、ね)。

投稿2016/11/28 03:07

ikedas

総合スコア4354

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

回答になっているかわかりませんが、私も中学生の時に2次元の画像を書いてスキャナーで取り込むだけで3Dに変換してくれるようなソフトはないのかな??・・と思ったことがあります。

現在はその辺りの研究が進んでいるようで、東大のTeddyなんかがそれに当たるような気がします。
他にもプロトタイプはいくつかあるようです。

「ディープラーニングで」という発想はなかったですね〜〜
確かに既存の研究に人工知能を組み合わせれば、今後すごいのが出来る可能性もありますね!

投稿2016/11/27 12:03

strike1217

総合スコア651

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.47%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問