本セミナーでは、Kinectなどで取得した3D点群データに対して、コンピュータビジョンその他の処理を行うことができる、オープンソースで無料のライブラリ「Point Cloud Library」の入門編を講義形式で行います。
冒頭で3D計測原理とそれに伴ったRGBDデータの構造と使いどころを説明し、Point Cloud Libraryを用いた各種点群処理を使いこなすための基礎力を提供します。
PCLについては、バージョン1.6までの標準的に用いることになる各モジュールを、基本モジュール編と応用モジュール編に分けて、ソースコードと共にその使いどころを説明します。また、最後に最新のPCL1.7系の新規追加点を解説します。
- はじめに
- コンピュータビジョンとは
- 点群処理
- Kinectの登場とPoint Cloud Library:民主化した3Dセンシング
- Kinect SDKとのPCLの違い
- 「ロボットの眼」としての3D点群処理
- コンピュータビジョンによる3D形状計測の原理
- パッシブ3D計測 (ステレオカメラ) の基本原理
- アクティブ3D計測 (プロジェクター•カメラシステム) の基本原理
- KinectやToFセンサーなどのRGBDカメラの原理
- RGBDデータの取り扱い
- 距離画像の構造
- RGBDデータの2.5D性とSurfaceデータ性
- RGBデータが画像での処理と変わる点
- Point Cloud Libraryの概要
- PCLの概要
- PCLの歴史
- Point CloudクラスとRGBDデータ
- PCLの各プラットフォームでの使用方法とモジュール構成
- PCLのWeb等からの情報源
- Point Cloud Libraryの基本モジュール
- OpenNIGrabberによるRGBDデータのリアルタイム取得
- Cloud ViewerとPCL Visualizerによる点群と法線の可視化
- Kinectから取得するデータのリアルタイム可視化とデータ保存
- Point Cloud Libraryの各応用モジュール (PCL1.6) のショートサンプル付き解説 (各モジュールの必要性も解説)
- Filter:点群のフィルタリング
- Keypoint/Features:キーポイントの検出と特徴記述子の計算
- Registration:ICPアルゴリズムによる位置合わせのrefinement
- Octree:高速探索のための点群の構造化
- SAC:直線や平面の検出などの、ノイズに強いモデルフィッティング
- Surface:点群のメッシュ化や、それに伴う穴埋め
- PCL1.7以降の新機能および発展的その他機能