どうも! 職業訓練生のがっちゃんです!
50歳にして、長期人材育成「情報セキュリティ管理者資格」2年コースを絶賛受講中です!
職業訓練だけでなく、自己投資として自宅でいろいろなことに挑戦しています。今回は購入した3Dプリンタを使って、自分の3Dモデルを作成していきたいと思います。
特別な機材なしで3Dモデルが作成できる時代
自分の体の3Dモデルを作成するとなると、さまざまな様々な角度から画像データを収集する必要があるため、大掛かりな機材が必要だった。今までは・・・。しかし、最近の3Dモデルの作成は「たった1枚の写真」だけで作成できるようになっているらしい。
それを知ったのは、2020年6月頃のSNSニュースだった。
こんな高度な技術を誰でも無料で、特別な機材やお高いGPUを搭載したPCがなくてもクラウドベースで試せるようにしてくれている。これを使う手はない。というわけでさっそくその3Dモデルが作成できるというサイトを確認してみた。
ご注意!:3Dモデル作成環境のコピーをGoogleドライブに保存し、実行することになります。Googleアカウントを取得されている方は、ログインして、アカウントのない方は、Googleアカウントを取得(無料です)し、ログインしてから実行していくことをオススメします。
うわ!英語ばっかりやんか!早くもこの英語だらけのサイトを見て心が半分折れた。いやっ、待て!こんな時こそ「Google先生」に翻訳をお願いすれば良いのではないか!?Google先生!翻訳、よろしくお願いします!
ヤッタァ!これでなんとなくやり方が分かるようになりました。これでとりあえずサイトをじっくり読み込んでみる。3Dモデルを作成するのに、そんなに色々しなくても良いみたいですね。とりあえず画面左側に出ている目次の順に実行するとしましょう。
※ご注意!:これからアップする画像については、Google先生の日本語訳の画面ではなく、英語の画面のままをスクショして貼り付けていくことにします。
PiFuHDリポジトリのクローン
リポジトリ、ということだから、この3Dモデルを作成するシステム「PiFuHD」が入っているファイルをクローンして使え、ってことだよねぇ。よし!まずはこれを押してみるぞ!
すると、以下のような画面が出てきた。おぉ!英語ばかりの画面の中に日本語の警告文が!!警告なのに、なんだか分かりやすく表示してくれる優しさが垣間見れる。「お前!こんな警告文であきらめるなよ!この先を目指せよ!」と応援してくれているように思える心遣いが感じられる。こんなことであきらめるものか!!
警告内容は、このデータの作成者のことを信じているのなら、そのまま進めてOKよ!ということでしょうな。
「このまま実行」ボタンを押すと、普通の画面に戻利、クローンが始まった。
終わったみたいなので画面左上の「ファイル」から「ドライブにコピーを保存」を選択。
コピーが完了すると、新たに以下のようなブラウザ画面が開いた。さっきと代わり映えしない画面だけどブラウザ左上が「PiFuHD Demoのコピー」になっている。これでリポジトリのクローンが出来上がったみたいですね。
ファイルの中身を覗いてみた
なんかファイルマークがあるので、どんなファイルがあるのかを確認してみますかね。これは3Dモデル作成の工程とは関係ありません。あくまで私の興味本位での作業となります。この章は読み飛ばしてもらって結構ですよ。
まずは「README」ファイルから見てみます。ホントは英語ですがGoogle先生に翻訳してもらいました。どうやらこのフォルダには3Dモデルを作成するためのサンプルデータが入っているようですね。
全てのセルを実行する
ブラウザの画面を見ていると、各ステップを踏んで3Dモデルが作成されていくように書かれているみたいです。そのまま各ステップごと実行していってもいいのでしょうが、早く3Dモデルを作成したい私は、画面上の「ランタイム」から「全てのセルを実行」で、一気に3Dモデルを作成する作戦に出ました。
画面を少し下の方にスクロールしていくと「ファイルの選択」ボタンがあります。「独自の画像をアップロードする場合は、次のセルを実行します。それ以外の場合(すなわちサンプルデータで実行する場合)は、次のセルに移動してください。現在、PNG、JPGファイルがサポートされています。」と、英語で書かれているようです。せっかくなので今回は子どもの画像をアップしてみます。
画像をアップロードすると、あとは自動的に実行していってくれます。キチンと画像がアップロードされているかは左サイドバーの「PiFu」フォルダ内の「sample_images」の中にアップロードした画像ファイル名が載って流ことで確認できます。
以下の画像は、なんだか自動で進んでいる様子のスクリーンショットです。
出来上がった3Dモデルは!?
画像ファイルの大きさによって、3Dモデル化する生成時間が変わるかなと思ったのですが変わりはないようです。どんな大きさの画像でもだいたい10分くらいあれば出来上がるようです。ただ、写真によって出来栄えが全く違ってしまうというか・・・。
以下は実際に作成した3Dモデルの画像になります。ま、初めてなので失敗するよねぇ。
カメラを縦にして撮影したのですが、画像読み込みの際には横のまま読み込まれるようです。これを改善するためには、左右の無駄を省いて縦長にした写真が必要のようです。
というわけで、手元にあった縦長の写真が、映画マトリックス のネオの画像。これで3Dモデルを作成してみた。まぁまぁ成功したと思います。ただ、ひらひらマントまではうまく再現できないようです。
今度こそうまくいきますように!というわけで、先ほどの子どもの写真を左右の無駄を省くように加工して、再度3Dモデル化してみました。まぁまぁ成功の部類に入りますかねぇ。うまくいったと思ったのですが、撮影時の光の加減が悪さをして、左に拳銃をしまい込むホルスターみたいなのができてしまいました。身体全体の光の受け具合も考慮した画像が必要のようです。屋内撮影ならうまくいくかもですが、不要な背景を映り込まない工夫が必要ですかねぇ。
最後に私の画像で作成した3Dモデルです。屋外で撮影した割には、まぁまぁ成功しています。着衣は少ない方が成功しやすいのかも。
実行結果がよくないと、以下のようなメッセージが出ます。これを元に、最適な画像を準備できるようにしないといけないのでしょうね。
なんか、ソフトウエアの処理が最適化されるような画像をこちらで準備しないといけないのが辛いところですね。意外と面倒臭いというか、今のところは限定された画像でしかキチンとした3Dモデルは作れないみたいですね。
3Dモデルのデータ保存
出来上がった3Dモデルデータは「PiFu(ピフー)」→「result(結果)」→「recon(偵察)」フォルダの中に出来ています。拡張子が「.obj」になっているのがそうです。
※ご注意!:データが必要な場合は、早めの保存をオススメします。他の用事をしていて出来上がり時間を逃してしまうと「ランタイムエラー」となりデータが消えてしまいます。
まとめ
手軽に3Dモデルが作成できる「PiFuHD」ですが、まだまだ開発段階で、きれいに3Dモデルができる画像は限られているようですね。今のところは、このソフトにマッチした画像で3Dモデルを作成するしかないのかなぁ。でも、使ってみた結果は楽しかった!面白かった!今後に期待したいですね!色々と遊べそうな要素を見つけることが出来ました!
最後の無駄な抵抗で、現場猫で3Dモデルにチャレンジ!奇跡を願ってやってみましたが、惨敗でした。人物じゃない上にマンガだしねぇ。
それでは本日も最後までお付き合いいただき、ありがとうございました!