(57)【要約】【課題】互いに連携する複数の撮像装置のセットアップ作業を、より軽負担に、より多くの状況において、実行できるようにすることを支援することを目的とする。【解決手段】第１の撮像装置により撮影された画像と、第２の撮像装置により撮影された画像と、の双方から特徴点を検出し、検出された特徴点に基づいて、第１の撮像装置と第２の撮像装置との位置関係を特定し、特定された第１の撮像装置と第２の撮像装置との位置関係と、第１の撮像装置により撮影された画像内に指定された位置と、に基づいて、第２の撮像装置の撮影方向を決定する。【選択図】図５
2019211337.tif 000002
【特許請求の範囲】
【請求項１】
第１の撮像装置により撮影された画像と、第２の撮像装置により撮影された画像と、の双方から特徴点を検出する検出手段と、
前記第１の撮像装置により撮影された画像と、前記第２の撮像装置により撮影された画像と、から前記検出手段により検出された特徴点に基づいて、前記第１の撮像装置と前記第２の撮像装置との位置関係を特定する特定手段と、
前記特定手段により特定された前記第１の撮像装置と前記第２の撮像装置との位置関係と、前記第１の撮像装置により撮影された画像内に指定された位置と、に基づいて、前記第２の撮像装置の撮影方向を決定する決定手段と、
を有する情報処理装置。
【請求項２】
前記検出手段は、前記第１の撮像装置により撮影された画像と、前記第２の撮像装置により撮影された画像と、の双方から、予め定められたパターンが描かれたマーカにおける点である特徴点を検出する請求項１記載の情報処理装置。
【請求項３】
前記特定手段は、前記マーカに基づいて定められた座標系であるマーカ座標系における前記第１の撮像装置の位置及び姿勢と、前記マーカ座標系における前記第２の撮像装置の位置及び姿勢と、に基づいて、前記第１の撮像装置と前記第２の撮像装置との位置関係を特定する請求項２記載の情報処理装置。
【請求項４】
前記第２の撮像装置が撮影方向の変更に用いられる機構を有し、撮影方向を変更可能な撮像装置である場合、前記第２の撮像装置に基づいて定められた座標系であって、前記第２の撮像装置の撮影方向の変化によっては変化しない座標系を第１のカメラ座標系として、前記特定手段は、前記マーカ座標系における前記第１の撮像装置の位置及び姿勢と、前記マーカ座標系における前記第２の撮像装置の位置及び姿勢である前記マーカ座標系における前記第１のカメラ座標系の原点の位置及び前記マーカ座標系における前記第１のカメラ座標系の姿勢と、に基づいて、前記第１の撮像装置と前記第２の撮像装置との位置関係を特定する請求項３記載の情報処理装置。
【請求項５】
前記第１の撮像装置が撮影方向の変更に用いられる機構を有し、撮影方向を変更可能な撮像装置である場合、前記第１の撮像装置に基づいて定められた座標系であって、前記第１の撮像装置の撮影方向の変化によっては変化しない座標系を第２のカメラ座標系として、前記特定手段は、前記マーカ座標系における前記第１の撮像装置の位置及び姿勢である前記マーカ座標系における前記第２のカメラ座標系の原点の位置及び前記マーカ座標系における前記第２のカメラ座標系の姿勢と、前記マーカ座標系における前記第２の撮像装置の位置及び姿勢と、に基づいて、前記第１の撮像装置と前記第２の撮像装置との位置関係を特定する請求項３又は４記載の情報処理装置。
【請求項６】
前記第２の撮像装置の撮影方向を、前記決定手段により決定された撮影方向に変更する変更手段を更に有する請求項１乃至５何れか１項記載の情報処理装置。
【請求項７】
前記第１の撮像装置によって撮像された画像を表示する第１の表示手段と、
前記第２の撮像装置によって撮像された画像を表示する第２の表示手段と、
前記第１の表示手段によって表示された画像上の注目領域の指定を受付ける受付手段と、
を更に有し、
前記決定手段は、前記特定手段により特定された前記第１の撮像装置と前記第２の撮像装置との位置関係と、前記受付手段により受付けられた前記指定が示す位置と、に基づいて、前記第２の撮像装置の撮影方向を決定する請求項１乃至６何れか１項記載の情報処理装置。
【請求項８】
前記検出手段により検出された特徴点に基づいて、前記第１の撮像装置と前記第２の撮像装置との少なくとも１つの床からの高さを取得する取得手段を更に有する請求項１乃至７何れか１項記載の情報処理装置。
【請求項９】
前記第２の撮像装置は、撮影方向の変更に用いられる機構を有し、撮影方向を変更可能な撮像装置である請求項１乃至８何れか１項記載の情報処理装置。
【請求項１０】
第１の撮像装置により撮影された画像と、第２の撮像装置により撮影された画像と、の双方から特徴点を検出する検出手段と、
前記第１の撮像装置により撮影された画像と、前記第２の撮像装置により撮影された画像と、から前記検出手段により検出された特徴点に基づいて、前記第１の撮像装置と前記第２の撮像装置との位置関係を特定する特定手段と、
前記特定手段により特定された前記第１の撮像装置と前記第２の撮像装置との位置関係と、前記第１の撮像装置により撮影された画像内に指定された位置と、に基づいて、前記第２の撮像装置の撮影方向を決定する決定手段と、
を有するシステム。
【請求項１１】
情報処理装置が実行する情報処理方法であって、
第１の撮像装置により撮影された画像と、第２の撮像装置により撮影された画像と、の双方から特徴点を検出する検出ステップと、
前記第１の撮像装置により撮影された画像と、前記第２の撮像装置により撮影された画像と、から前記検出ステップで検出された特徴点に基づいて、前記第１の撮像装置と前記第２の撮像装置との位置関係を特定する特定ステップと、
前記特定ステップで特定された前記第１の撮像装置と前記第２の撮像装置との位置関係と、前記第１の撮像装置により撮影された画像内に指定された位置と、に基づいて、前記第２の撮像装置の撮影方向を決定する決定ステップと、
を含む情報処理方法。
【請求項１２】
システムが実行する情報処理方法であって、
第１の撮像装置により撮影された画像と、第２の撮像装置により撮影された画像と、の双方から特徴点を検出する検出ステップと、
前記第１の撮像装置により撮影された画像と、前記第２の撮像装置により撮影された画像と、から前記検出ステップで検出された特徴点に基づいて、前記第１の撮像装置と前記第２の撮像装置との位置関係を特定する特定ステップと、
前記特定ステップで特定された前記第１の撮像装置と前記第２の撮像装置との位置関係と、前記第１の撮像装置により撮影された画像内に指定された位置と、に基づいて、前記第２の撮像装置の撮影方向を決定する決定ステップと、
を含む情報処理方法。
【請求項１３】
コンピュータを、請求項１乃至９何れか１項記載の情報処理装置の各手段として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置、システム、情報処理方法及びプログラムに関する。
【背景技術】
【０００２】
近年、ネットワークカメラ等の撮像装置を利用した監視システムが広く普及している。
撮像装置には、大規模な公共機関や量販店における監視カメラとして等幅広い分野で利用され、様々な運用方法があるものがある。撮像装置には、運用形態に合わせるために様々な機能的特徴をもったものが存在する。撮像装置には、例えば、パン・チルトといった撮影方向を自在に変更できるものや、高倍率のズーム撮影が可能なもの、魚眼レンズを搭載し、広い範囲を一度に監視可能なもの（全方位カメラ）等が存在する。
また、複数の撮像装置を用いて監視等が行われる場合がある。例えば、全方位カメラは非常に広い視野角を持つ一方で、カメラから離れた場所では割り当てられた画素数が少なく、解像度が落ちてしまう。そのため、人の顔や車番等の詳細な情報を取得することには向いていない。そこを補うため、全方位カメラとパン・チルト・ズーム機能を持つカメラ（ＰＴＺカメラ）とを連携させる機能を持つ監視システムが特許文献１に開示されている。即ち、全方位カメラで広い範囲を一度に監視し、その映像中で特に注視すべき点はＰＴＺカメラで拡大表示し、詳細情報を取得することを可能にするシステムである。このように複数の撮像装置を連携させる場合、撮像装置の設置の際に撮像装置間で連携を行うためのキャリブレーション作業を行う必要がある。
また、特許文献２には、既知のパターンを持つ物体を撮影することで、物体の位置、姿勢を測定する方法が開示されている。この方法によって、撮影した物体を基準としたカメラ位置、及び姿勢を推定する技術も知られている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】ＵＳ９３１３４００
【特許文献２】特開２００６-２４２９４３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
特許文献１に開示された従来技術では、第１の撮像装置と第２の撮像装置とで撮影した画像間で制御ＬＵＴ（Ｌｏｏｋ−Ｕｐ  Ｔａｂｌｅ）を構築する。そして、第１の撮像装置で撮影した画像上で指定した注目領域（ＲＯＩ：Ｒｅｇｉｏｎ  Ｏｆ  Ｉｎｔｅｒｅｓｔ）と制御ＬＵＴとによって第２の撮像装置の撮影方向を決定する。
しかしながら、特許文献１では、撮像装置のセットアップ時に撮像装置間の連携のための制御ＬＵＴを構築する作業が必要となる。制御ＬＵＴを構築する方法としては、例えば、人の手によって画像を見比べ、対応点を入力する方法があるが、この方法ではセットアップ作業に多くの手間がかかり、人に係る負担が大きくなる。また、この方法で有効な制御ＬＵＴを構築するためには、第１の撮像装置と第２の撮像装置との撮影画角の大部分がオーバーラップしている必要がある。即ち、特許文献１の方法は、第１の撮像装置と第２の撮像装置との撮影画角の大部分がオーバーラップしている場合にしか適用できないため、実行できる状況には制限があった。
そこで本発明は、互いに連携する複数の撮像装置のセットアップ作業を、より軽負担に、より多くの状況において、実行できるようにすることを支援することを目的とする。
【課題を解決するための手段】
【０００５】
本発明の情報処理装置は、第１の撮像装置により撮影された画像と、第２の撮像装置により撮影された画像と、の双方から特徴点を検出する検出手段と、前記第１の撮像装置により撮影された画像と、前記第２の撮像装置により撮影された画像と、から前記検出手段により検出された特徴点に基づいて、前記第１の撮像装置と前記第２の撮像装置との位置関係を特定する特定手段と、前記特定手段により特定された前記第１の撮像装置と前記第２の撮像装置との位置関係と、前記第１の撮像装置により撮影された画像内に指定された位置と、に基づいて、前記第２の撮像装置の撮影方向を決定する決定手段と、を有する。
【発明の効果】
【０００６】
本発明によれば、互いに連携する複数の撮像装置のセットアップ作業を、より軽負担に、より多くの状況において、実行できるようにすることを支援することができる。
【図面の簡単な説明】
【０００７】
【図１】監視システムのシステム構成の一例を示す図である。
【図２】監視システムの各要素のハードウェア構成等の一例を示す図である。
【図３】撮像装置の位置関係の特定の際の環境の一例を示す図である。
【図４】マーカの一例を説明する図である。
【図５】監視システムの処理の一例を示すフローチャートである。
【図６】位置推定処理の一例を示すフローチャートである。
【図７】ＰＴＺ型の撮像装置の構造の一例を示す図である。
【図８】ＰＴＺ型の撮像装置における座標系の一例を説明する図である。
【図９】位置関係特定処理の一例を示すフローチャートである。
【図１０】撮像装置間の連携処理の一例を示すフローチャートである。
【図１１】広角型の撮像装置の機構等の一例を示す図である。
【図１２】広角型の撮像装置から被写体へのベクトル算出処理の一例を説明する図である。
【図１３】ＰＴＺ型の撮像装置から被写体へのベクトル算出処理の一例を説明する図である。
【図１４】ＵＩの一例を示す図である。
【発明を実施するための形態】
【０００８】
以下に、本発明の好ましい実施の形態を、図面に基づいて詳細に説明する。
【０００９】
＜実施形態１＞
図１は、本実施形態の監視システムのシステム構成の一例を示す図である。本実施形態における監視システムは、撮像装置１０１、撮像装置１０２、クライアント装置１０３を含む。撮像装置１０１、撮像装置１０２、クライアント装置１０３は、ネットワーク１０４を介して、互いに通信可能に接続されている。
撮像装置１０１は、パン、チルト、ズーム機構を持つＰＴＺ型の撮像装置であり、パン、チルト、ズームの駆動を行うことで、撮影方向を変更可能な撮像装置である。撮像装置１０２は、魚眼レンズ等の広角レンズを有する広角型の撮像装置である。
クライアント装置１０３は、撮像装置１０１、撮像装置１０２との間で、ネットワーク１０４を介した情報の入出力を行うパーソナルコンピュータ（ＰＣ）、サーバ装置、タブレット装置、スマートフォン等の情報処理装置である。ネットワーク１０４は、インターネット、ＬＡＮ等のネットワークであり、撮像装置１０１、撮像装置１０２、クライアント装置１０３間の通信が可能であれば特に限られない。また、撮像装置１０１は、複数台設置されていてもよい。
【００１０】
図２は、監視システムの各要素のハードウェア構成等の一例を示す図である。
撮像装置１０１は、撮像部２０１、画像処理部２０２、システム制御部２０３、パン駆動部２０４、チルト駆動部２０５、ズーム駆動部２０６、パンチルトズーム制御部２０７、空間情報処理部２０８、記憶部２０９、通信部２１０を含む。
撮像部２０１は、レンズ、撮像素子等を含む機構であり、レンズを介して撮像素子に入光した光から電気信号への変換を行うことで被写体の撮影を行う。
画像処理部２０２は、撮像部２０１によって変換された電気信号に画像処理、圧縮符号化処理を行い、画像データを生成し、システム制御部２０３へ送信するプロセッサである。
システム制御部２０３は、ＣＰＵ、ＣＰＵのワークエリアとして機能するＲａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ（ＲＡＭ）等の主記憶装置を含み、撮像装置１０１を制御する制御装置である。システム制御部２０３は、通信部２１０を介して、画像処理部２０２により生成された画像データをクライアント装置１０３に送信する。また、システム制御部２０３は、通信部２１０を介してクライアント装置１０３等から受信したカメラ制御コマンドを解析し、コマンドに応じた処理を行う。例えば、システム制御部２０３は、画像処理部２０２に対して画質調整の設定や、パンチルトズーム制御部２０７に対してパン・チルト・ズーム動作の設定といった撮影パラメータ設定の指示を行う。
【００１１】
パン駆動部２０４は、パン動作を行うメカ駆動系、その駆動源のモータ、駆動部の角度を検出する角度センサを含む機構であり、モータを駆動することで駆動系を駆動させ、撮像装置１０１の撮影方向をパン方向に変化させる。
チルト駆動部２０５は、チルト動作を行うメカ駆動系、その駆動源のモータ、駆動部の角度を検出する角度センサを含む機構であり、モータを駆動させることで駆動系を駆動させ、撮像装置１０１の撮影方向をチルト方向に変化させる。
ズーム駆動部２０６は、フォーカスレンズ、ズームレンズの駆動部、モータ、ズームレンズの位置を検出するセンサを含む機構であり、モータを駆動されることによりズームレンズが光軸方向に移動して、撮像装置１０１の焦点距離を変更する。また、ズーム駆動部２０６は、モータを駆動させることでフォーカスレンズを光軸方向に移動させ、撮像装置１０１の焦点調節を行う。
【００１２】
パンチルトズーム制御部２０７は、システム制御部２０３から伝達された指示信号に基づいて、パン駆動部２０４、チルト駆動部２０５、及びズーム駆動部２０６を制御するプロセッサである。また、パンチルトズーム制御部２０７は、パン駆動部２０４、チルト駆動部２０５、ズーム駆動部２０６のセンサ情報を解析し、撮像装置１０１のパン角、チルト角、ズーム角を取得することができる。
パンチルトズーム制御部２０７は、システム制御部２０３から送信された指示信号に基づいて、パンチルトズーム動作をパン駆動部２０４、チルト駆動部２０５、ズーム駆動部２０６に指示する。また、パンチルトズーム制御部２０７は、システム制御部２０３からの要求に応じて、パン駆動部２０４、チルト駆動部２０５、ズーム駆動部２０６から、撮像装置１０１のパン角、チルト角、ズーム角を取得しシステム制御部２０３に送信する。
【００１３】
空間情報処理部２０８は、撮像装置１０１と撮像装置１０２との連携機能を実現するために、撮像装置１０１と撮像装置１０２との３次元的な位置に関する処理を実行するプロセッサである。より具体的には、空間情報処理部２０８は、撮影した画像上の特徴点から自己位置を推定する処理等の処理を行う。撮像装置１０１は、空間情報処理部２０８を含まずに、空間情報処理部２０８の処理を、システム制御部２０３を介して実行することとしてもよい。
記憶部２０９は、画質調整のパラメータ、ネットワークの設定といった設定値、撮影された画像データ、各種プログラム等を記憶する記憶装置である。システム制御部２０３は、撮像装置１０１が再起動された場合でも、記憶部２０９に記憶された以前設定された値を用いて、撮像装置１０１を制御することができる。記憶部２０９は、例えば、Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ（ＲＯＭ）、ハードディスクドライブ（ＨＤＤ）、ソリッドステートドライブ（ＳＳＤ）、フラッシュメモリ等である。
通信部２１０は、ネットワーク１０４を介した撮像装置１０２、クライアント装置１０３等の外部の装置との間の通信に用いられるインターフェースである。
システム制御部２０３が、記憶部２０９に記憶されたプログラムにしたがって処理を実行することで、撮像装置１０１の機能、図６のフローチャートの処理、図５、図１０のフローチャートにおける撮像装置１０１の処理等が実現される。
【００１４】
撮像装置１０２は、撮像部２１１、画像処理部２１２、システム制御部２１３、空間情報処理部２１４、記憶部２１５、通信部２１６を含む。
撮像部２１１は、レンズ、撮像素子を含む機構であり、レンズを介して撮像素子に入光した光から電気信号への変換を行うことで被写体の撮影を行う。また、撮像部２１１は、半球状の視野角を有する広角レンズを含む。
画像処理部２１２は、撮像部２１１によって変換された電気信号に画像処理、圧縮符号化処理を行い、画像データを生成し、システム制御部２１３へ送信するプロセッサである。
システム制御部２１３は、ＣＰＵ、ＣＰＵのワークエリアとして機能する主記憶装置を含み、撮像装置１０２を制御する制御装置である。システム制御部２１３は、通信部２１６を介して、画像処理部２１２により生成された画像データをクライアント装置１０３に送信する。また、システム制御部２１３は、通信部２１６を介してクライアント装置１０３等から受信したカメラ制御コマンドを解析し、コマンドに応じた処理を行う。例えば、システム制御部２１３は、画像処理部２１２に対して画質調整の設定等の撮影パラメータ設定の指示を行う。
【００１５】
空間情報処理部２１４は、撮像装置１０１と撮像装置１０２との連携機能を実現するために、撮像装置１０１と撮像装置１０２との３次元的な位置に関する処理を実行するプロセッサである。より具体的には、空間情報処理部２１４は、撮影した画像上の特徴点から自己位置を推定する処理等の処理を行う。撮像装置１０２は、空間情報処理部２１４を含まずに、空間情報処理部２１４の処理を、システム制御部２１３を介して実行することとしてもよい。
記憶部２１５は、画質調整のパラメータ、ネットワークの設定といった設定値、各種プログラム等を記憶する記憶装置である。システム制御部２１３は、撮像装置１０２が再起動された場合でも、記憶部２１５に記憶された以前設定された値を用いて、撮像装置１０２を制御することができる。記憶部２１５は、例えば、ＲＯＭ、ＨＤＤ、ＳＳＤ、フラッシュメモリ等である。
通信部２１６は、ネットワーク１０４を介した撮像装置１０１、クライアント装置１０３等の外部の装置との間の通信に用いられるインターフェースである。
システム制御部２１３が、記憶部２１５に記憶されたプログラムにしたがって処理を実行することで、撮像装置１０２の機能、図６のフローチャートの処理、図５、図１０のフローチャートにおける撮像装置１０２の処理等が実現される。
【００１６】
クライアント装置１０３は、表示部２１７、入力部２１８、システム制御部２１９、通信部２２０、記憶部２２１、空間情報処理部２２２、画像処理部２２３を含む。
表示部２１７は、液晶表示装置等の表示装置であり、撮像装置１０１、撮像装置１０２等から受信した画像データの表示を行う。また、表示部２１７は、撮像装置１０１、撮像装置１０２の制御に用いられるグラフィックユーザインターフェース（以下では、ＧＵＩとする）等を表示する。このＧＵＩは、例えば、撮像装置１０１のズーム率の設定、パン・チルト方向の変更、撮像装置１０１、撮像装置１０２への撮像の指示等に用いられる。
入力部２１８は、キーボード、マウス、タッチパネル等の入力装置である。クライアント装置１０３のユーザは、入力部２１８を介してＧＵＩを操作する。
【００１７】
システム制御部２１９は、ＣＰＵ、ＣＰＵのワークエリアとして機能する主記憶装置を含み、クライアント装置１０３を制御する制御装置である。システム制御部２１９は、通信部２２０を介して、撮像装置１０１、撮像装置１０２等から送信された画像データを受信する。また、システム制御部２１９は、通信部２２０を介して撮像装置１０１、撮像装置１０２等に対して、制御コマンドを送信することで、画質調整の設定等の撮影パラメータ設定の指示、パンチルトズーム動作の指示等を行う。
通信部２２０は、ネットワーク１０４を介した撮像装置１０１、撮像装置１０２等の外部の装置との間の通信に用いられるインターフェースである。
記憶部２２１は、撮像装置１０１、撮像装置１０２のＩＰアドレス等の情報、ネットワークの設定の情報、各種プログラム等を記憶するＲＯＭ、ＨＤＤ、ＳＳＤ、フラッシュメモリ等の記憶装置である。システム制御部２１９は、クライアント装置１０３が再起動された場合でも、記憶部２２１に記憶された以前設定された値を用いて、クライアント装置１０３を制御することができる。
【００１８】
空間情報処理部２２２は、撮像装置１０１と撮像装置１０２との連携機能を実現するために、撮像装置１０１と撮像装置１０２との３次元的な位置に関する処理を実行するプロセッサである。より具体的には、空間情報処理部２２２は、撮像装置１０１と撮像装置１０２との位置情報に基づいて、撮像装置１０１と撮像装置１０２との間の位置関係を特定する処理等の処理を実行する。クライアント装置１０３は、空間情報処理部２２２を含まずに、空間情報処理部２２２の処理を、システム制御部２１９を介して実行することとしてもよい。
画像処理部２２３は、各種の画像処理を実行するプロセッサである。例えば、画像処理部２２３は、各撮像装置から送信された画像をＧＵＩとして表示部２１７に表示するための処理、入力部２１８を介した入力に基づいて画像上の座標を抽出する処理等の処理を実行する。クライアント装置１０３は、画像処理部２２３を含まずに、画像処理部２２３の処理を、システム制御部２１９を介して実行することとしてもよい。
システム制御部２１９が、記憶部２２１に記憶されたプログラムにしたがって処理を実行することで、クライアント装置１０３の機能、図９のフローチャートの処理、図５、１０のフローチャートにおけるクライアント装置１０３の処理等が実現される。
【００１９】
図３は、撮像装置１０１と撮像装置１０２との位置関係を特定する際の環境の一例を示す図である。撮像装置１０１と撮像装置１０２とは、ネットワーク１０４を介してクライアント装置１０３と通信可能な状態となっている。本実施形態では、検出が容易な特徴点を含むオブジェクトとして、予め定められたパターンが描かれているマーカ３０１が、床に水平に設置されることとする。マーカ３０１に描かれているパターンの詳細については、図４で後述する。
撮像装置１０１は、撮像部２０１と画像処理部２０２とを用いてマーカ３０１を撮影し画像データを取得し、取得した画像データを、空間情報処理部２０８を介して解析する。これにより、撮像装置１０１は、マーカ３０１に基づいて定められた座標系における撮像装置１０１の位置を特定する。マーカ３０１に基づいて定められた座標系は、例えば、マーカ３０１に基づいて決定された点を原点とし、マーカ３０１の姿勢の変化に応じて姿勢が変化するよう定義された座標系である。以下では、マーカ３０１に基づいて定められた座標系を、マーカ座標系とする。
また、撮像装置１０２は、撮像部２１１と画像処理部２１２とを用いてマーカ３０１を撮影し、撮影した画像を、空間情報処理部２１４を介して解析する。これにより、撮像装置１０２は、マーカ座標系における撮像装置１０２の位置を特定する。
【００２０】
図４（ａ）は、マーカ３０１に描かれたパターン（デザイン）の一例を示す図である。マーカ３０１には、図４（ａ）に示すように、白黒のチェスボード模様のパターンが描かれている。このパターンが示すチェスボードのマス目の大きさ、縦横のマス目の数は、既知であるとする。また、このチェスボード上のパターンのマス目の数は奇数×偶数となっているため、マーカ３０１のパターンには回転対称性がない。したがって、撮像装置１０１、１０２は、マーカ３０１のパターンを撮影し、解析することによって、カメラの位置だけでなく、カメラの姿勢も推定することができる。
図４（ｂ）は、マーカ座標系の一例を示す図である。図４（ａ）のチェスボード上のパターンにおける左上のコーナー（マス目の角）を原点ＯＭとし、向かって右方向をＸＭ軸方向、下方向をＹＭ軸方向、奥方向をＺＭ軸方向とする。本実施形態では、マーカ座標系は、ＯＭを原点とし、この３つの軸で定義される座標系である。
ただし、図４で示したマーカ３０１のパターン、マーカ３０１を基準に定義される座標系は、あくまで一例である。マーカ３０１には、ハニカム模様等の他のパターンが描かれていることとしてもよい。また、マーカ３０１は、２次元マーカでなく立体的なマーカでもよい。また、マーカ３０１は、複数あってもよい。
【００２１】
図５は、位置関係特定処理の一例を示すフローチャートである。図５を用いて、図３に示す環境において、監視システムが撮像装置１０１と撮像装置１０２との位置関係を特定する処理について説明する。図５のフローチャートは、３列構成になっている。左側のフローチャートがクライアント装置１０３の処理を示し、中央のフローチャートが撮像装置１０１の処理を示し、右側のフローチャートが撮像装置１０２の処理を示す。図５中の破線矢印は、行われた通信を示す。
Ｓ５０１において、システム制御部２１９は、ユーザによる入力部２１８を介した操作に基づいて、監視に用いられる撮像装置を、撮像装置１０１と撮像装置１０２とするという指定を受付ける。また、システム制御部２１９は、ユーザによる入力部２１８を介した操作に基づいて、撮像装置１０１と撮像装置１０２との位置関係の特定に用いられるマーカを、マーカ３０１にするという指定を受付ける。そして、システム制御部２１９は、監視システムのセットアップを開始する。
Ｓ５０２において、システム制御部２１９は、撮像装置１０１と撮像装置１０２とのそれぞれに対し、マーカ３０１を基準としたカメラ位置姿勢推定を指示するコマンドを送信する。この際、システム制御部２１９は、Ｓ５０１で指定を受付けたマーカ３０１の情報をコマンドと併せて送信する。
【００２２】
Ｓ５０２で送信されたコマンドを受けた際の、撮像装置１０１の処理について、図５の中央のフローチャートを用いて説明する。
Ｓ５０３において、システム制御部２０３は、クライアント装置１０３から送信されたコマンドとマーカ３０１の情報とを受信し、マーカ３０１を基準とした撮像装置１０１の位置姿勢推定処理を実行する。この位置姿勢推定処理の詳細については、図６、７で後述する。
Ｓ５０４において、システム制御部２０３は、Ｓ５０３で実行した位置姿勢推定処理が成功したか否かを判定する。システム制御部２０３は、成功したと判定した場合、Ｓ５０５の処理に進み、失敗したと判定した場合、Ｓ５０６の処理に進む。
Ｓ５０５において、システム制御部２０３は、撮像装置１０１の位置姿勢推定処理が成功したことを示す成功通知をクライアント装置１０３に送信する。システム制御部２０３は、この成功通知と併せて、Ｓ５０３の処理で求めた撮像装置１０１の位置と姿勢との情報をクライアント装置１０３に送信する。以下では、位置と姿勢との情報を合せて、位置姿勢情報とする。
Ｓ５０６において、システム制御部２０３は、クライアント装置１０３に、撮像装置１０１の位置姿勢推定処理が失敗したことを示す失敗通知を送信する。
【００２３】
Ｓ５０２で送信されたコマンドを受けた際の、撮像装置１０２の処理について、図５の右側のフローチャートを用いて説明する。
Ｓ５０７において、システム制御部２１３は、クライアント装置１０３から送信されたコマンドとマーカ３０１の情報とを受信し、マーカ３０１を基準とした撮像装置１０２の位置姿勢推定処理を実行する。この位置姿勢推定処理の詳細については、図６、７で後述する。
Ｓ５０８において、システム制御部２１３は、Ｓ５０７で実行した位置姿勢推定処理が成功したか否かを判定する。システム制御部２１３は、成功したと判定した場合、Ｓ５０９の処理に進み、失敗したと判定した場合、Ｓ５１０の処理に進む。
Ｓ５０９において、システム制御部２１３は、撮像装置１０２の位置姿勢推定処理が成功したことを示す成功通知をクライアント装置１０３に送信する。システム制御部２１３は、この成功通知と併せて、Ｓ５０７の処理で求めた撮像装置１０２の位置姿勢情報をクライアント装置１０３に送信する。
Ｓ５１０において、システム制御部２１３は、クライアント装置１０３に、撮像装置１０２の位置姿勢推定処理が失敗したことを示す失敗通知を送信する。
【００２４】
クライアント装置１０３の処理の説明に戻る。
Ｓ５１１において、システム制御部２１９は、撮像装置１０１から、Ｓ５０５又はＳ５０６で送信された情報を受信する。また、システム制御部２１９は、撮像装置１０２から、Ｓ５０９又はＳ５１０で送信された情報を受信する。
Ｓ５１２において、システム制御部２１９は、Ｓ５１１で撮像装置１０１と撮像装置１０２との双方から位置姿勢推定処理の成功を示す成功通知を受信したか否かを判定する。システム制御部２１９は、Ｓ５１１で撮像装置１０１と撮像装置１０２との双方から位置姿勢推定処理の成功を示す成功通知を受信したと判定した場合、Ｓ５１４の処理に進む。また、システム制御部２１９は、Ｓ５１１で撮像装置１０１と撮像装置１０２との何れかから位置姿勢推定処理の失敗を示す失敗通知を受信したと判定した場合、Ｓ５１３の処理に進む。
Ｓ５１３において、システム制御部２１９は、撮像装置１０１と撮像装置１０２との位置関係の特定処理が失敗したことを示す失敗メッセージを表示部２１７に表示し、図５の処理を終了する。
【００２５】
Ｓ５１４において、システム制御部２１９は、撮像装置１０１と撮像装置１０２とから受信した位置姿勢情報に基づいて、撮像装置１０１と撮像装置１０２との間の位置関係を特定する。Ｓ５１４で行われる位置関係の特定処理の詳細については、図９で後述する。
Ｓ５１５において、システム制御部２１９は、Ｓ５１４で特定した位置関係を示す情報を撮像装置１０１と撮像装置１０２とに送信する。以下では、位置関係を示す情報を位置関係情報とする。
Ｓ５１６において、システム制御部２０３は、Ｓ５１５でクライアント装置１０３から送信された位置関係情報を受信し、記憶部２０９に格納する。
Ｓ５１７において、システム制御部２１３は、Ｓ５１５でクライアント装置１０３から送信された位置関係情報を受信し、記憶部２１５に格納する。
本実施形態では、Ｓ５０３、Ｓ５０７における位置姿勢推定処理は、撮像装置１０１と撮像装置１０２とのそれぞれにより、クライアント装置１０３からの指示に応じて行われることとした。しかし、クライアント装置１０３が、撮像装置１０１と撮像装置１０２とから送信された画像に基づいて、Ｓ５０３、Ｓ５０７と同様の位置姿勢推定処理を実行することとしてもよい。
【００２６】
図６は、マーカ３０１を基準とした撮像装置の位置と姿勢とを推定する位置姿勢推定処理の一例を示すフローチャートである。図６を用いて、図５のフローチャートにおけるＳ５０３、Ｓ５０７の位置姿勢推定処理の詳細について説明する。図６のフローチャートの処理のうちＳ６０５の処理は、撮像装置１０１により実行されるが、撮像装置１０２には実行されない処理である。図６のフローチャートの処理のうち他の処理は、撮像装置１０１と撮像装置１０２との双方により実行される処理である。
Ｓ６０１において、システム制御部２０３（２１３）は、撮像部２０１（２１０）と画像処理部２０２（２１２）とを介して、周囲の環境を撮影し画像データを取得する。
Ｓ６０２において、システム制御部２０３（２１３）は、画像処理部２０２（２１２）を介して、クライアント装置１０３から送信されたマーカ３０１の情報に基づいて、Ｓ６０１で取得した画像データにマーカ３０１が写っているか否かを判定する。例えば、システム制御部２０３（２１３）は、Ｓ６０１で取得した画像データから、マーカ３０１を検知する処理を行い、検知できた場合、マーカ３０１が写っていると判定し、検知できなかった場合、マーカ３０１が写っていないと判定する。システム制御部２０３（２１３）は、Ｓ６０１で取得した画像データにマーカ３０１が写っていると判定した場合、Ｓ６０３の処理に進み、Ｓ６０１で取得した画像データにマーカ３０１が写っていないと判定した場合、Ｓ６０７の処理に進む。
【００２７】
Ｓ６０３において、システム制御部２０３（２１３）は、画像処理部２０２（２１２）を介して、Ｓ６０１で取得した画像データにおける予め定められた特徴点のこの画像内における座標（この画像の座標系における座標）を抽出する。本実施形態では、この特徴点は、マーカ３０１におけるチェスボード上のパターンにおける各コーナーの点とする。この点の座標は、画像上におけるマーカ３０１のコーナーが写っている画素の座標である。マーカ３０１には、コーナーが１２点あるため、システム制御部２０３（２１３）は、１２点の２次元座標を抽出する。
Ｓ６０４において、システム制御部２０３（２１３）は、空間情報処理部２０８（２１４）を介して、Ｓ６０３で抽出した特徴点の座標に基づいて、撮像装置１０１（１０２）のマーカ３０１に基づいて定められたマーカ座標系における位置と姿勢との推定を行う。システム制御部２０３（２１３）は、例えば、特許文献２に開示されたアルゴリズムを用いて、撮像装置１０１（１０２）のマーカ座標系における位置と姿勢との推定を行う。
システム制御部２０３（２１３）は、マーカ座標系における撮像装置１０１（１０２）に基づいて定められた座標系の原点の位置と、座標系の姿勢と、を撮像装置１０１（１０２）の位置、姿勢として推定する。撮像装置１０１（１０２）に基づいて定められた座標系は、例えば、撮像装置１０１（１０２）に基づいて決定された点を原点として、撮像装置１０１（１０２）の姿勢の変化に合わせて姿勢（各座標軸の傾き）が変化する座標系である。システム制御部２０３（２１３）は、撮像装置１０１（１０２）に基づいて定められた座標系の一例である撮像部２０１（２１３）のレンズに基づいて定められた座標系の原点の位置と、座標系の姿勢と、を推定する。以下では、撮像装置のレンズに基づいて定められた座標系をレンズ座標系とする。
【００２８】
システム制御部２０３（２１３）は、撮像装置のレンズ座標系を、その撮像装置の位置姿勢を示す座標系として用いることとなる。より具体的には、システム制御部２０３（２１３）は、レンズ座標系の原点の位置をその撮像装置の位置として、このレンズ座標系の姿勢をその撮像装置の姿勢として用いる。
システム制御部２０３（２１３）は、撮像装置１０１（１０２）の位置を示す位置データとして、以下の式（１）で表されるように３次元の並進ベクトルＴLのデータを取得する。式（１）のベクトルＴLの各要素は、マーカ座標系における撮像装置１０１（１０２）上に予め定められた点の座標の座標値を示す。ベクトルＴLは、マーカ座標系におけるマーカ座標系の原点から、撮像装置１０１（１０２）のレンズ座標系の原点までのベクトルである。
【００２９】
【数１】
2019211337.tif 000003
【００３０】
また、システム制御部２０３（２１３）は、撮像装置１０１（１０２）の姿勢を示す姿勢データとして、以下の式（２）で表されるように３×３の行列ＲLのデータを取得する。式（２）の行列ＲLは、マーカ３０１に基づいて定められたマーカ座標系から、撮像装置１０１（１０２）のレンズ座標系への変換行列である。撮像装置１０１（１０２）のレンズ座標系の各軸の方向は、撮像装置１０１（１０２）の姿勢により変動することとなる。そのため、行列ＲLは、撮像装置１０１（１０２）の姿勢と対応関係があり、撮像装置１０１（１０２）の姿勢を示す情報として解釈できる。
【００３１】
【数２】
2019211337.tif 000004
【００３２】
Ｓ６０５において、システム制御部２０３は、撮像装置１０１の位置姿勢を示す座標系を、撮像装置１０１のレンズ座標系から撮像装置１０１のパンチルト駆動の影響を受けない座標系に補正する。Ｓ６０５の処理の詳細については、図７、図８で後述する。
Ｓ６０６において、システム制御部２０３（２１３）は、位置姿勢推定処理が成功したことを示す成功フラグを返し（例えば、成功フラグの情報を記憶部２０９（２１５）に記憶し）、図６の処理を終了する。
Ｓ６０７において、システム制御部２０３（２１３）は、位置姿勢推定処理が失敗したことを示す失敗フラグを返す（例えば、成功フラグの情報を記憶部２０９（２１５）に記憶する）。
Ｓ５０４（Ｓ５０８）では、システム制御部２０３（２１３）は、例えば、記憶部２０９（２１５）に成功フラグが記憶されているか失敗フラグが記憶されているかに基づいて、位置姿勢推定処理が成功したか否かを判定することとなる。
【００３３】
図７は、ＰＴＺ型の撮像装置である撮像装置１０１の構造の一例を示す図である。図８は、撮像装置１０１に基づいて定められたレンズ座標系の一例を説明する図である。以下では、図７、８を用いて、図６のフローチャートにおけるＳ６０５の処理の詳細について説明する。
まず、図７を用いて、撮像装置１０１の構造について説明する。図７（ａ）は、底面が地面に配置されている撮像装置１０１を、垂直方向真上から見た図である。図７（ｂ）は、底面が地面に配置されている撮像装置１０１の側面図である。
ボトムケース７０１は、撮像装置１０１のハードウェア構成要素を格納するためのケースであり、撮像装置１０１の設置面に固定される。ターンテーブル７０２は、ボトムケース上で回転し、撮像装置１０１の撮影方向をパン方向に変化させるための機構である。支柱７０３は、カメラヘッド７０４を支える柱である。カメラヘッド７０４は、撮像部２０１が格納される部位である。パン駆動部２０４は、ボトムケース７０１に対して、ターンテーブル７０２を水平方向に回転させることで、撮像装置１０１の撮影方向をパン方向に変化させる。本実施形態では、パン駆動部２０４は、基準となる方向を０°として、ターンテーブル７０２を、左右方向に−１７５°から＋１７５°まで回転することができる。
また、チルト駆動部２０５は、ターンテーブル７０２の上に備えられた支柱７０３におけるカメラヘッド７０４が固定された点を中心に、カメラヘッド７０４を垂直方向に回転することで、撮像装置１０１の撮影方向をチルト方向に変化させる。本実施形態では、チルト駆動部２０５は、カメラヘッド７０４を、水平方向０度から真上方向９０度まで回転することができる。
【００３４】
次に、図８を用いて、撮像装置１０１に基づいて定められた座標系について説明する。図８（ａ）は、図７（ａ）と同様に、撮像装置１０１を真上から見た図である。図８（ｂ）は、図７（ｂ）と同様に、撮像装置１０１の側面図である。
撮像装置１０１のパン角をθとし、チルト角をφとする。この場合、Ｓ６０４の処理において用いられる撮像装置１０１のレンズ座標系は、例えば、以下のような座標系である。即ち、撮像部２０１のレンズの主点８０１を原点として、パン駆動の負方向に水平なＸL軸、チルト駆動の正方向に水平なＹL軸、レンズ光軸方向をＺL軸によって定義される座標系である。
撮像装置１０１は、図３で説明したマーカ座標系から撮像装置１０１のレンズ座標系への変換方式を求めることで、マーカ座標系における撮像装置１０１の位置データ（ＴL）、姿勢データ（ＲL）を求めることとした。即ち、位置データＴLは、マーカ座標系の原点ＯMからレンズ座標系の原点ＯLへの３次元並進ベクトルである。また、レンズ姿勢データＲLは、マーカ座標系からレンズ座標系への変換を示す３×３の回転行列である。
【００３５】
しかし、撮像装置１０１は、パンチルト駆動が可能なため、このレンズ座標系自体がパンチルト駆動の影響を受け、マーカ座標系から見たときにレンズ座標系の座標軸と、原点ＯLと、の位置が変化してしまう。そのため、撮像装置１０１のレンズ座標系を用いて撮像装置１０１の位置姿勢を表すと、マーカ座標系における撮像装置１０１の位置姿勢が、撮像装置１０１のパンチルト駆動によって変化してしまい、誤差が生じる。このような誤差により、撮像装置１０１と撮像装置１０２との相対的な位置関係の特定の精度が低下してしまうという問題がある。このような問題は、撮像装置１０１の位置姿勢を表すために、撮像装置１０１のパンチルト駆動により変動してしまう座標系（レンズ座標系）が用いられることにより生じる。
そこで、本実施形態では、監視システムは、撮像装置１０１の位置姿勢を、撮像装置１０１のパンチルト駆動により変動しない座標系を用いて表すこととする。
【００３６】
図８を用いて、パンチルト駆動に依存しない撮像装置１０１に基づいて定められた座標系の一例を説明する。以下では、パンチルト駆動に依存しない撮像装置１０１に基づいて定められた座標系を、カメラ座標系とする。まず、撮像装置１０１のパン駆動軸、チルト駆動軸の交点８０２をカメラ座標系の原点ＯCとして定義する。
撮像装置１０１のパン駆動軸、チルト駆動軸の交点８０２（ＯC）は、撮像装置１０１のパンチルト駆動により位置が変動しない。そのため、マーカ座標系の原点から原点ＯCまでのベクトルである撮像装置１０１の位置データは、撮像装置１０１のパン角θ、チルト角φに依存しないこととなる。
レンズの主点８０１から原点ＯCまでの距離ｄは、既知のデータとして記憶部２０９に記録されているものとする。また、カメラ座標系の座標軸を、ＸC軸、ＹC軸、ＺC軸とする。ＺＣ軸の方向は、撮像装置１０１のパン角θが０度、チルト角が＋９０度のときの光軸方向である。ＸＣ軸の方向は、撮像装置１０１のパン角θが−９０度の方向である。ＹＣ軸の方向は、パン角θが−１８０度の方向である。
【００３７】
監視システムは、撮像装置１０１の位置姿勢を示す座標系として、撮像装置１０１のカメラ座標系を用いる。より具体的には、監視システムは、撮像装置１０１のカメラ座標系の原点を、撮像装置１０１の位置として、撮像装置１０１のカメラ座標系の姿勢を、撮像装置１０１の姿勢として用いる。
求められる撮像装置１０１の位置データは、マーカ座標の原点ＯMからカメラ原点ＯCへの並進ベクトルとなる。また、求められる撮像装置１０１の姿勢データはマーカ座標系から、カメラ座標系への回転行列となる。システム制御部２０３は、Ｓ６０５で、空間情報処理部２０８を介して、撮像装置１０１の位置データＴCと姿勢データＲCとを、レンズ位置データＴL、レンズ姿勢データＲL、パン角θ、チルト角φ、距離ｄを用いて求め直す。システム制御部２０３は、パン角θ、チルト角φを、パンチルトズーム制御部２０７に問い合わせることで取得することができる。
より具体的には、システム制御部２０３は、以下の式（３）を用いて、位置データＴCを求める。
【００３８】
【数３】
2019211337.tif 000005
【００３９】
以下では、位置データＴCで表されるベクトルを、カメラ位置ベクトルとする。
また、システム制御部２０３は、以下の式（４）を用いて、撮像装置１０１の姿勢データＲCを求める。
【００４０】
【数４】
2019211337.tif 000006
【００４１】
以下では、姿勢データを示す行列を、姿勢行列とする。
システム制御部２０３は、このような処理により、パン角θ、チルト角φに依存しない撮像装置１０１の位置姿勢データを求めることができるため、後の処理の精度を向上できる。
本実施形態では、システム制御部２０３は、撮像装置１０１のパンチルト駆動により変動しない座標として、パン駆動軸とチルト駆動軸との交点を原点とする座標系を用いた。しかし、システム制御部２０３は、撮像装置１０１のパンチルト駆動により変動しない座標として、パン駆動軸とチルト駆動軸との交点以外の点を原点とする座標系を用いてもよい。例えば、システム制御部２０３は、ボトムケース７０１上に指定された点を原点とする座標系を用いることとしてもよい。
また、本実施形態では、撮像装置１０２は、パンチルト駆動ができない撮影方向が固定された撮像装置であるとした。しかし、撮像装置１０２は、パンチルト駆動ができ、撮影方向を変更可能な撮像装置であるとしてもよい。その場合、監視システムは、図７、８で説明した座標系と同様に、撮像装置１０２のパンチルト駆動で変動しない撮像装置１０２を基準に定められた撮像装置１０２のカメラ座標系を用いて、撮像装置１０２の位置姿勢を表すこととする。より具体的には、監視システムは、撮像装置１０２のカメラ座標系の原点の位置を撮像装置１０２の位置として、撮像装置１０２のカメラ座標系の傾きを撮像装置１０２の姿勢として用いることとなる。
【００４２】
図９は、撮像装置１０１と撮像装置１０２との位置関係を特定する位置関係特定処理の一例を示すフローチャートである。図９を用いて、Ｓ５１４の処理の詳細について説明する。システム制御部２１９は、空間情報処理部２２２を介して、図９の処理を実行する。
本実施形態では、撮像装置１０１と撮像装置１０２との位置関係は、撮像装置１０１と撮像装置１０２とのうち基準となる一方の撮像装置に対する他方の撮像装置の位置姿勢データとして表されることとする。以下では、撮像装置１０１と撮像装置１０２とのうち基準となる一方の撮像装置を、基準撮像装置とする。
本実施形態では、システム制御部２１９は、撮像装置１０２を、基準撮像装置として定義する。システム制御部２１９は、図９の処理の開始前に、Ｓ５０５、Ｓ５０９で送信された撮像装置１０１、撮像装置１０２それぞれのマーカ座標系における位置データ（位置ベクトル）と、姿勢データ（姿勢行列）と、を取得している。
Ｓ９０１において、システム制御部２１９は、マーカ座標系における相対位置ベクトルを算出する。相対位置ベクトルは、基準撮像装置（撮像装置１０２）から見たときの他方の撮像装置（撮像装置１０１）の位置ベクトルである。マーカ座標系における撮像装置１０２の位置ベクトルをＴBASE、マーカ座標系における撮像装置１０１の位置ベクトルをＴPTZとすると、マーカ座標系における相対位置ベクトルＴRMは、以下の式（５）のように求められる。そこで、システム制御部２１９は、式（５）を用いて相対位置ベクトルＴRMを求める。
【００４３】
【数５】
2019211337.tif 000007
【００４４】
ここで、マーカ座標系における基準撮像装置（撮像装置１０２）の姿勢行列から、マーカ座標系における他方の撮像装置（撮像装置１０１）の姿勢行列への変換を示す行列を、相対姿勢行列とする。
Ｓ９０２において、システム制御部２１９は、マーカ座標系における相対姿勢行列を求める。撮像装置１０２の姿勢行列をＲBASE、撮像装置１０１の姿勢行列をＲPTZとすると、マーカ座標系における相対姿勢行列ＲRMは以下の式（６）のように求められる。そこで、システム制御部２１９は、式（６）を用いて相対姿勢行列ＲRMを求める。
【００４５】
【数６】
2019211337.tif 000008
【００４６】
式（６）中の、ＲBASE-1は、ＲBASEの逆行列である。
Ｓ９０３において、システム制御部２１９は、Ｓ９０１、Ｓ９０２で求めたマーカ座標系における相対位置ベクトルＴRM、相対姿勢行列ＲRMを、基準撮像装置（撮像装置１０２）に基づいて定められた座標系で表すように座標変換を行う。以下では、基準撮像装置に基づいて定められた座標系を、基準カメラ座標系とする。基準カメラ座標系で表した相対位置ベクトルをＴRとすると、ＴRは以下の式（７）で求められる。そこで、システム制御部２１９は、式（７）を用いて、基準カメラ座標系で表した相対位置ベクトルＴRを求める。
【００４７】
【数７】
2019211337.tif 000009
【００４８】
また、基準カメラ座標系で表した相対姿勢行列をＲRとする。システム制御部２１９は、ＲRを求めるために、マーカ座標系における相対姿勢行列ＲRMを回転ベクトルに変換する。回転ベクトルとは、ベクトルの向きが回転軸、ベクトルの大きさが回転量を表すベクトルである。システム制御部２１９は、任意の回転行列Ｒと回転ベクトルｒの変換を、以下の式（８）に示される関係を用いて行うことができる。
【００４９】
【数８】
2019211337.tif 000010
【００５０】
式（８）中のｒｘ、ｒｙ、ｒｚは、回転ベクトルｒの方向を示す単位ベクトルのｘ、ｙ、ｚ成分である。θは、回転量、即ち回転ベクトルｒの大きさを示す。式（８）を用いて求められたマーカ座標系における相対姿勢ベクトルをＲRMvecとすると、基準カメラ座標系で表した相対姿勢ベクトルＲRvecは以下の式で求められる。そこで、システム制御部２１９は、式（９）を用いて、基準カメラ座標系で表した相対姿勢ベクトルＲRvecを求める。
【００５１】
【数９】
2019211337.tif 000011
【００５２】
システム制御部２１９は、求めたＲRvecを回転行列に戻すことによって、基準カメラ座標系で表した相対姿勢行列ＲRを求めることができる。任意の回転ベクトルｒを回転行列Ｒに変換するには、以下の式（１０）に示すＲｏｄｒｉｇｕｅｓの回転公式を用いることができる。システム制御部２１９は、式（１０）に示される関係を用いて、ＲRvecから、相対姿勢行列ＲRを求める。
【００５３】
【数１０】
2019211337.tif 000012
【００５４】
以上の処理によって、システム制御部２１９は、撮像装置１０１と撮像装置１０２との位置関係を示す情報として、基準撮像装置である撮像装置１０２に対する撮像装置１０１の位置データ（ＴRM、ＴＲ）と姿勢データ（ＲRM、ＲＲ）とを取得する。これにより、システム制御部２１９は、撮像装置１０１と撮像装置１０２との位置関係を特定する。
【００５５】
図１０は、撮像装置１０１と撮像装置１０２との連携処理の一例を示すフローチャートである。図１０のフローチャートは、３列構成になっている。左側のフローチャートは、クライアント装置１０３の処理を示す。中央のフローチャートは、撮像装置１０２の処理を示す。右側のフローチャートは、撮像装置１０１の処理を示す。図中の破線矢印は、各装置間で行われる通信を示す。
Ｓ１００１において、システム制御部２１９は、撮像装置１０１と撮像装置１０２とに対して、撮影した画像の送信の要求を示す要求コマンドを送信する。
Ｓ１００２において、撮像装置１０２のシステム制御部２１３は、Ｓ１００１で送信された要求コマンドを受け、撮像部２０１と画像処理部２０２とを介して画像を撮影し、撮影した画像をクライアント装置１０３に対して送信する処理を開始する。システム制御部２１３は、一度だけ画像を撮影し、撮影した画像をクライアント装置１０３に送信してもよいし、周期的に繰り返し画像を撮影し、撮影した画像をクライアント装置１０３に送信し続けることとしてもよい。
Ｓ１００３において、撮像装置１０１のシステム制御部２０３は、Ｓ１００１で送信された要求コマンドを受け、撮像部２１１と画像処理部２１２とを介して画像を撮影し、撮影した画像をクライアント装置１０３に対して送信する処理を開始する。システム制御部２０３は、一度だけ画像を撮影し、撮影した画像をクライアント装置１０３に送信してもよいし、周期的に繰り返し画像を撮影し、撮影した画像をクライアント装置１０３に送信し続けることとしてもよい。
【００５６】
Ｓ１００４において、システム制御部２１９は、撮像装置１０１、撮像装置１０２それぞれから配信された画像を表示部２１７に表示する。これによって、ユーザは、各撮像装置で撮影された画像をリアルタイムで見ることができる。
Ｓ１００５において、システム制御部２１９は、ユーザにより入力部２１８を介して指定された、クライアント装置１０３の表示部２１７に表示された撮像装置１０２の画像の領域を特定する。以下では、ここで特定された領域を、注目領域とする。
注目領域の指定方法には、表示部２１７に表示された映像上から注目したい場所をマウス等のポインティングデバイスで指定する方法等がある。この場合、注目領域として、矩形等の形式の領域が指定されることとしてもよいし、画像上の一点のみが指定されることとしてもよい。一点のみが指定された場合、システム制御部２１９は、例えば、画像内の指定された一点を中心とする予め定められた形式の領域を、注目領域として特定する。本実施形態では、画像内の一点のみが指定されるものとする。注目領域の指定に用いられるＵｓｅｒＩｎｔｅｒｆａｃｅ（ＵＩ）については、図１４で後述する。
Ｓ１００６において、システム制御部２１９は、画像処理部２２３を介して、Ｓ１００５で特定した注目領域の中心の点の画像上の座標（２次元データ）を抽出し、抽出した座標のデータを、撮像装置１０２に送信する。
【００５７】
Ｓ１００７において、システム制御部２１３は、クライアント装置１０３からＳ１００６で送信された座標のデータを受信する。
Ｓ１００８において、システム制御部２１３は、空間情報処理部２１４を介して、Ｓ１００７で受信したデータが示す座標から、注目領域の中心点の空間上の座標を求める。注目領域の中心点の空間上の座標とは、撮像装置１０２のカメラ座標系における注目領域の座標を示す３次元のベクトルであるとする。注目領域の空間上の座標を求める処理の詳細については、図１１、１２で後述する。
Ｓ１００９において、システム制御部２１３は、Ｓ１００８で求めた注目領域の中心点の空間上の座標のデータをクライアント装置１０３に送信する。
Ｓ１０１０において、システム制御部２１９は、Ｓ１００９で撮像装置１０２から送信されたカメラ座標系における注目領域の空間上の座標のデータを受信する。
Ｓ１０１１において、システム制御部２１９は、Ｓ１０１０で受信したデータが示す座標を、撮像装置１０１に送信する。本実施形態ではＳ１００９〜Ｓ１０１１において、撮像装置１０２により求められた注目領域の中心点の空間上の座標のデータは、クライアント装置１０３を介して、撮像装置１０１に送信されることとした。しかし、Ｓ１００９で、撮像装置１０２のシステム制御部２１３は、Ｓ１００８で求めた座標のデータを、直接、撮像装置１０１に送信することとしてもよい。
【００５８】
Ｓ１０１２において、システム制御部２０３は、Ｓ１０１１でクライアント装置１０３から送信された座標のデータを受信する。
Ｓ１０１３において、システム制御部２０３は、空間情報処理部２０８を介して、Ｓ５１６で受信した情報が示す位置関係と、注目領域の中心点の空間上の座標（Ｓ１０１２で受信したデータが示す座標）と、に基づいて、パンチルト駆動する方向を求める。本実施形態では、撮像装置１０１と撮像装置１０２との位置関係を示すＳ５１６で受信した情報は、基準撮像装置（撮像装置１０２）に対する撮像装置１０１の位置姿勢の情報（例えば、ＴR、ＴRM、ＲR、ＲRM）である。システム制御部２０３は、例えば、Ｓ１０１２で受信したデータが示す座標を中心とする定められた領域を撮影できるようにするためのパンチルト駆動の方向を求める。Ｓ１０１３の処理の詳細については、図１３で後述する。また、システム制御部２０３は、Ｓ１０１３では、注目領域の中心点の空間上の座標に基づいて、望ましいズーム角を求める処理を行ってもよい。
Ｓ１０１４において、システム制御部２０３は、パンチルトズーム制御部２０７を介して、Ｓ１０１３で求めた方向へのパンチルト駆動が可能であるか否かを判定する。撮像装置１０１のパンチルト駆動範囲は、パン駆動が−１７５度から＋１７５度であり、チルト駆動が０度から＋９０度であるため、算出したパンチルト方向がこの範囲外であった場合はこの判定は偽となり、範囲内である場合は真となる。システム制御部２０３は、Ｓ１０１３で求めた方向へのパンチルト駆動が可能であると判定した場合、Ｓ１０１５の処理に進み、Ｓ１０１３で求めた方向へのパンチルト駆動が可能でないと判定した場合、図１０の処理を終了する。
【００５９】
Ｓ１０１５において、システム制御部２０３は、パンチルトズーム制御部２０７を介して、パン駆動部２０４、チルト駆動部２０５へパンチルト駆動指示を行う。パン駆動部２０４、チルト駆動部２０５は、それぞれ指示に基づいた駆動を行う。また、システム制御部２０３は、パンチルトズーム制御部２０７を介して、ズーム駆動部２０６にズーム角を変更する指示を行ってもよい。
本実施形態では、Ｓ１００８の処理、Ｓ１０１３の処理は、それぞれ撮像装置１０１、撮像装置１０２が、クライアント装置１０３からの指示に応じて行うこととした。しかし、クライアント装置１０３が各監視カメラからの配信映像に基づいて空間情報処理部２２２、画像処理部２２３を用いて撮像装置１０１のパンチルト方向を算出し、撮像装置１０１にパンチルト駆動の指示のみを行うこととしてもよい。
【００６０】
図１１は、広角型の撮像装置１０２の機構等の一例を示す図である。図１２は、広角型の撮像装置１０２から被写体へのベクトル算出処理の一例を説明する図である。図１１、図１２を用いて、Ｓ１００８の処理の詳細について説明する。
まず、図１１を用いて、撮像装置１０２の構造の概略について説明する。図１１（ａ）は、地面に水平に配置された撮像装置１０２を真上から見た図である。図１１（ｂ）は、撮像装置１０２の側面図である。図１１（ｃ）は、撮像装置１０２により撮影された画像の一例である。撮像装置１０２は、土台部１１０１とドーム部１１０２とを含む。ドーム部１１０２は、内部に撮像部２１１を含む。撮像部２１１は、視野角１８０度の非常に広角なレンズを含む。撮像装置１０２で撮像することで、図１１（ｃ）に示すように、Ｓピクセル四方の正方形の画像１１０４が得られる。正方形の画像１１０４は、１８０度の視野を画像上に投影した円形の視野領域１１０５と、円の外側の黒く塗りつぶされたマスク領域１１０６とを含む。正方形の画像１１０４上では、画像の左上を原点とし、右方向をＸi軸、下方向をＹi軸とする画像座標系が定義されることとする。
【００６１】
次に、撮像装置１０２のカメラ座標系について説明する。撮像装置１０２を基準に定められた座標系である撮像装置１０２のカメラ座標系は、以下のような座標系として定義される。撮像装置１０２のカメラ座標系の原点ＯCは、レンズ主点１１０３であるとする。また、撮像装置１０２のカメラ座標系の座標軸は、ＺC軸、ＸC軸、ＹC軸とが定義される。ＺC軸は、撮像装置１０２が地面に水平に配置された場合の撮像装置１０２の真上方向の軸である。ＸＣ軸とＹＣ軸とは、撮像装置１０２が地面に水平に配置された場合の水平方向に、互いが直交するように定義された軸である。図１１（ｃ）を見ると、画像１１０４上にカメラ座標の原点ＯCに対応する画像上の座標を定義でき、右方向がＸC軸、下方向がＹC軸と定義される。本実施形態では、カメラ原点ＯCに対応する画素は、画像１１０４の中心座標、即ち、座標（Ｓ／２、Ｓ／２）の画素であるとする。
ここで、画像１１０４の視野領域１１０５内の任意のピクセルを選択し、画像上の座標を（Ｘｊ、Ｙｊ）とする。この座標は、撮像装置１０２から見たその座標に対応する画素に写っている被写体の方向に対応している。
【００６２】
図１１（ｄ）は、撮像装置１０２の撮影方向を説明する図である。撮像装置１０２から被写体（撮影対象のオブジェクト、周囲の環境に配置されたオブジェクト等）上のある点まで伸びている方向ベクトルを想定する。図１１（ｄ）を見ると、撮像装置１０２から被写体まで伸びている方向ベクトルの向きは、ＺＣ軸に対する方向ベクトルの角度θと、方向ベクトルを（ＸC、ＹC）平面に投影したときのＸC軸との角度φと、から特定される。そこで、この方向ベクトルを、（θ、φ）と表すことができる。撮像装置１０２のシステム制御部２１３は、レンズの歪み等を定義したレンズモデルを用いて、画像上の座標（Ｘｊ、Ｙｊ）から、撮像装置１０２から見たその座標の画素に写っている被写体の方向（θ，φ）を一意に求めることができる。以下の式（１１）、（１２）を用いて、（Ｘｊ、Ｙｊ）から（θ、φ）を求めることができる。システム制御部２１３は、式（１１）を用いてθを求め、式（１２）を用いてφを求める。
【００６３】
【数１１】
2019211337.tif 000013
【００６４】
以上により、システム制御部２１３は、撮像装置１０２から見た方向（θ、φ）を、画像１１０４上の指定された座標（Ｘｊ、Ｙｊ）から一意に求めることができる。
【００６５】
次に、図１２を用いて、撮像装置１０２から見た方向（θ、φ）から、その方向に対応する座標（Ｘｊ、Ｙｊ）に写っている被写体１２０１の空間的な座標を求める方法について説明する。ここでは、撮像装置１０２は、天井に水平に設置されているものとする。撮像装置１０２から被写体１２０１までのベクトルをＶBASEとすると、被写体１２０１の空間的な座標を求めることは、ＶBASEを求めることに等しい。しかし、撮像装置１０２から見た方向（θ、φ）だけでは、被写体１２０１までの距離を特定できないため、ＶBASEを一意に求めることはできない。そこで、本実施形態では、床が水平であること、被写体１２０１が人の顔であること、を前提条件として置く。人の身長が一定であるとの仮定を設けると、床から被写体１２０１までの高さをｈとすると、ｈの値を、定義することができる（例：ｈ≒１．６［ｍ］）。
また、撮像装置１０２の床からの高さＨも既知のデータとすることができる。なぜならば、Ｓ５０４の処理にて、マーカ３０１を床に水平に設置していた場合、高さＨは、マーカ座標系における撮像装置１０１の位置データが示すＺM座標の絶対値に等しいからである。以上の条件より、ＶBASEは以下の式（１３）で求めることができる。そこで、システム制御部２１３は、式（１３）を用いて、ＶBASEを求める。
【００６６】
【数１２】
2019211337.tif 000014
【００６７】
システム制御部２１３は、Ｓ１００８で、Ｓ１００７で受信した情報が示す座標を（Ｘｊ、Ｙｊ）とおく。そして、システム制御部２１３は、Ｓ１００７で受信した情報が示す座標に対応する被写体の撮像装置１０２に対する方向を、式（１１）を用いてθを求め、式（１２）を用いてφを求めることで特定する。そして、システム制御部２１３は、その被写体の撮像装置１０２のカメラ座標系における位置を示すベクトルデータとして、式（１３）を用いて、ＶBASEを求める。
【００６８】
図１３は、ＰＴＺ型の撮像装置１０１から被写体へのベクトル算出処理の一例を説明する図である。図１３を用いて、Ｓ１０１３の処理の詳細について説明する。
図１３中の、撮像装置１０２から見た被写体１２０１へのベクトルＶBASE、撮像装置１０２から撮像装置１０１への相対位置ベクトルＴRは、Ｓ１０１３の処理の前に求められているとする。システム制御部２０３は、ＶBASEとＴRとの差分をとることで、撮像装置１０２のカメラ座標系における撮像装置１０１から被写体１２０１へのベクトルＶPTZ'を求める。システム制御部２０３は、以下の式（１４）を用いて、ＶPTZ'を求める。
【００６９】
【数１３】
2019211337.tif 000015
【００７０】
更に、システム制御部２０３は、撮像装置１０２から撮像装置１０１への相対姿勢行列ＲRに基づいて、以下の式（１５）を用いて、撮像装置１０１のカメラ座標系における撮像装置１０１から被写体１２０１へのベクトルＶPTZを求めることができる。
【００７１】
【数１４】
2019211337.tif 000016
【００７２】
そして、システム制御部２０３は、求めたＶPTZに基づいて、以下の式（１６）、（１７）を用いて、撮像装置１０１に対する被写体１２０１の方向を示すパン角θ、チルト角φを求める。
【００７３】
【数１５】
2019211337.tif 000017
【００７４】
式（１６）、（１７）中のＶＸ、ＶＹ、ＶＺは、それぞれＶPTZのＸ、Ｙ、Ｚ成分を示す。そして、システム制御部２０３は、このようにして求めたパン角θ、チルト角φが示す方向に撮像装置１０１の撮影方向を変動させるように、Ｓ１０１５でパンチルト駆動を行う。これにより、撮像装置１０１は、被写体１２０１を撮影することができるようになる。
【００７５】
図１４は、本実施形態の監視システムの操作に用いられるＵＩの一例を示す図である。図１４のＵＩは、表示部２１７に表示され、入力部２１８を介してユーザによって操作されるＧＵＩである。図１４のＵＩは、撮像装置１０２から送信された画像が表示される広角画像領域１４０１、撮像装置１０１から送信された画像が表示されるＰＴＺ画像領域１４０２、マウス等のポインティングデバイスによって操作されるポインタ１４０３を含む。ユーザは、入力部２１８を介した操作で、ポインタ１４０３を、広角画像領域１４０１に表示された画像上の注目したい点に合わせ、マウスクリック等によって、注目したい領域に対応する点（以下では、注目点）を指定する。
監視システムは、注目点の決定をトリガとして、図１０の処理によって、撮像装置１０１の撮影方向を変更する。そして、撮像装置１０１は、撮影方向が変更された撮像条件の下で、撮像部２１１、画像処理部２１２によって画像を撮影し、通信部２１６を介して撮影した画像をクライアント装置１０３に送信する。クライアント装置１０３は、通信部２２０を介して画像を受信し、画像処理部２２３を介して、ＧＵＩのＰＴＺ画像領域１４０２に合成し、ＧＵＩを表示部２１７に表示する。これによって、ユーザは容易に撮像装置１０１の撮影方向を変更し、撮影方向が変更された撮像装置１０１により撮影された画像を即座に確認することができる。
【００７６】
以上、本実施形態では、監視システムは、撮像装置１０１、撮像装置１０２のそれぞれにより撮影された画像の双方からマーカ３０１上の特徴点を検出した。そして、監視システムは、検出した特徴点からマーカ座標系における撮像装置１０１、撮像装置１０２のそれぞれの位置姿勢を求め、求めた位置姿勢から、撮像装置１０１と撮像装置１０２との位置関係を特定した。監視システムは、撮像装置１０２により撮影された画像を含むＵＩを介してその画像内に指定された位置と、特定した位置関係とから、撮像装置１０１の撮影方向を決定した。このように、監視システムは、特許文献１のように、撮像装置間の連携のための制御ＬＵＴを構築する等の負担を要さずに、撮像装置１０１の撮影方向の決定を行うことで、セットアップ作業を支援できる。即ち、監視システムは、特許文献１よりも軽負担に、セットアップ作業の支援を行うことができる。
また、撮像装置１０１と撮像装置１０２とは、互いに共通の特徴点（マーカ３０１）を撮影できるように配置されていればよく、互いの画角の大部分がオーバーラップしている必要がない。即ち、監視システムは、特許文献１の場合よりも多くの状況において、セットアップ作業を支援することができる。
その後、監視システムは、決定した方向に撮影方向を変化させるように、撮像装置１０１に対してパンチルト駆動を行った。これにより、監視システムは、より軽負担に、より多くの状況において、撮像装置１０１の撮影方向を調整できる。
【００７７】
＜その他の実施形態＞
本発明は、上述の実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサがプログラムを読み出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【００７８】
例えば、上述した監視システムの機能構成の一部又は全てをハードウェアとしてクライアント装置１０３、撮像装置１０１、撮像装置１０２等に実装してもよい。
以上、本発明の好ましい実施形態について詳述したが、本発明は係る特定の実施形態に限定されるものではない。上述した各実施形態を任意に組み合わせてもよい。
【符号の説明】
【００７９】
１０１  撮像装置
１０２  撮像装置
１０３  クライアント装置
【図１】
2019211337.tif 000018
【図２】
2019211337.tif 000019
【図３】
2019211337.tif 000020
【図４】
2019211337.tif 000021
【図５】
2019211337.tif 000022
【図６】
2019211337.tif 000023
【図７】
2019211337.tif 000024
【図８】
2019211337.tif 000025
【図９】
2019211337.tif 000026
【図１０】
2019211337.tif 000027
【図１１】
2019211337.tif 000028
【図１２】
2019211337.tif 000029
【図１３】
2019211337.tif 000030
【図１４】
2019211337.tif 000031