ここから、Kinectで物体をスキャンして3Dデータを作成し、3Dプリンタで出力するまでの流れを簡単に紹介します。なお、次回以降で詳しい解説を行いますので、ここでは全体の流れだけをつかんでいただければ問題ありません。
まず、Kinectとスキャン対象となる物体(人形)を図8のように配置します。人形は回転台の上に置き、手で台を回転させながら3Dスキャンしていきます。
Kinect Fusionによるスキャンは、対象物を固定してKinectを移動するやり方が推奨されていますが、狭い場所でもスキャンできるよう回転台を使ってスキャン対象を回転させるようにしています。
3Dスキャン後のデータに修正処理を加えて3Dプリンタで出力したものが図9になります。
いかがでしょうか? そっくりそのままとはいきませんが、元の人形のシルエットを捉えて出力されていますよね。
Kinect Fusionを用いた3Dスキャンは、測定可能な範囲だけを3Dモデル化するものなので、距離情報を取得できなかった部分(今回の場合、頭のてっぺんや、台の部分など)については、“穴”が開いています。
このままの状態だと正しく3Dプリントできないので、穴を埋める修正作業を行う必要があります。この修正には、マイクロソフトがWindowsストアで公開している「3D Builder」(※)という無償アプリケーションを使用します。
※:Windows 8.1でリンクをクリックするとWindowsストアが開きます。
3D Builderを使った穴埋めの手順を簡単に解説します。まず、3D Builderにスキャンしたファイルを読み込ませます。次に、物体の単位を選択します。本来はモデルに適した単位を選択するのですが、調整が煩雑になるため今回は「フィート」のままにしています。
すると、3D Builderの画面上部に警告が表示されるのでこれをクリックして、穴埋め作業を開始します。
詳しい操作方法などは次回以降で解説しますが、このような感じで穴埋めを施します。今回は、少しくぼんだような形状になりましたが、よりキレイに出力したければ3Dモデリングツールなどで手直しするとよいでしょう。
以上、3Dスキャンから3Dプリント出力までの流れをまとめると、図13のようになります。3Dスキャン後、3D Builderで穴埋め処理を行い、3DモデルをSTL形式の3Dデータファイルとして保存。XYZwareで3W形式に変換してから3Dプリントを行います。
本連載では、入手性の観点からKinectを使った3Dスキャンの方法をメインに解説していますが、最後に他のモーションセンサーデバイスを用いたスキャン方法も紹介しておきます。
1つは、インテルが推し進めている「インテル RealSense テクノロジー」を用いる方法。もう1つは、Appleの「iPad」に装着して利用できる「Structure Sensor」を用いるやり方です。現状、この2つのモーションセンサーデバイスはKinectよりも所有者が少なく、入手方法もKinectより困難ですが、3Dスキャンに関して言えば、Kinectで行うよりも簡単に行えます。
図14は、インテル RealSense テクノロジーでスキャンした3Dモデルと、その出力物です(人形です)。
そして、図15は、Structure Sensorでスキャンした3Dモデルと、その出力物です(筆者の娘です)。
Copyright © ITmedia, Inc. All Rights Reserved.