Kinect for Windows v1とv2の距離センサー(Depthセンサー)方式の違いをまとめました


Kinect for Windows v2 Previewに関することはすべて“This is preliminary software and/or hardware and APIs are preliminary and subject to change.”(これは準備段階のソフトウェアもしくはハードウェアで、APIも整備中の変更される可能性があるものです)のでご注意ください。

Kinect for Windows v1 距離センサー(ドットパターン投影方式)

原理

  1. 近赤外線のドットパターンを投影する
  2. CMOSカメラで物体に投影されたドットパターンを読み取る
  3. 物体上のドットパターンを基に物体までの距離を計算する

Jay LindさんのYoutube動画)

Kinectが投影するドットパターンを赤外線カメラで撮影するとこのように映ります。Kinect v1も同様の画像を取得して処理を行います。

こちらの動画を見ていただいてもわかるように、物体までの距離や物体の形状によって、物体の上のドットの形や間隔が変わります。そこで、読み取ったドットの形や間隔を基に逆に物体までの距離や形状を計算しようというのがKinect v1の距離センサーの原理です。もちろん、これを実際に精度よく高速にやるのは大変なことで、近くから遠くまでカバーするためにサイズの違うドットを投影するなど様々な工夫が施されており、この技術の開発元のPrimeSense社の特許にもなっています。

Kinect v1の距離センサーについて詳しくはは上田智章さんのページ(【Kinect Sensorで拡張現実センサを作る試み】私設研究所Neo-Tech-Lab.com)が勉強になります。

http://www.neo-tech-lab.co.uk/ARsensor/KinectSensor.htm

注意点

  • 屋外での使用ができない(日光の赤外線でドットがかき消されてしまう)
  • 反射率が高すぎる物体(鏡や金属など)や吸収率が高い物体(黒髪など)では距離がうまく測れない
  • 複数のKinectを用いるときには投影するドットがなるべく混じらないよう配置に気を配る必要がある

Kinect v2 ToF(Time of Flight)センサー

原理

  1. 赤外線光を投影する
  2. カメラで物体に反射した光を読み取る
  3. 光が往復した時間を割り出し、光の速度をかけて距離を計算する

赤外線パルスが往復する時間で距離を測ります

どうやらKinect for Windows v2 Previewは赤外線を30Hz~60Hz程度のパルスで照射しているようなので、パルスではない日光の影響は受けにくそうです。複数のKinect v2を使った場合は干渉する恐れがありますが、他社のToFセンサーでは振動数が調整できるものがありますので、Kinect v2にも今後そのような機能が搭載されるかもしれません。

 ToFセンサー一般の注意点

  • 鏡や金属などの反射率が高い物体では距離がうまく測れない

黒髪でしたら比較的うまく取れるようですが、鏡や金属などはやはり苦手なようです。赤外線を使う以上仕方のないところなのでしょう。Kinect v1のドットパターン投影方式に比べてToFセンサー方式の方が精度が高いと言われていますが、Kinect v1では距離を計算する前のIR画像も取得できますので、工夫すればKinect v2を上回るケースもあるかもしれません。もちろんKinect v2でもIR画像は取得できますが、30fps程度の頻度では距離を計算するには到底足りません。何せ光は1/30秒間に約1万キロメートル進みます。

Kinect for Windows v2 Previewに関することはすべて“This is preliminary software and/or hardware and APIs are preliminary and subject to change.”(これは準備段階のソフトウェアもしくはハードウェアで、APIも整備中の変更される可能性があるものです)のでご注意ください。


コメント (0)


Add a Comment





使用可能なタグ: <b><i><br>新規コメントを追加: