物体検出のためのLiDARデータ処理
LiDARセンサーは、環境を3Dでマッピングする点群データを生成します。この「点群」は、距離点から構成され、多くの貴重な環境情報を提供します。しかし、アプリケーションによっては、この情報が複雑すぎて、さらに処理することができない場合があります。例えば、自律走行機能、交通監視、駐車場検出などでは、むしろ視野角内で検出された物体のリストが必要です。LiDARデータからどのようにしてこの情報を得るのでしょうか?また、LiDARデータの処理はどのように行われるのでしょうか?
それを解明するために、あるアプリケーション例を見てみましょう。リダータウン市は毎年恒例の市祭を祝っています。その中で、街の中心部にある大きな駐車場では無料のコンサートが行われています。無料のコンサートなので、観客のアクセスはチケットで規制されていません。しかし、警備上の理由から、1,000人以上は敷地内に入れないことになっています。そのため、市はコンサートエリアの入り口を見下ろすようにLiDARセンサーを設置し、入り口を通過する人を追跡しています。エントランスは広い通路になっており、来場者もここから外に出ることができます。
3Dデータによる精度と匿名性
このタスクに関して、LiDARはカメラやモーションセンサー、市の職員による手動カウントなどのソリューションと比較して、いくつかの利点があります。まず、LiDARはリアルタイムで確実に、かつ詳細に現場をとらえることができます。例えば、通常の人感センサーは、複数の人が同時に現場に入ると、正確な数を算出することができなくなります。例えば、3人が隣り合って歩いている場合、外を歩いている2人は写っていても、真ん中の人がカウントされていないということが起こり得ます。次に、LiDARは顔写真入りのカメラ画像ではなく、無色の3Dデータを記録することで、コンサート来場者のプライバシーを保護します。
祭りの会場にはどれくらいの人がいるのでしょうか?
入場が始まると、多くの人が会場に流れ込んできます。この間、センサーは何百万もの距離データを収集します。このデータは、来場者数カウントアプリケーションに関してさらに処理するにはあまりにも複雑です。これらのデータは、記録された各ポイントのx、y、z座標データを含み、点群として構成されています。
しかし、主催者はこのような詳細な情報を必要とせず、むしろサイト上の訪問者の総数に関する情報を提供するデータが必要です。基本的には、3つの情報をリアルタイムに提供する必要があります。エントランスを何人通過したかを知る必要があります。ソフトウェアは、点群内の物体としてそれらを認識します。さらに、認識された人の正確な位置に関する情報が必要です。その人たちはすでにエントランスの奥、つまり敷地内にいるのか、それとも境界の外、例えばエントランス前の行列に立っているのか、などです。3つ目の情報は、人の移動方向です。これにより、再び敷地から出る人を検出し、その場にいる群衆から除外することができます。
どのような点を考慮する必要があるのでしょうか?
複雑なLiDARの点群データから、具体的にどのような処理を経てこれらのデータが得られるのでしょうか?これを理解するために、データ評価のための簡略化されたアルゴリズムを見ていきます。まず、前景と背景を区別する必要があります。そのために、シーンを解析して背景を差し引き、点群を特定します。そのために、訪問者が現場に到着する前の静止した背景を点群として記録しておきます。「現状」を記録することで、静的で背景に属しているため無視できる点群をソフトウェアが判断することができるのです。人がサイトに入るとすぐに、撮影されたすべての画像は、これらの同じ物体を検出するために、撮影された背景画像と照合されます。
凸包やボックスについて
訪問者が来ると、点群が変化し、クラスターが新しい物体として認識されることがあります。背景画像との比較でこれらが存在しない場合、移動物体が侵入したと認識されます。凸包の原理に従って、物体の周りにいわゆるバウンディングボックスが描かれるようになります。凸包とは、物体の最外周の点を結ぶことで、その物体の最小の周囲を表すものです。バウンディングボックスは、情報をより適切に処理するために、物体を可能な限り小さな立方体に囲みます。これらの工夫により、データを小さくし、扱いやすくしています。
このバウンディングボックスの大きさは、対象物の大まかな分類に役立ちます。例えば、道路交通では、検出された物体が車なのか自転車なのか歩行者なのかを判断するのに使われます。今回の例である街のお祭りコンサートの場合、自転車や車が現場にいる可能性が低くても、バウンディングボックスの大きさを検出することで、物体を人間として分類することができるのです。このように、本ソフトウェアでは、入口付近に位置する物体を「人」という大まかなカテゴリに割り当て、その人数を割り出すことができるようになっています。
人はどのように移動するのか?
このように、入口付近の物体の大きさは特定できたが、あとは位置と移動方向の情報が必要です。これらの情報はどのように得られるのでしょうか?まず、人の正確な位置は、LiDARセンサーが最終的に距離を計測しているため、バウンディングボックスから、LiDAR情報の中核として簡単に抽出することができます。
一方、移動の方向は、例えば、前のフレームでの物体の位置を観察することで判断できます。フレームがどのような速度で生成されるかが分かっているので、複数のフレーム間で対象物の位置を比較すれば、対象物がどこに、どのくらいの速度で移動しているかを簡単に判断できます。この速度と大まかな移動方向から、2つ以上のフレームで同じ点の集まりが確認された時点で、対象物の今後の移動経路を予測することができます。
結果:オブジェクトリスト
この情報は、いわゆるオブジェクトリストとして利用することができます。この表には、検出された物体とそのプロパティ(この例ではサイズ、位置、移動方向)が各行に記録されています。このようなデータは簡単に加工することができ、コンサートの例では、敷地内にいる人の数を正確に把握することができます。これにより、入場者数が上限に達し、入場を停止しなければならないタイミングを認識することができます。また、敷地内に人が多い時間帯や、エントランスの混雑が最大になった時間帯を正確に検知することも可能です。このデータは、今後のイベント企画に役立てることができます。
LiDARのデータ処理により、来場者の流れが規制された
リダータウン市は、コンサート会場でのLiDARの活用に非常に満足しています。私たちの例のソフトウェアは、来場者数が900人を超えると、主催者に通知するトリガーとなりました。これにより、イベント運営側はそれ以降、来場者数を細かく把握することができ、時間内に入場者を停止させることができたのです。残りの時間は、他の仕事をしたり、バンドの演奏を聴いたりすることができます。LiDARは、彼らにとって重要なことを見守っていたのです。