点群情報は、画像や音声と比べると、とっつきにくい印象があるかもしれませんが、使いこなせば、より精度の高いシステムを構築できる場合があります。
今回はそんな点群を扱う上で便利なPCL(Point Cloud Library)について紹介いたします。
LiDARで取得する点群情報
自動運転等において、「形」を認識する技術として、LiDAR(Light Detection And Ranging)が活用されています。
LiDARは、レーザーの反射により検出した距離を点群として返す手法です。
点群は、位置(xyz座標)情報を持った点の集合です。
点群は、物体の形状認識や地形の把握、自身の位置の把握に活用することができます。
PCL:点群を使うライブラリ
点群を用いた処理を実装するには、PCLが有用です。
本記事では、特に以下の機能と使用例を紹介します。
- 特徴抽出
- 形状モデルのフィッティング
- 点群の位置合わせ
PCLの機能と使用例
以下には、LiDARを搭載した車体が移動しながら周辺の形状の点群データを取得する状況を想定し、PCLの機能とその活用例を説明します。
・特徴抽出
PCLには、点群の情報を表す様々な情報(特徴量)を取得する機能が用意されています。
例えば、特徴量として点群から法線方向の情報を取得する機能があります。
法線は平らな壁では面に対して垂直方向を向きますが、凹凸のある壁では異なる方向を向きます。
この違いにより、平らな面とそうではない面を識別することができます。
この手法は、例えば物体の形状や地形を把握する基本となります。
・形状モデルのフィッティング
PCLには平面、円柱等の形状のモデルが用意されており、点群とフィッティングすることで、特定の形状を検出することができます。
例えば、地面に物体が置かれている場合、平面推定により地面を検出し、地面付近の点群を除去することで、物体表面の点群を抽出することができます。
この手法は、車の自動運転において、障害物検出等に応用可能です。
・点群の位置合わせ
PCLには、同じ対象を異なる視点から捉えた点群を用いて点群同士の位置合わせを行う機能が用意されています。
例えば、ある時点で測定した点群と別の時点で測定した点群があった時、同じ頂点や辺を示す点同士を対応付けることで、測距物体と車体の位置関係を把握し続けることができます。
これを応用すると、周辺の地図を作成しつつ車体の自己位置を把握できます。
最後に
本記事ではPCLの紹介をしました。
最後までお読みいただき、ありがとうございました。