Blender ウォッチング

「Tripo AI for Web」で画像の被写体を3Dモデル化! その品質は如何に?

 本連載では、無料の高機能3Dモデリングツール「Blender」の使い方や関連情報を幅広くお伝えします。

画像による生成例

 前々回前回、機械学習により、テキスト(プロンプト)による3Dモデルを作成するWebサービス「Tripo AI」の検証の最終回として、今回は「TripoSR」の特長の一つであった「画像からの作成」について検証していきます。

一枚絵による生成の比較

 Tripo AIで画像からモデルを生成するには、まず[Create]タブから入力フィールドの右側にある画像アイコンをクリックします。すると、図のようなフィールドが現れますので、画像ファイルをドラッグ&ドロップしましょう。複数枚の画像の設定も可能です。

[Create]タブ(①)から、入力フィールドの右側にある画像アイコン(②)をクリックし、現れたフィールド(③)に画像ファイルをドラッグ&ドロップ

 モデルを他人に見せたくない(背景の「パブリックショーケース」に表示したくない)場合は、あらかじめ有償の「サブスクライバー(Subscriber)」に申し込み、 作成時に プライベートのみの運用にする必要があります。

 Freeプランで作成した物には後で設定できないようなので注意が必要です。

サブスクリプション後は囲み内のオプションが表示され、公開するかどうかを選択可能に

 ここでは比較用に以前TripoSRの記事で使用したハトの画像を食わせて見ました。

 アップロードと生成処理が終わると、図のように完成図が表示されます。下の[Free Retry]で再生成もできます。

生成されたハト。下の「Free Retry」で再生成も可能

 足が4本生えているものの、一応ちゃんと左右対称になっており、ハトとしての体裁は整っているようです。上の画像の背景にうっすらと見えていますが、アップロードが終わった時点で背景にハトのモデルが表示されており、同種の生物または形状と認識はされているように思います。

 下図は「ローカルに構築したTripoSR」)で生成したモデルと、TripoAIのモデルとの「画像から見えない側」での比較です。TripoSRのモデルは3本足でテクスチャも左右対称ではありません。

以前の「TripoSR」で生成したモデルとの比較。「TripoSR」の方は3本足で左右対称でない。図では頂点カラーのコントラストを少し上げている

リグやリトポロジーは?

 プロンプトにより生成した3Dモデル同様、このモデルも色々オプションを付けて出力できる……はずですが、リトポロジーによるローポリモデルは生成できたものの、リグ追加では少し待たされた後『このモデルには付けられない』という趣旨のエラーが出て失敗してしまいました。
 前回にプロンプトで作成した、座っている猫モデルには(無理やり)付いていたので、何か条件があるのかもしれません。

リグやリトポロジーのオプションは表示されるものの、この3Dモデルはリグ追加は拒否されてしまい、面白生物は爆誕しなかった

複数枚の画像からの生成

 前述のように、画像を複数枚使用して生成することもできます。

 せっかく「Blender」の連載なので、スカルプトで作成したモデルのレンダリング画像から、リグやテクスチャのあるモデルを生成させてみようと思います。

 将来的に機械学習によるリトポロジーが実用に耐えるものになった場合、スカルプトモデルから現在人の手で行われているリトポロジーを、AIで自動化するワークフローになることを期待している方も多いのではないでしょうか。

複数画像入力のインターフェイスの表示

 執筆時点では、デフォルトの「Tripo」v2.0は複数枚の画像からの生成に対応していません。そのため、まず最初に入力フィールド左下の[Tripo AI version]を「1.4」に下げる必要があります。その後、入力フィールド右端の「画像アイコン」をクリックし、表示されたパネルの[Multi Images]タブをクリックします。

入力フィールド左下の[Tripo AI version](①)を「1.4」に下げ、右端の「画像アイコン」(②)をクリック、表示されたパネルの「Multi Images」タブ(③)をクリック

3方向の画像の用意

 入力可能な画像は「前」「後」「右」と決まっていますので、「Blender」で3つのカメラを使い、モデルの3方向からの画像を作成します。透視投影と平行投影が利用できます。

3方向からの画像をレンダリングするシーン設定。

 作成された画像をそれぞれ設定し、もし平行投影でレンダリングした画像であれば[orthographic projection]を有効にした後、[Create]をクリックします。

実際に画像を設定してみた例。平行投影でレンダリングした画像であれば「orthographic projection」を有効化し、[Create]で作成。背景にドラゴンらしきモデルが表示されているのをみると、ドラゴンの類と認識されているのがわかる

 生成後、プレビュー内を左ドラッグでモデルを回転しチェックしてみます。なんと、羽で隠れた背中部分がぽっかり空いていました……。

プレビューで生成後の形状をチェック。背中部分がぽっかり空いていた

 ならばと、透視投影でもう一度試してみましたが、やはりこの部分は空いてしまいます。[Free Retry]を何度試しても同じ。今回はどうしようもないようです。

リファイン機能

 v1.4には「リファイン」機能があります。これはテクスチャの解像度を高くしてくれる機能で、20 Creditかかります。

 [Refine](上図中央の黄色のボタン)をクリックするとキューに設定され[My Model]にその進捗状況が表示され、処理が終わるとサムネイルの右上に「Hi-Res」の表示が出ます。

[My Model]内のリファインキューの表示

 リファインしていないモデルと比べると、確かにテクスチャは綺麗になったものの、元々の画像情報に近いのはリファイン前であり、模様自体が変わってしまいます。

リファイン前と後の比較。ウロコが追加されたが、元画像とは違うテクスチャに

リグ付加やリトポロジーも試す

 拡大表示し、まずはリグの付加を試します。しかし、またもやリグは付けられないと拒否されてしまいました。後述しますが、リグは人体などの一部の種類にのみ付けられるようです。

再び「このモデルでは自動リギングを利用できません」と拒否される。悲しい

 リトポロジーは他のモデル同様に動作し、トポロジーもあまり変わらないようです。

 しかし「Blender」にモデルをダウンロードしてみると、一枚絵の時のようなノーマルマップはなく、単純なテクスチャ画像のみになっています。これは「v1.4」では「PBR」対応ではないためです。

リトポロジー後、「Blender」で表示したモデル。マテリアル(拡大して表示)はPBR対応ではないため、カラーのテクスチャマップのみ

 最後に、単一画像+リファイン(v1.4)と、v2.0で生成した結果をパーツとして貼り付けてみます。忠実さは劣るものの、こちらの方が背中の部分もちゃんと補完されています。余裕があれば、いくつか試してみることをお勧めします。


v1.4+リファイン。顔が変わっているが、背中の部分は補完されている


v2.0。左右のバランスは崩れているが、顔を一番うまく表現できている

その他の生成テスト

 他にも「v2.0」の単一画像からの生成をいくつかテストしてみました。

Human Base Meshes

 Blender.orgにて配布されているアセット「Human Base Meshes」の一つをレンダリングし、読み込ませた物。恐らく学習したモデルの一つなのか、綺麗に復元されています。ただしリトポロジーしたメッシュ形状は別物です。

 さらに、このモデルにはリグが追加できました。他にも「人体」と認識された画像から生成したモデルにも追加できたので、リグ対応の種類と認識されることが条件の一つのようです。




彫像

 以前のMarigoldの記事に使用した彫像から生成したモデル。顔はコレジャナイ感がありますが、服のひだは見事です。



終わりに

 画像による生成まで試してみた結果としては、小道具モデルや3Dプリント用モデルの生成にはいいと思うものの、リグやトポロジーはまだ改善の余地があると感じました。また、サービス自体も不親切な部分が多く、今後のブラッシュアップに期待したいところです。

 執筆中に覗いた公式のDiscordでは、「Tripo AI」v3.0の話題が出ていましたので、もうしばらくすれば不満点もいくつか解消されているかもしれません。

 ではまた。