今回から新しいシリーズとして「Kinect(キネクト)を始めとしたデプスセンサを用いた、3Dコンピュータビジョン技術」というテーマを始めます。このシリーズでは、「Kinectの3D撮影の原理」と「Kinectを用いた人体姿勢推定技術」という、Kinectの基本技術の2本柱について順番に紹介し、その後、Kinectの応用技術(3D形状の合体技術、人を認識する技術など)」について紹介する予定です。それではまず、シリーズ全体の導入から入りたいと思います。

Kinectとは?

2010年秋に市場に登場したMicrosoftのKinectセンサは、これまでは高価なものしか市場には存在無かった「3D形状計測センサ」市場において、(個人で購入できるほどの)低価格でありかつ動画で3D計測できるものが突然登場したという製品です。

これにより、実現できることが急に増え出す結果となり、コンピュータビジョン業界や各関連分野の専門の技術者には、大きな衝撃を与えました。Kinectはセンサの低価格化だけでも十分衝撃ではあったのですが、それに加えて「人体姿勢推定」が同時に提供されたことも革新的でした。リアルタイムに撮影中の人間の3D姿勢(各関節の3D座標)が取得できるという人体姿勢推定機能により、「Xbox 360向けのコントローラー」として発売されたKinectは、世界中で爆発的なヒット商品となりました。その後、ゲーム以外の商用アプリケーション製作でもKinectセンサーと人物姿勢推定などが使用可能となる開発者向けパッケージがMicrosoftやASUSから提供され始めたことで、店舗動作解析によるマーケティング応用や、手術中の医師の非接触ジェスチャー認識、(筆者の専門技術の1つでもある)全身ボディスキャニングとその計測した3D人体形状を用いたアパレル用寸法の自動測定など、各種商用システムへの応用が盛んになり始めています。

Kinectを用いると、以下の動画のように、撮影している室内の空間を3次元の点群(またの呼び名を「ポイントクラウド」)として撮影できます(この動画はPoint Cloud Libraryというオープンソースの点群処理ライブラリによって3次元可視化されたものです)。

PCL Kinect Viewer

また、人物姿勢推定については、Microsoftが独自に開発したKinect SDK for Windows向けのものですと、以下の動画のようにリアルタイムで対象人物の3Dスケルトンを追跡できます(動画右上が計測されているスケルトン)。

Kinect Skeleton Tracker

これらの動画の「3D点群+色」と、「3Dスケルトン」が計測されるセンサが提供されることで、開発者や研究者がこれらの3D情報を使用した独自のソフトウェアを作れるようになった事が、Kinectセンサの登場がもたらしたものです。

こうして誰でも「実空間を3D形状計測したデータ」を直接解析できるようになったおかげで、以前はカメラ映像1台(もしくは複数台(マルチビュー))を用いて「(2次元)画像の処理」として解かれていた各種コンピュータビジョン問題が、3Dデータの恩恵により、解ける問題の数や質が飛躍的に増えてきています(注:研究中で実用化はまだのモノも含む)。

これまではカメラ画像解決できる範囲でのみ実用的に役立つにとどまっていたとも言えるコンピュータビジョン分野が、「3Dセンシングの民主化」とも言えるKinectの登場以降、その応用範囲を大きく拡大させる発展を遂げ始めているのです。また、Kinectのような「(光パターンを照射することによる)能動的な」3D計測技術と平行して、複数視点の写真からの「(写真だけから行う)受動的な」3D計測(マルチビューステレオなど)も発展の勢いを増しています。これらの3D計測技術の実用化、普及が進めば、これまで画像のみでは解きにくかった問題が3次元的に解きやすいケースが増えていき、これによりコンピュータビジョンの応用分野に更なる拡大・発展が見込まれると思います。

Kinectの登場以降、PrimeSense製以外の他の各社からもコンシューマ向けデプスセンサが登場してきています(SoftKinetic、Intelなど)。Microsoftも2014年に発売する予定のXbox Oneに付属する新Kinectセンサを、撮影方式をToF(Time of Flight)方式の高解像度化を達成したものを採用することをこの夏に発表済みです。

今回のシリーズでは、個人で購入が可能なほど安価な「コンシューマ向けデプスセンサ」を用いた技術に焦点を当てますが、一方で、シリーズ後半に紹介する各応用技術は、(少し高価なものの精度は非常に高いような)業務用の3次元計測器各種でも通用するものも含まれます。したがって、「実世界を3D形状として撮影したデータの処理」が紹介されている記事という観点でも、ぜひ本シリーズを読みすすめていただければ幸いです。