発表・掲載日:2007/10/16

カメラ映像から異常動作をリアルタイムで自動検出するソフトを開発

-監視カメラの自動化に向けて大きく前進-

ポイント

  • カメラ映像から異常動作等を自動検出する産総研独自のソフト「CHLAC」を約10倍高速化
  • 動画像処理システムを平易に構築することのできるソフト「Lavatube」を同時に開発
  • ノートパソコンのような小規模な処理系であってもリアルタイムで動作

概要

 独立行政法人 産業技術総合研究所【理事長 吉川 弘之】(以下「産総研」という)大津 展之 フェロー、情報技術研究部門【研究部門長 橋田 浩一】 坂上 勝彦 主幹研究員、岩田 健司 特別研究員、小林 匠 研究員、佐藤 雄隆 研究員は、産総研独自の画像認識技術を用いて、カメラ映像から異常動作をリアルタイムで自動的に検出するソフトを開発した。

 自動的に異常動作を検出する能力を持つ監視カメラの開発は困難な課題であるが、監視カメラが急速に普及・増加している昨今において極めて多くのニーズがある。これまでにわれわれは、「CHLAC」(立体高次局所自己相関特徴法)という計算方法を考案し、それに基づきカメラ映像中からの人物識別や、異常行動の検出などを行うための基本技術を開発し、優れた性能が得られることを確認した。(産総研プレスリリース 2005年5月24日

 省スペース・低価格の監視カメラシステムとして実用化するために、コンパクトな処理系においてもリアルタイムで動作させるためにCHLACのさらなる高速化が望まれていた。そこで新たに開発した並列計算アルゴリズムにより約10倍の高速化を達成し、ノートPCレベルの処理系であっても十分にリアルタイムで動作させることを可能にした。さらに、CHLACなどのカメラ映像の処理システムの構築をサポートするために、アイコンの組み合わせによって平易にシステムを構築することのできるプラットフォームソフト「Lavatube」を同時に開発した。

 なお、高速CHLACおよびLavatubeは、北陸技術交流テクノフェア(10月18~19日、福井県産業会館)、産学官技術交流フェア(11月28~30日、東京ビッグサイト)において展示、発表する予定である。

Lavatube上で実装したCHLACによる異常動作のリアルタイム検出の図
Lavatube上で実装したCHLACによる異常動作のリアルタイム検出
CHLACを用いると通常動作と異常動作が数値化される。
右側の異常/通常の表示は自動的に判定された結果。

開発の社会的背景

 近年、セキュリティへの関心の高まりにより、大量の監視カメラがさまざまな場所に設置されるようになっている。しかし、すべての映像を常に人が監視することはコストの問題で難しく、ただ単に映像を記録しておき、事故や犯罪などが起こった後に事後確認に用いることが多い。大規模な施設であれば多数のカメラ映像を、集中管理により監視員が監視することができる。しかし人手による限り、大量の映像に対し見落としなく常時注意を払うことは困難である。このようなことから、監視カメラの映像を自動的に識別するシステムが強く望まれている。識別が自動化されれば、リアルタイムに異常を知ることができるので、従来のような事後確認のための利用だけにとどまらず、より多くの場所でより積極的なセキュリティの確保が可能になる。

研究の経緯

 大津フェローらは従来から、静止画像の認識手法として学習適応能力を有する高次局所自己相関特徴抽出法(HLAC)の開発を行っており、1991年に当時の科学技術庁より第50回注目発明に選定された。これをさらに動画像処理に拡張したCHLACという計算方法を考案し、それに基づきカメラ映像中からの人物識別や、異常行動の検出などを行うための基本技術を開発し、優れた性能が得られることを確認した。(産総研プレスリリース 2005年5月24日

研究の内容

 これまでのCHLACについては、同様の機能を目指す他の方式と比較すると計算量は少ないが、さらに小規模な処理系であっても1秒間に30枚以上の画像を処理するための高速化が望まれていた。そこでわれわれは新たにCHLACを並列計算によって約10倍高速化するアルゴリズムを開発し、特別なハードウェアなどに依存することなく、ノートPCレベルの処理系であっても複数のカメラ映像をリアルタイムで同時処理することを可能にした。

 さらに、CHLACなどを用いたシステムの構築をサポートする枠組みを提供するために、アイコンの組み合わせによってカメラ映像の処理システムを構築できるプラットフォームソフト「Lavatube」を開発した。従来、画像処理システムの構築には、画像処理や動画像の扱いに関して専門的な知識が要求された。Lavatubeでは、アイコンを接続することで容易に画像処理システムを構築することができる。また、リアルタイムに処理結果を表示しながらパラメータの調整などを行うことができるので、効率的に開発を進めることができる。

 CHLACによって得られる動画像の特徴ベクトルを主成分分析によって解析することで、カメラ動画像から異常動作を検出する。ここでは異常動作を「通常の分布から外れる動作」と定義することで、シーンによって異なり、あらかじめ定義することができない異常動作のモデルを与えることなく、異常動作の検出を行うことができる。すなわち、通常得られる「通常動作のサンプル分布(部分空間)」をあらかじめ学習させておき、そこから外れる動作を異常動作として検出する。

 例えば図1では、ロッカーを普通に開閉するシーンを通常動作として学習しておくことで、そこから外れる動作(ここではロッカーのこじ開け)を的確に検出している。

異常動作検出例の図
図1 異常動作検出例(ロッカーのこじ開け)
 

 また、日照条件の変化や風による木々の揺れなど、さまざまな外乱の影響を受ける屋外においても、CHLACは高い性能を発揮する。通常動作を学習する過程で、これらの外乱を含めて学習することにより、異常検出の対象から除外することができる。例えば図2のように、木々が風により揺れている中に歩行者が観測されている場面であっても、的確に異常動作(ここでは柵の乗り越え)を検出することができる。

異常動作検出例の図
図2 異常動作検出例(屋外環境)
 

 このような高い性能を示すCHLACであるが、計算量が多くリアルタイムでの処理が厳しい問題があった。この問題を解決するためにノートPCレベルの処理系であってもリアルタイム処理を可能にする並列計算アルゴリズムを新たに開発した。高速化には、SIMD (Single Instruction / Multiple Data)を用いている。SIMDは近年のCPUの多くに搭載されており、1つの命令で複数のデータを同時並列に処理できる。例えば、インテル社のx86プロセッサに搭載されているMMX/SSE2/SSE3命令を用いた例では、図3のように顕著な高速化の効果が確認された。これにより、事後ではなく、異常が起こった瞬間に異常を自動的に検出し、通知するシステムも可能になる。

高速化の効果の図
図3 高速化の効果
 

 「Lavatube」は、CHLACなどを用いた動画像処理システムの開発を支援するために、今回新たに開発したソフトウェアで、図4に示すようなグラフィカルユーザーインターフェース(GUI)上でアイコンを接続するだけで、容易にカメラ映像処理システムを構築することができる。パラメータ調整などもGUI上から行うことができるので、リアルタイムに処理結果を確認しながら調整することができ、効率的にシステムを構築できる。さらに、安価に入手可能なUSBカメラavi、 mpeg等各種動画ファイルを入力として標準サポートし、アイコンを配置するだけでこれらを利用することができる。

Lavatubeによる画像認識システム構築例の図
Lavatubeによる画像認識システム構築例
 
GUIによる処理手順の記述の図
GUIによる処理手順の記述
図4 Lavatube
 

 以上、カメラ映像から異常動作の検出や人物の識別を行う能力を持つCHLACの高速化と、カメラ動画像処理システムの構築をサポートするLavatubeによって、これまで多くのニーズがありながら実現が困難であった監視カメラの自動化を強力に推し進めることが可能となった。

今後の予定

 CHLACはセキュリティや防災など応用分野(監視カメラシステム、警備システム、防災監視システムなど)を始め、ビデオの自動インデクシング(ビデオの索引の自動作成)、医療福祉やスポーツ分野(リハビリテーション、動作の矯正、トレーニングシステムなど)、さらには、対話システムやロボットの視覚など、幅広い分野での応用展開が今後検討できる。これらの開発を強力に支援するLavatubeとの相乗効果により、今後さまざまな分野における実用化が一層加速することが期待される。


用語の説明

◆「CHLAC」立体高次局所自己相関特徴法
動画像認識の方法の一つ。2次元画像を対象とするHLACに時間軸を加えることで3次元に拡張したもので、動画像中に出現する対象の「形」と「動き」を表現することが出来る。[参照元へ戻る]
◆高次局所自己相関特徴抽出法(HLAC)
汎用的な画像認識の方法で、図形や顔の認識など広く使われている。25種類(二値画像)、または35種類(濃淡画像)のパターンの組み合わせで、画像の「形」を表現する。認識対象の切り出し(位置あわせ)を必要としないなど、画像認識に好ましい性質を持つ。[参照元へ戻る]
◆画像処理システム
カメラやスキャナーなどにより画像を取得し、コンピューターにより解析する装置。工場での品質検査や、ロボットの視覚処理、セキュリティなどさまざまな分野で利用される。必要に応じて、さまざまな画像処理手順を組み合わせて構築する。[参照元へ戻る]
◆SIMD (Single Instruction / Multiple Data)
CPUなどの演算処理装置において、複数のデータを1つの命令でまとめて演算する方法。通常の命令は1つの命令につき1つのデータを処理するため、4つのデータを処理するには4命令を要する。4つのデータを処理するSIMD命令であれば、1つの命令で処理することができ、同一の動作周波数であれば1/4の処理時間で済むことになる。特に音声や画像などの処理に対して高速化の効果が高い。[参照元へ戻る]
◆MMX/SSE2/SSE3命令
インテル社が開発したSIMD命令群。MMXでは64bit、SSE/SSE2/SSE3では128bitのデータに対応したSIMD命令群である。SSEでは浮動小数点演算が可能であり、SSE2で整数演算に対応した。SSE3はSSE/SSE2にいくつかの命令を追加したもの。[参照元へ戻る]
◆グラフィカルユーザーインターフェース(GUI)
アイコン(機能を示す小さな絵)やメニューなどを表示し、マウスなどの入力装置を用いてコンピューターを操作する方式。文字のみで操作するキャラクターユーザーインターフェース (CUI)と比べ、直感的な操作が可能になる。[参照元へ戻る]
◆USBカメラ
パソコンに装備されているUSB端子に接続するカメラ。安価で入手できる。[参照元へ戻る]
◆avi、 mpeg等各種動画ファイル
コンピューターに動画像を保存する方式。aviやmpegなどの各種格納形式がある。[参照元へ戻る]

関連記事


お問い合わせ

お問い合わせフォーム