Pedestrian Counting System using Deep Learning

カメラ映像とAIを用いた「歩行者の断面計数」

 多くの自治体では、まちの活性度や回遊性などを把握するため、地区内の歩行者の量を調査しています。しかし、一般的な調査では労力コストが膨大な問題や、生産年齢人口の減少による調査員の確保が困難な問題があります。本研究では、AIを用いて特定の断面における歩行者の通過人数の自動計測システムを開発しました。


歩行者量の自動調査のイメージ

歩行者量の自動調査のイメージ



本システムの特長

 本システムの最終目標は断面の歩行者量の調査の自動化です。
 調査の手順は以下の3つとなります。

①歩行者量を調査する各地点にカメラを設置

②撮影した映像に、歩行者を計数するための断面線を設置

③歩行者をトラッキングし方向別に計数


自動調査の流れ

自動調査の流れ


 また、本研究では、計数の自動化を実現するため、歩行者の検出やトラッキング、方向別の計数技術を開発しました。


①歩行者量を調査する各地点にカメラを設置

 動画像から、歩行者を検出します。
 一般的に、歩行者などの移動体を検出するには、背景差分や、フレーム間差分などの手法がありますが、歩行者以外の物体も多く誤検出される問題があります。これに対して、深層学習のYOLO技術が注目されています。YOLOは、事前に対象を学習させることで、誤検出が少なく、高精度に検出できます。しかし、歩行者などを対象とする場合、オクルージョンにより、検出漏れが発生する問題があります。そこで、本研究は、多くの歩行者の体がオクルージョンしても、頭部がオクルージョンしないことに着目し、頭部の検出により、歩行者を特定する手法を開発しました。具体的には、YOLOv4を用いて、歩行者の頭部の検出モデルを構築します。次に、頭部の位置から、歩行者の身長を計算し、全体のバウンディングボックスを取得します。

歩行者の検出のイメージ

歩行者の検出のイメージ


②歩行者のトラッキング技術

 歩行者の頭部をトラッキングします。
 物体をトラッキングするには、画像処理の代表であるOpenCVのライブラリで多くの手法が提供されています。特に、中でもCSRTが最も安定な手法で、事前実験により最善な精度が得られています。しかし、追跡対象の頭部は、特徴量が少ないため、CSRTを用いても、トラッキングが失敗する場合があります。これに対して、本研究では、YOLOv4の検出結果を用いて、再近傍法によりトラッキングの結果を補正します。これによりトラッキング精度が向上します。また、システムの処理コストを考慮し、トラッキングの対象は、断面線付近の頭部とします。

歩行者のトラッキングのイメージ

歩行者のトラッキングのイメージ


③歩行者の方向別の計数技術

 歩行者が断面線を通過した時、方向別に計数します。
 具体的には、歩行者のバウンディングから、足元の位置を取得します。次に、トラッキングした後、同一と判定された歩行者の足元を線でつなげます。そして、つなげた線が断面線と交叉した場合、計数します。最後に、これと同時に、移動方向を取得し、方向別に分類します。また、過剰計数を防ぐため、計数された人は、もう一度断面線を通過しても計数しません。

歩行者の計数のイメージ

歩行者の計数のイメージ

電話をかける