TouchDesignerでRealSenseを使う①
TouchDesignerでは、RealSenseをすでに公式でサポートしています。
カメラは、F,Rどちらも使用可能です。
ここでは、Fのみ取り上げます。
また、RealSenseのDeveloper Zoneでも取り上げられています。 以下のリンクから、詳しい内容、サンプルプログラムが入手できます。 https://software.intel.com/en-us/articles/using-the-intel-realsense-camera-with-touchdesigner-part-1?utm_content=buffere084d&utm_medium=social&utm_source=twitter.com&utm_campaign=buffer
KenectやLeap Motionと同じように、オペレーターを作成するだけで、RealSenseを使うことができます。
RealSenseの使い方として 1.Depth,RGB カメラとして使う 2.手、顔をトラッキングする
というような大まかな2つの使い方があると思います。 ここでは、その2つについて順番に解説していきたいと思います。
また、RealSenseのセンサーの基本的な仕組みや、機能についてはここでは説明しませんので、あらかじめ、勉強しておいてください。
1.Depth,RGB カメラとして使う
今回の内容は、画像処理の知識も多少必要なものです。 その部分についてはここでは、あまり言及しないので、必要があれば、調べてみてください。
Real Sence TOPを作成してください。
パラメーターのImageのタブから入力画像のタイプを選択することができます。
下の画像では、color,depth,visualized depth,depth to color UV mapの4つのオペレーターを作成しました。
その他、point cloudなどいろいろありますが、ここではいくつかに絞って説明します。
RealSenseから画像入力を得るという意味では、これだけで完了です。
次は、これらを組み合わせて近いものだけをくり抜くプログラムを作成します。
完成形は下の画像のようになります。
複数のRealSenseの入力をコンポジットすることで、近いものだけをカラーでくり抜いています。
では、1から作り方を見ていきます。
まず、3つのRealSenseのオペレーターを作ります。
それぞれ、Imageのパラメーターをdepth,color,Depth to color UV mapに設定します。
次に、level TOPを接続します。
preのタブのパラメーターのInvertを1に設定します。
これで、黒の部分が白へ、白の部分が黒へ反転します。
ここでは、近い部分を白くするために反転させました。
次に、remap TOPを作成し、上にlevel TOP下にRealSenseのDepth to color UV mapをつないでください。
remap TOPのパラメーターはデフォルトのままで大丈夫です。
これで、depth画像をcolor画像の比率に合わせることができました。
次に、remap TOPの後ろにthreshold TOPを接続します。
threshold TOPは設定した、閾値で画像を2値化するTOPです。
ここでは、パラメーターはデフォルトのままで大丈夫です。
最後にMultiply TOPを作成し、threshold TOPを上、 RealSenseのカラー画像を下に接続します。
Multiply TOPは2の入力画像に対して、積をとるTOPです。つまりand処理です。
depthのほうの入力は、黒は0,白は1となるため、白の部分のみカラーが残った状態になります。
これで、depthで白くなっている部分のみ、カラー画像としてくり抜くことができました。
RealSense TOPのdepthの入力のMax Depthのパラメーターを操作することで、くり抜く距離を調整することができます。
いろいろ試してみてください。
RealSenseのdepthカメラとしての使用方法について説明は以上です。
次回は、手や顔のトラッキングについて、説明します。
Comments